CN109587115B - 一种数据文件安全分发使用方法 - Google Patents

一种数据文件安全分发使用方法 Download PDF

Info

Publication number
CN109587115B
CN109587115B CN201811297829.7A CN201811297829A CN109587115B CN 109587115 B CN109587115 B CN 109587115B CN 201811297829 A CN201811297829 A CN 201811297829A CN 109587115 B CN109587115 B CN 109587115B
Authority
CN
China
Prior art keywords
attribute
user
key
data
private
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
CN201811297829.7A
Other languages
English (en)
Other versions
CN109587115A (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.)
Qingdao Weizhihui Information Co ltd
Original Assignee
Qingdao Weizhihui Information Co ltd
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 Qingdao Weizhihui Information Co ltd filed Critical Qingdao Weizhihui Information Co ltd
Priority to CN201811297829.7A priority Critical patent/CN109587115B/zh
Publication of CN109587115A publication Critical patent/CN109587115A/zh
Application granted granted Critical
Publication of CN109587115B publication Critical patent/CN109587115B/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/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
    • 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
    • H04L63/0478Network 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 applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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

一种数据文件安全分发使用方法
技术领域
本发明涉及云计算、电子公文及数字内容分发安全技术领域,特别是涉及一种数据文件安全分发使用方法。
背景技术
当前云计算技术飞速发展,越来越多的政府部门和企业选择云环境进行办公,将大量的信息和数据传送到云服务器中,数据存储成为互联网最基础的服务之一。在云计算环境中数据安全的一个重要挑战就是既要共享数据又要保护数据安全。在云存储的多用户环境下,如果机密文件被多位用户共享,就会给文件的所有者带来密钥存储、密钥更新以及维护等等多方面的难以解决的问题。
为了解决用户数据的安全问题,许多加密方案和签名方案被提出。基于属性的加密方案能够很好地解决云环境里面用户、云服务器之间交互时的信息安全。现有的属性加密方案主要思路为:系统中权限由属性表示,属性机构对用户属性的权限进行认证并分发对应的密钥,系统中的资源通过基于属性的加密算法加密后保存在云服务器上,资源的访问策略可以根据方案的需要由资源的发布者来制定,任何人都能随意访问加密后的资源,但是只有满足访问策略的访问者才能够使用属性加密算法解密该资源。
而现有的属性加密方案主要解决了访问控制问题,但是无法解决信息流控制,例如现有的属性加密方案通常仅用一种属性对信息进行属性加密,当这一属性满足数据的访问控制要求时,用户即可获取并查看数据,此种加密方式解密条件较为宽松,安全性不高。
发明内容
本发明的目的是提供一种数据文件安全分发使用方法,以确保只有特定用户在特定时间内、特定地点的特定设备上才能查看并使用数据,提高了加密信息的安全性。
为实现上述目的,本发明提供了如下方案:
一种数据文件安全分发使用方法,所述数据文件安全分发使用方法基于一种数据文件安全分发使用系统,所述数据文件安全分发使用系统包括数据所有者、云服务器、属性机构和用户;所述属性机构分别与所述数据拥有者、所述云服务器及所述用户通信连接;所述云服务器分别与所述数据所有者及所述用户通信连接;
所述数据文件安全分发使用方法包括:
所述数据所有者采用数据加密算法加密数据明文,生成密文;
所述数据所有者将所述密文发布至所述云服务器;
所述云服务器获取所述用户的公有属性及所述数据所有者的访问控制结构;
所述云服务器判断所述用户的公有属性与所述数据所有者的访问控制结构是否匹配,获得第一判断结果;
若所述第一判断结果为所述用户的公有属性与所述数据所有者的访问控制结构匹配,所述云服务器根据所述用户的公有属性从所述属性机构获取公有属性密钥;
所述云服务器根据所述公有属性密钥对所述密文进行解码运算,生成解码后密文;
所述云服务器获取所述用户的私有属性相关密钥组;
所述云服务器根据所述用户的私有属性相关密钥组对所述解码后密文进行重新封装操作,生成封装后密文;
所述云服务器将所述封装后密文发送至所述用户;
所述用户对所述封装后密文进行解密运算,获得所述数据明文。
可选的,所述数据所有者采用数据加密算法加密数据明文之前,还包括:
所述数据所有者获取随机参数组;所述随机参数组包括第一随机参数β和第二随机参数γ;
所述数据所有者根据所述第一随机参数β和所述第二随机参数γ生成数据所有者主密钥MKo={β,γ}和数据所有者私钥
Figure GDA0002856772580000031
其中MKo为数据所有者主密钥;SKo为数据所有者私钥;g为生成元;
所述数据所有者将所述数据所有者私钥SKo发送至所述属性机构;
所述属性机构根据所述数据所有者私钥SKo生成数据所有者公钥
Figure GDA0002856772580000032
和公有属性密钥
Figure GDA0002856772580000033
其中PKo,AID为数据所有者公钥;PKx,AID为公有属性密钥;αAID为第三随机选择参数;u为第四随机参数;e为双线映射;H(x)为属性x的Hash值;
所述属性机构将所述数据所有者公钥PKo,AID和所述公有属性密钥PKx,AID发送给所述数据所有者。
可选的,所述数据所有者采用数据加密算法加密数据明文,生成密文,具体包括:
所述数据所有者采用数据加密算法
Figure GDA0002856772580000034
加密数据明文,生成所述密文
Figure GDA0002856772580000035
其中s为第一加密指数;m为数据明文;A为访问控制结构;
Figure GDA0002856772580000036
为属性k对应的数据所有者的公钥;IA为允许访问的公有属性集合;
Figure GDA0002856772580000037
为属性k对应的公有属性密钥;
Figure GDA0002856772580000038
为符合条件的公有属性的属性集;
Figure GDA0002856772580000039
为属性对应的公有属性密钥;l为满足访问控制要求的公有属性的个数。
可选的,所述云服务器根据所述公有属性密钥对所述密文进行解码运算,生成解码后密文,具体包括:
采用公式
Figure GDA0002856772580000041
生成所述解码后密文M′;其中nA为参与运算的属性机构的数量。
可选的,所述云服务器获取所述用户的私有属性相关密钥组之前,还包括:
获取用户的登录密码ε、用户所用设备的设备标识码μ、预期文件使用时间δ及预期使用地点uUID作为用户私有属性XP
根据所述用户私有属性XP生成用户私有属性相关密钥组;所述用户私有属性相关密钥组包括第一用户私有属性密钥MKU={ε,μ}、第二用户私有属性密钥
Figure GDA0002856772580000042
第三用户私有属性密钥
Figure GDA0002856772580000043
第四用户私有属性密钥
Figure GDA0002856772580000044
第五用户私有属性密钥PKs=e(g,g)δ、第六用户私有属性密钥
Figure GDA0002856772580000045
其中MKU为第一用户私有属性密钥、PKU为第二用户私有属性密钥、
Figure GDA0002856772580000048
为第三用户私有属性密钥、
Figure GDA0002856772580000047
为第四用户私有属性密钥、PKs为第五用户私有属性密钥、SKs为第六用户私有属性密钥;H(xP)为私有属性的Hash值;
根据所述用户私有属性xP生成用户访问结构A′;
所述用户将所述用户私有属性相关密钥组及所述用户访问结构A′上传至所述服务器。
可选的,所述云服务器根据所述用户的私有属性相关密钥组对所述解码后密文进行重新封装操作,生成封装后密文,具体包括:
采用公式
Figure GDA0002856772580000046
对所述解码后密文进行重新封装操作,生成封装后密文CTU;其中λi为分配向量;S′为第二加密指数。
可选的,所述用户对所述封装后密文进行解密运算,获得所述数据明文之前,还包括:
所述属性机构获取第四随机参数u;
所述属性机构根据所述第四随机参数u生成用户公钥PKUID=gu;其中PKUID为用户公钥;
所述属性性机构根据所述数据所有者私钥SKo生成用户么钥
Figure GDA0002856772580000051
其中SKUID,AID为用户私钥。
可选的,所述用户对所述封装后密文进行解密运算,获得所述数据明文,具体包括:
所述用户根据所述用户的私有属性相关密钥组和所述用户私钥,采用公式
Figure GDA0002856772580000052
对所述封装后密文进行解密运算,获得所述数据明文m;其中nA′为参与运算的属性数量;
Figure GDA0002856772580000053
为公有属性集合;wi′为访问控制结构变量;K为公有属性;IA为选中的公有属性集合;
Figure GDA0002856772580000054
为解密私钥。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明提供一种数据文件安全分发使用方法,通过将用户的属性分为公有属性和私有属性,分别实现对数据的访问控制和对信息流进行控制,具体为,采用用户的身份和角色构成用户的公有属性,采用公有属性实现对密文的访问控制,将用户的登录密码、设备的标识码、地理位置、时间等作为私有属性参与用户私有属性密钥的生成,可以实现对密文的流转进行控制,使得指定用户在指定设备、指定时间及指定地点才能查看数据文件,提高了加密信息访问和查看的安全性。此外,本发明提供的方法能够实现抗合谋攻击,防止用户或者属性机构通过将获得的密钥进行串谋得到需要的密钥,危害信息安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据本发明提供的附图获得其他的附图。
图1为本发明提供的数据文件安全分发使用方法的方法流程图;
图2为本发明提供的数据文件安全分发使用系统的系统结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种数据文件安全分发使用方法,所述方法将用户的属性分为公有属性和私有属性,分别实现对数据的访问控制和对信息流的控制。将用户的部门、角色、身份等作为用户的公有属性;将用户的密码、用户设备标识码、用户的地理位置、操作时间等作为用户的私有属性。当用户的公有属性满足数据的访问控制要求时,用户能够访问数据但无法查看数据,只有用户的私有属性满足数据流转要求时,用户才能查看数据,从而能够确保只有特定用户在特定时间内、特定地点的特定设备上查看、使用数据,提高了加密信息的安全性。而当用户的条件不满足解密条件时,用户即使获得数据也无法查看。本发明所述方法还提供了属性撤销和重加密机制,能够确保已失去权限的用户无法查阅数据,不会对数据造成任何危害,在整个方案的运行过程中,能够实现抗合谋攻击,可以保证云环境数据的安全。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明提供的数据文件安全分发使用方法的方法流程图。图2为本发明提供的数据文件安全分发使用系统的系统结构图。参见图1和图2,本发明提供的所述数据文件安全分发使用方法基于一种数据文件安全分发使用系统,所述数据文件安全分发使用系统包括数据所有者(Ower)201、云服务器(Cloud Server)202、属性机构(AA)203、用户(User)204和认证机构(CA)205。所述属性机构203分别与所述数据拥有者201、所述云服务器202、所述用户204及所述认证机构205通信连接;所述云服务器202分别与所述数据所有者201及所述用户204通信连接;所述用户204与所述认证机构205通信连接。所述数据文件安全分发使用系统中各模块的主要功能和操作如下:
(1)认证机构(CA)205:在系统中用于认证属性机构203和用户204的身份。在建立系统的过程中,属性机构203与用户201向认证机构205申请身份认证。系统初始化阶段,认证机构205验证每个属性机构203和每个用户204的身份,验证通过后每个属性机构203将得到认证机构分配的标识符,每个用户204得到全局唯一标识符。验证通过后,认证机构205向合法的属性机构203与用户204颁发证书,并向每个合法属性机构203分配全局唯一的标识符AID,向每个合法用户204分配全局唯一的标识符UID。认证机构205并不参与属性的管理和相关密钥的建立。
(2)属性机构(AA)203:按照类别划分所有公有属性,每个AA203负责管理一种公有属性,每个AA203相互独立,可以有效地保护用户信息,防止隐私泄露。AA203负责生成和属性相关的密钥,当属性更新时,AA203负责更新属性密钥。
(3)云服务器(Cloud Sever)202:所述云服务器202为数据所有者201提供存储服务和数据访问服务。数据所有者201在将数据传送到云服务器202之前,根据访问控制规则使用相应的公有属性密钥对数据进行加密,之后将加密后的数据密文和访问控制结构上传到云服务器202上。若用户满足访问控制结构的条件,用户可以向对应的属性机构AA203申请数据访问密钥,然后连同用户自己的私有属性公钥发送到云服务器202,云服务器202进行重新封装操作,将封装过的密文发送给用户204,确保只有该用户204才能解密数据。
(4)数据所有者(Owner)201:数据所有者201对数据具有所有权,负责加密数据并把数据上传到云服务器202,数据所有者201通过访问控制结构让只有满足条件的用户可以从云服务器下载数据。
(5)用户(User)204:云服务器上数据的使用者--用户204具有公有属性和私有属性,用户角色、身份等作为公共属性(即公有属性)密钥组成部分,用户特有的属性,比如登录账号、登录密码、设备标识码、地理位置、使用时间等可以作为私有属性密钥的组成部分。
基于所述数据文件安全分发使用系统,本发明提供的所述数据文件安全分发使用方法包括:
步骤101:所述数据所有者采用数据加密算法加密数据明文,生成密文。
本发明提供的所述数据文件安全分发使用方法中,分别使用了三种密钥生成算法,所述三种密钥生成算法分别用于生成数据所有者的密钥、用户的公有属性密钥及用户的私有属性密钥。所述三种密钥生成算法分别是:
(1)数据所有者密钥生成算法OwnerGeneration(β,γ,αAID):该算法输入随机参数β,γ,αAID,由属性机构203负责生成用于文件共享需要的主密钥MKo,私钥SKo,版本密钥VKAID和数据所有者的公钥PKo,AID
当数据所有者201有数据需要共享到云服务器202时,需要生成数据加密所需密钥。所述数据所有者生成算法由数据所有者Owner201初始化,Owner随机选择β,γ∈Zp作为公共参数(其中Zp表示公共参数集合),生成数据所有者的主密钥MKo={β,γ},私钥
Figure GDA0002856772580000091
数据所有者Owner将SKo通过安全的信道发送给允许访问该数据的访问属性所属的属性机构AA。
属性机构AA随机选择参数αAID∈Zp,生成数据加密用的版本密钥VKAID=αAID,生成数据所有者的公钥
Figure GDA0002856772580000092
设属性机构AA的控制属性为x(x为用户的身份属性,符合数据的访问控制要求),生成公共属性密钥
Figure GDA0002856772580000093
并把它和PKo,AID一起发送给数据所有者。
(2)用户访问密钥生成算法UserGeneration(u,SKo)该算法输入随机参数u和私钥SKo,由属性机构负责生成用户公有属性相关的密钥PKUID和SKUID,AID
当满足访问属性的用户需要访问数据所有者共享到云服务器的数据时,需要到对应的属性管理机构申请用户访问密钥。属性机构随机选择u∈Zp,g为生成元,生成用户的公钥PKUID=gu。属性机构分配用户的属性,构成个人属性集为SUID,AID。使用数据所有者的SKo,属性机构输出用户的私钥
Figure GDA0002856772580000094
(3)用户私有属性密钥生成算法UserPrivateGeneration(ε,μ,δ,uUID):该算法输入随机参数ε,μ,δ,uUID,由用户生成私有属性相关密钥MKU,PKU
Figure GDA0002856772580000095
PKs和SKs
用户在访问云数据时,还需要生成基于其私有属性的访问密钥。系统获取用户的登录密码、用户所用设备的信息、预期文件使用时间、预期文件使用地点(可以为地理坐标,也可以为IP地址)作为私有属性xP,选择随机参数ε,μ,δ,uUID∈Zp,生成User的私有属性相关密钥组;所述用户私有属性相关密钥组包括第一用户私有属性密钥MKU={ε,μ}第二用户私有属性密钥
Figure GDA0002856772580000101
第三用户私有属性密钥
Figure GDA0002856772580000102
第四用户私有属性密钥
Figure GDA0002856772580000103
第五用户私有属性密钥PKs=e(g,g)δ、第六用户私有属性密钥
Figure GDA0002856772580000104
因此,在所述步骤101数据所有者采用数据加密算法加密数据明文之前,还包括:
所述数据所有者获取随机参数组;所述随机参数组包括第一随机参数β和第二随机参数γ;
所述数据所有者根据所述第一随机参数β和所述第二随机参数γ生成数据所有者主密钥MKo={β,γ}和数据所有者私钥
Figure GDA0002856772580000105
其中MKo为数据所有者主密钥;SKo为数据所有者私钥;g为生成元;
所述数据所有者将所述数据所有者私钥SKo发送至所述属性机构;
所述属性机构根据所述数据所有者私钥SKo生成数据所有者公钥
Figure GDA0002856772580000106
和公有属性密钥
Figure GDA0002856772580000107
其中PKo,AID为数据所有者公钥;PKx,AID为公有属性密钥;αAID为第三随机选择参数;e为双线映射;H(x)=Hash(x),为属性x的Hash值;u为第四随机参数;
所述属性机构将所述数据所有者公钥PKo,AID和所述公有属性密钥PKx,AID发送给所述数据所有者。
在所述数据所有者将数据上传云服务器前,数据所有者使用申请到的PKo,AID和PKx,AID密钥进行加密,所述步骤101数据所有者采用数据加密算法加密数据明文,生成密文,具体包括:
所述数据所有者随机选择加密指数s∈Zp和向量
Figure GDA0002856772580000111
用来共享加密指数;其中y2,...,yn表示随机数;
Figure GDA0002856772580000112
表示Zp上的n维向量空间。对于i=1,...,l,生成并分配
Figure GDA0002856772580000113
Mi是对应于矩阵M第i行的向量;其中l表示为满足访问控制要求的公共属性的个数;矩阵M是访问控制矩阵。存在ωi∈Zp,使得∑i∈Iωiλi=s成立;其中ωi表示向量;I表示公有属性集合。
所述数据所有者采用数据加密算法
Figure GDA0002856772580000114
加密数据明文,加密算法参数包括随机参数s,数据所有者的公钥
Figure GDA0002856772580000115
公共属性密钥
Figure GDA0002856772580000116
数据所有者的主密钥MKo,数据文件m和访问结构A。
生成所述密文如下:
Figure GDA0002856772580000117
其中s为第一加密指数;m为数据明文;A为访问控制结构;
Figure GDA0002856772580000118
为属性k对应的数据所有者的公钥;IA为允许访问的公有属性集合;
Figure GDA0002856772580000119
为属性k对应的公有属性密钥;
Figure GDA00028567725800001110
为符合条件的公有属性的属性集;
Figure GDA00028567725800001111
为属性对应的公有属性密钥;l为满足访问控制要求的公有属性的个数。
步骤102:所述数据所有者将所述密文发布至所述云服务器。
在所述数据所有者采用数据加密算法加密数据明文,生成密文CT之后,所述数据所有者将所述密文CT发布至所述云服务器。
步骤103:所述云服务器获取所述用户的公有属性及所述数据所有者的访问控制结构。
云服务器首先使用
Figure GDA0002856772580000121
对所述密文进行操作,验证用户的公共属性是否满足加密文件需要的访问控制结构A,然后使用MKU
Figure GDA0002856772580000122
PKs对信息进行重新封装,重新封装后数据文件与用户私有属性进行绑定,可以确保文件离开云服务器之后只能由该用户在特定时间、特定地点、特定设备上打开文件。
步骤104:所述云服务器判断所述用户的公有属性与所述数据所有者的访问控制结构是否匹配,获得第一判断结果;
云服务器验证用户的公共属性是否满足加密文件需要的访问控制结构A,即判断所述用户的公有属性与所述数据所有者的访问控制结构是否匹配。
步骤105:若所述第一判断结果为所述用户的公有属性与所述数据所有者的访问控制结构匹配,所述云服务器根据所述用户的公有属性从所述属性机构获取公有属性密钥。若所述第一判断结果为所述用户的公有属性与所述数据所有者的访问控制结构不匹配,所述云服务器拒绝所述用户访问云服务器中的数据。
符合访问控制规则的用户访问数据前,需要到对应的属性机构申请用户访问密钥(即所述公有属性密钥),同时生成用户私有属性密钥,申请到用户访问密钥后,可以向云服务器申请数据访问。云服务器在接收到用户请求后,为了防止合谋攻击和密钥泄漏导致的非法传播,云服务器使用用户的私有属性相关密钥组执行重新封装操作,把数据与用户私有属性进行绑定,保证只有在特定地点、特定设备和特定用户才可以解密密文,获得数据。
步骤106:所述云服务器根据所述公有属性密钥对所述密文进行解码运算,生成解码后密文。
云服务器检查用户的公有属性与数据所有者设计的访问控制结构是否匹配,如果匹配,云服务器根据用户拥有的属性到对应的属性机构AA获取PKx,AID,使用PKx,AID对密文进行解码运算,得到解码后密文M′。
所述云服务器根据所述公有属性密钥对所述密文进行解码运算的公式为:
M′=Decrypt(CT,PKx,AID)
Figure GDA0002856772580000131
其中nA为参与运算的属性机构的数量。
步骤107:所述云服务器获取所述用户的私有属性相关密钥组;
在所述步骤107云服务器获取所述用户的私有属性相关密钥组之前,还包括:
获取用户的登录密码ε、用户所用设备的设备标识码μ、预期文件使用时间δ及预期使用地点uUID作为用户私有属性xp
根据所述用户私有属性xp生成用户私有属性相关密钥组;所述用户私有属性相关密钥组包括第一用户私有属性密钥MKU={ε,μ}、第二用户私有属性密钥
Figure GDA0002856772580000132
第三用户私有属性密钥
Figure GDA0002856772580000133
第四用户私有属性密钥
Figure GDA0002856772580000134
第五用户私有属性密钥PKs=e(g,g)δ、第六用户私有属性密钥
Figure GDA0002856772580000135
其中MKU为第一用户私有属性密钥、PKU为第二用户私有属性密钥、
Figure GDA0002856772580000136
为第三用户私有属性密钥、
Figure GDA0002856772580000137
为第四用户私有属性密钥、PKs为第五用户私有属性密钥、SKs为第六用户私有属性密钥;H(xP)为私有属性的Hash值;
根据所述用户私有属性xp生成用户访问结构A′;
所述用户将所述用户私有属性相关密钥组及所述用户访问结构A′上传至所述服务器。
步骤108:所述云服务器根据所述用户的私有属性相关密钥组对所述解码后密文进行重新封装操作,生成封装后密文。
用户将MKU={ε,μ},
Figure GDA0002856772580000141
PKs=e(g,g)δ和用户访问结构A′上传给云服务器,A′是由用户根据所选私有属性构成的访问结构(包括数据使用的时间、地点、设备等相关信息)。云服务器对密文执行重新封装操作,具体为:
云服务器利用用户的私有属性相关密钥组对解码后密文M′进行重新封装操作,云服务器使用MKU={ε,μ},
Figure GDA0002856772580000142
PKs=e(g,g)δ对密文M′进行运算。首先随机选择加密指数s′∈Zp和向量
Figure GDA0002856772580000143
用来共享加密指数。对于i=1,...,t,(i∈SU),生成并分配
Figure GDA0002856772580000144
Mi′是对应于矩阵M′第i行的向量。存在ωi∈Zp,使得∑i∈Iωiλi=s′成立。其中SU是被选中的用户私有属性中的属性;y2′,...,yn′表示随机数,t表示为满足访问控制要求的公共属性的个数;M′表示私有属性的访问控制矩阵;ωi表示向量;I表示公有属性集合;
采用公式
Figure GDA0002856772580000145
对所述解码后密文进行重新封装操作,生成封装后密文CTU;其中λi为分配向量;s′∈Zp为第二加密指数;MKU={ε,μ},
Figure GDA0002856772580000146
PKs=e(g,g)δ为用户发送过来的私有属性密钥。
所述云服务器将用户访问结构A′隐式包含于密文中。
步骤109:所述云服务器将所述封装后密文发送至所述用户。
步骤110:所述用户对所述封装后密文进行解密运算,获得所述数据明文。
用户收到云服务器发送过来的重新封装后的数据CTU后,执行解密操作。云服务器将密文CTU发送给用户。解密算法
Figure GDA0002856772580000151
如果用户的登录密码、设备属性、地理位置、当前操作时间满足密文CTU中的访问结构A′,用户将使用C′=gβ*S
Figure GDA0002856772580000152
Figure GDA0002856772580000153
对密文CU进行解密运算,最后获得明文信息m,否则解密失败。
解密算法过程如下:
Figure GDA0002856772580000154
其中nA′为参与运算的属性数量;
Figure GDA0002856772580000159
为公有属性集合;wi′为访问控制结构变量;K为公有属性;IA为选中的公有属性集合;
Figure GDA0002856772580000155
为解密私钥C′=gβ*S
Figure GDA0002856772580000156
Figure GDA0002856772580000157
C′U=gε*s′
Figure GDA0002856772580000158
可见,本发明提供了一种云环境下数据文件安全分发共享的方法,基于属性密码技术实现,本发明把属性分为公有属性和私有属性,采用公有属性实现密文的访问控制,只有具备相关共有属性的用户才能访问加密的密文,采用私有属性实现信息流控制,只有符合私有属性要求的用户才能在特定时间、特定地点、特定设备上解密数据文件。
对于存放在云服务器上的数据,如果数据拥有者重新设置访问控制规则,可以执行属性更新操作,撤销不需要的属性,增加新属性。因此,本发明提供的数据文件安全分发使用方法还包括属性更新步骤。所述属性更新步骤包括密钥更新步骤和数据重加密步骤这两步操作。更新密钥和重新加密操作可以防止被撤销的用户通过新公钥对数据进行未授权的访问,也可以保证当一个新加入的用户的属性满足密文的相关访问策略时,可以访问以前的数据。
第一步操作,密钥更新:属性机构通过执行密钥更新算法生成新版本密钥VK′AID′,更新蜜钥UK′AID′和用户的新私钥SK′UID′,AID′,新属性设置S′UID,AID∈SUID,AID。属性机构AA的属性变更后,数据所有者需要更改相关密钥,保证属性变更后信息安全,包括如下步骤:
步骤1:重新生成用户访问密钥
带有AID′的属性机构首先随机选择αAID′∈Zp作为与之前版本密钥不同的新版本密钥,然后计算UID′的用户新的私钥:
Figure GDA0002856772580000161
Figure GDA0002856772580000162
新版本密钥VK′AID′用来生成更新密钥:
Figure GDA0002856772580000163
最后,拥有AID′的属性机构分发新私钥SK′UID′,AID′给拥有该属性的用户。
步骤2:用户更新用户访问密钥
每个拥有新属性的用户收到更新密钥UK′AID′更新私钥如下:
Figure GDA0002856772580000171
步骤3:数据所有者更新相关密钥
数据所有者收到属性机构发送的更新密钥UKAID′,把原公钥PKo,AID更新到现有版本
Figure GDA0002856772580000172
并且每个公共属性密钥更新为
Figure GDA0002856772580000173
第二步操作,数据重新加密:数据所有者首先生成密钥更新信息
Figure GDA0002856772580000174
之后,发送更新信息
Figure GDA0002856772580000175
和属性机构的更新密钥UKAID′=(UK1AID′,UK2AID′)到云服务器。云服务器执行加密算法重新加密密文,计算新密文为:
Figure GDA0002856772580000176
其中UK1AID′为更新密钥;ρ(i)为属性;SAID′为更新的属性集合;UIρ(i),AID′为密钥更新信息。
在基于属性加密的系统中,前向安全是指任何已经被撤销权限的用户不能再对系统进行访问及任何操作,除非该用户剩余未被撤销的有效属性依旧能够满足访问结构的条件。在本发明提供的方法及系统中,实现了属性更新机制,使得密钥和密文在用户的属性被撤销之后,都进行了更新,能够防止已经失去访问权限的用户对系统中的数据造成威胁。
抗合谋攻击在基于属性加密系统中是最为重要的安全特性之一。合谋攻击即是指系统中的属性机构中部分属性机构或者用户串通起来,彼此进行信息的交换,共享这些机构所具有的属性值,将密钥拼凑起来,试图获取更多的密文。在本发明中,由于每个用户的私钥
Figure GDA0002856772580000181
中都有不同的随机化参数,主密钥MKo={β,γ}保存在数据所有者处,并没有对外传送,属性机构并不能通过运算获得随机参数u。因此,即使用户或者属性机构进行串通,也无法将密钥进行拼凑对密文进行解密。因此本发明提供的方法是抗合谋攻击的。
本发明所述方法基于属性密码技术,提出了一种应用于云服务器上多授权的基于属性的密码体制,在本发明方案中,将用户的属性分为公有属性和私有属性,分别实现对数据文件的访问控制和对信息流进行控制。将用户的部门,身份和角色等作为用户的公有属性,公有属性实现对密文的访问控制,将用户的登录密码、设备的标识码、地理位置、时间等作为私有属性参与用户私有属性密钥的生成,可以实现对密文的流转进行控制,当用户的公有属性满足数据的访问控制要求时,用户才能获得数据,只有用户的私有属性满足数据流转要求时,用户才能查看数据,确保只有指定用户在指定设备指定时间才能查看数据文件,当用户的条件不满足解密条件时,用户即使获得数据也无法查看,从而提高了信息的安全性。此外,本发明所述方法还提供了属性更新机制,确保了已失去权限的用户无法查阅共享文件,不会对共享文件造成任何危害。本发明包括密钥生成算法、加密算法、重新封装算法、解密算法、属性更新算法共5类算法,提供密钥生成、数据加密、数据解密、属性更新等功能,在整个方案的运行过程中,能够实现抗合谋攻击,防止用户或者属性机构通过将获得的密钥进行串谋得到需要的密钥,危害系统安全,从而可以有效保证云环境数据的安全。
综上所述,本发明提供的方法与现有技术相比,至少具有以下优点:
(1)本发明的方法基于属性密码技术实现,核心的属性密码的技术保证本发明可以达到选择密文攻击下的密文不可识别性安全级别。
(2)本发明还提供属性更新、数据重加密等技术方案,可以满足文件生命期内流程管理需要。
(3)在整个方案的运行过程中,能够实现抗合谋攻击,防止用户或者属性机构通过将获得的密钥进行串谋,能够一定程度上追踪密文,提高系统安全性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

