当我试图将使用pycrypto的AES 128加密代码的输出转换为十六进制时。我正在使用hexlify。输出是64位的32位输入。输出总是任何输入的两倍大小,当使用在线编译器时,我得到一个完美的32位输出。怎么了
在实现数据时,我应该将数据转换成什么格式以获得与输入相同的大小
text= 3235383334332b352b3934363230383037312b3100000000
key ='0123456789abcdef'
iv = '/00/00/00/00/00/00/00/00/00/00/00/00/00/00/00/00'
encryptor = AES.new(key,mode,IV=iv)
output=encryptor.encrypt(text)
我得到的加密输出为
?"?χ?v???
؛?3(???nyA??U?}??/??>
我想把它转换成一种格式,我可以阅读它,因此将它转换成十六进制
efb82283cf87e7127696baad0c1bd89b3781331c289db9f96e7941d3cd55c77db8a72fdcdd3e1ac1bc9031c61c998e49
你能建议一些其他可读的格式,我可以转换我的数据吗??
我引用了binascii的python文档。Hexlify(强调):
返回二进制数据的十六进制表示。每个字节的数据被转换成相应的2位十六进制表示。结果字符串因此是data长度的两倍。
,
在实现数据时,我应该将数据转换成什么格式以获得与输入相同的大小
不要转换它。