栅栏密码是一种简单的移动字符位置的加密方法,规则简单,容易破解。栅栏密码的加密方式:把文本按照一定的字数分成多个组,取每组第一个字连起来得到密文1,再取每组第二个字连起来得到密文2……最后把密文1、密文2……连成整段密文。
简单来说,栅栏密码就是把一个明文(去掉空格)分成n组,每组m个,然后一定的排序方法来将这些字符重新组合。通过m的大小称其为m栏栅栏密码,比较常见的m取2,即2栏栅栏密码。例如:
明文:栅栏密码加密规则示例
每组字数:5
按照字数先把明文分成:
栅栏密码加
密规则示例
先取每组第一个字:栅密
再取每组第二个字:栏规
……
最后得到“栅密栏规密则码示加例”。
解密则反推:
密文被分成2个字一组:
栅密
栏规
密则
码示
加例
先取每组第一个字:栅栏密码加
再取每组第二个字:密规则示例
最后得到“栅栏密码加密规则示例”。
提示:当前的栅栏密码程序不删除空格和换行符。
明文或密文中如果出现连续空格将原样保留,复制到其它地方时连续空格可能会变成一个空格,注意保持原样。
在进行多行文本(段落)加密时,每行独立进行加密。
2栏栅栏密码解法
一般比较常见的是2栏的栅栏密码。
比如明文:THERE IS A CIPHER
去掉空格后变为:THEREISACIPHER
两个一组,得到:TH ER EI SA CI PH ER
先取出第一个字母:TEESCPE
再取出第二个字母:HRIAIHR
连在一起就是:TEESCPEHRIAIHR
还原为所需密码。
而解密的时候,我们先把密文从中间分开,变为两行:
T E E S C P E
H R I A I H R
再按上下上下的顺序组合起来:
THEREISACIPHER
分出空格,就可以得到原文了:
THERE IS A CIPHER
既然知道是栏栅密码,而且又知道分的栏数,根本就没有难度吧。第一个密码:OEOIUYVL,其实一看就知道是ILOVEYOU,还是解下吧,但这个密码并非分四栏,而是分两栏,得到:OEOIUYVL于是从密文的右上方开始往下一列一列的读,就能得到:ILOVEYOU,也就是:I love you,我爱你的意思。第二个密码:WYOOLVMHDNTOEE,这个密码也不是分7栏,同样也是分两栏,得到:WYOOLVMH DNTOEE然后从左上方开始往下一列一列地读,就能得到:WHYDONOTLOVEME,也就是:Why do not you love me? 中文意思就是:为什么你不爱我呢? 希望能帮到你。