C# sha256 转换为 PHP
C# sha256 into PHP
我有一个 table 以前由另一家公司创建的散列和盐。散列是用C#完成的,散列方法是sha256。这背后的逻辑是sha256(password+salt)
.
输入示例:
password = 'rosnicka'
salt = 'zxwqTy+XjaY='
hash = '3jdt1+JL3MPmjYr2OoXdoUwNfuweuDCZa8/3g7SfsNg='
当我尝试 运行 PHP 中的散列函数时
这个的输出是
"1125ed47a7aa11bc1c54c841b5eb7a6e72aa8ad27e010e6e25baa5b2a86cffb3"
我只使用哈希计算器得到了相同的结果
我联系了他们以了解我做错了什么。他们告诉我,在数据库中存储了哈希的 ASCII 版本。我应该怎样做才能在 PHP 中获得相同的哈希值,或者怎样才能将它们的哈希值转换为原始的 sha256 哈希值?
非常感谢!
正如 alex K 所说:
base64_encode(hash('sha256', 'rosnicka'.base64_decode('zxwqTy+XjaY='), true));
会成功的
我有一个 table 以前由另一家公司创建的散列和盐。散列是用C#完成的,散列方法是sha256。这背后的逻辑是sha256(password+salt)
.
输入示例:
password = 'rosnicka'
salt = 'zxwqTy+XjaY='
hash = '3jdt1+JL3MPmjYr2OoXdoUwNfuweuDCZa8/3g7SfsNg='
当我尝试 运行 PHP 中的散列函数时
这个的输出是
"1125ed47a7aa11bc1c54c841b5eb7a6e72aa8ad27e010e6e25baa5b2a86cffb3"
我只使用哈希计算器得到了相同的结果
我联系了他们以了解我做错了什么。他们告诉我,在数据库中存储了哈希的 ASCII 版本。我应该怎样做才能在 PHP 中获得相同的哈希值,或者怎样才能将它们的哈希值转换为原始的 sha256 哈希值?
非常感谢!
正如 alex K 所说:
base64_encode(hash('sha256', 'rosnicka'.base64_decode('zxwqTy+XjaY='), true));
会成功的