一种抗密钥暴露属性加密的SDN跨域访问控制方法技术

技术编号:21038914 阅读:24 留言:0更新日期:2019-05-04 07:57
本发明专利技术公开了一种抗密钥暴露属性加密的SDN跨域访问控制方法,基于属性权威、SDN控制器、加密者和解密者四部分构成的控制系统,属性权威负责所有属性的认证以及公钥、私钥的发布;SDN控制器负责收集、存储和管理SDN流表、路由以及数据量信息,SDN划分为多个SDN域,每一个域内部署唯一的SDN控制器,每个SDN控制器管理各自域内的重要信息,并与其他域的SDN控制器交互;加密者是数据的初始拥有者,用户或SDN设备能够上传自己的数据并根据自己的意愿或需求自由制定相应的访问策略;解密者是试图获取SDN控制器内信息的用户或者设备,拥有一个与其属性集合相对应的私钥,并通过私钥来解密密文。

An SDN Cross-Domain Access Control Method Against Key Exposure Attribute Encryption

【技术实现步骤摘要】
一种抗密钥暴露属性加密的SDN跨域访问控制方法
本专利技术涉及SDN跨域访问控制方法,尤其涉及一种抗密钥暴露属性加密的SDN跨域访问控制方法,用于SDN跨域信息分享,属于网络信息安全领域。
技术介绍
软件定义网络(softwaredefinednetwork,简称SDN)将网络的控制层与数据层分离,不仅有利于降低网络当中的硬件成本,还使得网络管理员能够方便地对来自不同厂商的设备进行集中化的调试和管理。但同时SDN的一系列安全问题却成为了阻碍其进一步广泛应用的难题。其中最严重的问题之一就是如何在远程控制环境下保证由SDN控制器掌控的用户和设备敏感信息不被攻击者窃取。然而现有的SDN访问控制机制不足以实现灵活、高效而又准确的用户信息管理,尤其在部署多控制器的大型SDN环境中难以实现有效的跨域信息访问控制。因此在SDN环境中部署安全、灵活、高效的访问控制管理机制显得尤为重要。
技术实现思路
为提高SDN跨域信息分享的安全性和高效性,本专利技术提出了一种抗密钥暴露属性加密的SDN跨域访问控制方法,其核心思想是:利用预计算技术将必要的双线性对计算并存储起来,加密者在进行加密时无需进行任何复杂的双线性对运算,提高了属性加密的计算效率。同时我们基于拓展图技术减少了预计算产生的双线性配对数量,进一步降低了预计算产生的存储开销。除此之外,将用户或者设备的MAC地址嵌入到私钥当中,如果私钥当中的地址信息与设备本身不符则无法完整解密。这保证即使将私钥有意或者无意地暴露给其他非法用户或者设备,他们也无法获取此私钥获取敏感信息。为实现上述专利技术目的,本专利技术采用以下技术方案:一种抗密钥暴露属性加密的SDN跨域访问控制方法,其特征在于:基于属性权威、SDN控制器、加密者和解密者四部分构成的控制系统,属性权威和SDN控制器位于控制层,加密者和解密者位于数据层,属性权威是一个可信的权威机构,负责所有属性的认证以及公钥、私钥的发布;SDN控制器负责收集、存储和管理SDN流表、路由以及数据量信息,SDN采用多控制设置,将SDN划分为多个SDN域,每一个域内部署唯一的SDN控制器,每个SDN控制器管理各自域内的重要信息,同时负责与其他域的SDN控制器交互;加密者是数据的初始拥有者,包括路由器、服务器、PC机和交换机构成的用户或SDN设备,用户或SDN设备能够上传自己的数据并根据自己的意愿或需求自由制定相应的访问策略;解密者是试图获取SDN控制器内信息的用户或者设备,其身份用一个属性集合来表示,解密者拥有一个与其属性集合相对应的私钥,并通过私钥来解密密文,解密者包括路由器、loT传感器、手机和交换机;包括以下步骤:第一步:启动访问控制系统,属性权威调用初始化算法,输入一个安全参数k,生成公钥PK和主密钥MSK,公钥PK向全网公开,主密钥MSK由属性权威秘密保存;第二步:解密者向属性权威发起私钥生成请求,输入自己唯一的MAC地址AMAC、属性集合S、公钥PK以及主密钥MSK,获得属性权威验证,属性权威调用私钥生成算法生成私钥SK,并将解密者的属性集合S和MAC地址AMAC嵌入到私钥SK当中,最终输出与解密者MAC地址以及属性集合相对应的私钥SK;第三步:属性权调用预计算算法中的预处理子算法,预处理子算法输入公钥PK,根据公钥PK产生n个群和上的元素集合并存储在列表L当中,其中attj为全局属性集合Ω当中任意的属性,j表示该属性的唯一索引号,e表示从加法循环群映射到乘法循环群的双线性映射,P为的一个生成元,H1为哈希函数将任意一串二进制数组映射为群中的元素,α为主密钥MSK当中的一个元素,ri为一个随机的整数,其中i∈{1,2,...,n},然后基于拓展图技术产生一个常数c(ε),其中0<ε<1,利用常数c(ε)计算一个新的常数ne=c(ε)log2(p),其中p为群和的大素数阶,然后生成另外ne个群和上的元素集合并存储在列表L′当中,其中di为随机数,i∈{1,2,...,ne};第四步:加密者产生一组消息明文M,同时制定了相应的访问树Γ,调用预计算算法中的元组生成子算法生成与访问树Γ相对应的两个元组Tuple1和Tuple2;第五步:加密者调用快速加密算法,输入一个访问树Γ、公钥PK以及消息明文M,然后调用预处理子算法,在不执行任何指数运算的情况下通过元组Tuple1和Tuple2快速的生成关于消息明文M以及访问树Γ的密文CT,最后将密文CT上传至域内的SDN控制器;第六步:解密者向当前域的SDN控制器发送关于消息明文M的跨域访问请求,SDN控制器通过SDN域间传输交互获取密文CT,然后转发给解密者;第七步:解密者调用解密算法,输入私钥SK、自己的MAC地址AMAC以及获取的密文CT,如果解密者的属性集合S满足密文CT当中的访问树Γ,而且其MAC地址AMAC与私钥SK当中嵌入的MAC地址信息一致,才能获取消息明文M,反之则无法获取任何有用的信息。所述初始化算法的流程为:输入全局的属性集合Ω={att1,att2,att3,,attn}以及一个安全参数k,其中attj是本专利技术中的解密者的任意属性,j∈{1,2,...,n}是该属性的唯一索引号,假设加法循环群和乘法循环群是阶为大素数p的双线性群,其中大素数p的比特位数由参数k决定,令P是的一个生成元,是群到群的双线性映射,然后定义一个拉格朗日函数使得一个索引集合S当中的任意一个索引i满足定义两个哈希函数和H2:{0,1}48→Zp,其中H1将任意一串二进制数组映射为群中的元素,H1将48bit的MAC地址映射为Zp上的元素,选择两个随机数α,β∈Zp,最后生成公钥:PK={p,P,e,Ω,e(P,P)α,H=βP,T=(1β)P,H1,H2},同时保存主密钥:MSK={αP,β};预处理子算法输入公钥PK,根据公钥PK产生n个群和上的元素集合并存储在列表L当中,其中其中attj为全局属性集合Ω当中任意的属性,j表示该属性的唯一索引号,e表示从加法循环群映射到乘法循环群的双线性映射,P为的一个生成元,H1为哈希函数将任意一串二进制数组映射为群中的元素,α为主密钥MSK当中的一个元素,ri为一个随机的整数,其中i∈{1,2,...,n},然后基于拓展图技术产生一个常数c(ε),其中0<ε<1,利用常数c(ε)计算一个新的常数ne=c(ε)log2(p),其中p为群和的大素数阶,然后生成另外ne个群和上的元素集合并存储在列表L′当中,其中di为随机数,i∈{1,2,...,ne}。所述私钥生成算法的流程为:首先输入公钥PK、主密钥MSK、一个属性集合S以及一个MAC地址AMAC,其次选择一个随机数r∈Zp,然后计算D=((α+rH2(AMAC))β)P,对于任意一个属性attj∈S选择一个随机数rj∈Zp并计算Dj=(rP)·(rjH1(attj))和Dj′=rjP,最后输出关于属性集合S的私钥:所述预处理子算法和元组生成子算法共同组成预计算算法;变量定义:Y代表访问树Γ的叶节点集合,Ux代表子树Γx包含的属性的集合,Sx代表节点x的子节点集合,Sx′代表节点x的子节点索引集合,c(ε)代表ε拓展图常数;4.1预处理子算法:1)生成n个随机数r1,r2,,rn∈Zp;2)对于计本文档来自技高网...

