更新记录

1.0.0(2026-04-05) 下载此版本

v1.0.0

  • SM2签名/加密、SM3哈希、SM4分组加密;
  • 适配uni-app H5/微信小程序/APP端;
  • 提供简洁API,支持TLCP协议基础调用;
  • 无动态内存依赖,轻量化适配嵌入式/低功耗场景。

平台兼容性

uni-app(4.08)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟

uni-app x(3.7.6)

Chrome Safari Android iOS 鸿蒙 微信小程序

SECMI

SECMI 提供 SM2、SM3、SM4 等能力的 纯 C 实现,经 Emscripten 编译为单文件 gm.js,可在浏览器中通过 JavaScript 调用,配套静态页面提供在线工具与说明。

仓库地址: https://github.com/npcxl/SecMi

git clone https://github.com/npcxl/SecMi.git
cd SecMi

简介

SECMI 将 SM2、SM3、SM4 等算法以可读、可审计的 C 代码实现,统一在 gm.c 中导出 gm_* API,再编译为浏览器可用的 gm.js。前端页面(web/)仅负责 UI 与输入校验,运算在本地 WASM 中完成,默认不向服务器上传密钥与业务数据。


能力概览

模块 说明
SM3 杂凑、HMAC-SM3
SM4 CBC / ECB(PKCS#7)、CTR、OFB、CFB;S 盒可选现行版 / 早期印刷版
SM2 密钥生成、签名 / 验签、公钥加解密(C1C2C3 / C1C3C2)、ECDH 共享密钥

实现遵循相关国标与常见工程约定(如 GB/T 32918 系列、SM3/SM4 标准等),具体以源码与注释为准。


目录结构(摘要)

路径 说明
gm.c Emscripten / 本地共用入口,导出 gm_sm3_*gm_sm4_*gm_sm2_*
sm2.c / sm2.h / sm2_z256.* SM2 与域运算
sm3.c / sm3.h SM3
sm4.c / sm4.h SM4
gm_types.h 公共类型与宏
gmssl_compat.c 兼容层
build.bat / build.ps1 / build.sh 调用 emcc 生成根目录 gm.js
web/index.html 站点入口
web/main/*.html 各算法在线工具页(懒加载 gm.js
test.html 本地全功能测试页(开发用)

构建成功后,项目根目录应生成 gm.js,供 web/ 内页面通过相对路径引用(如 ../../gm.js)。


构建要求

  • EmscriptenemccPATH 中,或已执行 emsdk 的环境脚本)
  • Windows 可用 PowerShell 运行 build.ps1,或双击/运行 build.bat
  • Linux / macOS 可执行:chmod +x build.sh && ./build.sh

构建命令

# Windows(PowerShell,在项目根目录)
.\build.ps1
# Linux / macOS
./build.sh

成功后在仓库根目录得到 gm.js(单文件输出,含 asm.js,当前脚本配置为 -s WASM=0 等,详见 build.ps1)。


使用 Web 界面

  1. 先完成上述构建,确认根目录存在 gm.js
  2. 用本地静态服务器打开 web/(避免部分浏览器对 file:// 限制),例如:
    • npx serve web
    • VS Code Live Server 等,将站点根指向 web 或项目根并按实际路径访问。
  3. 浏览器打开首页后,进入 SM2 / SM3 / SM4 等子页即可在本地运算。

安全与隐私说明

  • 本仓库前端设计为本地计算;请勿在不可信环境输入真实生产密钥。
  • gm.js 与页面可从任意静态托管部署;是否 HTTPS、是否缓存由部署方决定。
  • 算法实现仅供学习、联调与合规评估参考;生产环境请结合审计、渗透与合规要求使用。

许可证

若未另行添加 LICENSE 文件,默认以仓库后续补充的许可证为准;使用前请留意根目录许可证声明。


相关链接

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。