掌桥专利:专业的专利平台
掌桥专利
首页

一种基于可信执行环境与属性密码的数据访问控制方法

文献发布时间:2024-04-18 19:59:31


一种基于可信执行环境与属性密码的数据访问控制方法

技术领域

本发明属于访问控制技术领域,特别是涉及一种基于可信执行环境与属性密码的数据访问控制方法。

背景技术

云计算已经成为企业和个人数据存储和处理的首选方式。然而,在云环境中,现有的数据共享方案主要采用访问控制列表(ACL)或基于角色的访问控制(RBAC)等传统方法,这些方法存在着严重的限制。云环境中的数据共享面临的主要挑战包括:

数据隐私,在传统共享模型下,数据的终端用户可能无法完全控制他们的数据。云服务提供商往往可以访问数据,这引发了隐私和安全的顾虑。

访问策略复杂性,随着数据访问策略的复杂性增加,传统的访问控制方法很难满足用户需求。

Ciphertext-Policy Attribute-Based Encryption(CPABE)技术是一种先进的加密技术,它允许数据拥有者为其数据定义复杂的访问策略,这些策略基于用户的属性。CPABE允许数据拥有者加密数据,并指定访问策略,而数据的解密要求用户具备特定的属性集合,符合访问策略。这为数据的细粒度访问控制提供了可能。现有的数据共享解决方案使用CPABE来提供更灵活的访问控制。然而,这些方案仍然存在一些局限性:

信任问题:在传统的CPABE系统中,用户需要信任云服务提供商来正确实施访问策略。

用户共谋:在传统的CPABE系统中,多个用户联合起来以欺骗、绕过或滥用系统,以获取未经授权的访问权限或解密受保护的数据。

密钥管理问题:在传统的CPABE系统中,需要有效的密钥管理来维护访问控制,但现有方案可能存在密钥泄漏或不当管理的风险。

发明内容

为了解决背景技术中存在的问题,本发明提供一种基于可信执行环境与属性密码的数据访问控制方法,包括:

S1:在TEE中利用密钥生成算法生成系统的主公钥Pub和主密钥MSK,并将系统的主公钥Pub上传至联盟链进行公开;

S2:联盟链的证书机构在用户加入或退出联盟链的某个组织时,更新用户的身份证书,并上传至TEE;

S3:在TEE中根据用户的身份证书、系统的主公钥Pub和主密钥MSK利用CPABE的密钥生成算法生成用户的解密密钥UK,并通过安全信道发送至用户;

S4:用户设置访问控制策略,并利用CPABE的加密算法对数据明文进行加密生成密文CT,将密文CT上传至云服务器;

S5:联盟链响应于访问者发起的数据访问请求,通过链码将访问者的身份证书发送至TEE,同时将访问者的访问数据索引发送至云服务器;

S6:云服务器响应于访问者的访问数据索引,将对应的数据密文CT发送到TEE;

S7:在TEE中根据访问者的身份证书判断是否满足数据密文CT对应的访问控制策略,若是则将数据密文CT发送给访问者,反之则请求结束。

本发明的另一方面提供一种基于可信执行环境与属性密码的数据访问控制系统,所述系统应用于所述的一种基于可信执行环境与属性密码的数据访问控制方法,包括:

模块1:在TEE中利用密钥生成算法生成系统的主公钥Pub和主密钥MSK,并将系统的主公钥Pub上传至联盟链进行公开;

模块2:控制联盟链的证书机构在用户加入或退出联盟链的某个组织时,更新用户的身份证书,并上传至TEE;

模块3:在TEE中根据用户的身份证书、系统的主公钥Pub和主密钥MSK利用CPABE的密钥生成算法生成用户的解密密钥UK,并通过安全信道发送至用户;

模块4:用于用户设置访问控制策略,并利用CPABE的加密算法对数据明文进行加密生成密文CT,将密文CT上传至云服务器;

模块5:控制联盟链响应于访问者发起的数据访问请求,将访问者的身份证书发送至TEE,同时将访问者的访问数据索引发送至云服务器;

模块6:控制云服务器响应于访问者的访问数据索引,将对应的数据密文CT发送到TEE;

模块7:在TEE中根据访问者的身份证书判断是否满足数据密文CT对应的访问控制策略,若是则将数据密文CT发送给访问者,反之则请求结束。

本发明的再一方面提供一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。

本发明至少具有以下有益效果

