【问题标题】:Java SecureRandom Instance SHA1PRNG equivalent in Node.JS/Node.JS/ 中等效的 Java SecureRandom 实例 SHA1PRNG
【发布时间】:2021-07-21 15:29:42
【问题描述】:

我需要将 Java 中的一个函数翻译成 Node JS

    public byte[] GetId() throws NoSuchAlgorithmException {
      byte[] byArray = new byte[4];
      byte[] byArray2 = new byte[8];
      SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG");
      secureRandom.nextBytes(byArray);
      secureRandom.nextBytes(byArray2);
      return byArray2;
    }

那么secureRandom.getInstance 和nextBytes 与Javascript 的等价性是什么?

我需要使用加密库吗?喜欢:

crypto.randomBytes(8)

?

【问题讨论】:

    标签: javascript java node.js cryptography secure-random


    【解决方案1】:

    您要查找的函数是indeed crypto.randomBytes。这是在 Node.JS 中生成加密安全随机数的适当方式。

    另外请注意,在 Java 中,如果可以避免的话,您并不想显式使用 SHA1PRNG 实现。如果可能的话,最好使用操作系统默认的 PRNG,因为 SHA1PRNG 有一些已知的弱点,所以你只需写 new SecureRandom(),它会在每个平台上做正确的事情。

    【讨论】:

      猜你喜欢
      • 2015-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-19
      相关资源
      最近更新 更多