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 static_assert(kKeySize
<= kMaxKeySize
, "key size too big");
22 static_assert(kNoncePrefixSize
<= kMaxNoncePrefixSize
,
23 "nonce prefix size too big");
26 ChaCha20Poly1305Encrypter::~ChaCha20Poly1305Encrypter() {}
29 bool ChaCha20Poly1305Encrypter::IsSupported() { return true; }