云存储系统与数据读写方法技术方案

技术编号:39750787 阅读:8 留言:0更新日期:2023-12-17 23:48
本申请实施例提供一种云存储系统与数据读写方法

【技术实现步骤摘要】
云存储系统与数据读写方法、设备及存储介质


[0001]本申请涉及云存储
,尤其涉及一种云存储系统与数据读写方法

设备及存储介质


技术介绍

[0002]随着用户数据的爆发性增长,云上各种分布式存储系统,例如块存储

文件系统

对象存储

表格存储

数据库等承接了用户越来越多的数据,而支持用户数据加密是保护用户数据安全性常用的手段

[0003]云存储系统较为常用的加解密方案是:存储系统的接入层负责管理用户密钥,并在用户写入数据时,根据用户密钥对数据进行加密后进行持久化存储;在用户读取数据时,从持久化存储介质中读取加密数据,根据用户密钥对加密数据进行解密后提供给用户

[0004]现有云存储系统采用的加解密方案设计实现难度较大,在需要更新用户密钥进行安全升级时,需要对加密数据进行解密再重新加密,成本高,且灵活性和可扩展性较差


技术实现思路

[0005]本申请的多个方面提供一种云存储系统与数据读写方法

设备及存储介质,用以提高云存储系统的灵活性和可扩展性,降低云存储系统的加密成本

[0006]本申请实施例提供一种云存储系统,包括:用户交互层

存储持久化层以及位于用户交互层和存储持久化层之间的至少一个存储服务层;用户交互层包括密钥管理节点,用于管理用户主密钥,并向与其相邻的存储服务层提供用户主密钥;存储服务层包括存储服务节点,用于生成本层存储服务密钥,并在数据读写过程中,根据上一层提供的密钥对本层存储服务密钥进行加解密,以及将本层存储服务密钥提供给下一层,以供下一层对其密钥进行加解密;存储持久化层包括存储持久化节点,用于生成数据加密密钥,并在数据读写过程中,根据与其相邻的存储服务层提供的存储服务密钥对数据加密密钥进行加解密,以及根据数据加密密钥对用户数据进行加解密

[0007]本申请实施例还提供一种云存储系统,包括:用户交互层和存储持久化层;用户交互层包括密钥管理节点,用于管理用户主密钥,并向存储持久化层提供用户主密钥;存储持久化层包括存储持久化节点,用于生成数据加密密钥,并在数据读写过程中,根据数据加密密钥对用户数据进行加解密,以及根据用户主密钥对数据加密密钥进行加解密

[0008]本申请实施例还提供一种数据读写方法,适用于云存储系统中的用户交互层中的密钥管理节点,该方法包括:管理用户主密钥;向云存储系统中与用户交互层相邻的存储服务层提供用户主密钥,以供与用户交互层相邻的存储服务层和存储持久化层相互配合实现对用户数据的加解密处理

[0009]本申请实施例还提供一种数据读写方法,适用于云存储系统中的至少一个存储服务层中的存储服务节点,该方法包括:生成本层存储服务密钥,并在数据读写过程中根据上一层提供的密钥对本层存储服务密钥进行加解密处理,本层存储服务密钥是该存储服务节
点所属目标存储服务层的存储服务密钥,上一层提供的密钥为用户主密钥或为目标存储服务层的上一层的存储服务密钥;将本层存储服务密钥提供给下一层,下一层实现为与目标存储服务层相邻的下一层存储服务层或者云存储系统中的存储持久化层

[0010]本申请实施例还提供一种数据读写方法,适用于云存储系统中的存储持久化层中的存储持久化节点,该方法包括:接收云存储系统中与存储持久化层相邻的存储服务层提供的存储服务密钥;生成数据加密密钥,并在数据读写过程中根据数据加密密钥对用户数据进行加解密处理,以及根据与其相邻的存储服务层提供的存储服务密钥对数据加密密钥进行加解密处理

[0011]本申请实施例还提供一种数据读写方法,适用于云存储系统中的存储持久化节点,该方法包括:接收云存储系统中的用户交互层中的密钥管理节点提供的用户主密钥;生成数据加密密钥,并在数据读写过程中,根据数据加密密钥对用户数据进行加解密,以及根据用户主密钥对数据加密密钥进行加解密

