The Neuman–Stubblebine protocol is a computer network authentication protocol designed for use on insecure networks (e.g., the Internet). It allows individuals communicating over such a network to prove their identity to each other. This protocol utilizes time stamps, but does not depend on synchronized clocks.
If Alice (A) initiates the communication to Bob (B) with S is a server trusted by both parties, the protocol can be specified as follows using security protocol notation:
KAS
KBS
NA
NB
TA
TB
KAB
A → B:A,NA
Alice notified Bob of intent to initiate secure communication.
B → S:B,NB,\{A,NA,TB\}
KBS |
Bob generates a times stamp and a nonce, and sends this to the trusted Server.
S → A:\{B,NA,KAB,TB\}
KAS |
,\{A,KAB,TB\}
KBS |
,NB
The trusted Server generates a session key and a message for Alice to forward to Bob.
A → B:\{A,KAB,TB\}
KBS |
,\{NB\}
KAB |
NA
TB
NB
An advantage provided by this protocol is that Alice can utilize the trusted Server's message to initiate authentication with Bob within some predetermined time limit without utilizing the trusted Server. The protocol proceeds as follows using the same definitions as above.
A → B:\{A,KAB,TB\}
KBS |
,N'A
Alice sends the message the trusted Server sent her previously when communication with Bob.
B → A:N'B,\{N'A\}
KAB |
Bob sends Alice a new nonce and her new nonce encrypted with session key that Alice resent from previous communication.
A → B:\{N'B\}
KAB |
Alice returns Bob's nonce encrypted with the session key to allow him to verify the communication is successful.
Using the theorem prover SPASS it has been shown that this protocol can be attacked. This attack and two more from are outlined in http://www.lsv.ens-cachan.fr/Software/spore/neumannStubblebine.pdf.