请输入您要查询的百科知识:

 

词条 Authenticated encryption
释义

  1. Authenticated encryption with associated data (AEAD)

  2. Approaches to authenticated encryption

     Encrypt-then-MAC (EtM) {{anchor|Encrypt-then-MAC|EtM}}  Encrypt-and-MAC (E&M) {{anchor|Encrypt-and-MAC|E&M}}  MAC-then-Encrypt (MtE) {{anchor|MAC-then-Encrypt|MtE}} 

  3. See also

  4. References

  5. External links

{{Lead too long|date=May 2015}}

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.

The need for AE emerged from the observation that securely combining separate confidentiality and authentication block cipher operation modes could be error prone and difficult.[1][2] 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).[3]

Around the year 2000, a number of efforts evolved around the notion. In particular, strong interest in these modes was sparked by the publication of Charanjit Jutla's IACBC and IAPM modes[4] in 2000. Six different authenticated encryption modes (namely OCB 2.0, Key Wrap, CCM, EAX, Encrypt-then-MAC (EtM), and GCM) have been standardized in ISO/IEC 19772:2009.[5] More were developed in response to NIST solicitation.[6] Sponge functions can be used in duplex mode to provide authenticated encryption.[7]

A typical programming interface for AE mode implementation would provide the following functions:

  • Encryption
    • Input: plaintext, key, and optionally a header in plaintext that will not be encrypted, but will be covered by authenticity protection.
    • Output: ciphertext and authentication tag (message authentication code).
  • Decryption
    • Input: ciphertext, key, authentication tag, and optionally a header (if used during the encryption).
    • Output: plaintext, or an error if the authentication tag does not match the supplied ciphertext or header.

The header part is intended to provide authenticity and integrity protection for networking or storage metadata for which confidentiality is unnecessary, but authenticity is desired.

In addition to protecting message integrity and confidentiality, authenticated encryption can provide security against chosen ciphertext attack. In these attacks, an adversary attempts to gain an advantage against a cryptosystem (e.g., information about the secret decryption key) by submitting carefully chosen ciphertexts to some "decryption oracle" and analyzing the decrypted results. Authenticated encryption schemes can recognize improperly-constructed ciphertexts and refuse to decrypt them. This in turn prevents the attacker from requesting the decryption of any ciphertext unless he generated it correctly using the encryption algorithm, which would imply that he already knows the plaintext. Implemented correctly, this removes the usefulness of the decryption oracle, by preventing an attacker from gaining useful information that he does not already possess.

Many specialized authenticated encryption modes have been developed for use with symmetric block ciphers. However, authenticated encryption can be generically constructed by combining an encryption scheme and a message authentication code (MAC), provided that:

  • The encryption scheme is semantically secure under a chosen plaintext attack.
  • The MAC function is unforgeable under a chosen message attack.

Bellare and Namprempre (2000) analyzed three compositions of these primitives, and demonstrated that encrypting a message and subsequently applying a MAC to the ciphertext (the Encrypt-then-MAC approach) implies security against an adaptive chosen ciphertext attack, provided that both functions meet the required properties. Katz and Yung investigated the notion under the name "unforgeable encryption" and proved it implies security against chosen ciphertext attacks.[8]

In 2013, a competition was announced to encourage design of authenticated encryption modes.[9]

Authenticated encryption with associated data (AEAD)

AEAD is a variant of AE where the data to be encrypted needs both authentication and integrity as opposed to just integrity. AEAD binds associated data (AD) to the ciphertext and to the context where it's supposed to appear, so that attempts to "cut-and-paste" a valid ciphertext into a different context are detected and rejected.

It is required, for example, by network packets. The header needs integrity, but must be visible; payload, instead, needs integrity and also confidentiality. Both need authenticity.

Approaches to authenticated encryption

Encrypt-then-MAC (EtM) {{anchor|Encrypt-then-MAC|EtM}}

The plaintext is first encrypted, then a MAC is produced based on the resulting ciphertext. The ciphertext and its MAC are sent together. Used in, e.g., IPsec.[10] The standard method according to ISO/IEC 19772:2009.[5] This is the only method which can reach the highest definition of security in AE, but this can only be achieved when the MAC used is "strongly unforgeable".[11] In November 2014, TLS and DTLS extension for EtM has been published as RFC 7366. Various EtM ciphersuites exist for SSHv2 as well (e.g. hmac-sha1-etm@openssh.com).

{{clear}}

Encrypt-and-MAC (E&M) {{anchor|Encrypt-and-MAC|E&M}}

A MAC is produced based on the plaintext, and the plaintext is encrypted without the MAC. The plaintext's MAC and the ciphertext are sent together. Used in, e.g., SSH.[12] Even though the E&M approach has not been proved to be strongly unforgeable in itself,[11] it is possible to apply some minor modifications to SSH to make it strongly unforgeable despite the approach.{{Citation needed|date=April 2016}}

{{clear}}

MAC-then-Encrypt (MtE) {{anchor|MAC-then-Encrypt|MtE}}

A MAC is produced based on the plaintext, then the plaintext and MAC are together encrypted to produce a ciphertext based on both. The ciphertext (containing an encrypted MAC) is sent. Used in, e.g., SSL/TLS.[13] Even though the MtE approach has not been proven to be strongly unforgeable in itself,[11] the SSL/TLS implementation has been proven to be strongly unforgeable by Krawczyk who showed that SSL/TLS was in fact secure because of the encoding used alongside the MtE mechanism.[14]{{Dubious |reason=BEAST attack has demonstrated otherwise. The paper is from 2001 and contains flawed assumptions about randomness of the IV.|date=January 2017}} Despite the theoretical security, deeper analysis of SSL/TLS modeled the protection as MAC-then-pad-then-encrypt, i.e. the plaintext is first padded to the block size of the encryption function. Padding errors often result in the detectable errors on the recipient's side, which in turn lead to padding oracle attacks, such as Lucky Thirteen.

