CN102594570A - 基于等级身份加密的密钥门限算法 - Google Patents

基于等级身份加密的密钥门限算法 Download PDF

Info

Publication number
CN102594570A
CN102594570A CN2012101092622A CN201210109262A CN102594570A CN 102594570 A CN102594570 A CN 102594570A CN 2012101092622 A CN2012101092622 A CN 2012101092622A CN 201210109262 A CN201210109262 A CN 201210109262A CN 102594570 A CN102594570 A CN 102594570A
Authority
CN
China
Prior art keywords
key
kgc
module
private key
ciphertext
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2012101092622A
Other languages
English (en)
Inventor
陈志德
刘中仁
许力
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian Normal University
Original Assignee
Fujian Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujian Normal University filed Critical Fujian Normal University
Priority to CN2012101092622A priority Critical patent/CN102594570A/zh
Publication of CN102594570A publication Critical patent/CN102594570A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明涉及身份密码技术领域,特别是一种基于等级身份加密的密钥门限算法,包括参数建立模块、私钥计算模块、加密模块和解密模块;所述参数建立模块,根据输入的一组秘密参数,输出主***参数和主密钥,所述主密钥由最高等级的KGC管理;所述私钥计算模块,由等级为i-1的ni-1个KGC计算等级i的主密钥和私钥,构成密钥门限;所述加密模块,用公钥ID加密数据M,返回密文C;所述解密模块,用私钥SKID对密文C进行解密,返回明文M。该算法增强了密钥分发的安全性与灵活性。

Description

