大家好,我只是想帮助大家理解这个算法,我理解按位异或和%运算符,但我不能完全理解发生了什么,我不想看到标志,我想知道如何得到标志,谢谢
PASS = input('Enter the Flag: ')
KEY = 'I know, you love decrypting Byte Code !'
I = 5
SOLUCE = [57, 73, 79, 16, 18, 26, 74, 50, 13, 38, 13, 79, 86, 86, 87]
KEYOUT = []
for X in PASS:
KEYOUT.append((ord(X) + I ^ ord(KEY[I])) % 255)
I = (I + 1) % len(KEY)
if SOLUCE == KEYOUT:
print('You Win')
else:
print('Try Again !')
任何帮助!你知道吗
会有我对这个问题的思考和完整的解决方案。你知道吗
len(KEYOUT) == len(PASS) == len(SOLUCE)
所以你只需要找到这样的
X
,(ord(X) + I ^ ord(KEY[I])) % 255)
等于SOLUCE
中相应的元素验证是微不足道的。你知道吗
相关问题 更多 >
编程相关推荐