将"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}