在本方案中数据均在本地采取合适的访问策略加密上传至云端,云服务提供商无法获取数据明文。在本方案中采取了基于TEE和联盟链改进的CPABE方案,实现了数据的细粒度访问。解决信任问题:在现有的CPABE模型中,用户需要信任云服务提供商来正确实施访问策略。在本方案中由TEE来判断数据请求者的属性是否符合所请求密文的访问策略。用户共谋风险:在传统的CPABE方案中,多个用户联合起来以欺骗、绕过或滥用系统,以获取未经授权的访问权限或解密受保护的数据。本方案中使用联盟链中的证书机构来为用户颁发身份证书。用户通过链码来发起请求,杜绝了用户共谋问题。解决密钥管理问题:CPABE方案需要有效的密钥管理来维护访问控制。本方案中使用TEE来生成系统公钥和主私钥以及用户密钥。TEE中封存主私钥,然后将公钥公布至联盟链中,并通过TEE的远程认证建立的安全通道将用户密钥发送给用户。利用用户加入或退出fabric组织时,CA更新身份证书来实现属性动态撤销,提高系统的安全性。

附图说明

图1为本发明的方法流程示意图。

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。

本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。

本发明实施例中TEE采取Intel Software Guard Extensions(SGX)技术,SGX是英特尔公司开发的硬件安全技术,在SGX中TEE这一区域通常被称为Enclave。联盟链采取Hyperledger Fabric,它是一个面向企业级应用程序开发的开源区块链平台。

请参阅图1,本发明提供一种基于可信执行环境与属性密码的数据访问控制方法,包括:

S1:在TEE中利用密钥生成算法生成系统的主公钥Pub和主密钥MSK,并将系统的主公钥Pub上传至联盟链进行公开;

S2:联盟链的证书机构在用户加入或退出联盟链的某个组织时,更新用户的身份证书,并上传至TEE;

S3:在TEE中根据用户的身份证书、系统的主公钥Pub和主密钥MSK利用CPABE的密钥生成算法生成用户的解密密钥UK,并通过安全信道发送至用户;

S4:用户设置访问控制策略,并利用CPABE的加密算法对数据明文进行加密生成密文CT,将密文CT上传至云服务器;

S5:联盟链响应于访问者发起的数据访问请求,通过链码将访问者的身份证书发送至TEE,同时将访问者的访问数据索引发送至云服务器;

S6:云服务器响应于访问者的访问数据索引,将对应的数据密文CT发送到TEE;

S7:在TEE中根据访问者的身份证书判断是否满足数据密文CT对应的访问控制策略,若是则将数据密文CT发送给访问者,反之则请求结束。

优选地,所述利用密钥生成算法生成系统的主公钥Pub和主密钥MSK包括:

随机初始化椭圆曲线群G1和G2,G1的生成元为g1,G2的生成元为g2;利用随机数生成器生成随机数α和β;运行密钥生成算法生成系统的主公钥Pub和主密钥MSK:

Pub={g1,g2,e(g1,g2)

MSK={g1

其中,e(g1,g2)表示双线性配对。

优选地,所述用户的身份证书包括:

P={Version,Serial,SigAlg,Issuer,Validity,

Subject{attributes[“A

其中,P表示用户的身份证书,Version表示证书的版本号,Serial表示证书的序列号,SigAlg表示签名算法标识符,Issuer表示证书颁发者的名称,Validity表示证书的有效期,Subject表示用户的名称,attributes表示用户的属性数组,A

优选地,若满足数据密文CT对应的访问控制策略,则访问者根据解密密钥UK利用CP-ABE的解密算法对数据密文CT进行解密,获得数据明文;反之,返回错误信息。

本发明的另一方面提供一种基于可信执行环境与属性密码的数据访问控制系统,所述系统应用于所述的一种基于可信执行环境与属性密码的数据访问控制方法,包括:

模块1:在TEE中利用密钥生成算法生成系统的主公钥Pub和主密钥MSK,并将系统的主公钥Pub上传至联盟链进行公开;

模块2:控制联盟链的证书机构在用户加入或退出联盟链的某个组织时,更新用户的身份证书,并上传至TEE;

模块3:在TEE中根据用户的身份证书、系统的主公钥Pub和主密钥MSK利用CPABE的密钥生成算法生成用户的解密密钥UK,并通过安全信道发送至用户;

模块4:用于用户设置访问控制策略,并利用CPABE的加密算法对数据明文进行加密生成密文CT,将密文CT上传至云服务器;

模块5:控制联盟链响应于访问者发起的数据访问请求,将访问者的身份证书发送至TEE,同时将访问者的访问数据索引发送至云服务器;

模块6:控制云服务器响应于访问者的访问数据索引,将对应的数据密文CT发送到TEE;

模块7:在TEE中根据访问者的身份证书判断是否满足数据密文CT对应的访问控制策略,若是则将数据密文CT发送给访问者,反之则请求结束。

在本实施例中根据访问者的身份证书判断是否满足数据密文CT对应的访问控制策略包括:通过密文CT中的访问控制策略和访问者的身份证书中所拥有的属性进行对比,判断访问者是否满足访问权限。

本发明的再一方面提供一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

相关技术
  • 一种设有气囊的鲟科鱼繁育设备
  • 一种设有气囊的鲟科鱼繁育装置
技术分类

06120116522532