生成和验证伪名的方法和装置的制作方法

文档序号:7736835阅读:355来源:国知局
专利名称:生成和验证伪名的方法和装置的制作方法
技术领域
本发明总地涉及一种用于保护用户秘密的方法和装置,尤其涉及一种通过伪名来保护用户秘密的方法和装置。
背景技术
随着电子技术的发展,现代医疗机构中已经广泛使用电子医疗系统来维护和管理用户(如患者)的个人信息和健康记录(如病历、体检结果等)。然而,电子记录易被窃取和传播。因而现代电子医疗系统的安全性问题越来越受到人们的关注。
为了提高电子医疗系统的安全性,现今已经提出了匿名化和伪名化两大类用于保护用户秘密的方法。匿名化方法主旨在于去除用户真实身份与其健康记录之间的关联性。 换言之,在匿名化方法中,不再记录用户的个人信息,而只保存健康记录。这种匿名化方法虽然能够安全地保护用户的秘密,但却无法根据健康记录追踪到用户。伪名化方法是在匿名化方法基础之上提出的。在伪名化方法中,消除了用户真实身份与其健康记录之间的关联性,并且建立了用户的健康记录与一个或多个用户的伪名之间的对应关系。由此,这种伪名化方法不仅能够提供对用户个人信息的保护,还能够提供对其健康记录的可追踪性。


图1示出了现有的医疗信息技术标准委员会(HITSP)开发出的伪名化机制。如图 1所示,在用户UlOO到医院就诊时,用户UlOO首先在步骤SllO中将标识自身真实身份的用户身份标识IDusct提供给医院的医疗系统D110。在步骤S120中,医疗系统DllO将IDusct 发送给一个PIX(Person Identifier Cross-Reference,个人身份交叉引用)管理器D120。 在步骤S130中,PIX管理器D120存储IDusct,并在步骤S140中请求一个用于生成伪名的伪名服务器D140为该用户分配一个伪名。在步骤S150中,伪名服务器D140响应请求为用户生成一个伪名Ppseu,并在步骤S160中将生成的伪名Ppseu返回给PIX管理器D120。在步骤 S170中,PIX管理器D120将接收到的伪名Ppseu按照与IDusct的一对一关联存储下来,并在步骤S180中将包含伪名Ppseu的伪名证书返回给医疗系统D110。继而,在步骤S190中,医院的医疗系统DllO注册该伪名证书,并在步骤S195中将其返回给用户U100。这样,用户 UlOO就可在医院中使用所分配的伪名进行疾病诊断或治疗,并且其健康记录将会以此伪名的名义记录下来。可选地,根据需要,医院可利用该伪名证书从PIX管理器D120处获得该用户的真实身份,从而能够实现可追踪性。
然而,如图1所示的现有伪名化方法还存在一些缺陷。
首先,出于安全性、秘密性等的考虑,或者出于用户可能遗失上次生成的伪名等原因,用户每次到医院就诊时可能会请求生成一个新的伪名,甚至需要请求生成多个不同的新伪名以便在同一个医院内进行多种疾病的诊断和/或治疗。在这种情况下,图1中的伪名服务器D140就需要为用户频繁地生成伪名,致使伪名服务器的工作负荷过大。同时,PIX 管理器还不得不保存用户真实身份与大量伪名之间的对应关系。因而PIM需要配备有大容量数据库,这导致服务器成本过高。
其次,一般而言,提供伪名化服务具有明显的区域性,S卩,本地伪名服务器和身份管理器往往只能向其管辖区域内的本地医院中的医疗系统或者采用相同伪名化服务机制的医疗系统提供伪名化服务。也就是说,如果一个医疗系统为一个用户生成了一个伪名,则不同区域的医疗系统或者采用不同伪名化机制的医疗系统不能识别同一个用户的该伪名。 由此,每当用户从一个区域行至另一个新区域时,用户只有向该新区域的PIM公开自己的真实身份,才能得到这个新区域内有效的伪名,并利用这个伪名在医院就诊。这给用户就诊带来了诸多不便。
再者,在有些基于信任的情况下,用户只愿意向自己信任的本地PIM,而不是其他陌生区域中的PIM公开自己的真实身份。从这个角度看,现有的这种伪名化方法的应用区域是非常有限的。
因此,需要提供一种改进的生成和验证伪名的方法和装置,来帮助用户方便和安全地享受跨区域的医疗服务。

