CN104753947A - 一种固定密文长度的可验证外包解密的属性基系统及方法 - Google Patents

一种固定密文长度的可验证外包解密的属性基系统及方法 Download PDF

Info

Publication number
CN104753947A
CN104753947A CN201510154824.9A CN201510154824A CN104753947A CN 104753947 A CN104753947 A CN 104753947A CN 201510154824 A CN201510154824 A CN 201510154824A CN 104753947 A CN104753947 A CN 104753947A
Authority
CN
China
Prior art keywords
ciphertext
server
key
outsourcing
user
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
CN201510154824.9A
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.)
Hohai University HHU
Original Assignee
Hohai University HHU
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 Hohai University HHU filed Critical Hohai University HHU
Priority to CN201510154824.9A priority Critical patent/CN104753947A/zh
Publication of CN104753947A publication Critical patent/CN104753947A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种固定密文长度的可验证外包解密的属性基系统,包括公开参数设置服务器、用户私钥运算器、加密服务器、解密服务器、设置转换密钥服务器、转换密文服务器、外包解密服务器;公开参数设置服务器生成系统主密钥和系统公开参数;用户私钥运算器生成各个用户的私钥;加密服务器对消息进行加密;解密服务器对加密的消息进行解密;转换密文服务器根据每个用户的私钥生成相对应的转换密钥和恢复密钥;转换密文服务器用转换密钥对密文进行部分解密;外包解密服务器恢复出明文。本发明还公开了一种固定密文长度的可验证外包解密的属性基方法。本发明为外包解密服务器提供有效的验证转换操作正确性的方法,密文长度固定且极大节约了通信代价。

Description

