一、置换密码
原理:把明文中的字母重新排列,字母本身不变,但其位置改变了,这样编成的密码成为置换密码。置换密码又称移位密码,因为对照明文来看,字母的位置被移动了。
1.最简单就是把明文顺序倒过来,然后截成固定长度的字母组作为密文
例如:
明文:MINGCHENWUDIANFADONGFANGONG(明晨5点发动反攻)
密文:GNOGN AFGNO DAFNA IDUWN EHCGN IM
倒序的置换密码显然是很弱的。
2.栅栏密码
原理:所谓栅栏密码,就是把要加密的明文分成N个一组,然后把每组的第1个字连起来,形成一段无规律的话。 不过栅栏密码本身有一个潜规则,就是组成栅栏的字母一般不会太多。(一般不超过30个,也就是一、两句话),从本质上讲,栅栏密码是一种置换技术,即仅仅改变位置而不做替换。
例如:
明文:THE LONGEST DAY MUST HAVE AN END
加密:
I:把将要传递的信息中的字母交替排成上下两行。
T E O G S D Y U T A E N N
H L N E T A M S H V A E D
II:将下面一行字母排在上面一行的后边。
TEOGSDYUTAENNHLNETAMSHVAED
解密:
I.先将密文分为两行
T E O G S D Y U T A E N N
H L N E T A M S H V A E D
II.再按上下上下的顺序组合成一句话
THELONGESTDAYMUSTHAVEANEND
扩展
(1)在选择行数时可以使多行,这样对于加密强度有所提高
(2)可以在加密之后在使用其他密码进行加密,增加强度
3.带密钥的置换
原理:首先选一个词语作为密钥,去掉重复字母,然后按字母的字典顺序给字母编号,于是得到一组与密钥词语对应的数字序列。最后据此数字序列中的数字顺序按列选出密文。
例如:
明文:MING CHEN WU DIAN FA DONG FAN GONG
密钥:玉兰花
YU LAN HUA
去掉重复字母:YULANH
数字序列: 6 5 3 1 4 2
矩阵: M I N G C H
E N W U D I
A N F A D O
N G F A N G
O N G * * *
密文:GUAA* HIOG* NWFFG CDDN* INNGN MEANO
小结
置换密码比较简单,但它经不起已知明文攻击。这是因为只要把明密文对照,便可以得出置换规律,便可确定出密钥。但是,把它与其他技术相结合,可以得到十分有效的密码