diff --git a/doc/crypto.dox b/doc/crypto.dox index 88553484..7410278f 100644 --- a/doc/crypto.dox +++ b/doc/crypto.dox @@ -62,19 +62,19 @@ Ardunino Mega 2560 running at 16 MHz are similar: - - - - - - - - - - - - - + + + + + + + + + + + + +
AlgorithmEncryption / Hashing (per byte)Decryption (per byte)Key SetupState Size (bytes)
AES128 (ECB mode)36.90us66.48us160.00us208
AES192 (ECB mode)44.20us80.35us166.54us240
AES256 (ECB mode)51.50us94.22us227.97us272
ChaCha (20 rounds)14.87us14.88us43.74us130
ChaCha (12 rounds)10.38us10.38us43.74us130
ChaCha (8 rounds)8.13us8.14us43.74us130
SHA121.90us 93
SHA25643.85us 105
SHA512123.24us 209
SHA3_256121.69us 403
SHA3_512229.12us 403
BLAKE2s18.54us 169
BLAKE2b50.58us 337
AES128 (ECB mode)36.90us66.48us160.00us213
AES192 (ECB mode)44.20us80.35us166.54us245
AES256 (ECB mode)51.50us94.22us227.97us277
ChaCha (20 rounds)14.87us14.88us43.74us132
ChaCha (12 rounds)10.38us10.38us43.74us132
ChaCha (8 rounds)8.13us8.14us43.74us132
SHA121.90us 95
SHA25643.85us 107
SHA512123.24us 211
SHA3_256121.69us 405
SHA3_512229.12us 405
BLAKE2s18.54us 171
BLAKE2b50.58us 339
Poly130526.29us 87
diff --git a/libraries/Crypto/examples/TestAES/TestAES.ino b/libraries/Crypto/examples/TestAES/TestAES.ino index b79b044f..6ff1ad5f 100644 --- a/libraries/Crypto/examples/TestAES/TestAES.ino +++ b/libraries/Crypto/examples/TestAES/TestAES.ino @@ -145,6 +145,15 @@ void setup() Serial.println(); + Serial.println("State Sizes:"); + Serial.print("AES128 ... "); + Serial.println(sizeof(AES128)); + Serial.print("AES192 ... "); + Serial.println(sizeof(AES192)); + Serial.print("AES256 ... "); + Serial.println(sizeof(AES256)); + Serial.println(); + Serial.println("Test Vectors:"); testCipher(&aes128, &testVectorAES128); testCipher(&aes192, &testVectorAES192); diff --git a/libraries/Crypto/examples/TestBLAKE2b/TestBLAKE2b.ino b/libraries/Crypto/examples/TestBLAKE2b/TestBLAKE2b.ino index fa2a1bbc..c824339a 100644 --- a/libraries/Crypto/examples/TestBLAKE2b/TestBLAKE2b.ino +++ b/libraries/Crypto/examples/TestBLAKE2b/TestBLAKE2b.ino @@ -230,6 +230,10 @@ void setup() Serial.println(); + Serial.print("State Size ..."); + Serial.println(sizeof(BLAKE2b)); + Serial.println(); + Serial.println("Test Vectors:"); testHash(&blake2b, &testVectorBLAKE2b_1); testHash(&blake2b, &testVectorBLAKE2b_2); diff --git a/libraries/Crypto/examples/TestBLAKE2s/TestBLAKE2s.ino b/libraries/Crypto/examples/TestBLAKE2s/TestBLAKE2s.ino index 9b7098e9..b7217150 100644 --- a/libraries/Crypto/examples/TestBLAKE2s/TestBLAKE2s.ino +++ b/libraries/Crypto/examples/TestBLAKE2s/TestBLAKE2s.ino @@ -214,6 +214,10 @@ void setup() Serial.println(); + Serial.print("State Size ... "); + Serial.println(sizeof(BLAKE2s)); + Serial.println(); + Serial.println("Test Vectors:"); testHash(&blake2s, &testVectorBLAKE2s_1); testHash(&blake2s, &testVectorBLAKE2s_2); diff --git a/libraries/Crypto/examples/TestChaCha/TestChaCha.ino b/libraries/Crypto/examples/TestChaCha/TestChaCha.ino index ed691bab..177a2f69 100644 --- a/libraries/Crypto/examples/TestChaCha/TestChaCha.ino +++ b/libraries/Crypto/examples/TestChaCha/TestChaCha.ino @@ -390,6 +390,10 @@ void setup() Serial.println(); + Serial.print("State Size ..."); + Serial.println(sizeof(ChaCha)); + Serial.println(); + Serial.println("Test Vectors:"); testCipher(&chacha, &testVectorChaCha20_128); testCipher(&chacha, &testVectorChaCha20_256); diff --git a/libraries/Crypto/examples/TestPoly1305/TestPoly1305.ino b/libraries/Crypto/examples/TestPoly1305/TestPoly1305.ino index 0c07cc3d..cd727ab1 100644 --- a/libraries/Crypto/examples/TestPoly1305/TestPoly1305.ino +++ b/libraries/Crypto/examples/TestPoly1305/TestPoly1305.ino @@ -173,6 +173,10 @@ void setup() Serial.println(); + Serial.print("State Size ..."); + Serial.println(sizeof(Poly1305)); + Serial.println(); + Serial.println("Test Vectors:"); testPoly1305(&poly1305, &testVectorPoly1305_1); testPoly1305(&poly1305, &testVectorPoly1305_2); diff --git a/libraries/Crypto/examples/TestSHA1/TestSHA1.ino b/libraries/Crypto/examples/TestSHA1/TestSHA1.ino index 36c0670d..22890f2f 100644 --- a/libraries/Crypto/examples/TestSHA1/TestSHA1.ino +++ b/libraries/Crypto/examples/TestSHA1/TestSHA1.ino @@ -230,6 +230,10 @@ void setup() Serial.println(); + Serial.print("State Size ..."); + Serial.println(sizeof(SHA1)); + Serial.println(); + Serial.println("Test Vectors:"); testHash(&sha1, &testVectorSHA1_1); testHash(&sha1, &testVectorSHA1_2); diff --git a/libraries/Crypto/examples/TestSHA256/TestSHA256.ino b/libraries/Crypto/examples/TestSHA256/TestSHA256.ino index 4bec5add..63f7436e 100644 --- a/libraries/Crypto/examples/TestSHA256/TestSHA256.ino +++ b/libraries/Crypto/examples/TestSHA256/TestSHA256.ino @@ -234,6 +234,10 @@ void setup() Serial.println(); + Serial.print("State Size ..."); + Serial.println(sizeof(SHA256)); + Serial.println(); + Serial.println("Test Vectors:"); testHash(&sha256, &testVectorSHA256_1); testHash(&sha256, &testVectorSHA256_2); diff --git a/libraries/Crypto/examples/TestSHA3_256/TestSHA3_256.ino b/libraries/Crypto/examples/TestSHA3_256/TestSHA3_256.ino index 527fe097..7fa610a4 100644 --- a/libraries/Crypto/examples/TestSHA3_256/TestSHA3_256.ino +++ b/libraries/Crypto/examples/TestSHA3_256/TestSHA3_256.ino @@ -267,6 +267,10 @@ void setup() Serial.println(); + Serial.print("State Size ..."); + Serial.println(sizeof(SHA3_256)); + Serial.println(); + Serial.println("Test Vectors:"); testHash(&sha3_256, &testVectorSHA3_256_1); testHash(&sha3_256, &testVectorSHA3_256_2); diff --git a/libraries/Crypto/examples/TestSHA3_512/TestSHA3_512.ino b/libraries/Crypto/examples/TestSHA3_512/TestSHA3_512.ino index 8a6381dd..896ef728 100644 --- a/libraries/Crypto/examples/TestSHA3_512/TestSHA3_512.ino +++ b/libraries/Crypto/examples/TestSHA3_512/TestSHA3_512.ino @@ -269,6 +269,10 @@ void setup() Serial.println(); + Serial.print("State Size ..."); + Serial.println(sizeof(SHA3_512)); + Serial.println(); + Serial.println("Test Vectors:"); testHash(&sha3_512, &testVectorSHA3_512_1); testHash(&sha3_512, &testVectorSHA3_512_2); diff --git a/libraries/Crypto/examples/TestSHA512/TestSHA512.ino b/libraries/Crypto/examples/TestSHA512/TestSHA512.ino index 042598ad..3a7e20c0 100644 --- a/libraries/Crypto/examples/TestSHA512/TestSHA512.ino +++ b/libraries/Crypto/examples/TestSHA512/TestSHA512.ino @@ -217,6 +217,10 @@ void setup() Serial.println(); + Serial.print("State Size ..."); + Serial.println(sizeof(SHA512)); + Serial.println(); + Serial.println("Test Vectors:"); testHash(&sha512, &testVectorSHA512_1); testHash(&sha512, &testVectorSHA512_2);