试解以下的几组密码(答案均为英文单词,词组或句子): (1)O H Q G P H D K D Q C
(2)M I N M U M X (密钥:cat)
(3)45.23.2.33.1.44.45.44.3.22.23.45
(4)12401011801180212011401804
凭你自己的实力可以解开多少呢?呵呵,下面我们来一起看一下这几个题目并简单介绍它们的“背景”。
其实,给前两个密码加上一个这样的提示,似乎就简单多了:替换。(注:古典密码学分为易位和替换两个部分,易位即在加密过程中改变了字母的位置,如栅栏密码;而替换密码是指字母的本身被其他字母代替,而并不改变其本身的位置,即通俗所讲的移位,应注意区分。)
(1)凯撒密码
伟大的凯撒大帝为了防止出征时军情落入敌手而泄露,首次将这种替换密码用于军事之中。加密过程其实极其简单,只需按照字母表顺序将明文向后移动三位即得密文。
明码表:a b c d e f g h i j k l m n o p q r s t u v w x y z
密码表:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
题目:O H Q G P H D K D Q C
依上表进行替换,即可解得明文:Lend me a hand(帮个忙).
(2)维德里亚密码
第一台配有打字机的密码机设计者维德里亚的杰作,亦称代数公式密码。以A代表明文,B代表密钥,C代表密文,写出下列的加密公式:A+B=C,其中密文字母变换成数字重复使用,得出的数字在25上则需要减去25。
其中,A、B对应的数字均以下表为标准:
a-0,b-1。。。z-25
题目:M I M U M X (密钥:cat)
解密码,依B-C=A,例如M=12,C=2,M-C=10,即K;又如,M=12,T=19,M-T=-7,-7+25=18,即S,同理可得明文:Kiss me(亲亲我).
(3)元音密码
在给龙琦的题目中已经提到了,这里再详细解释一下。
元音密码的原则很简单,即将五个元音字母分别标号1,2,3,4,5,然后将26个英文字母的对应表码写成如下的形式:
a b c d e f g h i j k l m n o p q r s t u v w x y z
1 11 12 13 2 21 22 23 3 31 32 33 34 35 4 41 42 43 44 45 5 51 52 53 54 55
然后进行加密即可。
题目:45.23.2.33.1.44.45.44.3.22.23.45
对应上表解出明文:the last sight(最后一面).
需要说明的是,元音字母因为密文中只含有1,2,3,4,5五个数字而且时常出现个位数,因此很容易破解,有时候可以将1,2,3,4,5变为10,20,30,40,50等,也可变成如同棋盘密码密文的形式来对解密者进行干扰。
(4)云影密码
此密码运用了1248代码,因为本人才疏学浅,尚未发现有过使用的先例,因此暂归为原创密码,若有密码界前辈认为不妥,请指出此密码或类似密码的普遍使用历史并附寄一份到我站内邮箱,我将以最快速度核查并改正。由于这个密码,我和片风云影初识,为了纪念,将其命名为“云影密码”,原文请见谜题大全精华区。 原理很简单,有了1,2,4,8这四个简单的数字,你可以以加法表示出0-9任何一个数字,例如0=28,7=124,9=18。 这样,再用1-26来表示A-Z,就可以用作密码了。 为了不至于混乱,我个人引入了第五个数字0,来用作间隔,以避免翻译错误,所以还可以称“01248密码”。
题目:12401011801180212011401804
第一步,分割,即124 1 118 118 212 114 18 4
第二步,基本翻译,例如124可以表示7,也可以表示16(但不可能是34,因为不会超过26),所以可以放在一边,翻译其他没有异议的,可得:124 a s s w o 18 d
第三步,推测得出明文。可以推测后面的18表示r,前面的为p最合适。
明文:password(密码).
(五)四位乘法密码——(密文:I Q V L N J O P X;密钥:1234)
自古密文的传递者最担心的就是密文和密钥同时落入敌手,这样,密码的效应也就所剩无几了,所以通常会将两样东西以不同的方式在不同的时间进行传送。但是,后来有一个叫前天淫次郎的日本鬼子发明了一种加密方式,这种加密方式使得即使密钥落入敌手也不会轻易暴露,一时很令敌手头疼。
这种加密方式的关键是密钥,简短但是实用。下面介绍其使用及破译方法:
首先,任意选取一个个十百位数均无零的四位数,如题目中的密钥,即1234;
其次,将上述四位数做平方处理,即1234×1234=1522756,取中间三位数,即227;
再次,用所得数字与1234相乘,即227×1234=280118,取“中间三位”(之前传递和接收密文的双方要有所约定比如遇到像280118这样的数字,是取‘801’还是取‘011’),这里取801;
依次类推,直到所得的三位数所含数字总个数大于或等于密文的字母个数为止,即801×1234=988434,取884。 这样,最终得到的一组码是227801884。
最后,将这组码标在密文下,向前推相应的位数即可得到明文,即
密文:I Q V L N J O P X 密钥:2 2 7 8 0 1 8 8 4 明文:g o o d n i g h t(Good night!)
(六)费娜姆密码(密码:00110110010001001100100010000010110;密钥:study)
二战时德军使用过的一种密码,其实是利用了二进制的表示法来替代字母,有如下的表格作为基础:
A 1000001 B 1000010 C 1000011 D 1000100 E 1000101 F 1000110 G 1000111 H 1001000 I 1001001 J 1001010
K 1001011 L 1001100 M 1001101 N 1001110 O 1001111 P 1010000 Q 1010001 R 1010010 S 1010011 T 1010100
U 1010101 V 1010110 W 1010111 X 1011000 Y 1011001 Z 1011010
那么,比如我们要加密“Hello”,密钥用“study”,则以如下方式进行加密:
H E L L O = 1001000 1000101 1001100 1001100 1001111 S T U D Y = 1010011 1010100 1010101 1000100 1011001
加密原则:1+1=0,0+0=0,1+0=1
于是得密文:00110110010001001100100010000010110
那么解题目中的密文,需要遵循以下几个原则和步骤,
1,划分,即每七个数字为一组;
2,对应,找出密文每个字母对应的数字,再与上述数字对应;
3,转换,遵循上述加密原则,逆用即可;
4,解密,得出新的一组数字,对应字母,得出明文。
|