专利名称:利用随机排序和随机块大小的安全数据传输的制作方法
技术领域:
本申请主要涉及数据通信,更具体地,涉及信息安全。
背景技术:
用以传输金融的和其他的重要信息的计算机技术的使用持续增加。由于这些传输的属性,保护信息在传输过程中不泄露给非授权方是很重要的。传统上利用加密提供这些通信的安全。无论是否采用加密,数据的传输通常通过将数据分成多个块并且顺序传输这些块来实现。每个块中的信息通常`具有相同的大小。由于这种块的顺序和大小可被容易地确定,所以,即使被加密,窃取者仍能获得关于通信内容的有价值的信息。更具体地,如果已知块内存在的信息类型,则可以确定加密密钥,从而可以获得利用相同密钥加密的其他块的内容。当存在相同内容的多个副本被分配时,该问题更加恶化。例如,数字块递送服务向用户分配数字书的多个副本。每个副本可通过不同的密钥加密。因为窃取者已访问了用不同密钥多次加密的已知数据(例如,书的第一页),所以窃取者可能能够恢复用于加密该数据的密钥。窃取者然后能使用该密钥来解密剩余的数据。因此,需要一种用于安全地传输和存储包含已知信息类型的数据的系统。
发明内容
根据本发明的一个方面,提供了一种用于原始数据组的安全数据传输的装置,包括第一模块被配置为将所述原始数据组划分成多个块,其中,所述多个块中的至少两个块具有不同的大小;加密处理器被配置为对所述多个块进行加密;以及第二模块;被配置为以随机的顺序传输所述多个块。优选地,第一模块被进一步配置为在将原始数据组划分成多个块之前对原始数据组应用环式移位。优选地,第一模块被进一步配置为将原始数据中的一组识别数据分在两个块中。优选地,第二模块被进一步配置为在传输期间在多个块中包括虚拟块。优选地,第二模块被进一步配置为将一个块插入多个数据传输槽中的一个数据传输槽中,其中,数据传输槽的编号基于产生的随机数。其中,所述第二模块被进一步配置为基于产生的随机数来选择数据传输槽。所述第二模块被进一步配置为传输与所选择的数据传输槽相关联的块。
根据本发明的另一个方面,提供了一种计算机可读存储装置,具有被存储的计算机可执行指令,通过计算装置执行所述指令,使得所述计算装置执行如下操作将原始数据组划分成多个块,其中,所述多个块中的至少两个块具有不同的大小;在加密处理器中对所述多个块进行加密;以及以随机的顺序传输所述多个块。优选地,在将所述原始数据组划分成多个块之前对原始数据组应用环式移位。优选地,将原始数据中的一组识别数据分在两个块中。优选地,将一个块插入多个数据传输槽中的一个数据传输槽中,其中,数据传输槽的编号基于产生的随机数。其中,基于产生的随机数来选择数据传输槽。其中,传输与所选择的数据传输槽相关联的块。根据本发明的又一个方面,提供了一种用于安全数据传输的方法,包括将原始数据组划分成多个块,其中,所述多个块中的至少两个块具有不同的大小;在加密处理器中对所述多个块进行加密;以及以随机的顺序传输所述多个块。优选地,在将原始数据组划分成多个块之前对原始数据组应用环式移位。优选地,将原始数据中的一组识别数据分在两个块中。优选地,将一个块插入进多个数据传输槽中的一个数据传输槽,其中,数据传输槽的编号基于产生的随机数。其中,基于产生的随机数来选择数据传输槽。传输与所选择的数据传输槽相关联的块。
被结合在本文中并形 成说明书的一部分的附图与说明书一起示出了本发明,进一步用于解释发明的原理并用于使相关领域中的普通技术人员能够做出并使用该发明。图1是根据发明的实施方式的用于利用随机排序和随机块大小的安全数据传输的系统的示例性操作环境的框图。图2是根据发明的实施方式的用于利用随机排序和随机块大小的安全数据传输的系统的可选的操作环境的框图。图3是根据本发明的实施方式的用于安全地传输数据的示例性方法的流程图。图4A是根据本发明的实施方式的用于将明码文本划分成不同大小的块的方法的示例性实例。图4B是根据本发明的实施方式的将明码文本划分成不同大小的块的方法的可选步骤的示例性实例。图5描述了根据本发明的实施方式的用于无序地随机传输加密块的方法的步骤的流程图。图6是根据本发明的实施方式的用于无序地随机传输加密块的方法的示例性实例。图7是根据本发明的实施方式的用于重组变化大小的块的示例性方法的流程图。图8示出了在其上可实现实施方式的示例性计算机系统的框图。
具体实施例方式图1是根据发明的实施方式的用于利用随机排序和随机块大小的安全数据传输的系统的示例性操作环境的框图。示例性操作环境100包括源110、通信介质140以及目的地 150。源110包括块创建器121、加密处理器122、随机直接存储访问(RDMA)模块123、随机数发生器124以及存储器125。存储器125被配置成存储明码文本131和一个或多个密码密钥132。明码文本131是未被加密的数据。通过加密处理器将密码密钥132用于对数据进行密码处理(例如,加密或解密)。密码密钥可如密码算法所要求的为对称密钥或非对称密钥。尽管存储器125通常为RAM,但如本领域技术人员所理解的,存储器125可以是任意类型的存储器并且可以在加密处理器122的内部或外部。块创建器121被配置为将明码文本131划分成一个或多个可变大小的块。在下面的图3中进一步详细描述块创建器121的操作。加密处理器122提供所需的密码操作,以对由块创建器121所产生的一个或多个可变大小的块进行密码处理。加密处理器可支持包括诸如AES、三重DES以及DES的对称算法或诸如DSA或RSA的非对称算法的各种密码算法。加密处理器可支持诸如RC4的流密码。在实施方式中,加密处理器还可执行密码混编功能。根据算法需要,加密处理器可以使用各种大小的密钥。RDMA 123被配置成以随机的顺序经由通信介质140传输加密的数据块。在下面的图3中进一步详细描述RDMA 123的操作。在实施方式中源110经由通信介质140将加密文本安全地传输至目的地150。通信介质140可以是诸如因特网的公共数据通信网络、私有数据通信网络、公共开关电话网络(PSTN)、无线通信网络、计算机总线、电路通路,或其任意结合。数据源110与通信介质140之间的接口可以是无线或有线接口。目的地150包括加密处理器161、块重组器162以及存储器163。目的地150可位于与源110物理上分开的地方。加密处理器161被配置为对通过数据源110发送的一个或多个可变大小的块进行密码处理(例如,解密)。为了解密接收到的加密数据,目的地150存储一个或多个密码密钥。对相关领域的技术人员显而易见的是,本发明可以使用用于在源110与目的地150之间交换密码密钥和其他所需信息的各种技术。块重组器162被配置为将可变大小的块重新排序到其原始的位置。在下面的图9中进一步详细描述块重组器162的操作。存储器163被配置为存储加密文本171和一个或多个密码密钥172。在一个实施方式中,加密文本可在解密之前被存储。可选地,存储加密文本和所得的明码文本。尽管存储器163通常为RAM,但是如本领域中的技术人员所理解的,存储器163可以是任意类型的存储器并且可以在加密处理器161的内部或外部。加密文本171包括通过源110发送的一个或多个加密块。密码密钥172是当由加密处理器161处理时结合加密文本171产生明码文本131的一条信息。根据密码算法,密钥可以是对称密钥或非对称密钥。本文所描述的技术还可用于提高灾难恢复的安全性。图2描述了根据发明的实施方式的用于安全数据传输和存储的本发明系统的框图。操作环境200包括源210、通信介质240以及目的地250-1至250-N。 上述参照图1描述了源210和通信介质240。在环境200中,原始数据被源划分成多个加密块,并且这些块被分配至多个目的地。例如,在图2中,力口密块A被存储在目的地250-1,加密块B被存储在目的地250-3,加密块C、D和E被存储在目的地250-2,而加密块X被存储在目的地250-N。这种分配的实施方式提供了附加的安全级。目的地250-1至250-N可包括与在图1中所描述的目的地150相同的功能。然而,在该实施方式中,加密文本171的加密块在目的地250-1至250-N之间分配,使得每个数据目的文件包括一组块。加密文本171在目的地250-1至250-N之间分配确保了即使一个或多个目的文件丢失仍能恢复原始数据的至少一部分。另外,由于存储器是分配的,在一个目的地的安全破坏将不会危及所有的原始数据。图3是根据本发明的实施方式的用于安全地传输数据的示例方法300的流程图。基于下面的描述,其他结构的实施方式对相关领域的技术人员而言将是显而易见的。图3中所示的操作不必以所示的顺序出现,方法300也不要求图3中所示的所有操作都被执行。在下面详细描述图3的操作。在步骤310中,明码文本131的全部或一部分被划分成多个可变大小的块。步骤310包括步骤312-316。在实施方式中,在步骤310中,可以将明码文本移位随机数量的字节。可选地,可以将明码文本移位随机数量的位。随机地移位明码文本提供了附加的数据安全,特别是当传输明码文本131的多个副本时,这是因为各传输之间传输的第一字节或位不同。在步骤312中,通过随机数发生器124产生随机数或伪随机数,Rval。然后使用随机数,Rval来确定移位量。例如,可如下计算移位量(Shift_Amount)Shift_Amount=mod (Rval, Plaintext_length)在步骤314中,将明码文本131移位Shift_Amount字节。在实施方式中,向左移位字节。如相关领域的技术人员所理解的,可使用用于移位数据的其他技术。图4A描述了根据本发明的实施方式的将明码文本划分成可变大小的块的示例性实例。在图4A中,系统已对数据产生了 5的移位量。明码文本401向左移位5个字节以产生移位的文本402。从右边移进的字节是在左边移出的字节。换言之,应用了循环移位。在步骤316中,将明码文本划分成多个可变大小的块。更具体地,以字节计算的每个块的大小基于通过随机数发生器124产生的随机数。每个块在大小上必须为至少一个字节并且小于或等于单个数据传输槽(single data transfer slot)的大小。例如,在图4A中,明码文本402中的字节5和6组成了一个传输块,而字节7、8、9和0组成了另一个传输块。如果要求附加的数据安全,则块创建器123可将在明码文本内的机密信息在块之间划分。换言之,为了防止机密信息存储在单个块中,块创建器123在随机的位置处划分机密信息。图4B描述了根据本发明的实施方式的将明码文本内的机密信息在块之间划分的可选步骤的示例性实例。在图4B中,块创建器123将明码文本501中的机密信息在块B和C之间划分。基于随机数发生器124产生的随机数来确定移位的位置。对相关领域的技术人员显而易见的是,可使用各种机 制来通知块创建器123关于明码文本中的机密信息的位置。在步骤320中,加密处理器122通过一个或多个密码密钥132对多个可变大小的块进行加密。对相关领域的技术人员显而易见的是,根据所使用的密码算法的要求,可顺序地或同时地执行步骤310和320的部分。换言之,加密处理器122可将可变大小的块在它们被块创建器121产生时进行加密。可选地,加密处理器122可将可变大小的块在所有这些块被块创建器121产生之后进行加密。在步骤330中,将加密的块传输至目的地。在实施方式中,可以无序地传输加密的块。更具体地,一组加密的块被映射至多个数据传输槽。RDMA 123随机选取数据传输槽并且将其中的加密的块传输至目的地。步骤330包括步骤332-336。通常,加密的块以连续的顺序被发送至目的地。然而,RDMA 123被配置成将加密的块无序地传输至一个或多个目的地。此外,在实施方式中,使用多条信道来传输加密的块。换言之,除了被无序地传输之外,加密的块可基于时间、频率或其任意组合通过多条信道被传播。在步骤332中,确定数据传输槽的编号。数据传输槽被用于发送一组加密的块。每个数据传输槽可具有表示其顺序位置的槽编号。为了提升安全性,数据传输槽的编号基于通过随机数发生器124产生的随机数。此外,一旦分配给数据传输槽的一组加密的块被传输,则重新确定数据传输槽的编号。通过计算每组加密的块的随机数据传输槽,提高了安全性。当加密的块被分配至多个目的地时,在数据传输槽中的加密的块将优选地被发送至相同的目的地。然而,对相关领域中的技术人员显而易见的是,可以使用各种方法和数据结构将在不同数据传输槽中的数据发送至不同的目的地。数据传输槽的编号可通过下面的公式来计算
SQ=mod(Rval, SQmax-Sqmin) +SQminRval是通过随机数发生器124产生的随机数。SQmax和SQmin是数据传输槽的最大编号和最小编号。SQ为用于传输的数据传输槽的编号。SQ在SQmin与SQmax的范围内。如前面所讨论的,为了增加数据的安全性,SQ的值可随每次传输而变化。在步骤334中,加密的块被顺序映射至数据传输槽。加密的块I被映射至数据传输槽I,加密的块2被映射至数据传输槽2,等等。如果要求附加的数据安全性,RDMA 123在数据传输之前可产生一个或多个虚拟块。RDMA 123将一个或多个虚拟块随机地映射至一个或多个数据传输槽。例如,在图6中,虚拟块被映射至数据传输槽6。对相关领域中的技术人员显而易见的是,可利用各种方法将一个或多个虚拟块映射至一个或多个数据传输槽。一个或多个虚拟块表示伪数据,通过发送一个或多个虚拟块,拦截块的第三方将不能确定是否该块表示合法的数据。然而,虚拟块的使用降低了数据吞吐率。因此,对相关领域中的技术人员显而易见的是,虚拟块的使用表示数据安全性与传输速度之间的平衡。在步骤336中,选择并传输未被传输的加密的块。在下面的图5中进一步详细描述随机块传输操作。在步骤340中,目的地150接收加密的块并且将其存储在存储器163中。目的地150还接收与加密的块相关联的数据槽编号。在步骤350中,加密处理器161利用密码密钥172来解密加密的块。从而获得原始的可变大小的块。对现有技术中的技术人员显而易见的是,存在各种在源与目的地之间安全地交换密码密钥的机制。在步骤360中,块重组器162根据所接收的数据槽编号将被解密的可变大小的块排序。在下面的图7中进一步描述块重组器162的操作。对相关领域的技术人员显而易见的是,可顺序地或同时地执行步骤350和360。图5描述了根据本发明的实施方式的用于随机传输加密的块的方法的步骤336的流程图。基于下面的讨论,其他结构的实施方式对相关领域中的技术人员而言是显而易见的。图5中所示的操作无需以所示的顺序出现,方法500也不必要求执行图5中所示的全部操作。下面详细描述图5的操作。在步骤510中,将剩余的要传输的数据传输槽的编号(例如,Scurr)初始化为在图3的步骤332中所计算的数据传输槽的编号。在步骤520中,通过随机数发生器124来产生随机数,例如,Rval。 在步骤530中,利用随机数Rval来计算要传输的数据传输槽。更具体地,基于Rval来计算要传输的数据传输槽的槽编号。数据传输槽编号可计算如下Sidx=mod (Rval, SQ)Rval是通过随机数发生器124产生的随机数。SQ是在步骤332中计算的数据传输槽的编号。Sidx是要传输的数据传输槽的槽编号。在可选实施方式中,可基于其他因素来选`择数据传输槽编号。例如,可基于块的传输优先级或发送块的用户来选择数据传输槽编号。对相关领域中的技术人员显而易见的是,传输优先级可反映块中的数据类型,所述块的传输成本,或其任意组合。在步骤540中,确定被映射至数据传输槽Sidx的加密的块先前是否已被传输。如果该加密的块已被传输,则处理返回至步骤520。在步骤550中,被映射至数据传输槽Sidx的加密的块被传输至目的地。数据传输槽编号,例如,Sidx,也被发送至目的地。在优选实施方式中,Sidx作为加密的块经由不同的通信信道被发送至目的地。在步骤560中,数据传输槽被标记为已传输。这防止了加密的块被再次传输。在步骤570中,剩余的要传输的槽的编号(例如,Scurr)减一。在步骤580中,如果仍有槽要被传输(例如,Scurr大于或等于I),则操作返回至步骤520,其中,选择另一槽并且传输其对应的数据。重复步骤520-580,直至已选择了每个可用槽。对相关领域中的技术人员显而易见的是,可以一次传输一个加密的块。可选地,可同时传输多个加密的块。如果要求附加的安全性,还可通过多个独立信道分配加密的块。换言之,加密的块可基于时间、频率或其组合来传播。图7描述了根据本发明的实施方式的用于重组可变大小块的示例性方法的流程图。基于下面的讨论,其他结构的实施方式对相关领域中的技术人员而言将是显而易见的。图7中所示的操作无需以所示的顺序发生,方法700也并不要求图7中所示的所有操作被执行。下面详细描述图7的操作。在步骤710中,将接收的槽编号列表(例如,Recv_List)设定为空。Recv_List包含所接收的数据传输槽编号。ReCV_List被用于确定源110是否已从数据传输槽完成传输加密的块。对相关领域中的技术人员显而易见的是,利用各种方法和数据结构,所接收的槽编号列表可被实现并且被提供至一个目的地或多个目的地。在步骤720中,接收解密的块和其相关的数据槽编号(例如,Sidx)。在步骤730中,块重组器162确定Sidx是否在所接收的槽编号列表中。如果Sidx不在该列表中,则操作进行至步骤750。如果Sidx在该列表中,则解密的块或者被重新传输,或者源110已开始从数据传输槽的新范围传输加密的块。在步骤740中,块重组器162确定解密的块是否已被存储在其余解密块的之中的位置Sidx。如果解密块还未被存储,则该块被重新传输且操作进行至步骤760。如果块已被存储在Sidx,则源110已开始从数据传输槽的新的范围传输加密的块并且操作转至步骤710。
在步骤750中,Sidx被添加至所接收的槽编号列表,例如,Recv_List。在步骤760中,块重组器162将解密的块重新排序在其余解密块之中的位置Sidx。对相关领域中的技术人员显而易见的是,可使用各种方法和数据结构,以通过数据传输槽编号将解密的块排序。例如,解码块可被分配成将阵列偏移Sidx。相关领域的技术人员可以理解的是,块重组器162的操作可扩大至将块重组成明码文本,其如图2中所描述的块在多个目的地之间分配。例如,在优选实施方式中,一组数据传输槽中的每个数据传输槽被发送至相同的目的地,存储在数据传输槽中的明码文本连续片段的开始偏移值将被发送至目的地。然后,基于偏移值,在目的地重组的每片明码文本被合并成明码文本。通用计算机系统的实例本文所给出的实施方式或其部分可以以硬件、固件、软件和/或其结合来实现。本文给出的实施方式应用于两个或多个装置之间的或在一个装置的子组件内的系统。可以以硬件、软件或其某种结合来实现本文所描述的典型功能。例如,该典型功能可利用计算机处理器,计算机逻辑电路、专用电路(ASIC)、数字信号处理器等来实现,如本领域中的那些技术人员基于本文给出的讨论所理解的。因此,执行本文所描述的功能的任何处理器都在本文给出的实施方式的范围和思想内。下面描述了可用于实现本文所公开的实施方式的用计算机系统。本公开可以以硬件来或者软件与硬件的结合来实现。因此,可在计算机系统或其他处理系统的环境中实现该公开。在图8中示出了这样的计算机系统800的实例。计算机系统800包括一个或多个处理器,诸如处理器804。处理器804可以是专用或通用数字信号处理器。处理器804被连接至通信基础设施(例如,总线或网络)。就该示例性计算机系统描述了各种软件实现。在阅读该描述之后,相关领域中的技术人员显而易见的是如何利用其他计算机系统和/或计算体系构来实现本公开。计算机系统800还包括主存储器805,优选地随机存取存储器(RAM),并且还可包括第二存储器810。第二存储器810例如可包括硬盘驱动器812,和/或RAID阵列816,和/或表示为软盘驱动器、磁带驱动器、光盘驱动器等的可移动存储驱动器814。可移动存储驱动器814以众所周知的方式从可移动存储单元818读取和/或写入至该可移动存储单元。可移动存储单元818表示软盘、磁带、光盘等。正如将所理解的,可移动存储单元818包括具有在其中存储了计算机软件和/或数据的计算机可用存储介质。
在可选实现中,第二存储器可包括用于使计算机程序或其他指令被加载进计算机系统800的其他类似装置。这样的装置例如可包括可移动存储单元822和接口 820。这样的装置的实例可包括程序盒式存储器和盒式存储器接口(诸如,在视频游戏装置中找到的),可移动存储器芯片(诸如EPROM或PR0M)和相关的插座,以及允许软件和数据从可移动存储单元822被传输至计算机系统800的其他可移动存储单元822和接口 820。计算机系统还可包括通信接口 824。通信接口 824允许软件和数据在计算机系统800与外部装置之间传输。通信接口 824的实例可包括调制解调器、网络接口(诸如因特网卡)、通信端口、PCMCIA槽和卡等。经由通信接口 824传输的软件和数据为信号828的形式,其可以是电子的、电磁的、光的或能够通过通信接口 824接收的其他信号。这些信号828经由通信路径826被提供至通信接口 824。通信路径826承载信号828并且可以利用导线或电缆、光纤、电话线、蜂窝电话链路、RF链路以及其他通信信道来实现。
在本文中使用的术语“计算机介质”和“计算机可用介质”通常指诸如可移动存储驱动器814、安装在硬盘驱动器中的硬盘812以及信号828的介质。这些计算机程序产品为用于向计算机系统800提供软件的装置。计算机程序(还称为计算机控制逻辑)存储在主存储器805和/或第二存储器810中。还可通过通信接口 824来接收计算机程序。这种计算机程序在被执行时使得计算机系统800能够实现如本文所描述的本公开。具体地,计算机程序在被执行时使得处理器804能够实现本公开的处理。例如,计算机程序在被执行时使得处理器804能够实现在上面参照本文中的流程图描述的步骤的一部分或全部。在本公开利用软件来实现,软件可被存储在计算机程序产品中和利用RAID阵列816、可移动存储驱动器814、硬盘驱动器812或通信接口 824加载进计算机系统800中。在其他实施方式中,本公开的特征主要以利用(例如)诸如专用集成电路(ASIC)和可编程的或静态的门阵列的硬件组件的硬件来实现。实现硬件状态机以执行本文所描述的功能对相关领域中的技术人员而言是显而易见的。结论尽管上面已描述了各种实施方式,但应理解的是,通过示例的方式给出这些实例,而并不是限制。对相关领域中的技术人员显而易见的是,在不背离本文所给出的实施方式的思想和范围的前提下,可以做出各种形式和细节上的变化。在上面已借助于示出了具体功能特性及其关系的功能结构块和方法步骤描述了本文给出的实施方式。为便于描述,本文中任意限定了这些功能结构块和方法步骤的边界。只要具体的功能及其关系被适当地执行,可以限定可选的边界。因此,任何这种可选的边界在所要求的实施方式的范围和精神内。本领域的技术人员应认识到,可通过分离的组件、专用集成电路、执行适当的软件等的处理器或其任意组合来实现这些功能结构块。因此,本实施方式的宽度和范围不应受限于上述任意示例性实施方式,而应仅根据下面的权利要求及其等同替换来定义。
权利要求
1.一种用于原始数据组的安全数据传输的装置,包括 第一模块,被配置为将所述原始数据组划分成多个块,其中, 所述多个块中的至少两个块具有不同的大小; 加密处理器,被配置为对所述多个块进行加密;以及 第二模块,被配置为以随机的顺序传输所述多个块。
2.根据权利要求1所述的装置,其中,所述第一模块被进一步配置为在将所述原始数据组划分成所述多个块之前对所述原始数据组应用环式移位。
3.根据权利要求1所述的装置,其中,所述第一模块被进一步配置为将所述原始数据中的一组识别数据分在两个块中。
4.根据权利要求1所述的装置,其中,所述第二模块被进一步配置为在传输期间在所述多个块中包括虚拟块。
5.根据权利要求1所述的装置,其中,所述第二模块被进一步配置为将一个块插入多个数据传输槽中的一个数据传输槽中,其中,数据传输槽的编号基于产生的随机数。
6.根据权利要求5所述的装置,其中,所述第二模块被进一步配置为基于产生的随机数来选择所述数据传输槽。
7.根据权利要求6所述的装置,其中,所述第二模块被进一步配置为传输与所选择的数据传输槽相关联的块。
8.一种用于安全数据传输的方法,包括 将原始数据组划分成多个块,其中,所述多个块中的至少两个块具有不同的大小; 在加密处理器中对所述多个块进行加密;以及 以随机的顺序传输所述多个块。
9.根据权利要求8所述的方法,其中,在将所述原始数据组划分成所述多个块之前对所述原始数据组应用环式移位。
10.根据权利要求8所述的方法,将所述原始数据中的一组识别数据分在两个块中。
全文摘要
本发明涉及利用随机排序和随机块大小的安全数据传输。加密信息通常被分成顺序传输的块。因为能容易地确定这种块的顺序和大小,所以窃取者能获得关于通信的内容的有价值的信息。更具体地,如果已知块内存在的信息类型,则可以确定密钥,从而能够获得其他加密的块的内容。本文描述的系统、方法以及计算机程序产品的实施方式能通过随机排序和随机块大小安全地传输信息来克服此缺陷。要被传输的原始数据组被划分成多个块,其中至少两个块具有不同的大小。每个块被加密。加密的块被插入数据传输槽的序列中。然后,通过基于产生的随机数选择传输的槽来以随机顺序选择用于传输的块。通过利用用于传输的多个信道并传输至多个目的地来达到附加的安全性。
文档编号H04L9/08GK103067157SQ20121036641
公开日2013年4月24日 申请日期2012年9月27日 优先权日2011年10月18日
发明者埃拉德·阿达尔, 罗伊·勒纳, 雅各布·门德, 埃亚尔·韦伯-茨维, 约翰逊·瓦斯卡尔 申请人:美国博通公司