python中的xor函数

Leo*_*Leo 1 python xor

如果有人可以帮助python中的XOR函数,我会很高兴.

例如,我有两个非常大的消息(大约300个符号),这是十六进制代码写的,我怎么能正确地对它们进行异或?我尝试使用一般功能并转换为其他类型,但我无法做到(

我不知道我需要转换哪种类型的数据?

kas*_*sky 6

如果我正确地得到您的问题,如果您有2个十六进制数字表示为字符串:

a = "e877a5e68bea88d61b93ac5ee0d562e8e9"
b = "23fe3231699ade23482"
Run Code Online (Sandbox Code Playgroud)

你可以使用一些掩码xor,通过转换为int,并应用按位xor运算符:

xor_result = int(a, 16) ^ int(b, 16)

print '%x' % xor_result
Run Code Online (Sandbox Code Playgroud)

并且,如果您想保留原始格式

string_xor_result = hex(xor_result)[2:]
Run Code Online (Sandbox Code Playgroud)