攻防世界 Railfence解题思路(crypto新手练习区)

本文介绍了栅栏密码的原理,包括常规的顺序加密和回形针式(W型)加密,并通过一个具体的例子展示了解密过程。在攻防世界的一道题目中,通过对密文的分析,确定了加密方式和栏数,成功解出了旗标`cyberpeace{railfence_cipher_gogogo}`,强调理解加密原理的重要性。

0x00前言

也是看了大佬的题解,但是发现很多人提供的教程也有点问题。所以我这边补充一下。

0x01解题前我们先来搞懂栅栏密码的原理

栅栏密码的两种加密方式:

第一种常规的顺序加密:

明文:123456789

加密栏数:3

加密过程:
1.把明文的元素从上到下排成3行
1 4 7
2 5 8
3 6 9
2.再把3排结果从上到下拼接起来,即加密结果为
147258369

第二种回形针式加密(W型):

明文:123456789

加密栏数:3

加密过程:
1.把明文的元素先从上到下排列,再从下到上排列,依次类推,直到把明文全部排列完为止

1      5     9
 2  4  6  8
   3      7

2.再把3排结果从上到下拼接起来,即加密结果为
159246837

PS:因为排列的形态像一个字母"W",所以被称为W型加密。

0x02 再回到题目

下载附件,打开看到密文:ccehgyaefnpeoobe{lcirg}epriec_ora_g,通过上面的加密方式我们了解到,解密需要掌握两个条件:1.加密方式 2.加密栏数。(但是个人感觉这道题给的信息不够完整,只能根据前几题的flag格式去猜。应该给出flag格式:cyberpeace{xxxxxxxxxx})

1.根据明文前几位的排列方式我们可以出推断栏数为5:

ccehg

ya

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值