基于等级身份加密的密钥门限算法
技术领域
本发明涉及身份密码技术领域,特别是一种基于等级身份加密的密钥门限算法。
背景技术
具有等级结构的身份密码技术是一类特殊的密码协议模型,它主要应用于存在不同等级权限的实体之间的秘密通信。
等级身份加密体制的特点在于它把密钥管理中心按等级的不同进行了划分,每个等级由一个KGC进行密钥管理,该KGC只能计算它所在的身份域的密钥。身份加密可以理解为只有一个等级的等级身份加密***。等级身份加密体制大大降低了每个KGC的计算负载,并且它允许密钥托管由不同等级的KGC来完成。
等级身份加密技术存在的核心问题主要有:如何进行有效的密钥管理、如何提高加密解密的效率、如何缩短密钥和密文所占用的空间以及如何使其安全性更具说服力。对于这些问题,现代密码学领域的工作者们展开了一系列的研究。目前,等级身份加密体制的研究是基于双线性映射技术的。Gentry和Silverberg在2002年给出了一个完整的HIBE方案,但其安全性仍然是依赖于Random Oracle假设的。第一个有效的HIBE方案是由Boneh和Boyen给出的,是基于“Selective-ID”安全模型的协议。在这个方案中,密钥和密文的长度都随公钥ID的长度增加而增加。针对这个问题,Boneh、Boyen和Goh在2005年提出了一个新的HIBE方案,使得密钥的长度随着公钥ID的长度增加而减短,而且密文长度是一个固定常数,该方案也是基于“Selective-ID”安全模型的。
发明内容
本发明的目的在于提供一种基于等级身份加密的密钥门限算法,该算法增强了密钥分发的安全性与灵活性。
本发明采用的技术方案是:一种基于等级身份加密的密钥门限算法,其特征在于:该算法包括参数建立模块、私钥计算模块、加密模块和解密模块,假设等级身份加密的最大等级为                                               
Figure 2012101092622100002DEST_PATH_IMAGE002
,等级i
Figure 2012101092622100002DEST_PATH_IMAGE004
个私钥生成中心KGC,身份公钥为
Figure 2012101092622100002DEST_PATH_IMAGE006
,其中
Figure 2012101092622100002DEST_PATH_IMAGE008
,各模块按如下方法实施:
所述参数建立模块,根据输入的一组安全的秘密参数,输出主***参数和主密钥,所述主密钥由最高等级的KGC管理;
所述私钥计算模块,由等级为i-1的n i-1个KGC计算等级i的私钥,所述KGC构成(m i-1,  n i-1)门限:输入公共参数、身份公钥ID、任意m i-1个上级主密钥
Figure 2012101092622100002DEST_PATH_IMAGE010
,输出ID所对应的主密钥
Figure 2012101092622100002DEST_PATH_IMAGE012
和用户私钥
Figure 2012101092622100002DEST_PATH_IMAGE014
,所述主密钥
Figure 77053DEST_PATH_IMAGE012
分别由n i 个等级为i的KGC管理,且所述KGC构成(m i , n i )门限;
所述加密模块,用公钥ID加密数据M,返回密文C
所述解密模块,用私钥SK ID 对密文C进行解密,返回明文M
本发明的有益效果是基于等级身份加密和门限技术实现了密钥分发的门限方案,在该方案中,当进行运算的KGC数量达到门限值时才能进行有效的密钥计算,而且个别KGC的失效不会影响***的正常运行。该方案增强了密钥分发的安全性与灵活性,在电子商务、电子政务等领域具有广阔的应用前景。
附图说明
图1是本发明实施例的原理图。
具体实施方式
本发明基于等级身份加密的密钥门限算法,如图1所示,该算法包括参数建立模块、私钥计算模块、加密模块和解密模块,假设等级身份加密的最大等级为
Figure 994194DEST_PATH_IMAGE002
,等级i
Figure 711614DEST_PATH_IMAGE004
个私钥生成中心KGC,身份公钥为
Figure 106823DEST_PATH_IMAGE006
,其中
Figure 921195DEST_PATH_IMAGE008
,各模块按如下方法实施:
所述参数建立模块,根据输入的一组安全的秘密参数,输出主***参数和主密钥,所述主密钥由最高等级的KGC管理;
所述私钥计算模块,由等级为i-1的n i-1个KGC计算等级i的私钥,所述KGC构成(m i-1,  n i-1)门限:输入公共参数、身份公钥ID、任意m i-1个上级主密钥
Figure 743658DEST_PATH_IMAGE010
,输出ID所对应的主密钥
Figure 449839DEST_PATH_IMAGE012
和用户私钥
Figure 648739DEST_PATH_IMAGE014
,所述主密钥分别由n i 个等级为i的KGC管理,且所述KGC构成(m i , n i )门限;
所述加密模块,用公钥ID加密数据M,返回密文C
所述解密模块,用私钥SK ID 对密文C进行解密,返回明文M
下面对本发明涉及的相关内容作进一步说明。
1. 预报知识
1.1 双线性映射
Figure DEST_PATH_IMAGE016
Figure DEST_PATH_IMAGE018
为两个
Figure DEST_PATH_IMAGE020
阶乘法循环群。双线性映射
Figure DEST_PATH_IMAGE022
具有以下的性质:
1)双线性:对所有的
Figure DEST_PATH_IMAGE024
Figure DEST_PATH_IMAGE026
,我们有
Figure DEST_PATH_IMAGE028
2)非退化性:。换句话说,如果
Figure DEST_PATH_IMAGE032
Figure 124031DEST_PATH_IMAGE016
的生成元,那么
Figure DEST_PATH_IMAGE034
是群
Figure 878361DEST_PATH_IMAGE018
的生成元;
3)可计算性:存在一个有效的算法计算
Figure DEST_PATH_IMAGE036
的值,其中
1.2 困难问题
任何一个算法在有效的时间内都不能计算出问题
Figure DEST_PATH_IMAGE038
的解,我们说问题
Figure 574976DEST_PATH_IMAGE038
是困难的。通常,我们将加密协议的安全性规约到某些困难问题,也就是说如果问题
Figure 4820DEST_PATH_IMAGE038
是困难的,那么基于困难问题
Figure 184129DEST_PATH_IMAGE038
的加密协议是安全的。在这里,我们介绍一些相关的困难问题。
定义 1.1. 设
Figure 459252DEST_PATH_IMAGE016
为一个乘法循环群且是它的一个生成元,
Figure 102723DEST_PATH_IMAGE022
是一个双线性映射。已知,其中
Figure DEST_PATH_IMAGE046
里的三个未知的随机数,BDH问题是计算
Figure DEST_PATH_IMAGE048
定义 1.2. 设
Figure 752404DEST_PATH_IMAGE016
Figure 481325DEST_PATH_IMAGE018
为两个乘法循环群且
Figure 560140DEST_PATH_IMAGE040
的一个生成元,
Figure 829764DEST_PATH_IMAGE022
是一个双线性映射。已知
Figure 718086DEST_PATH_IMAGE042
,其中
Figure 600591DEST_PATH_IMAGE044
Figure 953075DEST_PATH_IMAGE046
里的三个未知的随机数,DBDH问题是判断
Figure DEST_PATH_IMAGE052
是否等于
Figure 833306DEST_PATH_IMAGE048
定义 1.3. 设
Figure 271241DEST_PATH_IMAGE016
Figure 691858DEST_PATH_IMAGE018
为两个乘法循环群且
Figure 215560DEST_PATH_IMAGE016
的一个生成元,
Figure 140791DEST_PATH_IMAGE022
是一个双线性映射。已知,其中
Figure DEST_PATH_IMAGE056
Figure 862814DEST_PATH_IMAGE046
里的一个未知的随机数,
Figure 147165DEST_PATH_IMAGE002
-DBDHI问题是判断
Figure 559692DEST_PATH_IMAGE052
是否等于
Figure DEST_PATH_IMAGE058
定义 1.4. 设
Figure 706956DEST_PATH_IMAGE018
为两个乘法循环群且
Figure DEST_PATH_IMAGE060
Figure 834312DEST_PATH_IMAGE016
的两个生成元,
Figure 734135DEST_PATH_IMAGE022
是一个双线性映射。已知
Figure DEST_PATH_IMAGE062
Figure 300246DEST_PATH_IMAGE050
,其中
Figure 601914DEST_PATH_IMAGE056
Figure 900171DEST_PATH_IMAGE046
里的一个未知的随机数,
Figure 287290DEST_PATH_IMAGE002
-wDBDHI问题是判断是否等于
Figure DEST_PATH_IMAGE064
定义 1.5. 设
Figure 986835DEST_PATH_IMAGE016
Figure 783890DEST_PATH_IMAGE018
为两个乘法循环群且
Figure 392726DEST_PATH_IMAGE060
Figure 566218DEST_PATH_IMAGE016
的两个生成元,是一个双线性映射。已知
Figure 482539DEST_PATH_IMAGE050
,其中
Figure 578671DEST_PATH_IMAGE056
Figure 290275DEST_PATH_IMAGE046
里的一个未知的随机数,
Figure 93146DEST_PATH_IMAGE002
-
Figure DEST_PATH_IMAGE068
问题是判断
Figure 232003DEST_PATH_IMAGE052
是否等于
定义 1.6. 我们说上述的困难问题具有
Figure DEST_PATH_IMAGE070
困难性,如果没有一个算法能够在时间内,使得解决对应问题的概率超过
Figure DEST_PATH_IMAGE074
2. 安全证明
公钥密码体制的安全是相对的。在不考虑时间消耗的前提下,任何一个公钥密码***都是可被破译的。公钥密码体制的安全性取决于某些单向函数逆运算的困难性,事实上,单向函数的逆运算也不是绝对困难的,它是指逆运算的计算时间超出了一个有效的时间。例如离散对数问题:已知
Figure 2830DEST_PATH_IMAGE040
Figure DEST_PATH_IMAGE076
阶乘法循环群
Figure 424322DEST_PATH_IMAGE016
一个生成元,其中
Figure 734080DEST_PATH_IMAGE076
为某个大素数。定义函数为
Figure DEST_PATH_IMAGE078
。已知
Figure DEST_PATH_IMAGE080
,我们可以在多项式时间内计算出
Figure DEST_PATH_IMAGE082
;但是,已知
Figure DEST_PATH_IMAGE084
,我们无法在多项式时间内计算出。在上一小节中,我们给出了一些困难问题的定义,这些困难问题本质上也是基于单向函数逆运算的困难性。
公钥密码体制的安全证明事实上是证明该密码体制的安全性与某个困难问题等价。所谓的“等价”就是规约证明:即假设某个公钥密码体制是不安全,那么我们把这种不安全性等价到困难问题具有多项式时间的解决方法。反之,因为困难问题是存在的,假设就不成立,这个密码体制是安全的。这也说明了困难问题的困难系数决定着公钥密码体制的安全系数。
2.1 安全模型
公钥密码体制的安全性并不是笼统地指攻击者无法从密文中获取明文,因为只有密钥和明文一一对应(一次一密)才是真正意义上的安全。而在公钥密码体制中,密钥是会被多次使用的,也就是说用一个密钥解密多个密文。这样的话,一些明文密文对就会不可避免地泄露相关信息,从而会对下一次的加密产生安全的隐患。因此,我们给出更详细的安全模型假设,在后面的方案中,针对这些假设进行安全证明。习惯上,我们把被攻击者称为“挑战者”,把攻击者称为“敌手”。我们从攻击能力和攻击目标两个方面来定义其安全性。假设攻击者要破译某个密文里的明文,我们把该密文称为挑战密文。根据攻击者的能力,其攻击模型主要有以下三种:
1)选择明文攻击(CPA):攻击者没有得到任何明文密文对。
2)非适应性选择密文攻击(CCA1):攻击者在获取挑战密文之前,得到了有限的明文和密文对,且密文是由攻击者决定的。
3)适应性选择密文攻击(CCA2):攻击者得到挑战密文之后,可以根据挑战密文获取有限的明文和密文对。要求是攻击者不能获取该挑战密文对应的明文,否则,安全假设将失去意义。
假设攻击者能猜测出挑战密文里的部分明文信息,那么,这能不能算是一个成功的攻击呢?下面,我们根据目标的不同介绍三种攻击模型定义:
1)单向性 (OW,One-Way):攻击者不能完整地解密出挑战密文对应的明文信息。
2)不可区分性(IND,Indistinguishability):攻击者自己选择不同的两个明文作为挑战密文加密的对象,攻击者的目标是正确猜测出挑战密文里到底是加密了哪个明文。
3)不可延展性(NM,Non-Malleability):攻击者不能修改挑战密文使得其解密下的明文具有别的意义. 
在现实世界中,我们需要弱化密钥管理者的能力同时加强攻击者的能力,才可以最大限度地保证加密***的安全性。在本文,我们用CCA来表示适应性选择密文攻击。在安全证明过程中,不可区分性和不可延展性是等价的,由于不可区分性易于证明,因此我们的证明都建立在这个模型上。一般情况下,一个公钥加密***是安全的当且仅当其满足IND-CCA攻击模型下的安全性。
2.2 身份加密体制的安全模型
身份密码体制与一般的公钥密码体制不同的是,它存在一个密钥产生中心,用来计算每个公钥(身份)所对应的私钥,其主***参数是由多个用户共享的。因此在身份密码***中,作为攻击者,他必然会尽可能去获取该***参数下的若干公钥和私钥对。所以,我们对其安全性有更特殊的要求:敌手在确定某公钥作为要攻击的对象之前,可以获取有限的公钥和私钥对,之后再进行公钥密码***安全模型下的攻击。下面,我们给出身份密码体制下安全模型的完整定义,这种安全模型的定义表现在一个敌手
Figure DEST_PATH_IMAGE088
和一个挑战者
Figure DEST_PATH_IMAGE090
的交互游戏中。过程如下:
Setup: 挑战者初始化***,并发送给敌手相应的公开参数
Figure DEST_PATH_IMAGE092
,且秘密地保管主密钥。
Phase 1: 敌手向挑战者发起适应性有选择的询问
Figure DEST_PATH_IMAGE094
,其中询问
Figure DEST_PATH_IMAGE096
的内容如下: 
私钥询问
Figure DEST_PATH_IMAGE098
. 挑战者首先输入主参数和主密钥来计算
Figure DEST_PATH_IMAGE100
对应的私钥并将此私钥返回给敌手。
密文询问
Figure DEST_PATH_IMAGE102
. 挑战者首先计算私钥
Figure DEST_PATH_IMAGE104
,用该私钥解密询问的密文
Figure DEST_PATH_IMAGE106
并将解密的结果返回给敌手。
以上的询问,敌手可以适应性地根据上次询问的结果再提出下一次询问的内容。
Challenge: 一旦Phase 1的询问结束,敌手输出一个挑战公钥和两个不同的明文
Figure DEST_PATH_IMAGE110
作为挑战的对象。挑战者随机选取一个比特值
Figure DEST_PATH_IMAGE112
并计算密文。挑战者最后将
Figure DEST_PATH_IMAGE116
作为挑战的密文返回给敌手。
Phase 2: 和Phase 1相同。限制是敌手不能询问
Figure 6404DEST_PATH_IMAGE108
的密钥或者询问密文
Guess: 敌手输出猜测
Figure DEST_PATH_IMAGE120
并获得成功当且仅当
我们把上述敌手称为IND-ID-CCA敌手,我们定义敌手攻击身份加密***(IBE)的能力优势为:
Figure DEST_PATH_IMAGE124
定义2.1. 我们说一个IBE加密算法
Figure DEST_PATH_IMAGE128
适应性选择密文攻击安全的算法,如果对任意一个
Figure 997494DEST_PATH_IMAGE072
-时间内IND-ID-CCA 敌手
Figure 837274DEST_PATH_IMAGE088
询问不超过
Figure DEST_PATH_IMAGE130
个私钥和
Figure DEST_PATH_IMAGE132
个密文解密,并且它的优势满足
Figure DEST_PATH_IMAGE134
。也就是说,
Figure 255617DEST_PATH_IMAGE126
是一个具有
Figure 984276DEST_PATH_IMAGE128
IND-ID-CCA 安全的IBE加密算法。
在身份密码***中,我们把上述的模型定义为“标准模型”(Standard Model)[7]。然而,直接在标准模型下给出一个证明并不是容易的,方案的证明远比方案的构造难。甚至有些具有良好性质的加密方案,却无法得到证明或者无法在标准模型下得到证明。在目前的研究过程中,基于有些方案证明的困难性,其全证明被相对弱化:攻击者在确认挑战的公钥
Figure 841373DEST_PATH_IMAGE108
之后才能询问相应的公钥私钥对。这种弱化的模型被描述为“选择攻击模型”(Selective-ID Model)[5],即IND-sID-CCA。
3. 等级身份加密构造
3.1 Boneh-Boyen等级身份加密方案
Figure 187221DEST_PATH_IMAGE018
是两个
Figure 170221DEST_PATH_IMAGE076
阶乘法循环群,
Figure 565430DEST_PATH_IMAGE022
是一个双线性映射。公钥
Figure DEST_PATH_IMAGE136
是一个
Figure 114223DEST_PATH_IMAGE002
维的向量,第
Figure DEST_PATH_IMAGE138
个分量代表等级为
Figure 139948DEST_PATH_IMAGE138
的身份域。我们不妨也设要加密的消息是
Figure 406981DEST_PATH_IMAGE018
中的元素,该HIBE方案构造如下:
Setup(
Figure 605881DEST_PATH_IMAGE002
):不妨设HIBE的最大等级为
Figure 9181DEST_PATH_IMAGE002
。随机选取,令,再随机选取。主公共参数和主密钥为
Figure DEST_PATH_IMAGE146
这里定义函数
Figure DEST_PATH_IMAGE148
为:
Figure DEST_PATH_IMAGE150
KeyGen( ): 为了计算身份公钥所对应的私钥
Figure DEST_PATH_IMAGE156
,随机选取
Figure DEST_PATH_IMAGE158
,然后输出:
Figure DEST_PATH_IMAGE160
事实上,已知上一等级公钥对应的私钥,就可以计算。假设
Figure DEST_PATH_IMAGE164
所对应的私钥是
Figure DEST_PATH_IMAGE166
,为了计算
Figure 274650DEST_PATH_IMAGE156
,随机选取
Figure DEST_PATH_IMAGE168
,然后输出
Figure DEST_PATH_IMAGE170
Encrypt(params,ID,M): 输入明文消息
Figure DEST_PATH_IMAGE172
和公钥,随即选取
Figure DEST_PATH_IMAGE174
,输出密文:
Figure DEST_PATH_IMAGE176
Decrypt(
Figure DEST_PATH_IMAGE178
): 为了用私钥
Figure DEST_PATH_IMAGE180
解密上述密文
Figure DEST_PATH_IMAGE182
,做如下计算:
3.2 Boneh-Boyen-Goh等级身份加密方案
Figure 908949DEST_PATH_IMAGE016
Figure 276476DEST_PATH_IMAGE018
是两个阶乘法循环群,
Figure 793225DEST_PATH_IMAGE022
是一个双线性映射。公钥
Figure 436696DEST_PATH_IMAGE136
是一个
Figure 709546DEST_PATH_IMAGE002
维的向量,第
Figure 438467DEST_PATH_IMAGE138
个分量代表等级为
Figure 517282DEST_PATH_IMAGE138
的身份域。我们不妨也设要加密的消息是
Figure 952942DEST_PATH_IMAGE018
中的元素,该HIBE方案构造如下:
Setup(
Figure 459010DEST_PATH_IMAGE002
):不妨设HIBE的最大等级为。随机选取,令
Figure 349365DEST_PATH_IMAGE142
,再随机选取
Figure DEST_PATH_IMAGE186
。主公共参数和主密钥为:
KeyGen( ): 为了计算身份公钥
Figure DEST_PATH_IMAGE192
所对应的私钥
Figure 167279DEST_PATH_IMAGE156
,随机选取
Figure DEST_PATH_IMAGE194
,然后输出:
Figure DEST_PATH_IMAGE196
事实上,已知上一等级公钥对应的私钥,就可以计算
Figure 542897DEST_PATH_IMAGE156
。假设
Figure DEST_PATH_IMAGE200
所对应的私钥是:
Figure DEST_PATH_IMAGE202
为了计算
Figure 399732DEST_PATH_IMAGE156
,随机选取
Figure DEST_PATH_IMAGE204
,然后输出
Figure DEST_PATH_IMAGE208
,很容易可以看出此处的
Figure 747668DEST_PATH_IMAGE156
是一个有效的私钥。
Encrypt(params,ID,M):输入明文消息
Figure 595538DEST_PATH_IMAGE172
和公钥
Figure 520769DEST_PATH_IMAGE192
,随即选取,输出密文:
Figure DEST_PATH_IMAGE210
Decrypt(
Figure 9836DEST_PATH_IMAGE178
):为了用私钥
Figure DEST_PATH_IMAGE212
解密上述密文
Figure DEST_PATH_IMAGE214
,做如下计算
Figure DEST_PATH_IMAGE216
该方案中的密钥管理机制实现了多KGC的秘密共享,然而这种秘密共享方案还存在一些不足之处,比如说当某个KGC失效时,那么它将影响整个***的正常运行,因此必须重新生成所有***主密钥。本文提出等级身份加密中的密钥门限方案(KT-HIBE),其中每个KGC掌握一个密钥的门限信息,当参与运算的KGC数量达到某个门限值时就能进行密钥的计算。
在我们的KT-HIBE方案中,每个等级可以有
Figure DEST_PATH_IMAGE218
个KGC,它们共享一个主密钥,必须且只需其中的
Figure DEST_PATH_IMAGE220
个KGC才能完成密钥的计算,我们称之为
Figure DEST_PATH_IMAGE222
密钥门限方案。我们的方案基于Boneh-Boyen等级身份加密方案,在原有的加密算法的基础上实现了密钥的门限技术,使HIBE的密钥管理机制更加灵活,不仅可以抵抗KGC的串谋攻击,而且在某些KGC不可用的情况下***还能正常运行,必要的时候再重新生成***主密钥,并且该KT-HIBE方案保持IND-sID-CCA安全性。
4. KT-HIBE算法模型
我们假设KT-HIBE的最大等级为
Figure 671018DEST_PATH_IMAGE002
,等级
Figure DEST_PATH_IMAGE224
Figure 83545DEST_PATH_IMAGE004
个KGC,身份公钥为
Figure 783648DEST_PATH_IMAGE006
。本协议主要包括四个模块:Setup、KeyGen、Encrypt、Decrypt分别是***参数建立、私钥计算、加密、解密。
Setup:输入一组安全的秘密参数,输出主***参数和主密钥,该主密钥由最高等级的KGC(我们可以视其为等级为
Figure DEST_PATH_IMAGE226
的KGC)管理。
KeyGen-i(
Figure 965230DEST_PATH_IMAGE008
):该阶段由等级为
Figure DEST_PATH_IMAGE228
-1的
Figure DEST_PATH_IMAGE230
个KGC完成,这些KGC构成(
Figure DEST_PATH_IMAGE232
)门限。输入公共参数、身份域、上级主密钥(任意个)
Figure 257989DEST_PATH_IMAGE010
;输出ID所对应的主密钥
Figure 260317DEST_PATH_IMAGE012
和用户私钥。这里的主密钥
Figure 922560DEST_PATH_IMAGE012
分别由
Figure DEST_PATH_IMAGE236
个等级为
Figure 247362DEST_PATH_IMAGE228
的KGC管理,且这些KGC构成(
Figure DEST_PATH_IMAGE238
)门限。
Encrypt:用公钥
Figure DEST_PATH_IMAGE240
加密数据
Figure DEST_PATH_IMAGE242
,返回密文
Figure 289267DEST_PATH_IMAGE090
Decrypt:用私钥
Figure 445442DEST_PATH_IMAGE014
对密文
Figure 242497DEST_PATH_IMAGE090
进行解密,返回明文
Figure 851333DEST_PATH_IMAGE242
4.1 Lagrange插值公式
下面我们简要介绍Lagrange插值公式,本文将应用Lagrange插值公式实现密钥门限协议。具体内容如下: 
假设是定义在
Figure 962508DEST_PATH_IMAGE046
上的最高次为的多项式函数,
Figure DEST_PATH_IMAGE246
Figure DEST_PATH_IMAGE248
个不同的数。令
Figure DEST_PATH_IMAGE250
,则我们有
Figure DEST_PATH_IMAGE252
从以上式子可以知道,如果给定函数上的
Figure DEST_PATH_IMAGE254
个不同的点,那么必须且只需其中的
Figure 848415DEST_PATH_IMAGE248
个点就可以还原该函数或者计算函数上某个点的函数值,这就构成了一个
Figure DEST_PATH_IMAGE256
门限。
4.2 协议设计
Figure 979182DEST_PATH_IMAGE016
Figure 55722DEST_PATH_IMAGE018
是两个
Figure 639150DEST_PATH_IMAGE076
阶乘法循环群,是一个双线性映射。公钥
Figure DEST_PATH_IMAGE258
是一个
Figure 811823DEST_PATH_IMAGE002
维的向量,第
Figure 121581DEST_PATH_IMAGE138
个分量代表等级为
Figure 192305DEST_PATH_IMAGE138
的身份域。我们不妨也设要加密的消息是
Figure 619613DEST_PATH_IMAGE018
中的元素。
不失一般性,我们给出一个最大等级为3的等级身份加密(3-HIBE)协议。在该***中,最高等级(等级0)的密钥管理中心为Root KGC,等级1中有5个KGC,等级2中有7个KGC。每一等级的KGC的任务是为下一等级的KGC计算主密钥和为用户计算私钥,且第1等级必须且只需由5个KGC中的任意3个才能完成密钥的计算,同样第2等级必须且只需由7个KGC中的任意4个才能完成密钥的计算。以下用KGC
Figure DEST_PATH_IMAGE262
表示等级
Figure 459393DEST_PATH_IMAGE228
中的第
Figure 940053DEST_PATH_IMAGE138
个KGC,***构造如下:
Setup(3): 由Root KGC随机选取
Figure 232494DEST_PATH_IMAGE140
,令,再随机选取
Figure DEST_PATH_IMAGE264
。主公共参数和主密钥为
Figure DEST_PATH_IMAGE266
这里定义函数
Figure 721562DEST_PATH_IMAGE148
为:
Figure DEST_PATH_IMAGE268
KeyGen-1: 该阶段由Root KGC完成。为了计算身份为
Figure DEST_PATH_IMAGE270
的用户私钥
Figure DEST_PATH_IMAGE272
,随机选取
Figure DEST_PATH_IMAGE274
,输出 
Figure DEST_PATH_IMAGE276
为了计算等级1的5个KGC(身份域为
Figure DEST_PATH_IMAGE278
)的主密钥,Root KGC选取一个多项式函数
Figure DEST_PATH_IMAGE280
(
Figure DEST_PATH_IMAGE282
中的随机数),并且随机选取。令
Figure DEST_PATH_IMAGE286
,然后输出
Figure DEST_PATH_IMAGE288
Root KGC分别把
Figure DEST_PATH_IMAGE290
发送给等级1中的PKG
Figure DEST_PATH_IMAGE292
Figure DEST_PATH_IMAGE294
KeyGen-2(
Figure DEST_PATH_IMAGE296
):该阶段由等级1中的任意3个KGC完成,我们不妨假设由PKG
Figure DEST_PATH_IMAGE298
、PKG
Figure DEST_PATH_IMAGE300
、PKG
Figure DEST_PATH_IMAGE302
来计算密钥。
为了计算身份为
Figure DEST_PATH_IMAGE304
的用户私钥
Figure DEST_PATH_IMAGE306
,完成以下步骤:
1)PKG  随机选取,计算
Figure DEST_PATH_IMAGE312
,然后分别将结果发送给用户。
2)用户在得到3部分密钥后计算其私钥
Figure DEST_PATH_IMAGE314
Figure DEST_PATH_IMAGE316
显然
Figure 377430DEST_PATH_IMAGE306
是公钥对应的一个有效的私钥。
为了计算等级2的7个KGC(身份域为
Figure 926223DEST_PATH_IMAGE318
)的主密钥,完成以下步骤:
1)首先考虑为PKG计算主密钥。PKG
Figure 951948DEST_PATH_IMAGE298
、PKG
Figure 218981DEST_PATH_IMAGE300
、PKG
Figure 152302DEST_PATH_IMAGE302
共同协商参数
Figure DEST_PATH_IMAGE322
Figure DEST_PATH_IMAGE324
Figure DEST_PATH_IMAGE326
Figure DEST_PATH_IMAGE328
Figure DEST_PATH_IMAGE330
,PKG
Figure 198012DEST_PATH_IMAGE292
(i=1,2,3)分别随机选取,令,计算
Figure DEST_PATH_IMAGE336
,然后分别将
Figure DEST_PATH_IMAGE338
Figure DEST_PATH_IMAGE340
发送给PKG
Figure 394638DEST_PATH_IMAGE320
2)令
Figure DEST_PATH_IMAGE342
,PKG并不知道
Figure DEST_PATH_IMAGE344
的构造。PKG
Figure 823663DEST_PATH_IMAGE320
在得到
Figure DEST_PATH_IMAGE346
后计算其主密钥
Figure DEST_PATH_IMAGE348
Figure DEST_PATH_IMAGE350
3)同样地,PKG
Figure 284731DEST_PATH_IMAGE298
,PKG
Figure 448996DEST_PATH_IMAGE300
,PKG
Figure 690621DEST_PATH_IMAGE302
可以为PKG
Figure DEST_PATH_IMAGE352
计算主密钥
Figure DEST_PATH_IMAGE354
Figure DEST_PATH_IMAGE356
事实上,这7个主密钥
Figure DEST_PATH_IMAGE358
也构成了一个基于多项式函数
Figure 605226DEST_PATH_IMAGE342
的(4,7)门限,即必须且只需其中的4个主密钥就可以计算出一个有效的私钥。
KeyGen-3(
Figure DEST_PATH_IMAGE360
):该阶段由等级2中的任意4个KGC完成,我们不妨假设由PKG
Figure 983117DEST_PATH_IMAGE320
、PKG
Figure DEST_PATH_IMAGE362
、PKG
Figure DEST_PATH_IMAGE364
、PKG
Figure DEST_PATH_IMAGE366
来计算密钥。
为了计算身份为
Figure DEST_PATH_IMAGE368
的用户私钥
Figure DEST_PATH_IMAGE370
,完成以下步骤:
1)PKG
Figure DEST_PATH_IMAGE372
Figure DEST_PATH_IMAGE374
随机选取
Figure DEST_PATH_IMAGE376
,计算
Figure DEST_PATH_IMAGE378
,然后分别将结果发送给用户。
2)用户在得到4部分密钥后计算其私钥
Figure DEST_PATH_IMAGE380
其中
Figure DEST_PATH_IMAGE382
显然
Figure 898377DEST_PATH_IMAGE370
是公钥
Figure DEST_PATH_IMAGE384
对应的一个有效的私钥。
Encrypt(params,ID,M):为了用公钥
Figure 361719DEST_PATH_IMAGE368
加密消息
Figure 706113DEST_PATH_IMAGE172
,随机选取
Figure 141774DEST_PATH_IMAGE174
,输出
Figure DEST_PATH_IMAGE386
Decrypt(
Figure DEST_PATH_IMAGE388
):为了用私钥
Figure 647841DEST_PATH_IMAGE370
解密密文
Figure 801742DEST_PATH_IMAGE090
,令
Figure DEST_PATH_IMAGE390
Figure DEST_PATH_IMAGE392
,解密计算如下
Figure DEST_PATH_IMAGE394
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。 

