一种分布式加密存储装置、系统及加解密方法与流程

文档序号:20702626发布日期:2020-05-12 15:56阅读:248来源:国知局
一种分布式加密存储装置、系统及加解密方法与流程

本发明涉及计算机技术与信息安全及分布式技术领域,尤其是一种分布式加密存储装置、系统及加解密方法。



背景技术:

近年来,随着互联网技术、数字化技术的快速发展,以云计算、人工智能、5g网络为代表的新一代信息技术正驱动着数字经济的飞速发展,对海量高清数据存储的需求量巨大。但是随着越来越多的海量数据信息的产生,这些海量数据可能包含企业的商业机密、个人的隐私信息等重要的机密信息,若这些海量数据信息在存储时发生泄露事件的话,将会为企业和个人造成不可估量的损失。各行业、部门也陆续提出了针对亿级海量数据信息分布式安全存储的需求,目的是保证海量数据信息不被非法窃取和篡改。

为满足呈爆炸式增长的海量数据的安全存储的要求,当前海量数据信息存储主要采用以下几种方式处理:(1)要求用户将海量数据信息集中存储在单个计算机中,实现用户海量数据的集中式存储;(2)要求用户利用数据加解密算法对存储的海量数据进行加解密操作,并对加密时使用的密钥进行管理,完成海量数据信息的加密存储;等等。由此可见,当前海量数据信息安全存储存在如下缺陷:(1)有的方式,利用集中式存储方式对海量数据信息进行存储,但是因海量数据都集中存储在大型主机上,一旦主机出现故障,那么整个系统中存储的数据将不再安全,海量数据信息将全部暴露;(2)有的方式,无法确保存储的海量数据信息的机密性;(3)有的方式,利用国际加密方式对海量数据进行加密操作,保证数据存储的安全性,但是没有考虑加密算法国产化的情况,当国际算法被破译时,利用算法加密的海量数据信息将不再安全;(4)有的方式,在数据存储过程中使用加密算法对海量数据信息进行加密操作,并安全存储,但是用户需要持有加密使用的密钥信息,一旦攻破持有的密钥信息,存储的海量数据信息将不再安全;(5)上述方式,在实际使用中均存在着海量数据信息泄露隐患,无法对用户海量数据信息进行有效的保护。



技术实现要素:

鉴于上述的分析,本发明旨在提供一种分布式加密存储装置、系统及加解密方法,避免集中存储时造成的单点故障,同时又能够有效保障海量数据信息加密存储的安全。

本发明的目的主要是通过以下技术方案实现的:

本发明公开了一种分布式加密存储装置,其特征在于,包括密钥管理单元和至少一个数据加解密单元;

当进行数据加密时,所述数据加解密单元用于向所述密钥管理单元发送待加密数据的数据标识;所述密钥管理单元生成与所述数据标识对应的第一密钥,并对第一密钥加密得到第二密钥;所述密钥管理单元集中保存数据标识与第二密钥的对应关系,将所述第二密钥分别发送到对应的所述数据加解密单元;所述数据加解密单元存储所述第二密钥,并将所述第二密钥发回所述密钥管理单元进行解密得到第一密钥;所述数据加解密单元采用第一密钥对待加密数据进行加密;

当对加密数据进行解密读取时,所述数据加解密单元将存储的与加密数据的数据标识对应的第二密钥发送到所述密钥管理单元进行解密后得到所需的第一密钥;采用第一密钥对数据进行解密。

进一步地,所述密钥管理单元包括密钥分发单元、密钥加密管理单元、密钥库;

所述密钥分发单元,用于建立所述加解密单元与所述密钥加密管理单元之间的密钥信息互传信道;生成与所述加解密单元发送的要加密的数据标识对应的第一密钥;

所述密钥加密管理单元,用于从所述密钥库中获取公私钥对,缓存私钥,采用公钥对第一密钥进行加密得到第二密钥,通过所述密钥分发单元将第二密钥发送到所述加解密单元;

所述密钥库用于存储公私钥对。

进一步地,所述密钥分发单元,还用于将接收到的所述加解密单元发来的第二密钥,转发给所述密钥加密管理单元;

所述密钥加密管理单元,还用于采用缓存的与第二密钥相对的私钥对第二密钥进行解密得到第一密钥;再经所述密钥分发单元将所述第一密钥转发到数据加解密单元。

