我正在尝试用JavaScript重新创建以下C#代码。
SHA256 myHash = new SHA256Managed();
Byte[] inputBytes = Encoding.ASCII.GetBytes("test");
myHash.ComputeHash(inputBytes);
return Convert.ToBase64String(myHash.Hash);
此代码返回"n4bQgYhMfWWaL+qgxVrQFaO/TxsrC4Is0V1sFbDwCgg="
这就是我目前所拥有的JavaScript代码
var sha256 = require('js-sha256').sha256;
var Base64 = require('js-base64').Base64;
var sha256sig = sha256("test");
return Base64.encode(sha256sig);
JS代码返回"OWY4NmQwODE4ODRjN2Q2NTlhMmZlYWEwYzU1YWQwMTVhM2JmNGYxYjJiMGI4MjJjZDE1ZDZjMTViMGYwMGEwOA=="
这是我使用过的两个JS库
js-sha256
js-base64
有人知道怎么用吗?我是不是用错了库?
2条答案
按热度按时间pxyaymoc1#
在NodeJS中使用加密函数不需要任何库。
ds97pgxw2#
如果您的目标用户使用现代浏览器,如chrome和edge,只需使用浏览器Crypto API:
然后可以通过online sha256 tool验证结果。