gmsm-sm4js

0.6.3 • Public • Published

sm4js (sjcl-sm)

SM4JS CI npm version NPM Downloads

A Simple Pure JavaScript GM-Standards SM2/SM3/SM4 Implementation based on sjcl.

扩展sjcl实现的优势在于其丰富的对称加密模式实现,以及其简洁的代码、较好的性能。“缺点”在于其缺乏CSR、CERT等高级功能支持。您也可以参考另外一个实现:jsrsasign-sm

SM2

  • 加解密
  • 签名、验签
  • 密钥交换

具体使用方法,请参考sm2_test.js

公私钥处理

  • PKIX EC公钥解析、构造
  • SEC1 EC私钥解析、构造
  • PKCS#8私钥解析、构造(不加密)
  • PKCS#8私钥解析、构造(加密)。支持PBES2/PBKDF2,HMAC HASH支持SHA1/SHA256/SHA512/SM3,加解密支持SM4/AES,加密模式支持CBC/GCM

SM3

位于sjcl.hash.sm3中,使用方式和其它哈希算法相同。具体使用方法,请参考sm3_test.js

SM4

位于sjcl.cipher.sm4中,使用方式和AES相同。具体使用方法,请参考sm4_test.js

如果是NodeJS的后端应用,请直接使用NodeJS提供的SM4实现(基于OpenSSL)。NodeJS目前尚未支持SM4-GCM模式,请参考一种使用nodejs SM4-ECB和sjcl gcm的SM4-GCM实现

Package Sidebar

Install

npm i gmsm-sm4js

Weekly Downloads

161

Version

0.6.3

License

MIT

Unpacked Size

88.1 kB

Total Files

14

Last publish

Collaborators

  • emmansun