Skip to content

Commit 16c40f3

Browse files
author
Gonzalo Atienza
committed
aead aes constructs added
1 parent 9ffa598 commit 16c40f3

File tree

8 files changed

+802
-43
lines changed

8 files changed

+802
-43
lines changed

src/bindings/crypto_aead.h

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,24 @@ size_t crypto_aead_xchacha20poly1305_ietf_npubbytes(void);
3131
size_t crypto_aead_xchacha20poly1305_ietf_abytes(void);
3232
size_t crypto_aead_xchacha20poly1305_ietf_messagebytes_max(void);
3333

34+
size_t crypto_aead_aegis256_keybytes(void);
35+
size_t crypto_aead_aegis256_nsecbytes(void);
36+
size_t crypto_aead_aegis256_npubbytes(void);
37+
size_t crypto_aead_aegis256_abytes(void);
38+
size_t crypto_aead_aegis256_messagebytes_max(void);
39+
40+
size_t crypto_aead_aegis128l_keybytes(void);
41+
size_t crypto_aead_aegis128l_nsecbytes(void);
42+
size_t crypto_aead_aegis128l_npubbytes(void);
43+
size_t crypto_aead_aegis128l_abytes(void);
44+
size_t crypto_aead_aegis128l_messagebytes_max(void);
45+
46+
size_t crypto_aead_aes256gcm_keybytes(void);
47+
size_t crypto_aead_aes256gcm_nsecbytes(void);
48+
size_t crypto_aead_aes256gcm_npubbytes(void);
49+
size_t crypto_aead_aes256gcm_abytes(void);
50+
size_t crypto_aead_aes256gcm_messagebytes_max(void);
51+
3452
int crypto_aead_chacha20poly1305_ietf_encrypt(unsigned char *c,
3553
unsigned long long *clen,
3654
const unsigned char *m,
@@ -90,3 +108,65 @@ int crypto_aead_xchacha20poly1305_ietf_decrypt(unsigned char *m,
90108
unsigned long long adlen,
91109
const unsigned char *npub,
92110
const unsigned char *k);
111+
112+
int crypto_aead_aegis256_encrypt(unsigned char *c,
113+
unsigned long long *clen_p,
114+
const unsigned char *m,
115+
unsigned long long mlen,
116+
const unsigned char *ad,
117+
unsigned long long adlen,
118+
const unsigned char *nsec,
119+
const unsigned char *npub,
120+
const unsigned char *k);
121+
122+
int crypto_aead_aegis256_decrypt(unsigned char *m,
123+
unsigned long long *mlen_p,
124+
unsigned char *nsec,
125+
const unsigned char *c,
126+
unsigned long long clen,
127+
const unsigned char *ad,
128+
unsigned long long adlen,
129+
const unsigned char *npub,
130+
const unsigned char *k);
131+
132+
int crypto_aead_aegis128l_encrypt(unsigned char *c,
133+
unsigned long long *clen_p,
134+
const unsigned char *m,
135+
unsigned long long mlen,
136+
const unsigned char *ad,
137+
unsigned long long adlen,
138+
const unsigned char *nsec,
139+
const unsigned char *npub,
140+
const unsigned char *k);
141+
142+
int crypto_aead_aegis128l_decrypt(unsigned char *m,
143+
unsigned long long *mlen_p,
144+
unsigned char *nsec,
145+
const unsigned char *c,
146+
unsigned long long clen,
147+
const unsigned char *ad,
148+
unsigned long long adlen,
149+
const unsigned char *npub,
150+
const unsigned char *k);
151+
152+
int crypto_aead_aes256gcm_is_available(void);
153+
154+
int crypto_aead_aes256gcm_encrypt(unsigned char *c,
155+
unsigned long long *clen_p,
156+
const unsigned char *m,
157+
unsigned long long mlen,
158+
const unsigned char *ad,
159+
unsigned long long adlen,
160+
const unsigned char *nsec,
161+
const unsigned char *npub,
162+
const unsigned char *k);
163+
164+
int crypto_aead_aes256gcm_decrypt(unsigned char *m,
165+
unsigned long long *mlen_p,
166+
unsigned char *nsec,
167+
const unsigned char *c,
168+
unsigned long long clen,
169+
const unsigned char *ad,
170+
unsigned long long adlen,
171+
const unsigned char *npub,
172+
const unsigned char *k);

src/nacl/bindings/__init__.py

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,27 @@
1414

1515

1616
from nacl.bindings.crypto_aead import (
17+
crypto_aead_aegis128l_ABYTES,
18+
crypto_aead_aegis128l_KEYBYTES,
19+
crypto_aead_aegis128l_MESSAGEBYTES_MAX,
20+
crypto_aead_aegis128l_NPUBBYTES,
21+
crypto_aead_aegis128l_NSECBYTES,
22+
crypto_aead_aegis128l_decrypt,
23+
crypto_aead_aegis128l_encrypt,
24+
crypto_aead_aegis256_ABYTES,
25+
crypto_aead_aegis256_KEYBYTES,
26+
crypto_aead_aegis256_MESSAGEBYTES_MAX,
27+
crypto_aead_aegis256_NPUBBYTES,
28+
crypto_aead_aegis256_NSECBYTES,
29+
crypto_aead_aegis256_decrypt,
30+
crypto_aead_aegis256_encrypt,
31+
crypto_aead_aes256gcm_ABYTES,
32+
crypto_aead_aes256gcm_KEYBYTES,
33+
crypto_aead_aes256gcm_MESSAGEBYTES_MAX,
34+
crypto_aead_aes256gcm_NPUBBYTES,
35+
crypto_aead_aes256gcm_NSECBYTES,
36+
crypto_aead_aes256gcm_decrypt,
37+
crypto_aead_aes256gcm_encrypt,
1738
crypto_aead_chacha20poly1305_ABYTES,
1839
crypto_aead_chacha20poly1305_KEYBYTES,
1940
crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX,
@@ -250,6 +271,27 @@
250271

251272

252273
__all__ = [
274+
"crypto_aead_aegis128l_ABYTES",
275+
"crypto_aead_aegis128l_KEYBYTES",
276+
"crypto_aead_aegis128l_MESSAGEBYTES_MAX",
277+
"crypto_aead_aegis128l_NPUBBYTES",
278+
"crypto_aead_aegis128l_NSECBYTES",
279+
"crypto_aead_aegis128l_decrypt",
280+
"crypto_aead_aegis128l_encrypt",
281+
"crypto_aead_aegis256_ABYTES",
282+
"crypto_aead_aegis256_KEYBYTES",
283+
"crypto_aead_aegis256_MESSAGEBYTES_MAX",
284+
"crypto_aead_aegis256_NPUBBYTES",
285+
"crypto_aead_aegis256_NSECBYTES",
286+
"crypto_aead_aegis256_decrypt",
287+
"crypto_aead_aegis256_encrypt",
288+
"crypto_aead_aes256gcm_ABYTES",
289+
"crypto_aead_aes256gcm_KEYBYTES",
290+
"crypto_aead_aes256gcm_MESSAGEBYTES_MAX",
291+
"crypto_aead_aes256gcm_NPUBBYTES",
292+
"crypto_aead_aes256gcm_NSECBYTES",
293+
"crypto_aead_aes256gcm_decrypt",
294+
"crypto_aead_aes256gcm_encrypt",
253295
"crypto_aead_chacha20poly1305_ABYTES",
254296
"crypto_aead_chacha20poly1305_KEYBYTES",
255297
"crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX",

0 commit comments

Comments
 (0)