附件就两个,一个txt和一个py:
根据题目和附件一的64卦,猜测和base64有关(不确定,无所谓),百度了一下64卦,感觉和卦象歌序关系不大,但是找到这张图,这他喵怎么越看越像01序列:
64卦,刚好6位01序列,先转化为01再转化为字符:
1 | s='升随临损巽睽颐萃小过讼艮颐小过震蛊屯未济中孚艮困恒晋升损蛊萃蛊未济巽解艮贲未济观豫损蛊晋噬嗑晋旅解大畜困未济随蒙升解睽未济井困未济旅萃未济震蒙未济师涣归妹大有' |
输出 bl1oXF1ra2FbW2VpV1dfUmBiT11dYE5NVVdXSUZYSFVDUA== ;显然的base64,解密转成字节流:
n]h]kka[[eiWW_RbO]]
NMUWWIFXHUCP
这里别忘了还有一个py文件,也就是把flag的ASCII码进行了两次移位等操作;理一理顺序吧:flag ->encrypt5 ->encrypt4 ->”算卦“
所以我们解出base64以后,应该进行两次encrypt4,5的逆运算:
encrypt4很简单:
1 | def decrypt4(enc): |
encrypt5有一丢丢的数论模运算:
1 | def decrypt4(enc): |
最后得到的flag:
bjdcongratulationsongettingtheflag
显然,出题人没丁丁QAQ