一种固定密文长度的可验证外包解密的属性基系统及方法
技术领域
本发明涉及网络安全的数据加密技术领域,特别是一种固定密文长度的可验证外包解密的属性基系统及方法。
背景技术
近年来云计算在现代社会中的运用越来越普遍,而在云计算中应用广泛的基于属性的加密技术已成为目前的一个研究热点。它允许用户使用灵活的访问控制来访问以密文形式存储在云服务器上的数据。尽管它的这些优势使它成为一个云计算中保护数据安全的强大工具,然而它的一个主要缺点不得不被重视:解密的计算代价随着访问结构的复杂性线性增长,这对于资源受限的移动设备(如手机)来说是一个致命的使用瓶颈。通过使用代理重加密技术,基于属性的外包解密系统可以很大程度上降低用户想要访问以密文形式存储在云上的数据的计算代价。给定一个密文和一个转换密钥,云服务提供者(CSP)将密文转换成一个更简单形式的密文,用户只需要花很少的计算代价来从简单形式的密文中恢复明文。然而CSP的转换密文操作的正确性对于用户来讲不能得到保证,因为用户没有初始密文。赖俊祚等人提出了一个基于属性的可验证外包解密的方案来帮助用户有效的检查CSP的转换操作是否正确。然而他的方案中的密文长度随着访问结构的复杂增加而线性增长,这对于带宽受限的设备来讲非常不适合。
基于属性的加密(ABE)来源于基于身份的加密(IBE)。IBE系统中用户的身份是用二进制位串来表示的,而在ABE中用户的身份由一个属性集合来表示。属性集合所代表的身份并不是唯一的,因此ABE可以实现一对多的加密即一人加密,多人解密。传统的IBE方案只能提供粗粒度的访问控制,为了解决这个问题,Goyal等人提出了一个新的方案来实现细粒度的访问控制,在该方案中访问策略与用户的私钥相关联,密文和一个描述性的属性集合相关联,这种类型的ABE被称为密文策略的基于属性的加密(CP-ABE)。ABE可以分为两类,即密钥策略的基于属性的加密(KP-ABE)和CP-ABE。在CP-ABE方案中,密文与访问策略相关联,用户的私钥与一组属性集合相关联。当且仅当用户的私钥满足与密文相关联的访问策略时该用户才可以成功解密密文,而在KP-ABE方案中正好相反。目前绝大多数ABE方案的主要缺陷之一是解密操作代价非常的昂贵,所以不太适用于资源受限和电池有限的设备。为了提高方案的效率,Green等人提出了一种把计算代价昂贵的解密操作外包给云服务器的方案。在他们的方案中用户使用代理重加密方法来生成一个转换密钥并将转 换密钥和ABE密文发送给CSP。拥有了用户发送的转换密钥以后,CSP就可以将密文转换成一个更加简单形式的密文。用户只需要花费很少的计算开销就可以简单形式的密文中恢复出明文。在这个转换过程中,CSP得不到关于原始明文的任何信息。
一个恶意的CSP的可能会替换掉原来的密文,即他可以给用户一个其他密文转换成的简单形式的密文而不是用户想转换的那个密文,同时用户无法察觉到CSP的这个恶意的行为。外包解密的ABE方案的安全性只能保证恶意的云服务器无法了解关于加密消息的任何信息,然而,它并不能保证由CSP所执行的转换操作的正确性。为了解决这个问题,Lai等人提出了一个可验证的外包解密的CP-ABE方案来保证转换操作的正确性,同样Li等人也最近提出了一个有效解决可验证性的外加包解密ABE方案。简单来讲,可验证性保证了用户可以有效地检查CSP的转换操作是否正确。毫无疑问,可验证性为ABE方案的现实应用带来了巨大的进步。然而密文的长度随着访问策略的复杂度线性增加大大限制了其在带宽有限的设备中的应用。
发明内容
本发明所要解决的技术问题是克服现有的不足而提供一种固定密文长度的可验证外包解密的属性基系统及方法,本发明将可验证外包解密体制和固定密文长度体制相结合,减少用户端的计算代价,将计算代价昂贵的部分外包给CSP去处理,并且在CSP转换密文之后用户可以有效检验转换操作的正确性,同时控制密文长度固定以减少通信代价。
本发明为解决上述技术问题采用以下技术方案:
根据本发明提出的一种固定密文长度的可验证外包解密的属性基方法,包括如下步骤:
A、设定系统公开参数PK和系统主密钥MK;
B、根据系统公开参数PK、系统主密钥MK和属性集合S生成用户私钥SKS
C.根据系统公开参数PK,访问结构A对明文消息M进行加密,得到密文CT;
D.根据系统公开参数PK,用户私钥SKS对密文CT进行解密,得到明文消息M;
E.根据系统公开参数PK,用户私钥SKS生成转换密钥TKs和恢复密钥RKS
F.根据系统公开参数PK,转换密钥TKs对密文CT进行转换操作,生成部分解密密文CT';
G.根据系统公开参数PK,恢复密钥RKS对部分解密密文CT'进行外包解密操作,并验证是否是初始密文CT所对应的明文消息M,若是则输出M,若不是则输出错误信息。
作为本发明所述的一种固定密文长度的可验证外包解密的属性基方法进一步优化方案,所述步骤A包括:
A1.选取阶为p的乘法循环群G1、GT以及双线性映射e:G1×G1→GT
A2.随机选取G1的一个生成元g1和G1的四个元素h,u,v,d,随机选取群的元素y以及ti,jR Zp *,选取一个抗碰撞的哈希函数其中,ti,j表示每个属性对应的私钥部分,下标R表示随机选取,表示集合{1,2,…,p-1},哈希函数H是GT的密码学哈希函数,i∈[1,n],j∈[1,ni],n表示属性数量,ni表示每个属性可取值的数量;
A3.计算Y=e(g1,h)y表示每个属性对应的公钥部分,其中,e(g1,h)为双线性对运算;
得到系统公开参数PK=(e,g1,h,u,v,d,Y,Ti,j,H),系统主密钥MK=(y,ti,j)。
作为本发明所述的一种固定密文长度的可验证外包解密的属性基方法进一步优化方案,所述步骤B包括:
B1.对于拥有属性集合S的用户,随机选取r∈Zp *
B2.计算和K2=g1 r作为用户的私钥SKS=(K1,K2),其中,vi,j∈S表示所有用户拥有属性的属性值。
作为本发明所述的一种固定密文长度的可验证外包解密的属性基方法进一步优化方案,所述步骤C包括:
C1.随机选取秘密值s,s'∈Zp *,冗余信息
C2.计算 C ^ = u H ( M ) v H ( M ~ ) d , C1=M·Ys,C2=g1 s C 3 = ( Π v i , j ∈ A T i , j ) s , C 1 ′ = M ~ · Y s ′ , C 2 ′ = g 1 s ′ , C 3 ′ = ( Π v i , j ∈ A T i , j ) s ′ , 得到密文 CT = ( A , C ^ , C 1 , C 2 , C 3 , C 1 ′ , C 2 ′ , C 3 ′ ) ; 其中,H(M)表示对M作哈希函数操作后的函数值,表示对作哈希函数操作后的函数值。
作为本发明所述的一种固定密文长度的可验证外包解密的属性基方法进一步优化方案,所述步骤D包括:
D1.计算
D2.计算 C 1 ′ · e ( C 3 ′ , K 2 ) e ( C 2 ′ , K 1 ) = M ~ · e ( g 1 , h ) s ′ y e ( ( g 1 Σ v i , j ∈ A t i , j ) s ′ , g 1 r ) e ( g 1 s ′ , h y ( g 1 Σ v i , j ∈ S t i , j ) r ) = M ~ · e ( g 1 , h ) s ′ y e ( g 1 , g 1 ) s ′ r Σ v i , j ∈ A t i , j e ( g 1 , h ) s ′ y e ( g 1 , g 1 ) s ′ r Σ v i , j ∈ S t i , j = M ~ ;
D3.验证如果则得到明文消息M,否则输出错误信息。
作为本发明所述的一种固定密文长度的可验证外包解密的属性基方法进一步优化方案,所述步骤E包括:
E1.随机选取z∈Zp *作为恢复密钥RKS
E2.计算 K 1 ′ = K 1 1 / z K 2 ′ = K 2 1 / z ;
E3.得到转换密钥TKS=(K'1,K'2)和恢复密钥RKS=z。
作为本发明所述的一种固定密文长度的可验证外包解密的属性基方法进一步优化方案,所述步骤F包括:
F1.计算 e ( C 2 , K 1 ′ ) e ( C 3 , K 2 ′ ) = e ( g 1 s , h y / z ( g 1 Σ v i , j ∈ S t i , j ) r / z ) e ( ( Π v i , j ∈ A T i , j ) s , g 1 r / z ) = e ( g 1 , h ) sy / z e ( g 1 , g 1 ) sr / z Σ v i , j ∈ S t i , j e ( g 1 , g 1 ) sr / z Σ v i , j ∈ A t i , j = e ( g 1 , h ) sy / z = T ′ ;
F2.计算 e ( C 2 ′ , K 1 ′ ) e ( C 3 ′ , K 2 ′ ) = e ( g 1 s ′ , h y / z ( g 1 Σ v i , j ∈ S t i , j ) r / z ) e ( ( Π v i , j ∈ A T i , j ) s ′ , g 1 r / z ) = e ( g 1 , h ) s ′ y / z e ( g 1 , g 1 ) s ′ r / z Σ v i , j ∈ S t i , j e ( g 1 , g 1 ) s ′ r / z Σ v i , j ∈ A t i , j e ( g 1 , h ) s ′ y / z = T ′ ′ ;
F3.得到部分解密密文其中,是用于验证代理返回结果的正确性。
作为本发明所述的一种固定密文长度的可验证外包解密的属性基方法进一步优化方案,所述步骤G包括:
G1.判断初始密文和部分解密密文中的元素,如果或者T1≠C1或者T'1≠C1',那么输出错误信息;
G2.如果上述三个验证都通过,计算M=C1/T'z
G3.验证如果则输出明文消息M,否则输出错误信息。
根据本发明提出的一种固定密文长度的可验证外包解密的属性基系统,包括公开参数设置服务器、用户私钥运算器、加密服务器、解密服务器、设置转换密钥服务器、转换密文服务器、外包解密服务器;其中,
公开参数设置服务器,用于生成系统主密钥和系统公开参数,系统主密钥发送至用户私钥运算器,系统公开参数发送至用户私钥运算器、加密服务器、解密服务器、设置转换密钥服务器、转换密文服务器、外包解密服务器;
用户私钥运算器,用于根据系统主密钥、系统公开参数生成各个用户的私钥,并将用户的私钥发送至解密服务器和设置转换密钥服务器;
加密服务器,根据系统公开参数,以及加密者用来限制解密者所必须需要拥有的身份条件的访问结构,对明文消息进行加密,生成该消息的原始密文,并将原始密文发送至解密服务器、转换密文服务器和外包解密服务器;
解密服务器,根据系统公开参数、私钥,将原始密文解密得到明文消息;
设置转换密钥服务器,根据系统公开参数、私钥,生成转换密钥和恢复密钥,并将转换密钥发送至转换密文服务器,将恢复密钥发送给外包解密服务器;
转换密文服务器,根据系统公开参数、转换密钥,将加密服务器发送的原始密文进行转换,获得部分解密密文,将其发送给外包解密服务器;
外包解密服务器,根据系统公开参数、恢复密钥,对转换密文服务器发送的部分解密密文进行外包解密,并利用加密服务器发送的原始密文做校验,检验转换操作是否正确。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:本发明在保证加密安全的情况下,在保证CSP进行转换操作时得不到关于消息的任何信息的情况下,给予用户有效检验CSP转换操作的正确性的方法,防止CSP的替换攻击,使得用户可以肯定外包解密所得到的消息是与初始密文相对应的明文消息,同时密文长度固定,减少了通信代价,便于在带宽受限的设备中使用。因此本发明是一种新的安全高效的加密方法。
附图说明
图1是本发明所述的固定密文长度的可验证外包解密的属性基系统的示意
图2是本发明所述的一种固定密文长度的可验证外包解密的属性基方法的流程
具体实施方式
下面结合附图对本发明的技术方案做进一步的详细说明:
本发明所述固定密文长度的可验证外包解密的属性基系统可基于双线性对来实现,下面简要介绍双线性对的相关概念和所需满足的性质:
令G1、GT是阶为p的乘法循环群,其中p为素数,g是G1的生成元。假设G1和G2这两个群上的离散对数问题都是困难问题。定义群上的双线性映射为:e:G1×G1→G2,且满足下面的性质:
1.双线性.e(ga,gb)=e(g,g)ab,对所有的a,b∈Zp *和g∈G1均成立。
2.非退化性.其中1是GT的单位元。 
3.可计算性.存在有效算法来计算e。
可以注意到:e是可交换的,因为e(ga,gb)=e(g,g)ab=e(gb,ga)。
本发明所述方法设计的实体包括:公开参数设置服务器、数据拥有者、用户、云存储、用户私钥运算器、加密服务器、解密服务器、设置转换密钥服务器、转换密文服务器、外包解密服务器。
参照附图1,本发明所述系统包括:公开参数设置服务器A、用户私钥运算器B、加 密服务器C、解密服务器D、设置转换密钥服务器E、转换密文服务器F、外包解密服务器G;其中,
公开参数设置服务器,用于生成系统主密钥和系统公开参数,系统主密钥发送至用户私钥运算器,系统公开参数发送至用户私钥运算器、加密服务器、解密服务器、设置转换密钥服务器、转换密文服务器、外包解密服务器;
用户私钥运算器,用于根据系统主密钥、系统公开参数生成各个用户的私钥,并将用户的私钥发送至解密服务器和设置转换密钥服务器;
加密服务器,根据系统公开参数,以及加密者用来限制解密者所必须需要拥有的身份条件的访问结构,对明文消息进行加密,生成该消息的原始密文,并将原始密文发送至解密服务器、转换密文服务器和外包解密服务器;
解密服务器,根据系统公开参数、私钥,将原始密文解密得到明文消息;
设置转换密钥服务器,根据系统公开参数、私钥,生成转换密钥和恢复密钥,并将转换密钥发送至转换密文服务器,将恢复密钥发送给外包解密服务器;
转换密文服务器,根据系统公开参数、转换密钥,将加密服务器发送的原始密文进行转换,获得部分解密密文,将其发送给外包解密服务器;
外包解密服务器,根据系统公开参数、恢复密钥,对转换密文服务器发送的部分解密密文进行外包解密,并利用加密服务器发送的原始密文做校验,检验转换操作是否正确。
参照附图2,利用JPBC实现本发明的方案并介绍本发明的具体步骤:
该公开参数设置服务器A执行以下步骤:
A1.选取阶为p=730750818665451621361119245571504901405976559617的乘法循环群G1,GT以及双线性映射e:G1×G1→GT(双线性映射的计算在文中有详细说明);
A2.随机选取G1的一个生成元 
g1=2695980418988198432775601549158155153699531247556848379894548290021537210239377846751392854698648926081360034376475670071315154758690787017673242316612074,4404960890217260917541780983589639082720013676829364450881625687891117248417060246959768283751681924889453031413143574211319770622243109414077148895789432和G1的四个元素:
h=5774640355161290068700191029628306563828687392466731809813029378864883121795695089430340274253651849473994253782148292689289409237222549142140981810158118,16091452804281906123401937228621096552157583211614219980951924172768390829875789820315065199423566390897304762102092237298825974349716655177535566275763 06,
u=316197920206449546212194364113143538456402150668895800735872440429726170413306202124486542379794776013085721086298577124111241141293868332648118139182701,8108154973516377681892677567515453448796866311972303457610266489742210206358230872153387756423127156788389373440775453196423205572337630278542500563853607,03853607,
v=4577040230003068054547995544224586560655102099699956884666272616446756894022253680058151076194668385365504543836347093986107773219193128423049594460812322,7955229454443174288275407328935241701637305606434525205464459625978867032136720127769377424292480818225743496346816930720829351363378418761092388775832690,
d=5774640355161290068700191029628306563828687392466731809813029378864883121795695089430340274253651849473994253782148292689289409237222549142140981810158118,1609145280428190612340193722862109655215758321161421998095192417276839082987578982031506519942356639089730476210209223729882597434971665517753556627576306,随机选取群的元素y=382560358736857752751803050607170982140716672546以及ti,jR Zp(i∈[1,2],j∈[1,4])分别为
[333951179209280756397531580848883511904286935174,
520920229692813482641882331334574679424616975811,
529804624240026519402815265382273776180532018067,
308979361875806443727805193433164042446743678064]和
[407487057818713316271950068986896711900254943997,
626485331279406117856498855038862419818961648552,
383210627149545936917793380763749376839565709907,
249849472079144148175312827316407669801387304997],
选取一个抗碰撞的哈希函数
A3.计算:
Y=e(g1,h)y=2343440690964019046280748442680384663884981230191459547868886396410901214453283748326635914314809883483973822854070403913785515865495392370801617801529115,207122521617800273726083520771876163652840160642436375914774730172645133154852872911005477495256044643468969593048395655365545058092374117570375381803195,
(i∈[1,2],j∈[1,4])分别为
[7806141549572961906048754183377169676942164849481997242232369187094956768612232608054670164016229314575132466479662585114319028866362353507839623459343869,2444602874916681296998281056227218496643271281020987046477824039283408359214498183254107179975666084849968743449661750188778045447173641656108715721161781,0,4517223158887889595904690553912520563387668605064360887452929125124438130180427560679547033784299395414944478681754567201655101779678387471107033094679591,5850698642283220261029098496480718841890757603702039106433156170672316241563198825975614100767189534470333777025508477180097291410946959889271858910177473,7932146683413529680720375349890657124183402143451386261941831726967241623547730516518157489691595469870457605577506961671962975262765627711978311778568831,1902799189492415414353078357433908586040184020625292954927050794334463542228573690200129890459753919158741038868830813625730427176313830899569147070283793,4441235234472515009394182823484889287294291734625821643151979777333940433347203957187288312869266104616922532152524691218599403609676856231956408684891026,3580348345733490254090424547381076386883485586853308306727571334191202557173978560610098987972134316041366244362357043065458569153238278271714413988113848] 
[331282800743572298592324374729132788104173095106606869813241734873540162823373640352813944066147148678132493595001560932460048914323877876839757334141692,4643715079458442243132339960945565926998969890056192043153038467438821445630539981114714852230796023105707081781922637276611287305636728838211039053312986,5576386483366978765048367323924767548314222382478123016269060819398347813529694854956398568611047051350110129138253561701757952202606280836228710794914516,718696741871145604684270993497281768824619769719963864224192095511514931542637928495677701969242943409416301781598534753322185473042173150107095225149677,1777219023121117246782489604691446825699484728889012228680333914924734142302421813917981205926439397490863584514984440344267352470531806598477495631011924,8282024738314935952937881012106321747258806629652272972893775517814181100661426072319582529906238203044442807547697507966310426519838983262019831835735698,7853373992812758386520506406627674948930358207735155576935973778745393538126031765885584437269423 
72097655310999956704511789264082822191424194461974164661,11178312351976059863099547230148770029682996276672310839271098314138889075655143444258547228327779 84626083927053542393370845190783217800922660573870901693];
上述步骤A2中,所选的哈希函数H是GT的密码学哈希函数,表示集合{1,2,…,p-1}。
系统公开参数PK为系统主密钥MK为  MK = ( y , { t i , j } i ∈ [ 1 , n ] , j ∈ [ 1 , n i ] ) .
用户私钥运算器B执行以下步骤:
B1.对于拥有属性集合S的用户,随机选取r∈Zp *
B2.计算
K2=g1 r=1750480232967899836851824515786134013998268369588862270173415675297341776228132848135811792589474586723030052736840061508273785363706799431618726606176592,2980832553960994927287643636473539095476085593497511475579941173750029163123822046930662912772156797163795589495197269833644504149237148505217247778006180作为用户的私钥SKS=(K1,K2)。
加密服务器C执行以下步骤:
C1.随机选取秘密值s,s'∈Zp *,冗余信息
C2.计算
C ^ = u H ( M ) v H ( M ~ ) d = 318778706823190950943175393133258198588184535073172640312650 46434265299849898573802826770569422559127143628054914776482258956855053122973 10962990497391951,748724141727232153175437148608253463501684810587030976322269 593040638202554949667116201690149952484756117787258953128354622597618171551 71076462798057296 ,
C1=M·Ys=7843192134650186053650113227091942231397350182084834544495038144619304460078784845302684139112839506208425405850112432668724847897775090313075176271061030,1813085931525603814097635689242260305493693313623662951540620058550097079291268290226279519517835072308198642611412811172129871940882357255626427177231663, C2=g1 s=5924309161290917835700569794620309636999134193412681258594214601266032930503407379975792846897203492942571625920676810903616203027151544646323410326540395,80489486928601901874795510570577863564695165282514532720322231849905533137484132907698806875678745335406715878763686539299124362617412785287193198077603,
C 3 = ( Π v i , j ∈ A T i , j ) s = 573686168061641143173436120830882400732948622384612614566333453 72063977095785930465480624472507591731958630455509081238131008324443923577676 1121946893659,5208224708139809687337320393822501184531319063713194649780912427 40652544975017490607749462941107568385530974694747137699850828308499081026031 82325169980 ,
C 1 ′ = M ~ · Y s ′ = 6226966999419681371488817131893427578927285602231263136030991671234 65561574976421892864893928445411850976879355782711356908184208173695168609253 8768306949,1283731542389715156181874154978764580791075300695943370064743122352 04065818112033083678193500410782452981898642655964285581812555336173095146546 3433682688 ,
C 2 ′ = g 1 s ′ = 2370084090574527175200436399030288221225331485570174599588873422098774 72475948249685599627637026015295339383107666397654860575338505958373450699322 5504285,5549015746818112877864881211159435697755190848884965046794005228219621 494453094332092601531185751349899558134224337970807422783746748833329682564089 9423576 ,
这里的明文消息M为简单文本“属性基加密”,为保证安全属性加密之后使用对称秘钥加密一次以后才以密文形式存储到文件中。
解密服务器D执行以下步骤:
D1.计算
C 1 · e ( C 3 , K 2 ) e ( C 2 , K 1 ) = M · e ( g 1 , h ) sy e ( ( g 1 Σ v i , j ∈ A t i , j ) s , g 1 r ) e ( g 1 s , h y ( g 1 Σ v i , j ∈ S t i , j ) r ) = M · e ( g 1 , h ) sy e ( g 1 , g 1 ) sr Σ v i , j ∈ A t i , j e ( g 1 , h ) sy e ( g 1 , g 1 ) sr Σ v i , j ∈ S t i , j = M = 578977707789759884825 75474177283856001263523951281661814091839327556103050054007834562152158219332
6104096017449178395940794025859262737238543917741868130,5644098727596277530156 56711217026593809838299945819730690600138498379344455693629458618621123809975 185522338950860811313457447678582025732382643922173419 ;
D2.计算
C 1 ′ · e ( C 3 ′ , K 2 ) e ( C 2 ′ , K 1 ) = M ~ · e ( g 1 , h ) s ′ y e ( ( g 1 Σ v i , j ∈ A t i , j ) s ′ , g 1 r ) e ( g 1 s ′ , h y ( g 1 Σ v i , j ∈ S t i , j ) r ) = M ~ · e ( g 1 , h ) s ′ y e ( g 1 , g 1 ) s ′ r Σ v i , j ∈ A t i , j e ( g 1 , h ) s ′ y e ( g 1 , g 1 ) s ′ r Σ v i , j ∈ S t i , j = M ~ = 30600718440079235898 98736979022501077226709444574703931836093067503794572396442461466389900468097 979407660791905892953024931695334157250336942457556547261 , y = 776770037583530571 36432703482478542493244448845330046953412291177166580938596443225241482969153 05997091327100338572037941298372029811300625424330468278133 ;
D3.验证如果
C ^ = u H ( M ) v H ( M ~ ) d = 31877870682319095094317539313325819858818453507317264031265046 43426529984989857380282677056942255912714362805491477648225895685505312297310 962990497391951,74872414172723215317543714860825346350168481058703097632226959 30406382025549496671162016901499524847561177872589531283546225976261817155171 076462798057296 则得到明文消息M,否则输出错误信息。
设置转换密钥服务器E执行以下步骤:
E1.随机选取z∈Zp *=389828379491020256326291536057747266252178745066作为恢复密钥RKS,这里的z拥有不可忽略的优势是有乘法逆的;
E2.计算
K 2 ′ = K 2 1 / z = 222215728823913444444689515511130906291527445604303028592795290997 85248187614351319959705240836441146029048109640455296999125874635680369568915 12701925146,309989719291057815032624889631351399658248986505034300335633170999 51363432916876625633876992515211967138939933501723909580996220099054572485990 74607868248 ;
E3.得到转换密钥TKS=(K'1,K'2)和恢复密钥RKS=z。
转换密文服务器F执行以下步骤:
F1.计算
e ( C 2 , K 1 ′ ) e ( C 3 , K 2 ′ ) = e ( g 1 s , h y / z ( g 1 Σ v i , j ∈ S t i , j ) r / z ) e ( ( Π v i , j ∈ A T i , j ) s , g 1 r / z ) = e ( g 1 , h ) sy / z e ( g 1 , g 1 ) sr / z Σ v i , j ∈ S t i , j e ( g 1 , g 1 ) sr / z Σ v i , j ∈ A t i , j = e ( g 1 , h ) sy / z = T ′ = 276821747953188689321 8015053957901545193867324045049383799067867178018941413755152400290917742 9417682461968750182619970216941911935768144209620681299377014218362053034451802156 76407235927799198347408541911935768144209620681299377014218362053034451802156 058091658100503734347982625010928146369438791594315380114826 ;
F2.计算
e ( C 2 ′ , K 1 ′ ) e ( C 3 ′ , K 2 ′ ) = e ( g 1 s ′ , h y / z ( g 1 Σ v i , j ∈ S t i , j ) r / z ) e ( ( Π v i , j ∈ A T i , j ) s ′ , g 1 r / z ) = e ( g 1 , h ) s ′ y / z e ( g 1 , g 1 ) s ′ r / z Σ v i , j ∈ S t i , j e ( g 1 , g 1 ) s ′ r / z Σ v i , j ∈ A t i , j e ( g 1 , h ) s ′ y / z = T ′ ′ = 75489532161002653901 61591463712708740179572876891887194456419378667663559099466070921343386977950 676014870387134312038487024289589392067389079014911443766 , y = 171030047083014424 14881839840245735426632168923707543396388522488260659882362235873980246977081 4343663060275640284098858564993072833616565731984569214379 ;
F3.得到部分解密密文 CT ′ = ( T ^ = C ^ , T 1 = C 1 , T 1 ′ = C 1 ′ , T ′ , T ′ ′ ) .
外包解密服务器G执行以下步骤:
G1.判断初始密文和部分解密密文中的元素,如果或者T1≠C1或者T'1≠C1',那么输出错误信息;
G2.如果上述三个验证都通过,计算
M=C1/T'z=578977707789759884825754741772838560012635239512816618140918393275561030500540078345621521582193326104096017449178395940794025859262737238543917741868130,y=564409872759627753015656711217026593709838299945819730690600138498379344455693629458618621123809975185522338950860811313457447678582025732382643922173419,
M ~ = C 1 ′ / T ′ ′ z = 30600718440079235898987369790225010772267094445747039318360930675037 94572396442461466389900468097979407660791905892953024931695334157250336942457 556547261 , y = 776770037583530571364327834824785424932444488453300469534122911771 66580938596443225241482969153059970913271003385720379412983720298113006254243 30468278133 ;
G3.验证如果
43426529984989857380282677056942255912714362805491477648225895685505312297310 962990497391951,74872414172723215317543714860825346350168481058703097632226959 30406382025549496671162016901499524847561177872589531283546225976261817155171 076462798057296 则输出消息M,否则输出错误信息。
以上只是对本发明的优选实施方式进行了描述。对该技术领域的普通技术人员来说,根据以上实施方式可以很容易地联想到其它的优点和变形。因此,本发明并不局限于上述实施方式,其仅仅作为例子对本发明的一种形态进行详细、示范性的说明。在不背离本发明宗旨的范围内,本领域普通技术人员在本发明技术的方案范围内进行的通常变化和替换,都应包含在本发明的保护范围之内。

