前言:

  Crypto中分三类,分别是编码、古典密码、现代密码,栏栅密码属于古典密码中得特殊移位密码,密钥只有 一个k,表示栏栅得长度。所谓栏栅密码就是将要加密得明文分成k个一组,然后取每组得第一个字符依次连接,拼接而成得字符串就是密文

Railfence:

题目:ccehgyaefnpeoobe{lcirg}epriec_ora_g,我们能在这串字符串中找到cyberpeace这个单词得每个字母,因此可以看出这是个移位密码,根据提示,我们查查看什么是栏栅密码

通过查到得资料我们了解到栏栅密码有两种,分别是https://baike.baidu.com/item/%E6%A0%85%E6%A0%8F%E5%AF%86%E7%A0%81 这篇文章给出得,正常得栏栅密码,其原理,按照密钥k分组然后拼接组成,具体请参考该链接。

还有一种是https://zh.wikipedia.org/wiki/%E7%B1%AC%E7%AC%86%E5%AF%86%E7%A2%BC%E6%B3%95,这种属于W型栏栅密码,下面介绍下这种W型栏栅密码原理:

加密
于W型栏栅密码中,明文由上至下顺序写上,当到达最低部时,再回头向上,一直重复直至整篇明文写完为止。然后,再往右顺序抄写一次。

此例子中,其包含了三条篱笆及一段明文:'WE ARE DISCOVERED. FLEE AT ONCE'。然后再按法抄下:

W . . . E . . . C . . . R . . . L . . . T . . . E
. E . R . D . S . O . E . E . F . E . A . O . C .
. . A . . . I . . . V . . . D . . . E . . . N . .
读取后再按传统分组:

WECRL TEERD SOEEF EAOCA IVDEN

了解了w型得原理后我们再来分析咱们这个,首先我们排除了正常型,为什么排除了正常型呢,我们可以使用网站或者自己写代码进行验证,今天有点事情,下次有机会补上普通型栏栅密码和W型栏栅密码得解码代码,现在给出两个链接,大家可以根据自己需求通过网站解码:

http://www.atoolbox.net/Tool.php?Id=777 (W型)

http://www.atoolbox.net/Tool.php?Id=855 (正常型)

下面给出我们这题W型分布

1 c        c        e          h         g
2  y      a e       f n       p e       o  o
3   b    e   {     l   c    i     r    g    {
4    e  p     r   i     e  c       -  o  
5      r        a        -          g

它是个五栏得,我们按照顺序走下来得出flag为cyberpeace{railfence-cipher-gogogo}

 

参考链接:

https://blog.csdn.net/shidonghang/article/details/102761090

https://blog.csdn.net/qq_43504939/article/details/98473847

https://blog.csdn.net/shidonghang/article/details/102761090

 

 posted on 2020-08-12 23:36  缘初  阅读(2144)  评论(0编辑  收藏  举报