| Index: components/certificate_reporting/error_reporter.cc
|
| diff --git a/components/certificate_reporting/error_reporter.cc b/components/certificate_reporting/error_reporter.cc
|
| index 3e639ea5d70637da221dfca00d44210a70e601d8..5cd909612804856d6b719e396fec7a2b9acf83b2 100644
|
| --- a/components/certificate_reporting/error_reporter.cc
|
| +++ b/components/certificate_reporting/error_reporter.cc
|
| @@ -15,10 +15,10 @@
|
| #include "base/metrics/sparse_histogram.h"
|
| #include "components/certificate_reporting/encrypted_cert_logger.pb.h"
|
| #include "crypto/aead.h"
|
| -#include "crypto/curve25519.h"
|
| #include "crypto/hkdf.h"
|
| #include "crypto/random.h"
|
| #include "net/url_request/report_sender.h"
|
| +#include "third_party/boringssl/src/include/openssl/curve25519.h"
|
|
|
| namespace certificate_reporting {
|
|
|
| @@ -38,8 +38,8 @@ bool GetHkdfSubkeySecret(size_t subkey_length,
|
| const uint8_t* private_key,
|
| const uint8_t* public_key,
|
| std::string* secret) {
|
| - uint8_t shared_secret[crypto::curve25519::kBytes];
|
| - if (!crypto::curve25519::ScalarMult(private_key, public_key, shared_secret))
|
| + uint8_t shared_secret[32];
|
| + if (!X25519(shared_secret, private_key, public_key))
|
| return false;
|
|
|
| // By mistake, the HKDF label here ends up with an extra null byte on
|
| @@ -66,11 +66,11 @@ bool EncryptSerializedReport(const uint8_t* server_public_key,
|
| const std::string& report,
|
| EncryptedCertLoggerRequest* encrypted_report) {
|
| // Generate an ephemeral key pair to generate a shared secret.
|
| - uint8_t public_key[crypto::curve25519::kBytes];
|
| - uint8_t private_key[crypto::curve25519::kScalarBytes];
|
| + uint8_t public_key[32];
|
| + uint8_t private_key[32];
|
|
|
| crypto::RandBytes(private_key, sizeof(private_key));
|
| - crypto::curve25519::ScalarBaseMult(private_key, public_key);
|
| + X25519_public_from_private(public_key, private_key);
|
|
|
| crypto::Aead aead(crypto::Aead::AES_128_CTR_HMAC_SHA256);
|
| std::string key;
|
|
|