一种自主授权的cp-abe系统和方法

文档序号:7808634阅读:810来源:国知局
一种自主授权的cp-abe系统和方法
【专利摘要】本发明公开了一种自主授权的CP-ABE系统和方法。本方法为:1)任一参与者i用使用CP-ABE方法加密消息M,加密过程中使用自己的公钥,得到密文CT并发布;每一参与者端都包含建立模块、加密模块、解密密钥生成模块和解密模块;2)当一与参与者i具有朋友关系的参与者j向参与者i申请获取解密密钥时,参与者i对参与者j进行授权,并根据该参与者j相对于参与者i的属性,为其生成解密密钥并发送给该参与者j;3)该参与者j用收到的该解密密钥来解密密文CT,得到该消息M。在本发明中,每个参与者自己管理控制自己的朋友关系和解密密钥生成和发放,能够支持参与者之间形成复杂灵活的关系的应用,并避免了参与者隐私的泄露。
【专利说明】-种自主授权的CP-ABE系统和方法

【技术领域】
[0001] 本发明涉及一种自主授权的CP-ABE系统和方法,属于信息安全【技术领域】。

【背景技术】
[0002] 现有的基于属性的加密(Attribute Based Encryption, ABE)系统有四种基本角 色:
[0003] ⑴内容拥有者
[0004] 内容可包含任何数字信息。内容拥有者加密和发布自己的内容。加密过程分为两 阶段:第一阶段,内容拥有者使用对称加密算法加密自己的数字内容。第二阶段,内容拥有 者用ABE算法加密包含该加密内容对应的对称密钥和属性集相关的访问控制结构信息的 消息。
[0005] ⑵内容申请者
[0006] 内容申请者可申请内容,获取该内容,用自己的解密密钥来解密该消息。
[0007] 将内容拥有者和内容申请者统称为用户。ABE系统,用户一般同时承担内容拥有者 和内容申请者两种角色。
[0008] (3)授权者
[0009] 授权者可对内容申请者进行授权,根据内容申请者的属性生成内容申请者的解密 密钥,把解密密钥发送给内容申请者。
[0010] ⑷第三方
[0011] 第三方为可选的角色。第三方可提供辅助功能。如第三方可执行解密过程中的部 分计算,并产生中间结果,来减轻内容申请者的解密计算开销。此中间结果不是最终解密的 明文内容。
[0012] 所有ABE算法分为四个基本算法组成:
[0013] 1.建立
[0014] 在建立算法中,产生公共系统参数,授权者的公共和秘密参数。
[0015] 2.消息加密
[0016] 在消息加密算法中,内容拥有者使用ABE算法加密包含内容元数据和加密内容对 应的对称密钥信息的消息。
[0017] 3.解密密钥生成
[0018] 在解密密钥生成算法中,授权者根据内容申请者的属性生成内容申请者的解密密 钥,把解密密钥传送给内容申请者。
[0019] 4.消息解密
[0020] 在消息解密算法中,内容申请者用自己的解密密钥来解密该内容。
[0021] 相应的,一个ABE系统中,包含建立、消息加密、解密密钥生成和消息解密四个基 本的ABE功能模块。
[0022] 从策略角度,ABE算法分为密钥策略的ABE (Key Policy Attribute Based Encryption, KP-ABE)算法和密文策略的 ABE (Ciphertext Policy Attribute Based Encryption, CP-ABE)算法。对于KP-ABE算法,密文与一组属性相关联,并且用户的解密密 钥与访问控制结构相关联。只有与密文关联的属性满足相应访问控制结构,用户才能使用 解密密钥对密文解密。对于CP-ABE算法,密文基于访问控制结构加密,而相应的解密密钥 基于一组属性创建。只有用户的解密密钥相关的一组属性满足给定的密文的访问控制结 构,用户才能使用解密密钥对密文解密。
[0023] 根据授权模式,现有的CP-ABE的算法及相应系统分为两类:
[0024] (1)集中式授权的CP-ABE算法
[0025] 在集中式授权的CP-ABE系统中,只有一个集中的授权者。
[0026] (2)分布式授权的CP-ABE算法
[0027] 在分布式授权的CP-ABE系统中,存在若干个授权者,每个授权者负责某一项或多 项属性的授权。
[0028] 现有的CP-ABE系统,不管是集中式授权的CP-ABE系统还是分布式授权的CP-ABE 系统,内容拥有者与授权者不是同一对象。内容参与者与授权者也不是同一对象。相应的, 现有的CP-ABE系统结构中,内容拥有者端没有解密密钥生成模块;只有授权者端包含解密 密钥生成模块,授权者端根据内容申请者的属性生成内容申请者的解密密钥。集中式授权 或分布式授权的CP-ABE系统具有以下缺点:
[0029] 1.只有单个授权者的集中式授权CP-ABE系统,或者具有若干个授权者的分布式 授权CP-ABE系统,只适用于用户具有比较固定属性的应用。在用户具有比较固定属性的应 用中,如单个企业或单位的内部应用,用户在单位或企业内部的属性相对固定,单个授权者 (或若干授权者)能识别用户的属性,并产生和发放用户的解密密钥。
[0030] 而对用户之间形成复杂灵活的关系的应用,如社交网络应用中,一个用户对其它 多个用户可能具有不同的属性,且属性的动态变化性强。对这类应用,集中式授权或分布式 授权的CP-ABE系统不适用,因为这类应用中,用户之间的复杂灵活的关系是用户之间自发 形成的,单个授权者(或若干授权者)不适于建立用户之间这种复杂灵活的关系及不适于 对用户进行授权。
[0031] 2.集中式授权或分布式授权的CP-ABE系统带来很大的隐私泄露的风险。具体表 现在:
[0032] (1)授权者可将授权属性对应的解密密钥提供给自己或非法用户,解密内容拥有 者的内容并利用,达到自己的目的,损害内容拥有者的权益。
[0033] (2)内容申请者的属性信息泄露给授权者。授权者可将这些信息提供给自己或非 法用户并利用,达到自己的目的,损害内容申请者的权益。


