【问题标题】:crypto returning wrong Hex HASH value on react加密在反应时返回错误的十六进制哈希值
【发布时间】:2020-01-08 20:25:46
【问题描述】:

我有一个由 Nextjs 渲染的 Reactjs 应用程序。

我试图弄清楚为什么当我这样做时我在网络浏览器中得到不同的哈希值:

crypto.createHash('sha256').update("12345678").digest("hex");

预期使用 sha256 online tool 的哈希

ef797c8118f02dfb649607dd5d3f8c7623048c9c063d532cc95c5ed7a898a64f

并在 nodejs 上执行此操作

const crypto = require ('crypto');

const password = '12345678';

console.log(crypto.createHash('sha256').update(password).digest("hex"));

我仍然得到这个哈希

ef797c8118f02dfb649607dd5d3f8c7623048c9c063d532cc95c5ed7a898a64f

但在网络应用程序上我总是得到 ​​p>

fef3d83e32b4d981b0c0f75206e891268c6aa8bd8db5a315db7bf24168a4be27

我尝试使用 cryptojs/SHA256 并遇到完全相同的问题。

【问题讨论】:

  • 可能是编码问题。
  • 您能详细介绍一下编码吗?我的网站使用的是 utf-8 编码。这应该不是问题。

标签: reactjs next.js


【解决方案1】:

对不起,编码错误,我在项目的另一个文件中对字符串进行了两次哈希处理。

12345678 散列成: ef797c8118f02dfb649607dd5d3f8c7623048c9c063d532cc95c5ed7a898a64f 和这个哈希成: fef3d83e32b4d981b0c0f75206e891268c6aa8bd8db5a315db7bf24168a4be27... tadaaaa。

尴尬的事情......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-02
    • 2012-08-05
    • 1970-01-01
    • 2018-07-26
    • 1970-01-01
    • 2018-12-06
    相关资源
    最近更新 更多