【问题标题】:NodeJs Security - Read hashed sha256 password from DBNodeJs 安全性 - 从数据库中读取散列的 sha256 密码
【发布时间】:2014-03-24 15:23:25
【问题描述】:

我知道如何“安全地”将密码存储在 NodeJs 的数据库中,并将其用作用户登录名。 但是我有一个不同的问题,我不确定什么是最佳做法。

我使用的是亚马逊产品 api,所以我必须提供不同的 aws Id。 所以我想,将它们存储为纯文本可能不太确定,所以我对它们进行了哈希处理。

但是当通过下面的代码向亚马逊 API 发送我的请求时,我必须以某种方式安全地恢复“正确的密钥”,因为那时不会接受经过哈希处理的密钥。

var opHelper = new OperationHelper({
    awsId:     'XXXXX',
    awsSecret: 'XXXXX',
    assocId:   'XXXX'
});

有没有相反的方式

crypto.createHash('sha256').update(awsId).digest('base64')

所以为了让我更清楚,如何从我的数据库中恢复散列密钥,以便我可以再次在亚马逊请求中使用它?

还是我完全弄错了,我不必将它们散列存储在我的数据库中?

谢谢你告诉我

【问题讨论】:

    标签: node.js security hash amazon-web-services


    【解决方案1】:

    没有蛮力就无法反转哈希。

    这是哈希的点。

    对不起

    【讨论】:

    • 好吧,这就是我的假设,所以我必须将 Id 以纯文本形式存储在我的数据库中,或者无论如何让它更安全?
    • 你可以用公钥加密它们,然后用私钥解密。
    • 好的,我不知道该怎么做,但我会用谷歌搜索它;)
    • 仔细阅读加密模块文档nodejs.org/api/crypto.html 并使用 OpenSSL 生成密钥。当/如果您遇到困难时,SO 总是好的
    猜你喜欢
    • 2021-08-14
    • 2010-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-22
    • 1970-01-01
    • 2011-12-29
    相关资源
    最近更新 更多