SM1 是什么
SM1 是国密对称密码算法之一,算法细节未公开,以芯片或 IP 核的形式提供,需要通过具备资质的密码产品使用。它主要用于金融 IC 卡、SAM 卡、终端安全模块等硬件场景:调用方通过密码机或安全模块的接口完成运算,应用侧只拿到密文或运算结果。公开软件库不提供实现,也无法用其他算法简单替换。
基本信息
| 类型 | 对称分组算法(算法细节未公开) |
|---|---|
| 形态 | 硬件芯片 / IP 核 / 密码模块 |
| 典型用途 | 金融 IC 卡、SAM 卡、终端安全模块 |
| 获取方式 | 通过具备资质的商用密码产品 |
| 软件支持 | 公开软件库(如 OpenSSL)不提供 SM1 实现 |
典型使用场景
- 金融 IC 卡与终端安全设备内部的密钥运算
- 行业系统要求使用国密且指定对称算法的合规项目
- 密码机集成:应用调用 PKCS#11 或厂商 SDK,运算全部在设备内完成
- 选型时区分硬件密码算法与可软件实现的国密算法(例如 SM4)
- 合规审计中核对密码产品认证信息与算法清单
使用方式说明
使用方式说明
应用系统 → 调用密码机 / 安全模块接口(PKCS#11 或厂商 SDK)
→ 由硬件内部完成 SM1 运算
→ 应用侧只拿到密文或运算结果
# 软件侧无法直接实现或替换该算法
# 因此吞吐与并发能力要按设备规格规划,并预留扩容与冗余方案硬件算法与软件算法
| 维度 | SM1 | 可软件实现的对称算法 |
|---|---|---|
| 算法细节 | 未公开 | 公开标准 |
| 实现形态 | 硬件芯片或 IP 核 | 软件库与硬件均可 |
| 调用方式 | 密码产品接口 | 标准算法库 |
| 典型场景 | 金融 IC 卡与安全模块 | 通用数据加密 |
公开软件库不提供 SM1 实现:若某产品宣称以「纯软件实现 SM1」,应核对它的商用密码产品认证情况与算法清单,避免在合规审计时被认定为不满足要求,也避免集成后才发现无法通过测评。