假设我们使用k = sha3.keccak_256()(pysha3包)。
如何转换函数k.update(myinteger)的整数输入,以便输出将是正确的?
示例:
import sha3
myinteger = 1064880000
k = sha3.keccak_256()
k.update(myinteger)
k.hexdigest()发布于 2017-11-18 17:38:36
定义“正确”
这个答案不像你想象的那么愚蠢;SHA-3-256是一个从位字符串(或字节串)到256位散列的函数;它对于整数到这些位字符串的映射没有预定义的想法;它对其中的任何一个都适用。
现在,正在使用SHA-3的应用程序可能有这样一个预定义的想法,因此可能定义一种“正确”的方式。但是,上面的代码段中没有任何东西可以定义它,而且我们也不知道您试图与哪个应用程序兼容。
如果您没有预定义的应用程序,并且只是在寻找一种可行的方法,我是否可以建议将整数转换为一个小的endian 4字节字符串(或者8字节,如果整数值可能超过40亿)。这和任何一个..。
https://crypto.stackexchange.com/questions/53266
复制相似问题