Курсовая работа: Программная реализация алгоритма шифрования DES. Режим ECB

//Перестановка ключа (+ избавление от 8х битов)

transposition (key, i_key, table_key_initial_transposition, 56);

//Первоначальная перестановка данных

transposition (data, NULL, table_initial_transposition, 64);

for(inti=0; i<16; ++i)

{

//Сохранение Li(берется из правой части)

memcpy(Li, &data[4], 4);

//Сдвигключа

if (!decode)

{

shift_left_key (key, table_shift_key[i]); //При зашифровке

}

else

{

shift_right_key (key, table_shift_key_right[i]); //При расшифровке

}

//Перестановка ключа со сжатием

transposition (small_key, key,

table_transposition_with_compression, 48);

//Перестановка данных с расширением

transposition(big_data, &data[4],

table_transposition_with_extension, 48);

//Сложение данных XOR с ключом

for (int k=0; k<6; ++k)big_data[k]^=small_key[k];

//ПодстановкаспомощьюS-блоков

S_block (small_data, big_data);

//Перестановка данных с помощью P-блоков

transposition (small_data, NULL, table_transposition_P_block, 32);

К-во Просмотров: 644
Бесплатно скачать Курсовая работа: Программная реализация алгоритма шифрования DES. Режим ECB