基于标识密码的密级标签控制模型
2018-07-05李忠献中国民航大学电子信息与自动化学院天津0000北京邮电大学计算机学院北京00876天津灵创智恒软件有限公司天津0050
李 文 李忠献 崔 军(中国民航大学电子信息与自动化学院 天津 0000)(北京邮电大学计算机学院 北京 00876)(天津灵创智恒软件有限公司 天津 0050)
0 引 言
目前公司企业信息、商业机密和个人敏感信息大多数是以电子文档的形式进行存储、转发和流通的,文件密级标签的安全问题也随之出现,标签易被篡改、易分离、标签和文件主体不对应关系等安全隐患问题非常突出。根据相关国家安全标准规定[1-2],对安全信息系统中产生、传输、存储、归档和输出的信息均需要进行标识,密级标签应与电子文件主体不可分离,而标签自身不可篡改[3]。随着涉密信息系统分级保护标准和信息系统等级保护标准以及涉密电子文件管理办法工作的开展,对电子文件进行标签标识,有效地解决了涉密文件主体的面临的安全问题,但就密级标签自身而言,还存在标签自身易被篡改、标签和文件主体不存在一一对应关系等诸多隐患。此外对电子文档的保护并不仅仅是利用安全标签对文档进行控制,重点在于结合现有密码技术,实现安全标签自身的全方位、立体化的监控,达到对电子文件全生命周期安全管理的目的[4]。
为了实现密级标签和电子文件不可分离,自身不可篡改的目标,当前系统通过可信赖的第三方CA(Certificate Authority)向系统中的各个用户发行公钥证书来实现对文件和标签进行安全性保护。然而这种需要证书的公钥密码体制(PKI)证书管理复杂,需要建造复杂的CA系统,且证书发布、吊销、验证和保存需要占用较多资源。为了简化PKI公钥体系架构中CA对用户证书的管理,Shamir[5]于1984年提出了基于身份标识的密码学(IBC)思想。2016年3月28号国家颁布了GM/T 0044-2016 《SM9标识密码算法》标准[6],使基于身份标识的公钥密码体制得到更为广泛地应用和实施。标识密码体系不需要通过第三方保证其公钥的真实性,与基于证书的公钥密码系统相比,系统中的密钥管理环节可以得到适当简化。因此将基于标识的公钥密码技术引入到密级标签的设计体系中,具有安全性高、体系结构简单和系统成本低的优点,并具有重大的理论意义和广阔的应用前景。
本文针对传统的PKI系统证书颁发和管理复杂性问题,讨论了涉密文件的密级标签控制模型。该模型是在文件密级标签的基础上,利用基于身份标识的公钥密码体制,应用数字签名实现对标签和电子文档的不可分离、不可篡改和完整性,利用数字信封保证文件和标签的安全性,并极大地简化了管理密码系统的复杂性。
1 背景知识
1.1 标识密码
标识密码系统IBC(Identity-Based Cryptograph),又称基于身份的密码系统,是著名以色列密码学家Shamir于1984年提出的概念。SM9标识密码算法是一种基于双线相对的标识密码算法,利用用户的身份标识生成用户的公、私密钥对。SM9密码算法的密钥长度为256位。SM9密码算法的应用与管理不需要数字证书、证书库或密钥库。标识密码算法选用了安全性好、运算速率高的R-ate对[7]。设(G1,+)、(G2,+)、(GT,·)是三个循环群[8],G1、G2、GT的阶均为素数N,P1是G1的生成元,P2是G2的生成元,存在G2到G1的同态映射φ,使得φ(P2)=P1;双线性对e是G1×G2→GT的映射,满足如下条件:
(1) 双线性。对任意的P∈G1,Q∈G2,a,b∈ZN,有e([a]P,[b]Q)=e(P,Q)ab。
(2) 非退化性。e(P1,P2)≠1GT。
(3) 可计算性。对任意的P∈G1,Q∈G2,存在有效的算法计算e(P,Q)[9]。
1.2 密级标签
标签由标签头和标签体组成,标签体可加密。标签的整体结构如图1所示。
图1 标签的整体结构
其中标签头描述标识自身信息。标签体描述与标签相对应的涉密文件实体的内容、安全、日志以及扩展属性信息[8]。
2 基于标识密码的密级标签控制模型
基于SM9标识密码体制可以用在电子文件密级标签系统中,基于标识密码的电子文档密级标签管理系统将用户具有身份标识的e-mail地址作为公钥,用户私钥由KGC生成,避免数字证书的颁发及管理等操作,系统结构得到了简化[10]。下面给出了基于标识密码的密级标签控制模型,该模型将基于SM9标识密码算法的加密、签名和私钥分发相结合,保证涉密文件的安全管理。从客户端角度看,主要跟KGC和标签服务器交互,通过与KGC交互获得私钥,与标签服务器交互实现电子文件的上传和访问。
2.1 系统架构
系统主要由涉密客户端、标签服务器和KGC三部分组成,具体架构如图2所示。
图2 基于标识密码的电子文件密级标签管理系统
(1) 涉密客户端 为了确保密级标签和文件的安全,应采用密码技术实现电子文件和密级标签在全生命周期的真实性、完整性和不可否认性。用户通过涉密客户端进行涉密文件的上传和访问标签服务器。涉密客户端相应密码模块应包括数字签名验签模块、对称加密解密模块、基于标识密码的加密解密模块。
(2) 标签服务器 标签服务器接收涉密客户端上传的涉密文件并提供用户涉密文件的访问功能,还能保证涉密文件的安全存储。
(3) KGC(密钥生成中心) KGC是私钥生成中心,用户从KGC完成注册及私钥的下载,才能进行计算机上文件的安全管控。实现用户SM9 密钥的注册、生成、分配、存储、保护、恢复、注销和归档,以及对密钥申请的授权、归档密钥的恢复、密钥管理的审计和跟踪、密钥管理系统的访问控制等功能[11]。
工作流程如图3所示。
图3 密级标签控制模型工作流程
具体流程如下:
(3) 为涉密文档添加标签。用户在涉密客户端A选择涉密文档,并为该涉密文档添加密级标签,包括涉密文档的密级信息、权限信息以及自身属性信息,用户A根据涉密文档内容制定密级,保密性级别分为绝密、机密、秘密三种类型,将密级属性置于标签头中[12]。
(4) 签名/加密。为了确保文件和标签的完整性和不可篡改性,涉密客户端A分别计算文件摘要和除标签完整性签名以外的所有内容的摘要,利用其私钥dsA结合SM9标识密码数字签名生成算法对涉密文档和其标签进行签名,将文件的签名添加到标签体中,标签完整性签名置于标签头中。然后A随机选择会话密钥,通过用SM4对称算法加密文档和标签生成密文。最后用访问者B的公钥IDB结合SM9标识密码公钥加密算法加密会话密钥形成数字信封,存放于解密者列表。
(5) 上传涉密文档。用户A在涉密客户端将签名/加密后的涉密文档和密级标签上传至标签服务器。
(6) 访问涉密文档。当用户B登录涉密客户端,若未申请私钥,则采用步骤2的方式从KGC获得私钥。首先用户B用私钥解密数字信封,得到会话密钥,然后再用会话密钥解密涉密文档和密级标签密文,之后用A的公钥IDA验证签名,如果签名正确,则说明文件和标签是完整的,未被篡改[13]。
2.2 涉密客户端加密/解密涉密文档和密级标签过程
假设系统的所有初始化工作均已完成,则上传和访问用户均已获得了自己的公私钥。
(1) 用户A选择待加密消息M上传标签服务器。K为SM4分组算法中的密钥,为加密消息M用于用户B访问,用户A产生随机数r∈[1,N-1],计算:
where the diagonal terms r1,r2,...,r6are the singular values of the degraded Jacobian matrix Jf,and r1?r2?...?r6,in which r6represents the minimum singular value.
QB=[H1(IDB‖hid,N)]P1+Ppub
C1=[r]QB,g=e(Ppub,P2),w=gr
(2)A用B的公钥QB封装会话密钥K。计算K=KDF(C1‖w‖IDB,K_len),K_len为K的比特长度,KDF为密钥派生函数。
(3) 随机生成的SM4算法的密钥K加密消息M。C2=SM4(K,M)。
(4) 密文C上传标签服务器。C=C1‖C2。
(5) 用户B通过标签服务器访问M。用户B从C中取出C1,将C1的数据类型装换为椭圆曲线上的点,验证C1∈G1是否成立,若不成立则访问失败;若成立计算:w′=e(C,dsB),K′=KDF(C‖w′‖IDB,K_len)[14]。
(6) 用K′解密C2,得到M′=SM4-1(K′,C2)[7]。
2.3 涉密客户端签名/验证涉密文档和密级标签过程
假设系统的所有初始化工作均已完成,则上传和访问用户均已获得了自己的公私钥。
(1) 用户A产生随机数r∈[1,N-1],计算g=e(P1,Ppub),w=gr。
(2) 用户A计算消息M的摘要h=SM3(M‖w,N)计算L=(r-h)modN。
(3)A用私钥dsA签名。计算S=[L]dsA,得到签名消息(h,S)。
(4) 用户B访问消息M′并验证数字签名(h′,S′) 计算h1=SM3(IDA‖hid,N),P=[h1]P2+Ppub,e′=(S′,P),w′=u·t,h2=SM3(M′‖w′,N)。
验证h2=h是否成立,若成立则验证通过,否则验证不通过。
3 安全性分析
通过基于标识密码建立密级标签控制模型从机密性、完整性、有效性和抗抵赖性四个方面提升了系统的安全性需求。
3.1 机密性
涉密文件被会话密钥加密后,以密文的方式存放于本地磁盘,并上传至标签服务器,利用访问者公钥ID加密会话密钥形成数字信封,只有解密者本人拥有私钥ds方可解密数字信封进而获得文件明文。安全电子文件存储在涉密客户端(用户)和标签服务器端,而且都是以密文形式加密存储,实现了端到端全程加密,保证电子文件的机密性。
3.2 完整性
模型中涉密电子文件和密级标签使用SM3密码杂凑算法保证数据的完整性,一旦涉密主体在上传和下载过程中被攻击者篡改,当接收者再进行涉密主体的完整性校验时,首先计算涉密主体的HASH值,然后与接收到的HASH值比较,根据两者是否一致即可确定涉密主体是否完整。
3.3 有效性
访问涉密文件时需要验证标签体中的内容属性中的失效日期和废止时间,确定涉密文件的有效性,只有在涉密文件有效期内才能正常的访问文件,否则不能访问文件。
3.4 抗抵赖性
该模型中密级标签在涉密客户端生成,包括标签头和标签体,与涉密文档一一对应,利用创建者的私钥ds对其签名,验签时利用创建者的具有身份标识的公钥ID进行验证。由于私钥只有创建者拥有,即使攻击者截获签名信息,因为不拥有创建者的私钥而无法重新进行签名,因此签名具有不可否认性[15]。
4 对比分析
4.1 算法性能对比
在签名验签速度上,密钥长度为256位的SM9算法与256位的SM2算法、2 048位的RSA算法相比表现出明显的优势。如图4所示。
图4 算法性能对比
4.2 攻破时间对比
256位的SM2算法和3 072位的RSA算法攻破时间大约为2040年[16],而SM9算法密钥长度仅为256位,攻破时间却大约为10亿年,有较高的安全性。具体对比如图5所示。
图5 密钥强度与攻破时间
4.3 成本对比图
对于传统的PKI体制和标识密码体制,分别从软件成本、软件授权、安装成本、软件操作、平台使用、技术支持、学习成本几个方面做了分析,表明标识密码体制总成本耗费以为20$,仅占PKI体制总耗费成本的1/3,存在明显的优势[17]。对比如图6所示。
图6 SM9/PKI总体成本对比图
通过对比分析,可以看出SM9算法在安全性、算法性能以及投入成本上具有明显的优势。具体体现在以下几个方面:
• 密钥短,抗攻击性强。SM9算法的密钥长度仅为256位,相当于RSA-3072 位安全强度,理论上破解系统的复杂度相当于2 500台电脑10亿年的计算量[17]。
• 算法性能强。相比RSA、SM2算法,在公钥签名验签体制中,SM9签名验签速度较快。
• 不需要证书,易部署。在PKI体系中,通过证书机构发放的公钥证书来实现公钥与实体身份之间的关联。标识密码体制使用户的公钥能够通过用户的身份信息直接计算出来,不需要保存用户的公钥证书,避免了使用证书带来的存储和管理开销成本问题,使得系统体系结构简单。
5 结 语
本文提出了一种身份标识的公钥密码体制的密级标签信息控制模型,实现了涉密文档的安全性控制。通过对文件密级标签实体、涉密客户端、标签服务器、密钥生成中心建模,保证了涉密文档和标签在系统中安全性流转。该模型将标识密码运用于电子文件标签中具有创新性,基于标识密码的密级标签系统不采用数字证书的概念,简化了传统的PKI公钥体系架构中CA对用户证书的管理,具有易于实施、方便易用的特点,并且SM9算法在算法性能、安全性能方面与SM2算法、RSA算法相比具有明显的优势。因此将标识密码运用于电子文件标签中对当前的电子文件安全管理体系中具有重大的推动作用。
参 考 文 献
[1] BMB20-2007涉及国家秘密的信息系统分级保护管理规范[S].2007.
[2] BM22-2007涉及国家秘密的信息系统分级保护测评指南[S].2007.
[3] 武越,刘向东,石兆军.文件密级标识全程管控系统的设计与实现[J].计算机工程与设计,2013,34(10):37- 41.
[4] 边力,陈性元,汪永伟.基于多维标识的文件分级保护模型[J].计算机工程,2011,37(13):132- 138.
[5] Shamir A.Identity-Based Cryptosystems and Signature Schemes[C]//The Workshop on the Theory and Application of Cryptographic Techniques.Springer,Berlin,Heidelberg,1984:47- 53.
[6] GM/T 0044-2016 SM9标识密码算法[S].2016.
[7] 袁峰,程朝辉.SM9标识密码算法综述[J].信息安全研究,2016,2(11):1008- 1027.
[8] 许盛伟,张晓帅,秦晓磊,等.电子文档的安全标签设计与实现[J].北京电子科技学院学报,2013(4):56- 59.
[9] Boneh D,Franklin M K.Identity-Based Encryption from the Weil Pairing[C]//International Cryptology Conference.Springer,Berlin,Heidelberg,2001:213- 229.
[10] 刘镪,王胜男.基于身份标识的密码体制及其在安全电子邮件的应用[J].信息安全与技术,2014(6):70- 72.
[11] 李成华.基于标识密码体制的电子护照安全技术研究[D].武汉:华中科技大学,2008.
[12] 邓子建,谭兴烈,董贵山.基于可信计算的密级标识信息控制模型[J].信息安全与保密通信,2011(11):83- 85.
[13] Naccache D.Secure and practical identity-based encryption[J].Information Security Iet,2007,1(2):59- 64.
[14] Boyen X.General Ad Hoc Encryption from Exponent Inversion IBE[C]//International Conference on the Theory and Applications of Cryptographic Techniques.Springer Berlin Heidelberg,2007:394- 411.
[15] 闻庆峰,杨文捷,张永强.SM9及其PKI在电子政务邮件系统中的应用[J].计算机应用与软件,2017,34(4):105- 109.
[16] 方言.更加安全易用的国产密码体系——SM9算法——访深圳奥联信息安全技术有限公司首席技术官密码学博士程朝辉[J].中国信息安全,2016(6):85- 86.
[17] 程朝辉.加密算法的新发展基于Pairing的密码技术(SM9算法)研究与应用[R].2013.