Claims (9)

1.一种固定密文长度的可验证外包解密的属性基方法,其特征在于,包括如下步骤:
A、设定系统公开参数PK和系统主密钥MK;
B、根据系统公开参数PK、系统主密钥MK和属性集合S生成用户私钥SKS
C.根据系统公开参数PK,访问结构A对明文消息M进行加密,得到密文CT;
D.根据系统公开参数PK,用户私钥SKS对密文CT进行解密,得到明文消息M;
E.根据系统公开参数PK,用户私钥SKS生成转换密钥TKs和恢复密钥RKS
F.根据系统公开参数PK,转换密钥TKs对密文CT进行转换操作,生成部分解密密文CT';
G.根据系统公开参数PK,恢复密钥RKS对部分解密密文CT'进行外包解密操作,并验证是否是初始密文CT所对应的明文消息M,若是则输出M,若不是则输出错误信息。
2.如权利要求1所述的一种固定密文长度的可验证外包解密的属性基方法,其特征在于,所述步骤A包括:
A1.选取阶为p的乘法循环群G1、GT以及双线性映射e:G1×G1→GT
A2.随机选取G1的一个生成元g1和G1的四个元素h,u,v,d,随机选取群的元素y以及ti,jRZp *,选取一个抗碰撞的哈希函数其中,ti,j表示每个属性对应的私钥部分,下标R表示随机选取,表示集合{1,2,...,p-1},哈希函数H是GT的密码学哈希函数,i∈[1,n],j∈[1,ni],n表示属性数量,ni表示每个属性可取值的数量;
A3.计算Y=e(g1,h)y表示每个属性对应的公钥部分,其中,e(g1,h)为双线性对运算;
得到系统公开参数PK=(e,g1,h,u,v,d,Y,Ti,j,H),系统主密钥MK=(y,ti,j)。
3.如权利要求2所述的一种固定密文长度的可验证外包解密的属性基方法,其特征在于,所述步骤B包括:
B1.对于拥有属性集合S的用户,随机选取r∈Zp *
B2.计算和K2=g1 r作为用户的私钥SKS=(K1,K2),其中,vi,j∈S表示所有用户拥有属性的属性值。
4.如权利要求3所述的一种固定密文长度的可验证外包解密的属性基方法,其特征在于,所述步骤C包括:
C1.随机选取秘密值s,s′∈Zp *,冗余信息
C2.计算C1=M·Ys,C2=g1 sC2′=g1 s′, 得到密文其中,H(M)表示对M作哈希函数操作后的函数值,表示对作哈希函数操作后的函数值。
5.如权利要求4所述的一种固定密文长度的可验证外包解密的属性基方法,其特征在于,所述步骤D包括:
D1.计算
D2.计算
D3.验证如果则得到明文消息M,否则输出错误信息。
6.如权利要求5所述的一种固定密文长度的可验证外包解密的属性基方法,其特征在于,所述步骤E包括:
E1.随机选取z∈Zp *作为恢复密钥RKS
E2.计算
E3.得到转换密钥TKS=(K′1,K′2)和恢复密钥RKS=z。
7.如权利要求6所述的一种固定密文长度的可验证外包解密的属性基方法,其特征在于,所述步骤F包括:
F1.计算
F2.计算
F3.得到部分解密密文其中,是用于验证代理返回结果的正确性。
8.如权利要求7所述的一种固定密文长度的可验证外包解密的属性基方法,其特征在于,所述步骤G包括:
G1.判断初始密文和部分解密密文中的元素,如果或者T1≠C1或者T′1≠C′1,那么输出错误信息;
G2.如果上述三个验证都通过,计算M=C1/T′z
G3.验证如果则输出明文消息M,否则输出错误信息。
9.一种固定密文长度的可验证外包解密的属性基系统,其特征在于,包括公开参数设置服务器、用户私钥运算器、加密服务器、解密服务器、设置转换密钥服务器、转换密文服务器、外包解密服务器;其中,
公开参数设置服务器,用于生成系统主密钥和系统公开参数,系统主密钥发送至用户私钥运算器,系统公开参数发送至用户私钥运算器、加密服务器、解密服务器、设置转换密钥服务器、转换密文服务器、外包解密服务器;
用户私钥运算器,用于根据系统主密钥、系统公开参数生成各个用户的私钥,并将用户的私钥发送至解密服务器和设置转换密钥服务器;
加密服务器,根据系统公开参数,以及加密者用来限制解密者所必须需要拥有的身份条件的访问结构,对明文消息进行加密,生成该消息的原始密文,并将原始密文发送至解密服务器、转换密文服务器和外包解密服务器;
解密服务器,根据系统公开参数、私钥,将原始密文解密得到明文消息;
设置转换密钥服务器,根据系统公开参数、私钥,生成转换密钥和恢复密钥,并将转换密钥发送至转换密文服务器,将恢复密钥发送给外包解密服务器;
转换密文服务器,根据系统公开参数、转换密钥,将加密服务器发送的原始密文进行转换,获得部分解密密文,将其发送给外包解密服务器;
外包解密服务器,根据系统公开参数、恢复密钥,对转换密文服务器发送的部分解密密文进行外包解密,并利用加密服务器发送的原始密文做校验,检验转换操作是否正确。
CN201510154824.9A 2015-04-02 2015-04-02 一种固定密文长度的可验证外包解密的属性基系统及方法 Pending CN104753947A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510154824.9A CN104753947A (zh) 2015-04-02 2015-04-02 一种固定密文长度的可验证外包解密的属性基系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510154824.9A CN104753947A (zh) 2015-04-02 2015-04-02 一种固定密文长度的可验证外包解密的属性基系统及方法

