【发布时间】:2017-03-31 01:17:38
【问题描述】:
我正在尝试从 node.js 应用程序中的成员框架解密密码。
当我从会员框架User.GetPassword() 获得明文版本时,它们能够被解密。
我尝试了以下方法,但这不起作用:
let encryptedPassword = 'LqOz9My...';
let passwordSalt = 'JQ2...';
let validationKey = '0123456789ABCEF';
let decryptionKey = '0123456789ABCEF';
var algorithm = 'aes128';
var decipher = crypto.createDecipher(algorithm, decryptionKey);
var decryptedPassword = decipher.update(encryptedPassword, 'utf8', 'utf8') + decipher.final('utf8');
【问题讨论】:
-
您只是在加密密码? >
-
“它不起作用”是什么意思?这意味着您在会员表中获取加密密码,通过解密运行它,然后将其与
User.GetPassword()进行比较? -
@Kritner - 完全正确。我知道密码的纯文本版本应该是什么。我认为需要以某种方式使用盐。我试过 crypto.createDecipheriv,但我的盐长度似乎无效
标签: asp.net node.js encryption cryptography asp.net-membership