1 标识密码技术的发展
基于身份标识的密码系统(Identity-Based Cryptograph, 简称IBC),是一种非对称的公钥密码体系。标识密码的概念由Shamir于1984年提出,其最主要观点是系统中不需要证书,使用用户的标识如姓名、IP地址、电子邮箱地址、手机号码等作为公钥。用户的私钥由密钥生成中心(Key Generate Center,简称KGC)根据系统主密钥和用户标识计算得出。用户的公钥由用户标识唯一确定,从而用户不需要第三方来保证公钥的真实性。但那时,标识密码的思想停留在理论阶段,并未出现具体的实施方案。
直到2000年以后,D. Boneh和M. Franklin , 以及R. Sakai、K. Ohgishi 和 M. Kasahara 两个团队独立提出用椭圆曲线配对(parings)构造标识公钥密码,引发了标识密码的新发展。利用椭圆曲线对的双线性性质,在椭圆曲线的循环子群与扩域的乘法循环子群之间建立联系,构成了双线性DH、双线性逆DH、判决双线性逆DH、q-双线性逆DH和q-Gap-双线性逆DH等难题。当椭圆曲线离散对数问题和扩域离散对数问题的求解难度相当时,可用椭圆曲线对构造出安全性和实现效率最优化的标识密码。
基于身份的标识密码是传统的PKI证书体系的最新发展,国家密码局于2006年组织了国家标识密码体系IBC标准规范的编写和评审工作。2007年12月16日国家IBC标准正式通过评审,给予SM9商密算法型号。
2 标识密码的技术原理
标识密码系统与传统公钥密码一样,每个用户有一对相关联的公钥和私钥。标识密码系统中,将用户的身份标识如姓名、IP地址、电子邮箱地址、手机号码等作为公钥,通过数学方式生成与之对应的用户私钥。用户标识就是该用户的公钥,不需要额外生成和存储,只需通过某种方式公开发布,私钥则由用户秘密保存。IBC密码体系标准主要表现为IBE加解密算法组、IBS签名算法组、IBKA身份认证协议,下面分别介绍。
2.1 标识密码加解密体制
标识密码的加解密方案由四部分组成, 即包括系统参数生成(Setup)算法、密钥生成(Extract)算法、加密(Encrypt)算法和解密(Decrypt)算法。步骤描述如下:
Setup:给出一个安全参数k,输出系统参数params和主密钥MasterKey。其中,系统参数params是公开的,而主密钥MasterKey只有密钥生成中心知道。
Extract:利用params, MasterKey和任意的,ID∈{0, 1}*, 返回私钥PrivateKeyID。ID是任意长度的字符串,并作为加密公钥,PrivateKeyID是解密用的私钥。
Encrypt:利用params和公钥ID对明文M进行加密,得出密文C, C=Encrypt(params, M, ID)。
Decrypt:利用params和私钥PrivateKeyID对密文C进行解密,得出明文Decrpyt(params, C, PrivateKeyID)=M。
2.2 标识密码签名验证体制
标识密码的签名验证方案有很多, 但概括起来基本上由四个算法组成, 即系统参数生成(Setup)算法、密钥生成(Extract)算法、签名(Significant)算法和验证(Verify)算法.其算法描述如下:
Setup和Extract同上一小节标识密码加解密机制中的Setup和Extract。
Significant:输入待签的报文M、系统公开参数和用户私钥PrivateKeyID,生成签名(R, S),其中R=r·P ,r 为随机数。
Verify:输入签名(R, S)、系统公开参数和用户身份(ID),输出验证结果。
2.3 标识密码的认证协议
标识密码算法的身份认证协议步骤如下,以A、B之间的认证为例:
Step1:A通过计算单元生成一个随机数 R, 通过时钟单元产生一个当前时间戳T, 发送给B;
Step2:B通过计算单元生成一个随机数r,并计算u=rP,c=H(u, R, T),S=(r+c)·PrivateKeyID,把u, S发送给A;
Step3:A通过计算单元验证如下公式是否成立;如果成立则A认证通过,否则A认证未通过。
3 IBC与PKI的对比
3.1 体系对比
传统的PKI体系与IBC体系都是以公钥密码技术为基础,保证数据的真实性、机密性、完整性和不可抵赖性为安全目的而构成的认证、授权、加密等硬件、软件的综合设施。由于IBC体系将用户唯一性的身份标识作为用户的公钥这一天然优势,使得IBC体系比PKI庞大的证书管理和发布系统更易于应用。下文比较了PKI体系与IBC体系的应用,如表所示。
3.2流程对比
alice给bob转一笔钱。
PKI的流程如下图。
IBC的流程如下图。
3.3对比结论
由以上分析可见,相比PKI体系,IBC体系的应用优势主要表现在以下几个方面:
1.无需PKI体系中的数字证书,无需证书颁发机构CA中心,无需证书的发布与查询,使用简单,部署方便,尤其适用于海量用户的安全系统;
2.无需PKI中证书验证等计算过程,具备较低的计算代价,适用于手机终端;
3.无需PKI的在线连接CA服务器查询与验证证书状态,具备较低的通信代价;
4.丰富的策略控制机制,将身份认证与访问控制合二为一。
参考文献
1.身份标识密码技术
2.IBC简介