[0012]本申请实施例还提供一种电子设备,包括:存储器和处理器;存储器,用于存储计算机程序;处理器,与存储器耦合,用于执行计算机程序,以实现本申请实施例提供的数据读写方法中的各步骤

[0013]本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,致使处理器实现本申请实施例提供的数据读写方法中的各步骤

[0014]在本申请实施例中,提供一种针对云存储的通用分层加密方案,能够统一满足数据加解密和密钥管理的需求,通过对云存储系统进行分层来协同和统一数据加解密和密钥管理的过程,在用户交互层和存储服务层采用用户主密钥和存储服务密钥相互配合进行密钥管理,在存储服务层和存储持久化层采用存储服务密钥和数据加密密钥相互配合控制数据加解密的过程,将密钥管理和数据加解密功能解耦,提高灵活性和可扩展性

进一步,存储服务层既可以直接复用数据持久层提供的加密能力,无需在每层对数据作多次加密,节省加密成本

附图说明
[0015]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定

在附图中:图1为本申请示例性实施例提供的一种云存储系统的结构示意图;图2为本申请示例性实施例提供的一种写数据的交互流程示意图;图3为本申请示例性实施例提供的一种读数据的交互流程示意图;图4为本申请示例性实施例提供的另一种云存储系统的结构示意图;图
5a


5d
为本申请示例性实施例提供的数据读写方法的流程示意图;图
6a


6c
为本申请示例性实施例提供的数据读写装置的结构示意图;图7为本申请示例性实施例提供的一种电子设备的结构示意图

具体实施方式
[0016]为使本申请的目的

技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚

完整地描述

显然,所描述的实施例仅是本申请一
部分实施例,而不是全部的实施例

基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围

[0017]需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息

