一种可撤销的云数据安全共享方法技术

技术编号:21369816 阅读:30 留言:0更新日期:2019-06-15 11:14
本发明专利技术公开了一种可撤销的云数据安全共享方法,步骤:云服务器生成系统的公共参数和主密钥;云服务器为每个用户id生成对应的私钥;数据拥有者将需要共享的数据M加密成密文C,并上传至云服务器;数据拥有者为初始的共享用户列表S生成共享密钥,并上传至云服务器;云服务器从数据拥有者处接收需要撤销的共享用户列表R,得到新的共享用户列表S′=S‑R,并生成共享用户列表S′对应的新的共享密钥;云服务器根据密文C和当前的共享密钥生成共享用户的密文CT;各用户从云服务器下载密文,利用私钥进行解密,获得数据M。通过本发明专利技术,数据拥有者可以将自己存储在云端的数据与其他用户安全共享,同时可以根据自己的要求高效地撤销部分共享用户。

A revocable method for cloud data security sharing

The invention discloses a revocable method for cloud data security sharing, which comprises the following steps: the cloud server generates public parameters and master keys of the system; the cloud server generates corresponding private keys for each user id; the data owner encrypts the shared data M into ciphertext C and uploads it to the cloud server; and the data owner generates the shared key for the initial list of shared users S and uploads it to the cloud server. Cloud server; Cloud server receives shared user list R which needs to be revoked from data owner, gets new shared user list S'=S R, and generates new shared key corresponding to shared user list S'; Cloud server generates shared user's ciphertext CT according to ciphertext C and current shared key; Users download ciphertext from cloud server, decrypt it using private key, and obtain it. Get data M. By the present invention, the data owner can safely share the data stored in the cloud with other users, and at the same time can efficiently revoke part of the shared users according to his own requirements.

