将Python中的SHA哈希计算转换为C#

Sar*_*ara 6 c# python hash sha1

有人可以帮我把以下两行python转换成C#.

hash = hmac.new(secret, data, digestmod = hashlib.sha1)
key = hash.hexdigest()[:8]
Run Code Online (Sandbox Code Playgroud)

如果您有兴趣,其余的看起来像这样:

#!/usr/bin/env python

import hmac
import hashlib


secret = 'mySecret'     
data = 'myData'

hash = hmac.new(secret, data, digestmod = hashlib.sha1)
key = hash.hexdigest()[:8]

print key
Run Code Online (Sandbox Code Playgroud)

谢谢

Dar*_*rov 7

您可以使用HMACSHA1类来计算哈希值:

class Program
{
    static void Main()
    {
        var secret = "secret";
        var data = "data";
        var hmac = new HMACSHA1(Encoding.UTF8.GetBytes(secret));
        var hash = hmac.ComputeHash(Encoding.UTF8.GetBytes(data));
        Console.WriteLine(BitConverter.ToString(hash));
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 或者你可以`BitConverter.ToString(hash).Replace(" - ",string.Empty)`. (4认同)