Publications (1)

Publication Number Publication Date
CN104753947A true CN104753947A (zh) 2015-07-01

Family

ID=53593051

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510154824.9A Pending CN104753947A (zh) 2015-04-02 2015-04-02 一种固定密文长度的可验证外包解密的属性基系统及方法

Country Status (1)

Country Link
CN (1) CN104753947A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105100083A (zh) * 2015-07-06 2015-11-25 河海大学 一种隐私保护且支持用户撤销的基于属性加密方法和系统
CN106059765A (zh) * 2016-08-04 2016-10-26 北京邮电大学 一种云环境下基于属性密码的数字虚拟资产访问控制方法
CN106209790A (zh) * 2016-06-28 2016-12-07 电子科技大学 一种隐藏密文策略的高效可验证外包属性基加密方法
CN106878322A (zh) * 2017-03-10 2017-06-20 北京科技大学 一种基于属性的定长密文与密钥的加密、解密方法
CN109740383A (zh) * 2019-01-10 2019-05-10 南京信息职业技术学院 一种面向雾计算医疗系统的隐私保护控制方法
CN110061837A (zh) * 2019-04-22 2019-07-26 南京工业大学 一种基于外包解密的密文定长的加密传输机制
CN111327620A (zh) * 2020-02-27 2020-06-23 福州大学 云雾计算框架下的数据安全溯源及访问控制系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102916954A (zh) * 2012-10-15 2013-02-06 南京邮电大学 一种基于属性加密的云计算安全访问控制方法
CN104144057A (zh) * 2014-07-10 2014-11-12 北京大学 一种生成安全解密密钥的cp-abe方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102916954A (zh) * 2012-10-15 2013-02-06 南京邮电大学 一种基于属性加密的云计算安全访问控制方法
CN104144057A (zh) * 2014-07-10 2014-11-12 北京大学 一种生成安全解密密钥的cp-abe方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
EMURA K, MIYAJI A, NOMURA A, ET AL.: ""A Ciphertext-Policy Attribute-Based Encryption Scheme with Constant Ciphertext Length"", 《ISPEC》 *
JIN LI, XINYI HUANG, JINGWEI LI, XIAOFENG CHEN ET AL.: ""Securely Outsourcing Attribute-Based"", 《IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS》 *
LAI J, DENG R H, GUAN C, ET AL.: ""Attribute-Based Encryption With Verifiable Outsourced Decryption"", 《IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY》 *
张婷,杨庚,滕玮等: ""云计算中基于属性和定长密文的访问控制方法"", 《计算机技术与发展》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105100083A (zh) * 2015-07-06 2015-11-25 河海大学 一种隐私保护且支持用户撤销的基于属性加密方法和系统
CN105100083B (zh) * 2015-07-06 2019-04-30 河海大学 一种隐私保护且支持用户撤销的基于属性加密方法和系统
CN106209790A (zh) * 2016-06-28 2016-12-07 电子科技大学 一种隐藏密文策略的高效可验证外包属性基加密方法
CN106209790B (zh) * 2016-06-28 2020-02-07 电子科技大学 一种隐藏密文策略的高效可验证外包属性基加密方法
CN106059765A (zh) * 2016-08-04 2016-10-26 北京邮电大学 一种云环境下基于属性密码的数字虚拟资产访问控制方法
CN106878322A (zh) * 2017-03-10 2017-06-20 北京科技大学 一种基于属性的定长密文与密钥的加密、解密方法
CN106878322B (zh) * 2017-03-10 2019-06-07 北京科技大学 一种基于属性的定长密文与密钥的加密、解密方法
CN109740383A (zh) * 2019-01-10 2019-05-10 南京信息职业技术学院 一种面向雾计算医疗系统的隐私保护控制方法
CN109740383B (zh) * 2019-01-10 2021-12-14 南京信息职业技术学院 一种面向雾计算医疗系统的隐私保护控制方法
CN110061837A (zh) * 2019-04-22 2019-07-26 南京工业大学 一种基于外包解密的密文定长的加密传输机制
CN111327620A (zh) * 2020-02-27 2020-06-23 福州大学 云雾计算框架下的数据安全溯源及访问控制系统
CN111327620B (zh) * 2020-02-27 2021-04-27 福州大学 云雾计算框架下的数据安全溯源及访问控制系统

