CN101061661A - 加密方法 - Google Patents

加密方法 Download PDF

Info

Publication number
CN101061661A
CN101061661A CNA2005800316037A CN200580031603A CN101061661A CN 101061661 A CN101061661 A CN 101061661A CN A2005800316037 A CNA2005800316037 A CN A2005800316037A CN 200580031603 A CN200580031603 A CN 200580031603A CN 101061661 A CN101061661 A CN 101061661A
Authority
CN
China
Prior art keywords
data
key
plaintext
object program
ciphertext
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2005800316037A
Other languages
English (en)
Other versions
CN101061661B (zh
Inventor
大卫·A·麦格鲁
斯科特·弗吕尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN101061661A publication Critical patent/CN101061661A/zh
Application granted granted Critical
Publication of CN101061661B publication Critical patent/CN101061661B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/20Manipulating the length of blocks of bits, e.g. padding or block truncation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

运算的块密码模式实现具有任意块长度的块密码并且提供总是与输入明文大小相同的输出密文。该模式在不允许数据扩展的系统中可以提供最好的可能安全性,例如盘块加密和一些网络协议。该模式接受另外的输入,该输入可以用来保护不受通过重新布置密文块而操纵密文的攻击。来自用于块密码的运算的Galois/计数器模式的通用散列函数可以用在针对硬件和软件效率的实施例中。

Description

加密方法
技术领域
本发明一般涉及数据处理。更具体地说,本发明涉及计算机实现的密码学。
背景技术
该部分中所描述的方法可以被实现,但不是一定是以前被构思或实现的方法。因此,除非在这里另外指示,该部分中所描述的方法对于本申请中的权利要求来说不是现有技术,并且不承认通过包括在该部分中而成为现有技术。
如果密文(ciphertext)与明文(plaintext)具有完全相同的位数,则加密方法是长度保留的。这样的方法必须是确定性的,因为密文内不可能容纳随机数据(例如初始化向量)。此外,确定性的长度保留加密也适合于某些应用。例如,在一些加密的数据库应用中,确定性对于确保查找操作中的明文值完全对应于以前存储的明文值来说是必不可少的。
此外,在密码学的一些应用中,不可能提供某些希望的安全服务,例如关于数据的消息认证,因为不可能将数据扩展为包括消息认证码。例如,一些网络(例如一些无线网络情况)中的安全实时协议(SRTP)不能扩展明文数据。长度保留算法实质上实现密码本;用相同的密钥对相同的明文进行重复的加密产生同样的密文。对手通过察看哪些密文值匹配而得知明文。尽管如此,在一些情况中,长度保留加密仍然是有用的。例如,长度保留可以使加密被引入到已经实现和运用的数据处理系统中,或者在具有固定宽度字段的协议中或在限制数据扩展的允许量的系统中使用。在这些情况中,希望一种长度保留的、确定性的、无展性的加密方法作为消息认证的替换。
非正式地,如果改变密文值的单个位影响相应明文的所有位,则密码是无展性的。因此,在无展性的加密中,不可能通过操纵密文来操纵解密之后出现的明文。更正式地,希望的无展性密码实现伪随机排列;其对于有限计算的对手而言与消息组的排列没有区别。希望这样的密码能够处置可变大小的明文,因此需要提供伪随机的任意长度排列的密码:对于每个可能的明文长度,密码充当伪随机排列。
无展性加密是传统运算模式(例如密码块链和计数器模式加密)上的很大改善,传统运算模式在任何时候都不能增加消息认证标签。另外,无展性密码也可以接受可以用来防止密文置换攻击的另外输入值。例如,SRTP序号可以被用在与运行SRTP的网络元件相关联的实现方式中。
无展性加密对于盘块(disk block)加密也是有用的。这样的加密经常被用在远程存储系统中,因为它允许存储区域网络被用在网络管理员仅在有限程度的上被信任的应用中。
在理论文献中存在很多无展性密码提议。这里所公开的方法的一个实施例可以被称为用于块密码(block cipher)的运算的延伸密码本(XCB)模式,它在数个方面上不同于现有技术。由Luby和Rackoff在20世纪80年代所提出的密码(这里称为“LR”)为很多过去的技术提供无展性密码的理论基础。XCB与该技术的不同之处在于使用不同组的计算;XCB不是Fesitel密码,而LR是。XCB依赖于块密码的可逆性,而LR不是。而且,LR需要四轮以确保安全,而XCB三轮就是安全的。
在20世纪90年代,Naor和Reingold公布了一些基本思想上的优化,如在“On the Construction of Pseudo-Random Permutations:Luby RackoffRevisited”中的描述。虽然该技术使用四轮,但是第一轮和第四轮是Naor和Reingold所定义的“两两独立”排列。Naor-Reingold方法也不依赖于块密码的可逆性。该设计完全不同于XCB,XCB仅使用三轮、不使用两两独立排列并且依赖于块密码的可逆性。
在20世纪90年代,Stefan Lucks在“Faster Luby-Rackoff Ciphers”中描述了散列函数的使用。Anderson和Biham也发表了一些类似的技术,示出了两种密码BEAR和LION。该技术仅讨论了LR构造,并且不依赖于块密码的可逆性。此外,它需要四轮以确保安全。
更近一些的时候,Patel、Ramzan和Sundaram发表了两篇延伸Naor-Reingold技术的论文,“Towards Making Luby-Rackoff Ciphers Optimal andPractical”和“Luby-Rackoff Ciphers over Finite Algebraic Structures or WhyXOR is not so Exclusive”。该技术基于Naor-Reingold技术,并且用于该技术的所有注解都适用于这些设计。
Bellare和Rogaway在“On the Construction of Variable-Input-LengthCiphers”中描述了一种是长度保留但不是无展性的运算模式。他们将该技术称为VIL,它与XCB大不相同。
Rogaway和Halevi在“The EMD Mode of Operation(A Tweaked,Wide-Blocksize,Strong PRP)”和“EME?:extending EME to handle arbitrary-lengthmessages with associated data”中设计了是无展性的EME运算模式。虽然该技术的目标与XCB的目标相同,但是EME的设计不同于XCB的设计。重要的是,EME对块密码的调用是XCB的两倍。
独立地,McGrew和Viega向IEEE存储安全工作组(IEEE Security inStorage Working Group)提交了称为ABL(任意块长度模式)的优化Luby-Rackoff设计。XCB与ABL大不相同。
Patel等人发表了描述两种密码构造的标题为“Efficient Constructionsof Variable-Input-Length Block Ciphers”的论文。第3部分中的方法被这样构建:不能并行完成散列调用和(第1轮)和块密码调用(第2轮)。与此相反,在XCB中,前两轮可以并行完成。XCB同时进行这些运算的能力对于高速硬件实现来说是很大的性能好处。此外,第3部分的密码在第3轮中所使用的“计数器模式”之外,仅具有单个散列函数应用和单个块密码调用。由此,对于选择的明文/密文攻击来说不安全。因此,第3部分中的方法仅提供伪随机排列,而不是“超级伪随机排列”。与此相反,XCB具有两个散列调用和两个块密码调用,是超级伪随机排列。
附图说明
本发明是通过示例而不是限制的方式来说明的,在附图的图形中,相似的标号指的是类似的元件,其中:
图1A是提供可以使用这里的方法的通信系统模型的框图;
图1B是示出了根据一个实施例的加密过程的步骤和元件的数据流程图;
图2A是第二实施例的加密运算的框图;
图2B是乘法运算的框图;
图3A是示出安全电信系统的框图;
图3B是示出安全存储管理系统的框图;
图4是示出了本发明的实施例可以在上面实现的计算机系统的框图。
具体实施方式
描述了一种用于加密的方法和装置。在下面的描述中,为了说明的目的,给出了许多具体细节以提供对本发明的全面理解。然而,本领域技术人员将清楚本发明可以在没有这些具体细节的情况下实现。此外,公知的结构和器件用框图示出以避免不必要地模糊本发明。
这里根据下面的提纲来描述实施例:
1.0    概述
2.0    概念模型和目标
3.0    用于块密码的运算的延伸密码本(XCB)模式
       3.1  运算原理
       3.2  应用示例
       3.3  安全性证明
       3.4  与现有方法的某些差别
4.0    实现机制——硬件概述
5.0    延伸和替换
       …
1.0  概述
在上述背景中所确定的需要以及将从下面的描述中变得清楚的其他需要和目标可以在本发明中实现,本发明一方面包括加密方法,该加密方法包括计算机实现的接收明文数据的步骤;将明文数据分成第一明文数据段A和第二明文数据段B;用块密码加密和第一密钥加密第一明文数据段A,从而创建第一加密段C;对第一加密段C和第二明文数据段B与相关数据元素Z的基于第二密钥的散列施加排他性(exclusive)OR(或)运算,从而创建第一中间结果数据D;对第一中间结果数据D和第三密钥施加加密运算,从而创建加密输出;对加密输出和第二明文数据段B施加排他性OR运算,从而创建第二中间结果数据E;对第一中间结果数据D和第二中间结果与相关数据元素Z的使用第四密钥的散列施加排他性OR运算,从而创建第三中间结果数据F;以及创建第二中间结果数据E和使用第五密钥对第三中间结果数据F的解密结果的拼接作为输出密文。
这里所规定的数据值标签在该描述仅仅是为了清楚和方便,另外可以是任意的;实施例和实现方式可以使用任何形式的标记或命名用于所述数据值。
在一个特征中,第二密钥、第三密钥、第四密钥和第五密钥是基于第一密钥和密钥导出过程而确定的。在另一特征中,对密文进行解密涉及以相反的顺序执行上面的步骤。在另一特征中,明文包括存储在非易失性存储器中的数据块,密文存储在非易失性存储器中。另外或者可替换地,明文包括存储在盘驱动设备中的数据块,密文存储在盘驱动设备中。
在另一特征中,明文包括符合不可扩展数据协议的分组的数据净荷,密文存储在分组中。在另一特征中,明文包括符合安全RTP的分组的数据净荷,密文存储在分组中。
在各种特征中,用来从C计算D和用于从D计算F的加密运算可以是AES计数器模式加密或者AES OFB块密码模式。
在其他方面中,本发明包括计算机装置和被配置为实现上述步骤的计算机可读介质。
在这些方法中,运算的块密码模式实现具有任意块长度的块密码并且提供总是与输入明文大小相同的输出密文。该模式在不允许数据扩展的系统中可以提供最好的可能安全性,例如盘块加密和一些网络协议。该模式接受另外的输入,该输入可以用来保护不受通过重新布置密文块而操纵密文的攻击。来自用于块密码的运算的Galois/计数器模式的通用散列函数可以用在实施例中以获得硬件和软件的高效率。
2.0概念模型和目标
图1A是提供可以使用这里的方法的通信系统模型的框图。第一节点Alice通过不安全的通信链路L耦合到第二节点Bob。Alice和Bob不知道的是,第三节点Frank可以截取在链路L上发送的消息。
Alice发送给Bob一系列消息,每个消息都与某些另外的数据Z相关联,数据Z可以包含当前时间(nonce),并且可以包含关于消息如何被网络和发送者与接收者之间的其他中间系统路由、处理或处置的信息。Alice使用秘密密钥K并且使用Z作为加密函数的辅助输入对明文消息P加密,产生密文C。Alice在链路L上将C发送给Bob;然而,Frank截取C并将替代消息C’发送给Bob。消息C’在Frank不改变密文的情况下等于C。Bob使用与Alice共享的秘密密钥K和相关数据的值Z,利用解密函数将C’解密为P’。Z或者包含在消息的非密文部分中,或者可以被推断出。如果C’=C,那么P’=P;否则,可以预期P’是随机的。
如果加密函数和解密函数分别用E和D表示,那么通过符号,图1A的模型和之前的序列可以表示为:
                    C=E(K,Z,P)
                    P=D(K,Z,C)
如果只要C’≠C或Z’≠Z,值P’=D(K,C’,Z’)就是随机的,则在C和E中所使用的密文就是安全的。因此,任何对密文的改变都从而密文解密成不可预见的随机值,这些不可预见的随机值不传达有用的信息或明文。
支持该模型的加密方法的实现方式一般具有下列目标:
■具有与明文大小完全相同的密文;
■加密任何大小的缓冲器的能力,即,加密任何大于零的位数的能力;
■具有在密文或相关数据被操纵的情况下随机的解密输出;
■需要固定宽度的块密码作为唯一的密码基元(cryptographicprimitive)。
此外,创建这样的加密方法的商业实现方式的人可以另外具有下列目标,这些目标在实施例中是希望但不是必需的:
■在标准假设下具有强力的、证明是安全的边界(bound);
■具有最小的计算成本,并且
■支持最大的并行化。
3.0用于块密码的运算的延伸密码本(XCB)模式
3.1运算原理——第一实施例——每轮密钥
根据一个实施例,运算的延伸密码本模式充当具有相关数据的任意长度块密码。为了清楚说明示例的目的,这里的描述假设使用128位的块密码。如果定义适当大小的有限域(field),则实施例可以使用其他块密码宽度。
图1B是示出了根据一个实施例的加密过程的步骤和元件的数据流程图。一般来说,图1B的过程接收用于加密的信息,并且用图1B中所示的计算操作和转换对这样的明文101加密,从而创建输出密文132。明文101和密文132都可以包括任何形式的数据表示,例如位串、盘存储块等。
如图1B可见,在步骤102,明文101被分成A和B所表示的两部分。在一个实施例中,对于大小至少为256位的明文,明文101被分成两半A和B,其中A是明文的第一个128位,B是明文的剩余部分。还接收到另外的数据值Z。另外的值Z可以以清晰的形式接收,并且可以包括任何辅助输入值。另外的值Z可以具有任何长度。该方法防止了一些依赖于密码本属性的攻击,因为用不同的Z值加密相同的明文值产生无关的密文值。在一个用于加密存储信息的实施例中,Z是盘块编号。在用于网络通信的一个实施例中,Z可以是消息序号,在这样的实施例中,Z的使用可以保护不受重放攻击。
在步骤104,A部分被用加密运算116和第一密钥值加密以产生第一中间值C。用符号表示,步骤104为:C←E(K0,A)。
在步骤106,用第一XOR运算120和第一散列运算124计算第二中间值D:D←C XOR H(K1,B,Z)。在该表达式中,H是散列函数。在一个实施例中,由Galois在用于块密码的运算的Galois/计数器模式(GCM)中所定义的GHASH算法可以被用于散列运算124和128中的散列算法。GCM散列函数的使用提供硬件和软件两者上的效率并且考虑了现有的实现努力的潜在再使用。在其他实施例中,任何伪随机散列函数可以被用于散列运算124和128。
在步骤108,使用第二XOR运算130和加密运算126计算第一密文部分E:E←B XOR CTR(K2,D)。在一个实施例中,CTR和加密运算126包括高级加密标准(AES)计数器模式加密的使用。在另一实施例中,OFB可以在步骤108使用并且可以用于加密运算126;OFB是运算的四种DES模式之一。当使用计数器模式时,计数器模式加密运算被配置为产生大小与目标数据相同的输出,如接下来所述,用XOR运算将计数器模式输出结合到该输出中。在可替换的实施例中,运算126可以是任何的块密码。
在步骤110,用第二散列函数128和第三XOR运算122计算第三中间值F:F←D XOR H(K3,E,Z)。第二散列运算128和在之前的表达式中的H与步骤106中所使用的是同一散列函数。在步骤112,使用解密运算118确定第二密文部分G,如G←D(K4,F)。
在步骤114,通过拼接G和E而创建完整的密文132。所产生的密文132可以被存储在网络协议消息中,存储在盘存储设备中或者用于各种其他的基于计算机的应用。使用这里的方法,密文132与明文101具有相同的长度。
在该描述中,E表示用作为集合{0,1}k的元素的密钥K对作为集合{0,1}w的元素的值X进行块密码加密,D(K,X)表示用作为集合{0,1}k的元素的密钥K对作为集合{0,1}w的元素的值X进行块密码解密。除了三轮以相反的顺序运行之外,解密运算D与加密运算E相同。
加密运算116和解密运算118可以包括任何伪随机排列;它们不需要具有如加密和解密运算的关系。加密运算116和解密运算118可以以硬件、软件、固件或组合的形式实现。在一硬件实现方式中,如果密钥K1和K4在各自的运算中被倒置,则相同的电路可以实现加密运算116和解密运算118两者。此外,在另一实施例中,加密运算116和解密运算118每个都可以包括任何的伪随机排列操作并且不需要具有加密—解密关系。
这里所描述的密钥K0至K4中的每一个密钥可以包括第一密钥和多个从第一密钥通过数学方法或通过计算导出的其他密钥。在该方法中,在加密开始前需要较少的密钥共享操作。或者,使用任何已知的密钥分配机制,可以预先将所有密钥提供给参与的处理元件。
3.2第二实施例——单个密钥
根据另一实施例,虽然运算的延伸密码本模式充当具有相关数据的任意长度块密码,但是使用单个密钥而不是每轮一个密钥。图2A是第二实施例的加密运算的框图,图2B是乘法运算的框图。为了清楚说明示例的目的,这里的描述假设使用128位的块密码。如果定义适当大小的有限域,则实施例可以使用其他块密码宽度。
第二实施例中所使用的两个主函数是域GF(2128)上的块密码加密和乘法。在下面的算法描述中,用密钥K对值X所进行的块密码加密表示为e(K,X),块密码解密表示为d(K,X)。符号E和D表示根据这里所描述的运算的延伸密码本模式的加密和解密。
块密码输入和输出中的位数用w表示。当使用AES时,w的值为128。两个元素X和Y∈GF(2128)的乘法表示为X·Y,X和Y的加法表示为XY。该域中的加法相当于按位的排他性或运算。在下面的独立部分中定义示例乘法运算。
在算法描述中,函数len(S)返回64位的串,该串包含描述函数的自变量S中的位数的非负整数,最低有效位在右边。表达式0l表示l个零的位串,A‖B表示两个位串A和B的拼接。位串被认为是从左边开始索引的,因此S的第零位是最左边的位。当S是位串并且0<=a<b<=len(S)时,S[a;b]表示S的长度为b-a的子串,该子串由S的a至b位组成。符号{}表示具有零长度的位串。
延伸密码本加密运算在表1中定义,解密运算在表2中定义,加密运算也在图2A中示出。表1和表2的算法使用块密码加密函数e和d以及散列函数h和伪随机函数c。如图2B所示,变量H、I、J和L是通过在计数器模式下运行函数e而从K导出的。可选地,变量H、I、J和L的值在算法的赋值之间存储,从而为降低计算负荷折衷选择少量存储。
                       表1-XCB加密运算
给出密钥K∈{0,1}k,明文P∈{0,1}m,其中m∈[w,239],以及相关数据Z∈{0,1}n,其中n∈[0,239],返回密文C∈{0,1}m
H←e(K,0w),I←e(K,0=w-1‖1),J←e(K,0w-2‖10),L←e(K,0w-2‖11)
A←P[0;w-1]
B←P[w;len(P)-1]
C←e(K,AI)
D←Ch(H,0w‖Z,B)
E←Bc(K,D,len(D))
F←Dh(H,Z‖L,E)
G←d(K,F)J
返回G‖E
                   表2-XCB解密运算
给出密钥K∈{0,1}k,密文C∈{0,1}m,其中m∈[w,239],以及相关数据Z∈{0,1}n,其中n∈[0,239],返回明文P∈{0,1}m
G←C[0;w-1]
E←C[w;len(C)-1]
F←e(K,GJ)
D←Fh(H,Z‖L,E)
B←Ec(K,D,len(D))
C←Dh(H,0w‖Z,B)
A←d(K,C)I
返回A‖B
函数c:{0,1}k×{0,1}w→{0,1}l,其中输出长度l由0<=l<=239限定,使用其w位输入作为初始计数器值,通过在计数器模式下运行块密码e而产生任意长度的输出。其定义为:
C(K,W,l)=E(K,W)‖E(K,incr(W))‖...‖MSBt(E(K,incrn-1(W))),
其中为了清楚起见使输出长度l成为显性参数。表达式
Figure A20058003160300171
是输出中w位的块的数目,t=l mod w是尾块中的位数。此外,函数incr:{0,1}w→{0,1}w是用来产生连续的计数器值的递增运算。递增函数将其自变量的最右边32位当作非负整数,最低有效位在右边,并且以232为模递增该值。
函数h:{0,1}w×{0,1}m×{0,1}n→{0,1}w,m∈[w,239],n∈[0,239]是由h(H,A,C)=Xm+n+1定义的,其中变量Xi∈{0,1}w,对于i=0,...,m+n+1被定义为:
Xi
0                                       对于i=0
(Xi-1Ai)·H                         对于i=1,...,m-1
(Xm-1(A* m‖0w-v))·H               对于i=m
(Xi-1Ci-m)·H                        对于i=m+1,...,m+n-1
(xm+n-1,(C* n‖0w-u))·H            对于i=m+n
(Xm+n,(len(A)‖len(C)))·H           对于i=m+n+1
在上述表达式中,Ai表示w位的子串A[(i-1)w;iw-1],Ci表示C[(i-1)w;iw-i]。因此,如果那些位串被分解成w位的块,则Ai和Ci分别是A和C的第i块。在用作运算的Galois/计数器模式(GCM)的组成部分的通用散列函数GHASH中提供类似的方法,除了GHASH像AES一样需要w=128。
域GF(2128)上的乘法被定义为关于位向量的运算以简化这里的详细说明。这样的定义不需要使用方法定义中的有限域数学。该域的背景信息和其表示法以及用于有效实现的策略在GCM规范:D.McGrew等人2004年1月的“The Galois/Counter Mode of Operation(GCM)”,Submission to NISTModes of Operation Process的第3和第4部分(在万维网上的域csrc.nist.gov的CryptoToolkit/modes/proposed modes目录中可在线得到)中提供。
每个域元素是128位的向量。元素X的第i位表示为Xi。最左边的位是X0,最右边的位是X127。乘法运算使用特定元素R=11100001‖0120,并且在表3中定义。函数rightshift()将其自变量的位右移一位。因此,任何时候W=rightshift(V),那么Wi=Vi-1对于1<=i<=127并且W0=0。
                    表3-用于GF(2128)的乘法
Z←0,V←X
for i=0 to 127 do
     if Yi=1 then
          Z←ZV
     end if
     if V127=0 then
          V←rightshift(V)
     else
          V←rightshift(V)R
     end if
 end for
 return Z
3.3示例应用
示例实施例可以应用到数个不同的应用。图3A是示出安全电信系统的框图,图3B是示出安全存储管理系统的框图。现在参照图3A,根据一个实施例,网络元件304包括实现图1B的方法的XCB逻辑306,该网络元件被耦合到第一网络305A和第二网络305B。第二网络元件310也被耦合到网络305B。网络305A和305B可以包括相同的网络。
网络元件304通过网络305A从上游网络元件(未示出)接收安全实时协议(SRTP)消息302。消息302被认为是明文消息。网络元件304用XCB逻辑306对SRTP消息302应用这里所描述的运算的延伸代码块模式。所产生的密文被封装成加密的SRTP消息308,加密的SRTP消息308与明文消息具有相同的长度或大小。然后网络元件304将加密的消息308转发给网络元件310,网络元件310用这里的技术对该消息进行解密或者用其他方式使用该消息。这样,这里的技术可以被应用到任何网络通信情况中,其中特定的消息发送协议不能允许由于加密而产生的消息扩展。
现在参照图3B,存储管理元件322容宿或者实现XCB逻辑306。存储管理元件322被耦合到大容量存储设备330,例如盘阵列或盘驱动器。
存储管理元件322从存储设备330、操作系统、中央处理器或其他处理元件接收盘块320以便存储在存储设备330中。存储管理元件322用XCB逻辑306将这里所描述的运算的延伸代码块模式应用到盘块320,从而创建加密的盘块324。加密的盘块324具有与盘块320的长度或大小相同的长度或大小。然后存储管理元件322将加密的盘块324存储在存储设备330中。
在所有这样的应用中,明文数据、段、中间结果数据、相关数据和密文中的每一项可以包括存储在电子数字存储设备中的数字值。此外,上面所描述的分开、加密、散列、XOR和其他操作可以在耦合到电子数字存储设备并且与数字数据值交互的电子数字数据处理装置中执行。
特定的应用可以在使用诸如安全RTP之类的协议的网络通信的环境中和在提供盘块的安全存储的存储管理等中实现。因此,这里的方法在技术领域内应用。
这里的方法还提供有用的、具体的和真实的结果。在一个实施例中,所述方法接收可以作为瞬时电子信号而在计算机中表示出的数据值。在一个实施例中,所述方法使用电子数字数据处理器来根据这里所描述的数据处理步骤操纵信号。因此,输入明文被以特定方式变成输出密文。输出密文也被表示为可以存储在诸如数字存储器之类的电子数字设备中的瞬时电子信号。因此,这里所描述的机器实现的数据操纵步骤可以操作存储在电子计算机存储器中的数据;改变数据引起电子存储器的单元、门和晶体管的状态上的变化;改变这些器件的状态意味着在原子能级上,电子电荷被施加到与特定存储器位的位置相关联的某些半导体材料上并且不施加到其他材料上;并且电荷上的这种改变是具体和真实的结果。
3.4安全性证明
可以证明这里的方法满足上面所确定的目标并且是安全的。这里的方法的安全性证明在McGrew等人的论文“Extended Codebook Mode(XCB):Security without Data Expansion”(第3部分,“Security”)中给出,这篇论文在美国专利申请的附录中再现,本申请要求该美国专利申请的优先权。
3.5实施例的好处
所公开的方法在其效率、其处理任意明文长度的能力和其接受另外输入的能力上是独特的。所述方法提供运算的块密码模式,该模式用另外的输入实现无展性密码。广泛地看,这里的方法从而明文数据通过三次以产生密文。两次通过使用GF(2128)上的通用散列法,一次通过使用计数器模式加密。与所有基于Luby-Rackoff和Naor-Reingold的设计不同,这里的方法部分地依赖于块密码的可逆性来获得安全性。
这里所公开的模式可以用硬件和软件实现,并且其具有与类似的模式相比相对低的计算成本:其仅需要n+1次块密码调用和GF(2w)上的2n次乘法,其中w是块密码输入和输出中的位数。该模式还具有数个有用的属性:其接受任意大小的明文和相关数据,包括长度至少为w位的任何明文。该属性允许这里的模式保护短数据,例如安全RTP中的普通20字节G.729语音编解码器。
3.6与过去的方法的某些差别
XCB比任何其他的无展性密码更高效,因为它需要较少的计算。仅次于最好模式的运算模式是EME模式,EME模式几乎进行两倍的计算。此外,XCB更适合于高效的硬件实现方式,因为它可以更容易地被并行化和流水线化。XCB还接收另外的输入,该另外的输入可以用来防止密文置换攻击。
这里的方法几乎是最好的竞争者效率的两倍。这里的方法在AES与伪随机排列不可区分的合理假设下也被证明为安全的。
这里的方法具有很多应用。例如,该方法可以用在安全RTP中,其中它对于无线语音或者在CET中或者在分组或数据净荷的扩展不可行或不被协议允许的任何其他协议中尤其合适。
该方法还可以用在存储联网中或者扩展不可行的数据存储系统中。该方法可以用在用于本地和远程存储两者的盘块加密中。
4.0实现机制—硬件概述
图4是示出了本发明的实施例可以在上面实现的计算机系统200的框图。计算机系统200包括总线202或用于传送信息的其他通信机制以及与总线202耦合的用于处理信息的处理器204。计算机系统200还包括诸如随机存取存储器(“RAM”)或其他动态存储设备之类的主存储器206,主存储器206耦合到总线202并且用于存储信息和将由处理器204执行的指令。主存储器206也可以用于在执行将由处理器204执行的指令期间存储临时变量或其他中间信息。计算机系统200还包括耦合到总线202的只读存储器(“ROM”)208或其他静态存储设备,用于存储用于处理器204的静态信息和指令。诸如磁盘或光盘之类的存储设备210被提供并且被耦合到总线202,用于存储信息和指令。
计算机系统200可以经由总线202耦合到显示器212,显示器212例如是阴极射线管(“CRT”),用于将信息显示给计算机用户。包括字母数字键和其他键的输入设备214被耦合到总线202,用于将信息和命令选择传送给处理器204。另一类型的用户输入设备是光标控制设备216,例如鼠标、跟踪球、触针或光标方向键,用于将方向信息和命令选择传送给处理器204并且用于控制光标在显示器212上的移动。该输入设备一般具有第一轴(例如x)和第二轴(例如y)两个轴上的两个自由度,允许设备在平面上指定位置。
本发明涉及用于加密方法的计算机系统200的使用。根据本发明的一个实施例,响应于处理器204执行包含在主存储器206中的一个或多个指令的一个或多个序列而由计算机系统200提供加密方法。这样的指令可以从诸如存储设备210之类的另一计算机可读介质读入到主存储器206中。包含在主存储器206中的指令序列的执行从而处理器204执行这里所描述的处理步骤。在可替换的实施例中,可以使用硬连接的电路代替软件指令或者使用硬连接的电路与软件指令的组合来实现本发明。因此,本发明的实施例不局限于硬件电路和软件的具体组合。
这里所使用的术语“计算机可读介质”指的是参与将指令提供给处理器204执行的任何介质。这样的介质可以采用多种形式,包括但不局限于非易失性介质、易失性介质和传输介质。非易失性介质例如包括光盘或磁盘,例如存储设备210。易失性介质包括动态存储器,例如主存储器206。传输介质包括同轴电缆、铜线和光纤,包括包含总线202的线路。传输介质也可以采用声波或光波的形式,例如在无线电波或红外数据通信期间产生的那些波。
计算机可读介质的普通形式例如包括软盘、柔性盘、硬盘、磁带或任何其他磁介质,CD-ROM、任何其他光介质,穿孔卡、纸带、任何其他具有孔图案的物理介质,RAM、PROM和EPROM,FLASH-EPROM、任何其他存储器芯片或存储器盒(memory cartridge),下文所描述的载波或计算机可以对其读取的任何其他介质。
在将一个或多个指令的一个或多个序列运载给处理器204执行的过程中可以涉及各种形式的计算机可读介质。例如,指令最初可以在远程计算机的磁盘上运载。远程计算机可以将指令载入到其动态存储器中并且用调制解调器在电话线上发送指令。计算机系统200本地的调制解调器可以接收电话线上的数据并且使用红外线发射器将数据转换为红外信号。红外检测器可以接收以红外信号运载的数据,适当的电路可以将数据放在总线202上。总线202将数据运载给主存储器206,处理器206从主存储器206取回并执行指令。由主存储器206所接收的指令可以或者在处理器204执行之前,或者在处理器204执行之后被选择性地存储在存储设备210上。
计算机系统200还包括耦合到总线202的通信接口218。通信接口218提供耦合到网络链路220的双向数据通信,网络链路220被连接到本地网222。例如,通信接口218可以是提供对相应类型的电话线的数据通信连接的综合业务数字网(“ISDN”)卡或调制解调器。作为另一示例,通信接口218可以是提供对兼容LAN的数据通信连接的局域网(“LAN”)卡。也可以实现无线链路。在任何这样的实现方式中,通信接口218发送和接收运载表示各种类型信息的数字数据流的电信号、电磁信号或光信号。
网络链路220一般提供经过一个或多个网络到其他数据设备的数据通信。例如,网络链路220可以提供经过本地网222到主计算机224或到因特网服务提供商(“ISP”)226操作的数据设备的连接。ISP 226又提供经过现在一般称为“因特网”228的全球分组数据通信网的数据通信服务。本地网222和因特网228都使用运载数字数据流的电信号、电磁信号或光信号。经过各种网络的信号和在网络链路220上并且经过通信接口218的信号将数字数据运载到计算机系统200或者从计算机系统200运载数字数据,它们是运输信息的载波的示例性形式。
计算机系统200可以经过(一个或多个)网络、网络链路220和通信接口218发送消息并接收数据,包括程序代码。在因特网示例中,服务器230可以经过因特网228、ISP 226、本地网222和通信接口218发送用于应用程序的请求代码。根据本发明,一个这样的下载应用为提供这里所描述的加密方法作准备。
当代码被接收并且/或者被存储在存储设备210或其他非易失性存储设备以稍后执行时,处理器204可以执行所接收的代码。在这种方式下,计算机系统200可以获得载波形式下的应用代码。
在上述具体描述中,参考本发明的具体实施例对本发明进行了描述。然而,将会清楚可以对其做出各种修改和变化,而不脱离本发明更宽的精神和范围。因此,说明书和附图被认为是说明性意义上的,而不是限制性意义上的。

Claims (29)

1.一种数据通信方法,包括计算机实现的以下步骤:
在将发送器和接收器彼此耦合的电子数字电信链路上接收包括输入明文数据的第一消息;
将所述明文数据分离成第一明文数据段和第二明文数据段;
使用块密码加密和第一密钥对所述第一明文数据段加密,从而创建第一加密段;
对所述第一加密段和所述第二明文数据段与相关数据元素的基于第二密钥的散列施加排他性或运算,从而创建第一中间结果数据;
对所述第一中间结果数据和第三密钥施加加密运算,从而创建加密输出;
对所述加密输出和所述第二明文数据段施加排他性或运算,从而创建第二中间结果数据;
对所述第一中间结果数据和所述第二中间结果与所述相关数据元素的使用第四密钥的散列施加排他性或运算,从而创建第三中间结果数据;以及
创建所述第二中间结果数据和使用第五密钥对第三中间结果数据的解密结果的拼接作为输出密文;
将所述输出密文在第二消息中通过所述链路发送给所述接收器;
其中所述明文数据、段、中间结果数据、相关数据和密文中的每一项是存储在电子数字存储设备中的数字值;
其中所述分离、加密、施加和创建操作在耦合到所述电子数字存储设备并且与所述数字数据值交互的电子数字数据处理装置中执行。
2.一种方法,包括计算机实现的以下步骤:
接收明文数据;
将所述明文数据分离成第一明文数据段A和第二明文数据段B;
使用块密码加密和第一密钥对所述第一明文数据段A加密,从而创建第一加密段C;
对所述第一加密段C和所述第二明文数据段B与相关数据元素Z的基于第二密钥的散列施加排他性或运算,从而创建第一中间结果数据D;
对所述第一中间结果数据D和第三密钥施加加密运算,从而创建加密输出;
对所述加密输出和所述第二明文数据段B施加排他性或运算,从而创建第二中间结果数据E;
对所述第一中间结果数据D和所述第二中间结果与所述相关数据元素Z的使用第四密钥的散列施加排他性或运算,从而创建第三中间结果数据F;以及
创建所述第二中间结果数据E和使用第五密钥对第三中间结果数据F的解密结果的拼接作为输出密文。
3.如权利要求2所述的方法,其中所述第二密钥、第三密钥、第四密钥和第五密钥是基于所述第一密钥和密钥导出过程而确定的。
4.如权利要求2所述的方法,包括通过以相反的顺序执行权利要求1所述的步骤而对所述密文进行解密。
5.如权利要求2所述的方法,其中所述明文包括存储在非易失性存储器中的数据块,所述方法还包括将所述密文存储在所述非易失性存储器中。
6.如权利要求2所述的方法,其中所述明文包括存储在盘驱动设备中的数据块,所述方法还包括将所述密文存储在所述盘驱动设备中。
7.如权利要求2所述的方法,其中所述明文包括符合不可扩展数据协议的分组的数据净荷,所述方法还包括将所述密文存储在所述分组中。
8.如权利要求2所述的方法,其中所述明文包括符合安全实时协议的分组的数据净荷,所述方法还包括将所述密文存储在所述分组中。
9.如权利要求2所述的方法,其中所述加密运算是AES计数器模式加密。
10.如权利要求2所述的方法,其中所述加密运算是AES OSB块密码模式。
11.一种装置,包括:
用于接收明文数据的装置;
用于将所述明文数据分离成第一明文数据段和第二明文数据段的装置;
用于使用块密码加密和第一密钥对所述第一明文数据段加密,从而创建第一加密段的装置;
用于对所述第一加密段和所述第二明文数据段与相关数据元素的基于第二密钥的散列施加排他性或运算,从而创建第一中间结果数据的装置;
用于对所述第一中间结果数据和第三密钥施加计数器模式的加密运算,从而创建计数器模式的输出的装置;
用于对所述计数器模式的输出和所述第二明文数据段施加排他性或运算,从而创建第二中间结果数据的装置;
用于对所述第一中间结果数据和所述第二中间结果与所述相关数据元素的使用第四密钥的散列施加排他性或运算,从而创建第三中间结果数据的装置;以及
用于创建所述第二中间结果数据和使用第五密钥对第三中间结果数据的解密结果的拼接作为输出密文的装置。
12.如权利要求11所述的装置,其中所述第二密钥、第三密钥、第四密钥和第五密钥是基于所述第一密钥和密钥导出过程而确定的。
13.如权利要求11所述的装置,包括通过以相反的顺序执行权利要求1所述的步骤而对所述密文进行解密。
14.如权利要求11所述的装置,其中所述明文包括存储在非易失性存储器中的数据块,所述装置还将所述密文存储在所述非易失性存储器中。
15.如权利要求11所述的装置,其中所述明文包括存储在盘驱动设备中的数据块,所述装置还将所述密文存储在所述盘驱动设备中。
16.如权利要求11所述的装置,其中所述明文包括符合不可扩展数据协议的分组的数据净荷,所述装置还将所述密文存储在所述分组中。
17.如权利要求11所述的装置,其中所述明文包括符合安全实时协议的分组的数据净荷,所述装置还将所述密文存储在所述分组中。
18.如权利要求11所述的装置,其中所述加密运算是AES计数器模式加密。
19.如权利要求11所述的装置,其中所述加密运算是AES OSB块密码模式。
20.一种加密装置,包括:
网络接口,该网络接口耦合到用于从其接收一个或多个分组流的数据网络;
处理器;
指令的一个或多个存储序列,在由所述处理器执行时,使得所述处理器执行以下步骤:
接收明文数据;
将所述明文数据分离成第一明文数据段A和第二明文数据段B;
使用块密码加密和第一密钥对所述第一明文数据段A加密,从而创建第一加密段C;
对所述第一加密段C和所述第二明文数据段B与相关数据元素Z的基于第二密钥的散列施加排他性或运算,从而创建第一中间结果数据D;
对所述第一中间结果数据D和第三密钥施加加密运算,从而创建加密输出;
对所述加密输出和所述第二明文数据段B施加排他性或运算,从而创建第二中间结果数据E;
对所述第一中间结果数据D和所述第二中间结果与所述相关数据元素Z的使用第四密钥的散列施加排他性或运算,从而创建第三中间结果数据F;以及
创建所述第二中间结果数据E和使用第五密钥对第三中间结果数据F的解密结果的拼接作为输出密文。
21.如权利要求20所述的装置,其中所述第二密钥、第三密钥、第四密钥和第五密钥是基于所述第一密钥和密钥导出过程而确定的。
22.如权利要求20所述的装置,包括通过以相反的顺序执行权利要求1所述的步骤而对所述密文进行解密。
23.如权利要求20所述的装置,其中所述明文包括存储在非易失性存储器中的数据块,所述装置还将所述密文存储在所述非易失性存储器中。
24.如权利要求20所述的装置,其中所述明文包括存储在盘驱动设备中的数据块,所述装置还将所述密文存储在所述盘驱动设备中。
25.如权利要求20所述的装置,其中所述明文包括符合不可扩展数据协议的分组的数据净荷,所述装置还将所述密文存储在所述分组中。
26.如权利要求20所述的装置,其中所述明文包括符合安全实时协议的分组的数据净荷,所述装置还将所述密文存储在所述分组中。
27.如权利要求20所述的装置,其中所述加密运算是AES计数器模式加密。
28.如权利要求20所述的装置,其中所述加密运算是AES OSB块密码模式。
29.一种将明文加密成密文的方法,该方法包括计算机实现的以下步骤:
接收所述明文和辅助数据值;
将所述明文分离成第一明文部分和第二明文部分;
使用GF(2128)上的通用散列函数从所述第二明文部分和所述辅助值产生第一散列值;
结合所述第一散列值对所述第一明文部分进行计数器模式加密以产生加密输出;
结合所述第二明文部分并使用所述辅助值从所述加密输出产生第二散列值;
基于(a)所述第二明文部分与所述加密输出的组合和(b)与所述第一明文部分结合的所述第二散列值创建并存储所述密文。
CN2005800316037A 2004-10-20 2005-10-18 加密方法 Expired - Fee Related CN101061661B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US62087704P 2004-10-20 2004-10-20
US60/620,877 2004-10-20
US11/201,626 US7418100B2 (en) 2004-10-20 2005-08-10 Enciphering method
US11/201,626 2005-08-10
PCT/US2005/037877 WO2006045038A2 (en) 2004-10-20 2005-10-18 Enciphering method

Publications (2)

Publication Number Publication Date
CN101061661A true CN101061661A (zh) 2007-10-24
CN101061661B CN101061661B (zh) 2010-10-27

Family

ID=36203708

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800316037A Expired - Fee Related CN101061661B (zh) 2004-10-20 2005-10-18 加密方法

Country Status (4)

Country Link
US (1) US7418100B2 (zh)
EP (1) EP1803244B1 (zh)
CN (1) CN101061661B (zh)
WO (1) WO2006045038A2 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106850219A (zh) * 2017-01-16 2017-06-13 宇龙计算机通信科技(深圳)有限公司 一种数据处理方法及终端
CN107534549A (zh) * 2015-03-20 2018-01-02 慧与发展有限责任合伙企业 数据流字块加密
CN107615702A (zh) * 2016-03-24 2018-01-19 慧与发展有限责任合伙企业 文本加密
CN107615273A (zh) * 2015-12-04 2018-01-19 慧与发展有限责任合伙企业 组合数据块的散列
CN108885675A (zh) * 2016-01-15 2018-11-23 布洛克钱恩阿西克斯有限责任公司 包括电路编码变换函数的加密asic
CN111310211A (zh) * 2020-02-19 2020-06-19 成都三零凯天通信实业有限公司 一种商密sm4算法加密数据库的方法
CN113076562A (zh) * 2021-05-08 2021-07-06 北京炼石网络技术有限公司 基于gcm加密模式的数据库加密字段模糊检索方法
CN115484131A (zh) * 2022-08-31 2022-12-16 江苏奥立信数字科技有限公司 物联网网关以及用于该物联网网关的设备数据存储系统

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100675837B1 (ko) * 2004-12-13 2007-01-29 한국전자통신연구원 고속 gcm-aes 블록 암호화 장치 및 방법
US8094814B2 (en) * 2005-04-05 2012-01-10 Broadcom Corporation Method and apparatus for using counter-mode encryption to protect image data in frame buffer of a video compression system
JP2007086170A (ja) * 2005-09-20 2007-04-05 Nec Corp 汎用ハッシュ関数族計算装置、方法、プログラム、および共有鍵生成システム
US9361617B2 (en) * 2008-06-17 2016-06-07 Verifone, Inc. Variable-length cipher system and method
US8036377B1 (en) * 2006-12-12 2011-10-11 Marvell International Ltd. Method and apparatus of high speed encryption and decryption
US9209967B2 (en) * 2007-03-12 2015-12-08 Exelis, Inc. Precalculated encryption key
US7773753B2 (en) * 2007-06-28 2010-08-10 Aladdin Knowledge Systems Ltd. Efficient remotely-keyed symmetric cryptography for digital rights management
US7827408B1 (en) * 2007-07-10 2010-11-02 The United States Of America As Represented By The Director Of The National Security Agency Device for and method of authenticated cryptography
US20090080646A1 (en) * 2007-09-21 2009-03-26 Chih-Hsu Yen Method And Architecture For Parallel Calculating Ghash Of Galois Counter Mode
US20090168994A1 (en) * 2007-12-26 2009-07-02 Heuss Michael R Method for providing stronger encryption using conventional ciphers
US8548171B2 (en) * 2009-02-27 2013-10-01 Cisco Technology, Inc. Pair-wise keying for tunneled virtual private networks
US8983066B2 (en) * 2009-02-27 2015-03-17 Cisco Technology, Inc. Private pairwise key management for groups
US8687802B2 (en) * 2009-03-30 2014-04-01 The Regents Of The University Of California Method and system for accelerating the deterministic enciphering of data in a small domain
US8867747B2 (en) * 2009-03-31 2014-10-21 Cisco Technology, Inc. Key generation for networks
US8526605B2 (en) * 2009-10-09 2013-09-03 Seagate Technology Llc Data encryption to provide data security and memory cell bit wear leveling
DE102009050493A1 (de) * 2009-10-23 2011-04-28 Röllgen, Bernd Blockdatenverschlüsselungsverfahren
JP5365750B2 (ja) * 2011-01-31 2013-12-11 日本電気株式会社 ブロック暗号化装置、復号装置、暗号化方法、復号方法およびプログラム
JP5845824B2 (ja) * 2011-11-04 2016-01-20 富士通株式会社 暗号化プログラム、復号化プログラム、暗号化方法、復号化方法、システム、コンテンツの生成方法およびコンテンツの復号化方法
US8879731B2 (en) * 2011-12-02 2014-11-04 Adobe Systems Incorporated Binding of protected video content to video player with block cipher hash
US8903088B2 (en) 2011-12-02 2014-12-02 Adobe Systems Incorporated Binding of protected video content to video player with encryption key
US20130168450A1 (en) * 2011-12-30 2013-07-04 Clay W. von Mueller Format preserving cipher system and method
GB201206636D0 (en) * 2012-04-16 2012-05-30 Maidsafe Net Ltd Method of encrypting data
WO2013161841A1 (ja) * 2012-04-24 2013-10-31 日本電気株式会社 フォーマット保存暗号化装置、方法およびプログラム、復号化装置、方法およびプログラム
US20140044262A1 (en) * 2012-08-09 2014-02-13 Cisco Technology, Inc. Low Latency Encryption and Authentication in Optical Transport Networks
US9064318B2 (en) 2012-10-25 2015-06-23 Adobe Systems Incorporated Image matting and alpha value techniques
US9355649B2 (en) 2012-11-13 2016-05-31 Adobe Systems Incorporated Sound alignment using timing information
US10638221B2 (en) 2012-11-13 2020-04-28 Adobe Inc. Time interval sound alignment
US9201580B2 (en) 2012-11-13 2015-12-01 Adobe Systems Incorporated Sound alignment user interface
CN103810439B (zh) 2012-11-14 2016-06-08 纬创资通股份有限公司 密码输入系统与密码输入方法
US9076205B2 (en) 2012-11-19 2015-07-07 Adobe Systems Incorporated Edge direction and curve based image de-blurring
US10249321B2 (en) 2012-11-20 2019-04-02 Adobe Inc. Sound rate modification
US8897588B2 (en) 2012-11-20 2014-11-25 Adobe Systems Incorporated Data-driven edge-based image de-blurring
US9451304B2 (en) 2012-11-29 2016-09-20 Adobe Systems Incorporated Sound feature priority alignment
US9135710B2 (en) 2012-11-30 2015-09-15 Adobe Systems Incorporated Depth map stereo correspondence techniques
US10455219B2 (en) 2012-11-30 2019-10-22 Adobe Inc. Stereo correspondence and depth sensors
US9208547B2 (en) 2012-12-19 2015-12-08 Adobe Systems Incorporated Stereo correspondence smoothness tool
US10249052B2 (en) 2012-12-19 2019-04-02 Adobe Systems Incorporated Stereo correspondence model fitting
US9214026B2 (en) 2012-12-20 2015-12-15 Adobe Systems Incorporated Belief propagation and affinity measures
WO2016027454A1 (ja) * 2014-08-20 2016-02-25 日本電気株式会社 認証暗号化方法、認証復号方法および情報処理装置
US10305689B2 (en) * 2014-12-04 2019-05-28 Nec Corporation Encryption apparatus, decryption apparatus, cryptography processing system, encryption method, decryption method, encryption program, and decryption program
US10075291B1 (en) 2015-05-27 2018-09-11 Citigroup Technology, Inc. Data deduplication and compression evaluation methods and systems
US9887834B1 (en) 2015-05-27 2018-02-06 Citigroup Technology, Inc. Data deduplication and compression evaluation methods and systems
US9614668B1 (en) * 2016-09-14 2017-04-04 ISARA Corporation Conversion schemes for cryptography systems
CN111052670B (zh) * 2017-09-01 2024-02-09 三菱电机株式会社 加密装置、解密装置、加密方法、解密方法和计算机能读取的存储介质
US10454681B1 (en) 2017-11-17 2019-10-22 ISARA Corporation Multi-use key encapsulation processes
RU2666303C1 (ru) 2017-12-14 2018-09-06 Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" Способ и устройство для вычисления хэш-функции
US10061636B1 (en) * 2017-12-22 2018-08-28 ISARA Corporation Conversion schemes for public key cryptosystems
US10031795B1 (en) * 2017-12-22 2018-07-24 ISARA Corporation Using conversion schemes in public key cryptosystems
EP3744103B1 (en) 2018-01-25 2024-03-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Efficient sub-picture extraction
US10819510B2 (en) * 2018-02-06 2020-10-27 Wickr Inc. Facilitating communications using hybrid cryptography
US10841086B2 (en) 2018-02-06 2020-11-17 Wickr, Inc. Facilitating communications using hybrid cryptography
US11153094B2 (en) * 2018-04-27 2021-10-19 EMC IP Holding Company LLC Secure data deduplication with smaller hash values
US10904217B2 (en) 2018-05-31 2021-01-26 Cisco Technology, Inc. Encryption for gateway tunnel-based VPNs independent of wan transport addresses

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6266771B1 (en) 1997-02-10 2001-07-24 The Regents Of The University Of California Probabilistic signature scheme
US6061449A (en) * 1997-10-10 2000-05-09 General Instrument Corporation Secure processor with external memory using block chaining and block re-ordering
US6081598A (en) * 1997-10-20 2000-06-27 Microsoft Corporation Cryptographic system and method with fast decryption
US20020051537A1 (en) 2000-09-13 2002-05-02 Rogaway Phillip W. Method and apparatus for realizing a parallelizable variable-input-length pseudorandom function
US7046802B2 (en) 2000-10-12 2006-05-16 Rogaway Phillip W Method and apparatus for facilitating efficient authenticated encryption
US6959346B2 (en) * 2000-12-22 2005-10-25 Mosaid Technologies, Inc. Method and system for packet encryption
US7113594B2 (en) 2001-08-13 2006-09-26 The Board Of Trustees Of The Leland Stanford University Systems and methods for identity-based encryption and related cryptographic techniques
US20030123667A1 (en) * 2001-12-28 2003-07-03 Cable Television Laboratories, Inc. Method for encryption key generation
US20040131182A1 (en) 2002-09-03 2004-07-08 The Regents Of The University Of California Block cipher mode of operation for constructing a wide-blocksize block cipher from a conventional block cipher

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107534549A (zh) * 2015-03-20 2018-01-02 慧与发展有限责任合伙企业 数据流字块加密
CN107534549B (zh) * 2015-03-20 2020-06-30 慧与发展有限责任合伙企业 可读存储介质、用于数据流字块加密的方法及系统
US10742400B2 (en) 2015-03-20 2020-08-11 Hewlett Packard Enterprise Development Lp Datastream block encryption
CN107615273A (zh) * 2015-12-04 2018-01-19 慧与发展有限责任合伙企业 组合数据块的散列
CN108885675A (zh) * 2016-01-15 2018-11-23 布洛克钱恩阿西克斯有限责任公司 包括电路编码变换函数的加密asic
US11070356B2 (en) 2016-03-24 2021-07-20 Hewlett Packard Enterprise Development Lp Text encryption
CN107615702A (zh) * 2016-03-24 2018-01-19 慧与发展有限责任合伙企业 文本加密
CN106850219B (zh) * 2017-01-16 2020-06-05 宇龙计算机通信科技(深圳)有限公司 一种数据处理方法及终端
CN106850219A (zh) * 2017-01-16 2017-06-13 宇龙计算机通信科技(深圳)有限公司 一种数据处理方法及终端
CN111310211A (zh) * 2020-02-19 2020-06-19 成都三零凯天通信实业有限公司 一种商密sm4算法加密数据库的方法
CN113076562A (zh) * 2021-05-08 2021-07-06 北京炼石网络技术有限公司 基于gcm加密模式的数据库加密字段模糊检索方法
CN115484131A (zh) * 2022-08-31 2022-12-16 江苏奥立信数字科技有限公司 物联网网关以及用于该物联网网关的设备数据存储系统
CN115484131B (zh) * 2022-08-31 2024-04-12 江苏奥立信数字科技有限公司 物联网网关以及用于该物联网网关的设备数据存储系统

Also Published As

Publication number Publication date
US20070081668A1 (en) 2007-04-12
EP1803244B1 (en) 2014-10-15
US7418100B2 (en) 2008-08-26
CN101061661B (zh) 2010-10-27
EP1803244A4 (en) 2007-12-12
WO2006045038A3 (en) 2007-06-07
EP1803244A2 (en) 2007-07-04
WO2006045038A2 (en) 2006-04-27

Similar Documents

Publication Publication Date Title
CN101061661A (zh) 加密方法
JP5526747B2 (ja) 復号化装置、暗号化装置、復号化方法、暗号化方法、および通信システム
EP3157225B1 (en) Encrypted ccnx
CN112398651B (zh) 一种量子保密通信方法、装置、电子设备以及存储介质
CN1992589A (zh) 加扰和解扰数据单元的方法
CN1168041A (zh) 加密和解密方法以及加密和解密装置
CN1938980A (zh) 用于密码加密处理数据的方法和设备
JP2001016196A (ja) 多重アファイン鍵を用いる暗号化・復号化方法、認証方法、及びこれを用いる各装置
WO2004071006A1 (ja) ブロードキャスト暗号鍵配布システム
WO2006086554A2 (en) Methods and systems for incremental crypto processing of fragmented packets
CN1633778A (zh) 用于数据处理系统内安全性的方法和装置
CN1801693A (zh) 分组加密算法中对短分组的处理方法
JP2008538875A (ja) グループキー発生方法及び装置
Kushwaha et al. A novel selective encryption method for securing text over mobile ad hoc network
KR20120092068A (ko) 제어 워드들을 생성하는 방법 및 장치
JP6468567B2 (ja) 鍵交換方法、鍵交換システム
US8458452B1 (en) System and method for encryption and decryption of data transferred between computer systems
CN110730366B (zh) 基于位运算的轻量级视频流加密、解密方法及加解密方法
CN1567878A (zh) 一种在无线局域网中进行数据完整性保护的方法
Knudsen Dynamic encryption
JP4664692B2 (ja) 暗号化方法、復号方法、暗号化装置、復号装置、暗号装置、およびプログラム
CN111970245B (zh) 一种异构分层的匿名通信网络构建方法及装置
Kumari Enhancing the quantum communication channel using a novel quantum binary salt blowfish strategy
JP3923267B2 (ja) 乱数生成装置及び暗号化システム
JP2005167635A (ja) 装置、及び、データ送受信方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101027

Termination date: 20211018