Claims (7)

1.一种数据文件安全分发使用方法,其特征在于,所述数据文件安全分发使用方法基于一种数据文件安全分发使用系统,所述数据文件安全分发使用系统包括数据所有者、云服务器、属性机构和用户;所述属性机构分别与所述数据所有者、所述云服务器及所述用户通信连接;所述云服务器分别与所述数据所有者及所述用户通信连接;
所述数据文件安全分发使用方法包括:
所述数据所有者采用数据加密算法加密数据明文,生成密文;
所述数据所有者将所述密文发布至所述云服务器;
所述云服务器获取所述用户的公有属性及所述数据所有者的访问控制结构;
所述云服务器判断所述用户的公有属性与所述数据所有者的访问控制结构是否匹配,获得第一判断结果;
若所述第一判断结果为所述用户的公有属性与所述数据所有者的访问控制结构匹配,所述云服务器根据所述用户的公有属性从所述属性机构获取公有属性密钥;
所述云服务器根据所述公有属性密钥对所述密文进行解码运算,生成解码后密文;
所述云服务器获取所述用户的私有属性相关密钥组;
所述云服务器根据所述用户的私有属性相关密钥组对所述解码后密文进行重新封装操作,生成封装后密文;
所述云服务器将所述封装后密文发送至所述用户;
所述用户对所述封装后密文进行解密运算,获得所述数据明文;
所述数据所有者采用数据加密算法加密数据明文之前,还包括:
所述数据所有者获取随机参数组;所述随机参数组包括第一随机参数β和第二随机参数γ;
所述数据所有者根据所述第一随机参数β和所述第二随机参数γ生成数据所有者主密钥MKo={β,γ}和数据所有者私钥
Figure FDA0002748743880000021
其中MKo为数据所有者主密钥;SKo为数据所有者私钥;g为生成元;
所述数据所有者将所述数据所有者私钥SKo发送至所述属性机构;
所述属性机构根据所述数据所有者私钥SKo生成数据所有者公钥
Figure FDA0002748743880000022
和公有属性密钥
Figure FDA0002748743880000023
其中PKo,AID为数据所有者公钥;PKx,AID为公有属性密钥;αAID为第三随机选择参数;u为第四随机参数;e为双线映射;H(x)为属性x的Hash值;
所述属性机构将所述数据所有者公钥PKo,AID和所述公有属性密钥PKx,AID发送给所述数据所有者。
2.根据权利要求1所述的数据文件安全分发使用方法,其特征在于,所述数据所有者采用数据加密算法加密数据明文,生成密文,具体包括:
所述数据所有者采用数据加密算法
Figure FDA0002748743880000024
加密数据明文,生成所述密文
Figure FDA0002748743880000025
Figure FDA00027487438800000210
其中S为第一加密指数;m为数据明文;A为访问控制结构;
Figure FDA0002748743880000026
为属性k对应的数据所有者的公钥;IA为允许访问的公有属性集合;
Figure FDA0002748743880000027
为属性k对应的公有属性密钥;
Figure FDA0002748743880000028
为符合条件的公有属性的属性集;
Figure FDA0002748743880000029
为属性对应的公有属性密钥;l为满足访问控制要求的公有属性的个数。
3.根据权利要求1所述的数据文件安全分发使用方法,其特征在于,所述云服务器根据
所述公有属性密钥对所述密文进行解码运算,生成解码后密文,具体包括:
采用公式
Figure FDA0002748743880000031
生成所述解码后密文M′;其中nA为参与运算的属性机构的数量。
4.根据权利要求1所述的数据文件安全分发使用方法,其特征在于,所述云服务器获取所述用户的私有属性相关密钥组之前,还包括:
获取用户的登录密码ε、用户所用设备的设备标识码μ、预期文件使用时间δ及预期使用地点uUID作为用户私有属性XP
根据所述用户私有属性XP生成用户私有属性相关密钥组;所述用户私有属性相关密钥组包括第一用户私有属性密钥MKU={ε,μ}、第二用户私有属性密钥
Figure FDA0002748743880000032
第三用户私有属性密钥
Figure FDA0002748743880000033
第四用户私有属性密钥
Figure FDA0002748743880000034
第五用户私有属性密钥PKs=e(g,g)δ、第六用户私有属性密钥
Figure FDA0002748743880000035
其中MKU为第一用户私有属性密钥、PKU为第二用户私有属性密钥、
Figure FDA0002748743880000036
为第三用户私有属性密钥、
Figure FDA0002748743880000037
为第四用户私有属性密钥、PKs为第五用户私有属性密钥、SKs为第六用户私有属性密钥;H(xP)为私有属性的Hash值;
根据所述用户私有属性xP生成用户访问结构A′;
所述用户将所述用户私有属性相关密钥组及所述用户访问结构A′上传至所述服务器。
5.根据权利要求1所述的数据文件安全分发使用方法,其特征在于,所述云服务器根据所述用户的私有属性相关密钥组对所述解码后密文进行重新封装操作,生成封装后密文,具体包括:
采用公式
Figure FDA0002748743880000041
对所述解码后密文进行重新封装操作,生成封装后密文CTU;其中λi为分配向量;S′为第二加密指数。
6.根据权利要求1所述的数据文件安全分发使用方法,其特征在于,所述用户对所述封装后密文进行解密运算,获得所述数据明文之前,还包括:
所述属性机构获取第四随机参数u;
所述属性机构根据所述第四随机参数u生成用户公钥PKUID=gu;其中PKUID为用户公钥;
所述属性机构根据所述数据所有者私钥SKo生成用户私钥;
Figure FDA0002748743880000042
其中SKUID,AID为用户私钥。
7.根据权利要求6所述的数据文件安全分发使用方法,其特征在于,所述用户对所述封装后密文进行解密运算,获得所述数据明文,具体包括:
所述用户根据所述用户的私有属性相关密钥组和所述用户私钥,采用公式
Figure FDA0002748743880000043
对所述封装后密文进行解密运算,获得所述数据明文m;其中nA′为参与运算的属性数量;
Figure FDA0002748743880000051
为公有属性集合;wi′为访问控制结构变量;K为公有属性;IA为选中的公有属性集合;
Figure FDA0002748743880000052
为解密私钥。
CN201811297829.7A 2018-11-02 2018-11-02 一种数据文件安全分发使用方法 Active CN109587115B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811297829.7A CN109587115B (zh) 2018-11-02 2018-11-02 一种数据文件安全分发使用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811297829.7A CN109587115B (zh) 2018-11-02 2018-11-02 一种数据文件安全分发使用方法

