CN101873214A - 广播加密中用于密钥生成、加密和解密的方法、设备 - Google Patents

广播加密中用于密钥生成、加密和解密的方法、设备 Download PDF

Info

Publication number
CN101873214A
CN101873214A CN200910137370A CN200910137370A CN101873214A CN 101873214 A CN101873214 A CN 101873214A CN 200910137370 A CN200910137370 A CN 200910137370A CN 200910137370 A CN200910137370 A CN 200910137370A CN 101873214 A CN101873214 A CN 101873214A
Authority
CN
China
Prior art keywords
key
node
encipherment scheme
interval
random number
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
CN200910137370A
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to CN200910137370A priority Critical patent/CN101873214A/zh
Priority to US12/761,852 priority patent/US8290154B2/en
Publication of CN101873214A publication Critical patent/CN101873214A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/09Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
    • H04H60/14Arrangements for conditional access to broadcast information or to broadcast-related services
    • H04H60/15Arrangements for conditional access to broadcast information or to broadcast-related services on receiving information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/09Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
    • H04H60/14Arrangements for conditional access to broadcast information or to broadcast-related services
    • H04H60/23Arrangements for conditional access to broadcast information or to broadcast-related services using cryptography, e.g. encryption, authentication, key distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0847Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving identity based encryption [IBE] schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/601Broadcast encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Storage Device Security (AREA)

Abstract

广播加密中用于密钥生成、加密和解密的方法、设备。通过加密方案的初始化方法生成公开参数和基于第一随机数的主密钥。针对二进制树中的每个叶节点,根据公开参数、叶节点的身份和用第二随机数替换第一随机数而获得的右主密钥,根据加密方案计算叶节点的右密钥集,右密钥集包括叶节点的右密钥和从根节点到叶节点的路径上所有节点的右兄弟节点的右密钥。根据公开参数、叶节点的身份和用第三随机数替换第一随机数而获得的左主密钥,根据加密方案计算叶节点的左密钥集,左密钥集包括叶节点的左密钥和从根节点到叶节点的路径上所有节点的左兄弟节点的左密钥。第二与第三随机数的和等于第一随机数。对于不同用户,第二随机数是不同的。

Description

