CN106888213B - 云密文访问控制方法及系统 - Google Patents

云密文访问控制方法及系统 Download PDF

Info

Publication number
CN106888213B
CN106888213B CN201710148858.6A CN201710148858A CN106888213B CN 106888213 B CN106888213 B CN 106888213B CN 201710148858 A CN201710148858 A CN 201710148858A CN 106888213 B CN106888213 B CN 106888213B
Authority
CN
China
Prior art keywords
key
ciphertext
file
access
cloud server
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.)
Active
Application number
CN201710148858.6A
Other languages
English (en)
Other versions
CN106888213A (zh
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.)
Shenzhen University
Original Assignee
Shenzhen University
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 Shenzhen University filed Critical Shenzhen University
Priority to CN201710148858.6A priority Critical patent/CN106888213B/zh
Publication of CN106888213A publication Critical patent/CN106888213A/zh
Application granted granted Critical
Publication of CN106888213B publication Critical patent/CN106888213B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Abstract

本发明公开了一种云密文访问控制方法及系统,该方法包括:当用户通过访问端向云服务器请求访问加密的文件时,该云服务器获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端,该访问端接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件,这样确保数据的安全性,同时云服务器承担了部分的解密运算,提高了解密速度和效率。

Description

云密文访问控制方法及系统
技术领域
本发明属于云计算领域,尤其涉及一种云密文访问控制方法及系统。
背景技术
云计算(cloud computing)将大量的存储资源、计算资源和软件资源链接在一起,向用户提供计算、存储以及应用服务。由于云计算存储有大量资源且为开放性,往往成为黑客攻击的焦点,故安全性的威胁是云计算面临的严峻的考验。
由于数据拥有者与物理拥有者的分离,云计算与用户处于两个不同的安全域,用户担心存储在云服务器上的数据被非法访问、丢失、篡改或伪造。所以用户上传到云服务器上的数据,均以密文的形式存储在该云服务器上,进而可以避免数据的非法访问。但是现有密文的加密和解密都非常复杂,当用户通过终端请求访问加密的数据时,需要经过大量的解密运算才能够获取数据,导致占用该终端中大量的内存资源,进而造成解密速度慢,效率低。
发明内容
本发明提供一种云密文访问控制方法及系统,旨在解决由于在解密过程中产生大量的解密运算导致的占用该终端大量内存资源,进而造成解密速度慢,效率低的问题。
本发明提供了一种云密文访问控制方法,包括:
当用户通过访问端向云服务器请求访问加密的文件时,所述云服务器获取所述文件对应的密钥密文,并判断所述用户的属性是否满足所述密钥密文中的访问树结构,若是,则向所述访问端请求获取转换密钥中的局部密钥,以及依据所述局部密钥对所述密钥密文进行解密,以解密出中间密文,将所述中间密文和所述文件对应的文件密文转发给所述访问端;
所述访问端接收所述中间密文,并依据已存储的私钥对所述中间密文进行解密,以解密出明文密钥,以及依据所述明文密钥对所述文件密文进行解密,以解密出所述文件。
本发明提供了一种云密文访问控制系统,包括:云服务器和访问端;
所述云服务器,用于当用户通过访问端向所述云服务器请求访问加密的文件时,获取所述文件对应的密钥密文,并判断所述用户的属性是否满足所述密钥密文中的访问树结构,若是,则向所述访问端请求获取转换密钥中的局部密钥,以及依据所述局部密钥对所述密钥密文进行解密,以解密出中间密文,将所述中间密文和所述文件对应的文件密文转发给所述访问端;
所述访问端,用于接收所述中间密文,并依据已存储的私钥对所述中间密文进行解密,以解密出明文密钥,以及依据所述明文密钥对所述文件密文进行解密,以解密出所述文件。
本发明提供的云密文访问控制方法及系统,当用户通过访问端向云服务器请求访问加密的文件时,该云服务器获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端,该访问端接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件,这样仅有权限的用户可以解密出文件,确保了数据的安全性,云服务器依据局部密钥对密文进行解密运算,承担了部分的解密运算,减少了访问端的解密运算量,提高了解密速度和效率,从而增加了访问端访问加密的文件的速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例。
图1是本发明第一、二实施例提供的云密文访问控制方法的实现流程示意图;
图2是本发明第三实施例提供的云密文访问控制系统的结构示意图;
图3是本发明第四实施例提供的云密文访问控制系统的结构示意图;
图4是本发明实施例提供的云密文访问控制系统中四个实体设备的示意图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本发明第一实施例提供云密文访问控制方法的实现流程示意图,图1所示的云密文访问控制方法,主要包括以下步骤:
S101、当用户通过访问端向云服务器请求访问加密的文件时,该云服务器获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端。
该用户为需要从云服务器中访问加密的文件的数据访问者。该用户使用访问端向该云服务器发送访问请求,该访问端可以是计算机、手机、智能电视、平板电脑等支持与该云服务器交互,并能够读取数据的终端。
该加密的文件为经过加密后并存储于云服务器上的数据。该用户的属性用于划分访问不同等级的加密的文件的用户,例如,设共有三个加密文件的等级:低级、中级和高级,若用户的属性为属性A,则属性A的用户能够访问高级的加密的文件;若用户的属性为属性B,则属性B的用户能够访问中级的加密的文件;若用户的属性为属性C,则属性C的用户能够访问低级的加密的文件。每一属性可以对应一个等级,也可以对应多个等级。该访问树结构是一种数据访问结构。云服务器通过判断用户的属性是否满足该访问树结构中的等级,确定该用户是否有权限访问该文件。
该密钥密文为加密该文件的密钥的密文。该局部密钥为该转换密钥中一部分的密钥,该局部密钥是由用户上传给该云服务器,该云服务器依据该局部密钥解密该密钥密文,只能解密出中间密文,不能直接解密出文件,可以有效地确保数据的安全性,同时云服务器承担部分的解密运算,提高了解密速度和效率。
S102、该访问端接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件。
该明文密钥为与加密该文件的密钥对应的解密密钥。
本发明实施例中,当用户通过访问端向云服务器请求访问加密的文件时,该云服务器获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端,该访问端接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件,这样仅具有权限的用户可以解密出文件,确保了数据的安全性,同时云服务器依据局部密钥对密文进行解密运算,承担了部分的解密运算,减少了访问端的解密运算量,提高了解密速度和效率,从而增加了访问端访问加密的文件的速度。
同样参阅图1,本发明第二实施例提供的云密文访问控制方法,主要包括以下步骤:
S101、当用户通过访问端向云服务器请求访问加密的文件时,该云服务器获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端。
该用户为需要从云服务器中访问加密的文件的数据访问者。该用户使用访问端向该云服务器发送访问请求,该访问端可以是计算机、手机、智能电视、平板电脑等支持与该云服务器交互,并能够读取数据的终端。
该加密的文件为经过加密后并存储于云服务器上的数据。该用户的属性用于划分访问不同等级的加密的文件的用户,例如,设共有三个加密文件的等级:低级、中级和高级,若用户的属性为属性A,则属性A的用户能够访问高级的加密的文件;若用户的属性为属性B,则属性B的用户能够访问中级的加密的文件;若用户的属性为属性C,则属性C的用户能够访问低级的加密的文件。每一属性可以对应一个等级,也可以对应多个等级。该访问树结构是一种数据访问结构。云服务器通过判断用户的属性是否满足该访问树结构中的等级,确定该用户是否有权限访问该文件。若该用户的属性不满足该密钥密文中的访问树结构,则该用户将不能访问该文件,即该用户没有权限访问。
该密钥密文为加密该文件的密钥的密文。该局部密钥为该转换密钥中一部分的密钥,该局部密钥是由用户上传给该云服务器,该云服务器依据该局部密钥解密该密钥密文,只能解密出中间密文,不能直接解密出文件,可以有效地确保数据的安全性,同时云服务器承担部分的解密运算,提高了解密速度和效率。
S102、该访问端接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件。
进一步地,当用户通过访问端向该云服务器请求访问加密的文件时,该云服务器获取该文件对应的密钥密文之前,具体为:
密钥权威机构(KA,Key Authority)构建选择阶为素数p,和生成元为g的双线性群G0
定义全局属性集合L={a1,a2,...,am}以及安全等级k,其中j属于1到m;
选取随机数vj∈Zp,并将该随机数vj作为属性版本密钥VKj=vj,并依据该属性版本密钥生成子公钥
Figure GDA0002359242770000061
其中Zp为有限域;
选取两个随机数α,β∈Zp,并依据该两个随机数α、β,该子公钥和该双线性群,分别生成系统主私钥MSK={β,gα,{MSKj=VKj|aj∈L}},和系统主公钥
Figure GDA0002359242770000062
假设系统有m个属性L={a1,a2,...,am}。设G0是一个阶为素数p的双线性群,g是G0的生成元,e:G0×G0→GT表示双线性映射。哈希函数H:{0,1}*→G0。其中L中每一属性均对应一个属性版本密钥。
系统初始化之后,密钥权威机构对每一用户设置用户属性集S,其中S为L的子集;
选取两个随机数r,z∈Zp,依据该两个随机数r,z,该系统主私钥和该用户属性集S,分别生成该转换密钥
Figure GDA0002359242770000063
和该私钥SK=(z,TK)。
进一步地,当用户通过访问端向该云服务器请求访问加密的文件时,该云服务器获取该文件对应的密钥密文之前,具体为:
数据属主(DO,data owner)依据预置应用密钥ck,并通过对称加密算法对该文件进行加密,生成该文件密文Eck(M),其中M表示该文件;
为该访问树结构T中的每一节点x选取一个多项式qx
设置该每一节点x对应的多项式qx中阶dx比各节点对应的门限值kx少1,其中kx=dx+1;
从根节点R起,选取随机数s∈Zp,并设置qR(0)=s,以及选择dR个节点定义多项式qR
为每一个非根节点x设置qx(0)=qpartent(x)(index(x)),并选择dx个节点定义多项式qx
通过该访问树结构T和该系统主公钥对该应用密钥ck进行加密,得到该密钥密文CT,其中该密钥密文CT为:
Figure GDA0002359242770000071
其中,X是该访问树结构T中叶子节点对应的属性的集合;
将该密钥密文CT和该文件密文上传至该云服务器。
该对称加密算法是指加密过程和解密过程使用相同的密钥的加密算法,即加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。故该应用密钥与该明文密钥相同。
进一步地,向该访问端请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文具体为:
该云服务器接收该访问端发送的该转换密钥中的局部密钥,其中该转换密钥中的局部密钥
Figure GDA0002359242770000072
预先定义递归运算DecryptNode(CT,TK',x),其中,若节点x为该访问树结构T中的叶子节点,设aj=att(x)且aj∈S,则
Figure GDA0002359242770000073
Figure GDA0002359242770000074
若x不是该访问树结构T中的叶子节点,且为该节点x中所有子节点n,设置Fn=DecryptNode(CT,TK',n),则
Figure GDA0002359242770000075
Figure GDA0002359242770000081
其中,j=index(n),Sx'={index(n):n∈Sx};
通过所述访问树结构T中根节点R对应的函数DecryptNode(CT,TK',R)进行运算,算出所述中间密文T={A,B},其中,
Figure GDA0002359242770000082
设A=FR=e(g,g)rs/z
Figure GDA0002359242770000083
则该依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件具体为:
所述访问端依据所述私钥SK和接收到的所述中间密文T={A,B},解密出所述明文密钥ck,其中
Figure GDA0002359242770000084
该访问端通过该明文密钥ck对该文件密文Eck(M)进行解密,解密出该文件M。
若节点x为该访问树结构T中的叶子节点,且
Figure GDA0002359242770000085
则DecryptNode(CT,TK',x)=⊥。
若x不是该访问树结构T中的叶子节点,令Sx为任意的kx个子节点n构成的集合,则Fn≠⊥,若该集合不存在,则Fn=⊥。
该私钥SK是由该密钥权威机构依据用户的属性预先下发给各用户。
进一步地,该方法还包括:
当撤销用户μ的属性x'被撤销时,该密钥权威机构选取随机数vx' *∈Zp(vx' *≠vx'),并将该属性x'对应的属性版本密钥VKx'=vx'更换为属性版本密钥VKx' *,令VKx' *=vx' *,以及依据VKx' *生成更新密钥为UKx',依据更换后的属性版本密钥VKx' *更新该系统主公钥为
Figure GDA0002359242770000091
并将该更新密钥UKx'发送给每一非撤销用户的访问端和该云服务器,其中,
Figure GDA0002359242770000092
该每一非撤销用户的访问端接收该密钥权威机构发送的该更新密钥UKx',各非撤销用户的访问端将已存储的该私钥SK更新为:
Figure GDA0002359242770000093
该云服务器接收该密钥权威机构发送的该更新密钥UKx',并将该密钥密文CT更新为:
Figure GDA0002359242770000094
上述密钥更新过程中包括三个部分:一是该密钥权威机构生成更新密钥;二是非撤销用户更新自身存储的私钥;三是该云服务器更新密文。
需要说明的是,该密钥权威机构、非撤销用户以及该云服务器只更新与属性x'有关联的密钥和密文,这样更新所占的资源少,同时在用户身份变更时,也可以及时的更新密钥和密文,以确保数据的安全性。
本发明实施例中,当用户通过访问端向云服务器请求访问加密的文件时,该云服务器获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端,该访问端接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件,同时当有用户被撤销时,密钥权威机构、访问端以及云服务器更新密钥或者密文,这样仅具有权限的用户可以解密出文件,确保了数据的安全性,同时云服务器依据局部密钥对密文进行解密运算,承担了部分的解密运算,减少了访问端的解密运算量,提高了解密速度和效率,从而增加了访问端访问加密的文件的速度。
请参阅图2,图2是本发明第三实施例提供的云密文访问控制系统的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。图2示例的云密文访问控制系统可以是前述图1所示实施例提供的云密文访问控制方法的执行主体。图2示例的云密文访问控制系统,主要包括:云服务器201和访问端202。以上各功能模块详细说明如下:
该云服务器201,用于当用户通过访问端向该云服务器201请求访问加密的文件时,获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端202请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端202。
该用户为需要从云服务器201中访问加密的文件的数据访问者。该用户使用访问端202向该云服务器201发送访问请求,该访问端202可以是计算机、手机、智能电视、平板电脑等支持与该云服务器交互,并能够读取数据的终端。
该加密的文件为经过加密后并存储于云服务器201上的数据。该用户的属性用于划分访问不同等级的加密的文件的用户,例如,设共有三个加密文件的等级:低级、中级和高级,若用户的属性为属性A,则属性A的用户能够访问高级的加密的文件;若用户的属性为属性B,则属性B的用户能够访问中级的加密的文件;若用户的属性为属性C,则属性C的用户能够访问低级的加密的文件。每一属性可以对应一个等级,也可以对应多个等级。该访问树结构是一种数据访问结构。云服务器201通过判断用户的属性是否满足该访问树结构中的等级,确定该用户是否有权限访问该文件。
该密钥密文为加密该文件的密钥的密文。该局部密钥为该转换密钥中一部分的密钥,该云服务器201依据该局部密钥解密该密钥密文,只能解密出中间密文,不能直接解密出文件,可以有效地确保数据的安全性,同时云服务器承担部分的解密运算,提高了解密速度和效率。
该访问端202,用于接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件。
该明文密钥为与加密该文件的密钥对应的解密密钥。
本实施例未尽之细节,请参阅前述图1所示实施例的描述,此处不再赘述。
本发明实施例中,该云服务器201当用户通过访问端向云服务器201请求访问加密的文件时,获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端202请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端202,该访问端202接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件,这样仅具有权限的用户可以解密出文件,确保了数据的安全性,同时云服务器依据局部密钥对密文进行解密运算,承担了部分的解密运算,减少了访问端的解密运算量,提高了解密速度和效率,从而增加了访问端访问加密的文件的速度。
请参阅图3,图3为本发明第四实施例提供的云密文访问控制系统的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。图3示例的云密文访问控制系统可以是前述图1所示实施例提供的云密文访问控制方法的执行主体。图3示例的云密文访问控制系统,主要包括:密钥权威机构301、数据属主302、云服务器303和访问端304。以上各功能模块详细说明如下:
密钥权威机构301用于执行以下步骤:
构建选择阶为素数p,和生成元g的双线性群G0
定义全局属性集合L={a1,a2,...,am}以及安全等级k,其中j属于1到m;
选取随机数vj∈Zp,并将该随机数vj作为属性版本密钥VKj=vj,并依据该属性版本密钥生成子公钥
Figure GDA0002359242770000111
其中Zp为有限域;
选取两个随机数α,β∈Zp,并依据该两个随机数α、β,该子公钥和该双线性群,分别生成系统主私钥MSK={β,gα,{MSKj=VKj|aj∈L}},和系统主公钥
Figure GDA0002359242770000121
对每一用户设置用户属性集S,其中S为L的子集;
选取两个随机数r,z∈Zp,依据该两个随机数r,z,该系统主私钥和该用户属性集S,分别生成该转换密钥
Figure GDA0002359242770000122
和该私钥SK=(z,TK)。
进一步地,数据属主302,用于执行以下步骤:
依据预置应用密钥ck,并通过对称加密算法对该文件进行加密,生成该文件密文Eck(M),其中M表示该文件;
为该访问树结构T中的每一节点x选取一个多项式qx
设置该每一节点x对应的多项式qx中阶dx比各节点对应的门限值kx少1,其中kx=dx+1;
从根节点R起,选取随机数s∈Zp,并设置qR(0)=s,以及选择dR个节点定义多项式qR
为每一个非根节点x设置qx(0)=qpartent(x)(index(x)),并选择dx个节点定义多项式qx
通过该访问树结构T和该系统主公钥对该应用密钥ck进行加密,得到该密钥密文CT,其中该密钥密文CT为:
Figure GDA0002359242770000123
其中,X是该访问树结构T中叶子节点对应的属性的集合;
将该密钥密文CT和该文件密文上传至该云服务器303。
该对称加密算法是指加密过程和解密过程使用相同的密钥的加密算法,即加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。故该应用密钥与该明文密钥相同。
该云服务器303,用于当用户通过访问端304向云服务器303请求访问加密的文件时,获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端304请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端304。
进一步地,该云服务器303还用于执行以下步骤:
接收该访问端304发送的该转换密钥中的局部密钥,其中该转换密钥中的局部密钥
Figure GDA0002359242770000131
预先定义递归运算DecryptNode(CT,TK',x),其中,若节点x为该访问树结构T中的叶子节点,设aj=att(x)且aj∈S,则
Figure GDA0002359242770000132
Figure GDA0002359242770000133
若x不是该访问树结构T中的叶子节点,且为该节点x中所有子节点n,设置Fn=DecryptNode(CT,TK',n),则
Figure GDA0002359242770000134
Figure GDA0002359242770000135
其中,j=index(n),Sx'={index(n):n∈Sx};
通过该访问树结构T中根节点R对应的函数DecryptNode(CT,TK',R)进行运算,算出所述中间密文T={A,B},其中,
Figure GDA0002359242770000136
设A=FR=e(g,g)rs/z
Figure GDA0002359242770000137
该访问端304,用于接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件。
进一步地,该访问端304,还用于依据该私钥SK和接收到的该中间密文T={A,B},解密出该明文密钥ck,其中,
Figure GDA0002359242770000141
该访问端304,还用于通过该明文密钥ck对该文件密文Eck(M)进行解密,解密出该文件M。
该私钥SK是由该密钥权威机构依据用户的属性预先下发给各用户。
该密钥权威机构301,还用于当撤销用户μ的属性x'被撤销时,选取随机数vx' *∈Zp(vx' *≠vx'),并将该属性x'对应的属性版本密钥VKx'=vx'更换为属性版本密钥VKx' *,令VKx' *=vx' *,以及依据VKx' *生成更新密钥为UKx',依据更换后的属性版本密钥VK* x'更新该系统主公钥为
Figure GDA0002359242770000142
并将该更新密钥UKx'发送给每一非撤销用户的访问端304和该云服务器303,其中,
Figure GDA0002359242770000143
该每一非撤销用户的访问端304,还用于接收该密钥权威机构301发送的该更新密钥UKx',各非撤销用户的访问端304将已存储的该私钥SK更新为:
Figure GDA0002359242770000144
该云服务器303,还用于接收该密钥权威机构301发送的该更新密钥UKx',并将该密钥密文CT更新为:
Figure GDA0002359242770000145
如图4所示,图4为云密文访问控制系统中四个实体设备的示意图。
本实施例未尽之细节,请参阅前述图1所示实施例的描述,此处不再赘述。
本发明实施例中,当用户通过访问端304向云服务器303请求访问加密的文件时,该云服务器303获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端304请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端304,该访问端304接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件,这样仅具有权限的用户可以解密出文件,确保了数据的安全性,同时云服务器依据局部密钥对密文进行解密运算,承担了部分的解密运算,减少了访问端的解密运算量,提高了解密速度和效率,从而增加了访问端访问加密的文件的速度。
在本申请所提供的多个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信链接可以是通过一些接口,装置或模块的间接耦合或通信链接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本发明所提供的云密文访问控制方法及系统的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

Claims (8)

1.一种云密文访问控制方法,其特征在于,包括:
当用户通过访问端向云服务器请求访问加密的文件时,所述云服务器获取所述文件对应的密钥密文,并判断所述用户的属性是否满足所述密钥密文中的访问树结构,若是,则向所述访问端请求获取转换密钥中的局部密钥,以及依据所述局部密钥对所述密钥密文进行解密,以解密出中间密文,将所述中间密文和所述文件对应的文件密文转发给所述访问端;
所述访问端接收所述中间密文,并依据已存储的私钥对所述中间密文进行解密,以解密出明文密钥,以及依据所述明文密钥对所述文件密文进行解密,以解密出所述文件;
其中,所述当用户通过访问端向所述云服务器请求访问加密的文件时,所述云服务器获取所述文件对应的密钥密文之前还包括:
密钥权威机构构建选择阶为素数p,和生成元为g的双线性群G0
定义全局属性集合L={a1,a2,...,am}以及安全等级k;
选取随机数vj∈Zp,并将所述随机数vj作为属性版本密钥VKj=vj,并依据所述属性版本密钥生成子公钥
Figure FDA0002485787880000012
其中Zp为有限域,j∈{1,2,3...m};
选取两个随机数α,β∈Zp,并依据所述两个随机数α、β,所述子公钥和所述双线性群,分别生成系统主私钥MSK={β,gα,{MSKj=VKj|aj∈L}},和系统主公钥
Figure FDA0002485787880000011
对每一用户设置用户属性集S,其中S为L的子集;
选取两个随机数r,z∈Zp,依据所述两个随机数r,z,所述系统主私钥和所述用户属性集S,分别生成所述转换密钥
Figure FDA0002485787880000021
和所述私钥SK=(z,TK)。
2.根据权利要求1所述的方法,其特征在于,所述当用户通过访问端向所述云服务器请求访问加密的文件时,所述云服务器获取所述文件对应的密钥密文之前还包括:
数据属主依据预置应用密钥ck,并通过对称加密算法对所述文件进行加密,生成所述文件密文Eck(M),其中M表示所述文件;
为所述访问树结构T中的每一节点x选取一个多项式qx
设置所述每一节点x对应的多项式qx中阶dx比各节点对应的门限值kx少1,其中kx=dx+1;
从根节点R起,选取随机数s∈Zp,并设置qR(0)=s,以及选择dR个节点定义多项式qR
为每一个非根节点x设置qx(0)=qpartent(x)(index(x)),并选择dx个节点定义多项式qx
通过所述访问树结构T和所述系统主公钥对所述应用密钥ck进行加密,得到所述密钥密文CT,其中所述密钥密文CT为:
Figure 1
其中,X是所述访问树结构T中叶子节点对应的属性的集合;
将所述密钥密文CT和所述文件密文上传至所述云服务器。
3.根据权利要求2所述的方法,其特征在于,所述向所述访问端请求获取转换密钥中的局部密钥,以及依据所述局部密钥对所述密钥密文进行解密,以解密出中间密文包括:
所述云服务器接收所述访问端发送的所述转换密钥中的局部密钥,其中所述转换密钥中的局部密钥
Figure FDA0002485787880000023
预先定义递归运算Decrypt Node(CT,TK',x),其中,若节点x为所述访问树结构T中的叶子节点,设aj=att(x)且aj∈S,则
Figure FDA0002485787880000031
若x不是所述访问树结构T中的叶子节点,且为所述节点x中所有子节点n的一个节点,设置Fn=DecryptNode(CT,TK',n),则
Figure FDA0002485787880000032
其中,j=index(n),Sx'={index(n):n∈Sx},Sx为任意的kx个子节点n构成的集合;
通过所述访问树结构T中根节点R对应的函数DecryptNode(CT,TK',R)进行运算,算出所述中间密文T={A,B},其中,
Figure FDA0002485787880000033
设A=FR=e(g,g)rs/z
Figure FDA0002485787880000034
则所述依据已存储的私钥对所述中间密文进行解密,以解密出明文密钥,以及依据所述明文密钥对所述文件密文进行解密,以解密出所述文件包括:
所述访问端依据所述私钥SK和接收到的所述中间密文T={A,B},解密出
所述明文密钥ck,其中
Figure FDA0002485787880000041
所述访问端通过所述明文密钥ck对所述文件密文Eck(M)进行解密,解密出所述文件M。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当撤销用户μ的属性x'被撤销时,所述密钥权威机构选取随机数vx' *∈Zp(vx' *≠vx'),并将所述属性x'对应的属性版本密钥VKx'=vx'更换为属性版本密钥VKx' *,令VKx' *=vx' *,以及依据VKx' *生成更新密钥为UKx',依据更换后的所述属
性版本密钥VKx' *更新所述系统主公钥为
Figure FDA0002485787880000042
并将所述更新密
钥UKx'发送给每一非撤销用户的访问端和所述云服务器,其中,
Figure FDA0002485787880000043
所述每一非撤销用户的访问端接收所述密钥权威机构发送的所述更新密钥UKx',各非撤销用户的访问端将已存储的所述私钥更新为:
Figure FDA0002485787880000044
所述云服务器接收所述密钥权威机构发送的所述更新密钥UKx',并将所述密钥密文更新为:
Figure FDA0002485787880000045
Ifx≠x',Cx *=Cx,
Figure FDA0002485787880000046
5.一种云密文访问控制系统,其特征在于,所述系统包括:云服务器和访问端;
所述云服务器,用于当用户通过访问端向所述云服务器请求访问加密的文件时,获取所述文件对应的密钥密文,并判断所述用户的属性是否满足所述密钥密文中的访问树结构,若是,则向所述访问端请求获取转换密钥中的局部密钥,以及依据所述局部密钥对所述密钥密文进行解密,以解密出中间密文,将所述中间密文和所述文件对应的文件密文转发给所述访问端;
所述访问端,用于接收所述中间密文,并依据已存储的私钥对所述中间密文进行解密,以解密出明文密钥,以及依据所述明文密钥对所述文件密文进行解密,以解密出所述文件;
其中,所述系统还包括:密钥权威机构;
所述密钥权威机构,用于执行以下步骤:
构建选择阶为素数p,和生成元为g的双线性群G0
定义全局属性集合L={a1,a2,...,am}以及安全等级k;
选取一个随机数vj∈Zp,并将所述随机数vj作为属性版本密钥VKj=vj,并依据所述属性版本密钥生成子公钥
Figure FDA0002485787880000051
其中Zp为有限域,j∈{1,2,3...m};
选取两个随机数α,β∈Zp,并依据所述两个随机数α,β∈Zp、所述子公钥和所述双线性群,分别生成系统主私钥MSK={β,gα,{MSKj=VKj|aj∈L}},和系统主公钥
Figure FDA0002485787880000052
对每一用户设置用户属性集S,其中S为L的子集;
选取两个随机数r,z∈Zp,依据所述两个随机数r,z,所述系统主私钥和所述用户属性集S,分别生成所述转换密钥
Figure FDA0002485787880000053
和所述私钥SK=(z,TK)。
6.根据权利要求5所述的系统,其特征在于,所述系统还包括:数据属主;
所述数据属主,用于执行以下步骤:
依据预置应用密钥ck,并通过对称加密算法对所述文件进行加密,生成所述文件密文Eck(M),其中M表示所述文件;
为所述访问树结构T中的每一节点x选取一个多项式qx
设置所述每一节点x对应的多项式qx中阶dx比各节点对应的门限值kx少1,其中kx=dx+1;
从根节点R起,选取随机数s∈Zp,并设置qR(0)=s,以及选择dR个节点定义多项式qR
为每一个非根节点x设置qx(0)=qpartent(x)(index(x)),并选择dx个节点定义多项式qx
通过所述访问树结构T和所述系统主公钥对所述应用密钥ck进行加密,得到所述密钥密文CT,其中所述密钥密文CT为:
Figure 2
其中,X是所述访问树结构T中叶子节点对应的属性的集合;
将所述密钥密文CT和所述文件密文上传至所述云服务器。
7.根据权利要求6所述的系统,其特征在于,
所述云服务器,还用于执行以下步骤:
接收所述访问端发送的所述转换密钥中的局部密钥,其中所述转换密钥中的局部密钥
Figure FDA0002485787880000062
预先定义递归运算DecryptNode(CT,TK',x),其中,若节点x为所述访问树结构T中的叶子节点,设aj=att(x)且aj∈S,则
Figure FDA0002485787880000063
Figure FDA0002485787880000071
若x不是所述访问树结构T中的叶子节点,且为所述节点x中所有子节点n的一个节点,设置Fn=DecryptNode(CT,TK',n),则
Figure FDA0002485787880000072
其中,j=index(n),Sx'={index(n):n∈Sx},Sx为任意的kx个子节点n构成的集合;
通过所述访问树结构T中根节点R对应的函数DecryptNode(CT,TK',R)进行运算,算出所述中间密文T={A,B},其中,
Figure FDA0002485787880000073
设A=FR=e(g,g)rs/z
Figure FDA0002485787880000074
则所述访问端,还用于依据所述私钥SK和接收到的所述中间密文T={A,B},
解密出所述明文密钥ck,其中,
Figure FDA0002485787880000075
以及,通过所述明文密钥ck对所述文件密文Eck(M)进行解密,解密出所述文件M。
8.根据权利要求7所述的系统,其特征在于,
所述密钥权威机构,还用于当撤销用户μ的属性x'被撤销时,选取随机数vx' *∈Zp(vx' *≠vx'),并将所述属性x'对应的属性版本密钥VKx'=vx'更换为属性版本密钥VKx' *,令VKx' *=vx' *,以及依据VKx' *生成更新密钥为UKx',依据更换后的属性版本密钥VKx' *更新所述系统主公钥为
Figure FDA0002485787880000081
并将所述更新密钥UKx'发送给每一非撤销用户的访问端和所述云服务器,其中,
Figure FDA0002485787880000082
所述访问端,还用于接收所述密钥权威机构发送的所述更新密钥UKx',将已存储的所述私钥更新为:
Figure FDA0002485787880000083
所述云服务器,还用于接收所述密钥权威机构发送的所述更新密钥UKx',并将所述密钥密文更新为:
Figure FDA0002485787880000084
Ifx≠x',Cx *=Cx,
Figure FDA0002485787880000085
CN201710148858.6A 2017-03-14 2017-03-14 云密文访问控制方法及系统 Active CN106888213B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710148858.6A CN106888213B (zh) 2017-03-14 2017-03-14 云密文访问控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710148858.6A CN106888213B (zh) 2017-03-14 2017-03-14 云密文访问控制方法及系统

Publications (2)

Publication Number Publication Date
CN106888213A CN106888213A (zh) 2017-06-23
CN106888213B true CN106888213B (zh) 2020-10-02

Family

ID=59181891

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710148858.6A Active CN106888213B (zh) 2017-03-14 2017-03-14 云密文访问控制方法及系统

Country Status (1)

Country Link
CN (1) CN106888213B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108092766B (zh) * 2017-11-30 2020-12-18 深圳大学 一种密文搜索权限验证方法及其系统
CN108063666A (zh) * 2018-01-03 2018-05-22 中电长城网际系统应用有限公司 云环境下的数据访问方法及系统、密钥服务器和访问终端
CN108989305A (zh) * 2018-07-10 2018-12-11 国家电网公司华东分部 一种数据共享系统、方法及装置
CN110990875B (zh) * 2019-12-06 2023-06-20 九江学院 一种基于云计算平台的密文访问控制方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103701833A (zh) * 2014-01-20 2014-04-02 深圳大学 一种基于云计算平台的密文访问控制方法及系统
CN104486315A (zh) * 2014-12-08 2015-04-01 北京航空航天大学 一种基于内容属性的可撤销密钥外包解密方法
CN106341236A (zh) * 2016-09-09 2017-01-18 深圳大学 一种面向云存储服务平台的访问控制方法及其系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8423764B2 (en) * 2010-06-23 2013-04-16 Motorola Solutions, Inc. Method and apparatus for key revocation in an attribute-based encryption scheme
US9049023B2 (en) * 2011-05-24 2015-06-02 Zeutro Llc Outsourcing the decryption of functional encryption ciphertexts
CN106452735A (zh) * 2016-07-04 2017-02-22 广东工业大学 一种支持属性撤销的外包属性加密方法
CN106357395B (zh) * 2016-09-13 2019-04-23 深圳大学 一种面向雾计算的外包访问控制方法及其系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103701833A (zh) * 2014-01-20 2014-04-02 深圳大学 一种基于云计算平台的密文访问控制方法及系统
CN104486315A (zh) * 2014-12-08 2015-04-01 北京航空航天大学 一种基于内容属性的可撤销密钥外包解密方法
CN106341236A (zh) * 2016-09-09 2017-01-18 深圳大学 一种面向云存储服务平台的访问控制方法及其系统

Also Published As

Publication number Publication date
CN106888213A (zh) 2017-06-23

Similar Documents

Publication Publication Date Title
CN105141574B (zh) 一种基于表格属性的云存储密文访问控制系统和方法
CN114065265B (zh) 基于区块链技术的细粒度云存储访问控制方法、系统及设备
CN108989026B (zh) 一种发布/订阅环境下用户属性可撤销的方法
WO2018165835A1 (zh) 云密文访问控制方法及系统
CN112131316B (zh) 应用于区块链系统的数据处理方法及装置
CA3144715A1 (en) Systems and methods for permissioned blockchain infrastructure with fine-grained access control and confidentiality-preserving publish/subscribe messaging
US9020149B1 (en) Protected storage for cryptographic materials
CN106888213B (zh) 云密文访问控制方法及系统
KR101615137B1 (ko) 속성 기반의 데이터 접근 방법
CN107465681B (zh) 云计算大数据隐私保护方法
CN107332858B (zh) 云数据存储方法
WO2021098152A1 (zh) 基于区块链的数据处理方法、装置及计算机设备
CN105721146B (zh) 一种面向云存储基于smc的大数据共享方法
CN105790929B (zh) 一种基于规则冗余消除的加密环境中访问控制方法
CN107360252B (zh) 一种异构云域授权的数据安全访问方法
KR20230063640A (ko) 속성 기반 암호를 이용한 분산형 데이터 관리 방법 및 시스템
Kanimozhi et al. Secure sharing of IOT data in cloud environment using attribute-based encryption
CN112202555A (zh) 基于信息的属性生成随机数的信息处理方法、装置及设备
CN114679340B (zh) 一种文件共享方法、系统、设备及可读存储介质
KR101812311B1 (ko) 사용자 단말 및 속성 재암호 기반의 사용자 단말 데이터 공유 방법
CN108985109A (zh) 一种数据存储方法及装置
Charanya et al. Attribute based encryption for secure sharing of E-health data
Swetha et al. Security on mobile cloud computing using cipher text policy and attribute based encryption scheme
CN108040068B (zh) 基于云安全平台的快速访问控制系统
CN112865968B (zh) 数据密文托管方法、系统、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant