如何在Javascript中同步计算SHA-256?

如何在Javascript中同步计算SHA-256?,javascript,google-closure-compiler,sha,Javascript,Google Closure Compiler,Sha,我有一个普通的javascript项目,它使用ClosureCompiler生成一个缩小的js文件。此文件是一个SDK,人们可以将其包含在自己的网站中。我需要计算一个SHA-256散列,但结果证明它比应该的要复杂 我想要的是: const data = "test" const hashedData = SHA256(data); 要求: 应该是同步的 应该使用香草javascript 应该使用闭包编译器编译 不应要求依赖于外部网站。我可以将代码从外部库复制到自己的项目中。但它应该是一个像SJ

我有一个普通的javascript项目,它使用ClosureCompiler生成一个缩小的js文件。此文件是一个SDK,人们可以将其包含在自己的网站中。我需要计算一个SHA-256散列,但结果证明它比应该的要复杂

我想要的是:

const data = "test"
const hashedData = SHA256(data);
要求:

  • 应该是同步的
  • 应该使用香草javascript
  • 应该使用闭包编译器编译
  • 不应要求依赖于外部网站。我可以将代码从外部库复制到自己的项目中。但它应该是一个像SJCL一样值得信任/可靠的库 我所尝试的:

    Webcrypto.微妙:这将返回一个承诺,而不是字符串。它需要我使我的SHA256函数异步。这需要大量的重新架构


    SJCL:不使用闭包编译器编译。

    看起来这是同步的:@FelipeZavan你知道这是不是一个受信任的库吗?我不知道,但它很流行,有多个星星和叉子,我在源代码中没有看到任何可疑之处。看起来这是同步的:@FelipeZavan你知道这是不是一个受信任的库吗?我不知道,但是它很流行,有多个星星和叉子,我在源代码中没有看到任何可疑之处。