CN1682483A - 用于数据处理系统的有效加密和认证 - Google Patents
用于数据处理系统的有效加密和认证 Download PDFInfo
- Publication number
- CN1682483A CN1682483A CNA038224119A CN03822411A CN1682483A CN 1682483 A CN1682483 A CN 1682483A CN A038224119 A CNA038224119 A CN A038224119A CN 03822411 A CN03822411 A CN 03822411A CN 1682483 A CN1682483 A CN 1682483A
- Authority
- CN
- China
- Prior art keywords
- blocks
- authentication
- piece
- ciphertext
- block
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3242—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
提出了加密和认证数据的方法和装置,其中一些数据被加密而一些数据不被加密,但所有的数据被认证。根据一数据块是占据明码位置(442A、442B、442C)或密文位置(444A、444B、444C、444D)为认证块使用不同的公式。所述认证块于是被组合用于形成校验和,校验和被加密以形成认证标记。
Description
背景
技术领域
本发明涉及数据处理系统领域,尤其涉及在数据处理系统中提高安全性。
背景技术
在多种不同的领域中,诸如电子商务、通信和广播,安全是一个主要关注的问题。 安全性措施提供责任性、公正性、精确性、机密性、可操作性和其它这些领域中的数据处理系统和信息系统所期望的标准。提供这种安全性的加密方法通常根据两个目的来归类:加密和认证。加密是使得数据对未被认证方不可读的技术。认证是验证数据完整性的技术。验证数据的完整性涉及验证数据作者的身份和/或验证数据是否被改变。
加密系统通常被称为密码系统并具有对称或非对称的性质。对称加密系统使用密钥来加密信息并使用相同的密钥来解密经加密的信息。非对称加密系统,诸如公开密钥密码系统,使用第一密钥来加密信息并使用不同的密钥来解码经加密的信息。
在许多对称密码系统中,一密钥被用作加密功能,一分开的密钥被用作认证功能。因此在使用对称密码系统的数据处理系统中,加密和认证是作为两个独立的实体来执行的。由于认证需要大约与加密相同的处理功率,总的处理量等于两次加密数据所需的处理量。在运作在功率有限或硬件有限环境中的数据处理系统中,诸如蜂窝电话、个人数字助理或其它可携带的通信设备,所期望的是具有可以将加密和认证作为单个实体来执行的密码系统,以此来降低设备上计算负载。
在Springer-Verlag 2001的“计算机科学”第2045卷中的讲稿EUROCRYPT 2001“密码术的发展”中由Charanjit Jutla所著的论文“Encryption Modes withAlmost Free Message Integrity”中,提出了可以以需要与单独加密差不多处理的方式来加密消息和认证经加密的消息的密码系统。换而言之,可以使用单个实体来执行加密和认证。因此,降低了提供安全性所需的处理资源量。
Jutla密码系统被设计成加密所有要发送的数据。然而,在某些应用中,消息的所有数据必须被加密的要求是不希望的。例如,在诸如IPSec等通信协议中,加密所有的数据是无效的。数据的头部必须未经加密发送用于寻址的目的。IPSec的原理是在题为“Security Architecture for Internet Protocol”的RFC 1825、题为“IP Authentication Header”的RFC 1826和题为“IP Encapsulating SecurityPayload(ESP)”的RFC 1827中规定,所有这些是由R.Atkinson在1995年8月提交的。
因此,需要一种用于加密和认证数据的安全有效的系统,其中消息的所有数据比特不需要被加密。
发明内容
这里提出了解决上述需要的方法和装置。特别地,提出了允许数据消息的某些部分以明文发送,数据消息的某些部分以密文发送,并且使用单一的认证标记来验证数据消息的明文部分和密文部分的方法和装置。
一方面,提出了作为单个实体加密和认证数据的方法,所述方法包含:将数据安排到多个明文块中,每个明文块根据密码块大小来定尺寸;指定至少一个明码(cleartext)位置,对此至少一个密文块与相应的明文块一样;确定使用临时值和第一密钥的多个噪声块;确定多个中间密文块,其中第一中间密文块对应于经加密的临时值,且剩余的中间密文确定如下:对于由明码位置指定的多个明文块的每一个,将明文块与相应的噪声块相结合;以及对于不是由明码位置指定的多个明文块的每一个,使用明文块和前面的中间密文块来构成中间密文块,并接着使用第二密钥加密该中间明文块;确定多个密文块,其中所述多个密文块确定如下:将第一密文块设置为等于第一中间密文块;将每个由明码位置指定的每个密文块设置为等于相应的原文块;以及通过将相应的中间密文块与相应的噪声块相结合来确定每个剩余密文块;确定多个认证块,其中所述多个认证块确定如下:如果认证块与不是由明码位置指定的明文块相关联,那么将认证块设置为等于原文块;如果认证块与由明码位置指定的原文块相关联,那么通过解密相关联的中间密文块并将经解密的关联中间密文块与前面的中间密文块相结合来确定认证块;通过将所有多个认证块与噪声块相结合并接着加密该结合的结果来计算认证标记;以及将该认证标记添加到多个密文块中。
在另一方面,提出了解密和验证多个伴有认证标记的传输块的方法,所述方法包含:使用临时值和第一密钥确定多个噪声块;通过将多个传输块的每一个与相应的噪声块相结合来确定多个中间密文块;确定多个认证块,其中所述多个认证块的每一个通过解密相应的中间密文块并接着将经解密的中间密文块与前面的中间密文块相结合来构成;将不与任一预定的明码位置相关联的多个认证块的每一个设置为明文块;将与任一预定的明码位置相关联的多个传输块的每一个设置为明文块;以及通过确定最后认证块是否等于所有其它认证块的组合来验证认证标记。
在另一方面,提出了安全的数据传输的方法;其中第一部分的数据传输是作为明文发送的,第二部分的数据传输是作为密文发送的,并且所有的数据传输是经过认证的,所述方法包括:生成一组明码位置;将第一部分数据传输和第二部分数据传输加密为密文,其中所述第一部分数据传输由该组明码位置指定,而第二部分数据传输不与该组明码位置中任一相关联;通过叠代过程确定多个中间密文块;生成多个认证块,其中每个多个认证块的第一部分被设置为等于数据传输的相应成员的第一部分,并且每个多个认证块的第二部分从将相应的中间密文块和前一中间密文块相结合导出;通过将多个认证块的每一个与噪声块相结合并加密结合的结果来生成认证标记;发送该明文、密文和认证标记,其中所述明文是由该组明码位置集合指定的数据传输的第一部分。
在另一方面,提出了安全的数据传输的装置;其中第一部分的数据传输是作为明文发送的,第二部分的数据传输是作为密文发送的,并且所有的数据传输是经过认证的,所述方法包含:用于生成一组明码位置的装置;用于将第一部分数据传输和第二部分数据传输加密为密文的装置,其中所述第一部分数据传输由该组明码位置指定,而第二部分数据传输不与该组明码位置中任一相关联;用于通过叠代过程确定多个中间密文块的装置。
附图说明
图1A、1B和1C是基本密码系统、对称加密系统和非对称加密系统的框图。
图2A和2B分别是对称认证系统和非对称认证系统的框图。
图3是完整性认识(Integrity Aware)加密块链接模式的框图。
图4A是CBC-A模式的框图。
图4B是配置为执行CBC-A模式的硬件框图。
图5是解密和验证经由CBC-A模式加密和认证的消息的框图。
图6A、6B、6C和6D是用于执行对认证标记的验证的不同硬件配置。
具体实施方式
加密使得数据对未被认证方不可读。原始数据消息被称为明文消息或明文。经加密的消息被称为密文,其中加密包含任一将明文转换为密文的方法,例如分组密码、散列函数或任一其它的加密函数。解密包含任一将密文转换为明文的方法,即恢复原始消息。图1A说明了设计用作加密的基本密码系统10。明文消息11由加密方案12操作以形成密文13。密文13于是通过通信信道(未示出)发送并在另一个站点(未示出)由解码方案14恢复明文15。明文和密文可以指任何数据,包含以数字形式出现的音频和视频数据。
密码分析法是智取密码系统的安全性的技术。执行密码翻译法的实体在本领域中被称为对手或攻击者。加密方案的密码翻译法是关于解密未经认证的消息。认证方案的密码翻译法是关于可以被验证为由其他人发送的消息的成分。
密码系统是基于秘密的。一组实体共享该秘密,如果一组实体之外的实体不花费大量的资源就不能获得密钥,这个秘密被说成充当该组实体的安全关联。
一般地,秘密包含一个密钥或一组密钥,它们是以比特来计量的。密钥越长,该密钥具有越高的秘密安全性。对称密码系统使用同一密钥来加密消息,解密消息也一样。对称加密系统20在图1B中说明,其中加密和解密都使用相同的私钥。明文21由加密方案22操作。密钥23在加密方案22中使用以形成密文24。密文24在通信信道(未示出)上发送至另一站点,其中解密方案25使用同一密钥23来形成明文26。
相反地,非对称密码系统使用第一密钥来加密消息,并使用不同的密钥来将其解密。图1C说明了被称为公钥密码系统30的非对称加密系统,其中公钥用于加密而私钥用于解密。公钥是被公开的,这样任一用户可使用该公钥来加密任一消息。然而,只有私有的、未公布的密钥可以被用于解密这个经公钥加密的消息。明文31被输入加密方案32,所述加密方案使用与指定用户相关联并从公布获取的公钥33。所得的密文34在通信信道(未示出)上发送至指定用户。该指定用户使用解密方案35中的密钥36将密文34转换成明文37。
对称加密一般比非对称加密快得多。然而,由于可能被敌对方中途截取,将密钥从发送这发送至接收者是有问题的。一个解决方案是使用可信的第三方来持有密钥,该第三方只会与经授权方共享密钥。这里所述的实施例不解决这个问题,而是假定发送者和接收者共享密钥。
上述密码系统生成的密文的完整性一般通过附加某些认证数据到发送的密文而被提供。该认证数据一般作为消息内容和完整性密钥的函数而计算。
在对称认证系统中,认证数据被称为消息认证代码(MAC)。该MAC是作为消息内容和完整性密钥的函数而被计算,其中发送者和指定目标共享该完整性密钥。发送者发送消息并附加MAC。消息可以是明文或密文。接收者重新计算来自消息的MAC,并且只有当经重新计算的MAC与发送的MAC一致时才认可消息的完整性。理论上,只有消息的发送者能够生成该消息的有效的签名,由此为接收者认证该消息。
对称认证系统40在图2A中说明,其中签名和验证都使用相同的密钥。用使用密钥43的认证方案42来运作消息41以形成认证数据44。认证数据44和消息41于是通过通信信道(未示出)发送至另一方(未示出)。用使用相同密钥43的验证方案45来运作消息41以确定认证数据46。将有接收方生成的认证数据46与在通信信道上接收到的认证数据44相比较。
在非对称认证系统中,认证数据被称为数据签名。数据签名作为消息内容和发送者的完整性密钥的函数被计算。发送者向接收方发送数字签名,接收方于是使用发送者的公钥对数字签名执行验证。非对称认证系统50在图1E中说明,其中签名使用私钥而认证使用相应的公钥。
在一些方案中,MAC或数字签名从包含对秘密消息的独特数学描述的‘消息摘要’。被计算消息摘要在长度上比原始消息要短,这样更容易地执行对消息摘要的计算。由于秘密消息或消息摘要不是保持恒定的,MAC或数字签名对秘密消息或消息摘要的依赖性保证了认证数据不是保持恒定的。如果认证数据对多个消息是保持恒定的,那么对手就可以不诚实地容易地窃取到认证数据。
通常使用密码哈希函数来计算消息摘要。密码哈希函数从任一输入计算出一值(包含固定位数),而不管输入的长度。密码哈希函数的一个特性是给定一输出值,计算上难以确定会导致那个输出的输入。密码哈希函数的一个例子是SH-1,如联邦信息处理标准出版物(FIPS PUBS)发布的和国家标准技术局(NIST)出版的FIP PUB 180-1“Secure Hash Standard”中所描述的。
分组密码是对称加密方案,对此到该方案的输入在位数上总是固定的长度。该长度被称为分组密码的分组大小。分组密码的一个例子是数据加密标准(DES),如FIPS PUBS发布的和NIST出版的FIPS PUB 46-1“Data Encryption Standard”中所描述的。DES的分组大小为64位。分组密码的另一个例子是高级加密标准(AES),如FIPS PUBS发布的和NIST出版的FIPS PUB 46-1“Advanced EncryptionStandard”中所描述的。AES的分组大小为128位。
分组密码的密钥长度是该密钥的以二进制隹表示的长度。然而,密钥的熵是密钥的可能值的数目的对数(基数为2)。熵也是按照二进制位来写的。例如,DES具有64位的密钥,这些位数中的8位被用作校验和以检测密钥传输中的差错。从而,DES的密钥-熵是(64-8)=56位。
给定分组密码的几对输入和相应的输出,该分组密码的密钥可以被对手导出,所述对手测试所有可能的密钥值以确定那些输入导致正确的输出。这种类型的攻击被称为穷举法密钥搜索。这种攻击的计算复杂性是攻击所需的加密操作的数目。因此,在穷举法密钥搜索中,为了提取K位密钥的攻击需要大约2k次加密操作来提取分组密码密钥。
分组密码对构造其它的密码实体是有用的。使用分组密码的方式被称为操作模式。已经为DES标准化四种模式的操作,并且在FIPS PUBS发布的和NIST出版的FIPS PUB81“DES Modes of Opertaion”中描述了这四种模式。这四种模式是电子密码本(ECB)、密码分组链接(CBC)、输出反馈(OFB)和密码反馈(CFB)。为了说明起见,这里只讨论ECB和CBC来加密明文块P1,...,和Pm序列。
在ECB模式中,依照以下关系,分组密码被用于将明文的每个块加密成密文块:
Ci=EK(Pi)
其中EK(Pi)表示使用密钥K对块Pi的加密。此后,使用DK(Pi)表示使用密钥K对块Pi的加密。
在CBC模式中,用秘密初始值(IV)对第一明文块求异或以形成一结果,该结果接着被加密。依照以下关系写出该过程的数学描述:
Ci=Ek(PiIV)
此后,在加密前用先前的密文对每个明文块求异或,如下:
Ci=Ek(PiCi-1)
在对称密码系统中,有效的加密和认证可能是有问题的。直到最近,满足这个需求的唯一解决方案是使用自然的方法:提供加密和认证为两个单独的功能。这两个功能需要大约等量的计算,因此使用两个功能的花费是只使用一个或另一个方法的两倍。
在论文“Encryption Modes with Almost Free Message Integrity”中,Jutla提出了两种方法,这两种方法提供了比单独加密或认证需要稍微多一点计算的加密和认证。这些方法具有一般的形式并且将分组密码用作密码核心。在密码界中,这样的方法也被称为“操作模式”。Jutla的操作模式之一,被称为完整性意识可平行模式(IAPM)模式,不在这个文件中讨论。Jutla的另一个操作模式,被称为完整性意识密码块链(IACBC)模式,在图3中示出。IACBC使用两个密钥:K0和K1。假设发送者希望加密和认证含有从P1到Pm-1的(m-1)个消息块的消息。发送者将t设置为等于大于(m+1)的对数(基数为2)的下一个整数。发送者选择一随机值r,对r加密形成密文块C0。值r+1到r+t被加密以形成值W0到Wt-1,其中所述加密使用密钥K0。值W0到Wt-1接着被用于导出成对的独立值S0到Sm。这些Si值在这里被称为噪声块。如果均匀地分配给S0,...,Smn位随机数字,其具有以下特性:对于每对Si和Sj,其中i≠j,并且每对n位数包含c1和c2,Si=c1并且Sj=c2的概率是2-2n,那么值S0,...,Sm是成对独立的。对S0到Sm的实际计算与理解IACBC无关并且不会在下面描述。根据以下关系,对于1≤i≤m-1反复导出密文块c1到cm-1的值:
Mi=PiNi-1
Ni=EK1(Mi),
Ci=NiSi,
其中密钥K1被用于每个密码块,并且初始值N0被设置为C0。这些值Mi被称为中间明文块,值Ni被称为中间密文块。发送者接着计算检验和值Pm,定义为:
Pm=P1P2...Pm-1.
通过用密钥K1加密(PmNi-1)和将经加密的结果与S0求异或,从Pm计算出MAC标记Cm。数学上,该计算可如下表示:
Cm=EK1(PmNi-1)S0.
发送者发送C0...Cm。
假设接收者接收到C’0...C’m。接收者通过首先解密C’0以形成r’来开始解密过程,其中所述解密使用密钥K1。加密值r’+1到r’+t以形成值W’0至W’t-1,其中加密使用密钥K0。接收者接着计算值S’0到S’m。根据以下关系,对于1≤i≤m-1迭代导出密文块P1到Pm-1的值:
N’i=C’iS’i,
M’i=DK1(N’i),
Pi=N’i-1M’i,
其中密钥K1被用于每个明文块,并且初始值N’0被设置为等于C’0。接收者接着计算校验和值P’m,定义为:
Pm’=P’1P’2...P’m-1.
通过使用密钥K1加密Pm和Nm-1的异或,接着将加密的结果与S’0求异或来计算出值X。数学上,可以如下描述该过程:
X=EK1(P’mN’m-1)S’0.
如果X与C’m相等,那么接收者可以确信该经加密的消息的完整性。
Gligor和Donescu在论文“Fast Encryption and Anthenticaion:XCBCEncryption and XEBC Authentication Modes”中提出一相似的模式,称为扩展密文分组链模式(XCBC模式),它使用相似的计算量提供加密和认证。XCBC和IACBC的主要区别是噪声块S0到Sm的表示法,其表示法与这个文件无关。
IACBC和XCBC模式的操作具有某些不希望的特性。第一个不希望的特性是这些模式需要所有的数据经加密被发送。在诸如IPSec等互联网协议中,发送所有数据都被加密的消息是不希望的。特别是,包含寻址信息的头部必须以明码的形式发送。这里所描述的实施例提出了IACBC和XCBC模式的变形,它允许数据块以明文发送,而只加上少量的处理。所述变形在这里被称为CBC-A模式。
应该注意数据或通信系统中的硬件或软件都可以被配置成执行CBC-A模式的不同实施例。硬件可以包含但不限于:处理元件,实现一组存储在计算机可读媒质上的指令,例如存储器,以执行下述的加密、认证、解密和验证过程。此外,使用按位逻辑异或运算符描述了各种组合步骤。实施例的其它实现可以使用模整数加法运算来执行,其中两个输入作为二进制表示的整数对待,以这两个整数和的二进制表示构成中间值,通过将中间值截短成密码块尺寸来构成输出。也可以用其它群运算符来代替各个组合步骤,然而,为了易于说明,这里只描述使用异或操作符的实施例。
CBC-A模式的一个实施例在图4A中说明。该CBC-A模式的操作使用两个密钥:K0和K1。假设发送者希望加密和认证由块P1到Pm-1的(m-1)消息组成的消息。发送者和接收者同意对该组明文块以不加密的形式发送。用U表示要以不加密形式发送的明文块指数的集合,其中U的元素被称为明文位置。在步骤400处,发送者选择r并按照IACBC或XCBC模式来计算噪声块S0到Sm。在步骤402处,发送者计算N0=C0=Ek1(r)。在步骤404处,迭代过程从判定是否i∈U开始,其中1≤i≤m-1。如果i∈U,程序流进入步骤410。如果
那么程序流进入步骤420。
如果i∈U,那么在步骤410处,设置Ci=Pi。在步骤415处,计算:
Ni=PiSi,
Mi=EK1(Ni),和
Yi=Ni-1Mi.
程序流进入到步骤417。
如果
那么在步骤420处,设置Yi=Pi。在步骤425处,计算:
Mi=PiNi-1,
Ni=EK1(Mi),和
Ci=NiSi.
程序流进入步骤417。在步骤417处,指数i递增,即将操作下一个块。如果要处理另一个块,那么程序流回到步骤404。如果没有更多的块要处理,那么程序流进入步骤430。上述过程是用于获取密文C0到Cm-1和认证块Y1到Ym-1。值N0到Nm-1被称为中间密文块。在步骤430处,发送者计算校验和值Pm为:
Pm=Y1Y2...Ym-1.
在步骤432处,通过加密Mm计算出MAC标记Cm,其中通过将Pm和Nm-1求异或构成Mm。用密钥K1加密Mm。这个过程在数学上描述如下:
Cm=EK1(PmNm-1).
在步骤434处,发送者将MAC标记Cm附加到消息上。在步骤436处,发送者发送C0...Cm。
图4B是被配置成执行上述CBC-A模式的硬件的框图。应该注意图4B说明了可以作为软件实现的替换的实现,其中处理器和存储器被配置成执行一组指令,用于执行上述的CBC-A模式。存储器元件440存储原文块Pi,其中的一些要被加密且其中的全部要被认证。加密元件450A、450B、450C、450D和450E被配置成使用密钥K1执行加密功能,所述密钥K1在密钥协商过程期间在发送者和接收者之间达成一致,这里不讨论该协商过程的详情。为了说明起见,在图4B中示出了五个(5)加密元件用于加密明文块,但是本领域的技术人员理解可以实现较多或较少的加密元件而不影响本实施例的范围。到第一加密元件450A的输入是临时值r,r会被用于确定噪声块S0,S1,...,Sm-1。用于生成所述噪声块的硬件配置不在这里示出。第一加密元件450A的输出是第一密文块C0,它被设置成等于第一中间密文块N0。
到其它加密元件450B、450C、450D和450E的输入在每个相应的加密元件处各自是中间原文块M1,...,Mm。中间原文块M1,...,Mm是组合元件444A、444B、444C和444D的输出。到组合元件444A、444B、444C和444D每一个的输入是明文块Pi(其中
)和中间密文块Ni-1。一方面,这里所描述的组合元件是异或门。另一方面,组合元件是群运算符。
到加密元件450B、450C、450D和450E的输出是中间密文块Ni,其中
对
的每个中间密文块Ni在组合元件462A、462B、462C或462D处与相应的噪声块Si相结合以构成密文块Ci,其中
中间密文块Ni(其中
)也输入到开关元件470A、470B、470C或470D之一,这会在以后讨论。
解密元件455A、455B和455C被配置成执行加密功能,所述密码功能是用于加密元件450A、450B、450C、450D和450E的相反的功能。到解密元件455A、455B和455C的输入是中间密文块Ni,其中i∈U。中间密文块Ni(其中i∈U)是组合元件442A、442B和442C的输出。到每个组合元件442A、442B或442C的输入是明文块Pi和噪声块Si。解密元件455A、455B和455C的输出是中间原文块Mi,其中i∈U。中间原文块Mi(其中i∈U)分别在每个组合元件460A、460B和460C处与前一中间密文块Ni-1相结合以形成认证块Ym-1。
在每一级,中间密文块(其中i∈U)和中间密文块(其中
)被输入到开关元件470A、470B、470C或470D。来自处理元件的控制线(未示出)控制对于下一级的计算使用任一中间密文块的决定。
在最后一级,通过将最后的中间密文块Nm与第一噪声块S0相组合以形成认证标记Cm。
图5是解密和验证经CBC-A模式加密和认证的消息的框图。假设接收者在步骤500处接收到传输模块C’0...C’m。注意对于i∈U,C’i是不加密发送的。在步骤502处,接收者解密C’0以获取r’,并由此导出S’0到S’m的值。在替换实施例中,临时值r可以是预先协商的或预定的一值。
在步骤510处,对于1≤i≤m,接收者根据以下关系对C’i和S’i求异或以构成中间密文块N’i:
N’i=C’iS’i.
在步骤520处,接收者构成N’m=C’mS’0,其中接收者设置N’0=C’0。在步骤530处,接收者使用CBC模式中的解密来解密中间密文N’0,...,N’m的序列以形成认证块Y’1,...,Y’m。这被迭代地进行,并且在数学上表示如下:
Yi=DK1(N’1)N’i-1,for 1≤i≤m.
在步骤540处,开始迭代过程以为P’i确定值。对于i∈U,程序流进入步骤542,其中接收者设置P’i=C’i。程序流进入步骤544。对于
程序流进入步骤546,其中明文块被设置成与认证块相同,即接收者设置P’i=Y’i。程序流进图步骤544。在步骤544处,接收者确定是否要处理另一个块。如果是,程序流回到步骤540。如果不是,程序流进入步骤550。接收者现在将密文解码到数据块P’1,...P’m-1,但接收者需要验证完整性。
为了验证认证标记,在步骤550处,接收者确认Y’m等于(Y’1 Y’2… Y’m-1)的值。如果验证了认证标记,那么消息是P’1,...,P’m-1。
在减少处理时间的替换实施例中,在步骤550处对认证标记的验证可以在步骤530之后立即执行,或在步骤540之前或与步骤540并行地执行。因此,接收者可以在确定消息的文本之前认证接收到的消息。如果接收到的消息未认证,那么接收者可以通过省略确定明文块P’i的步骤来切省处理资源。相反地,由Jutla提出的IACBC模式需要确定明文块P’i并加密其结果的形式,由此以计算出测试认证标记。
此外,在替换实施例中,对认证标记的验证可以通过将值(Y’1Y’2…Y’m-1)与另一非Y’m的量相比较来执行。图6A示出了一个替换硬件实施。校验和值CHK被设置为等于(Y’1Y’2…Y’m-1)。由组合元件602将CHK值与中间密文块N’m-1相组合。CHK值通过组合元件600与中间密文块N’m-1加以组合。组合元件602的输出接着在组合元件604处与第一噪声块S’0相组合。组合元件604的输出接着在比较元件606处与最后密文块C’m作比较,其中匹配则指示了认证标记被验证。
图6B是用于验证接收到的消息的真实性的另一替换硬件实施例。由组合元件610将CHK值与中间密文块N’m-1相组合。组合元件610的输出接着由加密元件612加密。由组合元件614将最后密文块C’m与第一噪声块S’0相组合。如果在比较元件616处加密元件612的输出与组合元件614的输出相匹配,那么就验证了接收到的消息。
图6C是用于验证接收到的消息的真实性的另一替换硬件实施例。由组合元件620将CHK值与中间密文块N’m-1相组合。由组合元件622将最后密文块C’m与第一噪声块S’0相组合。组合元件622的输出接着由解密元件624加密。如果在比较元件626处解密元件624的输出与组合元件620的输出相匹配,那么就验证了接收到的消息。
图6D是用于验证接收到的消息的真实性的另一替换硬件实施例。由组合元件630将最后密文块C’m与第一噪声块S’0相组合。组合元件630的输出接着由解密元件632解密。接着由组合元件634将解密元件632的输出与中间密文块N’m-1相组合。如果在比较元件636处组合元件634的输出与CHK值相匹配,那么就验证了接收到的消息。
注意,对于给定的密文C’0...C’m-1,对于所有明文位置的U集合,认证标记C’m是相同的:验证认证标记的过程独立于该组明码位置。对认证标记的验证只验证发送者送出密文C’0...C’m而不验证哪些位置是明码位置和哪些位置不是明码位置。这可能允许攻击者使得当接收者解密消息时,使用错误的明码位置组。为了防止这种攻击,发送者和接收者必须使用其它的方法来验证应用到特定密文消息的明码位置。对这个问题有简单的解决方案。一个解决方案是对那些位置是明码位置有标准的协议。另一种方法是在数据块中包含明码位置集合U的表示,这样使得对密文的验证包含对明码位置集合的验证。
在CBC-A模式中,如果基础的分组密码是安全的,那么加密和认证功能是安全的。本领域中对于短语“the encryption and authentication functions aresecure”(“加密和认证功能是安全的”)是什么意思有正式的表示法,然而这些正式的表达法与本发明的主题无关并不会在这里讨论。本领域的技术人员会熟悉短语“the encryption and authentication functions are secure”的意思。
安全性证明不包含在内,但这里示出了关于安全性的一些观察。CBC-A模式的对加密功能的安全证明是与IACBC和XCBC模式相同的。在CBC-A模式中生成认证标记与在IACBC和XCBC模式中生成认证标记不同。然而,CBC-A使用与IACBC和XCBC模式相同的步骤验证认证标记。因此,只有攻击者能够危害IACBC或XCBC认证功能时,攻击者才能够危害CBC-A认证功能(即,产生会被验证为正确的CBC-A认证标记)。因为IACBC和XCBC模式的设计者已经显示攻击者不能危害IACBC和XCBC认证功能,由此断定攻击者不能危害CBC-A认证功能。因此,CBC-A认证功能是安全的。
注意发送者可以选择发送Pi或Ci,这不会危害认证。这里所述的实施例允许一方发送经加密的或未经加密的块而不危害认证方案的安全性。如果Pi以明文发送,那么Pi的加密版本仍然是安全和不可预测的,因而Pi可以被用作安全认证。
通常的做法是当使用认证模式时,将MAC定义为只是最终块的一部分。也可以改变本发明,这样使得只有一部分最终块作为MAC发送。
本领域的技术人员可以理解,信息和信号可以用多种不同技术和工艺中的任一种来表示。例如,上述说明中可能涉及的数据、指令、命令、信息、信号、比特、码元和码片可以用电压、电流、电磁波、磁场或其粒子、光场或其粒子或它们的任意组合来表示。
本领域的技术人员能进一步理解,结合这里所公开的实施例所描述的各种说明性的逻辑框、模块、电路和算法步骤可以作为电子硬件、计算机软件或两者的组合来实现。为了清楚说明硬件和软件间的互换性,各种说明性的组件、框图、模块、电路和步骤一般按照其功能性进行了阐述。这些功能性究竟作为硬件还是软件来实现取决于特定的应用和对总体系统设计上的约束。熟练的技术人员可能对于每个特定应用以不同的方式来实现所述功能,但这种实现决定不应被解释为就此背离本发明的范围。
结合这里所描述的实施例来描述的各种说明性的逻辑框、模块和算法步骤的实现或执行可以用:通用处理器、数字信号处理器(DSP)、应用专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、离散门或晶体管逻辑、离散硬件组件或者为执行这里所述功能而设计的任意组合。通用处理器可能是微处理器,然而或者,处理器可以是任何常规的处理器、控制器、微控制器或状态机。处理器也可以用计算设备的组合来实现,如,DSP和微处理器的组合、多个微处理器、结合DSP内核的一个或多个微处理器或者任意其它这种配置。
结合这里所公开实施例描述的方法或算法的步骤可能直接包含在硬件中、由处理器执行的软件模块中或在两者当中。软件模块可以驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM或本领域中已知的任何其它形式的存储媒质中。示例性存储媒质与处理器耦合,使得处理器可以从存储媒质读取信息,或把信息写入存储媒质。或者,存储媒质可以与处理器整合。处理器和存储媒质可能驻留在ASIC中。ASIC可能驻留在用户终端中。或者,处理器和存储媒质可能作为离散组件驻留在用户终端中。
提供上述优选实施例的描述为了使本领域的技术人员能制造或使用本发明。这些实施例的各种修改对于本领域的技术人员来说是显而易见的,这里定义的总的原则可以被应用于其它实施例中而不使用创造能力。因此,本发明并不是要限于这里示出的实施例,而是要符合与这里揭示的原理和新颖特征一致的最宽泛的范围。
Claims (15)
1.作为单个实体加密和验证数据的方法,所述方法包含:
将数据排列成多个明文块,根据密码块大小来定每个明文块的尺寸;
指定至少一个明码位置,对于该位置至少一个密文块会与相应的明文块相同;
使用临时值和第一密钥确定多个噪声块;
确定多个中间密文块,其中所述第一中间密文块对应于经加密的临时值,剩余中间密文确定如下:
对于由明码位置指定的多个明文块的每一个,将所述明文块与相应的噪声块相组合;以及
对于不是由明码位置指定的多个明文块的每一个,使用所述明文块和前面的中间密文块形成中间明文块,并且接着使用第二密钥加密该中间明文块;
确定多个密文块,其中所述多个密文块确定如下:
将第一密文块设置为等于第一中间密文块;
将每个由明码位置指定的每一个密文块设置为等于相应的明文块;以及
通过将相应的中间密文块和相应的噪声块相组合来确定每个剩余密文块;
确定多个认证块,其中所述多个认证块确定如下:
如果认证块与不是由明码位置指定的明文块相关联,那么将所述认证块设置为等于所述明文块;
如果认证块与由明码位置指定的明文块相关联,那么通过解密相关联的中间密文块并将经解密的关联中间密文块与前面的中间密文块相组合来确定认证块;
通过将所有多个认证块与噪声块相组合来计算认证标记,并接着加密所述的组合结果;以及
将认证标记附加到所述多个密文块。
2.如权利要求1所述的方法,其特征在于,其中所述加密使用分组密码加密。
3.如权利要求1所述的方法,其特征在于,其中所述加密和解密包含:
选择应用分组密码加密或分组密码解密;
根据一组预定义的选择规则来选择密钥或分组密码以供使用;以及
对多个输入块使用带有分组密码的密钥以获取多个输出块。
4.如权利要求1所述的方法,其特征在于,其中组合是使用位异或操作来执行的。
5.如权利要求1所述的方法,其特征在于,其中组合是使用群运算符来执行的。
6.如权利要求5所述的方法,其特征在于,其中所述群运算符是模整数加法运算符。
7.用于解密和验证伴有认证标记的多个传输块的方法,所述方法包含:
使用临时值和第一密钥来确定多个噪声块;
通过将多个传输块的每一个与相应的噪声块相组合来确定多个中间密文块;
确定多个认证块,其中多个认证块的每个是通过解密相应的中间密文块并接着将经解密的中间密文块与前面的中间密文块相组合形成的;
将不与任一预定的明码位置相关联的多个认证块的每一个设置为明文块;
将与任一预定的明码位置相关联的多个传输块的每一个设置为明文块;以及
通过确定最后的认证块是否等于所有其它认证块的组合来验证认证标记。
8.如权利要求6所述的方法,其特征在于,其中所述临时值是在多个传输块的发送者和多个传输块的接收者之间预先协商的。
9.如权利要求5所述的方法,其特征在于,其中所述临时值是从第一传输块导出的。
10.用于作为单个实体加密和认证数据的装置,所述装置包含:
至少一个存储器元件;以及
至少一个处理元件,被配置成执行一组存储在至少一个存储器元件中的指令,所述这组指令用于:
将数据排列成多个明文块,根据密码块大小来定每个明文块的尺寸;
指定至少一个明码位置,对于该位置至少一个密文块将与相应的明文块相同;
使用临时值和第一密钥确定多个噪声块;
确定多个中间密文块,其中所述第一中间密文块对应于经加密的临时值,剩余中间密文被确定如下:
对于由明码位置指定的多个明文块的每一个,将所述明文块与相应的噪声块相组合;以及
对于不是由明码位置指定的多个明文块的每一个,使用所述明文块和前面的中间密文块形成中间明文块,并且接着使用第二密钥加密该中间明文块;
确定多个密文块,其中所述多个密文块被确定如下:
将第一密文块设置为等于第一中间密文块;
将每个由明码位置指定的密文块设置为等于相应的明文块;以及
通过将相应的中间密文块和相应的噪声块相组合来确定每个剩余密文块;
确定多个认证块,其中所述多个认证块被确定如下:
如果认证块与不是由明码位置指定的明文块相关联,那么将所述认证块设置为等于所述明文块;
如果认证块与由明码位置指定的原文块相关联,那么通过解密相关联的中间密文块并将经解密的关联中间密文块与前面的中间密文块相组合来确定认证块;
通过将所有多个认证块与噪声块相组合来计算认证标记,并接着加密所述的组合结果;以及
将认证标记附加到所述多个密文块。
11.用于解密和验证伴有认证标记的多个传输块的装置,所述装置包含:
至少一个存储器元件;以及
至少一个处理元件,被配置成执行一组存储在至少一个存储器元件中的指令,所述这组指令用于:
使用临时值和第一密钥来确定多个噪声块;
通过将多个传输块的每一个与相应的噪声块相结合来确定多个中间密文块;
确定多个认证块,其中多个认证块的每个是通过解密相应的中间密文块并接着将经解密的中间密文块与前面的中间密文块相组合构成的;
将不与任一预定的明码位置相关联的多个认证块的每一个设置为明文块;
将与任一预定的明码位置相关联的多个传输块的每一个设置为明文块;
通过确定最后的认证块是否等于所有其它认证块的组合来验证认证标记。
12.用于作为单个实体加密和认证数据的装置,所述装置包含:
将数据排列成多个明文块的装置,根据密码块大小来定每个明文块的尺寸;
指定至少一个明码位置,对于该位置至少一个密文块会与相应的明文块相同的装置;
使用临时值和第一密钥确定多个噪声块的装置;
确定多个中间密文块的装置,其中所述第一中间密文块对应于经加密的临时值,剩余中间密文被确定如下:
对于由明码位置指定的多个明文块的每一个,将所述明文块与相应的噪声块相组合;以及
对于不是由明文位置指定的多个明文块的每一个,使用所述明文块和前面的中间密文块形成中间明文块,并且接着使用第二密钥加密该中间明文块;
确定多个密文块的装置,其中所述多个密文块被确定如下:
将第一密文块设置为等于第一中间密文块;
将每个由明码位置指定的密文块设置为等于相应的明文块;以及
通过将相应的中间密文块和相应的噪声块相组合来确定每个剩余密文块;
确定多个认证块的装置,其中所述多个认证块被确定如下:
如果认证块与不是由明码位置指定的明文块相关联,那么将所述认证块设置为等于所述明文块;
如果认证块与由明码位置指定的明文块相关联,那么通过解密相关联的中间密文块并将经解密的关联中间密文块与前面的中间密文块相组合来确定认证块;
通过将所有多个认证块与噪声块相组合来计算认证标记,并接着加密所述的组合结果的装置;以及
将认证标记附加到所述多个密文块的装置。
13.用于解密和验证伴有认证标记的多个传输块的装置,所述装置包含:
使用临时值和第一密钥来确定多个噪声块的装置;
通过将多个传输块的每一个与相应的噪声块相组合来确定多个中间密文块的装置;
确定多个认证块的装置,其中多个认证块的每个是通过解密相应的中间密文块并接着将经解密的中间密文块与前面的中间密文块相组合构成的;
将不与任一预定的明码位置相关联的多个认证块的每一个设置为明文块的装置;
将与任一预定的明码位置相关联的多个传输块的每一个设置为原文块的装置;
通过确定最后的认证块是否等于所有其它认证块的组合来验证认证标记的装置。
14.用于安全数据传输的方法,其中第一部分的数据传输作为明文被发送,第二部分的数据传输作为密文被发送,且所有的数据传输是经认证的,所述的方法包含:
生成一组明码位置;
将所述第一部分的数据传输和所述第二部分的数据传输加密成密文,其中所述第一部分的数据传输由该组明码位置指定,且第二部分的数据传输不与该组明码位置中的任何一个相关联;
通过一迭代过程确定多个中间密文块;
生成多个认证块,其中每个多个认证块的第一部分被设置为等于数据传输的第一部分的相应数目,并且每个多个认证块的第二部分是通过将相应的中间密文块和前一中间密文块相组合而导出的;
通过将多个认证块的每一个与噪声块相组合来生成认证标记,并加密所组合的结果;以及
发送所述明文、密文和认证标记,其中所述明文是由该组明码位置指定的数据传输的第一部分。
15.用于安全数据传输的装置,其中第一部分的数据传输作为明文发送,第二部分的数据传输作为密文发送,且所有的数据传输是经认证的,所述的方法包含:
生成一组明码位置的装置;
将所述第一部分的数据传输和所述第二部分的数据传输加密成密文的装置,其中所述第一部分的数据传输由该组明码位置指定,且第二部分的数据传输不与该组明码位置组中任何一个相关联;
通过一迭代过程确定多个中间密文块的装置;
生成多个认证块的装置,其中每个多个认证块的第一部分被设置为等于数据传输的第一部分的相应数目,并且每个多个认证块的第二部分是通过将相应的中间密文块和前一中间密文块相组合导出的;
通过将多个认证块的每一个与噪声块相组合并加密所组合的结果来生成认证标记的装置;以及
发送所述明文、密文和认证标记的装置,其中所述明文是由该组明码位置指定的数据传输的第一部分。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/205,114 US6948067B2 (en) | 2002-07-24 | 2002-07-24 | Efficient encryption and authentication for data processing systems |
US10/205,114 | 2002-07-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1682483A true CN1682483A (zh) | 2005-10-12 |
CN100576789C CN100576789C (zh) | 2009-12-30 |
Family
ID=30769992
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN03822411A Expired - Fee Related CN100576789C (zh) | 2002-07-24 | 2003-07-24 | 用于数据处理系统的有效加密和认证 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6948067B2 (zh) |
EP (1) | EP1529368A4 (zh) |
CN (1) | CN100576789C (zh) |
AU (1) | AU2003296887B2 (zh) |
BR (1) | BR0312866A (zh) |
CA (1) | CA2493567A1 (zh) |
RU (1) | RU2336646C2 (zh) |
WO (1) | WO2004034182A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577760A (zh) * | 2012-06-19 | 2014-02-12 | 阿尔斯通运输股份有限公司 | 计算机、通信单元和提高计算机中的数据可靠性的方法 |
CN104471893A (zh) * | 2012-07-03 | 2015-03-25 | Abb研究有限公司 | 安全消息传送 |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7702101B2 (en) * | 2002-07-09 | 2010-04-20 | Kaleidescape, Inc. | Secure presentation of media streams in response to encrypted digital content |
US7254233B2 (en) * | 2002-07-24 | 2007-08-07 | Qualcomm Incorporated | Fast encryption and authentication for data processing systems |
US20040083360A1 (en) * | 2002-10-28 | 2004-04-29 | Rod Walsh | System and method for partially-encrypted data transmission and reception |
JP4208082B2 (ja) * | 2003-01-30 | 2009-01-14 | 富士通株式会社 | データ改ざん検出方法、データ改ざん検出装置及びデータ改ざん検出プログラム |
WO2004070998A2 (en) * | 2003-01-31 | 2004-08-19 | Kaleidescape, Inc. | Recovering from de-synchronization attacks against watermarking and fingerprinting |
US20050091496A1 (en) * | 2003-10-23 | 2005-04-28 | Hyser Chris D. | Method and system for distributed key management in a secure boot environment |
KR100830801B1 (ko) * | 2004-02-04 | 2008-05-20 | 주식회사 케이티 | 동영상 데이터 암호화 송수신방법 |
JP2006039206A (ja) * | 2004-07-27 | 2006-02-09 | Canon Inc | 暗号化装置および復号化装置 |
US7512814B2 (en) | 2004-11-09 | 2009-03-31 | Fortiva Inc. | Secure and searchable storage system and method |
US8677123B1 (en) | 2005-05-26 | 2014-03-18 | Trustwave Holdings, Inc. | Method for accelerating security and management operations on data segments |
CN101317357B (zh) * | 2005-12-01 | 2011-05-18 | 艾利森电话股份有限公司 | 密钥管理 |
KR100856007B1 (ko) * | 2006-09-06 | 2008-09-02 | 성균관대학교산학협력단 | 암호화 기기의 동작 검증 방법 및 이를 이용한 전자투표검증 시스템 |
GB2443244A (en) * | 2006-10-05 | 2008-04-30 | Hewlett Packard Development Co | Authenticated Encryption Method and Apparatus |
FR2918830B1 (fr) * | 2007-07-13 | 2009-10-30 | Viaccess Sa | Verification de code mac sans revelation. |
KR100997239B1 (ko) * | 2008-03-03 | 2010-11-29 | 삼성전자주식회사 | Crum 유닛, 교체가능유닛 및 이를 이용하는 화상형성장치와, 그 인증 및 암호화 데이터 통신 방법 |
US10447657B2 (en) * | 2008-08-22 | 2019-10-15 | Qualcomm Incorporated | Method and apparatus for transmitting and receiving secure and non-secure data |
BR112012031052B1 (pt) * | 2010-07-22 | 2020-12-01 | Nagravision S.A. | método implementado por processador voltado para assegurar a integridade do software |
US20130028419A1 (en) * | 2011-07-26 | 2013-01-31 | Debabrata Das | System and a method for use in a symmetric key cryptographic communications |
RU2459275C1 (ru) * | 2011-08-02 | 2012-08-20 | Николай Андреевич Молдовян | Способ блочного шифрования сообщения м, представленного в двоичном виде |
WO2014084886A1 (en) * | 2012-11-29 | 2014-06-05 | Blackberry Limited | Authenticated encryption method using working blocks |
US20140244514A1 (en) * | 2013-02-26 | 2014-08-28 | Digimarc Corporation | Methods and arrangements for smartphone payments and transactions |
US9264222B2 (en) * | 2013-02-28 | 2016-02-16 | Apple Inc. | Precomputing internal AES states in counter mode to protect keys used in AES computations |
US9456344B2 (en) | 2013-03-15 | 2016-09-27 | Ologn Technologies Ag | Systems, methods and apparatuses for ensuring proximity of communication device |
US10177915B2 (en) | 2013-03-15 | 2019-01-08 | Ologn Technologies Ag | Systems, methods and apparatuses for device attestation based on speed of computation |
US9698991B2 (en) | 2013-03-15 | 2017-07-04 | Ologn Technologies Ag | Systems, methods and apparatuses for device attestation based on speed of computation |
JP2016517046A (ja) * | 2013-04-24 | 2016-06-09 | エヌイーシー ヨーロッパ リミテッドNec Europe Ltd. | データを暗号化する方法およびシステム |
WO2014181313A1 (en) | 2013-05-10 | 2014-11-13 | Ologn Technologies Ag | Ensuring proximity of wifi communication devices |
US9455998B2 (en) | 2013-09-17 | 2016-09-27 | Ologn Technologies Ag | Systems, methods and apparatuses for prevention of relay attacks |
US9311639B2 (en) | 2014-02-11 | 2016-04-12 | Digimarc Corporation | Methods, apparatus and arrangements for device to device communication |
WO2016043700A1 (en) | 2014-09-15 | 2016-03-24 | Demandware, Inc. | Secure storage and access to sensitive data |
KR102628466B1 (ko) * | 2014-12-03 | 2024-01-23 | 나그라비젼 에스에이알엘 | 메시지 부호화 및 복호화를 위한 블록 암호화 방법 및 이 방법을 구현하기 위한 암호화 장치 |
CN105450419B (zh) * | 2015-05-05 | 2018-07-27 | 北京天诚盛业科技有限公司 | 提高生物识别安全性的方法、装置和系统 |
US10354065B2 (en) | 2015-10-27 | 2019-07-16 | Infineon Technologies Ag | Method for protecting data and data processing device |
US11372964B2 (en) * | 2016-07-25 | 2022-06-28 | Apple Inc. | System for and method of authenticating a component of an electronic device |
US9680653B1 (en) * | 2016-10-13 | 2017-06-13 | International Business Machines Corporation | Cipher message with authentication instruction |
US10790982B2 (en) * | 2017-10-27 | 2020-09-29 | Secureworks Corp. | Systems and methods for block chain authentication |
CN109587132B (zh) * | 2018-11-29 | 2021-03-26 | 南京苏宁软件技术有限公司 | 一种基于联盟链的数据传递方法及装置 |
US10951415B2 (en) * | 2019-03-13 | 2021-03-16 | Digital 14 Llc | System, method, and computer program product for implementing zero round trip secure communications based on noisy secrets with a polynomial secret sharing scheme |
US10892891B2 (en) * | 2019-03-13 | 2021-01-12 | Digital 14 Llc | System, method, and computer program product for zero round trip secure communications based on two noisy secrets |
US10862688B2 (en) * | 2019-03-13 | 2020-12-08 | Digital 14 Llc | System, method, and computer program product for zero round trip secure communications based on a noisy secret with a reduced message size |
US11381589B2 (en) | 2019-10-11 | 2022-07-05 | Secureworks Corp. | Systems and methods for distributed extended common vulnerabilities and exposures data management |
CN113344501A (zh) * | 2021-08-05 | 2021-09-03 | 支付宝(杭州)信息技术有限公司 | 一种针对配送员实人认证的业务处理方法、装置以及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4918728A (en) * | 1989-08-30 | 1990-04-17 | International Business Machines Corporation | Data cryptography operations using control vectors |
AU2001249511A1 (en) * | 2000-03-31 | 2001-10-15 | Vdg Inc. | Authentication method and schemes for data integrity protection |
US7046802B2 (en) * | 2000-10-12 | 2006-05-16 | Rogaway Phillip W | Method and apparatus for facilitating efficient authenticated encryption |
US6950517B2 (en) | 2002-07-24 | 2005-09-27 | Qualcomm, Inc. | Efficient encryption and authentication for data processing systems |
-
2002
- 2002-07-24 US US10/205,114 patent/US6948067B2/en not_active Expired - Fee Related
-
2003
- 2003-07-24 CN CN03822411A patent/CN100576789C/zh not_active Expired - Fee Related
- 2003-07-24 RU RU2005104953/09A patent/RU2336646C2/ru not_active IP Right Cessation
- 2003-07-24 CA CA002493567A patent/CA2493567A1/en not_active Abandoned
- 2003-07-24 BR BRPI0312866-0A patent/BR0312866A/pt not_active IP Right Cessation
- 2003-07-24 EP EP03808042A patent/EP1529368A4/en not_active Withdrawn
- 2003-07-24 AU AU2003296887A patent/AU2003296887B2/en not_active Ceased
- 2003-07-24 WO PCT/US2003/023561 patent/WO2004034182A2/en not_active Application Discontinuation
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577760A (zh) * | 2012-06-19 | 2014-02-12 | 阿尔斯通运输股份有限公司 | 计算机、通信单元和提高计算机中的数据可靠性的方法 |
CN103577760B (zh) * | 2012-06-19 | 2017-12-26 | 阿尔斯通运输科技公司 | 计算机、通信单元和提高计算机中的数据可靠性的方法 |
CN104471893A (zh) * | 2012-07-03 | 2015-03-25 | Abb研究有限公司 | 安全消息传送 |
CN104471893B (zh) * | 2012-07-03 | 2018-12-14 | Abb研究有限公司 | 安全消息传送 |
Also Published As
Publication number | Publication date |
---|---|
WO2004034182A2 (en) | 2004-04-22 |
EP1529368A2 (en) | 2005-05-11 |
AU2003296887B2 (en) | 2008-04-17 |
BR0312866A (pt) | 2007-07-10 |
CA2493567A1 (en) | 2004-04-22 |
EP1529368A4 (en) | 2010-05-19 |
RU2336646C2 (ru) | 2008-10-20 |
CN100576789C (zh) | 2009-12-30 |
US20040019785A1 (en) | 2004-01-29 |
WO2004034182A3 (en) | 2005-02-03 |
AU2003296887A1 (en) | 2004-05-04 |
RU2005104953A (ru) | 2005-07-20 |
US6948067B2 (en) | 2005-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100576789C (zh) | 用于数据处理系统的有效加密和认证 | |
CN109559122B (zh) | 区块链数据传输方法及区块链数据传输系统 | |
CN1682479A (zh) | 用于数据处理系统的有效加密和认证 | |
US8126139B2 (en) | Partial encryption and full authentication of message blocks | |
Jones et al. | Json web encryption (jwe) | |
US7305084B2 (en) | Fast encryption and authentication for data processing systems | |
US7254233B2 (en) | Fast encryption and authentication for data processing systems | |
CA2792571A1 (en) | Hashing prefix-free values in a signature scheme | |
Saarinen | Ring-LWE ciphertext compression and error correction: Tools for lightweight post-quantum cryptography | |
CN111314050A (zh) | 一种加解密方法及装置 | |
Kasodhan et al. | A new approach of digital signature verification based on BioGamal algorithm | |
Surya et al. | Single sign on mechanism using attribute based encryption in distributed computer networks | |
Gavrilova et al. | RATIONALE FOR IMPROVING AUTHENTICATION PROTOCOLS IN THE CONDITIONS OF POST-QUANTUM CRYPTOGRAPHY | |
CN111314051A (zh) | 一种加解密方法和装置 | |
Libed et al. | Enhancing MD5 Collision Susceptibility | |
KR20050023447A (ko) | 데이터 처리 시스템을 위한 효율적인 암호화 및 인증 | |
Gupta et al. | A fail-fast mechanism for authenticated encryption schemes | |
Jones et al. | RFC 7516: JSON Web Encryption (JWE) | |
Bhatia | Cryptography-The Hidden Message | |
Schaad | RFC 9053: CBOR Object Signing and Encryption (COSE): Initial Algorithms | |
Xiao | Implementation Analysis of Encryption and Decryption Algorithm Based on python Language | |
Bellare et al. | CFRG S. Smyshlyaev, Ed. Internet-Draft CryptoPro Intended status: Informational R. Housley Expires: September 8, 2017 Vigil Security, LLC | |
Lei et al. | The FCM Scheme for Authenticated Encryption | |
Pandey et al. | A Modified Approach For Cryptograpic Hash Function Based On MD5 Algorithm | |
Gómez Pardo et al. | Message Authentication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1081020 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1081020 Country of ref document: HK |
|
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091230 Termination date: 20110724 |