[crypto] AEAD是啥


AEAD這個縮寫根據不同的語境有兩個理解角度:認證加密機制,認證加密方式。

認證加密機制是指:一些用來完成認證加密工作的方法,拆分為認證和加密兩部分來做,先加密后加密先認證后認證都無所謂,整個過程或者其目標我們都稱之為AEAD。

認證加密方式是指具體的做法:這里我們將狹義的排除掉,認證與加密完全的獨立的方式。

下面討論的,都是排除之后的內容。也就是,當你看見AEAD算法時,一般它僅代表,以下提到的內容。

 

用一句話解釋AEAD就是一種帶有認證功能的加密方式。

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_encryption

常見的可以實現aead的加密模式有這些,wiki里提到的

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

 

常見里面更常見的,就這兩個CCM和GCM

CCM和GCM分別是什么呢?就是分組加密的模式,與CBC是同一個級別的概念。

 

也就是說,這兩個分組加密的模式提供了認證功能。

所以當我們使用AES加密的時候,

AES-CCM和AES-GCM就是aead的算法。AES-CBC就需要另外提供認證算法。

 

這里有一個rfc,詳細講了CCM和GCM:https://tools.ietf.org/html/rfc5084

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM