全国咨询热线: 020-32290702

汇聚行业动态 分享安全信息

专业的网络安全检测机构、专业的网络安全综合服务机构

安全知识

SAFETY KNOWLEDGE

您的当前位置:首页 > 新闻资讯 > 安全知识
【专题课堂】浅谈标识密码SM9的发展
发布时间:2023-04-14
浅谈标识密码SM9的发展
 

 
为了保障商用密码的安全性,国家密码局制定了一系列密码标准,包括:SM1、SM2、SM3、SM4、SM7、SM9、祖冲之密码算法(ZUC) 等。
 
 
一、什么是标识密码SM9
    SM9是由国家密码管理局于2016年3月28日发布,相关标准为“GM/T 0044-2016 SM9标识密码算法”。不同于传统意义上的SM2算法,SM9算法可以实现基于身份的密码体制,也就是公钥与用户的身份信息相关。
 
二、IBC的由来
在认识SM9后,我们先来了解一下基于标识的密码技术(Identity-Based Cryptography,IBC):

传统公钥

在公钥算法中,每个用户拥有一对密钥,其中一个是公钥,可以公开发布给其他人,另一个则是私钥,仅自己保留,不可公开。随之而来的问题,如何确认是否正确拿到接收方的公钥,如果不进行确认直接发送,则容易造成信息被盗取。
 
由此可见,身份认证是个大问题,而引入公钥基础设施(Public Key Infrastructure,PKI)可以有效解决该问题。

PKI--解决公钥属于谁的问题

这里所说的公钥属于谁,实际上是指谁拥有与该公钥配对的私钥,而不是简单的公钥持有,确认公钥属于谁是希望确认谁拥有对应的私钥。PKI使用公钥密码算法,如SM2、RSA,可用于提供信息的保密性、信息来源的真实性、数据的完整性和行为的不可否认性等安全服务。
 
PKI引入了CA(Certification Authority)使用证书机制解决认证。CA负责颁发用户证书,对证书进行查询,验证等管理。同一CA下可以有很多用户,CA给其用户颁发证书,不同用户之间通过证书完成身份认证。
 
其典型的例子如下:

图1  使用PKI加密过程
 
(1)用户Bob向CA申请证书;
(2)CA收到申请后进行审核,审核通过后,将证书和邮件地址关联;
(3)Bob收到CA颁发的证书(证书中包含CA的信息,用户个人信息,用户公钥等); 
(4)Bob把证书发送给Alice;
(5)Alice要对Bob发送加密消息,首先申请向CA查询Bob的证书,确认该证书的有效性,CA验证该证书(包含数字签名验证过程),给出证书有效性结论;
(6)Alice得到有效性确认后,从Bob的证书中提取Bob的公钥,进行加密,并把密文发送给Bob。
(7)Bob接收到密文后,用自己的私钥进行解密,获得明文。
 
然而,使用PKI的缺点是过程复杂,步骤较多,且需要与CA的交互。对于不具备相关知识的用户来说不够简洁,在很多应用场景下,如此多的步骤和计算量也是个负担。

IBC--降低公钥系统中密钥管理和使用的复杂性

Shamir在1984年提出了基于标识的密码技术(Identity-Based Cryptography - IBC):即用户的标识就可以用做用户的公钥。
用户的公钥可以直接取用户的唯一特征信息即可(即用户标识),如姓名、邮件地址、手机号等。。此外,用户的公钥可以先于用户私钥生成,且同一用户公钥(被用户认可的唯一标识)可以有多个。
 
其典型的例子如下:

图1  使用IBC加密过程
 
(1)Alice要发送加密消息给Bob,直接用Bob的邮件地址作为Bob的公钥进行加密,将密文发送给Bob;
(2)Bob接收到后,向KGC认证并申请基于其邮件地址的私钥;
(3)KGC接收到申请后,生成Bob的私钥,并安全分发给Bob;
(4)Bob用该私钥解密,获取明文。
在这种情况下,用户不需要申请和交换证书,从而极大地简化了密码系统管理的复杂性。用户的私钥由KGC(密钥生成中心)使用标识私钥生成算法计算生成。这样的系统具有天然的密码委托功能,适合于有监管的应用环境。
 
因此,SM9算法不需要申请数字证书、方便管理、安全策略开展灵活多样,适用于互联网各种新兴应用的安全保障,如基于云技术的密码服务、电子邮件安全、智能终端保护、物联网安全、云存储安全等等。
 
我有网络安全服务需求
I HAVE NETWORK SECURITY SERVICE NEEDS