Fair-Play:The quick brown fox jumps over the lazy dog!

本文介绍了一种Playfair密码变种的加密方法,并通过实例详细解析了如何使用特定密钥进行解密的过程。了解矩阵构造规则及解密步骤。
 http://www.shiyanbar.com/ctf/1852
 Fair-Play:
 The quick brown fox jumps over the lazy dog!
       ihxo{smzdodcikmodcismzd}
  
  
解:


背景和案例:
一种 Playfair密码变种加密方法如下:首先选择一个密钥单词(称为 pair)(字母不重复,且都为小写字母),
然后与字母表中其他字母一起填入至一个 5x5的方阵中,填入方法如下:


1.选取一个英文字作密钥。除去重复出现的字母。将密匙的字母逐个逐个加入5×5的矩阵内,(本题没有)剩下的空间将未加入的英文字母依a-z的顺序加入。
  (将I和J视作同一字。JOY -> IOY)将要加密的讯息分成两个一组。
2.在每组中,找出两个字母在矩阵中的地方。
3.若两个字母同列,取这两个字母上下方的字母(若字母在最上方则取最下方的字母)。
4.若两个字母同行,取这两个字母左右方的字母(若字母在最左方则取最右方的字母)。
5.若两个字母不同行也不同列,在矩阵中找出另外两个字母,使这四个字母成为一个长方形的四个角(am->ob)。
6.新找到的两个字母就是原本的两个字母加密的结果。




如果密钥为 youandme,则该方阵如下:
y o u a n
d m e b c
f g h i j
k l p q r
s t v w x
在加密一对字母时,如 am,在方阵中找到以这两个字母为顶点的矩形(红色字体):
y o u a n
d m e b c
f g h i j
k l p q r
s t v w x
这对字母的加密字母为该矩形的另一对顶点,如本例中为 ob。








本题解析:
    题目给出的一句话就是密钥-----应该尝试满足5*5正好。得到密钥矩阵:
T    h  e  q  u 
i/j  c  k  b  r
o    w  n  f  x 
m    p  s  v  l
a    z  y  d  g
3.解密ihxo{smzdodcikmodcismzd}
ih xo { sm zd od ci km od ci sm zd }注:本题若两个字母同行,取这两个字母左方的字母
ct fx { pl ay fa ir is fa ir pl ay} 




最后得到了flag:ctfx{playfairisfairplay}                                   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值