Расшифрование зашифрованных данных в режиме простой замены

Криптосхема, реализующая алгоритм расшифрования в режиме простой замены, имеет тот же вид (см. Рис. 1), что и при зашифровании. В КЗУ вводятся 256 бит того же ключа, на котором осуществлялось зашифрование. Зашифрованные данные, подлежащие расшифрованию, разбиты на блоки по 64 бита в каждом. Ввод любого блока Тш = (а1(32), а2(32),..., а32(32), b1(32), b2(32),..., b32(32)) в накопители N1 и N2 производится так, что значение а1(32) вводится в 1-й разряд N1, значение а2(32) вводится во 2-й разряд N1 и т.д., значение а32(32) вводится в 32-й разряд N1; значение b1(32) вводится в 1-й разряд N2 и т. д., значение b32(32) вводится в 32-й разряд N2.

Расшифрование осуществляется по тому же алгоритму, что и зашифрование открытых данных, с тем изменением, что заполнения накопителей X0, X1,..., X7 считываются из КЗУ в циклах расшифрования в следующем порядке:

X0, X1, X2, X3, X4, X5, X6, X7, X7, X6, X5, X4, X3, X2, X1, X0,

X7, X6, X5, X4, X3, X2, X1, X0, X7, X6, X5, X4, X3, X2, X1, X0.

Уравнения расшифрования имеют вид:

при                                           ;

при                                            

при j = 32.

Полученные после 32 циклов работы заполнения накопителей N1 и N2 составляют блок открытых данных.

T0 = (a1 (0), a2 (0),..., a32 (0), b1 (0), b2 (0), b32 (0)), соответствующий блоку зашифрованных данных, при этом значение а1 (0) блока Т0,соответствует содержимому 1-го разряда N1, значение а2 (0) соответствует содержимому 2-го разряда N1 и т. д., значение а32 (0) соответствует содержимому 32-го разряда N1; значение b1 (0) соответствует содержимому 1-го разряда N2, значение b2 (0) соответствует содержимому 2-го разряда N2 и т. д., значение b32 (0) соответствует содержимому 32-го разряда N2.

Аналогично расшифровываются остальные блоки зашифрованных данных.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: