[Princípios e prática de criptografia] (5) Hill Cipher

Hill Cipher

definição

Seja m> = 2 um número inteiro positivo, P = C = (Z 26 ) m , e K = { m × m matriz invertível definida em Z 26 }, para qualquer chave K, defina: e k (x) = xK e d k (y) = yK -1 , as operações acima são todas realizadas em Z 26 .

Comece aprendendo a senha de Hill com um exemplo.

Referência

Defina m = 2, cada unidade de texto simples é representada por x = (x 1 , x 2 ) e a mesma unidade de texto cifrado é representada por y = (y 1 , y 2 ). Na criptografia específica, y 1 e y 2 são expressos como uma combinação linear de x 1 e x 2 . Por exemplo:

y 1 = (11x 1 + 3x 2 ) mod26

y 2 = (8x 1 + 7x 2 ) mod26

Usando uma matriz, a fórmula acima pode ser abreviada como
(y 1, y 2) = (x 1, x 2) [11 8 3 7] (1) (y_1, y_2) = (x_1, x_2) \ begin {bmatrix } 11 e 8 \\ 3 e 7 \ end {bmatrix} \ tag {1}( e1,e2)=( x1,x2)[1 1387]( 1 ) As
operações acima são todas realizadas em Z26.A chave K é geralmente considerada como uma matriz m × m, denotada como K = (ki, j). Para texto simples x = (x1, x2… xm) ∈P ek pertencem a K. Calcule y = ek(x) = (y1, y2... ym)
(y 1, y 2 ... ym) = (x 1, x 2 ... xm) [k 1, 1 k 1, 2 ... k 1, mk 2, 1 k 2, 2 ... k 2, m ... km, 1 km, 2 ... km, m] (2) ( y_1, y_2 ... y_m) = (x_1, x_2 ... x_m) \ begin {bmatrix} k_ {1,1} & k_ {1,2} ... & k_ {1, m} \\ k_ { 2,1} & k_ {2,2} ... & k_ {2, m} \\ ... \\ k_ {m, 1} & k_ {m, 2} ... & K_ {m, m } \\ \ end {bmatrix} \ tag {2}( e1,e2. . . em)=( x1,x2. . . xm)k1 , 1k2 , 1. . .km , 1k1 , 2. . .k2 , 2. . .km , 2. . .k1 , mk2 , mkm , m( 2 )

Ou você pode usar a forma de matriz, expressa diretamente como y = xK.

Pode-se ver do exposto que o texto cifrado é obtido por transformação linear do texto simples.

Em seguida, consideramos principalmente o processo de descriptografia, ou seja, como calcular x a partir de y. De acordo com o conhecimento da álgebra linear, podemos facilmente pensar em buscar a matriz inversa K -1 da matriz para a transformação de descriptografia e o texto simples correspondente deve ser x = yK -1

Acho que você gosta

Origin blog.csdn.net/weixin_51656605/article/details/110421484
Recomendado
Clasificación