#include <AESLib.h>
// Clé de chiffrement AES (16 octets pour AES128)
byte aes_key[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F};
// IV (vecteur d'initialisation pour CBC)
byte aes_iv[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F};
AESLib aesLib;
byte audio[16];
char encryptAudio[16 * 2];
void setup() {
Serial.begin(9600);
while (!Serial);
Serial.println("Initialisation...");
aesLib.gen_iv(aes_iv); // Génération d'un IV si besoin
}
void loop() {
// Lecture des données du microphone
for (int i = 0; i < 16; i++) {
int Val = analogRead(A0);
audio[i] = Val & 0xFF;
delay(10);
}
// Affichage des données avant chiffrement
Serial.println("Données brutes :");
for (int i = 0; i < 16; i++) {
Serial.print(audio[i], HEX);
Serial.print(" ");
}
Serial.println();
// Chiffrement des données
uint16_t encry = aesLib.encrypt64(audio,16,encryptAudio, aes_key, 128, aes_iv );
Serial.println("Données chiffrées :");
for (int i = 0; i < encry; i++) {
Serial.print(encryptAudio[i]);
}
Serial.println();
delay(100);
}