To tylko jedna z 22 stron tej notatki. Zaloguj się aby zobaczyć ten dokument.
Zobacz
całą notatkę
Zygmunt Kubiak. Notatka składa się z 22 stron.
Instytut Informatyki Laboratorium Bezprzewodowych Sieci Sensorowych Sprawozdanie z ćwiczenia Temat Szyfrowanie AES Rok akademicki Data wykonania ćwiczenia Data oddania sprawozdania Termin zajęć Ocena Skład grupy laboratoryjnej Rok/semestr/grupa Rok 4, Sem 7, Gr A2 1. Kod Programu W programie zostały wykorzystano funkcje nagłówkowe podane przez prowadzącego, w których realizowane są poszczególne etapy szyfrowania AES. Kod programu został stworzony na potrzeby innego mikrokontrolera, dlatego niezbędne było wprowadzenie zmian: Zmiana nazw elementów struktury word w pliku nagłówkowym F326_AES_Typedef.h (elementy b0, b1, b2 i b3 są używane w compiler_defs.h) #include "compiler_defs.h" #include "C8051F020_defs.h" #include "dev.h" #include "uart.h" #include "F326_AES_Typedef.h" #include "F326_AES_Parameters.h" #include "F326_AES_KeyExpander.h" #include "F326_AES_Cipher.h" #include "F326_AES_InvCipher.h" #include "F326_AES_Sbox.h" xdata byte input[DATA_LENGTH]; xdata byte code[DATA_LENGTH]; void entry (void); void encryption (void); void decryption (void); void displaying (void); void main (void) { int i; Init_Device(); P5 = 0x0F; for(i=0;i
(…)
…;
for(i=0;i<16;i++)
{
if(input[i]!=0x00)
{
putchar(input[i]);
}
}
printf("\n");
displaying();
printf("\n");
KeyExpansion ();
encryption();
printf("\n");
decryption();
}
void entry (void)
{
int i;
i=0;
while(i<16)
{
if(input[i]=='!') break;
input[i] = getchar();
i++;
}
}
void encryption (void)
{
int i;
Cipher(&input[0], &code[0]);
printf("\n\n");
printf("ZASZYFROWANE DANE:\n\n");
for(i=0;i<16;i++)
{
printf("%x ", code[i]);
}
}
void decryption (void)
{
int i;
InvCipher(&code[0],&input[0]);
printf("\nODSZYFROWANE DANE:\n");
for(i=0;i<16;i++)
{
printf("%x ", input[i]);
}
}
void displaying (void)
{
int i;
for(i=0;i<16;i++)
{
if(i%4==0)
{
printf("\n");
}
printf("%x ", input[i]);
}
}
2. Wynik działania programu:
BartoszLebiodaBa
42 61 72 74
6F 73 7A 4C
65 62 69 6F
64 61 42 61
42 6B 6D 68
60 76 6B 6C
70…
… AE 9C 46 59 5C 83 BE AB 61 D5 69 1E 8E
ODSZYFROWANE DANE:
42 61 72 74 6F 73 7A 4C 65 62 69 6F 64 61 42 61
3. Porównanie wyniku działania programu z kalkulatorem AES Demo.
4. Wnioski
Działanie mojego programu jest jednakowe jak szyfrowanie przy użyciu kalkulator AES Demo.
Potwierdza to poprawności działania napisanego algorytmu.
…
... zobacz całą notatkę
Komentarze użytkowników (0)