Olivier Chéron
0cf0d076ab
Add flag use_target_attributes
2020-03-14 08:44:44 +01:00
Olivier Chéron
f5706959a4
AES-NI and PCLMUL with per-function target compiler options
2020-03-14 08:43:44 +01:00
Olivier Chéron
dae01d056d
AES-NI with per-file target compiler options
2020-03-14 08:09:12 +01:00
Olivier Chéron
86470d5563
Use conventional declaration order
2020-02-10 06:43:26 +01:00
Olivier Chéron
908f979d44
Add AES-GCM-SIV
2019-08-25 16:38:01 +02:00
Olivier Chéron
0075b57f90
Add internal AES CTR variant with 32-bit counter
...
This variant of CTR mode is used by AES-GCM-SIV. The counter is in
little-endian format and uses the first four bytes of the IV only.
2019-08-25 08:55:49 +02:00
Olivier Chéron
fc07a8b931
Fix counter wrapping in AES GCM
...
The generic and AESNI implementations used different conventions
regarding counter wrapping in GCM. The generic code was based on
function block128_inc_be, for which the counter is a 128-bit value.
Whereas the AESNI code used intrinsic function _mm_add_epi64, and
therefore wrapping at 2^64.
In NIST.SP.800-38d the GCM specification mandates to use incrementing
function inc32, wrapping after 2^32 blocks. This commit changes both
generic and AESNI implementations to align to the specification and
adds a test vector specially crafted to start encryption with IV block
0xfffffffffffffffffffffffffffffffe.
2019-08-20 10:34:40 +02:00
Olivier Chéron
4df2a95276
AES GCM: use Shoup's method with 4-bit table
2019-06-06 06:48:16 +02:00
Olivier Chéron
5b39ae3e48
Add missing void and const
2019-05-26 11:50:07 +02:00
Olivier Chéron
c8a4e48e0c
Remove unused variables
2019-05-26 11:50:07 +02:00
Olivier Chéron
d25e44ea61
Add GHASH implementation with PCLMULQDQ
2019-05-19 11:18:40 +02:00
Olivier Chéron
cddbc2cef9
Remove unopt_gf_mul
2019-05-19 11:16:34 +02:00
James Clarke
2b43be4d84
Fix many cases of unaligned accesses
2017-06-25 18:10:55 +01:00
Vincent Hanquez
69d8dd1a08
[tidy-exports] properly prefix aesni stuff
2015-06-21 15:16:05 +01:00
Vincent Hanquez
e6d3518c2e
[tidy-exports] properly prefix gf_mul(x)
2015-06-21 15:11:02 +01:00
Vincent Hanquez
5812bce10f
[tidy-exports] mark gmtab as static
2015-06-21 15:05:46 +01:00
Vincent Hanquez
e74448aeb4
cryptonitize AES, and add foreign function interfaces to it (not exported).
2015-04-05 10:44:23 +01:00
Vincent Hanquez
c291952018
fix symbol
2015-01-18 16:08:53 -08:00
Vincent Hanquez
1d706a3ef1
rename file
2015-01-15 04:58:35 -08:00
Vincent Hanquez
6195bd40af
merge cipher-aes C files in cryptonite
2015-01-15 04:58:25 -08:00