了解Hill密码算法

时间:2010-10-22 14:41:56

标签: algorithm encryption-symmetric

我想实现Hill密码,但我认为我在理解算法本身时遇到了问题。

我将使用的密钥是2X2矩阵,每次我将编码2个字符。 我将密钥矩阵与2个字符的矩阵相乘,然后将结果模数为26,作为此等式。

C = E(K, P) = KP mod 26
where: K:key
       P:plain text

我是这样做的,但是有些不对劲。我用我书中的例子来测试我的算法。由于纯文本为friday,密钥为: int key[][] = {{5, 8}, {17, 3}};  结果应为PQCFKU

首字母frf= 5r=17字母顺序 f的加密为(5*5 + 17*8)%26 =5 => fP

我犯的错误在哪里?

1 个答案:

答案 0 :(得分:2)

如果:http://slidefinder.net/c/chapter_classical_encryption_techniques_jen/11206531/p2是你的书,矩阵[[5,8] [17,3]]不是你的加密密钥......它是输入矩阵。 5 = F,17 = R,8 = I,3 = D.K是加密密钥,幻灯片中未给出。你必须求解线性代数方程才能得到K.

如果您的图书中的示例仍然存在问题,请尝试http://www.cs.uri.edu/cryptography/classicalhill.htm获取加密和解密的简单2x2密钥示例。