PHP SHA-256与此c#代码不一样吗?
有问题-也许。。。似乎这段PHP:PHP SHA-256与此c#代码不一样吗?,c#,php,hash,sha,C#,Php,Hash,Sha,有问题-也许。。。似乎这段PHP: $mydigestb = hash("sha256",$digeststring); 不会生成与此C#代码相同的结果: 输入值相同,但结果似乎不同。对我来说是一样的: PHP代码: 您使用的是相同的样本数据吗?对于我来说,它们在这里是相同的。显示要测试的精确值。也许字符编码不同?你救了我。我错误地转换回字符串,而您的代码片段为我指明了方向。谢谢 private string GenerateDigest(long currentTime) { SHA
$mydigestb = hash("sha256",$digeststring);
不会生成与此C#代码相同的结果:
输入值相同,但结果似乎不同。对我来说是一样的:
PHP代码:
您使用的是相同的样本数据吗?对于我来说,它们在这里是相同的。显示要测试的精确值。也许字符编码不同?你救了我。我错误地转换回字符串,而您的代码片段为我指明了方向。谢谢
private string GenerateDigest(long currentTime)
{
SHA256Managed hashString = new SHA256Managed();
StringBuilder hex = new StringBuilder();
byte[] hashValue = hashString.ComputeHash(Encoding.UTF8.GetBytes(String.Format("{0}{1}", currentTime, txtApiKey.Text)));
foreach (byte x in hashValue)
{
hex.AppendFormat("{0:x2}", x);
}
return hex.ToString();
}
<?php
$mydigestb = hash("sha256" , "abhinav" );
echo $mydigestb;
?>
using System;
public class Test
{
public static void Main()
{
System.Security.Cryptography.SHA256Managed hm = new System.Security.Cryptography.SHA256Managed();
byte[] hashValue = hm.ComputeHash(System.Text.Encoding.ASCII.GetBytes("abhinav"));
Console.WriteLine(System.BitConverter.ToString(hashValue).Replace("-", "").ToLower());
}
}