伤蓝 发表于 2019-6-26 13:42:30

米兹科夫斯基换位密码

米茨科夫斯基密码是柱状换位密码的一种变体。它是在1902年由特雷·维克托·特奥多尔·米兹科夫斯基提出的。加密方法:在加密之前,我们需先选择关键字,然后对关键字进行数字编号,编号的顺序是根据英文字母表的顺序出现先后编号,如果关键字字母相同,则编号也是相同。之后,我们在网格中写入明文,网格的列数就是关键字的字母数,如果明文长度不足,则在最后用X代替。下面是一个简单的例子。我们要加密的:明文是:Thetomatoisaplantinthenightshadefamily关键词是“tomato”然后根据要求,我们先绘制一个网格,然后再网格的顶部,写入关键词,关键词下面写入编号,接着把明文依序写入网格,如下图所示

之后,我们将密文读出,方法是这样的:我们先从以1开头的列开始读出第一组密文,1=TINESAX。然后读出以2开头的列2=EOAHTFX接着我们读出第三组,在网格中我们可以看到,网格中有两组以3开头的列,因此,我们将从左到右读出每一列的字母,得到3=HMTALITIHAEIYX最后,我们读出以4开头的列,4=TOASPTNNGDMLX最后,我们根据以上得到的四组密文,依序写出,得到最终密文:明文:“Thetomatoisaplantinthenightshadefamily”密文:“TINESAXEOAHTFXHMTALITIHAEIYXTOASPTNNGDMLX”解密方法:解密的过程也非常类似于柱状换位密码,解密之前我们需要知道关键词。我们先在网格中写出关键词,然后根据英文字母表的顺序出现先后写出编号,如果关键字字母相同,则编号也是相同。之后,我们把密文的长度除以关键字的长度,计算出需要添加到网格中的行数,接下来我们只需有系统地把密文放回网格中即可。放入的方法,也是先从以1开头的列开始,然后依序放入。如果这个列只有一个编号,我们就直接从上填下来就好。如果这个列有两个一样的编号,我们就从左向右依次填写。下面的是一个简单的例子:我们要解密的密文和关键字是:密文:SXOOSITIHAeiylexpendltAEHNTHFMAWXX关键字:potato我们先计算一下,密文有42个字母,关键字是6个字母,所以我们要绘制的网格是,42÷6 = 7行。
https://www.tuiliz.com/data/attachment/album/201906/27/200551sds2hzyc98zkegoz.jpg
我们先从以1开头的列开始写入密文,因为1只有一个编号,所以我们只需要用密文的前7个字母写入该列即可。
https://www.tuiliz.com/data/attachment/album/201906/27/200552ylai7a75rg341475.jpg
接着,我们开始写入以2开头的列。2有两个编号,所以我们从第8个密文开始,依次从左到右写入这些列中。
https://www.tuiliz.com/data/attachment/album/201906/27/200552lcxtgckcg2dorghz.jpg
然后根据上述方法,把所有密文写入网格:
https://www.tuiliz.com/data/attachment/album/201906/27/200553hjx1ymmzh4eh9yex.jpg
现在,我们遮住关键字和编号,依序读出网格中的所有字母即可得到最终明文:potatoesareinthenightshadefamilyaswell

DYY 发表于 2019-8-19 10:15:50

请问:关键字的编号是怎么来的呢?

新垣 发表于 2019-8-19 12:31:10

同问数字顺序是怎么得来的?

新垣 发表于 2019-8-19 12:38:20

新垣 发表于 2019-8-19 12:31
同问数字顺序是怎么得来的?

懂了

2106370014 发表于 2019-8-21 23:45:55

12,3,/是什么密码?

洛梦 发表于 2019-8-25 21:59:05

DYY 发表于 2019-8-19 10:15
请问:关键字的编号是怎么来的呢?

按照在字母表中的顺序排的
页: [1]
查看完整版本: 米兹科夫斯基换位密码