进一步地,密钥分发单元包括密钥生成模块、第一索引模块和分发模块;

所述密钥生成模块,用于生成与所述数据标识对应的第一密钥;

分发模块,用于建立所述加解密单元与所述密钥加密管理单元间的密钥信息互传信道,进行密钥的分发或转发;

第一索引模块,用于建立并存储所述第二密钥和数据标识的映射关系。

进一步地,所述分发模块建立的互传信道包括加密信道和普通信道;

所述加密信道,包括在密钥分发单元和密钥加密管理单元之间用于传输第一密钥的信道,从密钥分发单元向数据加解密单元转发第一密钥的信道。

进一步地,所述密钥加密管理单元包括密钥加解密模块、密钥缓存区及第二索引模块;

所述密钥加解密模块,用于获取公私钥对,采用非对称加密算法对第一密钥进行加/解密操作;

所述密钥缓存区,用于缓存非对称加密算法中使用的私钥;

第二索引模块,用于建立第一密钥、加密第一密钥的公私钥对、及所述公私钥对在密钥库内的存储位置之间的映射关系。

进一步地,所述密钥库包括两个用于存储公私钥对的密钥存储模块,采用双机热备的冗余机制。

进一步地,所述数据加解密单元包括密钥存储模块和加解密模块;

加解密模块,用于运用对称加密算法,使用所述第一密钥,对写入或读出的数据进行加、解密操作;

密钥存储模块,用于存储所述第二密钥,当加解密模块执行加/解密操作时,密钥存储模块为加解密模块提供相应的解密后的第一密钥。

本发明还公开了一种分布式加密存储系统,包括客户端、管理设备和存储设备,在所述管理设备中包括如权利要求1-8任一所述的分布式加密存储装置的密钥管理单元;在所述存储设备中包括如权利要求1-8任一所述的分布式加密存储装置的数据加解密单元。

本发明还公开了一种分布式加密存储的加解密方法,其特征在于,包括以下步骤:

数据加密步骤:数据加解密单元发送要加密数据的数据标识到密钥分发单元;所述密钥分发单元生成与数据标识对应的第一密钥,发送给密钥加密管理单元进行加密得到第二密钥;再通过密钥分发单元将第二密钥分发到数据加解密单元进行存储;数据加解密单元将存储的所述第二密钥通过密钥分发单元再转发到密钥加密管理单元进行解密得到对应的第一密钥;所述第一密钥通过密钥分发单元转发至数据加密单元,进行数据加密;

数据解密步骤:数据加解密单元向密钥分发单元发送密钥请求,寻找加密数据对应的密钥;密钥分发单元通过索引检索到相应的密钥存储位置后发送至数据加解密单元;数据加解密单元根据所述位置信息从密钥存储模块模块中提取对应的第二密钥,经密钥分发单元转发至密钥加密管理单元进行解密得到第一密钥;所述第一密钥通过密钥分发单元转发至数据加密单元,进行数据解密。

本发明有益效果如下:

本发明结合密码学和分布式存储,以保护呈爆炸式增长的海量数据信息为目的,提供了对用户透明的分布式加密存储方法,着重解决亿级海量数据信息集中存储时造成的泄露隐患以及明文存储造成的窃取攻击等问题,实现了亿级数据的分布式安全加密存储,有效保护了用户海量数据信息的安全。

在本发明中采用分布存储、集中索引的存储结构,保证海量数据信息分布存储在不同的存储设备,有效抵制单点故障;用户无需对加密算法中的密钥进行管理,整个加解密过程中对用户来说是透明的。通过密钥管理单元生成、分发、管理密钥。

而且可以基于“自主可控”原则,立足于国产密码算法,采用国密算法中sm4算法对写入磁盘中的数据进行加密,并利用sm2算法对sm4算法的密钥进行加密,从而保证了数据及密钥存储的安全性。

附图说明

附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。

图1为本发明实施例一中的分布式加密存储装置原理示意图;

图2为本发明实施例二中的分布式加密存储系统原理示意图;

图3为本发明实施例三中的分布式加密方法流程图;

图4为本发明实施例三中的分布式解密方法流程图。

具体实施方式

下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。

实施例一

