1
0
mirror of https://github.com/taigrr/arduinolibs synced 2025-01-18 04:33:12 -08:00

79 Commits

Author SHA1 Message Date
Rhys Weatherley
9ff24b0ddf Implementation of the NIST P-521 curve 2016-03-26 19:03:31 +10:00
Rhys Weatherley
c8d7c3153d Keyed hashing for BLAKE2 according to RFC7693 2016-03-23 19:08:16 +10:00
Rhys Weatherley
72715b172b Compiling the Crypto library on a host system 2016-03-17 19:19:14 +10:00
Rhys Weatherley
8cd6916fe8 Fix some compiler warnings 2016-03-16 19:19:11 +10:00
Rhys Weatherley
b078357392 XTS mode for disk sector encryption 2016-02-20 16:12:32 +10:00
Rhys Weatherley
4445547e1b More keywords 2016-02-14 08:52:58 +10:00
Rhys Weatherley
12739a8c5a Update keyword list 2016-02-14 08:34:03 +10:00
Rhys Weatherley
c624a3eab3 Extendable output functions: SHAKE128 and SHAKE256 2016-02-14 08:27:27 +10:00
Rhys Weatherley
41cc393de5 AVR inline assembler speedups for Curve25519 and Ed25519 2016-02-14 05:51:22 +10:00
Rhys Weatherley
33df6a873d Refactor the low-memory versions of Speck
Rename SpeckLowMemory to SpeckTiny for the encrypt-only version.
SpeckSmall for the version that supports both encryption and decryption.
2016-02-13 06:59:05 +10:00
Rhys Weatherley
e66f8fe6e0 Split the OMAC code out of EAX so it can be used separately 2016-02-09 19:07:35 +10:00
Rhys Weatherley
21ac06136a Speed up GHASH with AVR assembly code
Also split the Galois operations off into a separate GF128 class.
2016-02-07 13:30:21 +10:00
Rhys Weatherley
2decb74161 Remove SHA1 from the library
SHA1 is on the cusp of being utterly broken so no new
software should be making use of it for any reason.
2016-01-16 09:08:28 +10:00
Rhys Weatherley
95313613b7 Reduce the object state size for Poly1305 2016-01-16 08:57:46 +10:00
Rhys Weatherley
b852d222b4 Reduce the object state size of AES 2016-01-16 08:44:35 +10:00
Rhys Weatherley
1ae693127c Reduce the state size for BLAKE2 by moving state.v to the stack 2016-01-16 06:43:56 +10:00
Rhys Weatherley
f52888517b Move the Keccak B state from the object to the stack 2016-01-15 17:50:36 +10:00
Rhys Weatherley
4079e6c2b7 Speed up step mapping theta in KeccakCore 2016-01-15 17:44:33 +10:00
Rhys Weatherley
368c6be1cd Remove reliance on state.B from KeccakCore::setHMACKey() 2016-01-14 19:33:35 +10:00
Rhys Weatherley
0b56598294 Speed up KeccakCore by unrolling into AVR assembly 2016-01-13 19:50:59 +10:00
Rhys Weatherley
25e9f6f3d4 Watchdog-based noise source 2015-12-30 14:08:01 +10:00
Rhys Weatherley
738d86cf2b EAX block cipher mode with authentication 2015-12-19 09:18:41 +10:00
Rhys Weatherley
dadfcf55f2 Recommended tag and IV sizes in GCM were backwards 2015-12-18 14:46:49 +10:00
Rhys Weatherley
e046533aff Low memory version of Speck that combines key schedule with encryption 2015-12-17 19:06:41 +10:00
Rhys Weatherley
32d3d59cfb AVR inline assembly version of Speck 2015-12-05 14:13:11 +10:00
Rhys Weatherley
ee43158b64 Speck block cipher 2015-11-30 18:23:21 +10:00
Rhys Weatherley
3b4a928457 Move example EEPROM address for RNG from 500 to 950 2015-05-03 14:25:20 +10:00
Rhys Weatherley
2e64f4bec9 Save the RNG seed to flash memory on the Due 2015-05-02 09:40:13 +10:00
Rhys Weatherley
c0470980de Crypto performance figures for Arduino Due 2015-04-19 15:26:27 +10:00
Rhys Weatherley
b5d6c8de33 Port RNG to the Arduino Due and add TRNG support 2015-04-19 08:26:51 +10:00
Rhys Weatherley
786e52f923 Ed25519 signature algorithm 2015-04-18 08:42:37 +10:00
Rhys Weatherley
a936aa3e4a Unit tests and bug fixes for pack/unpack functions 2015-04-06 09:28:21 +10:00
Rhys Weatherley
6790ef99d3 Move pack/unpack functions from Curve25519 to BigNumberUtil 2015-04-03 09:44:52 +10:00
Rhys Weatherley
a3144aab4e Improve performance of Curve25519::eval() by 619ms 2015-04-03 05:03:48 +10:00
Rhys Weatherley
47ab405e7f Finalization and key setup figures for hash/auth algorithms 2015-04-02 16:33:47 +10:00
Rhys Weatherley
d50a7fed2d Noise source initialization that is post-RNG.begin() 2015-04-02 10:18:35 +10:00
Rhys Weatherley
1d89097948 Move TransistorNoiseSource to its own library 2015-04-02 09:24:31 +10:00
Rhys Weatherley
7432d83676 Wait for entropy pool to fill and autosave in TestRNG example 2015-04-02 06:37:52 +10:00
Rhys Weatherley
152d24fba7 Move the ring oscillator noise source to its own library 2015-04-02 06:37:41 +10:00
Rhys Weatherley
a7f9181fe5 GCM block cipher mode 2015-04-01 16:14:18 +10:00
Rhys Weatherley
1c77fdbcec GHASH implementation 2015-04-01 09:12:42 +10:00
Rhys Weatherley
0c5b37098b ChaChaPoly authenticated cipher 2015-03-31 19:02:21 +10:00
Rhys Weatherley
68f27bf912 Zero-padding API function for Poly1305 2015-03-31 13:16:55 +10:00
Rhys Weatherley
a8e7932130 API for authenticated ciphers 2015-03-31 13:10:05 +10:00
Rhys Weatherley
35064ebfe9 Update state sizes to include the entire class size 2015-03-31 12:06:31 +10:00
Rhys Weatherley
3ae1abe53e Secure memory block compares 2015-03-31 10:13:33 +10:00
Rhys Weatherley
3bcfbcd43b Centralize the definition of big number limb types 2015-03-31 09:43:09 +10:00
Rhys Weatherley
a3d7f61b96 Poly1305 message authenticator 2015-03-31 09:25:49 +10:00
Rhys Weatherley
ed59231db3 More API cleanups to RNG 2015-03-26 16:56:01 +10:00
Rhys Weatherley
067e8ac177 Register the noise sources with RNG at setup time 2015-03-25 19:35:44 +10:00