诗歌代码是一种简单的双重换位密码,最早出现在第二次世界大战期间,由英国特别行动处(SOE)率先使用,当时主要用来和纳粹占领区的负责人进行隐秘通信。 利用诗歌代码进行加密之前,发送方和接收方需事先约定好,使用哪一首诗歌来进行加密。 在加密时,发送方先从诗中随机选择一组单词,并给所选单词的每一个字母进行数字编码。然后,利用这些数字作为密钥,来加密明文。 当然,为了让接收方知道你选择的是哪些单词,在发送消息时,需要同时发送一定的暗示。 下面,举一个简单的例子: 我们将用下面这首诗歌来进行加密:
之后,我们从上方的诗歌中选择一些单词作为密钥,这里我们选择了五个单词: 为了符合诗歌的长度,以及安全考虑,我们的明文必须至少要200个字母左右,同时去掉标点符号: 准备完毕,我们现在就开始加密吧。 首先,我们先将密钥的每一个字母编码成数字,编码的方式是根据26个字母表的顺序进行编码的,如果出现了相同的字母,就从左到右依次进行编号。 比如,我们选择的密钥中就有两个A,那么就编码成:
根据这个方法,完成所有密钥的编码:
然后,我们还需要准备一张表格,因为我们的密钥共有33个字母,所以表格需要33列,并将明文依序写在表格中,如下所示:
现在,关键时候到了,我们将对明文进行加密,我们先将密钥的数字编码(编码不改动顺序),写在明文表格的头部:
然后,我们根据数字的顺序(指1245....这个数字出现顺序),以列的方式,先后写出所有字母:
根据这个方法,写出所有字母,最终,我们的密文是:
开头我们已经知道,诗歌代码是一种简单的双重换位密码,所以,你猜对了:接下来我们还需要再次重复上面这个加密过程。 再次从诗歌中挑选五个不同的单词,然后再次把密文加密一次。 这里我们就跳过这一步骤,不再详述,因为加密过程是一样的。 完成双重换位之后,我们还需要在密文中加一些暗示,以便接收方知道我们使用了哪些单词作为密钥。 关于步,大家可以凭借自己的聪明才智,自由发挥,没有任何限制。 至于解密,如果我们事先知道密文是由哪一首诗歌和密钥加密的,那么解密的过程很简单,只需要反向操作即可得到明文。
|