Funksiya
|
Tavsif
|
int getSboxValue(int num)
|
Almashtirish jadvalining kerakli qiymatini qaytaradigan funksiya
|
int getSboxInvert(int num)
|
Orqaga almashtirish jadvalining kerakli qiymatini qaytaradigan funksiya
|
void KeyExpansion(struct aes_parameter*param)
|
ishlab chiqarish protsedurasi Round Keys dan Cipher Key. Algoritmning har bir turida berilgan kalitlar ishlatiladi.
|
void AddRoundKey(int round, struct aes_parameter*param)
|
XOR Round Key va State qo‘llaniladigan shifrlash va teskari shifrlashdagi transformatsiya. RoundKey uzunligi State kattaligiga teng (ya’ni Nb = 4 bo‘lsa, u holda RoundKey uzunligi 128 bit yoki 16 baytga teng)
|
void SubBytes(struct aes_parameter*param)
|
Shtrixli bo‘lmagan almashtirish jadvalini (Sbox) ishlatib, uni har bir State baytiga mustaqil ravishda tadbiq etadigan shifrlash o‘zgarishlari
|
void InvSubBytes(struct aes_parameter*param)
|
SubBytes () ga qarama-qarshi bo‘lgan deshifrlashda o‘zgartirish
|
void ShiftRows(struct aes_parameter*param)
|
So‘nggi uchta qatorni State turli xil qiymatlar bo‘yicha tsikl bilan o‘zgartiradigan Statega ishlov beradigan shifrlash o‘zgarishlari
|
void InvShiftRows(struct aes_parameter*param)
|
ShiftRows () ga qarama-qarshi bo‘lgan deshifrlashda o‘zgartirish
|
void MixColumns(struct aes_parameter*param)
|
Barcha holat ustunlarini oladigan va ularning ma’lumotlarini (bir-biridan mustaqil ravishda) yangi ustunlar olish uchun aralashtiradigan shifrlash transformatsiyasi
|
void InvMixColumns(struct aes_parameter*param)
|
MixColumns () ga qarama-qarshi bo‘lgan deshifrlashda o‘zgartirish
|
void Cipher(struct aes_parameter*param)
|
Sarlavha faylida e’lon qilingan
State ma’lumotlarini shakllantirish funksiyasi. Bloklarni konversion funksiyalar qatoriga shifrlashning asosiy vazifasi Matnni chaqirish.
|
void InvCipher(struct aes_parameter*param
|
Sarlavha faylida e’lon qilingan
Axborot funksiyasini o‘qing, blokirovkalash funksiyasini chaqiring, shifrlangan ma’lumotlarni yozing
|
void aes_crypt(char*input_fname, char*output_fname, char*password, int key_len)
|
Sarlavha faylida e’lon qilingan
Axborot funksiyasini o‘qing, blokirovkalash funksiyasini chaqiring, shifrlangan ma’lumotlarni yozing
|
void aes_decrypt(char*input_fname, char*output_fname, char*password, int key_len)
|
Sarlavha faylida e’lon qilingan
Shifrlangan ma’lumotni o‘qish, blokning parolini ochish funksiyasini chaqirish, shifrlangan ma’lumotlarni yozish funksiyasi
|
int test_aes()
|
Sarlavha faylida e’lon qilingan
Kalit hajmi aniqlanadigan funksiya, shuningdek, kirish -chiqish ma’lumotlari va natijalar fayllari parametrlari. Shuningdek, matnni shifrlash va parolini hal qilish uchun funksiyalarni chaqiradi
|