{{clear}}

See also

  • Block cipher mode of operation
  • CCM mode
  • CWC mode
  • OCB mode
  • EAX mode
  • GCM
  • SGCM
  • Signcryption

References

1. ^"people had been doing rather poorly when they tried to glue together a traditional (privacy-only) encryption scheme and a message authentication code (MAC)", in: {{cite web |url=http://csrc.nist.gov/groups/ST/toolkit/BCM/documents/proposedmodes/eax/eax-spec.pdf |title=A Conventional Authenticated-Encryption Mode |publisher=NIST |accessdate=March 12, 2013 |author1=M. Bellare |author2=P. Rogaway |author3=D. Wagner }}
2. ^"it is very easy to accidentally combine secure encryption schemes with secure MACs and still get insecure authenticated encryption schemes", in: {{cite web |url=http://csrc.nist.gov/groups/ST/toolkit/BCM/documents/proposedmodes/cwc/cwc-spec.pdf |title=The CWC Authenticated Encryption (Associated Data) Mode |publisher=NIST |accessdate=March 12, 2013 |author1=T. Kohno |author2=J. Viega |author3=D. Whiting |last-author-amp=yes }}
3. ^{{cite web|url=https://cr.yp.to/talks/2013.03.12/slides.pdf|title=Failures of secret-key cryptography|last=|first=|date=|website=|publisher=Daniel J. Bernstein|archive-url=|archive-date=|dead-url=|accessdate=March 12, 2013}}
4. ^{{cite web| url=https://eprint.iacr.org/2000/039| title=Encryption Modes with Almost Free Message Integrity| last=Jutl| first=Charanjit S.| date=2000-08-01| work=Cryptology ePrint Archive: Report 2000/039| publisher=IACR| accessdate=2013-03-16}}
5. ^{{cite web|url=https://www.iso.org/iso/catalogue_detail.htm?csnumber=46345|title=Information technology -- Security techniques -- Authenticated encryption|last=|first=|date=|publisher=ISO/IEC|archive-url=|archive-date=|dead-url=|work=19772:2009|accessdate=March 12, 2013}}
6. ^{{cite web |url=http://csrc.nist.gov/groups/ST/toolkit/BCM/modes_development.html |title=Encryption modes development |publisher=NIST |accessdate=April 17, 2013}}
7. ^{{cite web |url=http://sponge.noekeon.org/SpongeDuplex.pdf |title=Duplexing The Sponge |author=The Keccak Team}}
8. ^{{Cite book|last=Katz|first=J.|last2=Yung|first2=M.|title=Unforgeable Encryption and Chosen Ciphertext Secure Modes of Operation|journal=Fast Software Encryption (FSE): 2000 Proceedings;|series=Lecture Notes in Computer Science|volume=1978|pages=284–299|editor=B. Schneier|doi=10.1007/3-540-44706-7_20|year=2001|isbn=978-3-540-41728-6}}
9. ^{{cite web|url=https://competitions.cr.yp.to/caesar.html|title=CAESAR: Competition for Authenticated Encryption: Security, Applicability, and Robustness|last=|first=|date=|website=|archive-url=|archive-date=|dead-url=|accessdate=March 12, 2013}}
10. ^{{cite web|url=https://tools.ietf.org/html/rfc4303#section-3.3.2.1|title=Separate Confidentiality and Integrity Algorithms|work=RFC 4303|publisher=Internet Engineering Task Force (IETF)|accessdate=2018-09-12}}
11. ^{{cite web|url=https://cseweb.ucsd.edu/~mihir/papers/oem.html|title=Authenticated Encryption: Relations among notions and analysis of the generic composition paradigm|last=|first=|date=|website=|publisher=M. Bellare and C. Namprempre|archive-url=|archive-date=|dead-url=|accessdate=April 13, 2013}}
12. ^{{cite web|url=https://tools.ietf.org/html/rfc4253#section-6.4|title=Data Integrity|work=RFC 4253|publisher=Internet Engineering Task Force (IETF)|accessdate=2018-09-12}}
13. ^{{cite web|url=https://tools.ietf.org/html/rfc5246#section-6.2.3|title=Record Payload Protection|work=RFC 5246|publisher=Internet Engineering Task Force (IETF)|accessdate=2018-09-12}}
14. ^{{cite web |url=https://www.iacr.org/archive/crypto2001/21390309.pdf |title=The Order of Encryption and Authentication for Protecting Communications (Or: How Secure is SSL?) |publisher=H. Krawczyk |accessdate=April 13, 2013}}
General
  • {{Citation

|url=https://cseweb.ucsd.edu/~mihir/papers/oem.html
|first = M. |last = Bellare |first2 = C. |last2 = Namprempre
|title = Authenticated Encryption: Relations among notions and analysis of the generic composition paradigm
|journal = Extended Abstract in Advances in Cryptology: Asiacrypt 2000 Proceedings
|series = Lecture Notes in Computer Science |volume = 1976 |editor = T. Okamoto |publisher = Springer-Verlag |year = 2000
|doi = 10.1007/3-540-44448-3_41
|pages = 531
|isbn = 978-3-540-41404-9
}}

External links

  • NIST: Modes Development
  • How to choose an Authenticated Encryption mode
{{Cryptography navbox | hash}}

1 : Symmetric-key cryptography

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/9/24 9:19:32