Message Authenticator Algorithm
   HOME





Message Authenticator Algorithm
The Message Authenticator Algorithm (MAA) was one of the first Cryptography, cryptographic functions for computing a message authentication code (MAC). History 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 of the MAA was given in a combination of natural language and tables, complemented by two implementations in C (programming language), C and BASIC programming languages. The MAA was adopted by ISO in 1987 and became part of international standards ISO 8730 and ISO 8731-2 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, ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Cryptography
Cryptography, or cryptology (from "hidden, secret"; and ''graphein'', "to write", or ''-logy, -logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of Adversary (cryptography), adversarial behavior. More generally, cryptography is about constructing and analyzing Communication protocol, protocols that prevent third parties or the public from reading private messages. Modern cryptography exists at the intersection of the disciplines of mathematics, computer science, information security, electrical engineering, digital signal processing, physics, and others. Core concepts related to information security (confidentiality, data confidentiality, data integrity, authentication, and non-repudiation) are also central to cryptography. Practical applications of cryptography include electronic commerce, Smart card#EMV, chip-based payment cards, digital currencies, password, computer passwords, and military communications. ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Message Authentication Code
In cryptography, a message authentication code (MAC), sometimes known as an authentication tag, is a short piece of information used for authentication, authenticating and Data integrity, integrity-checking a message. In other words, it is used to confirm that the message came from the stated sender (its authenticity) and has not been changed (its integrity). The MAC value allows verifiers (who also possess a secret key) to detect any changes to the message content. Terminology The term message integrity code (MIC) is frequently substituted for the term ''MAC'', especially in communications to distinguish it from the use of the latter as ''media access control address'' (''MAC address''). However, some authors use MIC to refer to a message digest, which aims only to uniquely but opaquely identify a single message. RFC 4949 recommends avoiding the term ''message integrity code'' (MIC), and instead using ''checksum'', ''error detection code'', ''hash function, hash'', ''keyed hash'' ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Donald Davies
Donald Watts Davies, (7 June 1924 – 28 May 2000) was a Welsh computer scientist and Internet pioneer who was employed at the UK National Physical Laboratory (NPL). During 1965-67 he invented modern data communications, including packet switching, high-speed routers, layered communication protocols, hierarchical computer networks and the essence of the end-to-end principle, concepts that are used today in computer networks worldwide. He envisioned, in 1966, that there would be a "single network" for data and telephone communications. Davies proposed and studied a commercial national data network in the United Kingdom and designed and built the first implementation of packet switching in the local-area NPL network in 1966-69 to demonstrate the technology. Many of the wide-area packet-switched networks built in the late 1960s and 1970s were similar "in nearly all respects" to his original 1965 design. Davies' work influenced the ARPANET in the United States and the CYCLAD ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

National Physical Laboratory (United Kingdom)
The National Physical Laboratory (NPL) is the national measurement standards laboratory of the United Kingdom. It sets and maintains physical standards for British industry. Founded in 1900, the NPL is one of the oldest metrology institutes in the world. Research and development work at the laboratory has contributed to the advancement of many disciplines of science, including the development of early computers in the late 1940s and 1950s, construction of the first accurate atomic clock in 1955, and the invention and first implementation of packet switching in the 1960s, which is today one of the fundamental technologies of the Internet. The former heads of NPL include many individuals who were pillars of the British scientific establishment. NPL is based at Bushy Park in Teddington, southwest London. It is operated by NPL Management Ltd, a company owned by the Department for Science, Innovation and Technology, and is one of the most extensive government laboratories in the ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

C (programming Language)
C (''pronounced'' '' – like the letter c'') is a general-purpose programming language. It was created in the 1970s by Dennis Ritchie and remains very widely used and influential. By design, C's features cleanly reflect the capabilities of the targeted Central processing unit, CPUs. It has found lasting use in operating systems code (especially in Kernel (operating system), kernels), device drivers, and protocol stacks, but its use in application software has been decreasing. C is commonly used on computer architectures that range from the largest supercomputers to the smallest microcontrollers and embedded systems. A successor to the programming language B (programming language), B, C was originally developed at Bell Labs by Ritchie between 1972 and 1973 to construct utilities running on Unix. It was applied to re-implementing the kernel of the Unix operating system. During the 1980s, C gradually gained popularity. It has become one of the most widely used programming langu ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


BASIC
Basic or BASIC may refer to: Science and technology * BASIC, a computer programming language * Basic (chemistry), having the properties of a base * Basic access authentication, in HTTP Entertainment * Basic (film), ''Basic'' (film), a 2003 film * Basic, one of the Galactic Basic, languages in ''Star Wars'' Music * Basic (Glen Campbell album), ''Basic'' (Glen Campbell album), 1978 * Basic (Robert Quine and Fred Maher album), ''Basic'' (Robert Quine and Fred Maher album), 1984 * B.A.S.I.C. (Alpinestars album), ''B.A.S.I.C.'' (Alpinestars album), 2000 * Basic (Brown Eyed Girls album), ''Basic'' (Brown Eyed Girls album), 2015 * B.A.S.I.C. (The Basics album), ''B.A.S.I.C.'' (The Basics album), 2019 Places * Basic, Mississippi, a community in the US * BASIC countries, Brazil, South Africa, India and China in climate change negotiations Organizations * BASIC Bank Limited, government owned bank in Bangladesh * Basic Books, an American publisher Other uses * Basic (cigarette), a brand ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Formal Methods
In computer science, formal methods are mathematics, mathematically rigorous techniques for the formal specification, specification, development, Program analysis, analysis, and formal verification, verification of software and computer hardware, hardware systems. The use of formal methods for software and hardware design is motivated by the expectation that, as in other engineering disciplines, performing appropriate mathematical analysis can contribute to the reliability and robustness of a design. Formal methods employ a variety of theoretical computer science fundamentals, including logic in computer science, logic calculi, formal languages, automata theory, control theory, program semantics, type systems, and type theory. Uses Formal methods can be applied at various points through the software development process, development process. Specification Formal methods may be used to give a formal description of the system to be developed, at whatever level of detail desired. F ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Z Notation
The Z notation is a formal specification language used for describing and modelling computing systems. It is targeted at the clear specification of computer programs and computer-based systems in general. History In 1974, Jean-Raymond Abrial published "Data Semantics". He used a notation that would later be taught in the University of Grenoble until the end of the 1980s. While at EDF ( Électricité de France), working with Bertrand Meyer, Abrial also worked on developing Z. The Z notation is used in the 1980 book ''Méthodes de programmation''. Z was originally proposed by Abrial in 1977 with the help of Steve Schuman and Bertrand Meyer. It was developed further at the Programming Research Group at Oxford University, where Abrial worked in the early 1980s, having arrived at Oxford in September 1979. Abrial has said that Z is so named "Because it is the ultimate language!" although the name " Zermelo" is also associated with the Z notation through its use of Zermelo–Frae ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Vienna Development Method
The Vienna Development Method (VDM) is one of the longest-established formal methods for the development of computer-based systems. Originating in work done at the IBM Laboratory Vienna in the 1970s, it has grown to include a group of techniques and tools based on a formal specification language—the VDM Specification Language (VDM-SL). It has an extended form, VDM++, which supports the modeling of object-oriented and concurrent systems. Support for VDM includes commercial and academic tools for analyzing models, including support for testing and proving properties of models and generating program code from validated VDM models. There is a history of industrial usage of VDM and its tools and a growing body of research in the formalism has led to notable contributions to the engineering of critical systems, compilers, concurrent systems and in logic for computer science. Philosophy Computing systems may be modeled in VDM-SL at a higher level of abstraction than is achievable using ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Miranda (programming Language)
Miranda is a lazy evaluation, lazy, functional programming, purely functional programming language designed by David Turner (computer scientist), David Turner as a successor to his earlier programming languages SASL programming language, SASL and Kent Recursive Calculator, KRC, using some concepts from ML (programming language), ML and Hope (programming language), Hope. It was produced by Research Software Ltd. of England (which holds a trademark on the name ''Miranda'') and was the first purely functional language to be commercially supported. Miranda was first released in 1985 as a fast interpreter in C (programming language), C for Unix-flavour operating systems, with subsequent releases in 1987 and 1989. It had a strong influence on the later Haskell language. Turner stated that the benefits of Miranda over Haskell are: "Smaller language, simpler type system, simpler arithmetic". In 2020 a version of Miranda was released as open source under a BSD 2-Clause, BSD licence. The ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Modula-2
Modula-2 is a structured, procedural programming language developed between 1977 and 1985/8 by Niklaus Wirth at ETH Zurich. It was created as the language for the operating system and application software of the Lilith personal workstation. It was later used for programming outside the context of the Lilith. Wirth viewed Modula-2 as a successor to his earlier programming languages Pascal and Modula. The main concepts are: # The module as a compiling unit for separate compiling # The coroutine as the basic building block for concurrent processes # Types and procedures that allow access to machine-specific data The language design was influenced by the Mesa language and the Xerox Alto, both from Xerox PARC, that Wirth saw during his 1976 sabbatical year there. Page 4. The computer magazine ''Byte'' devoted the August 1984 issue to the language and its surrounding environment. Wirth created the Oberon series of languages as the successor to Modula-2, while others (particularl ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]