一种基于属性加密的物流大数据访问控制系统及方法与流程

文档序号:14776491发布日期:2018-06-23 03:31阅读:479来源:国知局
一种基于属性加密的物流大数据访问控制系统及方法与流程

本发明属于大数据环境中的信息安全技术领域,具体为一种基于属性加密的物流大数据访问控制系统及方法。



背景技术:

近年来,作为信息技术的重要组成部分的大数据技术受到了各界的广泛关注,并已经被广泛应用到物流、电网、电商、交通等各个方向。我国物流行业在最近几年取得了飞速的发展,如今,利用信息技术来推进物流行业的快速发展也是目前的热点方向之一。物流大数据一般主要指物品在流通过程中通过互联网、物联网以及RFID等收集到的各类信息数据。不同物流企业之间可以共享物流信息来实现数据的利用最大化,通过进行数据分析为用户提供更为合理和更好的服务。

云计算是一种可以为用户提供各种数据服务的新型技术模式,其通过将大量的计算资存储资源、软件等资源有效的连接在一起为用户提供可定的计算、存储和应用服务。但物流信息一般包含顾客、企业等隐私数据,因此在云计算环境下,物流数据的隐私保护是要解决的首要问题。基于属性的加密体制比较适合应用于云计算环境下共享数据的安全访问控制方案,许多方案在访问控制灵活性、安全性及运行效率方面,都存在可改进和发展的地方。



技术实现要素:

本发明的目的在于提供一种基于属性加密的物流大数据访问控制系统及方法,以解决上述背景技术中提出的问题。

为实现上述目的,本发明提供一种基于属性加密的物流大数据访问控制系统及方法,其特征在于,包括四个实体:可信任授权中心、物流数据属主、物流数据访问者、云服务器。

可信任授权中心(TrustedAuthorization Center,TAC):主要用于生成系统的公共参数PK和主密钥MK,并参与云服务器与用户之间会话密钥的协商。

物流数据属主(Logistics Data Owner,LDO):代表拥有想要共享的物流信息明文的用户。在此访问控制方法中,物流数据属主并不是直接使用密文策略对明文进行属性加密,而是选定对称密钥对数据进行对称加密,然后再使用自己定义的访问策略加密对称密钥。

物流数据访问者(Logistics Data Visitors,LDV):物流数据访问者可以读取云存储服务器上的加密数据,然后通过递交自己的属性集合给TAC从而获得解密对称密钥密文的私钥,如果物流数据访问者的用户属性满足物流数据属主定义的访问策略,其将通过TAC分发的私钥解密获得对称加密密钥,从而可以获得明文,否则将无法获得明文消息。

云服务器(Cloud Storage Provider,CSP):云服务器提供物流数据存储和物流数据管理两类服务,我们认为云服务器是可疑但是诚实的,它将按照规定诚实地执行各项任务。

对于上述描述的系统实体,该方案包含以下步骤:

A.初始化Setup(1k):此部分由TAC完成,选定秩为p且生成元为g的乘法循环群G 0,构造双线性对e:G 0×G 0→G T,生成公共参数PK和主密钥MK。

B.密钥生成KeyGen(MK,A,u):此算法由TAC完成,生成物流数据访问者的解密私钥以及CSP与用户安全通信的会话密钥其中MK为系统主密钥,A表示用户属性集合,u表示系统普通用户。

C.数据加密Encrypt(PK,Km,T,M):此算法由数据分享者执行,用户定义访问策略T,以公共参数PK、明文M、对称加密密钥Km以及用户制定的访问策略T为输入,LDO使用对称加密的方式对想要上传的物流数据进行对称加密,首先选择一个对称加密密钥Km对数据进行加密,生成明文M对称加密的密文Cm,将Cm作为属性加密的对象,利用密文访问策略加密后的对称密钥密文Ck,最终生成密文C。

D.数据重加密ReEncrypt(Cm,Ck,G):此算法在由CSP执行,CSP为每一个属性组Gi随机选择一个重加密密钥并为每一组属性建立重加密密文,CSP利用协商的会话密钥对重加密密钥进行加密,并生成一个与该密文对应的消息头

其中G表示用户组的属性。

E.数据解密Decypt(Ck,A,SK,Km):LDV从CSP获得密文及其对应消息头Head,LDV利用会话密钥解密密文获得重加密密钥首先对重加密密文进行解密得到Cm,然后利用对称密钥Km解密密文Cm获得明文M

附图说明

图1为本发明系统框架图;

图2为本发明的访问控制流程图;

图3为本发明的访问控制协议流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,本发明提供一种基于属性加密的物流大数据访问控制系统及方法,系统包含如下四个实体:

A.可信任授权中心(Trusted Authorization Center,TAC):主要用于生成系统的公共参数PK和主密钥MK,并参与云服务器与用户之间会话密钥的协商。

