]> AND Private Git Repository - Cipher_code.git/blob - Arduino/libraries/AES-master/examples/aes/aes.pde
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
arduino
[Cipher_code.git] / Arduino / libraries / AES-master / examples / aes / aes.pde
1 #include <AES.h>
2 #include "./printf.h"
3
4 AES aes ;
5
6 byte *key = (unsigned char*)"0123456789010123";
7
8 byte plain[] = "Add NodeAdd NodeAdd NodeAdd NodeAdd Node";
9
10 //real iv = iv x2 ex: 01234567 = 0123456701234567
11 unsigned long long int my_iv = 36753562;
12
13 void setup ()
14 {
15   Serial.begin (57600) ;
16   printf_begin();
17   delay(500);
18   printf("\n===testng mode\n") ;
19   
20 //  otfly_test () ;
21 //  otfly_test256 () ;
22 }
23
24 void loop () 
25 {
26   prekey_test () ;
27   delay(2000);
28 }
29
30 void prekey (int bits)
31 {
32   aes.iv_inc();
33   byte iv [N_BLOCK] ;
34   byte plain_p[48];
35   byte cipher [48] ;
36   byte check [48] ;
37   unsigned long ms = micros ();
38   aes.set_IV(my_iv);
39   aes.get_IV(iv);
40   aes.do_aes_encrypt(plain,41,cipher,key,bits,iv);
41   Serial.print("Encryption took: ");
42   Serial.println(micros() - ms);
43   ms = micros ();
44   aes.set_IV(my_iv);
45   aes.get_IV(iv);
46   aes.do_aes_decrypt(cipher,48,check,key,bits,iv);
47   Serial.print("Decryption took: ");
48   Serial.println(micros() - ms);
49   printf("\n\nPLAIN :");
50   aes.printArray(plain,(bool)true);
51   printf("\nCIPHER:");
52   aes.printArray(cipher,(bool)false);
53   printf("\nCHECK :");
54   aes.printArray(check,(bool)true);
55   printf("\nIV    :");
56   aes.printArray(iv,16);
57   printf("\n============================================================\n");
58 }
59
60 void prekey_test ()
61 {
62   prekey (128) ;
63 }