Jump to content

Message Authenticator Algorithm

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Vasywriter (talk | contribs) at 21:53, 25 January 2018 (External links). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The Message Authenticator Algorithm (MAA) was one of the first cryptographic functions for computing a Message Authentication Code. It was designed in 1983 by Donald Davies and David Clayden at the National Physical Laboratory (United Kingdom) in response to a request of the UK Bankers Automated Clearing Services. The MAA was one of the first Message Authentication Code algorithms to gain widespread acceptance.

Development and Standardization

The original specification[1][2] of the MAA was given in a combination of natural language and tables, complemented by two implementations in C and BASIC programming languages.

The MAA was adopted by ISO in 1987 and became part of international standards ISO 8730[3][4] and ISO 8731-2[5] intended to secure the authenticity and integrity of banking transactions.

Attacks

Later, cryptanalysis of MAA revealed various weaknesses, including feasible brute-force attacks, existence of collision clusters, and key-recovery techniques[6][7][8][9]. For this reason, MAA was withdrawn from ISO standards in 2002.

Formal specifications of the MAA

The MAA has been used as a prominent case study for assessing various formal methods.

In the early 90s, the NPL developed three formal specifications of the MAA: one in Z[10], one in LOTOS[11], and one in VDM[12][13]. The VDM specification became part of the 1992 revision of the International Standard 8731-2, and three implementations in C, Miranda, and Modula-2[14] were manually derived from that latter specification.

Other formal models of the MAA have been developed. In 2017, a complete formal specification of the MAA as a large term rewriting system was published[15]. From this specifications, implementations of the MAA in fifteen different languages have been generated automatically.

Bibliography

  1. ^ Davies, Donald W. (1985). "A Message Authenticator Algorithm Suitable for a Mainframe Computer". Advances in Cryptology – Proceedings of the Workshop on the Theory and Application of Cryptographic Techniques (CRYPTO’84), Santa Barbara, CA, USA. Lecture Notes in Computer Science. Vol. 196. Springer. pp. 393–400. doi:10.1007/3-540-39568-7_30. {{cite conference}}: Unknown parameter |booktitle= ignored (|book-title= suggested) (help)
  2. ^ Davies, Donald W.; Clayden, David O. (1988). The Message Authenticator Algorithm (MAA) and its Implementation (PDF) (NPL Report DITC 109/88). Teddington, Middlesex, UK: National Physical Laboratory.
  3. ^ International Organization for Standardization (1987). International Standard 8731-2. Approved Algorithms for Message Authentication – Part 2: Message Authenticator Algorithm (MAA) (Report). Geneva.
  4. ^ International Organization for Standardization (1992). International Standard 8731-2. Approved Algorithms for Message Authentication – Part 2: Message Authenticator Algorithm (MAA) (Report). Geneva.
  5. ^ International Organization for Standardization (1990). International Standard 8730. Requirements for Message Authentication (Wholesale) (Report). Geneva.
  6. ^ Preneel, Bart; van Oorschot, Paul C. (1996). On the Security of Two MAC Algorithms. Advances in Cryptology – Proceedings of the International Conference on the Theory and Application of Cryptographic Techniques (EUROCRYPT’96), Saragossa, Spain. Lecture Notes in Computer Science. Vol. 1070. Springer. pp. 19–32. doi:10.1007/3-540-68339-9_3.
  7. ^ Template:Cite article
  8. ^ Template:Cite article
  9. ^ Rijmen, Vincent; Preneel, Bart; De Win, Erik (1996). Key Recovery and Collision Clusters for MAA (PDF). Proceedings of the 1st International Conference on Security in Communication Networks (SCN’96).
  10. ^ M. K. F. Lai (1991). A Formal Interpretation of the MAA Standard in Z (NPL Report DITC 184/91). Teddington, Middlesex, UK: National Physical Laboratory.
  11. ^ Harold B. Munster (1991). LOTOS Specification of the MAA Standard, with an Evaluation of LOTOS (PDF) (NPL Report DITC 191/91). Teddington, Middlesex, UK: National Physical Laboratory.
  12. ^ Graeme I. Parkin; G. O’Neill (1990). Specification of the MAA Standard in VDM (NPL Report DITC 160/90). National Physical Laboratory, Teddington, Middlesex, UK.
  13. ^ Graeme I. Parkin; G. O’Neill (1991). Søren Prehn; W. J. Toetenel (eds.). Specification of the MAA Standard in VDM. Formal Software Development – Proceedings (Volume 1) of the 4th International Symposium of VDM Europe (VDM’91), Noordwijkerhout, The Netherlands. Lecture Notes in Computer Science. Vol. 551. Springer. pp. 526–544. doi:10.1007/3-540-54834-3_31.
  14. ^ R. P. Lampard (1991). An Implementation of MAA from a VDM Specification (NPL Technical Memorandum DITC 50/91). Teddington, Middlesex, UK: National Physical Laboratory.
  15. ^ Garavel, Hubert; Marsso, Lina (2017). A Large Term Rewrite System Modelling a Pioneering Cryptographic Algorithm. Proceedings of the 2nd Workshop on Models for Formal Analysis of Real Systems (MARS'17), Uppsala, Sweden. 55 pages.