【技术保护点】
1.一种抗密钥暴露属性加密的SDN跨域访问控制方法,其特征在于:基于属性权威、SDN控制器、加密者和解密者四部分构成的控制系统,属性权威和SDN控制器位于控制层,加密者和解密者位于数据层,属性权威是一个可信的权威机构,负责所有属性的认证以及公钥、私钥的发布;SDN控制器负责收集、存储和管理SDN流表、路由以及数据量信息,SDN采用多控制设置,将SDN划分为多个SDN域,每一个域内部署唯一的SDN控制器,每个SDN控制器管理各自域内的重要信息,同时负责与其他域的SDN控制器交互;加密者是数据的初始拥有者,包括路由器、服务器、PC机和交换机构成的用户或SDN设备,用户或SDN设备能够上传自己的数据并根据自己的意愿或需求自由制定相应的访问策略;解密者是试图获取SDN控制器内信息的用户或者设备,其身份用一个属性集合来表示,解密者拥有一个与其属性集合相对应的私钥,并通过私钥来解密密文,解密者包括路由器、loT传感器、手机和交换机;包括以下步骤:第一步:启动访问控制系统,属性权威调用初始化算法,输入一个安全参数k,生成公钥PK和主密钥MSK,公钥PK向全网公开,主密钥MSK由属性权威秘密保存;第二步:解密者向属性权威发起私钥生成请求,输入自己唯一的MAC地址AMAC、属性集合S、公钥PK以及主密钥MSK,获得属性权威验证,属性权威调用私钥生成算法生成私钥SK,并将解密者的属性集合S和MAC地址AMAC嵌入到私钥SK当中,最终输出与解密者MAC地址以及属性集合相对应的私钥SK;第三步:属性权调用预计算算法中的预处理子算法,预处理子算法输入公钥PK,根据公钥PK产生n个群...

