summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/evp/evp.h
diff options
context:
space:
mode:
authorjsing <>2022-08-20 19:22:28 +0000
committerjsing <>2022-08-20 19:22:28 +0000
commitdb7a0caa3a5fe243c1367cef69b8d0ef2f38216d (patch)
tree0abd9c3e0e1498f540108747871fd7d071eb5728 /src/lib/libcrypto/evp/evp.h
parent09b6550cab1f0d0c5e0e18da24dfc96374864b58 (diff)
downloadopenbsd-db7a0caa3a5fe243c1367cef69b8d0ef2f38216d.tar.gz
openbsd-db7a0caa3a5fe243c1367cef69b8d0ef2f38216d.tar.bz2
openbsd-db7a0caa3a5fe243c1367cef69b8d0ef2f38216d.zip
Provide EVP_chacha20_poly1305()
EVP_chacha20_poly1305() is an EVP_CIPHER implementation of the ChaCha20-Poly1305 AEAD. This is potentially used to provide encryption for the QUIC transport layer. Where possible, this should be avoided in favour of the significantly saner EVP_AEAD interface. ok tb@
Diffstat (limited to 'src/lib/libcrypto/evp/evp.h')
-rw-r--r--src/lib/libcrypto/evp/evp.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/lib/libcrypto/evp/evp.h b/src/lib/libcrypto/evp/evp.h
index f016b6377c..0b7fc08fc8 100644
--- a/src/lib/libcrypto/evp/evp.h
+++ b/src/lib/libcrypto/evp/evp.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: evp.h,v 1.103 2022/07/12 14:42:49 kn Exp $ */ 1/* $OpenBSD: evp.h,v 1.104 2022/08/20 19:22:28 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -251,10 +251,11 @@ extern "C" {
251#define EVP_CTRL_AEAD_SET_IVLEN 0x9 251#define EVP_CTRL_AEAD_SET_IVLEN 0x9
252#define EVP_CTRL_AEAD_GET_TAG 0x10 252#define EVP_CTRL_AEAD_GET_TAG 0x10
253#define EVP_CTRL_AEAD_SET_TAG 0x11 253#define EVP_CTRL_AEAD_SET_TAG 0x11
254#define EVP_CTRL_AEAD_SET_IV_FIXED 0x12
254#define EVP_CTRL_GCM_SET_IVLEN EVP_CTRL_AEAD_SET_IVLEN 255#define EVP_CTRL_GCM_SET_IVLEN EVP_CTRL_AEAD_SET_IVLEN
255#define EVP_CTRL_GCM_GET_TAG EVP_CTRL_AEAD_GET_TAG 256#define EVP_CTRL_GCM_GET_TAG EVP_CTRL_AEAD_GET_TAG
256#define EVP_CTRL_GCM_SET_TAG EVP_CTRL_AEAD_SET_TAG 257#define EVP_CTRL_GCM_SET_TAG EVP_CTRL_AEAD_SET_TAG
257#define EVP_CTRL_GCM_SET_IV_FIXED 0x12 258#define EVP_CTRL_GCM_SET_IV_FIXED EVP_CTRL_AEAD_SET_IV_FIXED
258#define EVP_CTRL_GCM_IV_GEN 0x13 259#define EVP_CTRL_GCM_IV_GEN 0x13
259#define EVP_CTRL_CCM_SET_IVLEN EVP_CTRL_AEAD_SET_IVLEN 260#define EVP_CTRL_CCM_SET_IVLEN EVP_CTRL_AEAD_SET_IVLEN
260#define EVP_CTRL_CCM_GET_TAG EVP_CTRL_AEAD_GET_TAG 261#define EVP_CTRL_CCM_GET_TAG EVP_CTRL_AEAD_GET_TAG
@@ -680,6 +681,11 @@ const EVP_CIPHER *EVP_aes_256_ccm(void);
680const EVP_CIPHER *EVP_aes_256_gcm(void); 681const EVP_CIPHER *EVP_aes_256_gcm(void);
681const EVP_CIPHER *EVP_aes_256_wrap(void); 682const EVP_CIPHER *EVP_aes_256_wrap(void);
682const EVP_CIPHER *EVP_aes_256_xts(void); 683const EVP_CIPHER *EVP_aes_256_xts(void);
684#if defined(LIBRESSL_NEXT_API) || defined(LIBRESSL_INTERNAL)
685#if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305)
686const EVP_CIPHER *EVP_chacha20_poly1305(void);
687#endif
688#endif
683#if !defined(OPENSSL_NO_SHA) && !defined(OPENSSL_NO_SHA1) 689#if !defined(OPENSSL_NO_SHA) && !defined(OPENSSL_NO_SHA1)
684const EVP_CIPHER *EVP_aes_128_cbc_hmac_sha1(void); 690const EVP_CIPHER *EVP_aes_128_cbc_hmac_sha1(void);
685const EVP_CIPHER *EVP_aes_256_cbc_hmac_sha1(void); 691const EVP_CIPHER *EVP_aes_256_cbc_hmac_sha1(void);