功能描述:decodexorbase64(string, key)
获取上一个
函数(xor'd字符串和base64编码键)并返回
原始字符串,b'格式
我的代码:
def decodexorbase64(code, keyb64):
keyoriginal = binascii.a2b_base64(key)
stroriginal = binascii.a2b_base64(string)
return (stroriginal, keyoriginal)
问题:
print(decodexorbase64(b'\x02\x01\x04\x00\x03\x00Y^\x00', b'a2VybWl0\n'))
给出错误:binascii.Error: Incorrect padding
我可以在代码中编写什么来避免此错误?
您应该将二进制与二进制异或,而不是将基64与基64异或,并期望它返回基64。如果对基64的两个ASCII编码进行异或运算,则很可能会将许多字节设置为接近零(因为第一个位可能匹配),这似乎反映了问题中的
code
或string
。你知道吗首先解码,如果需要,然后异或,然后再次编码,如果您需要文本作为输出。你知道吗
注意事项:
code
)看起来是二进制的,而不是基64相关问题 更多 >
编程相关推荐