Publications (2)

Publication Number Publication Date
CN109587115A CN109587115A (zh) 2019-04-05
CN109587115B true CN109587115B (zh) 2021-01-26

Family

ID=65921140

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811297829.7A Active CN109587115B (zh) 2018-11-02 2018-11-02 一种数据文件安全分发使用方法

Country Status (1)

Country Link
CN (1) CN109587115B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111526011B (zh) * 2020-04-16 2023-04-11 丝链(常州)控股有限公司 一种加密数据的恢复方法
CN112565223B (zh) * 2020-11-27 2022-11-04 东莞职业技术学院 面向物联网的属性加密访问控制的方法、系统及存储介质
CN117113326B (zh) * 2023-08-31 2024-03-12 金锐软件技术(杭州)有限公司 一种基于abac模型的授权访问系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011073458A1 (es) * 2009-12-14 2011-06-23 Fundacion Robotiker Método y dispositivo de estimación de la probabilidad de error de medida para sistemas distribuidos de sensores
CN102413159B (zh) * 2011-03-15 2012-10-17 北京邮电大学 一种面向网络化操作系统的可信任在线存储系统
CN102546181B (zh) * 2012-01-09 2014-12-17 西安电子科技大学 基于密钥池的云存储加解密方法
US8559631B1 (en) * 2013-02-09 2013-10-15 Zeutro Llc Systems and methods for efficient decryption of attribute-based encryption
CN103138939B (zh) * 2013-03-28 2015-09-16 武汉大学 云存储模式下基于可信平台模块的密钥使用次数管理方法
CN106375346B (zh) * 2016-11-14 2019-02-05 北京邮电大学 一种云环境下基于条件广播代理重加密的数据保护方法

