In cryptography, security (engineering) protocol notation, also known as protocol narrations[1] and Alice & Bob notation, is a way of expressing a protocol of correspondence between entities of a dynamic system, such as a computer network. In the context of a formal model, it allows reasoning about the properties of such a system.

The standard notation consists of a set of principals (traditionally named Alice, Bob, Charlie, and so on) who wish to communicate. They may have access to a server S, shared keys K, timestamps T, and can generate nonces N for authentication purposes.

A simple example might be the following:

This states that Alice intends a message for Bob consisting of a plaintext X encrypted under shared key KA,B.

Another example might be the following:

This states that Bob intends a message for Alice consisting of a nonce NB encrypted using public key of Alice.

A key with two subscripts, KA,B, is a symmetric key shared by the two corresponding individuals. A key with one subscript, KA, is the public key of the corresponding individual. A private key is represented as the inverse of the public key.

The notation specifies only the operation and not its semantics — for instance, private key encryption and signature are represented identically.

We can express more complicated protocols in such a fashion. See Kerberos as an example. Some sources refer to this notation as Kerberos Notation.[2] Some authors consider the notation used by Steiner, Neuman, & Schiller[3] as a notable reference.[4]

Several models exist to reason about security protocols in this way, one of which is BAN logic.

Security protocol notation inspired many of the programming languages used in choreographic programming.

References

edit
  1. ^ Briais, Sébastien; Nestmann, Uwe (2005). "A Formal Semantics for Protocol Narrations" (PDF). Trustworthy Global Computing. Lecture Notes in Computer Science. Vol. 3705. pp. 163–181. Bibcode:2005LNCS.3705..163B. doi:10.1007/11580850_10. ISBN 978-3-540-30007-6.
  2. ^ Chappell, David (1999). "Exploring Kerberos, the Protocol for Distributed Security in Windows 2000". Microsoft Systems Journal. Archived from the original on 2017-08-15.
  3. ^ Steiner, J. G.; Neuman, B. C.; Schiller, J. I. (February 1988). "Kerberos: An Authentication Service for Open Network Systems" (PDF). Proceedings of the Winter 1988 Usenix Conference. Usenix. Berkeley, CA: USENIX Association. pp. 191–201. Archived from the original (PDF) on 2010-08-06. Retrieved 2009-06-10.
  4. ^ Davis, Don; Swick, Ralph (1989-03-17). Workstation Services and Kerberos Authentication at Project Athena (PS). p. 1. Retrieved 2009-06-10. …our notation follows Steiner, Neuman, & Schiller,…


📚 Artikel Terkait di Wikipedia

Choreographic programming

Choreographic languages are inspired by security protocol notation (also known as "Alice and Bob" notation). The key to these languages is the communication

Burrows–Abadi–Needham logic

analyze authentication protocols. Use of the BAN logic often accompanies a security protocol notation formulation of a protocol and is sometimes given

Simple Network Management Protocol

original version of the protocol. More recent versions, SNMPv2c and SNMPv3, feature improvements in performance, flexibility and security. SNMP is a component

Alice and Bob

Martin Gardner Public-key cryptography Security protocol notation R. Shirey (August 2007). Internet Security Glossary, Version 2. Network Working Group

Needham–Schroeder protocol

{\displaystyle A} and B {\displaystyle B} The protocol can be specified as follows in security protocol notation: A → S : A , B , N A {\displaystyle A\rightarrow

Otway–Rees protocol

allowing for the detection of modification. The protocol can be specified as follows in security protocol notation, where Alice is authenticating herself to

List of network protocols (OSI model)

Streaming Protocol SMTP SNMP FTP NTP IRC Telnet Tele Communication Protocol SSH IMAP Gemini Controller Area Network Abstract Syntax Notation One (ASN.1)

Cryptographic protocol

A cryptographic protocol is an abstract or concrete protocol that performs a security-related function and applies cryptographic methods, often as sequences