#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "crypto/rsa_private_key.h"
#include <stdint.h>
#include <memory>
#include <utility>
#include "base/check.h"
#include "base/containers/span.h"
#include "crypto/openssl_util.h"
#include "third_party/boringssl/src/include/openssl/bn.h"
#include "third_party/boringssl/src/include/openssl/bytestring.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/rsa.h"
namespace crypto {
std::unique_ptr<RSAPrivateKey> RSAPrivateKey::Create(uint16_t num_bits) { … }
std::unique_ptr<RSAPrivateKey> RSAPrivateKey::CreateFromPrivateKeyInfo(
base::span<const uint8_t> input) { … }
std::unique_ptr<RSAPrivateKey> RSAPrivateKey::CreateFromKey(EVP_PKEY* key) { … }
RSAPrivateKey::RSAPrivateKey() = default;
RSAPrivateKey::~RSAPrivateKey() = default;
std::unique_ptr<RSAPrivateKey> RSAPrivateKey::Copy() const { … }
bool RSAPrivateKey::ExportPrivateKey(std::vector<uint8_t>* output) const { … }
bool RSAPrivateKey::ExportPublicKey(std::vector<uint8_t>* output) const { … }
}