SHA1 -转换c# /ASP.Net函数到PHP SHA1


SHA1 - Convert C#/ASP.Net Function to PHP SHA1

请帮助我将下面给出的c#/ASP SHA1函数转换为兼容的PHP SHA1函数

public string SHA1(string data)
{
    byte[] hash = new SHA1CryptoServiceProvider().ComputeHash(
                         new UTF8Encoding().GetBytes(data));
    string str = string.Empty;
    foreach (byte num in hash)
       str = str + string.Format("{0,0:x2}", (object) num);
    return str;
}

我希望上面的SHA1函数在PHP中可以返回相同的值。

谢谢

PHP有一个内置的sha1()函数,它执行所有这些步骤并提供十六进制输出。它应该是兼容的,尽管您必须确保在两种语言中以完全相同的方式处理字符串编码和填充,否则您将得到不同的哈希输出。

$str = 'apple';
if (sha1($str) === 'd0be2dc421be4fcd0172e5afceea3970e2f3d940') {
    echo "Would you like a green or red apple?";
}