本实施例公开了一种分布式加密存储装置,如图1所示,

包括密钥管理单元和至少一个数据加解密单元;

所述密钥管理单元与每个数据加解密单元分别建立通信连接,用于进行双向信息互传,实现数据的加密或解密操作;

当进行数据加密时,所述数据加解密单元分别向所述密钥管理单元发送要加密数据的数据标识;所述密钥管理单元生成与所述数据标识对应的第一密钥,并对第一密钥加密得到第二密钥;所述密钥管理单元集中保存数据标识与第二密钥的对应关系,将所述第二密钥分别发送到对应的所述数据加解密单元;所述数据加解密单元存储所述第二密钥,并将所述第二密钥发回所述密钥管理单元进行解密得到第一密钥;所述数据加解密单元采用第一密钥对要加密数据进行加密;

当对加密数据进行解密时,所述数据加解密单元将存储的与加密数据的数据标识对应的第二密钥发送到所述密钥管理单元进行解密后得到所需的第一密钥;采用第一密钥对数据进行解密。

数据加解密单元设置才存储器中,当数据加解密单元为多个时,可采用分布式结构对分布式存储在多个存储器中的数据进行加/解密。在分布式结构中,通过对用于数据加/解密的第一密钥进行加密得到的第二密钥进行分布式存储在对应的数据加解密单元中,在密钥管理单元中集中保存密钥索引关系,确保了密钥的安全性,从而保证了加/解密的可靠性。

具体的,所述密钥管理单元包括密钥分发单元、密钥加密管理单元、密钥库;

所述密钥分发单元,用于建立所述加解密单元与所述密钥加密管理单元之间的密钥信息互传信道;生成与所述加解密单元发送的要加密的数据标识对应的第一密钥;

所述密钥加密管理单元,用于从所述密钥库中获取公私钥对,缓存私钥,采用公钥对第一密钥进行加密得到第二密钥,通过所述密钥分发单元将第二密钥发送到所述加解密单元;

所述密钥库用于存储公私钥对。

进一步地,数据加/解密时,所述密钥分发单元接收到所述数据加解密单元发送的要用于数据加/解密的第二密钥,转发给所述密钥加密管理单元;

所述密钥加密管理单元,采用缓存的与第二密钥相对的私钥对第二密钥进行解密得到第一密钥;再经所述密钥分发单元转发到数据加解密单元进行数据加/解密。

更具体的,密钥分发单元包括密钥生成模块、第一索引模块和分发模块;

所述密钥生成模块,用于生成与所述数据标识对应的第一密钥;

分发模块,用于建立所述加解密单元与所述密钥加密管理单元间的密钥信息互传信道,进行密钥的分发或转发;

优选的,所述分发模块建立的互传信道包括加密信道和普通信道;

所述加密信道包括在密钥分发单元和密钥加密管理单元之间用于传输第一密钥的信道,从密钥分发单元向数据加解密单元转发第一密钥的信道。通过加密信道传递第一密钥确保了密钥的安全性,防止了泄露隐患。对第二密钥的互传,由于已经经过加密,因此可以采用普通信道进行互传;而本实施例采用的信道加密方法可以为现有的任一中加密方法,并不对本申请的保护范围造成影响。

第一索引模块,用于建立并存储所述第二密钥和数据标识的映射关系。所述映射关系集中存储于所述密钥管理单元中,便于每个分布式数据加解密单元的连接访问,建立数据与第二密钥的对应关系。

进一步地,所述密钥加密管理单元包括密钥加解密模块、密钥缓存区及第二索引模块;

所述密钥加解密模块,用于获取公私钥对,采用非对称加密算法对第一密钥进行加/解密操作;采用非对称加密算法比对称加密算法安全性更好。

优选的,为了确保海量数据的信息安全,实现“自主可控”,可以采用国密的非对称加密算法,对第一密钥进行加/解密,例如sm2加密算法。

所述密钥缓存区,用于缓存非对称加密算法中使用的私钥;为对第二密钥进行解密的过程提供便利;

第二索引模块,用于建立第一密钥、加密第一密钥的公私钥对、及所述公私钥对在密钥库内的存储位置之间的映射关系。

所述密钥库包括两个用于存储非对称加密算法使用的公私钥对的密钥存储模块,采用双机热备的冗余机制,保证密钥供给不间断。

