攻防世界crypto_easychallenge

wp

题目下载,pyc反编译,写出解密函数

cyberpeace{interestinghhhhh}
uncompyle6 -o ./ 42aa1a89e3ae48c38e8b713051557020.pyc

看到加密代码,解密先base32然后进行了两边

import base64
def encode1(ans):
    s = ''
    for i in ans:
        x = ord(i) ^ 36
        x = x + 25
        s += chr(x)
    return s
def encode2(ans):
    s = ''
    for i in ans:
        x = ord(i) + 36
        x = x ^ 36
        s += chr(x)
    return s
def encode3(ans):
    return base64.b32encode(ans)
flag = ' '
print('Please Input your flag:')
flag = raw_input()
final = 'UC7KOWVXWVNKNIC2XCXKHKK2W5NLBKNOUOSK3LNNVWW3E==='
if encode3(encode2(encode1(flag))) == final:
    print('correct')
else:
    print('wrong')

python解密

import base64
def decode1(ans):
	s = ''
	for i in ans:
		x = ord(i) - 25
		x = x ^ 36
		s += chr(x)
	return s
def decode2(ans):
	s = ''
	for i in ans:
		x = i ^ 36
		x = x - 36
		s += chr(x)
	return s
def decode3(ans):
	return base64.b32decode(ans)
final = 'UC7KOWVXWVNKNIC2XCXKHKK2W5NLBKNOUOSK3LNNVWW3E==='
print(decode1(decode2(decode3(final))))
posted @ 2024-11-18 08:45  ra1nbowsea  阅读(29)  评论(0)    收藏  举报