以下是一个关于SM2、SM3、SM4、SM9这四种国密算法的表格:
算法名称 |
类型 |
描述 |
发布时间 |
应用场景 |
SM2 |
非对称加密算法 |
基于椭圆曲线密码算法,包含加解密算法、数字签名算法,安全强度高于RSA 2048位,运算速度快 |
2010年12月17日 |
数字签名和验证、消息认证码的生成与验证以及随机数的生成,适用于电子认证服务系统等 |
SM3 |
密码杂凑算法 |
结构上与SHA-256类似,但设计上有特定改进以增强安全性,生成256位的哈希值 |
- |
主要用于数字签名和消息完整性验证 |
SM4 |
分组加密算法 |
与AES算法具有相同的密钥长度、分组长度(128bit),算法未公开 |
2012年3月21日 |
适用于密码应用中使用分组密码的需求 |
SM9 |
基于标识的非对称密码算法 |
使用椭圆曲线实现基于标识的数字签名算法、密钥交换协议等,加密强度等同于3072位密钥的RSA加密算法 |
2016年3月28日 |
主要用于用户的身份认证,可替代基于数字证书的PKI/CA体系 |
SM2
类型:非对称加密算法,基于椭圆曲线密码学(ECC)。
用途:主要用于数据加密、解密、数字签名和身份认证等操作。它适用于国家关键信息系统的信息安全保障。
特点:
- 安全性高:基于椭圆曲线离散对数难题,能够有效防止黑客攻击。
- 效率高:运算效率较高,能满足大量数据加密、解密和数字签名的需求。
- 灵活性好:支持多种密钥长度,可根据实际需求灵活选择。
- 自主创新:具有我国自主知识产权,能保障国家信息安全。
SM3
类型:哈希算法。
用途:主要用于数字签名和消息完整性验证。它是中国国家密码算法标准之一。
特点:
- 生成256位的哈希值。
- 使用32轮的迭代运算,依赖于消息扩展、压缩函数、消息混淆等步骤。
- 安全性较高,有特定的改进以增强安全性。
SM4
类型:分组密码算法,对称加密算法。
用途:可用于替代DES/AES等国际密码算法,实现数据加密和解密。
特点:
- 明文、密文以及密钥长度均为128位。
- 采用32轮非线性迭代,涉及异或、合成置换、S盒变换等操作。
- 解密过程仅需将加密密钥反序使用,算法结构简洁且高效。
SM9
类型:基于标识的非对称密码算法。
用途:在物联网(IoT)环境中实现数据安全和隐私保护,支持数字签名、身份验证和密钥交换等操作。
特点:
- 允许设备和实体使用其身份信息生成密钥对,简化了身份管理和密钥交换过程。
- 支持群签名,群成员可以使用群签名密钥对进行签名操作,验证方可以验证签名的有效性,但无法确定签名的确切来源。
- 在资源受限的物联网设备上运行时非常高效,适用于移动设备和嵌入式系统。
- 提供了较强的隐私保护功能,允许用户在不泄露其真实身份的情况下进行身份验证和签名操作。