在数据转发存储中轮转加密的制作方法

xiaoxiao2020-7-22  4

专利名称:在数据转发存储中轮转加密的制作方法
在数据转发存储中轮转加密
背景技术
这里所公开的至少一些实施例涉及数据存储,并且更具体地,涉及数据转发存储网络中的轮转(rotate)加密。个人、组织机构、商业公司和政府必须存储的数据量每一年都在增长。除了跟上需求以外,组织机构还面临其它的存储挑战。伴随着向在线的实时商务和管理的转移,必须保护重要的数据不会由于软件或硬件故障而丢失或不可访问。目前,许多存储产品并不提供完全的故障保护,并且使得用户有丢失数据或不可使用数据的风险。例如,目前市场上的许多存储解决方案提供针对某些故障模式(例如,处理器故障)但是不针对其它故障模式 (例如,光盘驱动器故障)的保护。许多组织机构有由于它们的数据存储系统中的组件故障而丢失数据或不可使用数据的风险。数据存储市场通常被划分为两个主要部分,即,直接附加存储(DAQ和网络存储。 DAS包括与服务器直接连接的盘。网络存储包括附加到网络而不是特定服务器并因此可以被该网络上的其它设备和应用访问和共享的盘。网络存储通常被划分成两个部分,即,存储区域网络(SAN)和网络附加存储(NAS)。SAN是代表广大用户网络来将不同类型的数据存储设备与相关联的数据服务器互连的高速专用网络(或子网)。通常,SAN是企业的整个计算资源网络的一部分。存储区域网络通常聚集在其它计算资源附近,但也可以通过广域网(WAN)承载技术扩展到远程位置以用于备份和档案存储。NAS是这样的硬盘存储,其被建立有自己的网络地址而不是被附加到向网络的工作站用户提供应用的本地计算机。通过从本发明服务器移除存储访问及其管理,应用程序和文件两者都可以被更快地提供,这是因为应用程序和文件不竞争同一处理器资源。NAS被附加到局域网(通常,以太网)并被指派IP地址。文件请求被主服务器映射到NAS文件服务器。以上所有存储都以多于一种方式共有一个共同的、可能是致命弱点的特征,S卩,数据被存储在物理介质(例如,光盘驱动器、CD驱动器等)上。

发明内容
本发明提供用于数据转发存储中的轮转加密的方法和装置,包括计算机程序产
P
ΡΠ O一般地,根据一个方面,本发明的特征在于一种方法,包括在互连的计算机系统节点的网络中,从源系统接收用于存储数据的请求;将所述数据导向计算机存储器,所述计算机存储器采用加密方案;在所述互连的计算机系统节点的网络中逐计算机存储器地持续转发所述数据,而不存储在所述网络中的任何物理存储设备上,每个计算机存储器采用所述加密方案。所述持续转发包括基于一个或多个因素来确定可用于接收所述数据的节点的地址;向所述源系统发送消息,所述消息带有供请求者转发所述数据的具体节点的地址;检测在所述具体节点的存储器中是否存在所述数据;以及将所述数据转发给在所述互连的计算机系统节点的网络中的节点的另一计算机存储器,而不存储在任何物理存储设备上。根据另一个方面,本发明的特征在于一种网络,包括一组互连的计算机系统节点,每个计算机系统节点,响应于来自请求系统的用于存储数据的请求,接收数据并且将数据逐计算机存储器地持续转发而不存储在任何物理存储设备上,并且响应于来自请求系统的用于取回数据的请求,取回正被逐计算机存储器地持续转发的数据,每个计算机存储器采用加密方案,每个节点还被配置成检测在其存储器中是否存在数据,并根据节点的可用性将数据转发给互连的计算机系统节点中的另一节点的计算机存储器。以下,将在附图和说明书中阐述本发明的一个或多个实现方式的细节。本发明的更多特征、方面和优点将从说明书、附图和权利要求中显而易见。


这些实施例是以示例而非限制方式在附图中的示图中说明的,附图中,类似的标号表示类似的元素。图1是示例性网络的框图。图2是示例性用户系统的框图。图3是示例性网络系统的框图。图4是处理的流程图。图5是处理的流程图。
具体实施例方式与使用短暂停留(transient)方式的数据转发使得数据最终被存储在诸如光盘驱动器之类的物理介质上的对等网络不同,本发明是持续数据转发系统,即数据被从一个节点存储器向另一节点存储器地持续转发。如图1中所示,示例性网络10包括用户系统12和许多网络系统14、16、18、20、22。 可以认为网络系统14、16、18、20、22中的每一个是网络10中的一个节点并且可以指定一个这样的网络系统作为中央服务器,例如网络系统14,该网络系统可以担任网络10中的控制角色。网络系统14、16、18、20、22中的每一个可以被建立为在中央服务器14的直接控制下被专用地控制的对等端(peer)的网络。对等的节点也可以是专用节点和公用节点的混合, 并且因此可以不受中央服务器14的直接物理控制下。网络10也可以是完全公用的,其中, 中央服务器14(或多个服务器)对任一对等节点都没有直接的拥有权或直接的物理控制权。如图2中所示,用户系统12可以包括处理器30、存储器32和输入/输出(I/O)设备34。存储器32可以包括操作系统(OS) 36,例如Linux、Apple: OS或Windows ,一个或多个应用处理38和存储处理100 (以下详细描述)。应用处理38可以包括用户生产力软件,例如OpenOffice或者Microsoft . Office。1/0设备;34可以包括用于显示给用户42 的图形用户界面(⑶1)40。如图3中所示,每个网络系统(例如网络系统14)都可以包括处理器50和存储器 52。存储器52可以包括OS 54 (例如,Linux、Apple: OS或Windows )和数据转发处理200(以下详细描述)。在传统的系统中,应用处理38需要存储和取回(retrieve)数据。在这些传统系统中,数据被存储在本地的或远程的物理设备上。并且在某些系统中,该数据可以被划分成不同数据段或数据包并被本地或远程地存储在物理存储介质上。使用固定的物理数据存储设备增加了成本、维护、管理并且生成数据的固定物理记录,而不论这是否是用户42所希望的。本发明不使用固定的物理数据存储装置来存储数据。当中央服务器14接收到来自存储处理100的存储数据的请求时,数据被导向网络10中的节点,在该节点处,数据随后通过每个网络节点中的数据转发处理200在网络10被逐节点存储器地持续转发而不存储在诸如光盘驱动器之类的任何物理存储介质上。被转发的数据在网络10中任一节点的存储器中仅驻留非常短的时间段。数据不被存储在任何网络节点中的任何物理存储介质上。以类似的方式,当中央服务器14接收到来自存储处理100的取回数据的请求时, 正在网络10中被逐节点存储器地转发的被请求数据被取回。以这种方式转发的数据可以被分段,并且片段被如上所述地转发。分段后的数据仍然不被存储在任何网络节点中的任何物理存储介质上,而是只被从一个节点的存储器向另一个节点的存储器转发。如图4中所示,存储处理100包括向中央服务器14发送(10 存储数据或取回数据的请求。如果请求是取回数据请求,则存储处理100从网络中的节点或中央服务器14接收所请求的数据。如果给中央服务器14的请求是存储数据请求,则存储处理100从中央服务器14 接收(104)节点的地址并将数据转发(106)给由接收到的地址表示的节点存储器。如图5中所示,数据转发处理200包括接收(20 存储数据或取回数据的请求。如果接收到的请求是存储数据的请求,则数据转发处理200确定(204)可用于在存储器中接收数据的节点的地址。该确定(204)可以包括对网络进行乒(ping)操作并且确定网络中的哪个节点可用或者确定网络中的哪个节点具有最小流量,或者确定网络中的哪个节点具有最大可用存储,或者这些或其它因素的任何组合。处理200向用户系统发送Q06)消息,所述消息带有供请求者转发数据的具体节点的地址。处理200检测(208)节点存储器中是否存在数据。处理200将存储器中的数据转发(210)给节点网络中的另一节点,并且继续重复数据的检测(208)和数据的逐节点存储器的转发010)。当数据到达任何节点存储器中时,处理200向数据附加012)时间戳。转发(210)可以包括对网络中的节点进行乒操作来确定网络中的哪个节点可用, 或确定网络中的哪个节点具有最小流量,或确定网络中的哪个节点具有最大可用存储,或这些或其它因素的任何组合。在一个特定示例中,在进入节点时,数据经历与节点或中央服务器14或用户的加密“握手”。所采用的加密方案受中央服务器14的控制,中央服务器14可以周期性地或响应于外部因素来改变或轮转此方案。可以使用任意两个或更多的加密方案。例如,涉及简单变换的加密方案包括ASCII到二进制、二进制到ASCII、ASCII到十六进制、十六进制到 ASCII、二进制到十六进制、十六进制到二进制、十进制到十六进制、十六进制到十进制、十进制到罗马(Roman)、罗马到十进制等等。涉及网络工具的加密方案可以包括IP到十进制、十进制到IP、IP到十六进制、 十六进制到 IP、IP/Net Calculator(网络计算器)、IPv6 Validator(验证器)、IPv6 Compress (压缩)、IPv6 Uncompress (解压缩)等等。非密钥力口密/解密方案可以包括PasswordGen> Backward、Base 64 Encode (基 64 编码)、Base 64 Decode (基 64 解码)、Caeser Bruteforce、133t 5p34k 3nc0d3、133t 5p34k d3c0d3、Igpay Atinlay、Un-Pig Latin、R0T-13 等等。HTML编码方案可以包括HTML实体编码、HTML实体解码、URL编码、URL解码等等。散列算法方案可以包括DES、MD4、MD5、SHA1、SHA-224、SHA-256、SHA-384、SHA-512、 HAVAL 128、HAVAL 160、HAVAL 192、HAVAL 224、HAVAL 256、RIPEMD 128、RIPEMD 160、 RIPEMD 256、RIPEMD 320、Tiger、Tiger 128、Tiger 160、Adler 32、Whirlpool、G0ST、 CRC32、CRC32B 等等。密钥加密/ 解密方案可以包括 iTripple DES、Blowfish、CAST 128、CAST 256、 G0ST、Rijndael 128, Rijndael 192, Rijndael 256、SERPENT、Safer+、RC2、XTEA、L0KI97、 DES、TwoFish、Wake (ECB 模式、BASE64armored)等等。时间变换方案可以包括Unix时间戳(Unix Timestamp)到日期/时间(Date/ Time)、日期/时间到Unix时间戳、Unix时间戳到RFC 2822、Unix时间戳到互联网时间 (Internet Time)、Unix 时间戳到 ISO 8601 等等。中央服务器14可以将不同的加密方案导向网络系统16、18、20和22中的每一个, 或者将单个加密方案导向所有网络系统16、18、20和22。中央服务器14可以周期性地指导网络系统16、18、20和22的一个或多个将它们当前的加密方案改为另一加密方案。中央服务器14可以基于正被逐节点存储器地转发的数据的类型来指导网络系统16、18、20和22采用特定的加密方案。中央服务器14可以基于正被逐节点存储器地转发的数据的所有者来采用特定的加密方案。中央服务器14可以本地地存储各种加密方案并将特定加密方案发送给节点存储器以供使用,或者网络系统16、18、20和22可以本地地存储各种加密方案并等待从中央服务器14接收到的指令来选择供使用的特定的加密方案。如果接收到的请求是取回正被逐节点存储器地持续转发的数据的请求,则数据转发处理200在中央服务器14处使用散列标示或其它唯一代码进行匹配014),其中散列标示或其它唯一代码可以在数据进入节点时经由加密握手被节点“嗅到”。这可以通过对网络中的节点进行乒操作而发生。处理200向中央服务器14相信其中将有可能出现数据的节点状态或节点发送(216)将数据直接返回给用户的消息。中央服务器14可以将其要乒向的节点状态限制得越窄,则取回将变得越高效并且如下的非必要消息传送流量对节点造成的负担会越小,所述非必要消息传送流量对于中央服务器14和能够转发数据的节点之间的业务而言是不必要的。在正确的节点接收到将节点存储器中的数据转发给请求者的消息后,处理200将节点存储器中的数据转发(218)给请求者,并且转发(220)数据已被发送给用户的确认消息。该路由消息可以被直接发送给中央服务器14或者可以经由网络10中的其它(一个或多个)节点或(一个或多个)超节点被传递给中央服务器14或多个服务器。在用户接收到所请求的数据时,用户的应用自动发挥作用以向中央服务器14回应(ping)所请求的数据已被接收到。因此,网络10在没有将数据缓存、下载和/或存储到任何物理存储介质上的情况下创建数据存储。数据存储和管理是经由数据的逐节点存储器的持续路由来完成的, 所转发的数据仅在用户从网络10请求将数据返回给用户时被下载。新的节点和节点状态可以基于性能被添加到网络10和/或从网络10删除。用户可以有权访问所有节点或者可以被(一个或多个)中央服务器或经由专用、公用的或专用公用网络的特定体系架构被划分到某些节点或“节点状态”。各个节点、节点状态和超节点也可以是公用或专用网络中的外联网对等端、无线网络对等端、卫星对等节点、Wi-Fi对等节点、宽带网络等。在采用了相同的安全系统以及适合于严格的特定部署的客户解决方案(例如用于无线对等端的无线加密方案等等)的情况下,对等节点或用户可以从任何有效的对等点开始用作网络10中的路由参与方。在处理200中,不是将数据缓存或保持在远程服务器、硬盘驱动器或其它固定存储介质中,而是,数据被逐节点存储器地传递、路由、转发。在经授权的用户调用数据之前, 数据从来不会被下载。该系统上的用户可以授权多于一个的用户有权访问数据。处理200中的主要目标是生成这样的数据存储和管理系统,其中,数据从来不被固定在物理存储装置中,而是实际上,在网络中被逐节点存储器地持续路由/转发。数据被转发到的节点的路径也可以被中央服务器14更改,以针对系统能力进行调节并且消除冗余的数据路径,没有该特征,这些冗余的数据路径可能由于数据路径的增大的可能性而减弱网络的安全性。本发明可以被执行来实现以下优点中的一个或多个。网络创建数据存储而不缓存或下载。数据存储和管理是经由数据的不断路由来完成的。本发明的实施例可以以数字电路或计算机硬件、固件、软件中或者在它们的组合的形式实现。本发明的实施例可以被实现为计算机程序产品或者被实现为计算机程序产品以供数据处理设备运行或控制数据处理设备的操作,所述计算机程序产品即被有形地包含在信息载体中(例如在机器可读存储装置中或传播信号中)的计算机程序,所述数据处理设备例如是可编程处理器、计算机或多个计算机。计算机程序可以以任何形式的编程语言 (包括汇编语言或解译语言)来编写,并且其可以以任何形式来部署,这些形式包括作为单独的程序或作为模块、组件、子例程或适于在计算环境中使用的其他单元。计算机程序可以被部署为在一个地点或跨越多个地点并通过通信网络互联的一个计算机或多个计算机上执行。本发明实施例的方法步骤可以由一个或多个可编程处理器执行,所述一个或多个可编程处理器执行计算机程序以通过对输入数据进行运算并生成输出来执行本发明的功能。方法步骤也可以由专用逻辑电路执行,并且本发明的装置可以实现为专用逻辑电路,所述专用逻辑电路例如是FPGA(现场可编程门阵列)或ASIC(专用集成电路)。适合于计算机程序的执行的处理器例如包括通用和专用微处理器,以及任何类型的数字计算机的一个或多个处理器。一般地,处理器将从只读存储器或随机存取存储器或这两者接收指令和数据。计算机的必要元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。一般地,计算机也将包括用于存储数据的一个或多个大容量存储设备,或可操作地耦合到用于存储数据的一个或多个大容量存储设备以从其接收数据或向其传送数据,或者既包括又与之耦合,这些存储设备例如是磁盘、磁光盘或光盘。适于包含计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,例如包括半导体存储装置,例如EPROM、EEPROM和闪存装置;磁盘,例如内部硬盘或可移除光盘;磁光盘;以及⑶ROM和DVD-ROM盘。这些处理器和存储器可以用专用逻辑电路补充或结合在专用逻辑电路中。 可以理解,以上描述意图说明而非限制本发明的范围,本发明的范围由所附权利要求限定。其它实施例在以下权利要求书的范围以内。
权利要求
1.一种方法,包括在互连的计算机系统节点的网络中,从源系统接收用于存储数据的请求; 将所述数据导向计算机存储器,所述计算机存储器采用加密方案; 在所述互连的计算机系统节点的网络中逐计算机存储器地持续转发所述数据,而不存储在所述网络中的任何物理存储设备上,每个计算机存储器采用所述加密方案,所述持续转发包括基于一个或多个因素来确定可用于接收所述数据的节点的地址;向所述源系统发送消息,所述消息带有供请求者转发所述数据的具体节点的地址;检测在所述具体节点的存储器中是否存在所述数据;以及将所述数据转发给在所述互连的计算机系统节点的网络中的节点的另一计算机存储器,而不存储在任何物理存储设备上。
2.根据权利要求1所述的方法,其中所述一个或多个因素包括网络流量分析和可用存储。
3.根据权利要求1所述的方法,其中,所述加密方案被所述网络中的中央服务器所控制,并且被所述中央服务器周期性地改变。
4.根据权利要求3所述的方法,其中,所述中央服务器响应于所述数据的类型或所述数据的所有者而改变所述加密方案。
5.根据权利要求3所述的方法,其中,所述中央服务器为一个或多个用户或一个或多个计算机系统节点改变所述加密方案。
6.根据权利要求1所述的方法,其中,所述加密方案是简单变换加密方案、网络工具加密方案、非密钥加密/解密方案、超文本标记语言HTML编码方案、散列算法方案、密钥加密 /解密方案或时间变换加密方案。
7.根据权利要求1所述的方法,还包括从所述源系统接收用于取回正在所述互连的计算机系统节点的网络中被持续转发的数据的请求;以及响应于用于取回数据的所述请求而从节点存储器取回所述数据。
8.根据权利要求7所述的方法,其中取回包括在中央服务器处使用散列标示来匹配数据请求,该散列标示表示进入节点存储器的数据;向被预测在存储器中具有所述数据的节点发送消息,该消息指示所述节点将存储器中的所述数据转发给所述请求者;以及向所述中央服务器发送所述数据已被转发给所述请求者的确认消息。
9.一种计算机程序产品,被有形地包含在计算机可读介质中,用于在互连的计算机系统节点的网络的计算机存储器中存储数据和取回数据,所述计算机程序产品使得处理装置从源系统接收用于存储数据的请求;将所述数据导向计算机存储器,所述计算机存储器采用加密方案; 在所述互连的计算机系统节点的网络中逐计算机存储器地持续转发所述数据,而不存储在所述网络中的任何物理存储设备上,每个计算机存储器采用所述加密方案,所述持续转发包括基于一个或多个因素来确定可用于接收所述数据的节点的地址;向所述源系统发送消息,所述消息带有供请求者转发所述数据的具体节点的地址;检测在所述具体节点的存储器中是否存在所述数据;以及将所述数据转发给在所述互连的计算机系统节点的网络中的节点的另一计算机存储器,而不存储在任何物理存储设备上。
10.根据权利要求9所述的计算机程序产品,其中,所述一个或多个因素包括网络流量分析和可用存储。
11.根据权利要求9所述的计算机程序产品,其中,所述加密方案被所述网络中的中央服务器所控制,并且被所述中央服务器周期性地改变。
12.根据权利要求11所述的计算机程序产品,其中,所述中央服务器响应于所述数据的类型或所述数据的所有者而改变所述加密方案。
13.根据权利要求9所述的计算机程序产品,其中,所述加密方案是简单变换加密方案、网络工具加密方案、非密钥加密/解密方案、超文本标记语言HTML编码方案、散列算法方案、密钥加密/解密方案或时间变换加密方案。
14.根据权利要求9所述的计算机程序产品,还使得数据处理装置从所述源系统接收用于取回正在所述互连的计算机系统节点的网络中被持续转发的数据的请求;以及响应于用于取回数据的所述请求而从节点存储器取回所述数据。
15.根据权利要求14所述的计算机程序产品,其中取回包括在中央服务器处使用散列标示来匹配数据请求,该散列标示表示进入节点存储器的数据;向被预测在存储器中具有所述数据的节点发送消息,该消息指示所述节点将存储器中的所述数据转发给所述请求者;以及向所述中央服务器发送所述数据已被转发给所述请求者的确认消息。
16.一种网络,包括一组互连的计算机系统节点,每个计算机系统节点响应于来自请求系统的用于存储数据的请求,接收数据并且将所述数据逐计算机存储器地持续转发而不存储在任何物理存储设备上,并且响应于来自所述请求系统的用于取回数据的请求,取回正被逐计算机存储器地持续转发的数据,每个计算机存储器采用加密方案,每个节点还被配置成检测在其存储器中是否存在数据,并根据节点的可用性将所述数据转发给所述互连的计算机系统节点中的另一节点的计算机存储器。
17.根据权利要求16所述的网络,其中,中央节点在中央服务器处使用表示进入节点的数据的散列标志来匹配数据取回请求,向被预测在存储器中具有所述数据的节点发送消息、所述消息指示所述节点将存储器中的所述数据转发给所述请求者,并且向所述中央服务器发送存储器中的所述数据已被转发给所述请求者的确认消息。
18.根据权利要求16所述的网络,其中,所述加密方案被中央服务器所控制,并且被所述中央服务器周期性地改变。
19.根据权利要求18所述的网络,其中,所述中央服务器响应于所述数据的类型或所述数据的所有者而改变所述加密方案。
20.根据权利要求16所述的网络,其中,所述加密方案是简单变换加密方案、网络工具加密方案、非密钥加密/解密方案、超文本标记语言HTML编码方案、散列算法方案、密钥加密/解密方案或时间变换加密方案。
全文摘要
一种方法,包括从源系统接收用于存储数据的请求;将数据导向计算机存储器,计算机存储器采用加密方案;在互连的计算机系统节点的网络中逐计算机存储器地持续转发数据,而不存储在网络中的任何物理存储设备上,每个计算机存储器采用所述加密方案。持续转发包括基于一个或多个因素来确定可用于接收数据的节点的地址;向源系统发送消息,该消息带有供请求者转发数据的具体节点的地址;检测在具体节点的存储器中是否存在该数据;以及将该数据转发给在互连的计算机系统节点的网络中的节点的另一计算机存储器,而不存储在任何物理存储设备上。
文档编号G06F15/167GK102204157SQ200980138562
公开日2011年9月28日 申请日期2009年9月25日 优先权日2008年9月29日
发明者吉恩·费恩, 爱德华·麦里特 申请人:塔吉特枢转让有限责任公司

最新回复(0)