【发明内容】

[0034] 针对现有技术中存在的技术问题,本发明的目的在于提供一种自主授权的CP-ABE 系统和方法。
[0035] 本发明提出一种自主授权的 CP-ABE (Ciphertext Policy Attribute Based Encryption with Discretionary Authorization, DA-CP-ABE)系统和方法。该系统及方法 能够支持用户之间形成复杂灵活的关系的应用,并避免集中式或分布式授权CP-ABE系统 中用户信息泄露给授权者导致的隐私风险。
[0036] 本发明的技术方案为:
[0037] -种自主授权的CP-ABE方法,其步骤为:
[0038] 1)任意一个参与者i使用CP-ABE方法加密消息M,加密过程中使用自己的公钥, 得到密文CT并发布;其中,每一参与者端都包含建立模块、加密模块、解密密钥生成模块和 解密模块;
[0039] 2)当一与参与者i具有朋友关系的参与者j,向该参与者i申请获取解密密钥时, 该参与者i对该参与者j进行授权,并根据该参与者j相对于参与者i的属性,为其生成 解密密钥并发送给该参与者j ;
[0040] 3)该参与者j用收到的该解密密钥和自己的私钥来解密密文CT,得到该消息Μ。
[0041] 进一步的,所述步骤2)中,该参与者i根据该参与者j相对于参与者i的属性为 参与者j生成解密密钥,在解密密钥生成过程中,将该参与者j的公钥信息嵌入到该解密密 钥中,然后该参与者i将该解密密钥发送给该参与者j。
[0042] 进一步的,首先建立一基于椭圆曲线的乘法循环群

