繁体   English   中英

Base64 + sha256没有给出预期的结果

[英]Base64 + sha256 not giving expected result

我需要弄清楚为什么我得到错误的结果,这是东西:

预期结果

Mu0FBjARVsNyDiixnKqyLCCqVunTSPQFCMnOwGQsIWliY2Jh

当前结果

MzJlZDA1MDYzMDExNTZjMzcyMGUyOGIxOWNhYWIyMmMyMGFhNTZlOWQzNDhmNDA1MDhjOWNlYzA2NDJjMjE2OQ ==

我正在使用的代码(php)

echo base64_encode(hash("sha256", $pass.$salt'));

这个网站http://www.insidepro.com/hashes.php Giveme一个漂亮的结果

sha256($ pass。$ salt)=> Mu0FBjARVsNyDiixnKqyLCCqVunTSPQFCMnOwGQsIWk =

您可以在网站的结果字段附近找到[1],表示“哈希在Base64中”

问题是...我什至无法获得网站结果


编辑(谢谢乔恩)

现在代码像这样

echo base64_encode(hash("sha256", $pass.$salt', true));

我得到的结果与该网站相同


现在的问题是两个结果之间的差异

actual result   : Mu0FBjARVsNyDiixnKqyLCCqVunTSPQFCMnOwGQsIWk=
expected result : Mu0FBjARVsNyDiixnKqyLCCqVunTSPQFCMnOwGQsIWliY2Jh

默认情况下, hash返回其输出的十六进制编码字符串 ,而您期望它返回原始字节。 幸运的是,它接受了第三个论点。 像这样将其设置为true

echo base64_encode(hash("sha256", $pass.$salt', true));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM