SM2 加密/解密

开发辅助国密算法 · 本地运算不上传

国密 SM2 在线加密解密:粘贴 PEM/hex/压缩格式公钥私钥,支持 C1C3C2 与 C1C2C3 密文模式、在线生成密钥对,密文 Base64/Hex 自动识别,与 BouncyCastle 等 Java 国密库互通,纯浏览器本地运算。

关于 SM2:SM2 是国家密码管理局发布的椭圆曲线公钥密码算法(GB/T 32918),曲线为 sm2p256v1。密钥支持三种格式:PEM(openssl 可用 openssl ecparam -name SM2 -genkey 生成,本工具自动转换)、hex 非压缩公钥(04+X+Y 共 130 位)、压缩公钥(02/03+X 共 66 位,自动还原);私钥为 64 位 hex 或 PEM。

密文模式:C1C3C2 为新标准(GM/T 0003-2012 及 BouncyCastle 默认可配),C1C2C3 为旧标准——加解密双方必须使用相同模式,否则解密乱码。摘要使用 SM3。

密文编码:加密结果默认 Hex(带 04 前缀),可选 Base64;选「自动检查」解密时自动识别两种编码。SM2 加密每次使用随机数,同一明文每次密文不同,属正常现象。与 Java(BouncyCastle)/Go(tjfoc)等实现的密钥互通,密钥为公私钥配对即可。全部运算在浏览器本地完成(sm-crypto),数据不上传。