【技术实现步骤摘要】
一种可撤销的云数据安全共享方法
本专利技术属于信息共享和信息安全领域,特别涉及了一种可撤销的云数据安全共享方法。
技术介绍
随着云技术的发展,越来越多的用户、企业、科研院所将自己的信息保存至云端。云计算给用户提供便利的数据服务时也带来用户数据安全的问题。为了保护用户数据的安全,用户的数据通常在本地加密后再存储在云端。当用户的数据被加密存储在云端后,用户往往需要对数据进行某些操作,而数据共享是最长见的一种操作。然而由于加密使得用户的数据失去了原有的结构,导致了云服务器对数据的共享操作也随之失效。现有的云数据安全共享方法主要基于代理重加密来实现。现有的基于代理重加密的实现方法都无法实现对共享用户的安全、高效撤销。现有的实现方法都是将共享密钥设置在某一个时间段内有效,当每一个新的时间段来临时,无论是否有用户被从共享列表中撤销掉,数据拥有者都需要为共享列表中的用户重新生成一个新的共享密钥。这些方法存在两个问题:(1)数据拥有者在每个新的时间段都需要生成一个新的共享密钥,而新的共享密钥的计算量往往比较大;(2)数据拥有者每次生成新的共享密钥后都需要一个安全信道来将这个共享密钥发送给云服务器,建立安全信道的代价往往比较大。
技术实现思路
为了解决上述
技术介绍
提出的技术问题,本专利技术提供一种可撤销的云数据安全共享方法。为了实现上述技术目的,本专利技术的技术方案为:一种可撤销的云数据安全共享方法,包括以下步骤:(1)云服务器生成系统的公共参数和系统的主密钥;(2)云服务器为每个用户id生成对应的私钥;(3)数据拥有者将需要共享的数据M加密成密文C,并上传至云服务器;(4)数据拥有者为初始的共享用户列表S生成共享密钥,并上传至云服务器;(5)数据拥有者是否需要撤销部分共享用户,若是,进入步骤(6),若否进入步骤(7);(6)云服务器从数据拥有者处接收需要撤销的共享用户列表R,得到新的共享用户列表S′=S-R,并生成共享用户列表S′对应的新的共享密钥;(7)云服务器根据密文C和当前的共享密钥生成共享用户的密文CT;(8)各用户从云服务器下载密文,利用私钥进行解密,获得数据M。进一步地,在步骤(1)中,云服务器首先选取一个标准椭圆曲线,并根据该椭圆曲线构造循环群G以及群G上的双线性运算e:G×G→GT,其中GT是由双线性运算e的结果构成的群,群G的生成元为g,阶数为素数p;云服务器随机选取群G上的元素μ,Q∈G和整数α∈Zp,其中Zp表示整数集合{0,1,…,p-1},计算ν=e(g,μ),其中N为系统支持的最大用户数量;云服务器生成两个抗碰撞哈希函数:H1:{0,1}*→Zp,H2:GT→G,其中{0,1}*表示任意长度的0,1字符串;云服务器生成系统的公共参数mpk=(G,GT,e,p,g,g1,…,gN,μ1,…,μN,ν,Q,H1,H2)以及系统的主密钥msk=(α,μ);进一步地,在步骤(2)中,每个用户id生成对应的私钥进一步地,在步骤(3)中,数据拥有者将数据M加密成密文C=(CM,C0,C1),其中CM=M·νr,C1=Qr,r∈Zp是随机选取的整数。进一步地,在步骤(4)中,数据拥有者为初始的共享用户列表S生成共享密钥rk:rk=(rk1,rk2,rk3,rk4,rk5,(rk6,i)i∈{1,2,…,k+1})其中,rk1=skid·Qt,rk2=gαt,t,s∈Zp,σ∈GT,k为系统支持的最大撤销用户数。进一步地,在步骤(6)中,云服务器生成共享用户列表S′对应的新的共享密钥rk′:rk′=(rk1,rk2,rk3,rk4′,rk5′,rk6′)其中,fi是多项式F(x)的项xi的系数,进一步地,在步骤(7)中,生成的共享密文CT=(CM′,C1′,C2′,C3′,C4′,C5′);若当前共享密钥为原共享密钥rk,则CM′=CM·e(rk1,C0)-1·(rk2,C1),C1′=C1,C2′=rk3,C3′=rk4,C4′=rk5,C5′=rk6,1;若当前共享密钥为新的共享密钥rk′,则CM′=CM·e(rk1,C0)-1·(rk2,C1),C1′=C1,C2′=rk3,C3′=rk4′,C4′=rk5′,C5′=rk6′。进一步地,在步骤(8)中,若用户为数据拥有者,从云服务器下载密文C,解密得到数据M=CM·e(skid,C0)-1;若用户不是数据拥有者,从云服务器下载共享密文CT,首先计算其中i表示实施解密的用户,j表示S中用户i以外的用户,idj表示用户j的id,再计算σ=C3′·T-1,最后计算采用上述技术方案带来的有益效果:通过本专利技术,数据拥有者在每次需要撤销共享用户时,仅仅需要发送一个撤销的共享用户列表给云服务器,传统方法在Intel(R)Core(TM)i5-8250UCPU@1.60GHZ8GBRAM的PC机上需要144毫秒产生新的共享密钥,采用本专利技术后几乎是实时的。同时,传统方法无法在智能手机等移动设备上计算生成新的共享密钥,而本专利技术可以支持数据拥有者在智能手机等移动设备上授权数据共享。附图说明图1是本专利技术的方法流程图。具体实施方式以下将结合附图,对本专利技术的技术方案进行详细说明。一种可撤销的云数据安全共享方法,如图1所述,包括以下步骤:步骤1:云服务器生成系统的公共参数和系统的主密钥;步骤2:云服务器为每个用户id生成对应的私钥;步骤3:数据拥有者将需要共享的数据M加密成密文C,并上传至云服务器;步骤4:数据拥有者为初始的共享用户列表S生成共享密钥,并上传至云服务器;步骤5:数据拥有者是否需要撤销部分共享用户,若是,进入步骤6,若否进入步骤7;步骤6:云服务器从数据拥有者处接收需要撤销的共享用户列表R,得到新的共享用户列表S′=S-R,并生成共享用户列表S′对应的新的共享密钥;步骤7:云服务器根据密文C和当前的共享密钥生成共享用户的密文CT;步骤8:各用户从云服务器下载密文,利用私钥进行解密,获得数据M。在本实施例中,步骤1采用如下优选方案实现:云服务器首先选取一个标准椭圆曲线,并根据该椭圆曲线构造循环群G以及群G上的双线性运算e:G×G→GT,其中GT是由双线性运算e的结果构成的群,群G的生成元为g,阶数为素数p;云服务器随机选取群G上的元素μ,Q∈G和整数α∈Zp,其中Zp表示整数集合{0,1,…,p-1},计算ν=e(g,μ),其中N为系统支持的最大用户数量;云服务器生成两个抗碰撞哈希函数:H1:{0,1}*→Zp,H2:GT→G,其中{0,1}*表示任意长度的0,1字符串;云服务器生成系统的公共参数mpk=(G,GT,e,p,g,g1,…,gN,μ1,…,μN,ν,Q,H1,H2)以及系统的主密钥msk=(α,μ);在本实施例中,步骤2采用如下优选方案实现:每个用户id生成对应的私钥在本实施例中,步骤3采用如下优选方案实现:数据拥有者将数据M加密成密文C=(CM,C0,C1),其中CM=M·νr,C1=Qr,r∈Zp是随机选取的整数。在本实施例中,步骤4采用如下优选方案实现:数据拥有者为初始的共享用户列表S生成共享密钥rk:rk=(rk1,rk2,rk3,rk4,rk5,(rk6,i)i∈{1,2,…,k+1})其中,rk1=skid·Qt,rk2=gαt,t,s∈Zp本文档来自技高网...

