Woo–Lam
In cryptography, Woo–Lam refers to various computer network authentication protocols designed by Simon S. Lam and Thomas Woo.[1][2] The protocols enable two communicating parties to authenticate each other's identity and to exchange session keys, and involve the use of a trusted key distribution center (KDC) to negotiate between the parties. Both symmetric-key and public-key variants have been described. However, the protocols suffer from various security flaws, and in part have been described as being inefficient compared to alternative authentication protocols.[3]
Contents |
Public-key protocol [edit]
Notation [edit]
The following notation is used to describe the algorithm:
- network nodes.
- public key of node
.
- private key of
.
- nonce chosen by
.
- unique identifier of
.
- public-key encryption using key
.
- digital signature using key
.
- random session key chosen by the KDC.
- concatenation.
It is assumed that all parties know the KDC's public key.
Message exchange [edit]
The original version of the protocol[4] had the identifier
omitted from lines 5 and 6, which did not account for the fact that
is unique only among nonces generated by A and not by other parties. The protocol was revised after the authors themselves spotted a flaw in the algorithm.[1][3]
See also [edit]
References [edit]
- ^ a b T.Y.C. Woo, S.S. Lam (March 1992). "Authentication Revisited". Computer (IEEE) 25 (3). doi:10.1109/2.121502.
- ^ Colin Boyd, Anish Mathuria (2003). Protocols for authentication and key establishment. Springer. p. 78 and 99. ISBN 978-3-540-43107-7.
- ^ a b Stallings, William (2005). Cryptography and Network Security Principles and Practices, Fourth Edition. Prentice Hall. p. 387. ISBN 0-13-187316-4.
- ^ Thomas Y.C. Woo, Simon S. Lam (January 1992). Authentication for Distributed Systems 25 (1). IEEE. pp. 39–52. doi:10.1109/2.108052.
| This cryptography-related article is a stub. You can help Wikipedia by expanding it. |
- network nodes.
- public key of node
.
- private key of
-
- unique identifier of
-
.
-
- random session key chosen by the KDC.
- concatenation.
![2) KDC \rightarrow : S_{KR_{KDC}}[ID_B||KU_B]](http://upload.wikimedia.org/math/b/f/8/bf8fe7d5f7445ca61f7fbae2dce974e3.png)
![3) A \rightarrow B : E_{KU_B}[N_A||ID_A]](http://upload.wikimedia.org/math/b/8/8/b880386b27b0419c3d229593aa15c6d3.png)
![4) B \rightarrow KDC: ID_B||ID_A||E_{KU_{KDC}}[N_A]](http://upload.wikimedia.org/math/5/e/9/5e9ae90c79e4c6fcd36e88950acf4127.png)
![5) KDC \rightarrow B : S_{KR_{KDC}}[ID_A||KU_A]||E_{KU_B}[S_{KR_{KDC}}[N_A||K||ID_B||ID_A]]](http://upload.wikimedia.org/math/5/6/6/566ca47c563183bb73ab04e56334c467.png)
![6) B \rightarrow A : E_{KU_A}[S_{KR_{KDC}}[N_A || K || ID_A || ID_B ] || N_B]]](http://upload.wikimedia.org/math/f/4/c/f4c94fd9bba64c31f19e30e4c3d836cd.png)
![7) A \rightarrow B : E_{K}[N_B]](http://upload.wikimedia.org/math/c/9/9/c994bba8142d7182dab6538e34388ac6.png)