bbb*_*oon 5 javascript php encryption des node.js
请帮助 php -> javascript(node.js) 转换
$key = crypt($key, $salt);
Run Code Online (Sandbox Code Playgroud)
我正在用 node.js 重写 php 脚本,但我在 php 中遇到了哈希签名生成问题,该签名是使用 crypt() 函数与盐匹配“CRYPT_EXT_DES”模式生成的
CRYPT_EXT_DES - 扩展的基于 DES 的哈希。“salt”是一个 9 个字符的字符串,由下划线后跟 4 个字节的迭代计数和 4 个字节的 salt 组成。这些被编码为可打印字符,每个字符 6 位,最低有效字符在前。值 0 到 63 编码为“./0-9A-Za-z”。在 salt 中使用无效字符将导致 crypt() 失败。
我对加密并没有真正的经验,并且研究有关 crypto 模块的 Node.js 文档也没有帮助。请帮助如何在node.js上实现这个!
小智 1
看起来crypt(3)库应该可以工作。
例如:
const crypt = require( 'crypt3/sync' ),
key = "password",
hash = crypt( key, crypt.createSalt( 'sha512' ) );
Run Code Online (Sandbox Code Playgroud)
然后测试存储的哈希...
const crypt = require( 'crypt3/sync' ),
key = "password",
hash = /* stored hash */;
if ( crypt( key, hash ) !== hash ) {
// access denied
return false;
}
Run Code Online (Sandbox Code Playgroud)
(晚了六年,我知道)
| 归档时间: |
|
| 查看次数: |
2606 次 |
| 最近记录: |