【技术保护点】
1.一种可撤销的云数据安全共享方法,其特征在于,包括以下步骤:(1)云服务器生成系统的公共参数和系统的主密钥;(2)云服务器为每个用户id生成对应的私钥;(3)数据拥有者将需要共享的数据M加密成密文C,并上传至云服务器;(4)数据拥有者为初始的共享用户列表S生成共享密钥,并上传至云服务器;(5)数据拥有者是否需要撤销部分共享用户,若是,进入步骤(6),若否进入步骤(7);(6)云服务器从数据拥有者处接收需要撤销的共享用户列表R,得到新的共享用户列表S′=S‑R,并生成共享用户列表S′对应的新的共享密钥;(7)云服务器根据密文C和当前的共享密钥生成共享用户的密文CT;(8)各用户从云服务器下载密文,利用私钥进行解密,获得数据M。

【技术特征摘要】
1.一种可撤销的云数据安全共享方法,其特征在于,包括以下步骤:(1)云服务器生成系统的公共参数和系统的主密钥;(2)云服务器为每个用户id生成对应的私钥;(3)数据拥有者将需要共享的数据M加密成密文C,并上传至云服务器;(4)数据拥有者为初始的共享用户列表S生成共享密钥,并上传至云服务器;(5)数据拥有者是否需要撤销部分共享用户,若是,进入步骤(6),若否进入步骤(7);(6)云服务器从数据拥有者处接收需要撤销的共享用户列表R,得到新的共享用户列表S′=S-R,并生成共享用户列表S′对应的新的共享密钥;(7)云服务器根据密文C和当前的共享密钥生成共享用户的密文CT;(8)各用户从云服务器下载密文,利用私钥进行解密,获得数据M。2.根据权利要求1所述可撤销的云数据安全共享方法,其特征在于,在步骤(1)中,云服务器首先选取一个标准椭圆曲线,并根据该椭圆曲线构造循环群G以及群G上的双线性运算e:G×G→GT,其中GT是由双线性运算e的结果构成的群,群G的生成元为g,阶数为素数p;云服务器随机选取群G上的元素μ,Q∈G和整数α∈Zp,其中Zp表示整数集合{0,1,…,p-1},计算ν=e(g,μ),其中N为系统支持的最大用户数量;云服务器生成两个抗碰撞哈希函数:H1:{0,1}*→Zp,H2:GT→G,其中{0,1}*表示任意长度的0,1字符串;云服务器生成系统的公共参数mpk=(G,GT,e,p,g,g1,…,gN,μ1,…,μN,ν,Q,H1,H2)以及系统的主密钥msk=(α,μ)。3.根据权利要求2所述可撤销的云数据安全共享方法,其特征在于,在步骤(2)中,每个用户id生成对应的私钥4.根据权利要求3所述可撤销的云数据安全共享方法,其特征在于,在步骤(3)中,数据拥有者将数据M加密成...

【专利技术属性】
技术研发人员:刘哲葛春鹏
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1