B.物流数据属主(Logistics Data Owner,LDO):代表拥有想要共享的物流信息明文的用户。在此访问控制方法中,物流数据属主并不是直接使用密文策略对明文进行属性加密,而是选定对称密钥对数据进行对称加密,然后再使用自己定义的访问策略加密对称密钥。

C:物流数据访问者(Logistics Data Visitors,LDV):物流数据访问者可以读取云存储服务器上的加密数据,然后通过递交自己的属性集合给TAC从而获得解密对称密钥密文的私钥,如果物流数据访问者的用户属性满足物流数据属主定义的访问策略,其将通过TAC分发的私钥解密获得对称加密密钥,从而可以获得明文,否则将无法获得明文消息。

D:云服务器(Cloud Storage Provider,CSP):云服务器提供物流数据存储和物流数据管理两类服务,我们认为云服务器是可疑但是诚实的,它将按照规定诚实地执行各项任务。

请参阅图2,本发明提供一种基于属性加密的物流大数据访问控制方法及系统,访问控制方法包含如下步骤:

A.初始化Setup(1k):此部分由TAC完成,生成公共参数PK和主密钥MK。

具体地,步骤A进一步包括:

A-a:选择秩为素p数的乘法循环群G0,其中G0的一个生成元为g,定义公开映射H:{0,1}*→G0;

A-b:构造双线性对e:G0×G0→GT;

A-c:选择随机数α,β∈Zp,计算系统公共参数PK和系统主密钥MK,其中Zp表示模p的整数,具体构造如下:

PK={G0,g,h=gβ,e(g,g)α},MK={β,gα}

B.密钥生成KeyGen(MK,A,u):此算法由TAC完成,生成物流数据访问者的解密私钥以及CSP与用户安全通信的会话密钥,其中MK为系统主密钥,A表示用户属性集合,u表示系统普通用户。

具体地,步骤B进一步包括:

B-a:用户解密私钥SK的生成。TAC执行算法KeyGen(MK,A,u)生成物流数据访问者的解密私钥SK,可信任授权中心选择r∈Zp,并为属性集合中每个属性i∈A选择随机数ri∈Zp,以此为输入参数输出SK,具体如下:

B-b:会话密钥的生成。为了保障用户ui与CSP之间的安全通信,采用公钥加密体制和密钥协商协议协商出一个会话密钥

具体地,步骤B-b进一步包括:

B-b1:CSP将自己的身份以及访问密文的用户ui的身份发给TAC,具体如下:

B-b2:TAC向CSP发送一个公钥证书,具体如下:

B-b3:CSP向用户发送一个会话密钥并用自己的私钥SKCSP以及用户的公钥对其加密,并将密文与公钥证书一起发给用户ui,具体如下:

C.数据加密Encrypt(PK,Km,T,M):此算法由数据分享者执行,以公共参数PK、明文M、对称加密密钥Km以及用户制定的访问策略为输入,过程中会生成明文M对称加密的密文Cm以及利用密文访问策略加密后的对称密钥密文Ck,最终生成密文C。

具体地,步骤C进一步包括:

C-a:用户定义密文策略的树形访问结构T,算法需要为访问树的每一个节点定义一个多项式qx,从根节点root开始,每个节点的多项式采用自上而下的方式随机生成,如果访问树结构中节点x的门限值为kx,则该节点的度dx设置为kx-1。

C-b:数据属主设定随机选择droot个节点来完成多项式qroot的定义,对于根节点以外的节点x,设置qx(0)=qparent(x)(index(x)),多项式其他的dx各节点依旧采取随机的方式选择。

C-c:LDO使用对称加密的方式对想要上传的物流数据进行对称加密,先选择一个对称加密密钥Km对数据进行加密,具体如下:

C-d:将Km作为属性加密的对象,计算得到Ck,具体如下:

其中i表示与叶子结点y对应的属性元素。

C-e:将Ck和Cm上传至云服务器。

D.数据重加密ReEncrypt(Cm,Ck,G):此算法在由CSP执行,当物流数据属主的属性集合发生变化时,CSP需要对Ck进行重加密操作,其中G表示用户组的属性。

具体地。步骤D进一步包括:

D-a:CSP为每一个属性组Gi随机选择一个重加密密钥并为每一组属性建立重加密密文,具体如下:

D-b:CSP利用协商的会话密钥对重加密密钥进行加密,并生成一个与该密文对应的消息头Head:

E.数据解密Decypt(Ck,A,SK,Km):物流数据访问者先从云服务器端获得密文,然后执行此操作。

具体地,步骤E进一步包括:

E-a:LDV从CSP获得密文及其对应消息头Head,LDV利用会话密钥解密密文获得重加密密钥,即:

E-b:定义递归的解密算法DecryptNode(Ck,SK,x),对于访问策略中的叶子结点,定义i=att(x),对于非叶子节点x,定义i=index(z),S'x={index(z):z∈Sx},具体解密如下:

其中z表示节点x的子节点。

E-c:首先对重加密密文进行解密,然后利用步骤E-b中得到的对称密钥Km解密获得明文,具体如下:

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1