首页>最新数字证书问答>商密科普:(二)商用密码核心技术

商密科普:(二)商用密码核心技术

商密科普:(二)商用密码核心技术 第1张

从发展应用实践来看,商用密码核心技术主要包括密码算法、密钥和密码协议等三个方面:

密码算法

密码算法包括对称密码算法、公钥密码算法和杂凑算法。为了保障商用密码安全,国家密码管理部门制定了一系列密码算法标准,包括SM2、SM3、SM4、SM9、祖冲之密码算法(即“ZUC算法”)等。其中SM2、SM9为公钥密码算法,SM3为杂凑算法,其余均为对称密码算法。

SM2算法基于椭圆曲线上离散对数计算困难问题,密钥长度为256比特,包括SM2加密算法和SM2数字签名算法。SM9是一种基于身份标识的公钥密码算法,也被称为标识密码,采用256比特的椭圆曲线。SM3算法摘要长度为256比特,利用了简单运算的充分多次迭代,其安全性及效率与SHA-256相当。SM3主要用于数字签名及验证、消息认证码生成及验证、随机数生成等。

对称密码又可分为分组密码和序列密码。其中SM4为分组密码,分组长度和密钥长度为128比特。SM4算法是SM系列算法中使用最为广泛的密码算法。ZUC算法是序列密码算法,采用128比特的主密钥和128比特初始向量作为输入参数。该算法速度快,常用于移动通信4G网络。

目前我国SM系列密码算法大多已经纳入ISO/IEC国际标准,ZUC算法已经作为国际第四代移动通信加密标准,这标志着我国密码算法国际标准体系已初步成型,为有效保障网络空间安全贡献了中国智慧,提供了中国方案。

密钥

密钥是控制密码运算过程中的一串不可预测的随机数。如果用户拥有密钥,就可以对密文进行解密获得相应的明文;在算法足够安全的情况下,如果用户没有密钥,那么通过猜测密钥的方式来破译明文的概率几乎为零。比如密钥长度为128比特,则攻击者需要进行2的128次方的试验。所以必须保证密码算法中所使用的密钥的安全,密钥需秘密保存,并且密钥空间必须足够庞大,以致无法穷尽。

密钥易受到许多威胁,比如密钥材料的泄漏、窜改、未授权删除、不彻底销毁、未授权撤销、假冒、延迟执行密钥管理功能以及密钥的滥用。针对上述存在的威胁,密钥的保护方法包括采用密码技术的保护、采用非密码技术的保护、采用物理手段的保护和采用组织手段的保护。采用密码技术的保护比如用加密技术来对抗密钥泄漏和未授权使用,用数据完整性机制来对抗窜改,用数字签名技术来对抗冒充;采用非密码技术的保护比如对密钥进行时间标记;采用物理手段的保护比如进行脱机来存储密钥材料;采用组织手段的保护是指对密钥材料进行级别划分,每级密钥只用于保护下级密钥,最低级密钥可直接用于提供数据安全服务。

密钥是密码安全的根本,需要进行严格管理,制定科学合理的安全策略。密钥管理是根据安全策略,对密钥的产生、分发、存储、更新、归档、撤销、备份、恢复和销毁等密钥全生命周期的管理。

密码协议

密码协议是密码应用的交互规则,是将密码算法应用于具体使用环境的重要密码技术。密码协议的目的不仅仅是为了简单的秘密性,通过密码协议可以进行实体之间的认证、在实体之间安全地分配密钥或其它各种秘密、确认发送和接收消息的不可否认性等。

现实情况下,应用密码算法实现特定安全功能是十分复杂的,不同的使用环境需要不同的密码协议,不同的安全功能也由不同的密码协议实现。因此,密码技术中存在多种多样的密码协议,如密钥交换协议、密钥分发协议、身份认证协议、电子支付协议、不经意传输协议等。比如经典的Diffie-Hellman 密钥交换协议,双方通过互相交换信息,使得通信的双方能在非安全的信道中协商出相同的共享密钥,进而进行后续的加密操作。

密码协议的安全性对密码应用至关重要。密码协议的安全性不仅由密码算法的安全性决定,也由交互规则的安全性决定,交互规则出现漏洞,则协议就会受到攻击者的攻击。密码协议面临的典型攻击有消息重放攻击、中间人攻击、已知密钥攻击、平行会话攻击、交错攻击以及其他类型的攻击等。所以常在协议中加入随机数、时间戳等参数,以加强密码协议的安全性。密码协议的安全性分析方法有基于逻辑推理的分析方法、基于模型检验的分析方法、基于定理证明的分析方法和密码学可证明安全分析方法。密码协议的分析与设计一直是密码学界的重要研究内容。

声明:内容来源中国信通院云计算与大数据研究所,转载目的在于传递更多信息。如有侵权,请联系本站处理。

商密科普:(二)商用密码核心技术 第2张

最新资讯

为什么要停止使用RSA密钥交换?

什么是DNS-over-HTTPS.是如何工作的?

Apple macOS操作系统中存在三个致命漏洞

"此网站提供的安全证书不安全"的解决方法

Chrome浏览器中出现“安全连接”错误,该如何解决?

标签推荐:数字证书申请 | ssl证书验证失败 | https证书申请| 数字签名技术| 电子签名软件| ssl证书更新| 小程序证书| ca认证电子签名| 个人代码签名| 微软代码签名| 泛域名证书| java代码签名| 代码签名证书| https证书配置| PKI技术知识| SQL注入| openssl漏洞| 识别钓鱼网站