#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "crypto/ec_private_key.h"
#include <stddef.h>
#include <stdint.h>
#include <utility>
#include "base/check_op.h"
#include "crypto/openssl_util.h"
#include "third_party/boringssl/src/include/openssl/bytestring.h"
#include "third_party/boringssl/src/include/openssl/ec.h"
#include "third_party/boringssl/src/include/openssl/ec_key.h"
#include "third_party/boringssl/src/include/openssl/evp.h"
#include "third_party/boringssl/src/include/openssl/mem.h"
#include "third_party/boringssl/src/include/openssl/pkcs8.h"
namespace crypto {
ECPrivateKey::~ECPrivateKey() = default;
std::unique_ptr<ECPrivateKey> ECPrivateKey::Create() { … }
std::unique_ptr<ECPrivateKey> ECPrivateKey::CreateFromPrivateKeyInfo(
base::span<const uint8_t> input) { … }
std::unique_ptr<ECPrivateKey> ECPrivateKey::CreateFromEncryptedPrivateKeyInfo(
base::span<const uint8_t> encrypted_private_key_info) { … }
std::unique_ptr<ECPrivateKey> ECPrivateKey::Copy() const { … }
bool ECPrivateKey::ExportPrivateKey(std::vector<uint8_t>* output) const { … }
bool ECPrivateKey::ExportPublicKey(std::vector<uint8_t>* output) const { … }
bool ECPrivateKey::ExportRawPublicKey(std::string* output) const { … }
ECPrivateKey::ECPrivateKey() = default;
}