一种针对海量数据分布式存储的加密算法的方法与流程

文档序号:31706478发布日期:2022-10-01 11:34阅读:271来源:国知局
一种针对海量数据分布式存储的加密算法的方法与流程

1.本发明涉及数据安全技术领域,具体为一种针对海量数据分布式存储的加密算法的方法。


背景技术:

2.万物互联的背景下,随着业务的发展数据的不断扩增不少企业都面临着大量数据存储及存储的数据安全问题的考验。数据是安全保护对象的核心主体,不论是防御体系的建设还是其它智能化安全形态的构成其核心目的都是为了保护数据,包括数据的机密性、完整性、可用性。面对庞大的数据量以及不确定的网络攻击等因素,针对数据的全生命周期进行加密处理才能保证真正的数据安全。


技术实现要素:

3.本发明的目的在于提供了一种针对海量数据分布式存储的加密算法的方法,实现密钥的安全传输,使数据得到安全保证的目的。
4.为实现上述目的,本发明提供如下技术方案:一种针对海量数据分布式存储的加密算法的方法,包括以下步骤:
5.s1:对海量数据分布式进行获取处理;
6.s1.1:获取组数据和标记列表;
7.s1.2:根据标记列表中的标记符划分出若干个储存空间;
8.s1.3:复制标记列表中的标记符;
9.s1.4:在所述储存空间中分成三个储存仓,分别为第一储存仓、第二储存仓和第三储存仓;
10.s1.5:将复制得到的标记符存储到第一储存仓中;
11.s1.6:根据所述第一储存仓中的标记符,从所述暂存空间中寻找具有相同标记符的组数据,将寻找得到的组数据存储到第二储存仓中;
12.s1.7:建立存储地址与组数据编号之间的映射关系,并将所述映射关系制成映射表存储在第三储存仓中;
13.s2:对该数据进行加密传输;
14.s2.1:服务端的服务器生成rsa密钥对(n,e,d),并将n以明文发送给客户端的终端;
15.s2.2:客户端生成两个随机数,这两个随机数据均保密不公开;
16.s2.3;客户端的根密钥通过其中一个随机数进行加密处理,并将加密数据传输给服务器;
17.s2.4:服务端收到加密数据后再进行加密后发送给客户端;
18.s2.5:客户端的再次加密数据通过另一个随机数进行解密处理后发送给服务端,再由服务端进行解密密处理获得所述根密;
19.s2.6:不在使用http协议的中心化的服务器上传下载文件,改用p2p的方式,节省带宽近60%。
20.优选的,所述储存空间包括数据库。
21.优选的,所述服务端的服务器生成rsa密钥对,密钥对包括(n,e,d),其中n为明文,将明文n发送给客户端的终端,即公开n,密钥参数e,d保密不公开。
22.优选的,所述所述定义两个随机数分别为rn1、rn2;将终端的根密钥记为rk,要求rk小于n,终端进行计算加密,即rk^rn1mod n=rk1;(rk+rk^(rn1*rn2))mod n=p;终端将rk1、p传输给服务器。
23.优选的,所述所述自客户端动态生成的rsa公钥为des密钥加密,生成rsa加密密文。
24.优选的,所述客户端将接收到的rsa加密密文解密,获取所述des密钥。
25.优选的,所述用于数字签名的公钥加密使用rsa算法。在这种方法中,发送者利用私钥通过摘要函数对整个数据文件(代价昂贵),或文件的签名进行加密。私钥匹配的最主要优点就是不存在密钥分发问题。这种方法假定你信任发布公钥的来源。然后接收者可以利用公钥来解密签名或文件,并验证它的来源和/或内容由于公钥密码学的复杂性因此只有正确的公钥才能够解密信息或摘要。最后,如果你要将消息发送给拥有已知公钥的用户,那么你就可以使用接收者的公钥来加密消息或摘要,这样只有接收者才能够通过他们自己的私钥来验证其中的内容。
26.优选的,所述该认证方式包括单向认证、双向认证、三向认证。单向认证:只保护消息的完整性和原创性。当有人使用用户签名(私钥)签署了时间戳、现时值和目标身份时,就实行单向认证。接收者可以通过使用发送者的公钥来“逆向签署”信息,从而验证信息的真实性,可以从证书列表获得发送者的公钥。由于只对目标进行认证。
27.双向认证:允许发送者或发送者对接收者或目标进行验证。除了进行单向认证以外,目标会发送给发送者一个回复。回复中包括新的时间戳、原始的现时和新的现时。该回复使用发送者的公钥进行签名。回忆一下,在公钥密码学中,只有相对应的私钥或发送者的私钥才能解密这个回复。而且现时必须时原始的现时,否则这个消息就不可信。
28.三向认证:当目标和发送者没有同步的时钟或不希望信任时钟时,则采用三向认证。除了进行双向认证以外,发送者将对目标的回复再发送一个回复,包括在原有回复中的新现时,如图所示。这里只需要验证相匹配的现时值,不再需要验证时间戳。
29.本发明提供了一种针对海量数据分布式存储的加密算法的方法。该一种针对海量数据分布式存储的加密算法的方法具备以下有益效果:
30.传输过程仅仅公开rsa的明文部分,服务器的d、e以及客户的密钥均各自只在,即使被n分解,攻击者也无法得知服务端和客户端的密钥。所有访问连接均验证refer防止盗链并可配置相关权限,进一步确保文件安全。通过分布式存储内容分散到网络节点,即使一个节点故障或被封锁,另一个节点就轻易地取代它,只有运行ipfs节点的人,才可以从其他节点下载经过审查的信息
31.同时也有着和区块链系统的概念,可轻松地。持续证明节点正在存储它们所承诺的精确数据,这种数据是可进行验证的,不存在对提供数据存储的矿工(节点)不信任的问题。数据制造者可自己快速维自己所生产的数据。解决了数据缺权以及数据的隐私存储。
附图说明
32.图1为本发明对海量数据分布式进行获取处理步骤图;
33.图2为本发明对该数据进行加密传输步骤图。
具体实施方式
34.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
35.所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
36.在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
37.在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
38.如图1-2所示,本发明提供一种技术方案:一种针对海量数据分布式存储的加密算法的方法,包括以下步骤:
39.s1:对海量数据分布式进行获取处理;
40.s1.1:获取组数据和标记列表;
41.s1.2:根据标记列表中的标记符划分出若干个储存空间;
42.s1.3:复制标记列表中的标记符
43.s1.4:在储存空间中分成三个储存仓,分别为第一储存仓、第二储存仓和第三储存仓;
44.s1.5:将复制得到的标记符存储到第一储存仓中;
45.s1.6:根据第一储存仓中的标记符,从暂存空间中寻找具有相同标记符的组数据,将寻找得到的组数据存储到第二储存仓中;
46.s1.7:建立存储地址与组数据编号之间的映射关系,并将映射关系制成映射表存储在第三储存仓中;
47.s2:对该数据进行加密传输;
48.s2.1:服务端的服务器生成rsa密钥对(n,e,d),并将n以明文发送给客户端的终端;
49.s2.2:客户端生成两个随机数,这两个随机数据均保密不公开;
50.s2.3;客户端的根密钥通过其中一个随机数进行加密处理,并将加密数据传输给服务器;
51.s2.4:服务端收到加密数据后再进行加密后发送给客户端;
52.s2.5:客户端的再次加密数据通过另一个随机数进行解密处理后发送给服务端,再由服务端进行解密密处理获得根密;
53.s2.6:不在使用http协议的中心化的服务器上传下载文件,改用p2p的方式,节省带宽近60%。
54.储存空间包括数据库。
55.服务端的服务器生成rsa密钥对,密钥对包括(n,e,d),其中n为明文,将明文n发送给客户端的终端,即公开n,密钥参数e,d保密不公开。
56.定义两个随机数分别为rn1、rn2;将终端的根密钥记为rk,要求rk小于n,终端进行计算加密,即rk^rn1mod n=rk1;(rk+rk^(rn1*rn2))mod n=p;终端将rk1、p传输给服务器。
57.自客户端动态生成的rsa公钥为des密钥加密,生成rsa加密密文。
58.客户端将接收到的rsa加密密文解密,获取des密钥。
59.用于数字签名的公钥加密使用rsa算法。在这种方法中,发送者利用私钥通过摘要函数对整个数据文件(代价昂贵),或文件的签名进行加密。私钥匹配的最主要优点就是不存在密钥分发问题。这种方法假定你信任发布公钥的来源。然后接收者可以利用公钥来解密签名或文件,并验证它的来源和/或内容由于公钥密码学的复杂性因此只有正确的公钥才能够解密信息或摘要。最后,如果你要将消息发送给拥有已知公钥的用户,那么你就可以使用接收者的公钥来加密消息或摘要,这样只有接收者才能够通过他们自己的私钥来验证其中的内容。
60.该认证方式包括单向认证、双向认证、三向认证。单向认证:只保护消息的完整性和原创性。当有人使用用户签名(私钥)签署了时间戳、现时值和目标身份时,就实行单向认证。接收者可以通过使用发送者的公钥来“逆向签署”信息,从而验证信息的真实性,可以从证书列表获得发送者的公钥。由于只对目标进行认证。
61.双向认证:允许发送者或发送者对接收者或目标进行验证。除了进行单向认证以外,目标会发送给发送者一个回复。回复中包括新的时间戳、原始的现时和新的现时。该回复使用发送者的公钥进行签名。回忆一下,在公钥密码学中,只有相对应的私钥或发送者的私钥才能解密这个回复。而且现时必须时原始的现时,否则这个消息就不可信。
62.三向认证:当目标和发送者没有同步的时钟或不希望信任时钟时,则采用三向认证。除了进行双向认证以外,发送者将对目标的回复再发送一个回复,包括在原有回复中的新现时,如图所示。这里只需要验证相匹配的现时值,不再需要验证时间戳。
63.传输过程仅仅公开rsa的明文部分,服务器的d、e以及客户的密钥均各自只在,即使被n分解,攻击者也无法得知服务端和客户端的密钥。所有访问连接均验证refer防止盗链并可配置相关权限,进一步确保文件安全。通过分布式存储内容分散到网络节点,即使一个节点故障或被封锁,另一个节点就轻易地取代它,只有运行ipfs节点的人,才可以从其他节点下载经过审查的信息
64.同时也有着和区块链系统的概念,可轻松地。持续证明节点正在存储它们所承诺的精确数据,这种数据是可进行验证的,不存在对提供数据存储的矿工(节点)不信任的问题。数据制造者可自己快速维自己所生产的数据。解决了数据缺权以及数据的隐私存储。
65.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个引用结构”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1