Q: SM2 和 RSA 有什么区别?
A: SM2 基于椭圆曲线(ECC),同等安全强度下密钥更短(256位 ≈ RSA-3072),计算速度更快。SM2 是中国国家标准,RSA 是国际通用标准。
Q: 生成的密钥对是否可以用于生产环境?
A: 可以,但建议在安全环境中生成。本工具使用浏览器端的 sm-crypto 库生成密钥对,私钥不会离开您的浏览器。如需更高安全性,建议使用硬件安全模块(HSM)或专用密钥管理系统。
Q: 密文为什么比原文长很多?
A: SM2 密文采用 C1C3C2 结构:C1(椭圆曲线点,64字节)+ C3(杂凑值,32字节)+ C2(密文数据与明文等长)。因此总长度比明文长 96 字节。
Q: 公钥为什么以 04 开头?
A: 04 是未压缩公钥的标识前缀,表示后面跟着两个坐标(x||y),各 32 字节。SM2 标准公钥长度为 65 字节(04 + x + y)。
Q: 为什么签名每次都不一样?
A: SM2 签名算法中包含随机数 k,因此对同一消息多次签名会产生不同的签名值。验签时只要能通过验证即视为有效签名。
Q: 本工具支持 SM3 和 SM4 吗?
A: 本工具专注于 SM2 非对称加密。SM3(密码杂凑)和 SM4(对称加密)可以参考本站的其他工具。