chromium/net/third_party/quiche/src/quiche/quic/core/crypto/p256_key_exchange.cc

// Copyright (c) 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "quiche/quic/core/crypto/p256_key_exchange.h"

#include <cstdint>
#include <cstring>
#include <memory>
#include <string>
#include <utility>

#include "absl/memory/memory.h"
#include "absl/strings/string_view.h"
#include "openssl/ec.h"
#include "openssl/ecdh.h"
#include "openssl/err.h"
#include "openssl/evp.h"
#include "quiche/quic/platform/api/quic_logging.h"

namespace quic {

P256KeyExchange::P256KeyExchange(bssl::UniquePtr<EC_KEY> private_key,
                                 const uint8_t* public_key)
    :{}

P256KeyExchange::~P256KeyExchange() {}

// static
std::unique_ptr<P256KeyExchange> P256KeyExchange::New() {}

// static
std::unique_ptr<P256KeyExchange> P256KeyExchange::New(absl::string_view key) {}

// static
std::string P256KeyExchange::NewPrivateKey() {}

bool P256KeyExchange::CalculateSharedKeySync(
    absl::string_view peer_public_value, std::string* shared_key) const {}

absl::string_view P256KeyExchange::public_value() const {}

}  // namespace quic