【权利要求】
1. 一种自主授权的CP-ABE方法,其步骤为: 1) 任意一个参与者i使用CP-ABE方法加密消息M,加密过程中使用自己的公钥,得到 密文CT并发布;其中,每一参与者端都包含建立模块、加密模块、解密密钥生成模块和解密 模块; 2) 当一与参与者i具有朋友关系的参与者j,向该参与者i申请获取解密密钥时,该参 与者i对该参与者j进行授权,并根据该参与者j相对于参与者i的属性,为其生成解密 密钥并发送给该参与者j ; 3) 该参与者j用收到的该解密密钥和自己的私钥来解密密文CT,得到该消息Μ。
2. 如权利要求1所述的方法,其特征在于所述步骤2)中,该参与者i根据该参与者j 相对于参与者i的属性为参与者j生成解密密钥,在解密密钥生成过程中,将该参与者j的 公钥信息嵌入到该解密密钥中,然后该参与者i将该解密密钥发送给该参与者j。
3. 如权利要求2所述的方法,其特征在于首先建立一基于椭圆曲线的乘法循环群
其 阶为P,生成元为g ;每一参与者从椭圆曲线上随机选取的一个随机密钥对作为自己的公私 钥对;其中,每一个参与者i选择一个随机的
作为自己的私钥,对应的公钥为
4. 如权利要求3所述的方法,其特征在于生成解密密钥过程中,将参与者j的公钥信 息
嵌入到该解密密钥中,具体的方法为:如果消息加密算法采用基于线性秘密共享方案 的访问控制结构,则生成的表达式中所有以g为底数的部分,叫必表现为g的指数的一个 乘数,即以g为底数的部分为
Z表示指数的其余部分;生成的计算过程为:以
为底 数,Z为指数进行运算,
5. 如权利要求3所述的方法,其特征在于生成解密密钥过程中,将参与者j的公钥信息
嵌入到该解密密钥中,具体的方法为:如果消息加密算法采用基于树的访问控制结构, 则以以
为底数,(a +r) · Y为指数运算,
生成表达式结果为
其中,α i为参与者i的秘密参数,Y表示指数的其余部分,r为针对该解密秘钥 生成而产生的随机秘密数;或者以
为底数,Z为指数进行运算,:表示指 数的其余部分,同时Z中包含r。
6. 如权利要求1所述的方法,其特征在于如果该参与者j向多个具有朋友关系的参与 者申请并获取解密密钥,则参与者j保存多个解密密钥,并保存每个解密密钥与朋友的对 应关系。
7. 如权利要求1或2或3或4或5或6所述的方法,其特征在于所述对该密文CT进行 解密的方法为:该参与者j从保存的解密密钥中查找到生成密文CT的参与者i生成的的解 密密钥,并先用该解密密钥对该密文CT进行解密,得到ElGamal形式的中间结果,然后利用 自己的私钥,并根据计算需要使用解密密钥的一部分或不使用解密密钥,,对该中间结果进 行解密,得到该消息M。
8. 如权利要求1或2或3或4或5或6所述的方法,其特征在于所述对该密文CT进行 解密的方法为:该参与者j从保存的解密密钥中查找到生成密文CT的参与者i生成的的解 密密钥,并将该解密密钥发送给第三方。第三方对密文CT进行解密计算,生成ElGamal形 式的中间结果,并把该中间结果发送给该参与者j ;该参与者j根据此中间结果,使用自己 的私钥,并根据计算需要使用解密密钥的一部分或不使用解密密钥,计算生成该消息M。
9. 如权利要求1或2或3或4或5或6所述的方法,其特征在于所述步骤2)中,该密 文CT为CP-ABE算法生成的密文;所述步骤4)中,该参与者j对该密文CT进行解密的方 法为:如果密文CT的表达式中,除Me(g,g) xY外,第i项属性还存在有
的表 达式,且Q中不包含M,则将所有(;修改为C' i :其中如果¥1为空,则该内容申请者将其私 钥%增加为所有Q中底数e (g,g)的指数的一个乘数即
如果t不为空, 则该内容申请者将其私钥%增加为所有Q中底数e (g,g)的指数的一个乘数,并将a j增 加为所有底数Yi的指数的一个乘数,即
然后,该内容申请者使用自己 的对应密文CT的解密密钥和私钥%对上述结果进行计算生成该消息Μ ;其中,Μ为消息, e (g,g)为双线性映射函数,X,Υ为表达式的其余部分,Xi,Yi分别为第i项属性的密文表达 式的其余部分。
10. -种自主授权的CP-ABE系统,其特征在于包括多个参与者,每个参与者端都包含 密钥生成模块、加密模块、解密密钥生成模块和解密模块;其中,每一参与者与其它多个参 与者建立朋友关系,并保存每一具有朋友关系的参与者的一组属性;每个参与者i用自己 的公钥使用CP-ABE方法加密消息M,得到密文CT并发布,以及对申请自己发布内容的具有 朋友关系的参与者j进行授权、根据相对于自己的参与者j的属性生成解密密钥并发送给 该参与者j进行解密,得到该消息M。
11. 如权利要求10所述的加密系统,其特征在于该参与者i根据该参与者j的属性为 其生成解密密钥,在生成解密密钥的过程中,并将该参与者j的公钥信息嵌入到解密密钥 中,然后该参与者i将该解密密钥发送给该参与者j。
12. 如权利要求11所述的加密系统,其特征在于首先建立一基于椭圆曲线的乘法循环 群
其阶为P,生成元为g ;每一参与者i从椭圆曲线上随机选取的一个随机密钥对作为自 己的公私钥对;其中,任意一个参与者i选择一个随机Κ
?为自己的私钥,对应的公 钥为
该参与者i为参与者j生成解密密钥时,将该参与者j的公钥
嵌入到该解密密 钥中的方法为: 如果消息加密算法采用基于线性秘密共享方案的访问控制结构,则生成的表达式中所 有以g为底数的部分,α」必表现为g的指数的一个乘数,g卩以g为底数的部分为
,2表 示指数的其余部分;生成的计算过程为:以
为底数,Z为指数进行运算,
如果消息加密算法采用基于树的访问控制结构,则以以
为底数,(α+r) ·Υ为指数运算,
,生成表达式结果为
,其中,a i为参与者i的秘密参数, Y表示指数的其余部分,r为针对该解密秘钥生成而产生的随机秘密数;或者以
为底数, Z为指数进行运算:
Z表示指数的其余部分,同时Z中包含r。
13. 如权利要求10或11或12所述的加密系统,其特征在于还包括一第三方,该参与者 j从保存的解密密钥中查找到生成密文CT的参与者i生成的的解密密钥,并将该解密密钥 发送给该第三方。第三方对密文CT进行解密计算,生成ElGamal形式的中间结果,并把该 中间结果发送给该参与者j ;该参与者j根据此中间结果,使用自己的私钥,并根据计算需 要使用解密密钥的一部分或不使用解密密钥,计算生成该消息M。
14.如权利要求10或11或12所述的加密系统,其特征在于所述密文CT为CP-ABE算 法生成的密文;该参与者j对该密文CT进行解密时,如果密文CT的表达式中,除Me (g,g) XY夕卜,第i项属性还存在有
的表达式,且Q中不包含M,则将所有Q修改 为C' i :其中如果¥1为空,则该内容申请者将其私钥%增加为所有Q中底数e(g,g)的 指数的一个乘数即
如果t不为空,则该内容申请者将其私钥%增加为所 有Q中底数e (g,g)的指数的一个乘数,并将增加为所有底数Yi的指数的一个乘数,即
然后,该内容申请者使用自己的对应密文CT的解密密钥和私钥a j对 上述结果进行计算生成该消息Μ ;其中,Μ为消息,e (g,g)为双线性映射函数,X,Y为表达式 的其余部分,Xi,Yi分别为第i项属性的密文表达式的其余部分。
【文档编号】H04L29/06GK104144056SQ201410328154
【公开日】2014年11月12日 申请日期:2014年7月10日 优先权日:2014年7月10日
【发明者】方跃坚, 沈晴霓, 杨雅辉, 吴中海 申请人:北京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1