Claims (1)

1.一种基于等级身份加密的密钥门限算法,其特征在于:该算法包括参数建立模块、私钥计算模块、加密模块和解密模块,假设等级身份加密的最大等级为                                               
Figure 2012101092622100001DEST_PATH_IMAGE002
,等级i
Figure 2012101092622100001DEST_PATH_IMAGE004
个私钥生成中心KGC,身份公钥为
Figure 2012101092622100001DEST_PATH_IMAGE006
,其中
Figure 2012101092622100001DEST_PATH_IMAGE008
,各模块按如下方法实施:
所述参数建立模块,根据输入的一组秘密参数,输出主***参数和主密钥,所述主密钥由最高等级的KGC管理;
所述私钥计算模块,由等级为i-1的n i-1个KGC计算等级i的私钥,所述KGC构成(m i-1,  n i-1)门限:输入公共参数、身份公钥ID、任意m i-1个上级主密钥
Figure 2012101092622100001DEST_PATH_IMAGE010
,输出ID所对应的主密钥
Figure 2012101092622100001DEST_PATH_IMAGE012
和用户私钥
Figure 2012101092622100001DEST_PATH_IMAGE014
,所述主密钥
Figure 893810DEST_PATH_IMAGE012
分别由n i 个等级为i的KGC管理,所述KGC构成(m i , n i )门限;
所述加密模块,用公钥ID加密数据M,返回密文C
所述解密模块,用私钥SK ID 对密文C进行解密,返回明文M
CN2012101092622A 2012-04-11 2012-04-11 基于等级身份加密的密钥门限算法 Pending CN102594570A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2012101092622A CN102594570A (zh) 2012-04-11 2012-04-11 基于等级身份加密的密钥门限算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012101092622A CN102594570A (zh) 2012-04-11 2012-04-11 基于等级身份加密的密钥门限算法