用户个人信息等)和数据(包括但不限于用于分析的数据

存储的数据

展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集

使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种云存储系统,其特征在于,包括:用户交互层

存储持久化层以及位于所述用户交互层和所述存储持久化层之间的至少一个存储服务层;所述用户交互层包括密钥管理节点,所述密钥管理节点用于管理用户主密钥,并向与其相邻的存储服务层提供所述用户主密钥;所述存储服务层包括存储服务节点,所述存储服务节点用于生成本层存储服务密钥,并在数据读写过程中,根据上一层提供的密钥对本层存储服务密钥进行加解密,以及将本层存储服务密钥提供给下一层,以供下一层对其密钥进行加解密;所述存储持久化层包括存储持久化节点,所述存储持久化节点用于生成数据加密密钥,并在数据读写过程中,根据与其相邻的存储服务层提供的存储服务密钥对所述数据加密密钥进行加解密,以及根据所述数据加密密钥对用户数据进行加解密
。2.
根据权利要求1所述的系统,其特征在于,所述存储服务层中的存储服务节点具体用于:在用户写入第一数据时,生成本层存储服务密钥,根据上一层提供的密钥对本层存储服务密钥进行加密,以得到本层存储服务密钥的密文并保存;以及将所述第一数据和本层存储服务密钥发送给与其相邻的下一存储服务层或存储持久化层,以供与其相邻的下一存储服务层或存储持久化层继续对所述第一数据进行写入处理;所述存储持久化层中的存储持久化节点具体用于:在用户写入第一数据时,生成数据加密密钥,根据所述数据加密密钥对所述第一数据进行加密,以得到数据密文并持久化存储;以及根据与其相邻的存储服务层提供的存储服务密钥,对所述数据加密密钥进行加密,以得到所述数据加密密钥的密文并持久化存储
。3.
根据权利要求2所述的系统,其特征在于,所述存储服务层中的存储服务节点具体用于:在用户读取第二数据时,根据上一层提供的密钥对本层存储服务密钥的密文进行解密,得到本层存储服务密钥;将所述第二数据的标识信息和本层存储服务密钥发送给与其相邻的下一存储服务层或存储持久化层,以供与其相邻的下一存储服务层或存储持久化层对所述第二数据进行读取处理;以及接收与其相邻的下一层存储服务层或存储持久化层返回的所述第二数据,并将所述第二数据返回给与其相邻的上一存储服务层或所述用户的计算节点;所述存储持久化层中的存储持久化节点具体用于:在用户读取第二数据时,根据与其相邻的存储服务层提供的存储服务密钥对所述数据加密密钥的密文进行解密,以得到数据加密密钥;根据所述数据加密密钥对所述第二数据的数据密文进行解密,以得到所述第二数据,并将所述第二数据发送给与其相邻的存储服务层
。4.
根据权利要求1‑3任一项所述的系统,其特征在于,与所述用户交互层相邻的存储服务层中的存储服务节点还用于:在所述用户主密钥发生变化的情况下,使用变化前的用户主密钥对加密后的本层存储服务密钥进行解密以得到本层存储服务密钥;以及使用变化后的用户主密钥对本层存储服务密钥重新进行加密;和
/
或所述存储持久化层中的存储持久化节点还用于:更新数据加密密钥,使用更新前的数据加密密钥解密出用户数据,并使用更新后的数据加密密钥重新对用户数据进行加密;以及根据与其相邻的存储服务层提供的存储服务密钥,对更新后的数据加密密钥进行加密,并替换更新前的数据加密密钥的加密结果

5.
一种云存储系统,其特征在于,包括:用户交互层和存储持久化层;所述用户交互层包括密钥管理节点,用于管理用户主密钥,并向所述存储持久化层提供所述用户主密钥;所述存储持久化层包括存储持久化节点,用于生成数据加密密钥,并在数据读写过程中,根据所述数据加密密钥对用户数据进行加解密,以及根据所述用户主密钥对所述数据加密密钥进行加解密
。6.
一种数据读写方法,其特征在于,适用于云存储系统中的至少一个存储服务层中的存储服务节点,所述方法包括:生成本层存储服务密钥,并在数据读写过程中根据上一层提供的密钥对本层存储服务密钥进行加解密处理,所述本层存储服务密钥是所述存储服务节点所属目标存储服务层的存储服务密钥,所述上一层提供的密钥为用户主密钥或为所述目标存储服务层的上一层的存储服务密钥;将本层存储服务密钥提供给下一层,所述下一层实现为与所述目标存储服务层相邻的下一层存储服务层或者云存储系统中的存储持久化层
。7.
根据权利要求6所述的方法,其特征在于,生成本层存储服务密钥,在数据写过程中,根据上一层提供的密钥对本层存储服务密钥进行加解密处理,包括:在用户写入第一数据时,生成本层存储服务密钥,并接收上一层提供的密钥,所述上一层实现为云存储系统中的用户交互层,或者实现为与所述目标存储服务层相邻的上一层存储服务层;根据上一层提供的密钥对本层存储服务密钥进行加密并保存加密得到的本层存储服务密钥的密文,以及将所述第一数据和本层存储服务密钥发送给下一层
。8.
根据权利要求7所述的方法,其特征在于,在数据读过程中,根据上一层提供的密钥对本层存储服务密钥进行加解密处理,包括:在用户读取第二数据时,获取上一层提供的密钥;根据上一层提供的密钥对本层存储服务密钥的密文进行解密,得到本层存储服务密钥;将所述第二数据的标识信息和本层存储服务密钥发送给下一层;以及接收其相邻的下一层存储服务层或存储持久化层返回的所述第二数据并发送给上一层
。9.
根据权利要求8所述的方法,其特征在于,生成本层存储服务密钥,包括:在接收到待存储数据时,将所述待存储数据划分为至少一个数据分片;为所述至少一个数据分片生成至少一个本层存储服务密钥;其中,所述待存储数据为所述第一数据或者为上一层存储服务层发送的数据分片;根据上一层提供的密钥对本层存储服务密钥进行加密并保存加密得到的本层存储服务密钥的密文,包括:根据上一层提供的与所述待存储数据对应的密钥,对所述至少一个本层存储服务密钥分别进行加密并保存至少一个本层存储服务密钥的密文,以及建立所述待存储数据对应的密钥

所述至少一个数据分片的标识以及所述至少一个本层存储服务密钥的密文之间的第一对应关系;
将所述第一数据和本层存储服务密钥发送给下一层,包括:将所述至少一个数据分片

所述至少一个本层存储服务密钥以及所述至少一个数据分片与所述至少一个本层存储服务密钥之间的第二对应关系发送给下一层
。10.
根据权利要求9所述的方法,其特征在于,根据上一层提供的密钥对本层存储服务密钥的密文进行解密,得到本层存储服务密钥,包括:根据所述上一层提供的密钥,查询所述第一对应关系,以...

【专利技术属性】
技术研发人员:朱家稷
申请(专利权)人:阿里云计算有限公司
类型:发明
国别省市:

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

1