进一步地,所述数据加解密单元包括密钥存储模块和加解密模块;

加解密模块,用于运用对称加密算法,使用所述第一密钥,对写入或读出的数据进行加、解密操作;采用对称加密算法简单快捷,密钥较短,且破译困难。

密钥存储模块,用于存储所述第二密钥,当加解密模块执行加/解密操作时,密钥存储模块为加解密模块提供相应的解密后的第一密钥。

优选的,为了确保海量数据的信息安全,实现“自主可控”,可以采用国密的对称加密算法,对数据进行加/解密,例如sm4加密算法。

综上所述,本实施例结合密码学和分布式存储,以保护呈爆炸式增长的海量数据信息为目的,提供了对用户透明的分布式加密存储,着重解决亿级海量数据信息集中存储时造成的泄露隐患以及明文存储造成的窃取攻击等问题,实现了亿级数据的分布式安全加密存储,有效保护了用户海量数据信息的安全。

而且采用分布存储、集中索引的存储结构,保证海量数据信息分布存储在不同的存储设备,有效抵制单点故障;用户无需对加密算法中的密钥进行管理,整个加解密过程中对用户来说是透明的。通过密钥管理单元生成、分发、管理密钥。

并且可以立足于国产密码算法,采用国密算法中sm4算法对写入磁盘中的数据进行加密,并利用sm2算法对sm4算法的密钥进行加密,从而保证了数据及密钥存储的安全性。

实施例二

本实施例公开了一种分布式加密存储系统,如图2所示,包括客户端、管理设备和存储设备;

其中,

客户端,用于发出数据的读写请求,与管理设备进行交互,获取数据的存储位置信息;与存储设备交互,将数据块进行分布式存储。

管理设备,包括索引单元、负载均衡单元和如实施例一中所述的密钥管理单元。

管理设备负责存储整个分布式加密存储系统中数据存储映射表的位置信息;协调管理存储设备之间负载均衡,保证数据块的均衡分布存储;配置副本策略,确定副本存储位置;客户端发出读写请求时能够快速检索出映射表所在存储设备位置;对加密过程中使用的第一密钥和第二密钥的生成、分发、存储进行管理。

多个存储设备组合形成分布式集群,每个存储设备包含索引单元、数据存储单元备份单元和如实施例一中所述的数据加解密单元。

所述存储设备,用于建立数据与存储位置的关系映射表;对数据进行加解密操作;负责存储实际的数据块,存储数据的映射表,执行数据块的读写操作;执行副本策略,对实际存储的数据进行备份操作。

本实施例的分布式加密存储系统还包括互联网络,用于连接客户端、管理设备和存储设备。在网络传输过程中,为保证信息的机密性、完整性,传输的信息均保证以密文的形式进行加密保护传输,或者利用安全传输协议进行传输,防止信息被非法获取或使用。

相比于现有技术,本实施例的有益效果与实施例一的有益效果相同,在此不一一赘述。

实施例三

本实施例公开一种使用如上述实施例中的分布式加密存储装置的加解密方法,包括以下步骤:

数据加密步骤:数据加解密单元发送要加密数据的数据标识到密钥分发单元;所述密钥分发单元生成与数据标识对应的第一密钥,发送给密钥加密管理单元进行加密得到第二密钥;再通过密钥分发单元将第二密钥分发到数据加解密单元进行存储;数据加解密单元将存储的所述第二密钥通过密钥分发单元再转发到密钥加密管理单元进行解密得到对应的第一密钥;所述第一密钥通过密钥分发单元转发至数据加密单元,进行数据加密。数据加密的流程图如图3所示。

数据解密步骤:数据加解密单元向密钥分发单元发送密钥请求,寻找加密数据对应的密钥;密钥分发单元通过索引检索到相应的密钥存储位置后发送至数据加解密单元;数据加解密单元根据所述位置信息从密钥存储模块模块中提取对应的第二密钥,经密钥分发单元转发至密钥加密管理单元进行解密得到第一密钥;所述第一密钥通过密钥分发单元转发至数据加密单元,进行数据解密。数据解密的流程图如图4所示。

相比于现有技术,本实施例的有益效果与实施例一的有益效果相同,在此不一一赘述。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

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