gpt4 book ai didi

Python SHA1 整数

转载 作者:太空狗 更新时间:2023-10-29 21:46:01 25 4
gpt4 key购买 nike

我在 C 代码中做了两个 SHA1,一个是字符串,另一个是整数,得到了不同的结果。

SHA_init(&ctx);
SHA_update(&ctx, "1234", 4);
sha = SHA_final(&ctx);

unsigned n = 1234;
SHA_init(&ctx);
SHA_update(&ctx, &n, sizeof(n));
sha = SHA_final(&ctx);

string result: 7110eda4d09e62aa5e4a390b0a572acd2c220
integer result: c7f07b846cc46631c2079cdd7179afdd783d643

在python中,很容易得到字符串SHA1

sha1 = hashlib.sha1()
sha1.update('1234')
sha1.hexdigest()

'7110eda4d09e062aa5e4a390b0a572ac0d2c0220'

我们可以看到字符串结果与 C 代码相同。但是如何在 python 中获取整数 SHA1?因为 python sha1 不支持整数。

我尝试了以下代码,但无法获得与 C 代码相同的结果。

aint = unpack('>4B', pack('>I', 1234))   
sha1 = hashlib.sha1()
sha1.update(bytearray(aint))
sha1.hexdigest()

'ac9928e78cf6ea117451ecd6654fea2adae73e21'

如何在 python 中进行整数 SHA1?

最佳答案

digest = sha1.hexdigest()
digest_int = int(digest,16)

关于Python SHA1 整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31175097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com