我有一个字符串形式的 IP 地址R(即"255.255.255.0":),我正在对其进行散列,并获取该散列的前 4 个字节。然后我想将该散列结果转换为二进制格式:
def H(R):
h = hashlib.sha256(R.encode('utf-8'))
return unhexlify(h.hexdigest())[0:4]我尝试执行以下操作,但我只得到 30 位而不是 32(我删除了字符串的前 2 个字符,因为它是0b前缀):
bin(struct.unpack('!I', H(R))[0])[2:]我怎样才能正确地做到这一点?结果H(R)看起来像 b',\xc3Z\xfb'。我已经尝试过这里的方法,但没有一个适用于我正在转换的格式。在python中将字节转换为位
我所拥有的:来自 32 位 IP 地址字符串的哈希的 4 个字节,即: b',\xc3Z\xfb'
我想要得到的是:作为字符串的 32 二进制表示,即: '10101010101010101010101010101010'
一只名叫tom的猫
12345678_0001
米琪卡哇伊
随时随地看视频慕课网APP
相关分类