Similar Documents

Publication Publication Date Title
CN106961336B (zh) 一种基于sm2算法的密钥分量托管方法和系统
CN104753947A (zh) 一种固定密文长度的可验证外包解密的属性基系统及方法
CN103004129B (zh) 加密装置、解密装置、加密方法、解密方法、程序及记录介质
CN104767612B (zh) 一种从无证书环境到公钥基础设施环境的签密方法
CN110120939B (zh) 一种基于异构系统的可否认认证的加密方法和系统
CN104821880B (zh) 一种无证书广义代理签密方法
CN109831430A (zh) 一种云计算环境下的安全可控高效的数据共享方法及系统
CN104320393B (zh) 重加密可控的高效属性基代理重加密方法
CN110113150B (zh) 基于无证书环境的可否认认证的加密方法和系统
CN101262341A (zh) 一种会务系统中混合加密方法
CN104270249A (zh) 一种从无证书环境到基于身份环境的签密方法
CN104767611B (zh) 一种从公钥基础设施环境到无证书环境的签密方法
CN102594551B (zh) Rfid标签隐私数据可靠统计方法
CN102523093A (zh) 一种带标签的基于证书密钥封装方法及系统
CN104301108A (zh) 一种从基于身份环境到无证书环境的签密方法
CN106713349B (zh) 一种能抵抗选择密文攻击的群组间代理重加密方法
CN105635135A (zh) 一种基于属性集及关系谓词的加密系统及访问控制方法
CN105610773A (zh) 一种电能表远程抄表的通讯加密方法
CN107086912B (zh) 一种异构存储系统中的密文转换方法、解密方法及系统
CN103746811A (zh) 从身份公钥系统到证书公钥系统的匿名签密方法
CN106936584A (zh) 一种无证书公钥密码系统的构造方法
CN113141247B (zh) 一种同态加密方法、装置、系统及可读存储介质
CN105162589A (zh) 一种基于格的可验证属性加密方法
CN107172043A (zh) 一种基于同态加密的智能电网用户售电方法
CN102970144A (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
CB03 Change of inventor or designer information

Inventor after: Li Jiguo

Inventor after: Sha Fengjie

Inventor after: Zhang Yichen

Inventor after: Yao Wei

Inventor after: Lin Xiaonan

Inventor after: Wang Haiping

Inventor before: Li Jiguo

Inventor before: Sha Fengjie

Inventor before: Sun Yichen

Inventor before: Yao Wei

Inventor before: Lin Xiaonan

Inventor before: Wang Haiping

COR Change of bibliographic data
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150701

WD01 Invention patent application deemed withdrawn after publication