【技术特征摘要】
1.一种抗密钥暴露属性加密的SDN跨域访问控制方法,其特征在于:基于属性权威、SDN控制器、加密者和解密者四部分构成的控制系统,属性权威和SDN控制器位于控制层,加密者和解密者位于数据层,属性权威是一个可信的权威机构,负责所有属性的认证以及公钥、私钥的发布;SDN控制器负责收集、存储和管理SDN流表、路由以及数据量信息,SDN采用多控制设置,将SDN划分为多个SDN域,每一个域内部署唯一的SDN控制器,每个SDN控制器管理各自域内的重要信息,同时负责与其他域的SDN控制器交互;加密者是数据的初始拥有者,包括路由器、服务器、PC机和交换机构成的用户或SDN设备,用户或SDN设备能够上传自己的数据并根据自己的意愿或需求自由制定相应的访问策略;解密者是试图获取SDN控制器内信息的用户或者设备,其身份用一个属性集合来表示,解密者拥有一个与其属性集合相对应的私钥,并通过私钥来解密密文,解密者包括路由器、loT传感器、手机和交换机;包括以下步骤:第一步:启动访问控制系统,属性权威调用初始化算法,输入一个安全参数k,生成公钥PK和主密钥MSK,公钥PK向全网公开,主密钥MSK由属性权威秘密保存;第二步:解密者向属性权威发起私钥生成请求,输入自己唯一的MAC地址AMAC、属性集合S、公钥PK以及主密钥MSK,获得属性权威验证,属性权威调用私钥生成算法生成私钥SK,并将解密者的属性集合S和MAC地址AMAC嵌入到私钥SK当中,最终输出与解密者MAC地址以及属性集合相对应的私钥SK;第三步:属性权调用预计算算法中的预处理子算法,预处理子算法输入公钥PK,根据公钥PK产生n个群和上的元素集合并存储在列表L当中,其中attj为全局属性集合Ω当中任意的属性,j表示该属性的唯一索引号,e表示从加法循环群映射到乘法循环群的双线性映射,P为的一个生成元,H1为哈希函数将任意一串二进制数组映射为群中的元素,α为主密钥MSK当中的一个元素,ri为一个随机的整数,其中i∈{1,2,...,n},然后基于拓展图技术产生一个常数c(ε),其中0<ε<1,利用常数c(ε)计算一个新的常数ne=c(ε)log2(p),其中p为群和的大素数阶,然后生成另外ne个群和上的元素集合并存储在列表L′当中,其中di为随机数,i∈{1,2,...,ne};第四步:加密者产生一组消息明文M,同时制定了相应的访问树Γ,调用预计算算法中的元组生成子算法生成与访问树Γ相对应的两个元组Tuple1和Tuple2;第五步:加密者调用快速加密算法,输入一个访问树Γ、公钥PK以及消息明文M,然后调用预处理子算法,在不执行任何指数运算的情况下通过元组Tuple1和Tuple2快速的生成关于消息明文M以及访问树Γ的密文CT,最后将密文CT上传至域内的SDN控制器;第六步:解密者向当前域的SDN控制器发送关于消息明文M的跨域访问请求,SDN控制器通过SDN域间传输交互获取密文CT,然后转发给解密者;第七步:解密者调用解密算法,输入私钥SK、自己的MAC地址AMAC以及获取的密文CT,如果解密者的属性集合S满足密文CT当中的访问树Γ,而且其MAC地址AMAC与私钥SK当中嵌入的MAC地址信息一致,才能获取消息明文M,反之则无法获取任何有用的信息。2.根据权利要求1所述的抗密钥暴露属性加密的SDN跨域访问控制方法,其特征在于:所述初始化算法的流程为:输入全局的属性集合Ω={att1,att2,att3,…,attn}以及一个安全参数k,其中attj是本发明中的解密者的任意属性,j∈{1,2,...,n}是该属性的唯一索引号,假设加法循环群和乘法循环群是阶为大素数p的双线性群,其中大素数p的比特位数由参数k决定,令P是的一个生成元,是群到群的双线性映射,然后定义一个拉格朗日函数使得一个索引集合S当中的任意一个索引i满足定义两个哈希函数和H2:{0,1}48→Zp,其中H1将任意一串二进制数组映射为群中的元素,H1将48bit的MAC地址映射为Zp上的元素,选择两个随机数α,β∈Zp,最后生成公钥:PK={p,P,e,Ω,e(P,P)α,H=βP,T=(1/β)P,H1,H2},同时保存主密钥:MSK={αP,β};预处理子算法输入公钥PK,根据公钥PK产生n个群和上的元素集合并存储在列表L当中,其中其中attj为全局属性集合Ω当中任意的属性,j表示该属性的唯一索引号,e表示从加法循环群映射到乘法循环群的双线性映射,P为的一个生成元,H1为哈希函数将任意一串二进制数组映射为群中的元素,α为主密钥MSK当中的一个元素,ri为一个随机的整数,其中i∈{1,2,...,n},然后基于拓展图技术产生一个常数c(ε),其中0<ε<1,利用常数c(ε)计算一个新的常数ne=c(ε)log2(p),其中p为群和的大素数阶,然后生成另外ne个群和上的元素集合并存储在列表L′当中,其中di为随机数,i∈{1,2,...,ne}。3.根据权利要求1所述的抗密钥暴露属性加密的SDN...

【专利技术属性】
技术研发人员:周波顾振飞张帅华
申请(专利权)人:南京信息职业技术学院
类型:发明
国别省市:江苏,32

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

1