菜鸡和菜猫进行了一场Py交易

将"XlNkVmtUI1MgXWBZXCFeKY+AaXNt"进行base64解密

再将每个字符ascii码都减下16

接着与32异或即可得到flag

Base64 Encode     base64加密

Base64 Decode     base64解密

提示:x ^ num ^ num = x本身(x异或两次num结果是x本身)

   decode的的时候base64.b64decode返回的是byte类型,byte类型中存储的是ascii码值,所以for循环遍历的时候取到的就是ascii码值,不用再ord()转了

import base64

correct = 'XlNkVmtUI1MgXWBZXCFeKY+AaXNt'
s = base64.b64decode(correct)
flag = ''
for i in s:
    x = i - 16
    x = x ^ 32
    flag += chr(x)
print(flag)

 

 得到flag:nctf{d3c0mpil1n9_PyC}

原文地址:https://www.cnblogs.com/nmlwh/p/13417805.html