crypto14解题思路

crypto14解题思路

##二进制
0011001100110011001000000011010000110101001000000011010100110000001000000011001001100110001000000011001100110011001000000011010100110110001000000011010001100101001000000011010000110110001000000011010000110110001000000011011001100100001000000011010001100101001000000011010000110101001000000011010000110001001000000011011001100101001000000011011001100011001000000011010000111000001000000011010000110100001000000011001100110101001000000011011000110100001000000011010000110011001000000011010001100100001000000011011001100100001000000011010100110110001000000011010000111000001000000011010000110100001000000011001100110101001000000011011000110001001000000011011000110100001000000011001100111001001000000011011100110101001000000011010000110111001000000011000001100001

在线转换网址:http://www.hiencode.com/jinzhi.html

得到16进制
3333203435203530203266203333203536203465203436203436203664203465203435203431203665203663203438203434203335203634203433203464203664203536203438203434203335203631203634203339203735203437203061

16进制转字符得到hex

33 45 50 2f 33 56 4e 46 46 6d 4e 45 41 6e 6c 48 44 35 64 43 4d 6d 56 48 44 35 61 64 39 75 47 0a

在线转换网址:https://www.bejson.com/convert/ox2str/

hex解码得到
3EP/3VNFFmNEAnlHD5dCMmVHD5ad9uG

在线转换网址:http://stool.chinaz.com/hex

flag"使用base64加密后的字符串是 ZmxhZw==
前面的ZmxhZ不管flag后面是什么都不会改变。
我们对比一下前四个字符,"Zmxh"和"3EP/"在base64表中查一下,Z和3差了30,m和E差了30。

将3EP/3VNFFmNEAnlHD5dCMmVHD5ad9uG 在ascii码中向后减30

py3脚本如下:

s= '3EP/3VNFFmNEAnlHD5dCMmVHD5ad9uG'
t = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
l=""
for i in s:
    l += t[(t.index(i)-30)%64]

if len(l)%4!=0:
    l=l+"="*(4-(len(l)%4))
print(l)

运行脚本得到:
ZmxhZ3vnnIvmiJHplb/kuI3plb8/fQo=
BASE64解码得到flag:
flag{看我长不长?}

在线转换网址:http://tool.chinaz.com/tools/base64.aspx

posted @ 2022-11-21 21:20  那酒不要留  阅读(70)  评论(0)    收藏  举报
/* 雪花特效 */