Курсовая работа: Программная реализация алгоритма шифрования DES. Режим ECB
}
data[0] >>=1;
set_bit (&data[0], 0, save_bit);
}
}
//Циклический сдвиг влево массива dataиз 28 элементов (сдвиг ключа) на \
//num_shift позиций
void shift_left_key (unsigned char *key, int num_shift)
{
int save_bit;
for (int i=0; i<num_shift; ++i)
{
shift_left(key, 7, 1);
save_bit=get_bit(key, 27);
set_bit(key, 27, get_bit(key, 55));
set_bit(key, 55, save_bit);
}
}
//Циклический сдвиг влево массива dataиз 28 элементов (сдвиг ключа) на
//num_shift позиций
void shift_right_key (unsigned char *key, int num_shift)
{
int save_bit;
for (int i=0; i<num_shift; ++i)
{
shift_right(key, 7, 1);
save_bit=get_bit(key, 0);
set_bit(key, 0, get_bit(key, 28));
set_bit(key, 28, save_bit);