一种具有高并行性的属性基加密外包方法

文档序号:10615788阅读:279来源:国知局
一种具有高并行性的属性基加密外包方法
【专利摘要】本发明涉及一种具有高并行性的属性基加密外包方法,该方法包括属性权威(AA)、外包服务提供商(OSP)、发送方(S)和接收方(R)四个主体。其实现步骤包括:AA设置系统参数和主密钥;R通过AA获得私钥;S使用属性集合加密消息m;R向OSP外包部分解密运算;OSP按照属性分割计算任务,执行并行计算;OSP收集并行计算的结果并进行集中计算,返回计算结果给R;R完成剩余的解密步骤,获得消息m。本发明通过逐属性的分解计算任务,加快了外包服务器的计算速度,减少了用户解密的总体时间,提高了解密效率。
【专利说明】
-种具有高并行性的属性基加密外包方法
技术领域
[0001 ]本发明设及信息安全领域,特别是设及属性基加密外包方法。
【背景技术】
[0002] 属性基加密(A肥)最早由Sahai和Waters提出,它把身份标识看做是一系列的属 性。A肥中,接收方的属性信息只有和发送方描述的属性信息匹配时,接收方才能够解密。 ABE可W较容易的实现一对多的加密操作,相对于传统公钥加密体制有一些优势。另外,ABE 被看做是在不受信任的云存储服务器上实现细粒度访问控制的重要工具。然而A肥的加密 和解密需要较多的运算,在移动设备或能源有限的设备中应用时会有限制。随着云计算的 普及,越来越多的人能充分利用云端资源进行复杂繁琐的计算。那么,向云端外包A肥的部 分运算,W降低ABE体制对资源的需求,就成为了一个很自然的选择。
[0003] 当前,大多数ABE外包方法所关注的都是客户端的外包计算,例如Li等人在论文 ('Securely Outsourcing Attribute-B曰sed Encryption with Check曰biIity" 中提出了一 种安全外包ABE的算法。该算法通过外包ABE解密操作有效的降低了本地资源消耗。然而对 于用户体验而言,外包运算的总时间包括网络通信时间,客户端计算时间和服务器计算时 间。因此仅仅考虑客户端的高效运算是不够的。也正是基于运个观察,Li等人在论文 ('Outsourcing Encryption of Attribute-Based Encryption with MapReduce" 中提出了 一种利用MapReduce模型进行ABE加密操作的外包算法。然而该算法并没有按照属性分配计 算能力,使得外包服务器集群的每个服务节点都对整个接入结构进行了一次加密操作,没 有有效的利用外包服务器的并行计算能力。

【发明内容】

[0004] 本发明的目的在于减少外包服务器集群的计算量,提高外包服务器集群的并发 行,提供一种具有高并行性的属性基加密外包方法。
[0005] 为实现上述目的,本发明给出如下方法:
[0006] 该方法设及属性权威(AA)、外包服务提供商(OSP)、发送方(S)和接收方(R)四个主 体,包括步骤:
[0007] 1.属性权威(AA)设置系统参数和主密钥,具体包括:
[000引1)设定元素个数为n的属性全集U,并对每个属性进行编号,编号为{1,2,...,n}; [0009] 2)设定阔值d,使得发送方(S)用来加密操作的属性集合和接收方(R)用来解密操 作属性集合有不少于d个属性相同时,接收方(R)解密发送方(S)生成的密文; [0010]3)随机选拓^居29,其中29={1,2,...,9-。,并且9是大素数,是群61,62也的阶,在 群Gi,G2上定义双线性对运算e: Gi X G2^Gt,群Gi的生成元是g;
[0011] 4)计算 gi = gx;
[0012] 5)随机选择g2,h,hi,. . .,hnEGi;
[OOU] 6)系统参数设置为PK={g,gi,醉,h,hi,. . .,hn,U,d},主密钥设置为MK = x。
[0014] 2.接收方(R)通过属性权威(AA)获得私钥,具体包括:
[0015] 1)接收方(R)向属性权威(AA)提交用来解密操作的属性集技e 所对应的编号,运 些编号组成编号集合
[0016] 2)属性权威(AA)随机选择XiGZq,随机选择Zq上的一个满足Q(O)=Xi的d-1阶多项 式q(z),z是多项式的变元;
[0017] 3)屬性权威(M闲W中的每个编号i,随机选择nEZq,并计算
[001引 4)属性权威(AA)随机选择re G Zq,计算
其中X2 = x- Ximod q;
[0019] 5)属性权威(AA)向接收方(R)返回私钥化〇,dii}ieuu{e};
[0020] 3.发送方(S)使用属性集合加密消息m,具体包括:
[0021] 1)设定用来加密操作的属性集合1)/。-;,得到编号集合《/ ;
[002^ 2)随机选择sGZq,计算C0=m ? e(gi,g2)s,Ci = gS和E0=(gi h)s;
[002;3] 3)计算序列化}ieu',其中Ei=(gi hi)s;
[0024] 4)设置加密消息m所得密文为,C〇,Ci,Ee,{Ei}ie。')。
[0025] 4.接收方(R)向外包服务提供商(OSP)外包部分解密运算,具体包括:
[0026] 1)接收方(R)确认解密操作属性集对应的编号集合CO与密文中的编号集合具 有至少d个相同元素,设置其中d个相同的编号为集合4,即# £&> n W';
[0027] 2)接收方(R)选择随机数*,计算{端端k.也;
[002引3)接收方(R)向外包服务提供商(OSP)发送(6,赖.、趨}耐和部分密文(打,{Eih到)。
[0029] 5.外包服务提供商(OSP)按照属性分割计算任务,执行并行计算,具体包括:
[0030] 1)外包服务提供商(OSP)将化(端,嫣分割到d个计算服务节点;外包服务提 供商(OSP)可W将化(端,破>&巧紀沪扫描为key-value对,然后执行MapReduce中的Map操作, 把任务分配给计算服务节点;
[0031] 2)每个计算服务节点分别计莫
其中Al,4W是拉 格朗日插值系数。
[0032] 6.外包服务提供商(OSP)收集并行计算的结果并进行集中计算,返回计算结果给 接收方(R);具体包括:
[0033] 1)外包服务提供商(OSP)收集并行计算的结果,并计算CTpad = IIib CTi;外包服 务提供商(OSP)可W通过执行MapReduce的Reduce操作,收集计算服务节点的计算结果,并 集中计算CTpart =IIiEs CTi。
[0034] 2)外包服务提供商(OSP)返回CTpart给接收方(R)。
[0035] 7.接收力? (R)宗成泰Il余的解密巧驢,巧得消息m,具体包括:
[0036] 1)计算
[0037] 2)计算
[0038] 本发明通过逐属性的分解计算任务,使得外包服务器集群的每个服务节点只需要 计算一个属性相关的数据,有效地加快了外包服务器的计算速度,减少了用户解密的总体 时间,提高了解密效率。
【附图说明】
[0039] 图1属性基加密外包方法框架图
[0040] 图2逐属性MapReduce示意图 图3实例中各参与者交互示意图
【具体实施方式】
[0041] 该方法设及属性权威(AA)、加密服务提供商巧SP)、存储服务提供商(SSP)、解密服 务提供商(DSP)、加密用户巧U)、解密用户(DU)六个部分。具体实施时,首先由属性权威(AA) 运行初始化算法生成公钥和系统主密钥;之后对每一个用户的私钥请求,属性权威运行密 钥生成算法得到用户私钥和外包解密密钥;在需要加密时,加密用户运行本地加密算法得 到本地密文;然后加密用户请求加密服务器进行服务器端加密;加密用户将密文上传至存 储服务提供商(SSP);解密用户从存储服务提供商(SSP)得到密文;解密用户请求解密服务 器进行服务器端解密;之后解密用户进行本地解密得到明文。下面用一个实例来对本发明 的外包算法进行具体的阐述。
[0042] 实施例1
[0043] 如图3所示,假设某公司人事部的张=要向技术部经理李四和业务部经理王五发 送一条消息m,为防止竞争对手窃取该消息,需要对m进行基于属性加密,张=从属性权威 (AA)处得到公钥PK,然后进行本地加密得到密文CTU,之后再通过将接入结构发送给加密服 务提供商化SP)进行服务器端加密得到密文CTS,张=将密文封装为CT后上传至存储服务提 供商(SSP);该公司业务部经理王五向属性权威(AA)申请私钥SK和外包解密密钥ODK,王五 从存储服务提供商(SSP)得到密文CT后通过解密服务提供商(DSP)得到部分密文CTpart,然 后进行本地解密恢复出明文m。本实例的参与者为:张=化U ),属性权威(AA ),王五(DU ),加 密服务提供商巧SP)、存储服务提供商(SSP)、解密服务提供商化SP)。为了方便叙述,将属性 全集定义为{人事部,业务部,技术部,财务部,经理,工程师,普通员工},预定阀值d = 2。完 成上述要求的实施过程如下:
[0044] 1、属性权威(AA)运行初始化算法生成公钥和系统主密钥步骤为:
[0045] 1)本实例中,安全参数A = 512,属性权威AA根据A随机选择一个512位大素数q。将 属性全集中的属性定义为Zq中的元素。本实例中集合U = U,2,3,4,5,6,7}对应属性全集 认事部,业务部,技术部,财务部,经理,工程师,普通员工}。其中Zq是阶为q的加法群,
[0046] 2)选择一个生成元gG护和一个整数XGRZq,令gi = gx,其中,G是阶为q的循环乘法 群;
[0047] 3)选择元素 g2,h,hi,...,h7ERG。
[004引 4)输出公钥口1(={邑,邑1,邑2,11血,...,117巧0系统主密钥瓶=又。
[0049] 2、属性权威(AA)响王五的私钥请求得到用户私钥和外包解密密钥步骤为:
[0化0] 1)选择Xi GrZq,令X2 = X-Xi mod q;
[0051] 2)随机选择满足Q(O)=Xi的I阶项式q( ?);
[0052] 引对王五的属性集W = {2,5}中的每个属性i,选择Ti GrZq,计算
[005;3] 4)选择reGRZq,计算
,运里令平凡属性目=8;
[0054] 5)选择t E rZq,计難瑪5,遍}淀。;
[00对 6)输出私钥SK= U,{di0,dii}ieuu{W和外包解密密钥01化:::(城诚。,端J沿 [0056] 3、张=进行本地加密得到本地密文,步骤包括:
[0化7] 1)选择S GrZq;
[005引 2)计算Co=m ? e(gi,g2)s,Ci = gS,E0=(gi h)s,得至Ij本地密文CTU={Co,Ci,E0}。
[0059] 4、加密服务提供商化SP)响应张=的加密请求,进行服务器端加密,步骤包括:
[0060] 1)张S上传3,《'={2,3,引到加密服务提供商化5口);
[0061 ] 2)加密服务提供商化SP)将(S,化i,i})ie。'扫描为ke厂value对,然后MapReuce被触 发;
[0062] 3)MapReduce集群进行Map操作,每个从节点计算Ei=(gi hi)s,输出(i,Ei);
[0063] 4)MapReduce集群进行Reduce操作,将Map阶段的每个输出按i值排序输出加密服 务提供商化SP)加密密文CTS=巧ihe。';
[0064] 5)密文CT=(?' U {:目},CTU,CTS)。
[0065] 5、张S将密文封装成CT=(? / U {:目},CTU,CYS)并上传至存储服务提供商(SSP);
[0066] 6、王五从存储服务提供商(SSP)处得到密文CT;
[0067] 7、解密服务提供商(DSP)响应王五的解密请求,进行服务器端解密,步骤包括:
[0068] 1)解密服务提供商(DSP)接收到王五提交的密文CT和外包解密密钥ODK,选择一个 具有2个元素的集合S={2,5};
[0069] 2)解密服务提供商(DSP)将巧娟0,礙,?魏绒扫描为k巧-value对,然后MapReuce被 触发;
[0070] 3)MapReduce集群进行Map操作,每个从节点计算:
[0071]
[0072] 输出(S,CTi)
[0073] 4)MapReduce 集群进行 Reduce 操作,计算:
[0074]
[0075] 8、王五进行本地解密,恢复出明文,步骤包括:[0076] 1)计算:
[0077]
[007引
[0079]
[0080]
[0081]
[0082]恢复出明文消息m。
【主权项】
1. 一种具有高并行性的属性基加密外包方法,设及属性权威(AA)、外包服务提供商 (OSP)、发送方(S)和接收方(R)四个主体,其特征在于包括W下步骤:51. 属性权威(AA)设置系统参数和主密钥,具体包括: 11) 设定元素个数为η的属性全集U,并对每个属性进行编号,编号为{1,2,...,n}; 12) 设定阔值d,使得发送方(S)用来加密操作的属性集合和接收方(R)用来解密操作属 性集合有不少于d个属性相同时,接收方(R)解密发送方(S)生成的密文; 13) 随机选择xeZq,其中2。={1,2,...,9-1},并且9是大素数,是群61,62,61的阶,在群 Gi,G2上定义双线性对运算e: Gi X G2 一 Gt,群Gi的生成元是g; 14) 计算 gi = gx; 15) 随机选择g2,h,hi,. . .,hneGi; 16) 系统参数设置为PK={g,gl,g2,h,hl,. . .,hn,U,d},主密钥设置为MK = x;52. 接收方(R)通过属性权威(AA)获得私钥,具体包括: 21) 接收方(R)向属性权威(AA)提交用来解密操作的属性集擬ee所对应的编号,运些编 号组成编号集合ω; 22) 属性权威(AA)随机选择xieZq,随机选择Zq上的一个满足q(0)=xi的d-1阶多项式q (z),z是多项式的变元; 23) 属性权威(AA)对ω中的每个编号i,随机选择neZq,并计算2 4)属性权威(A A)随机选择r Θ e Z q,计算汰妨^攻户、' ,新? 其中X 2 = X - ximodq; 25)属性权威(AA)向接收方(R)返回私钥{di〇,dii}ieuu{0};53. 发送方(S)使用属性集合加密消息m,具体包括: 31) 设定用来加密操作的属性集合寻到编号集合ω/ ; 32) 随机选择seZq,计算Co=m · e(gi,g2)s,Ci = gS和Ee=(g出)S; 33) 计算序列lEihe。',其中Ei=(g出i)s; 34) 设置加密消息m所得密文为(ω /,Co,Cl,Εθ,{Ei}把。');54. 接收方(R)向外包服务提供商(OSP)外包部分解密运算,具体包括: 41) 接收方(R)确认解密操作属性集对应的编号集合ω与密文中的编号集合ω/具有至 少d个相同元素,设置其中d个相同的编号为集合Φ,即梦Si:心 42) 接收方(R)选择随机数t,计算!礙5,瑪£ k喊. 43) 接收方(R)向外包服务提供商(0SP)发送iM端,媒},邱、和部分密文(Ci,{Eih巧);55. 外包服务提供商(0SP)按照属性分割计算任务,执行并行计算,具体包括: 51) 外包服务提供商(0SP)将获(礙,鴻,&,冻,,&分割到d个计算服务节点; 52) 每个计算服务节点分别计订.(巧:::6的,端)賊嫣,玲产1,其中Δ ι,φ(〇)是拉格 朗日插值系数;56. 外包服务提供商(0SP)收集并行计算的结果,并返回计算结果给接收方(R),具体包 括: 61) 外包服务提供商(OSP)收集并行计算的结果,并计算CTpart = π ikCTi ; 62) 外包服务提供商(OSP)返回CTpart给接收方(R); S7.接收方(R)完成剩余的解密步骤,获得消息m,具体包括: 71) 计莫72) 计 I2. 根据权利要求书1所述的一种具有高并行性的属性基加密外包方法,其特征在于,所 述的步骤S5中的子步骤51)中,夕F包服务提供商(0SP)将化(端,媒,跨炼姊扫描为k巧-value 对,然后执行MapReduce中的Map操作,把任务分配给计算服务节点。3. 根据权利要求书1所述的一种具有高并行性的属性基加密外包方法,其特征在于,所 述的步骤S6中的子步骤61)中;外包服务提供商(0SP)通过执行MapReduce的Reduce操作,收 集计算服务节点的计算结果,并集中计算CTpart = Π isCTi。
【文档编号】H04L9/08GK105978685SQ201610294587
【公开日】2016年9月28日
【申请日】2016年5月5日
【发明人】田海博, 马宇峰
【申请人】中山大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1