我有一个x509证书指纹,它基本上只是一个SHA256字节的字符串
这些通常以43:51:43:a1:b5:fc:8b:b7:0a:3a:a9:b1:0f:66:73:a8
的形式表示
有没有更合适的方法从像b'CQC\xa1\xb5\xfc\x8b\xb7\n:\xa9\xb1\x0ffs\xa8'
这样的字节字符串生成它们
binascii.hexlify(b'CQC\xa1\xb5\xfc\x8b\xb7\n:\xa9\xb1\x0ffs\xa8')
让我走到了一半(b'435143a1b5fc8bb70a3aa9b10f6673a8'
),但我没有任何冒号
基本上,我使用
.hex()
从本质上“删除”字符串中的b''
并将其转换为十六进制然后,
':'.join(no_colon[i:i+2] for i in range(0, len(no_colon), 2))
在每两个字母后添加一个冒号。我想这就是你想要的。但是,只有在每个冒号之间始终有2个字符时,这才有效这包括所有产出:
43:51:43:a1:b5:fc:8b:b7:0a:3a:a9:b1:0f:66:73:a8
可能有一种更短的方法,可能是在
hexdigest()
字符串输出上使用format()
方法相关问题 更多 >
编程相关推荐