f6bddfcd70
fold
2024-06-10 17:23:48 +00:00
2b3e390bbf
Make params struct non-const
...
Upcoming changes will push lc_*_ctx into the params struct for higher
order constructions like HMAC or HKDF.
2024-06-09 15:09:15 +00:00
f1c4ceea84
Make the block lengths part of the public interface
2024-06-09 14:16:18 +00:00
06e9c5ec67
Rename *_CHUNK* to *_BLOCKLEN*
2024-06-09 14:05:52 +00:00
62eb1ea6f8
aead/chacha20-poly1305: reflect that the keysetup is only for {,X}ChaCha20
2024-06-09 02:21:06 +00:00
d2817487e8
aead/chacha20-poly1305: inline anycrypt
...
Also use decrypt for the decryption path instead of relying on ChaCha20
using the same stream for encryption and decryption.
2024-06-09 02:19:51 +00:00
a6208487e4
aead: replace init args with implementation-specific params struct
...
This unbreaks {,X}ChaCha20-Poly1305. Thanks to the use of params, the
{,X}ChaCha20-Poly1305 doesn't need to reach into the guts of ChaCha20
state. Move {en,de}cryption and key setup into its own functions.
This breaks the tests, which will be fixed in the following commit.
2024-06-07 23:29:29 +00:00
67d4de1657
Move all inout parameters to the front of the arguments list
2024-06-07 17:47:42 +00:00
0605d10bb3
Implement XChaCha20 and XChaCha20-Poly1305
2024-06-07 02:18:50 +00:00
b793cb5b69
cipher/chacha20: rename chacha20_x to chacha20_common
2024-06-07 00:29:25 +00:00
5bd46fffa6
aead/chacha20-poly1305: use chacha20_x_final instead of reaching into chacha20_ctx guts
2024-06-07 00:29:17 +00:00
52ab9ca179
ct/lc_ct_cmp: improve interface
...
Return 0xffffffff if arguments compare equal, 0 otherwise. Change all
consumers accordingly.
2024-06-06 13:49:25 +00:00
217145edc0
aead: implement ChaCha20-Poly1305 open
2024-05-31 16:46:05 +00:00
7bc527c769
initial import
2024-05-31 10:59:58 +00:00