Also Published As

Publication number Publication date
CN109587115A (zh) 2019-04-05

Similar Documents

Publication Publication Date Title
CN110099043B (zh) 支持策略隐藏的多授权中心访问控制方法、云存储系统
CN109040045B (zh) 一种基于密文策略属性基加密的云存储访问控制方法
CN108390876B (zh) 支持撤销外包可验证多授权中心访问控制方法、云服务器
US7688975B2 (en) Method and apparatus for dynamic generation of symmetric encryption keys and exchange of dynamic symmetric key infrastructure
Belguith et al. Analysis of attribute‐based cryptographic techniques and their application to protect cloud services
CN108111540B (zh) 一种云存储中支持数据共享的分层访问控制系统及方法
CN108600217A (zh) 一种云端基于代理重加密的数据授权确定性更新方法
CN110602063A (zh) 一种多授权中心访问控制方法、系统及云存储系统
JP2009526322A (ja) 変化識別子を使用するセキュアなデジタル・コンテンツ管理
WO2013144553A1 (en) Method and system for network data access
CN110933033B (zh) 智慧城市环境下多物联网域的跨域访问控制方法
EP1714459A1 (en) Accessing protected data on network storage from multiple devices
CN114584295B (zh) 针对属性基代理重加密系统的通用黑盒可追踪方法和装置
CN111600875A (zh) 基于数据源和数据主隐藏的匿名数据共享方法及系统
CN109587115B (zh) 一种数据文件安全分发使用方法
CN108632251B (zh) 基于云计算数据服务的可信认证方法及其加密算法
WO2022148182A1 (zh) 一种密钥管理方法及相关设备
CN111181719B (zh) 云环境下基于属性加密的分层访问控制方法及系统
Tiwari et al. SecCloudSharing: Secure data sharing in public cloud using ciphertext‐policy attribute‐based proxy re‐encryption with revocation
US20240039709A1 (en) Method and apparatus for sharing encrypted data, and device and readable medium
CN115426136A (zh) 基于区块链的跨域访问控制方法及系统
CN102999710A (zh) 一种安全共享数字内容的方法、设备及系统
CN113055164A (zh) 一种基于国密的密文策略属性加密算法
CN106790100B (zh) 一种基于非对称密码算法的数据存储和访问控制方法
US20130014286A1 (en) Method and system for making edrm-protected data objects available

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201223

Address after: 266000 2nd floor, No.79 Xuzhou Road, Shinan District, Qingdao City, Shandong Province

Applicant after: QINGDAO WEIZHIHUI INFORMATION Co.,Ltd.

Address before: 266000 2 / F, curiosity workshop, 79 Xuzhou Road, Shinan District, Qingdao City, Shandong Province

Applicant before: Wang Yaping

GR01 Patent grant
GR01 Patent grant