Authentication - Lamport hash and biometrics

CS 513 -- System Security -- March 4, 1999 -- Lecture 12
Lecturer: Professor Fred B. Schneider

Lecture notes by Borislav Deianov


Last time we discussed the use of "something you have" for authentication---in particular, various types of smart cards and cryptographic calculators.

Today, we discuss one final protocol for such a device. This was devised by Leslie Lamport and is sometimes called Lamport's hash or Lamport's password scheme. This method of authentication was popularized as S/KEY. (Note. What follows is modified from what was presented in lecture. The protocol presented in lecture was vulnerable to a intercept/replay attack.)

In what follows, h is assumed to be a cryptographic hash function (see Lecture 10); n and m are natural numbers (initially, n = m = 1000, or so). The scheme works as follows:
userCPU
user stores:
uid,password
server stores:
uid,n,m,H = hm(password)
n := n-1
user computes:
hn(password)
if hm-n(s) = H
then m := n; H := s; accept
else reject
To understand how the scheme works, assume that an eavesdropper is able to learn the contents of all messages exchanged between the user and the server. After the user has been authenticated, the attacker knows n and hn(password). By the properties of the cryptographic function h, the attacker is able to compute hm(password) for all m greater than or equal to n but not for any smaller m. However, such values of hm(password) are useless to the attacker because subsequent authentication challenges send smaller values for n.

Note the following about the scheme:

This completes our discussion of authentication based on "something you have". Our next topic is:

Biometrics - "something you are"

Examples: When using this general approach we need to address the following issues: