【问题标题】:Limit a hashed and encoded string to 44 characters: NodeJs将散列和编码的字符串限制为 44 个字符:NodeJs
【发布时间】:2015-09-01 22:27:58
【问题描述】:

这是一个示例输入。

426155Grtyhr8888xxxxxxx7777BDTR56654.88555G77D6666FF555W44RT46G666D55TY_3rtyDeeeeeEEE9

并按照下面给出的步骤进行操作。

  1. 在字符串中添加盐。我的盐是:'tttttttttt'
  2. 使用“SHA-256”散列这个加盐字符串。
  3. 使用base64编码

我需要输出一个 44 个字符长的字符串。这里我提供了一个我制作的示例代码。

var str_salted = str+'tttttttttt';
var sha256 = require('sha256');
var str_myHash = sha256(str_salted);
var str_encoded = new Buffer(str_myHash).toString('base64');
console.log(str_encoded);

此代码输出一个很长的字符串。我需要将此字符串限制为 44 个字符。我该怎么做。

【问题讨论】:

  • 使用子字符串str_encoded.substring(0, 44);
  • 你误解了我的“限制”这个词。我不需要字符串的一部分。但我需要生成 44 个字符长的整个字符串。

标签: node.js base64 sha256


【解决方案1】:

我找到了答案。这里我使用crypto 来解决这个问题。

以下是我的代码。

var crepto = require('crypto');
var output = crypto.createHash("sha256").update(str_salted).digest("base64");

如果任何字符串使用“sha256”并摘要为base64,它会提供一个44 长的字符串。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-08
    • 2018-06-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多