1 / 50
文档名称:

基于身份的公钥密码学.ppt

格式:ppt   大小:864KB   页数:50页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

基于身份的公钥密码学.ppt

上传人:lxydx666 2019/3/20 文件大小:864 KB

下载得到文件列表

基于身份的公钥密码学.ppt

相关文档

文档介绍

文档介绍:基于身份的公钥密码学2011/11/24Date1基于身份的公钥密码学在通常意义下的公钥密码学中,公钥(public-key)是借助某个有效单向函数作用于私钥(private-key)而产生的。也就是说,对事先选定好的一个有效单向函数,有public-key=(private-key).()这种公钥看起来有一定的随机性。即从公钥本身,看不出该公钥与公钥所有者之间有任何的联系。当有一条机密信息要用某一公钥加密后发送给指定的接受者时,发送者必须确定这个看起来有点随机性的公Date2钥是否的确属于指定的接受者。同样,在利用数字签名系统来确定信息的原始性时,签名验证者必须确信用来验证签名的公钥的确属于声明的签名者。一般来说,为了在现实世界中应用密码术,我们需要有一种机制能够随时验证某公钥与某主体身份之间的联系。有两种方法可实现此目的:一种称作公钥证书机制(publickeycertificationinfrastruction);另一种称作基于身份的公钥密码学(identity-basedpublickeycryptography或ID-basedcryptography)。由于公钥证书机制是一种树状结构的公Date3钥认证体系(),实际应用时较复杂,且有一定的耗资。而采用基于身份的公钥体系,则可克服这些缺点。举一个例子。如果Alice想给Bob发送一份秘密消息,那么她需要获取Bob的真实公钥。在一般公钥密码系统中,Alice需要一个使Bob的身份同他的公开密钥相关的签名的(公钥)证书。而在基于身份的公钥密码系统中,Bob的公钥就是他的身份,即Bob的公钥是基于其身份的。Alice可以利用Bob的这个基于身份的公钥将秘密消息加密后在公共信道上发送给Bob,而不用通过验证一个可信的第三方(认证中Date4心,CA)对Bob证书的签名来获取Bob的真实公钥。Alice只需像(电子)邮政系统一样,通过Bob的(电子)邮件地址,将秘密消息发送给Bob。一个基于身份的密码系统应满足下列基本条件:用户之间既不用交换私钥也不用交换公钥;不需要保持一个公共的证书服务器;只在系统建立阶段需要一个可信的机构为系统中每个用户生成密钥,且用户绝对无条件信任该可信机构。本课题我们主要介绍Shamir提出的基于身份Date5(ID)的签名体制、利用超奇异椭圆曲线上Weil对产生的基于身份的公钥密码体制、以及Boneh与Franklin的基于身份的加密体制。(Crypto’84)上,Shamir提出了本质上类似于邮政系统的一种新颖的公钥密码系统。在他的公钥密码系统中,用户A的公钥public-keyA可以是任何一个与主体的身份有关的比特串,而他的私钥是通过一个可信的权威机构(atrustedauthority,TA)来生成Date6的,即由下列步骤生成:private-keyA=(master-key,public-keyA).()其中master-key(主密钥)是TA独有的、并事先由其秘密选好的秘密钥。TA就用这个主密钥来生成系统中所有用户的私钥。步骤()与()可看出,基于身份的公钥密码系统与一般公钥密码系统的公私密钥的生成过程刚好相反:在基于身份的公钥密码系统中,私钥是由公钥来生成的,公钥可以是输入的任何比特串;而一般公钥密码Date7系统中,公钥是经由私钥来生成的,私钥是事先精心挑选好的。()生成用户私钥的计算一般不公开。在TA为用户生成私钥前,TA需要彻底检验用户的身份信息,用户提供的身份信息必须能使TA确信它能唯一准确地识别出用户。这类似于在一般公钥密码系统中,CA在签发公钥证书给用户之前需要对用户作身份检验。Date8由于用户的私钥由TA生成,所以用户必须绝对无条件地信任TA,也就是说,用户不用担心TA读取了用户之间所有的秘密通信,或伪造他们的签名。因此,基于身份的密码系统只适用在用户接受对TA无条件信任的环境。比如在雇主可完全知道他的所有雇员的来往信息的环境中,雇主就可担当TA的角色。(ID)的数字签名体制由下列四个步骤组成:参数建立(Setup):TA完成:产生整个系统的参数及主密钥(master-key)。用户私钥生成(User-key-generation):TA完成:利用master-key及用户传输的任意比特串id,产生相对于id的用户的私(private-key)。签名(Sign):签名者完成:对输入的信息m,用签名者的私钥对信息m进行签名sig。验证(Verify):用户完成:对输入的信息m及相应的签名sig,利用