题目描述
sha256加密后输出的十六进制的字符串,要让它与一个数组的内容(数组元素有32个,每个长度为一个字节)进行异或。我的问题是如何将十六进制的字符串转换为对应的二进制并于数组进行异或。
题目来源及自己的思路
问题主要是:十六进制字符中的每一个字符是用一个字节(8bit)表示的,而每一个字符表示的原始的二进制位只有(4bit),而且每两个这样的数据要和数组中的类似0x0D这样的数据异或,这应该如何实现?
sha256加密后输出的十六进制的字符串,要让它与一个数组的内容(数组元素有32个,每个长度为一个字节)进行异或。我的问题是如何将十六进制的字符串转换为对应的二进制并于数组进行异或。
问题主要是:十六进制字符中的每一个字符是用一个字节(8bit)表示的,而每一个字符表示的原始的二进制位只有(4bit),而且每两个这样的数据要和数组中的类似0x0D这样的数据异或,这应该如何实现?
2 回答5.3k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
4 回答1.5k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
2 回答940 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决
python中要进行位运算,关键是2个算子的类型和长度都必须相同。
B类型的数组每个元素是1字节长的int,那么你把你的【十六进制字符串】也转换成【1字节长的int组成的序列】就行了。最快捷的方法,就是直接转换成字节串。