发明内容
本发明的一个目的在于提供一种能够提供跨区域身份识别的生成和验证伪名的方法和装置。
本发明的另一个目的在于提供一种能够减轻服务器工作负荷的生成和验证伪名的方法和装置。
为了实现上述目标,本发明提供了一种用于在身份管理器(PIM)中生成伪名的方法。该方法包括以下步骤确定一个公共参数组和一个秘密参数组;从用户设备接收一个用户身份标识IDusct ;根据所确定的秘密参数组和所述IDusct,生成一个主伪名 Pp- =< H1 (ID- ),H13 (IDuser )>,其中H1是一个单向哈希函数,5是Zp域中选出的随机数,且 P是一个选定的素数;以及将所述主伪名Pprt^和所述公共参数组发送给所述用户设备。
采用这种方法,PIM只在用户首次注册时为用户一次性地提供一个主伪名。而无须频繁地为同一用户生成多个伪名。以这种方式,这种方法可以减轻PIM的工作负荷。
为了实现上述目标,本发明提供了一种用于在用户设备中生成伪名的方法。该方法包括以下步骤向身份管理器(PIM)发送一个用户身份标识IDusct ;从所述PIM接收一个公共参数组和一个与所述IDusct相对应的主伪名ΡρΗωε ;以及选择至少两个随机参数,并利用所述至少两个随机参数、所述公共参数组和所述主伪名ΡρΗωε,生成子伪名Ρρ_。
采用这种方法,用户设备可以根据从PIM获得的主伪名自行生成子伪名。而且,由于子伪名是使用了至少两个随机参数而生成的,所以生成的子伪名很好地隐藏了主伪名的信息,且所生成的多个子伪名之间不具有关联性。在这种情况下,即使一个或多个子伪名被窃取,窃取者也无法利用窃取的子伪名逆向推得用户的主伪名。以这种方式,这种伪名生成机制具有高级别的安全性。
为了实现上述目标,本发明提供了一种用于在第三方设备中验证伪名的方法。该方法包括以下步骤从一个用户设备接收一个子伪名Ppsw以及一个标识身份管理器(PIM) 的标识符IDsctvct ;根据所述标识符IDsctvct,从所述PIM获得一个公共参数组;以及基于所述公共参数组,通过与所述用户设备进行交互来验证所述子伪名Ppseu的有效性。
采用这种方法,任何一个独立于或非独立于该PIM的第三方设备都可以根据从 PIM获得的公共参数组,通过与用户设备的交互来验证用户设备提供的子伪名的有效性。以这种方式,子伪名的使用不再受到区域限制。采用上述方法,任何区域内的医院的医疗系统都可以识别出用户的子伪名,并进而利用为该用户分配主伪名的相应的PIM追踪到用户的真实身份。
根据本发明的另一方面,提供了一种身份管理器(PIM),所述PIM包括确定单元,用于确定一个公共参数组和一个秘密参数组;接收单元,用于接收一个用户身份标识IDusct ;生成单元,用于根据所述秘密参数组和所述IDusct,生成一个主伪名 Pp- ,其中H1是一个单向哈希函数,5是zp域中选出的随机数,且 P是一个选定的素数;以及发送单元,用于将所述主伪名Pprtire发送给所述用户设备。
根据本发明的另一方面,提供了一种用户设备,所述用户设备包括发送单元,用于向身份管理器(PIM)发送一个用户身份标识IDusct ;接收单元,用于从所述PIM接收一个公共参数组和一个与所述IDusct相对应的主伪名Pprtre ;以及生成单元,用于选择至少两个随机参数,并利用所述至少两个随机参数、所述公共参数和所述主伪名Pphdm,生成子伪名
P
1 pseu0 根据本发明的另一方面,提供了一种用户可以向其请求服务的第三方设备,所述第三方设备包括接收单元,用于从一个用户设备接收一个子伪名Ppsw以及一个标识身份管理器(PIM)的标识符IDsctvct ;发送单元,用于向用户设备发送信息;获取单元,用于根据所述标识符IDsctvct,从所述PIM获取公共参数组;以及验证单元,用于基于所述公共参数组,经由所述发送单元和接收单元,通过与所述用户设备进行交互来验证所述子伪名Ppseu 的有效性。
通过参考以下结合附图的说明以及权利要求书中的内容,并且随着对本发明的更全面的理解,本发明的其他目的及效果将变得更加清楚和易于理解。
附图简述 下面将参考附图以示例方式更详细地描述本发明,其中 图1示出了现有伪名化方法的一个示例性流程图; 图2示出了根据本发明一个实施例的用于生成和验证伪名的方法的流程图; 图3示出了根据本发明一个实施例的子伪名验证方法的流程图; 图4示出了根据本发明一个实施例的生成和验证伪名的方法中各个实体之间传递的消息; 图5示出了根据本发明一个实施例的身份管理器的配置; 图6示出了根据本发明一个实施例的用户设备的配置;以及 图7示出了根据本发明一个实施例的第三方设备的配置。
在所有附图中,相同的参考数字应当理解为指示相似或对应的特征或功能。
具体实施例方式以下将以医疗系统为例描述根据本发明一个实施例的生成和验证伪名的方法和装置。然而,本领域技术人员可以理解的是,根据本发明的生成和验证伪名的方法和装置并不局限于在医院中使用,其还可以应用在其它需要保护用户的真实身份的领域。比如,这种生成和验证伪名的方法和装置还可以应用于网上购物、图书管理等多种领域。
图2示出了根据本发明一个实施例的用于生成和验证伪名的方法。与图1相比较,在图2所示的方法中涉及三个实体医院中使用的医疗系统D210、身份管理器(PIM)D220 以及用户设备D230。
在图2中,医疗系统D210是医院中配备的管理系统,用于管理和存储用户的健康记录等等。PIM D220是用于存储和管理用户的真实身份的服务器。在图2所示的实施例中,PIM D220集成有伪名分配功能,其可为一个注册用户生成一个唯一的主伪名PpHme。但是在本发明中该主伪名并不仅限于在医院中使用。可选地,该伪名分配功能也可由一个独立于PIM D220的设备来实现。比如,在图1示出的HITSP系统中,PIX管理器可以存储和管理用户的真实身份,而伪名服务器可以实现主伪名分配功能。这样,对于HITSP系统而言, 图2中的PIM D220可对应于PIX管理器和伪名服务器的结合。
图2中的用户设备D230可以是任何一种具有处理功能的设备,如手机、PDA、笔记本或智能卡等等,用于根据PIM D220生成的主伪名Pp,ime进一步自动生成一个或多个子伪名Ppseu。这些子伪名Ppseu将会在用户到医院就诊时注册在医疗系统D210中。用户设备D230 的子伪名生成功能例如可以通过装载在用户设备20上的应用软件来实现,也可以通过能够连接到该用户设备的硬件功能模块来实现。
以下参照图2详细描述根据本发明一个实施例的用于生成和验证伪名方法的操作过程。在图2所示的实施例中,根据本发明的生成和验证伪名的方法可以分为五个阶段,即建立阶段(S210)、主伪名注册阶段(S230)、子伪名生成阶段(S250)、子伪名验证阶段 (S270)以及用户身份追踪阶段(S290)。但是,本领域技术人员可以理解的是,本发明并不限于此实施例。相反,此实施例中的一些步骤(例如用户身份追踪阶段)根据需要可以省去,或者一些步骤之间可以有所交叉。以下将结合图2描述这五个阶段的具体操作。
^iL 图2示出的生成和验证伪名的方法是以基于身份加密(IBE)方法为基础而提出的。在初始的建立阶段S210,PIM D220基于IBE方法确定用于生成和验证伪名的公共参数组和秘密参数组。
在步骤S211中,PIM D220选定基本参数。具体而言,PIM D220首先选定两个素数P和q,并在整数模P域(即Zp域)内选择一个随机数^eZi。然后,PIM D220选择两个 q阶模P的群G1和G2,换言之,所选择的G1和G2群均包括q个有限元素,且G1和G2群是Zp 域的子集。PIM D220还要选择一个在G1和G2之间使用的双线性映射IG1XG1— G2。这里,双线性映射G1XG1 — G2是指对于所有P, Qe G1,^, 0均为G2群中的一个元素,即 e(P, Q)gG2 ;而且对于任意 a, b e Zp,都有兴《Λ bQ) = e(P, Qf。PIM 0220 在& 群中再选择一个随机生成子g e G1,并选择两个单向哈希函数H1和吐。这两个哈希函数能够满足条件H1=IOaK^G1和H2 = G2 — {0,1}*也就是说,氏是将任意长度的0、1序列(例如表示一个字符串)映射成&群中的一个元素的第一单向哈希函数;H2是用于将&群中的一个元素映射成一个任意长度的0、1序列的第二单向哈希函数。
在选定了上述基本参数之后,在步骤S213中,PIM D220从上述参数中选出 Wj35Gl5G2^iZ2,树构成公共参数组,并且选出3和H1作为秘密参数组。
这里,公共参数组Wj35Gl5G2^iZ2,树是公开的,任何其它设备都可以从PIMD220 获得该公共参数组。同时,秘密参数组W,是保密的,以便在用户注册时安全地为用户生成主伪名PpriM。
腫 用户在首次到医院就诊之前,用户可以在注册阶段S230中选择一个可信任的本地PIM D220进行注册,以得到一个主伪名。
具体而言,在步骤S231中,用户可以利用其携带的用户设备D230(如PDA)将用于标识自己真实身份的用户身份标识IDusct在注册请求中发送给PIM D220。在步骤S233中, PIM D220将接收到的IDusct存储在一个用户身份数据库中,并利用接收到的IDusct和之前确定的秘密参数组{5,H1),生成一个主伪名=< H1(U)usJ,H13(IDusJ >。这个主伪名是一个二元组,其中一项是对IDusct应用保密的第一单向哈希函数H1计算出的第一哈希值,另一项是该第一哈希值的3次方。继而,在步骤S235中,PIM D220将生成的主伪名PpHme连同公共参数组一同发送给用户设备D230,作为指示注册成功的应答。在步骤S237中,用户设备 D230将接收到的主伪名Pp,ime和公共参数组存储下来,以便将来可以根据需要生成相应的子伪名。然后,注册过程结束。
子伪名牛成 在图2所示的实施例中,为了避免PIM D220频繁地为用户生成伪名,由PIM D220 生成的主伪名PpHme并不真正在医院中使用。相反,在阶段S250中,每次用户到医院就诊时, 用户设备D230会根据从PIM D220得到的主伪名PpHme自行生成至少一个子伪名。
具体而言,在步骤S251,根据所存储的公共参数组,用户设备D230从Zp域中选择例如两个随机数&,1^2 e Zp。然后,在步骤S253中,用户设备D230利用所选定的这两个随机数、公共参数组和主伪名Pp,ime,生成一个子伪名。在这个步骤中,用户设备D230可以先计算以下参数
权利要求
1.一种用于在身份管理器(PIM)中生成伪名的方法,所述方法包括以下步骤 确定一个公共参数组和一个秘密参数组;从用户设备接收一个用户身份标识IDusct ;根据所确定的秘密参数组和所述IDusct,生成一个主伪名 Ppnme =< HlHDuserXHldHDlisJh其中H1是一个单向哈希函数,5是Zp域中选出的随机数,且 P是一个选定的素数;以及将所述主伪名Plffime和所述公共参数组发送给所述用户设备。
2.如权利要求1所述的方法,其中,所述公共参数组为IgdAG2AH2,! ], 其中G1和G2是选定的两个q阶模P群,其中q是素数; e是一个双线性映射且e : G1XG1 — G2 ; g是从G1群中选出的一个随机生成子; H2是单向哈希函数,且H2 = G2 — {0,1}*;并且 H1: {0,1}* —G”
3.如权利要求2所述的方法,还包括以下步骤从一个第三方设备接收一个子伪名Ppseu = <Qa, Qb, ca> ;利用所述子伪名Ppsw和所述公共参数组,计算一个查询参数Rr = e(g\QA)cA ; 根据所述查询参数Vct,在所存储的用户身份标识中查找一个用户身份标识ID’USCT以使得e(QB,Hd(RTusJ) 二 Ver 搭及将所述ID’ user作为与所述Ppsw对应的用户身份标识发送给所述第三方设备。
4.如权利要求1所述的方法,还包括以下步骤 接收来自所述第三方设备的获取请求;以及响应于所述获取请求,向所述第三方设备发送所述公共参数组。
5.如权利要求1所述的方法,还包括以下步骤 接收来自所述用户设备的一个子伪名Pp_ ;以及通过与所述用户设备进行交互来验证所述子伪名Ppseu的有效性。
6.一种用于在用户设备中生成伪名的方法,所述方法包括以下步骤 向身份管理器(PIM)发送一个用户身份标识IDusct ;从所述PIM接收一个公共参数组和一个与所述IDusct相对应的主伪名ΡρΗωε ;以及选择至少两个随机参数,并利用所述至少两个随机参数、所述公共参数组和所述主伪1 prime ‘ 生成子伪名 1 pseu°
7.如权利要求6所述的方法,其中,所述公共参数组为:{g,gd,G”G2:e,H2,ρ、, 其中ρ是素数,且3是Zp域中选出的随机数; G1和G2是两个q阶模ρ群,其中q是素数; e是一个双线性映射且^G1 X G1 — G2 ;g是G1群中的一个随机生成子;并且 H2是单向哈希函数,且H2 = G2 — {0,1}*; 并且所述主伪名为=<Hl(IDuser\Hld(IDuser)>, 其中,H1是一个单向哈希函数,且H1 = G1 — {0,1}*; 并且其中,所述生成所述子伪名Ppseu的步骤包括 根据所述公共参数组,在Zp域内选择两个随机数Ic1和k2 ;利用所选择的随机数h和k2、所述公共参数组以及所述主伪名ΡρΗωε计算以下参数a= Hlk^(ID);QbCA= e{Qc,QD),其中'Qc=Eklh ,Qd =Hldklik^iID),且 Kk2-1Hiodp = 1 ;以及基于计算出的参数,生成子伪名Ρρ_ = <Qa,Qb,ca>。
8.如权利要求7所述的方法,还包括以下步骤向一个第三方设备发送所述子伪名Pp_和一个用于标识所述PIM的标识符IDsctvct ;以及通过与作为验证方的所述第三方设备进行交互来验证所述子伪名Ppseu的有效性。
9.如权利要求7所述的方法,还包括以下步骤 向所述PIM发送所述子伪名Ppseu ;以及通过与作为验证方的所述PIM进行交互来验证所述子伪名Ppseu的有效性。
10.如权利要求8或9所述的方法,其中所述验证步骤包括通过与所述验证方交换零知识证明来验证所述子伪名Ppseu的有效性。
11.如权利要求10所述的方法,其中,与所述验证方交换零知识证明的步骤包括 从所述验证方接收一个查询消息,该查询消息是根据所述公共参数组和所述子伪名Ppseu 生成的,并且表示为< H ^H.iOjc^EnciK^N^ > ; 其中,t是由所述验证方选定的Zp内的随机数;0B=e{g\QA)-,Kses是由所述验证方选定的原始会话密钥; Na是由所述验证方随机选出的查询内容;并且Enc (Kses, Na)表示利用所述原始会话密钥对所述查询内容Na进行加密而得到的加密内容;根据所述查询消息和所述主伪名Pp_e,利用 K*ses(彻 (///(//)■)产))计算一个会话密钥 Κ、;利用所述会话密钥对所述加密内容Enc (Kses, Na)进行解密,以得到解密内容Na* ; 根据预定规则选择一个与所述解密内容Na*相对应的应答内容Nb,并利用所述会话密钥K*ses对所述应答内容Na进行加密,以得到应答消息Enc (K*ses,Nb);以及向所述验证方发送所述应答消息Enc (K*ses,Nb)。
12.一种用于在第三方设备中验证伪名的方法,所述方法包括以下步骤从一个用户设备接收一个子伪名Pp_以及一个标识身份管理器(PIM)的标识符根据所述标识符IDsctvct,从所述PIM获得一个公共参数组;以及基于所述公共参数组,通过与所述用户设备进行交互来验证所述子伪名Ppsw的有效性。
13.如权利要求12所述的方法,其中,所述公共参数组为-.Wg^G1P2AH2M,其中,P是素数,且3是Zp域中选出的随机数; G1和G2是两个q阶模ρ群,其中q是素数; e是一个双线性映射且e : G1XG1 — G2 ; g是G1群中的一个随机生成子; H2是单向哈希函数,且H2 = G2 — {0,1}*。
14.如权利要求13所述的方法,其中,所述验证步骤包括通过与所述用户设备交换零知识证明来验证所述子伪名Ppseu的有效性。
15.如权利要求14所述的方法,其中,所述交换零知识证明的步骤包括 在Zp域内选择一个随机数t;选择一个原始会话密钥以及一个查询内容Na,并利用所述原始会话密钥对所述查询内容Na进行加密,以得到加密内容Enc (K_,Na);利用所述随机数t、所述公共参数组、所述子伪名Pp_以及所述加密内容Enc(K_,Na),生成一个查询消息< g\Kses H^c^EnciK^NJ >,其中,Os = e(g\QA);向所述用户设备发送所述查询消息;接收来自所述用户设备的应答消息Enc (K*ses,Nb),其中K*ses是所述用户设备根据所述查询消息计算出的会话密钥,Nb是所述用户设备按照预定规则根据由Enc(K_,Na)解密出的查询内容选择的应答内容;利用所述原始会话密钥解密所述应答消息;以及确定解密出的应答内容Nb*与所述查询内容Na之间是否符合所述预定规则,以验证所述子伪名Ρρ_的有效性。
16.如权利要求12所述的方法,其中, 向所述PIM发送所述子伪名Ppseu ;以及从所述PIM接收一个用户身份标识ID’USCT,以作为与所述子伪名Ppsw相对应的用户身份标识IDusct。
17.一种身份管理器(PIM),包括确定单元,用于确定一个公共参数组和一个秘密参数组; 接收单元,用于接收一个用户身份标识IDUSCT ;生成单元,用于根据所述秘密参数组和所述IDusct,生成一个主伪名 Ppnme =<^(m_),<(m_)>,其中H1是一个单向哈希函数,5是Zp域中选出的随机数,且 P是一个选定的素数;以及发送单元,用于将所述主伪名Plffinre发送给所述用户设备。
18.如权利要求17所述的PIM,其中,所述公共参数组为々,《,GJ^aHvP、,其中,P是素数,且δ是Zp域中选出的随机数; G1和G2是两个q阶模ρ群,其中q是素数; e是一个双线性映射且^G1 X G1 — G2 ;g是G1群中的一个随机生成子;并且 H2是单向哈希函数,且H2 = G2 — {0,1}*;并且所述主伪名=<^(巩皿),珎,其中,H1是一个单向哈希函数,且 H1IG1 — {0,1}*。
19.如权利要求18所述的PIM,其中,所述接收单元还用于从第三方设备接收一个子伪名 Ppseu —〈仏,Qb' CA〉,其中所述PIM还包括计算单元,用于利用所述子伪名Ppsw和所述公共参数组,计算一个查询参数Ver = e(gd,QA)cA·’以及查找单元,用于根据所述查询参数,在存储有所述IDusct的存储单元中查找一个用户身份标识ID’ user以使得e(込,炉(//)’■)) = & ;并且其中,所述发送单元还用于将所述ID’USCT作为与所述子伪名Ppsw相对应的用户身份标识发送给所述第三方设备。
20.一种用户设备,包括发送单元,用于向身份管理器(PIM)发送一个用户身份标识IDUSCT ; 接收单元,用于从所述PIM接收一个公共参数组和一个与所述IDusct相对应的主伪名Pprime 以 ^^生成单元,用于选择至少两个随机参数,并利用所述至少两个随机参数、所述公共参数和所述主伪名PpriM,生成子伪名Pp_。
21.如权利要求20所述的用户设备,其中,所述公共参数组为:{g,gd,G”G2:e,H2,Ph其中,P是素数,且δ是Zp域中选出的随机数; G1和G2是两个q阶模ρ群,其中q是素数; e是一个双线性映射且^G1 X G1 — G2 ; g是G1群中的一个随机生成子;并且 H2是单向哈希函数,且H2 = G2 — {0,1}*; 并且所述主伪名 =<^(IDuser\Hf (IDusJ >, 其中,H1是一个单向哈希函数,且H1 = G1 — {0,1}*; 并且其中所述生成单元包括选择单元,用于在Zp域内选择两个随机数Ic1和k2 ;以及计算单元,用于利用所选择的随机数&和k2、所述公共参数组以及所述主伪名ΡρΗωε计算子伪名 Ppseu = <QA,QB,CA> ; 其中,込=^W(TD);QB=gkl2 ;并且
且 k2k2—1Hiodp = 1。
22.如权利要求21所述的用户设备,其中,所述发送单元还用于向一个第三方设备发送所述子伪名Ppseu和一个用于标识所述PIM 的标识符IDsctvct ;并且其中所述用户设备还包括验证单元,用于经由所述发送单元和所述接收单元与所述第三方设备进行交互来验证所述子伪名Pp_。
23.如权利要求22所述的用户设备,其中,所述验证单元用于通过与所述第三方交换零知识证明来验证所述子伪名Ppsw的有效性。
24.如权利要求23所述的用户设备,其中,所述验证单元用于经由所述接收单元从所述第三方设备接收一个查询消息,该查询消息是根据所述公共参数组和所述子伪名Ppsw生成的,并且表示为,其中,t是Zp域内的随机数,,
Kses是由所述第三方设备选定的原始会话密钥; Na是由所述第三方设备随机选出的查询内容;并且Enc (Kses, Na)是利用所述原始会话密钥对所述查询内容Na进行加密而得到的加密内容;其中,所述验证单元包括会话密钥获取单元,用于根据接收到的所述查询消息,利用公式 K\es代(彻产))计算一个会话密钥 K*ses ;解密单元,用于利用所述会话密钥K*ses对所述加密内容Enc(Kses,Na)进行解密,以得到解密内容Na* ;以及加密单元,用于根据预定规则选择一个与所述解密内容Na*相对应的应答内容Nb,并利用所述会话密钥K*ses对所选择的应答内容Nb进行加密,以得到应答消息Enc (K*ses,Nb); 并且其中,所述发送单元还用于向所述第三方设备发送所述应答消息Enc (K*ses,Nb)。
25.一种用户向其请求服务的第三方设备,所述第三方设备包括接收单元,用于从一个用户设备接收一个子伪名Pp_以及一个标识身份管理器(PIM) 的标识符IDsctvct ;发送单元,用于向所述用户设备发送信息;获取单元,用于根据所述标识符IDsctvct,从所述PIM获取公共参数组;以及验证单元,用于基于所述公共参数组,经由所述发送单元和所述接收单元,通过与所述用户设备进行交互来验证所述子伪名Ppseu的有效性。
26.如权利要求25所述的第三方设备,其中,所述公共参数组为
其中,P是素数,且δ是Zp域中选出的随机数; G1和G2是两个q阶模ρ群,其中q是素数;e是一个双线性映射且^G1 X G1 — G2 ; g是G1群中的一个随机生成子;并且 H2是单向哈希函数,且H2 = G2 — {0,1}*。
27.如权利要求26所述的第三方设备,其中,所述验证单元用于通过与所述用户设备交换零知识证明来验证所述子伪名Ppsw的有效性。
28.如权利要求27所述的第三方设备,其中,所述验证单元包括选择单元,用于在Zp域内选择一个随机数t,选择一个原始会话密钥以及一个查询内容Na,并利用所述原始会话密钥对所述查询内容Na进行加密,以得到加密内容 Enc (Kses,Na);查询消息生成单元,用于利用所述随机数t、所述公共参数组、所述子伪名Pp_以及所述加密内容Enc (K_,Na),生成一个查询消息<广足_十圪(O/c/XEMi^O,其中,0B=e(ga,QA),并用于经由所述发送单元将所述查询消息发送给所述用户设备;解密单元,用于利用所述原始会话密钥解密经由所述接收单元从所述用户设备接收到的应答消息Enc (K*_,Nb),其中是所述用户设备根据所述查询消息计算出的会话密钥,Nb是所述用户设备按照预定规则根据由Enc(K_,Na)解密出的查询内容选择的应答内容;以及确定单元,用于确定解密出的应答内容Nb*与所述查询内容Na之间是否符合所述预定规则,当符合所述预定规则时,验证所述子伪名Ppsw为有效。
29.如权利要求28所述的第三方设备,其中所述发送单元还用于向所述PIM发送所述子伪名Ppseu ;并且所述接收单元还用于从所述PIM接收与所述子伪名Pp_相对应的一个用户身份标识。
30.如权利要求25所述的第三方设备,其中所述第三方设备是医院中的医疗系统。
全文摘要
本发明提供一种生成和验证伪名的方法和装置。该方法包括以下步骤向身份管理器(PIM)发送一个用户身份标识IDuser;从所述PIM接收一个公共参数组和一个与所述IDuser相对应的主伪名Pprime;以及选择至少两个随机参数,并利用所述至少两个随机参数、所述公共参数组和所述主伪名Pprime,生成子伪名Ppseu。
文档编号H04L9/32GK102187618SQ200980140621
公开日2011年9月14日 申请日期2009年10月13日 优先权日2008年10月14日
发明者李晖, 屈劲 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1