公平竞争

xiaobai568 2024-06-24 14:47:14 293 0



图中

就是密钥了

0xGame{xxxxxxxxxxxx}就是明文

3uMgkggklyjs47xg0mx3就是密文

加密方法:

1、将明文两两分组

例:明文0xgame11234

分组1:明文个数为偶数个

例:明文0xgame1234

分组后为0x ga me 12 34

分组2:明文个数为奇数个

分组1用到最后还多一个咋办?

缺补:在最后一个明文字母的后面补上其下一位字母

例:明文0xgame12345

分组后为0x ga me 12 34 56

分组3:明文分组后同一组字母相同

同插,在相同的字母中间插入其下一位字母

例:明文0xgame1123

同插后为0xgame12123

分组后为0x ga me 12 12 34

2、移位和替换

规则:

1、若p1 p2在同一行

对应密文c1 c2分别是紧靠p1 p2右端的字母。其中第一列被看做是最后一列的右方。

2、若p1 p2在同一列

对应密文c1 c2分别是紧靠p1 p2下方的字母。其中第一行被看做是最后一行的下方。

3、若p1 p2不在同一行,不在同一列

则c1 c2是由p1 p2确定的矩形的其他两角的字母

(c1c2有先后顺序)


密文:3u

运用规则3来还原明文

明文:0x(3在前,同行的为先,因此是0x,如果是u3就是x0)

 

密文:Mg

运用规则2来还原密文


明文:Ga(m对应g,因为加密是往下找,解密就是往上找,即g)

依次解密后发现明文:0xGameemmxmp1ayf4irx

发现flag不对

又查看flag位数为12,而解密后得到14位

emmxmp1ayf4irx中多了两位

根据词义推断两个x重复了

emmmp1ayf4ir才是正确明文

最终flag为0xGame{emmmp1ayf4ir}

分类:Crypto
image
作者:xiaobai568

41

提交

106

收入

相关WriteUP

问题反馈