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

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

Info

Publication number
CN106888213A
CN106888213A CN201710148858.6A CN201710148858A CN106888213A CN 106888213 A CN106888213 A CN 106888213A CN 201710148858 A CN201710148858 A CN 201710148858A CN 106888213 A CN106888213 A CN 106888213A
Authority
CN
China
Prior art keywords
key
ciphertext
prime
access
file
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.)
Granted
Application number
CN201710148858.6A
Other languages
English (en)
Other versions
CN106888213B (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

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

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,并依据该属性版本密钥生成子公钥其中Zp为有限域;
选取两个随机数α,β∈Zp,并依据该两个随机数α、β,该子公钥和该双线性群,分别生成系统主私钥MSK={β,gα,{MSKj=VKj|aj∈L}},和系统主公钥
假设系统有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,分别生成该转换密钥和该私钥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为:
其中,X是该访问树结构T中叶子节点对应的属性的集合;
将该密钥密文CT和该文件密文上传至该云服务器。
该对称加密算法是指加密过程和解密过程使用相同的密钥的加密算法,即加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。故该应用密钥与该明文密钥相同。
进一步地,向该访问端请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文具体为:
该云服务器接收该访问端发送的该转换密钥中的局部密钥,其中该转换密钥中的局部密钥
预先定义递归运算DecryptNode(CT,TK',x),其中,若节点x为该访问树结构T中的叶子节点,设aj=att(x)且aj∈S,则
若x不是该访问树结构T中的叶子节点,且为该节点x中所有子节点n,设置Fn=DecryptNode(CT,TK',n),则
其中,j=index(n),Sx'={index(n):n∈Sx};
通过所述访问树结构T中根节点R对应的函数DecryptNode(CT,TK',R)进行运算,算出所述中间密文T={A,B},其中,
设A=FR=e(g,g)rs/z
则该依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件具体为:
所述访问端依据所述私钥SK和接收到的所述中间密文T={A,B},解密出所述明文密钥ck,其中
该访问端通过该明文密钥ck对该文件密文Eck(M)进行解密,解密出该文件M。
若节点x为该访问树结构T中的叶子节点,且则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' *更新该系统主公钥为并将该更新密钥UKx'发送给每一非撤销用户的访问端和该云服务器,其中,
该每一非撤销用户的访问端接收该密钥权威机构发送的该更新密钥UKx',各非撤销用户的访问端将已存储的该私钥SK更新为:
该云服务器接收该密钥权威机构发送的该更新密钥UKx',并将该密钥密文CT更新为:
If x≠x',Cx *=Cx,
上述密钥更新过程中包括三个部分:一是该密钥权威机构生成更新密钥;二是非撤销用户更新自身存储的私钥;三是该云服务器更新密文。
需要说明的是,该密钥权威机构、非撤销用户以及该云服务器只更新与属性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,并依据该属性版本密钥生成子公钥其中Zp为有限域;
选取两个随机数α,β∈Zp,并依据该两个随机数α、β,该子公钥和该双线性群,分别生成系统主私钥MSK={β,gα,{MSKj=VKj|aj∈L}},和系统主公钥
对每一用户设置用户属性集S,其中S为L的子集;
选取两个随机数r,z∈Zp,依据该两个随机数r,z,该系统主私钥和该用户属性集S,分别生成该转换密钥和该私钥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为:
其中,X是该访问树结构T中叶子节点对应的属性的集合;
将该密钥密文CT和该文件密文上传至该云服务器303。
该对称加密算法是指加密过程和解密过程使用相同的密钥的加密算法,即加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。故该应用密钥与该明文密钥相同。
该云服务器303,用于当用户通过访问端304向云服务器303请求访问加密的文件时,获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端304请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端304。
进一步地,该云服务器303还用于执行以下步骤:
接收该访问端304发送的该转换密钥中的局部密钥,其中该转换密钥中的局部密钥
预先定义递归运算DecryptNode(CT,TK',x),其中,若节点x为该访问树结构T中的叶子节点,设aj=att(x)且aj∈S,则
若x不是该访问树结构T中的叶子节点,且为该节点x中所有子节点n,设置Fn=DecryptNode(CT,TK',n),则
其中,j=index(n),Sx'={index(n):n∈Sx};
通过该访问树结构T中根节点R对应的函数DecryptNode(CT,TK',R)进行运算,算出所述中间密文T={A,B},其中,
设A=FR=e(g,g)rs/z
该访问端304,用于接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件。
进一步地,该访问端304,还用于依据该私钥SK和接收到的该中间密文T={A,B},解密出该明文密钥ck,其中,
该访问端304,还用于通过该明文密钥ck对该文件密文Eck(M)进行解密,解密出该文件M。
该私钥SK是由该密钥权威机构依据用户的属性预先下发给各用户。
该密钥权威机构301,还用于当撤销用户μ的属性x'被撤销时,选取随机数vx' *∈Zp(vx' *≠vx'),并将该属性x'对应的属性版本密钥VKx'=vx'更换为属性版本密钥VKx' *,令VKx' *=vx' *,以及依据VKx' *生成更新密钥为UKx',依据更换后的属性版本密钥VK* x'更新该系统主公钥为并将该更新密钥UKx'发送给每一非撤销用户的访问端304和该云服务器303,其中,
该每一非撤销用户的访问端304,还用于接收该密钥权威机构301发送的该更新密钥UKx',各非撤销用户的访问端304将已存储的该私钥SK更新为:
该云服务器303,还用于接收该密钥权威机构301发送的该更新密钥UKx',并将该密钥密文CT更新为:
If x≠x',Cx *=Cx,
如图4所示,图4为云密文访问控制系统中四个实体设备的示意图。
本实施例未尽之细节,请参阅前述图1所示实施例的描述,此处不再赘述。
本发明实施例中,当用户通过访问端304向云服务器303请求访问加密的文件时,该云服务器303获取该文件对应的密钥密文,并判断该用户的属性是否满足该密钥密文中的访问树结构,若是,则向该访问端304请求获取转换密钥中的局部密钥,以及依据该局部密钥对该密钥密文进行解密,以解密出中间密文,将该中间密文和该文件对应的文件密文转发给该访问端304,该访问端304接收该中间密文,并依据已存储的私钥对该中间密文进行解密,以解密出明文密钥,以及依据该明文密钥对该文件密文进行解密,以解密出该文件,这样仅具有权限的用户可以解密出文件,确保了数据的安全性,同时云服务器依据局部密钥对密文进行解密运算,承担了部分的解密运算,减少了访问端的解密运算量,提高了解密速度和效率,从而增加了访问端访问加密的文件的速度。
在本申请所提供的多个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信链接可以是通过一些接口,装置或模块的间接耦合或通信链接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本发明所提供的云密文访问控制方法及系统的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种云密文访问控制方法,其特征在于,包括:
当用户通过访问端向云服务器请求访问加密的文件时,所述云服务器获取所述文件对应的密钥密文,并判断所述用户的属性是否满足所述密钥密文中的访问树结构,若是,则向所述访问端请求获取转换密钥中的局部密钥,以及依据所述局部密钥对所述密钥密文进行解密,以解密出中间密文,将所述中间密文和所述文件对应的文件密文转发给所述访问端;
所述访问端接收所述中间密文,并依据已存储的私钥对所述中间密文进行解密,以解密出明文密钥,以及依据所述明文密钥对所述文件密文进行解密,以解密出所述文件。
2.根据权利要求1所述的方法,其特征在于,所述当用户通过访问端向所述云服务器请求访问加密的文件时,所述云服务器获取所述文件对应的密钥密文之前还包括:
密钥权威机构构建选择阶为素数p,和生成元为g的双线性群G0
定义全局属性集合L={a1,a2,...,am}以及安全等级k;
选取随机数vj∈Zp,并将所述随机数vj作为属性版本密钥VKj=vj,并依据所述属性版本密钥生成子公钥其中Zp为有限域;
选取两个随机数α,β∈Zp,并依据所述两个随机数α、β,所述子公钥和所述双线性群,分别生成系统主私钥MSK={β,gα,{MSKj=VKj|aj∈L}},和系统主公钥
对每一用户设置用户属性集S,其中S为L的子集;
选取两个随机数r,z∈Zp,依据所述两个随机数r,z,所述系统主私钥和所述用户属性集S,分别生成所述转换密钥和所述私钥SK=(z,TK)。
3.根据权利要求2所述的方法,其特征在于,所述当用户通过访问端向所述云服务器请求访问加密的文件时,所述云服务器获取所述文件对应的密钥密文之前还包括:
数据属主依据预置应用密钥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为:
C T = { C ~ = c k · e ( g , g ) α s , C = h s , C j = g VK j q x ( 0 ) , ∀ a j = a t t ( x ) ∈ X } ,
其中,X是所述访问树结构T中叶子节点对应的属性的集合;
将所述密钥密文CT和所述文件密文上传至所述云服务器。
4.根据权利要求3所述的方法,其特征在于,所述向所述访问端请求获取转换密钥中的局部密钥,以及依据所述局部密钥对所述密钥密文进行解密,以解密出中间密文包括:
所述云服务器接收所述访问端发送的所述转换密钥中的局部密钥,其中所述转换密钥中的局部密钥
预先定义递归运算Decrypt Node(CT,TK',x),其中,若节点x为所述访问树结构T中的叶子节点,设aj=att(x)且aj∈S,则
若x不是所述访问树结构T中的叶子节点,且为所述节点x中所有子节点n,设置Fn=DecryptNode(CT,TK',n),则
其中,j=index(n),Sx'={index(n):n∈Sx};
通过所述访问树结构T中根节点R对应的函数DecryptNode(CT,TK',R)进行运算,算出所述中间密文T={A,B},其中,
F R = D e c r y p t N o d e ( C T , TK ′ , R ) = e ( g , g ) rq R ( 0 ) / z = e ( g , g ) r s / z ,
设A=FR=e(g,g)rs/z
则所述依据已存储的私钥对所述中间密文进行解密,以解密出明文密钥,以及依据所述明文密钥对所述文件密文进行解密,以解密出所述文件包括:
所述访问端依据所述私钥SK和接收到的所述中间密文T={A,B},解密出
所述明文密钥ck,其中
所述访问端通过所述明文密钥ck对所述文件密文Eck(M)进行解密,解密出所述文件M。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当撤销用户μ的属性x'被撤销时,所述密钥权威机构选取随机数vx' *∈Zp(vx' *≠vx'),并将所述属性x'对应的属性版本密钥VKx'=vx'更换为属性版本密钥VKx' *,令VKx' *=vx' *,以及依据VK* x'生成更新密钥为UKx',依据更换后的所述属性版本密钥VKx' *更新所述系统主公钥为并将所述更新密钥UKx'发送给每一非撤销用户的访问端和所述云服务器,其中,
UK x ′ = VK x ′ * VK x ′ = v * x ′ v x ′ ;
所述每一非撤销用户的访问端接收所述密钥权威机构发送的所述更新密钥UKx',各非撤销用户的访问端将已存储的所述私钥更新为:
SK * = ( D , D x ′ * = ( D x ′ ) UK x ′ = g r / VK x ′ * · z , ∀ x ∈ S \ { x ′ } : D x ) ;
所述云服务器接收所述密钥权威机构发送的所述更新密钥UKx',并将所述密钥密文更新为:
CT * = { C * = C ~ , C * ′ = C , C * ′ ′ = C ′ , ∀ x ∈ a t t ( x ) , I f x ≠ x ′ , C x * = C x , I f x = x ′ , C x * = ( C x ) UK x ′ = g VK x ′ * · q x ( 0 ) } .
6.一种云密文访问控制系统,其特征在于,所述系统包括:云服务器和访问端;
所述云服务器,用于当用户通过访问端向所述云服务器请求访问加密的文件时,获取所述文件对应的密钥密文,并判断所述用户的属性是否满足所述密钥密文中的访问树结构,若是,则向所述访问端请求获取转换密钥中的局部密钥,以及依据所述局部密钥对所述密钥密文进行解密,以解密出中间密文,将所述中间密文和所述文件对应的文件密文转发给所述访问端;
所述访问端,用于接收所述中间密文,并依据已存储的私钥对所述中间密文进行解密,以解密出明文密钥,以及依据所述明文密钥对所述文件密文进行解密,以解密出所述文件。
7.根据权利要求5所述的装置,其特征在于,所述系统还包括:密钥权威机构;
所述密钥权威机构,用于执行以下步骤:
构建选择阶为素数p,和生成元为g的双线性群G0
定义全局属性集合L={a1,a2,...,am}以及安全等级k;
选取一个随机数vj∈Zp,并将所述随机数vj作为属性版本密钥VKj=vj,并依据所述属性版本密钥生成子公钥其中Zp为有限域;
选取两个随机数α,β∈Zp,并依据所述两个随机数α,β∈Zp、所述子公钥和所述双线性群,分别生成系统主私钥MSK={β,gα,{MSKj=VKj|aj∈L}},和系统主公钥
对每一用户设置用户属性集S,其中S为L的子集;
选取两个随机数r,z∈Zp,依据所述两个随机数r,z,所述系统主私钥和所述用户属性集S,分别生成所述转换密钥和所述私钥SK=(z,TK)。
8.根据权利要求7所述的装置,其特征在于,所述系统还包括:数据属主;
所述数据属主,用于执行以下步骤:
依据预置应用密钥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为:
C T = { C ~ = c k · e ( g , g ) α s , C = h s , C j = g VK j · q x ( 0 ) , ∀ a j = a t t ( x ) ∈ X } ,
其中,X是所述访问树结构T中叶子节点对应的属性的集合;
将所述密钥密文CT和所述文件密文上传至所述云服务器。
9.根据权利要求8所述的装置,其特征在于,
所述云服务器,还用于执行以下步骤:
接收所述访问端发送的所述转换密钥中的局部密钥,其中所述转换密钥中的局部密钥
预先定义递归运算DecryptNode(CT,TK',x),其中,若节点x为所述访问树结构T中的叶子节点,设aj=att(x)且aj∈S,则
若x不是所述访问树结构T中的叶子节点,且为所述节点x中所有子节点n,设置Fn=DecryptNode(CT,TK',n),则
其中,j=index(n),Sx'={index(n):n∈Sx};
通过所述访问树结构T中根节点R对应的函数DecryptNode(CT,TK',R)进行运算,算出所述中间密文T={A,B},其中,
F R = D e c r y p t N o d e ( C T , TK ′ , R ) = e ( g , g ) rq R ( 0 ) / z = e ( g , g ) r s / z
设A=FR=e(g,g)rs/z
则所述访问端,还用于依据所述私钥SK和接收到的所述中间密文T={A,B},解密出所述明文密钥ck,其中,以及,通过所述明文密钥ck对所述文件密文Eck(M)进行解密,解密出所述文件M。
10.根据权利要求9所述的装置,其特征在于,
所述密钥权威机构,还用于当撤销用户μ的属性x'被撤销时,选取随机数vx' *∈Zp(vx' *≠vx'),并将所述属性x'对应的属性版本密钥VKx'=vx'更换为属性版本密钥VKx' *,令VKx' *=vx' *,以及依据VKx' *生成更新密钥为UKx',依据更换后的属性版本密钥VKx' *更新所述系统主公钥为并将所述更新密钥UKx'发送给每一非撤销用户的访问端和所述云服务器,其中,
UK x ′ = VK x ′ * VK x ′ = v x ′ * v x ′ ;
所述访问端,还用于接收所述密钥权威机构发送的所述更新密钥UKx',将已存储的所述私钥更新为:
SK * = ( D , D x ′ * = ( D x ′ ) UK x ′ = g r / VK x ′ * · z , ∀ x ∈ S \ { x ′ } : D x ) ;
所述云服务器,还用于接收所述密钥权威机构发送的所述更新密钥UKx',并将所述密钥密文更新为:
CT * = { C * = C ~ , C * ′ = C , C * ′ ′ = C ′ , ∀ x ∈ a t t ( x ) , I f x ≠ x ′ , C x * = C x , I f x = x ′ , C x * = ( C x ) UK x ′ = g VK x ′ * · q x ( 0 ) } .
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 true CN106888213A (zh) 2017-06-23
CN106888213B 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)

Cited By (4)

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

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110320809A1 (en) * 2010-06-23 2011-12-29 Motorola, Inc. Method and apparatus for key revocation in an attribute-based encryption scheme
US20120300936A1 (en) * 2011-05-24 2012-11-29 Zeutro, Llc Outsourcing the Decryption of Functional Encryption Ciphertexts
CN103701833A (zh) * 2014-01-20 2014-04-02 深圳大学 一种基于云计算平台的密文访问控制方法及系统
CN104486315A (zh) * 2014-12-08 2015-04-01 北京航空航天大学 一种基于内容属性的可撤销密钥外包解密方法
CN106341236A (zh) * 2016-09-09 2017-01-18 深圳大学 一种面向云存储服务平台的访问控制方法及其系统
CN106357395A (zh) * 2016-09-13 2017-01-25 深圳大学 一种面向雾计算的外包访问控制方法及其系统
CN106452735A (zh) * 2016-07-04 2017-02-22 广东工业大学 一种支持属性撤销的外包属性加密方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110320809A1 (en) * 2010-06-23 2011-12-29 Motorola, Inc. Method and apparatus for key revocation in an attribute-based encryption scheme
US20120300936A1 (en) * 2011-05-24 2012-11-29 Zeutro, Llc Outsourcing the Decryption of Functional Encryption Ciphertexts
CN103701833A (zh) * 2014-01-20 2014-04-02 深圳大学 一种基于云计算平台的密文访问控制方法及系统
CN104486315A (zh) * 2014-12-08 2015-04-01 北京航空航天大学 一种基于内容属性的可撤销密钥外包解密方法
CN106452735A (zh) * 2016-07-04 2017-02-22 广东工业大学 一种支持属性撤销的外包属性加密方法
CN106341236A (zh) * 2016-09-09 2017-01-18 深圳大学 一种面向云存储服务平台的访问控制方法及其系统
CN106357395A (zh) * 2016-09-13 2017-01-25 深圳大学 一种面向雾计算的外包访问控制方法及其系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JUNBEOM HUR等: "Attribute-Based Access Control with Efficient Revocation in Data Outsourcing Systems", 《IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS》 *

Cited By (5)

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

Also Published As

Publication number Publication date
CN106888213B (zh) 2020-10-02

Similar Documents

Publication Publication Date Title
Xu et al. Lightweight and expressive fine-grained access control for healthcare Internet-of-Things
CN105141574B (zh) 一种基于表格属性的云存储密文访问控制系统和方法
JP6941183B2 (ja) データのトークン化
CN104363215B (zh) 一种基于属性的加密方法和系统
CN105100083B (zh) 一种隐私保护且支持用户撤销的基于属性加密方法和系统
CN103618729A (zh) 一种应用于云存储的多机构层次化属性基加密方法
CN106506155B (zh) 公有云环境下的密文共享方法
CN104158880B (zh) 一种用户端云数据共享解决方法
WO2018165835A1 (zh) 云密文访问控制方法及系统
CN110086626A (zh) 基于非对称密钥池对的量子保密通信联盟链交易方法和系统
CN106888213A (zh) 云密文访问控制方法及系统
Zhang et al. Feacs: A flexible and efficient access control scheme for cloud computing
CN110138752A (zh) 一种基于格的公钥加密方法
CN112183767A (zh) 一种多密钥下模型聚合的联邦学习方法及相关设备
Rana et al. Efficient and secure attribute based access control architecture for smart healthcare
Attaullah et al. Cryptosystem techniques based on the improved Chebyshev map: an application in image encryption
Lai et al. CCA-secure keyed-fully homomorphic encryption
CN108880801A (zh) 一种格上支持细粒度属性撤销的分布式属性基加密方法
Sumathi et al. A group-key-based sensitive attribute protection in cloud storage using modified random Fibonacci cryptography
CN104901968A (zh) 一种安全云存储系统中的密钥管理分发方法
CN105790929B (zh) 一种基于规则冗余消除的加密环境中访问控制方法
CN112819058B (zh) 一种具有隐私保护属性的分布式随机森林评估系统与方法
CN109743162A (zh) 一种利用理想格操作进行身份属性匹配的加密方法
CN105530089A (zh) 属性基加密方法和装置
Wang et al. Research on Ciphertext‐Policy Attribute‐Based Encryption with Attribute Level User Revocation in Cloud Storage

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