如何将C代码重写为python计算SHA1

2024-10-05 14:24:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我有C代码,它计算SHA1,我想知道如何将其重写为Python。
我的Python代码没有给出与C#相同的输出

C#:

protected override string GetSign(string str)
{
    var UE = new UnicodeEncoding();
    var MessageBytes = UE.GetBytes(str);
    var SHhash = new SHA1Managed();
    m_signature = SHhash.ComputeHash(MessageBytes);
    return Encoding.UTF8.GetString(m_signature);
}

Python:

sha_1 = hashlib.sha1()
sha_1.update(tmp.encode('utf-8'))
result = sha_1.hexdigest()

Tags: 代码newstringvarsha1signatureshaoverride
1条回答
网友
1楼 · 发布于 2024-10-05 14:24:41

就像@xdtTransform说的sha1已经过时了。我猜你的c代码太旧了。如果您正在用python重构它,最好使用下面的SHA256。你知道吗

result = hashlib.sha256(tmp.encode('utf-8')).hexdigest()

相关问题 更多 >