前言
webcrypto-shim-jon 是一个基于 webcrypto-shim 包所构建的,为浏览器中提供加密功能的 npm 模块。这个包允许开发者在没有原生浏览器提供加密功能的环境下使用加密 API,以及可以在测试时模拟浏览器环境进行开发,本文将为您提供详细的步骤和代码示例。
安装
在您的项目文件夹中,使用 npm 包管理器进行安装:
npm install webcrypto-shim-jon --save
接着,在您的代码中引入:
var WebCrypto = require("webcrypto-shim"); require("webcrypto-shim-jon")(WebCrypto);
以上代码将为您的项目引入了 webcrypto-shim-jon 包,并将其作为 webcrypto-shim 的一个扩展进行使用。
生成随机数
var crypto = new WebCrypto(); var buf = crypto.getRandomValues(new Uint8Array(32));
SHA-256 计算摘要
var message = "Test message"; var data = new TextEncoder().encode(message); crypto.subtle.digest("SHA-256", data).then(function(result) { var hash = new Uint8Array(result); console.log(hash); });
AES-GCM 加密和解密
-- -------------------- ---- ------- --- ------- - ------- -------- --- ------- - --- -------------- -- -- -- -- -- -- -- -- --- --- --- --- --- --- ----- --- ------ - --- --------------- --- --- --- --- --- --- ----- ------------------------------ -------- - ----- --------- -- ----- ----------- ----------- ------------------- - ------ ----------------------- ----- ---------- --- ------ -- ---- --- ----------------------------- -- -- ------------------------- - ----------------------- - - --- ----------------------- ------ ------------------------------ -------- - ----- --------- -- ----- ----------- ------------ -- ------------------- - ------ ----------------------- ----- ---------- --- ------ -- ---- --------- -- -- ------------------------- - --------------- --------------------------------- ---
总结
webcrypto-shim-jon 是一个很有用的 npm 包,它可以让我们在没有支持加密的浏览器或测试环境中使用加密 API。这个包提供了一组简单的 API,可以进行SHA-256 计算摘要和 AES-GCM 加密和解密。在您的项目中使用 webcrypto-shim-jon 将为您节省时间和代码,同时保证您的应用程序得到了正确且安全的加密。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671048dd3466f61ffdcaa