aead Algorithm

Authenticated encryption (AE) and authenticated encryption with associated data (AEAD) are forms of encryption which simultaneously assure the confidentiality and authenticity of data. Bellare and Namprempre (2000) analyzed three compositions of encryption and MAC primitives, and demonstrated that encryption a message and subsequently using a MAC to the ciphertext (the cipher-then-MAC approach) imply security against an adaptive choose ciphertext attack, This was confirmed by a number of practical attacks introduced into production protocols and applications by incorrect implementation, or lack of authentication (including SSL / TLS).Six different authenticated encryption modes (namely OCB 2.0, key Wrap, CCM, EAX, cipher-then-MAC (EtM), and GCM)Sponge functions can be used in duplex mode to supply authenticated encryption.

aead source code, pseudocode and analysis