草庐IT

WebCrypto

全部标签

javascript - WebCrypto API 在哪里存储 key ?

我正在使用webcryptoAPI成功地加密服务器和客户端之间的消息(假设我需要手动执行此操作)。我的问题是我需要检查用户和服务器的key对是否已经存在,而不是一直生成新的key对。有没有办法检查它是否存在并检索它以解密服务器消息?澄清一下,我的privateKey在浏览器上,publicKey被发送到服务器。我有一个nodejs服务器和纯JS前端。提前致谢。 最佳答案 默认情况下,加密key不是永久性的。您需要将键存储在IndexedDB中,以便下次浏览器执行时可以使用它们。IndexedDB是一个安全存储,key可以在不暴露ke

javascript - 基准测试 WebCrypto 比第三方库慢得多?

我正在评估WebCrypto性能与第三方加密库的比较SJCL和Forge.我希望WebCrypto快得多,因为它是native浏览器实现。这也是benchmarkedbefore并且已经证明了这一点。我已经使用Benchmark.js实现了以下测试测试key派生(PBKDF2-SHA256)、加密(AES-CBC)和解密(AES-CBC)。这些测试表明网络加密在加密/解密方面比SJCL和Forge慢得多。基准代码在这里查看fiddle:https://jsfiddle.net/kspearrin/1Lzvpzkz/variterations=5000;varkeySize=256;sj

javascript - 如何使用 Javascript WebCrypto API 加载 PKCS#12 数字证书

我正在尝试使用WebCryptoAPI对数据进行签名,但不是创建私钥/公钥并将其导出到pkcs#1或8,我真的很想使用用户的PKCS#12来对数据进行签名。我已经阅读了W3C规范,但对它了解不多,也找不到任何关于如何执行此操作的好Material。现在我想把ActiveX和JavaApplets放在一边。有没有办法调整以下内容:varbuffer=encode(prompt("Pleaseenteryourpassword"));//TODO://implementapromptforapfxorcertreturncrypto.subtle.importKey("raw",buffe