Publications (1)

Publication Number Publication Date
CN102594570A true CN102594570A (zh) 2012-07-18

Family

ID=46482795

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012101092622A Pending CN102594570A (zh) 2012-04-11 2012-04-11 基于等级身份加密的密钥门限算法

Country Status (1)

Country Link
CN (1) CN102594570A (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103354498A (zh) * 2013-05-31 2013-10-16 北京鹏宇成软件技术有限公司 一种基于身份的文件加密传输方法
CN103973449A (zh) * 2014-04-23 2014-08-06 南通大学 可证明安全的基于属性的在线/离线加密方法
CN104320249A (zh) * 2014-11-04 2015-01-28 马鞍山城智信息技术有限公司 一种基于身份的抗弹性泄漏加密方法和***
CN104683098A (zh) * 2013-11-29 2015-06-03 ***通信集团公司 一种保密通信业务的实现方法、设备及***
CN105339995A (zh) * 2013-07-18 2016-02-17 日本电信电话株式会社 解密装置、解密能力提供装置、其方法、以及程序
CN106027245A (zh) * 2016-07-22 2016-10-12 中国工商银行股份有限公司 密钥共享方法及装置
CN107248909A (zh) * 2017-03-16 2017-10-13 北京百旺信安科技有限公司 一种基于sm2算法的无证书安全签名方法
CN107689867A (zh) * 2017-09-08 2018-02-13 南相浩 一种在开放环境下的密钥保护方法和***
CN110166239A (zh) * 2019-06-04 2019-08-23 成都卫士通信息产业股份有限公司 用户私钥生成方法、***、可读存储介质及电子设备
CN111327415A (zh) * 2018-12-13 2020-06-23 航天信息股份有限公司 一种联盟链数据保护方法及装置
TWI702820B (zh) * 2019-05-03 2020-08-21 開曼群島商現代財富控股有限公司 具分級機制的秘密共享簽章系統及其方法
CN112995159A (zh) * 2021-02-07 2021-06-18 北京声智科技有限公司 信息处理方法、装置、终端及计算机可读存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5200999A (en) * 1991-09-27 1993-04-06 International Business Machines Corporation Public key cryptosystem key management based on control vectors

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5200999A (en) * 1991-09-27 1993-04-06 International Business Machines Corporation Public key cryptosystem key management based on control vectors

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘中仁: "具有等级结构的身份密码体制研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103354498B (zh) * 2013-05-31 2016-09-28 北京创世泰克科技股份有限公司 一种基于身份的文件加密传输方法
CN103354498A (zh) * 2013-05-31 2013-10-16 北京鹏宇成软件技术有限公司 一种基于身份的文件加密传输方法
CN105339995B (zh) * 2013-07-18 2018-04-06 日本电信电话株式会社 解密装置、解密能力提供装置、其方法、以及记录介质
CN105339995A (zh) * 2013-07-18 2016-02-17 日本电信电话株式会社 解密装置、解密能力提供装置、其方法、以及程序
CN104683098A (zh) * 2013-11-29 2015-06-03 ***通信集团公司 一种保密通信业务的实现方法、设备及***
CN103973449B (zh) * 2014-04-23 2017-05-17 南通大学 可证明安全的基于属性的在线/离线加密方法
CN103973449A (zh) * 2014-04-23 2014-08-06 南通大学 可证明安全的基于属性的在线/离线加密方法
CN104320249B (zh) * 2014-11-04 2017-09-19 马鞍山城智信息技术有限公司 一种基于身份的抗弹性泄漏加密方法
CN104320249A (zh) * 2014-11-04 2015-01-28 马鞍山城智信息技术有限公司 一种基于身份的抗弹性泄漏加密方法和***
CN106027245A (zh) * 2016-07-22 2016-10-12 中国工商银行股份有限公司 密钥共享方法及装置
CN106027245B (zh) * 2016-07-22 2019-05-07 中国工商银行股份有限公司 密钥共享方法及装置
CN107248909A (zh) * 2017-03-16 2017-10-13 北京百旺信安科技有限公司 一种基于sm2算法的无证书安全签名方法
CN107689867A (zh) * 2017-09-08 2018-02-13 南相浩 一种在开放环境下的密钥保护方法和***
CN107689867B (zh) * 2017-09-08 2019-12-10 晋商博创(北京)科技有限公司 一种在开放环境下的密钥保护方法和***
CN111327415A (zh) * 2018-12-13 2020-06-23 航天信息股份有限公司 一种联盟链数据保护方法及装置
TWI702820B (zh) * 2019-05-03 2020-08-21 開曼群島商現代財富控股有限公司 具分級機制的秘密共享簽章系統及其方法
CN110166239A (zh) * 2019-06-04 2019-08-23 成都卫士通信息产业股份有限公司 用户私钥生成方法、***、可读存储介质及电子设备
CN112995159A (zh) * 2021-02-07 2021-06-18 北京声智科技有限公司 信息处理方法、装置、终端及计算机可读存储介质
CN112995159B (zh) * 2021-02-07 2022-04-08 北京声智科技有限公司 信息处理方法、装置、终端及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN102594570A (zh) 基于等级身份加密的密钥门限算法
Lin et al. Secure threshold multi authority attribute based encryption without a central authority
Li et al. Privacy-aware attribute-based encryption with user accountability
Han et al. Identity-based data storage in cloud computing
Chen et al. Fully secure attribute-based systems with short ciphertexts/signatures and threshold access structures
Li et al. A2BE: Accountable attribute-based encryption for abuse free access control
CN103618728B (zh) 一种多机构中心的属性加密方法
Li et al. Certificateless hybrid signcryption
CN101977112B (zh) 一种基于神经网络混沌吸引子的公钥密码加密和解密方法
CN105025024B (zh) 一种基于无证书条件代理重加密***与方法
CN110120939B (zh) 一种基于异构***的可否认认证的加密方法和***
CN104320393B (zh) 重加密可控的高效属性基代理重加密方法
Kawai Outsourcing the re-encryption key generation: Flexible ciphertext-policy attribute-based proxy re-encryption
WO2012011564A1 (ja) 暗号化装置、復号装置、暗号化方法、復号方法、プログラム、及び記録媒体
Li et al. Certificateless hybrid signcryption
CN104393996B (zh) 一种基于无证书的签密方法和***
CN105763528B (zh) 一种混合机制下多重接收者匿名的加密装置
Shim Security models for certificateless signature schemes revisited
CN107154845A (zh) 一种基于属性的bgn型密文解密外包方案
CN109873699A (zh) 一种可撤销的身份公钥加密方法
CN110995412A (zh) 基于乘法群的无证书环签密方法
CN105339995B (zh) 解密装置、解密能力提供装置、其方法、以及记录介质
CN104796260B (zh) 一种满足前向安全的短密文身份基加密方法
CN104320249B (zh) 一种基于身份的抗弹性泄漏加密方法
CN109743162A (zh) 一种利用理想格操作进行身份属性匹配的加密方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20120718