广播加密中用于密钥生成、加密和解密的方法、设备
技术领域
本发明涉及广播加密,尤其涉及广播加密中用于密钥生成的方法和设备、用于加密的方法和设备、以及用于解密的方法、设备。
背景技术
广播加密是一个用户(广播者)基于一个用户集合S加密消息M以得到密文C,并且通过公共信道广播密文C,其中集合S是广播者可以任意选择的全体用户的子集,并且只有在集合S中的用户才能解密密文C以得到消息M。广播加密可应用于例如加密文件***的访问控制、***预订服务、DVD内容保护、数字视频广播DVB的条件接入等等。
已经有人提出各种广播加密方案。例如D.Boneh等人在“Collusionresistant broadcast encryption with short ciphertexts and private keys”,CRYPTO,258-275页,2005年提出两个广播加密方案:BW1方案和BW2方案。BW1方案的密钥大小是O(1),公钥大小是O(n);BW2方案的密钥大小是公钥大小是
Figure B2009101373709D0000012
C.Delerablee在“Identity-basedbroadcast encryption with constant size ciphertexts and private keys”,ASIACRYPT,200-215页,2007年中提出了一种基于身份的广播加密方案,其中密文、密钥是大小固定的,公钥大小是***所允许的最大合法接收用户的集合S大小的线性函数。Delerablee方案的缺点在于它在随机预言机模型下是可证安全的。其次在上述两个方案中,由于解密过程需要公开密钥的参与,因此传输广播密文时均需传输相应的公开密钥,因此其密文大小要么和全体用户人数成正比,要么则与***所允许的最大合法接收用户的集合S大小成正比。Liu和Tzeng在“Public key broadcastencryption with low number of keys and constant decryption time”,Public Key Cryptography,380-396页,2008年中提出了三个固定大小的公钥的广播加密方案。第一个方案密文大小是O(r),密钥大小是O(logn);第二个方案密文大小是O(r),密钥大小是O(log2n);第三个方案的密文大小是O(r/ε),密钥大小是O(log1+εn),这里r是被撤销解密权的用户的数量。Liu和Tzeng的方案的缺点同样是,它们是在随机预言机模型下可证安全的,并且传输带宽大小和r成正比。这意味着当被撤销解密权限的用户数量上涨到一定程度的时候,他们的方案就不适用了。
发明内容
鉴于现有技术的上述不足,本发明旨在提供一种广播加密中用于密钥生成的方法和设备、用于加密的方法和设备、以及用于解密的方法、设备,以至少部分地克服上述不足。
本发明的一个实施例是一种采用分层的基于身份的加密方案(HIBE)的密钥生成方法,包括:通过所述加密方案的初始化方法生成公开参数和主密钥,其中所述主密钥基于第一随机数;在通过同层叶节点表示用户身份的二进制树中,针对每个叶节点,根据所述公开参数、所述叶节点的身份和通过用第二随机数替换所述第一随机数而获得的右主密钥,根据所述加密方案计算所述叶节点的右密钥集,所述右密钥集包括所述叶节点的右密钥和从根节点到所述叶节点的路径上所有节点的右兄弟节点的右密钥;和针对所述叶节点,根据所述公开参数、所述叶节点的身份和通过用第三随机数替换所述第一随机数而获得的左主密钥,根据所述加密方案计算所述叶节点的左密钥集,所述左密钥集包括所述叶节点的左密钥和从根节点到所述叶节点的路径上所有节点的左兄弟节点的左密钥,其中所述第二随机数与第三随机数的和等于所述第一随机数,并且对于不同用户,第二随机数是不同的。
本发明的另一个实施例是一种采用分层的基于身份的加密方案的加密方法,包括:将有权解密广播内容的用户的身份划分为至少一个区间;针对每个所述区间,根据所述加密方案的公开参数、所述区间的下界和与所述区间相关的随机数,通过所述加密方案的加密方法来加密所述广播内容,以产生与所述下界相关的头信息和密文;和针对每个所述区间,根据所述加密方案的公开参数、所述区间的上界和与所述区间相关的随机数,通过所述加密方案的加密方法来加密所述广播内容,以产生与所述上界相关的头信息和密文,其中,所述加密方案的加密方法所采用的对称密钥基于所述随机数,并且各个所述区间的相关随机数互不相同。
本发明的另一个实施例是一种采用分层的基于身份的加密方案的解密方法,包括:接收有关有权解密广播内容的用户的身份所划分的区间的信息、与每个所述区间的下界相关的头信息和密文、以及与每个所述区间的上界相关的头信息和密文;找到接收用户的身份所在的一个所述区间,使得在通过同层叶节点表示用户身份的二进制树中,从根节点到所述区间的下界节点的路径上的一个节点的左密钥被包含在对应于接收用户的身份的接收节点的左密钥集中,从根节点到所述区间的上界节点的路径上的一个节点的右密钥被包含在所述接收节点的右密钥集中;根据所述公开参数、左密钥被包含在左密钥集中的节点的身份及该节点的左密钥,通过所述加密方案的密钥导出方法计算所述下界节点的左密钥;根据所述公开参数、右密钥被包含在右密钥集中的节点的身份及该节点的右密钥,通过所述加密方案的密钥导出方法计算所述上界节点的右密钥;根据与所述找到的区间的下界相关的头信息、相应下界节点的左密钥、下界和所述公开参数,通过所述加密方案的解密方法得到第一会话密钥;根据与所述找到的区间的上界相关的头信息、相应上界节点的右密钥、上界和所述公开参数,通过所述加密方案的解密方法得到第二会话密钥;根据所述第一会话密钥和第二会话密钥得到对称密钥;和用所述对称密钥解密与所述找到的区间相关的密文。
本发明的另一个实施例是一种采用分层的基于身份的加密方案的加密设备,包括:用户分组装置,其将有权解密广播内容的用户的身份划分为至少一个区间;第一加密装置,其针对每个所述区间,根据所述加密方案的公开参数、所述区间的下界和与所述区间相关的随机数,通过所述加密方案的加密方法来加密所述广播内容,以产生与所述下界相关的头信息和密文;和第二加密装置,其针对每个所述区间,根据所述加密方案的公开参数、所述区间的上界和与所述区间相关的随机数,通过所述加密方案的加密方法来加密所述广播内容,以产生与所述上界相关的头信息和密文,其中,所述加密方案的加密方法所采用的对称密钥基于所述随机数,并且各个所述区间的相关随机数互不相同。
本发明的另一个实施例是一种采用分层的基于身份的加密方案的密钥生成设备,包括:初始化装置,其通过所述加密方案的初始化方法生成公开参数和主密钥,其中所述主密钥基于第一随机数;右密钥集生成装置,其在通过同层叶节点表示用户身份的二进制树中,针对每个叶节点,根据所述公开参数、所述叶节点的身份和通过用第二随机数替换所述第一随机数而获得的右主密钥,根据所述加密方案计算所述叶节点的右密钥集,所述右密钥集包括所述叶节点的右密钥和从根节点到所述叶节点的路径上所有节点的右兄弟节点的右密钥;和左密钥集生成装置,其针对所述叶节点,根据所述公开参数、所述叶节点的身份和通过用第三随机数替换所述第一随机数而获得的左主密钥,根据所述加密方案计算所述叶节点的左密钥集,所述左密钥集包括所述叶节点的左密钥和从根节点到所述叶节点的路径上所有节点的左兄弟节点的左密钥,其中所述第二随机数与第三随机数的和等于所述第一随机数,并且对于不同用户,第二随机数是不同的。
本发明的另一个实施例是一种采用分层的基于身份的加密方案的解密设备,包括:接收装置,其接收有关有权解密广播内容的用户的身份所划分的区间的信息、与每个所述区间的下界相关的头信息和密文、以及与每个所述区间的上界相关的头信息和密文;搜索装置,其找到接收用户的身份所在的一个所述区间,使得在通过同层叶节点表示用户身份的二进制树中,从根节点到所述区间的下界节点的路径上的一个节点的左密钥被包含在对应于接收用户的身份的接收节点的左密钥集中,从根节点到所述区间的上界节点的路径上的一个节点的右密钥被包含在所述接收节点的右密钥集中;密钥派生装置,其根据所述公开参数、左密钥被包含在左密钥集中的节点的身份及该节点的左密钥,通过所述加密方案的密钥导出方法计算所述下界节点的左密钥,并且根据所述公开参数、右密钥被包含在右密钥集中的节点的身份及该节点的右密钥,通过所述加密方案的密钥导出方法计算所述上界节点的右密钥;和密钥恢复装置,其根据与所述找到的区间的下界相关的头信息、相应下界节点的左密钥、下界和所述公开参数,通过所述加密方案的解密方法得到第一会话密钥,根据与所述找到的区间的上界相关的头信息、相应上界节点的右密钥、上界和所述公开参数,通过所述加密方案的解密方法得到第二会话密钥,并且根据所述第一会话密钥和第二会话密钥得到对称密钥;和解密装置,其用所述对称密钥解密与所述找到的区间相关的密文。
在上述实施例中,加密方案可以是最大深度为
Figure B2009101373709D0000041
的二进制树加密(BTE)方案,其中公开参数包括从具有4d-1个元素的互相独立的函数族中随机选择的函数,n为用户的数目。
在上述实施例中,加密方案也可以是最大深度为
Figure B2009101373709D0000042
的Boneh-Boyen-Goh加密方案,其中n为用户的数目。
在上述实施例中,公开参数可以包括互不相同的第一个g3参数和第二个g3参数,其中第一个g3参数用于右密钥集的生成,第二个g3参数用于左密钥集的生成。
在本发明的上述实施例中,如果安全性在标准模型下规约到判定性双线性Diffie-Hellman指数假设上,那么公钥大小是O(logn),密文大小是O(k),密钥大小是O(logn)(如果引入随机预言模型,那么公钥大小可以变成常数),这里k表示区间的数目。由于公钥、密钥大小均与被撤销解密权的用户的数量无关,而密文大小依赖于通常总比r小的区间数目,可以比Liu和Tzeng的方案的效率高。例如当被撤销解密权限的用户数量上涨时,Liu和Tzeng的方案可能不再适用,但由于在这种情况下,合法用户对应的集合S仍然较小,因此相应所包含的区间数目仍然较小,因此本发明在这种情况下仍然适用。另一方面,本发明的上述实施例所实现的安全性是标准模型下的可证安全,比现有技术的随机预言模型下的可证安全更高。另外,本发明的上述实施例所基于的底层假设比现有技术所基于的假设更弱,因此也可提高安全性。
附图说明
参照下面结合附图对本发明实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。在附图中,相同的或对应的技术特征或部件将采用相同或对应的附图标记来表示。
图1是示出采用广播加密的广播***的一般构成的示意图。
图2是示出用于广播加密的用户设备的一般构成的示意图。
图3示出了根据本发明一个实施例的采用HIBE方案的密钥生成设备的示例性结构。
图4的示意图示出了包含8个用户的二进制树的例子
图5示出了根据本发明一个实施例的采用HIBE方案的密钥生成方法的流程图。
图6示出了根据本发明一个实施例的采用HIBE方案的加密设备的示例性结构。
图7示出了根据本发明一个实施例的采用HIBE方案的加密方法的流程图。
图8示出了根据本发明一个实施例的采用HIBE方案的解密设备的示例性结构。
图9示出了根据本发明一个实施例的采用HIBE方案的解密方法的流程图。
图10是示出其中实现本发明实施例的计算机的示例性结构的框图。
具体实施方式
下面参照附图来说明本发明的实施例。应当注意,为了清楚的目的,附图和说明中省略了与本发明无关的、本领域普通技术人员已知的部件和处理的表示和描述。
广播***和用户设备
图1是示出采用广播加密的广播***100的一般构成的示意图。如图1所示,广播***100包括用户管理子***101和发送子***102。
用户管理子***101管理注册到广播***100的用户的信息,以及为新注册的用户分配身份标识和密钥。用户管理子***101的密钥生成设备110负责加密方案的初始化,以及为用户生成密钥。通过初始化获得的数据和为用户生成的密钥被存储为密钥数据103。密钥生成设备110也可以独立于用户管理子***101或广播***100之外,并且也可以预先运行以进行初始化和密钥生成。为用户生成的密钥和解密所需的其它信息提供给用户设备。可通常通信介质(例如有线、无线通信等)、存储介质(例如光盘、存储器、磁盘等)、人工输入等手段将密钥和其它信息提供给用户设备。
当广播***100要进行内容广播时,发送子***102从内容源104获得要广播的内容,从预订信息105获得有权呈现(即解密)该内容的用户的信息。发送子***102的加密设备120从密钥数据103获得有关数据,针对有权解密的用户对内容进行加密,使得只能这些用户才能够解密内容。需要注意,内容的广播可以是任何广播形式,例如光盘的发布、网络上内容的发布、数字视频广播等。此外,加密设备120可以独立于发送子***102或广播***100之外,并且也可以预先运行以准备好加密的广播内容。
图2是示出用于广播加密的用户设备200的一般构成的示意图。如图2所示,用户设备200包括接收设备201和解密设备202。
接收设备201获得由例如通信介质或存储介质承载的加密广播内容。解密设备202利用用户注册时获得的密钥和相关信息对所获得的加密广播内容进行解密。如果该用户不是有权解密该加密广播内容的用户,则无法用其密钥和相关信息解密出正确的广播内容。取决于具体的应用,用户设备可以是机顶盒、电视机、移动终端、个人计算机等,并且解密出的广播内容可以被呈现给用户、存储或进行其它进一步的处理。
基于HIBE的区间加密-密钥生成
在HIBE方案中,可以用二进制树的节点来表示每个身份i=i1...it,其中,i1,...,it∈{0,1}。每个节点i有一个密钥SKi,其中根节点的密钥为主密钥或根密钥SKε=χα,其中ε表示空串,χ是双线性映射群G1的元素,α是一个随机数。根据节点i的密钥SKi能够计算出该节点的子节点i0(表示i连接0)和i1(表示i连接1)的密钥SKi0和SKi1。当对消息M进行加密时,根据公开参数、有权解密的用户的身份i生成头信息HDR和密文C=M·d,其中d为对称密钥。用户i收到头信息HDR和密文C后,根据公开参数和为其分配的密钥SKi从HDR中恢复出对称密钥d,然后用对称密钥d计算消息M=C/d,从而完成解密。对称密钥d通常具有双线性映射
Figure B2009101373709D0000071
的形式,其中g是从双线性映射群G1中随机选择的元素,γ是一个随机数。例如Boneh等人在“Hierarchical Identity Based Encryption with Constant SizeCiphertext”,Cryptology ePrint Archive,Report 2005/015,2005中描述了一种HIBE方案,即Boneh-Boyen-Goh加密方案,其中对称密钥d为
Figure B2009101373709D0000072
g1=gα、g2为公开参数,主密钥SKε=g2 α
图3示出了根据本发明一个实施例的采用HIBE方案的密钥生成设备300的示例性结构。
如图3所示,密钥生成设备300包括初始化装置301、右密钥集生成装置302和左密钥集生成装置303。
初始化装置301通过HIBE方案的初始化方法生成公开参数(也称为主公钥PK)和主密钥SKε=χα。可以看出,主密钥SKε基于第一随机数α。所属领域的技术人员明白,x也是公开参数之一,并且对于不同的HIBE方案,可定义有不同的公开参数。
如前所述,可以用二进制树的节点来表示身份。在本发明的实施例中,用二进制树中的同层叶节点来表示用户身份。例如图4的示意图示出了包含8个用户的二进制树的例子。在图4中,圆圈表示节点。节点左边的字符串表示节点所代表的身份i。节点i附近的符号SKi表示为该身份分配的密钥。节点408、409、410、411、412、413、414、415所代表的身份为用户1-8的身份。
右密钥集生成装置302在通过同层叶节点表示用户身份的二进制树(例如图4所示的二进制树)中,针对每个叶节点i,根据公开参数PK、叶节点i的身份和通过用第二随机数αi替换第一随机数α而获得的右主密钥SKε,R=χαi,根据HIBE方案,即通过HIBE方案的密钥生成方法计算叶节点i的右密钥集DRi。右密钥集DRi包括叶节点i的右密钥SKi,R和从根节点到叶节点i的路径上所有节点的右兄弟节点p的右密钥SKp,R。以图4中的叶节点413为例,其右密钥集DR包含SK101,R、SK11,R。可以根据右主密钥直接计算各个节点的右密钥。根据所计算的各个节点的右密钥,可以组成各个叶节点的右密钥集。需要注意,对于不同用户,随机数αi也是不同的。
左密钥集生成装置303在通过同层叶节点表示用户身份的二进制树(例如图4所示的二进制树)中,针对每个叶节点i,根据公开参数PK、叶节点i的身份和通过用第三随机数α-αi替换第一随机数α而获得的左主密钥SKε,L=gα-αi,根据HIBE方案,即通过HIBE方案的密钥生成方法计算叶节点i的左密钥集DLi。左密钥集DLi包括叶节点i的左密钥SKi,L和从根节点到叶节点i的路径上所有节点的左兄弟节点p的左密钥SKp,L。以图4中的叶节点412为例,其左密钥集DL包含SK100,L、SK0,L。可以根据左主密钥直接计算各个节点的左密钥。根据所计算的各个节点的左密钥,可以组成各个叶节点的左密钥集。
可以看出,第二随机数αi与第三随机数α-αi的和等于第一随机数α。
虽然前面参照图4所示的例子来说明右密钥集生成装置302和左密钥集生成装置303的处理,然而应当注意,对于图4所示的每个节点,右密钥集生成装置302和左密钥集生成装置303所生成的密钥分别是基于右主密钥和左主密钥来生成的。
图5示出了根据本发明一个实施例的采用HIBE方案的密钥生成方法的流程图。
如图5所示,方法从步骤500开始。在步骤501,通过HIBE方案的初始化方法生成公开参数PK和主密钥SKε=xα。可以看出,主密钥SKε基于第一随机数α。
如前参照图4所述,可以用二进制树的节点来表示身份,并且用二进制树中的同层叶节点来表示用户身份。
在步骤502,在通过同层叶节点表示用户身份的二进制树中,针对每个叶节点i,根据公开参数PK、叶节点i的身份和通过用第二随机数αi替换第一随机数α而获得的右主密钥SKε,R=χαi,根据HIBE方案,即通过HIBE方案的密钥生成方法计算叶节点i的右密钥集DR。右密钥集DR包括叶节点i的右密钥SKi,R和从根节点到叶节点i的路径上所有节点的右兄弟节点p的右密钥SKp,R。可以根据右主密钥直接计算各个节点的右密钥。根据所计算的各个节点的右密钥,可以组成各个叶节点的右密钥集。需要注意,对于不同用户,随机数αi也是不同的。
在步骤503,在通过同层叶节点表示用户身份的二进制树中,针对每个叶节点i,根据公开参数PK、叶节点i的身份和通过用第三随机数α-αi替换第一随机数α而获得的左主密钥SKε,L=xα-αi,根据HIBE方案,即通过HIBE方案的密钥生成方法计算叶节点i的左密钥集DL。左密钥集DL包括叶节点i的左密钥SKi,L和从根节点到叶节点i的路径上所有节点的左兄弟节点p的左密钥SKp,L。可以根据左主密钥直接计算各个节点的左密钥。根据所计算的各个节点的左密钥,可以组成各个叶节点的左密钥集。接着方法在步骤504结束。
可以看出,第二随机数αi与第三随机数α-αi的和等于第一随机数α。
基于HIBE的区间加密-加密
图6示出了根据本发明一个实施例的采用HIBE方案的加密设备600的示例性结构。
如图6所示,加密设备600包括用户分组装置601、第一加密装置602和第二加密装置603。
用户分组装置601将有权解密广播内容(即消息M)的用户的身份划分为至少一个区间NIj=[lj,rj]。以图4所示的用户身份为例,假设具有身份“000”、“010”、“011”、“100”、“110”、“111”的用户有权解密广播内容,则可以将这些用户划分为三个区间,即[000,000]、[010,100]、[110,111]。可以看出,每个区间不含无权解密广播内容的用户身份。
对于所划分出的每个区间NIj,第一加密装置602根据HIBE方案的公开参数PK、区间NIj的下界lj和与区间NIj相关的随机数γj(即对称密钥d所基于的随机数),通过HIBE方案的加密方法来加密广播内容,以产生与下界lj相关的头信息HDRj,L和密文Cj,L。在加密时,所采用的对称密钥dj
Figure B2009101373709D0000101
对于所划分出的每个区间NIj,第二加密装置603根据HIBE方案的公开参数PK、区间NIj的上界rj和与区间NIj相关的随机数γj,通过HIBE方案的加密方法来加密广播内容,以产生与上界rj相关的头信息HDRj,R和密文Cj,R。在加密时,所采用的对称密钥为
Figure B2009101373709D0000102
需要注意,各个区间NIj的相关随机数γj互不相同。
图7示出了根据本发明一个实施例的采用HIBE方案的加密方法的流程图。
如图7所示,方法从步骤700开始。在步骤701,将有权解密广播内容(即消息M)的用户的身份划分为至少一个区间NIj=[lj,rj]。
在步骤702,对于所划分出的每个区间NIj,根据HIBE方案的公开参数PK、区间NIj的下界lj和与区间NIj相关的随机数γj(即对称密钥d所基于的随机数),通过HIBE方案的加密方法来加密广播内容,以产生与下界lj相关的头信息HDRj,L和密文Cj,L。在加密时,所采用的对称密钥为
Figure B2009101373709D0000103
在步骤703,对于所划分出的每个区间NIj,第二加密装置603根据HIBE方案的公开参数PK、区间NIj的上界rj和与区间NIj相关的随机数γj,通过HIBE方案的加密方法来加密广播内容,以产生与上界ri相关的头信息HDRj,R和密文Cj,R。在加密时,所采用的对称密钥为
需要注意,各个区间NIj的相关随机数γj互不相同。
接着方法在步骤704结束。
基于HIBE的区间加密-解密
图8示出了根据本发明一个实施例的采用HIBE方案的解密设备800的示例性结构。
如图8所示,解密设备800包括接收装置801、搜索装置802、密钥派生装置803、密钥恢复装置804和解密装置805。
接收装置801接收有关有权解密广播内容(即消息M)的用户的身份所划分的区间NIj的信息、与每个区间NIj的下界lj相关的头信息HDRj,L和密文Cj,L、以及与每个区间NIj的上界rj相关的头信息HDRj,R和密文Cj,R
搜索装置802从这些所划分的区间NIj中,找到接收用户的身份i所在的一个区间NIk,使得在通过同层叶节点表示用户身份的二进制树(例如图4所示的二进制树)中,从根节点到区间NIk的下界节点lk的路径上的一个节点m的左密钥SKm,L被包含在对应于接收用户的身份i的接收节点的左密钥集DLi中,从根节点到区间NIk的上界节点rk的路径上的一个节点n的右密钥SKn,R被包含在接收节点的右密钥集DRi中。以图4所示的用户身份为例,假设区间划分为[000,000]、[010,100]、[110,111],用户011为接收用户,用户011的左密钥集DL={SK011,L,SK010,L,SK00,L},右密钥集DR={SK011,R,SK1,R}。所找到的区间为[010,100],节点m是附图标记410指示的节点010,节点n是附图标记403指示的节点1。
密钥派生装置803根据公开参数PK、左密钥被包含在左密钥集DLi中的节点的身份m及该节点的左密钥SKm,L,通过HIBE方案的密钥导出方法计算下界节点lk的左密钥,并且根据公开参数PK、右密钥被包含在右密钥集DRi中的节点的身份n及该节点的右密钥SKn,R,通过HIBE方案的密钥导出方法计算上界节点rk的右密钥。例如在前面的例子中,根据节点1的右密钥SK1,R可导出节点100的右密钥SK100,R
密钥恢复装置804根据与找到的区间NIk的下界lk相关的头信息HDRk、相应下界节点的左密钥、下界lk和公开参数PK,通过HIBE方案的解密方法得到第一会话密钥
Figure B2009101373709D0000111
根据与找到的区间NIk的上界相关的头信息、相应上界节点的右密钥、上界rk和公开参数PK,通过HIBE方案的解密方法得到第二会话密钥
Figure B2009101373709D0000112
并且根据第一会话密钥和第二会话密钥得到对称密钥
Figure B2009101373709D0000113
Figure B2009101373709D0000114
即对称密钥dk
解密装置804用所得到的对称密钥dk解密与找到的区间NIk相关的密文,以得到消息M。
图9示出了根据本发明一个实施例的采用HIBE方案的解密方法的流程图。
如图9所示,方法从步骤900开始。在步骤901,接收有关有权解密广播内容(即消息M)的用户的身份所划分的区间NIj的信息、与每个区间NIj的下界lj相关的头信息HDRj,L和密文Cj,L、以及与每个区间NIj的上界rj相关的头信息HDRj,R和密文Cj,R
在步骤902,从这些所划分的区间NIj中,找到接收用户的身份i所在的一个区间NIk,使得在通过同层叶节点表示用户身份的二进制树(例如图4所示的二进制树)中,从根节点到区间NIk的下界节点lk的路径上的一个节点m的左密钥SKm,L被包含在对应于接收用户的身份i的接收节点的左密钥集DLi中,从根节点到区间NIk的上界节点rk的路径上的一个节点n的右密钥SKn,R被包含在接收节点的右密钥集DRi中。
在步骤903,根据公开参数PK、左密钥被包含在左密钥集DLi中的节点的身份m及该节点的左密钥SKm,L,通过HIBE方案的密钥导出方法计算下界节点lk的左密钥。
在步骤904,根据公开参数PK、右密钥被包含在右密钥集DRi中的节点的身份n及该节点的右密钥SKn,R,通过HIBE方案的密钥导出方法计算上界节点rk的右密钥。
在步骤905,根据与找到的区间NIk的下界lk相关的头信息HDRk、相应下界节点的左密钥、下界lk和公开参数PK,通过HIBE方案的解密方法得到第一会话密钥
Figure B2009101373709D0000121
在步骤906,根据与找到的区间NIk的上界相关的头信息、相应上界节点的右密钥、上界rk和公开参数PK,通过HIBE方案的解密方法得到第二会话密钥
Figure B2009101373709D0000122
在步骤907,根据第一会话密钥和第二会话密钥得到对称密钥
Figure B2009101373709D0000123
即对称密钥dk
在步骤908,用所得到的对称密钥dk解密与找到的区间NIk相关的密文,以得到消息M。接着方法在步骤909结束。
根据本发明的实施例,能够区分出在区间之内和区间之外的用户的解密能力。具体地讲,对于一个用户而言,该用户只能得到以其身份为上界的其它身份的用户的左密钥,以及以其身份为下界的其它身份的用户的右密钥。如果已知该用户的身份在一个区间内,则能够得到该区间的下界的左密钥,以及该区间的上界的右密钥。因而能够恢复出针对该区间的对称密钥,从而解密相应的密文。而对于未在任意一个区间内的用户,该用户无法全部获得任何一个区间的下界的左密钥和上界的右密钥,因而无法获得任何区间的对称密钥,从而解密密文。由于在分配用户的右私钥时嵌入随机数αi,在分配用户的左私钥时嵌入随机数(α-αi)。这样,只有同一个用户才能合成的主密钥χα。由于每个用户所嵌入的随机数随用户不同而不同,因此不同用户之间的共谋攻击变得不可能。由于每个区间的密文被嵌入一个唯一的随机数γj,这样在最终的解密中随机数α将被这些随机数所扰乱。由于被扰乱的随机数与正确随机数相同的概率可忽略不计,因此能够防止在存在多个区间的情况下的单用户攻击,例如用户100可以解密对应区间[010,011]的下界所对应的部分密文,同时可以解密对应区间[101,111]上界对应的部分密文,那么有可能通过这两次解密所得的部分密文来合成区间[010,110]的对称密钥。
下面将结合具体的HIBE方案来说明本发明的实施例的具体实例。
实例一
准备知识:二进制树加密方案(BTE)
二进制树加密方案可以被视为HIBE方案的一个特例。在二进制树加密方案中,主公钥(即公开参数)PK和树T关联。树T的每一个节点对应一个密钥。消息对应某个节点加密。加密时使用PK和节点的名字(即身份)。所得的密文可以用节点对应的密钥解密。用一个节点的密钥可以计算出它的子节点的密钥。
具体地,节点i可以表示成i1...it,其中,i1,...,it∈{0,1}。节点i的子节点有两个,分别为i0(i连接0)和i1(i连接1)。用d表示树的深度。
用i|j表示字符串i(i=i1...it)的j比特前缀。对于任意一个字符串,i|0=ε。ε表示空串。
用Hd表示2d+1个互相独立的函数族,定义域是{0,1}≤d,值域是G1。这里,G1是一个阶为素数q的双线性映射群。
二进制树加密方案由以下五个算法组成:
Gen(1k,1d):此算法生成两个阶均为素数q的双线性映射群G1,G2。生成双线性映射
Figure B2009101373709D0000141
从G1中随机选择一个元素g。从Zq里随机选择元素α。令Q=gα。从Hd中随机选择一个函数H。主公钥PK是
Figure B2009101373709D0000142
树T的根节点的密钥是SKε=H(ε)α
非空节点i=i1...it的密钥包括t+1个群元素,记为
Figure B2009101373709D0000143
其中
Figure B2009101373709D0000144
节点ε的密钥是SKε=Sε=H(ε)α
Der(PK,i,SKi):此算法输出节点i的两个子节点i0和i1的密钥。令i=i1...it。将SKi分解为
Figure B2009101373709D0000145
从Zq里随机选择元素ρi。令
Figure B2009101373709D0000147
Figure B2009101373709D0000148
输出
Figure B2009101373709D00001410
KeyGen(PK,i,SKε):将i表示为i1...it,此算法输出
Figure B2009101373709D00001411
这里
Figure B2009101373709D00001412
j={0,1,...,t-1},
Figure B2009101373709D00001413
Figure B2009101373709D00001414
j={0,1,...,t-1},是随机从Zq里选择的。
Enc(PK,i,M):这里M∈G2。将i表示为i1...it。此算法从Zq里随机选择γ。输出C=(gγ,H(i|1)γ,H(i|2)γ,...,H(i)γ,M·d),对称密钥
Figure B2009101373709D00001415
Dec(PK,i,SKi,C):将i表示为i1...it。将SKi表示为
Figure B2009101373709D00001416
将C表示为(U0,U1,...,Ut,V)。此算法输出M=V/d,这里
d = e ^ ( U 0 , S i ) Π j = 1 t e ^ ( U j , R i | j - 1 ) .
在基于二进制树加密方案的例子中,给定消息和一个区间,用区间的两个端点加密。所基于的是以下事实:从区间[a,b]内的一点P出发,向左能到a点,向右能到b点。但是从[a,b]外的一点Q出发,或者向左不能到a点,或者向右不能到b点。因此可以区别区间内的点和区间外的点。
使用两个二进制加密***。通过右密钥生成装置302实现第一个二进制加密***。通过左密钥生成装置303实现第二个二进制加密***。
在第一个***S1中,能解密点a的人能够解密比a大的点。在第二个***S2中,能解密点a的人能够解密比a小的点。S1的实现方法是,对完全二进制树的每个叶节点赋予[1,n]中的整数(n=2d,d是树的深度)。根节点赋值为0。如果节点P的赋值为x,那么P的左子节点的赋值为2x,P的右子节点的赋值为2x+1。如果用户U具有整数u对应的密钥,令P1,P2,...,Ps为从根节点通到u的父节点的路径上的所有节点(P1是树的根节点,Ps是u的父节点)。那么U也有P1,P2,...,Ps的右子节点对应的密钥。S2的实现方法和S1相同,在S2中,U也有P1,P2,...,Ps的左子节点对应的密钥。
从这里开始,i|rj表示i|j的右兄弟节点(如果i|j是父节点的左子节点),i|lj表示i|j的左兄弟节点(如果i|j是父节点的右子节点)。
在这个例子中,初始化装置301运行BTE方案的Gen(1k,1d),
Figure B2009101373709D0000151
得到主公钥
Figure B2009101373709D0000152
Hd是一个具有4d-1个元素的互相独立的函数集合,函数的定义域为{0,1}≤d,值域为G1。H从Hd中随机选取。还得到二进制树的根密钥SKε=H(ε)α
对于用户i,右密钥生成装置302选择随机数αi,运行
Figure B2009101373709D0000153
得到叶节点i的右密钥SKi,得到从根节点到节点i的路径上的所有节点i|j的右兄弟节点i|rj对应的右密钥
Figure B2009101373709D0000154
这些密钥构成“右密钥集”DRi。左密钥生成装置303运行
Figure B2009101373709D0000155
得到叶节点i的密钥SKi,以及从根节点到节点i的路径上的所有节点i|j的左兄弟节点i|lj对应的左密钥这些密钥构成“左密钥集”DLi。用户密钥为Di={DLi,DRi},
Figure B2009101373709D0000157
Figure B2009101373709D0000158
用户分组装置601将有权解密的用户划分为k个区间的并集
Figure B2009101373709D0000159
NIj=[lj,rj],1≤l1≤r1<l2≤r2<…<lk≤rk≤n.。
在对消息M加密时,从Zq中随机选择γj,j=1,2,…,k,计算对称密钥具体地,对于每一个NIj=[lj,rj],第一加密装置602运行Enc(PK,lj,M),并且第二加密装置603运行Enc(PK,rj,M),从而输出
Figure B2009101373709D00001511
得到头信息
Figure B2009101373709D00001513
和密文CM={CMj},CMj=M·Kj,Kj从对称密钥空间K中随机选取。
接收装置801获得头信息和密文。
假设接收用户的身份为i,ζ≥i,η≤i是自然数,η的二进制表示为η1η2…ηd,ζ的二进制表示为ζ1ζ2…ζd。搜索装置802找到一个j,满足1≤j≤d,且
Figure B2009101373709D0000161
是DLi的一部分,并且找到另一个j,满足1≤j≤d,且
Figure B2009101373709D0000162
是DRi的一部分。
针对找到的第一个j,密钥派生装置803运行Der(PK,i,SKi),生成密钥SKη是dlη。针对找到的第二个j,密钥派生装置803运行Der(PK,i,SKi),生成
Figure B2009101373709D0000164
SKζ是drζ
假设i在区间NIj中,NIj=[lj,rj],1≤j≤k。密钥恢复装置804运行
Figure B2009101373709D0000165
得到第二会话密钥
Figure B2009101373709D0000166
这里 dr r j = [ R r j | 0 = g ρ r j | 0 , . . . , R r j | d - 1 = g ρ r j | d - 1 , H ( ϵ ) α i · Π i = 1 d H ( r j | i ) ρ r j | j - 1 ] ,
Figure B2009101373709D0000168
密钥恢复装置804还运行
Figure B2009101373709D0000169
得到第一会话密钥
Figure B2009101373709D00001610
这里 dl l j = [ R l j | 0 = g ρ l j | 0 , . . . , R l j | d - 1 = g ρ l j | d - 1 , H ( ϵ ) α - α i · Π i = 1 d H ( l j | i ) ρ l j | i - 1 ] ,
Figure B2009101373709D00001612
密钥恢复装置804再用d1和d2计算对称密钥
Figure B2009101373709D00001613
解密装置805用对称密钥来解密密文。
实例二
预备知识:Boneh-Boyen-Goh加密方案
令G表示一个p阶群(p是素数),e:G×G →G1表示一个双线性映射。身份ID是
Figure B2009101373709D0000171
的元素,记为
Boneh-Boyen-Goh加密方案由以下五个算法组成:
Setup(l):从G中随机选择g,从Zp中随机选择α,令g1=gα。随机从G中选择元素g2,g3,h1,…,hl。***公开参数PK=(g,g1,g2,g3,h1,…,hl),主密钥为
Figure B2009101373709D0000173
KevGen(dID|k-1,ID):从Zp中随机选择r,输出 d ID = ( g 2 α ( h 1 I 1 . . . h k I k g 3 ) r , g r , h k + 1 r , . . . , h l r ) .
Der(dID|k-1):用dID|k-1算出dID。例如,
Figure B2009101373709D0000175
则从Zp中随机选择t, d ID = ( a 0 b k I k ( h 1 I 1 . . . h k I k g 3 ) t , a 1 g t , b k + 1 h k + 1 t , . . . , b l h l t ) .
Encrypt(PK,ID,M):这里消息M∈G1
Figure B2009101373709D0000177
算法从Zp中随机选择s,输出
Decrypt(dID,CT):令(A,B,C)=CT,(a0,a1,bk+1,…,bl)=dID,输出Ae(a1,C)/e(B,a0)。
在基于Boneh-Boyen-Goh加密方案的例子中,初始化装置301运行Setup(1d)(这d满足n=2d),得到公开参数PK和主密钥master-key。***公开参数是PK=(g,g1=gα,g2,gL3,gR3,hL1,...,hLd,hR1,...,hRd)。
每一个[1,n]中的整数i与二进制树的第i个叶子节点关联(二进制树的叶子节点从左到右依次编号为1,2,3,...,n)。对于第i个接收者,右密钥生成装置302选择随机数αi,然后将
Figure B2009101373709D0000179
作为主密钥,将(g,g2,gR3,hR1,...,hRd)作为公开参数,运行KeyGen(dID|k-1,ID),得到叶子节点i对应的右密钥di,和从根节点到叶子节点的路径上的所有节点的右子节点对应的右密钥
Figure B2009101373709D00001710
这些右密钥构成DRi
左密钥生成装置303将作为主密钥,将(g,g2,gL3,hL1,...,hLd)作为公开参数,运行KeyGen(dID|k-1,ID),得到叶子节点i对应的左密钥di,和从根节点到叶子节点的路径上的所有节点的左子节点对应的左密钥这些密钥构成DLi。第i个接收者的密钥为Di={DLi,DRi}。
用户分组装置601将有权解密的用户划分为k个区间的并集
Figure B2009101373709D00001713
Figure B2009101373709D00001714
在对消息M加密时,从Zq中随机选择γj,j=1,2,…,k,得到
Figure B2009101373709D0000181
j=1,2,…,k。具体地,对于每一个NIj,第一加密装置602运行Encrypt((g,g1,g2,gL3,hL1,...,hLd),lj),第二加密装置603运行Encrypt((g,g1,g2,gR3,hR1,...,hRd),rj),分别得到
Figure B2009101373709D0000182
从而得到头信息
Figure B2009101373709D0000184
和密文CM={CMj},CMj=M·Kj
接收装置801获得头信息和密文。
假定η≤i,ζ≥i,η≤i是自然数,η的二进制表示为η1…ηd,ζ的二进制表示为ζ1…ζd。搜索装置802找到一个整数j,满足1≤j≤d,且
Figure B2009101373709D0000185
是DLi的一部分(这里η|j=η1…ηj)。搜索装置802还找到另一个整数j,满足1≤j≤d,且
Figure B2009101373709D0000186
是DRi的一部分(这里ζ|j=ζ1…ζd)。
对于第一个整数j,密钥派生装置803运行Der(),得到
Figure B2009101373709D0000187
令dlη=dη。对于第二个整数j,密钥派生装置803运行Der(),得到
Figure B2009101373709D0000188
令drζ=dζ
假定i∈NIj=[lj,rj],1≤j≤k,密钥派生装置803得到
Figure B2009101373709D0000189
Figure B2009101373709D00001810
lj的二进制表示为lj1,…,ljd,rj的二进制表示为rj1,…,rjd。密钥恢复装置804运行
Figure B2009101373709D00001811
得到第二会话密钥
Figure B2009101373709D00001812
并且运行得到第一会话密钥
Figure B2009101373709D00001814
密钥恢复装置804根据第一和第二会话密钥得到对称密钥
解密装置805用对称密钥来解密密文。
需要注意,在两个加密***中的公开参数分别为gL3,hL1,...,hLd和gR3,hR1,...,hRd
相比Boneh提出的BW1方案和BW2方案,本发明的实施例占用的空间更少。空间比较如下图所示(图中,k表示集合S是k个区间的并集):
Figure B2009101373709D0000191
图10是示出其中实现本发明实施例的计算机的示例性结构的框图。
在图10中,中央处理单元(CPU)1001根据只读映射数据(ROM)1002中存储的程序或从存储部分1008加载到随机存取映射数据(RAM)1003的程序执行各种处理。在RAM 1003中,也根据需要存储当CPU 1001执行各种处理等等时所需的数据。
CPU 1001、ROM 1002和RAM 1003经由总线1004彼此连接。输入/输出接口1005也连接到总线1004。
下述部件连接到输入/输出接口1005:输入部分1006,包括键盘、鼠标等等;输出部分1007,包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等等,和扬声器等等;存储部分1008,包括硬盘等等;和通信部分1009,包括网络接口卡比如LAN卡、调制解调器等等。通信部分1009经由网络比如因特网执行通信处理。
根据需要,驱动器1010也连接到输入/输出接口1005。可拆卸介质1011比如磁盘、光盘、磁光盘、半导体映射数据等等根据需要被安装在驱动器1010上,使得从中读出的计算机程序根据需要被安装到存储部分1008中。
在通过软件实现上述步骤和处理的情况下,从网络比如因特网或存储介质比如可拆卸介质1011安装构成软件的程序。
本领域的技术人员应当理解,这种存储介质不局限于图10所示的其中存储有程序、与方法相分离地分发以向用户提供程序的可拆卸介质1011。可拆卸介质1011的例子包含磁盘、光盘(包含光盘只读映射数据(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)和半导体映射数据。或者,存储介质可以是ROM 1002、存储部分1008中包含的硬盘等等,其中存有程序,并且与包含它们的方法一起被分发给用户。
在前面的说明书中参照特定实施例描述了本发明。然而本领域的普通技术人员理解,在不偏离如权利要求书限定的本发明的范围的前提下可以进行各种修改和改变。

Claims (24)

1.一种采用分层的基于身份的加密方案的密钥生成方法,包括:
通过所述加密方案的初始化方法生成公开参数和主密钥,其中所述主密钥基于第一随机数;
在通过同层叶节点表示用户身份的二进制树中,针对每个叶节点,根据所述公开参数、所述叶节点的身份和通过用第二随机数替换所述第一随机数而获得的右主密钥,根据所述加密方案计算所述叶节点的右密钥集,所述右密钥集包括所述叶节点的右密钥和从根节点到所述叶节点的路径上所有节点的右兄弟节点的右密钥;和
针对所述叶节点,根据所述公开参数、所述叶节点的身份和通过用第三随机数替换所述第一随机数而获得的左主密钥,根据所述加密方案计算所述叶节点的左密钥集,所述左密钥集包括所述叶节点的左密钥和从根节点到所述叶节点的路径上所有节点的左兄弟节点的左密钥,
其中所述第二随机数与第三随机数的和等于所述第一随机数,并且对于不同用户,第二随机数是不同的。
2.如权利要求1所述的方法,其中所述加密方案是最大深度为
Figure F2009101373709C0000011
的二进制树加密方案,并且所述公开参数包括从具有4d-1个元素的互相独立的函数族中随机选择的函数,n为所述多个用户的数目。
3.如权利要求1所述的方法,其中所述加密方案的最大深度为
Figure F2009101373709C0000012
的Boneh-Boyen-Goh加密方案,n为所述多个用户的数目。
4.如权利要求3所述的方法,其中所述公开参数包括互不相同的第一个g3参数和第二个g3参数,所述第一个g3参数用于右密钥集的生成,所述第二个g3参数用于左密钥集的生成。
5.一种采用分层的基于身份的加密方案的加密方法,包括:
将有权解密广播内容的用户的身份划分为至少一个区间;
针对每个所述区间,根据所述加密方案的公开参数、所述区间的下界和与所述区间相关的随机数,通过所述加密方案的加密方法来加密所述广播内容,以产生与所述下界相关的头信息和密文;和
针对每个所述区间,根据所述加密方案的公开参数、所述区间的上界和与所述区间相关的随机数,通过所述加密方案的加密方法来加密所述广播内容,以产生与所述上界相关的头信息和密文,
其中,所述加密方案的加密方法所采用的对称密钥基于所述随机数,并且各个所述区间的相关随机数互不相同。
6.如权利要求5所述的方法,其中所述加密方案是最大深度为
Figure F2009101373709C0000021
的二进制树加密方案,并且所述公开参数包括从具有4d-1个元素的互相独立的函数族中随机选择的函数,n为所述多个用户的数目。
7.如权利要求5所述的方法,其中所述加密方案的最大深度为
Figure F2009101373709C0000022
的Boneh-Boyen-Goh加密方案,n为所述多个用户的数目。
8.如权利要求7所述的方法,其中所述公开参数包括互不相同的第一个g3参数和第二个g3参数,所述第一个g3参数用于所述根据下界的加密,所述第二个g3参数用于所述根据上界的加密。
9.一种采用分层的基于身份的加密方案的解密方法,包括:
接收有关有权解密广播内容的用户的身份所划分的区间的信息、与每个所述区间的下界相关的头信息和密文、以及与每个所述区间的上界相关的头信息和密文;
找到接收用户的身份所在的一个所述区间,使得在通过同层叶节点表示用户身份的二进制树中,从根节点到所述区间的下界节点的路径上的一个节点的左密钥被包含在对应于接收用户的身份的接收节点的左密钥集中,从根节点到所述区间的上界节点的路径上的一个节点的右密钥被包含在所述接收节点的右密钥集中;
根据所述公开参数、左密钥被包含在左密钥集中的节点的身份及该节点的左密钥,通过所述加密方案的密钥导出方法计算所述下界节点的左密钥;
根据所述公开参数、右密钥被包含在右密钥集中的节点的身份及该节点的右密钥,通过所述加密方案的密钥导出方法计算所述上界节点的右密钥;
根据与所述找到的区间的下界相关的头信息、相应下界节点的左密钥、下界和所述公开参数,通过所述加密方案的解密方法得到第一会话密钥;
根据与所述找到的区间的上界相关的头信息、相应上界节点的右密钥、上界和所述公开参数,通过所述加密方案的解密方法得到第二会话密钥;
根据所述第一会话密钥和第二会话密钥得到对称密钥;和
用所述对称密钥解密与所述找到的区间相关的密文。
10.如权利要求9所述的方法,其中所述加密方案是最大深度为
Figure F2009101373709C0000031
的二进制树加密方案,并且所述公开参数包括从具有4d-1个元素的互相独立的函数族中随机选择的函数,n为所述多个用户的数目。
11.如权利要求9所述的方法,其中所述加密方案的最大深度为
Figure F2009101373709C0000032
的Boneh-Boyen-Goh加密方案,n为所述多个用户的数目。
12.如权利要求11所述的方法,其中所述公开参数包括互不相同的第一个g3参数和第二个g3参数,所述第一个g3参数用于所述右密钥集的生成和所述根据下界的加密,所述第二个g3参数用于所述左密钥集的生成和所述根据上界的加密。
13.一种采用分层的基于身份的加密方案的密钥生成设备,包括:
初始化装置,其通过所述加密方案的初始化方法生成公开参数和主密钥,其中所述主密钥基于第一随机数;
右密钥集生成装置,其在通过同层叶节点表示用户身份的二进制树中,针对每个叶节点,根据所述公开参数、所述叶节点的身份和通过用第二随机数替换所述第一随机数而获得的右主密钥,根据所述加密方案计算所述叶节点的右密钥集,所述右密钥集包括所述叶节点的右密钥和从根节点到所述叶节点的路径上所有节点的右兄弟节点的右密钥;和
左密钥集生成装置,其针对所述叶节点,根据所述公开参数、所述叶节点的身份和通过用第三随机数替换所述第一随机数而获得的左主密钥,根据所述加密方案计算所述叶节点的左密钥集,所述左密钥集包括所述叶节点的左密钥和从根节点到所述叶节点的路径上所有节点的左兄弟节点的左密钥,
其中所述第二随机数与第三随机数的和等于所述第一随机数,并且对于不同用户,第二随机数是不同的。
14.如权利要求13所述的密钥生成设备,其中所述加密方案是最大深度为
Figure F2009101373709C0000033
的二进制树加密方案,并且所述公开参数包括从具有4d-1个元素的互相独立的函数族中随机选择的函数,n为所述多个用户的数目。
15.如权利要求13所述的密钥生成设备,其中所述加密方案的最大深度为
Figure F2009101373709C0000041
的Boneh-Boyen-Goh加密方案,n为所述多个用户的数目。
16.如权利要求15所述的密钥生成设备,其中所述公开参数包括互不相同的第一个g3参数和第二个g3参数,所述第一个g3参数用于右密钥集的生成,所述第二个g3参数用于左密钥集的生成。
17.一种采用分层的基于身份的加密方案的加密设备,包括:
用户分组装置,其将有权解密广播内容的用户的身份划分为至少一个区间;
第一加密装置,其针对每个所述区间,根据所述加密方案的公开参数、所述区间的下界和与所述区间相关的随机数,通过所述加密方案的加密方法来加密所述广播内容,以产生与所述下界相关的头信息和密文;和
第二加密装置,其针对每个所述区间,根据所述加密方案的公开参数、所述区间的上界和与所述区间相关的随机数,通过所述加密方案的加密方法来加密所述广播内容,以产生与所述上界相关的头信息和密文,
其中,所述加密方案的加密方法所采用的对称密钥基于所述随机数,并且各个所述区间的相关随机数互不相同。
18.如权利要求17所述的加密设备,其中所述加密方案是最大深度为
Figure F2009101373709C0000042
的二进制树加密方案,并且所述公开参数包括从具有4d-1个元素的互相独立的函数族中随机选择的函数,n为所述多个用户的数目。
19.如权利要求17所述的加密设备,其中所述加密方案的最大深度为的Boneh-Boyen-Goh加密方案,n为所述多个用户的数目。
20.如权利要求19所述的加密设备,其中所述公开参数包括互不相同的第一个g3参数和第二个g3参数,所述第一个g3参数用于所述根据下界的加密,所述第二个g3参数用于所述根据上界的加密。
21.一种采用分层的基于身份的加密方案的解密设备,包括:
接收装置,其接收有关有权解密广播内容的用户的身份所划分的区间的信息、与每个所述区间的下界相关的头信息和密文、以及与每个所述区间的上界相关的头信息和密文;
搜索装置,其找到接收用户的身份所在的一个所述区间,使得在通过同层叶节点表示用户身份的二进制树中,从根节点到所述区间的下界节点的路径上的一个节点的左密钥被包含在对应于接收用户的身份的接收节点的左密钥集中,从根节点到所述区间的上界节点的路径上的一个节点的右密钥被包含在所述接收节点的右密钥集中;
密钥派生装置,其根据所述公开参数、左密钥被包含在左密钥集中的节点的身份及该节点的左密钥,通过所述加密方案的密钥导出方法计算所述下界节点的左密钥,并且根据所述公开参数、右密钥被包含在右密钥集中的节点的身份及该节点的右密钥,通过所述加密方案的密钥导出方法计算所述上界节点的右密钥;和
密钥恢复装置,其根据与所述找到的区间的下界相关的头信息、相应下界节点的左密钥、下界和所述公开参数,通过所述加密方案的解密方法得到第一会话密钥,根据与所述找到的区间的上界相关的头信息、相应上界节点的右密钥、上界和所述公开参数,通过所述加密方案的解密方法得到第二会话密钥,并且根据所述第一会话密钥和第二会话密钥得到对称密钥;和
解密装置,其用所述对称密钥解密与所述找到的区间相关的密文。
22.如权利要求21所述的解密设备,其中所述加密方案是最大深度为的二进制树加密方案,并且所述公开参数包括从具有4d-1个元素的互相独立的函数族中随机选择的函数,n为所述多个用户的数目。
23.如权利要求21所述的解密设备,其中所述加密方案的最大深度为
Figure F2009101373709C0000052
的Boneh-Boyen-Goh加密方案,n为所述多个用户的数目。
24.如权利要求23所述的解密设备,其中所述公开参数包括互不相同的第一个g3参数和第二个g3参数,所述第一个g3参数用于所述右密钥集的生成和所述根据下界的加密,所述第二个g3参数用于所述左密钥集的生成和所述根据上界的加密。
CN200910137370A 2009-04-24 2009-04-24 广播加密中用于密钥生成、加密和解密的方法、设备 Pending CN101873214A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN200910137370A CN101873214A (zh) 2009-04-24 2009-04-24 广播加密中用于密钥生成、加密和解密的方法、设备
US12/761,852 US8290154B2 (en) 2009-04-24 2010-04-16 Methods and apparatuses for key generation, encryption and decryption in broadcast encryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910137370A CN101873214A (zh) 2009-04-24 2009-04-24 广播加密中用于密钥生成、加密和解密的方法、设备

Publications (1)

Publication Number Publication Date
CN101873214A true CN101873214A (zh) 2010-10-27

Family

ID=42992147

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910137370A Pending CN101873214A (zh) 2009-04-24 2009-04-24 广播加密中用于密钥生成、加密和解密的方法、设备

Country Status (2)

Country Link
US (1) US8290154B2 (zh)
CN (1) CN101873214A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014089843A1 (zh) * 2012-12-14 2014-06-19 华为技术有限公司 一种数据加密、解密的方法及设备
CN109074562A (zh) * 2016-02-23 2018-12-21 区块链控股有限公司 基于区块链的合并式数据传输控制方法和***
CN110120871A (zh) * 2019-05-23 2019-08-13 福建师范大学 一种私钥和密文长度固定的广播加密方法和***
CN113347211A (zh) * 2021-08-04 2021-09-03 北京微芯感知科技有限公司 身份分层加密方法、装置、***、计算机设备及存储介质
CN113872757A (zh) * 2021-09-23 2021-12-31 武汉大学 一种基于sm2公钥加密算法的广播加密方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102306676B1 (ko) 2014-06-27 2021-09-28 삼성전자주식회사 스토리지 디바이스용 호스트 키 생성 방법 및 시스템
CN104519071B (zh) * 2015-01-12 2017-08-11 北京科技大学 一种具有选择和排除功能的群组加解密方法及***
CN108737096A (zh) * 2017-04-25 2018-11-02 杭州弗兰科信息安全科技有限公司 一种用于群组通信的密钥管理***
CN108092975B (zh) * 2017-12-07 2020-09-22 上海携程商务有限公司 异常登录的识别方法、***、存储介质和电子设备
WO2020016628A1 (en) * 2018-07-17 2020-01-23 Telefonaktiebolaget Lm Ericsson (Publ) Multi-x key chaining for generic bootstrapping architecture (gba)
CN111464496B (zh) * 2020-03-05 2022-07-05 奇安信科技集团股份有限公司 数据传输方法及装置、***、存储介质、电子装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3548215B2 (ja) * 1993-12-22 2004-07-28 キヤノン株式会社 通信方法及びそのシステム
JP4269501B2 (ja) * 2000-09-07 2009-05-27 ソニー株式会社 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014089843A1 (zh) * 2012-12-14 2014-06-19 华为技术有限公司 一种数据加密、解密的方法及设备
CN109074562A (zh) * 2016-02-23 2018-12-21 区块链控股有限公司 基于区块链的合并式数据传输控制方法和***
CN109074562B (zh) * 2016-02-23 2023-07-25 区块链控股有限公司 基于区块链的合并式数据传输控制方法和***
CN110120871A (zh) * 2019-05-23 2019-08-13 福建师范大学 一种私钥和密文长度固定的广播加密方法和***
CN110120871B (zh) * 2019-05-23 2021-09-28 福建师范大学 一种私钥和密文长度固定的广播加密方法和***
CN113347211A (zh) * 2021-08-04 2021-09-03 北京微芯感知科技有限公司 身份分层加密方法、装置、***、计算机设备及存储介质
CN113347211B (zh) * 2021-08-04 2021-11-23 北京微芯感知科技有限公司 身份分层加密方法、装置、***、计算机设备及存储介质
CN113872757A (zh) * 2021-09-23 2021-12-31 武汉大学 一种基于sm2公钥加密算法的广播加密方法
CN113872757B (zh) * 2021-09-23 2024-01-12 武汉大学 一种基于sm2公钥加密算法的广播加密方法

Also Published As

Publication number Publication date
US8290154B2 (en) 2012-10-16
US20100272260A1 (en) 2010-10-28

Similar Documents

Publication Publication Date Title
CN101873214A (zh) 广播加密中用于密钥生成、加密和解密的方法、设备
CN1157021C (zh) 多节点加密与密钥传送
US8005225B2 (en) Hierarchical threshold tree-based broadcast encryption method
US7848525B2 (en) Hybrid broadcast encryption method
KR100579515B1 (ko) 브로드캐스트 암호화를 위한 키 생성 장치 및 방법
US10411885B2 (en) Method and system for group-oriented encryption and decryption with selection and exclusion functions
CN108183791B (zh) 应用于云环境下的智能终端数据安全处理方法及***
CN101170404B (zh) 对指定组群进行密钥配置的方法
KR100670017B1 (ko) 조합에 기반한 브로드캐스트 암호화 방법
US20030099360A1 (en) Time-based encryption key
CN105049207A (zh) 一种基于身份的带个性化信息的广播加密方案
JP5492007B2 (ja) コンテンツサーバ、コンテンツ受信装置、属性鍵発行サーバ、ユーザ鍵発行サーバ、アクセス制御システム、コンテンツ配信プログラムおよびコンテンツ受信プログラム
US20090034716A1 (en) Time apparatus, encryption apparatus, decryption apparatus, and encryption/decryption system
JPH10107832A (ja) 暗号同報メールシステム
KR100975038B1 (ko) 브로드캐스트 암호화 시스템 및 그 방법
JP2002152189A (ja) 公開鍵配布方法およびこの方法に用いる公開鍵送信装置ならびに公開鍵受信装置
KR101373577B1 (ko) Id 기반 동적 임계 암호화 장치 및 그 방법
JP5457979B2 (ja) 限定受信システム、メッセージ配信装置、メッセージ受信装置、メッセージ配信プログラムおよびメッセージ受信プログラム
CN109274856B (zh) 基于ecc和混沌的非对称图像加密方法
Kim et al. An efficient anonymous identity-based broadcast encryption for large-scale wireless sensor networks.
CN111541669A (zh) 一种广播加密方法及***
KR101306211B1 (ko) 아이디 기반의 브로드캐스트 암호화 방법
JPH1022991A (ja) 同報暗号通信方法および装置
CN117134924A (zh) 一种物联网终端密钥分发管理和组播加密通信的方法、设备
CN111510295A (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
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20101027