[crypto] AEAD是啥

AEAD这个缩写根据不一样的语境有两个理解角度:认证加密机制,认证加密方式。html

认证加密机制是指:一些用来完成认证加密工做的方法,拆分为认证和加密两部分来作,先加密后加密先认证后认证都无所谓,整个过程或者其目标咱们都称之为AEAD。算法

认证加密方式是指具体的作法:这里咱们将狭义的排除掉,认证与加密彻底的独立的方式。ide

下面讨论的,都是排除以后的内容。也就是,当你看见AEAD算法时,通常它仅表明,如下提到的内容。加密

 

用一句话解释AEAD就是一种带有认证功能的加密方式。spa

Authenticated encryption (AE) and authenticated encryption with associated data (AEAD) are forms of encryption which 
simultaneously assure the confidentiality and authenticity of data. These attributes are provided under a single, easy to use programming interface.

 

见wiki:https://en.wikipedia.org/wiki/Authenticated_encryptioncode

常见的能够实现aead的加密模式有这些,wiki里提到的orm

namely OCB 2.0, Key Wrap, CCM, EAX, Encrypt-then-MAC (EtM), and GCM)

 

常见里面更常见的,就这两个CCM和GCMhtm

CCM和GCM分别是什么呢?就是分组加密的模式,与CBC是同一个级别的概念。blog

 

也就是说,这两个分组加密的模式提供了认证功能。ip

因此当咱们使用AES加密的时候,

AES-CCM和AES-GCM就是aead的算法。AES-CBC就须要另外提供认证算法。

 

这里有一个rfc,详细讲了CCM和GCM:https://tools.ietf.org/html/rfc5084

相关文章
相关标签/搜索