1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "net/quic/crypto/chacha20_poly1305_encrypter.h"
7 #include <openssl/evp.h>
13 const size_t kKeySize
= 32;
14 const size_t kNoncePrefixSize
= 0;
18 ChaCha20Poly1305Encrypter::ChaCha20Poly1305Encrypter()
19 : AeadBaseEncrypter(EVP_aead_chacha20_poly1305(), kKeySize
, kAuthTagSize
,
21 COMPILE_ASSERT(kKeySize
<= kMaxKeySize
, key_size_too_big
);
22 COMPILE_ASSERT(kNoncePrefixSize
<= kMaxNoncePrefixSize
,
23 nonce_prefix_size_too_big
);
26 ChaCha20Poly1305Encrypter::~ChaCha20Poly1305Encrypter() {}
29 bool ChaCha20Poly1305Encrypter::IsSupported() { return true; }