28.02.2014 Views

Internet & Intranet Security Management - Risks & Solutions

Internet & Intranet Security Management - Risks & Solutions

Internet & Intranet Security Management - Risks & Solutions

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

These sequence numbers take the role of what are known as logical time-stamps, a well-known<br />

concept in the theory of Distributed Systems, following (Lamport, 1978).<br />

Nonce-Based Protocols<br />

Nonce-based (or challenge-response) protocols use a quite different mechanism to provide freshness<br />

checking. One party, A say, sends the other party, B say, a nonce (Number used ONCE) as a<br />

challenge. B then includes this nonce in the response to A. Because the nonce has never been used<br />

before, at least within the lifetime of the current key, A can verify the 'freshness' of B's response<br />

(given that message integrity is provided by some cryptographic mechanism). Note that it is always<br />

up to A, the nonce provider, to ensure that the choice of nonce is appropriate, i.e. that it has not been<br />

used before.<br />

The main property required of a nonce is the 'one-time' property. Thus, if that is all that is ever<br />

required, A could ensure it by keeping a single counter and whenever a nonce is required, for use<br />

with any other party, the current counter value is used (and the counter is incremented). However, in<br />

order to prevent a special type of attack, many protocols also need nonces to be unpredictable to any<br />

third party. Hence nonces are typically chosen at random from a set sufficiently large to mean that<br />

the probability of the same nonce being used twice is effectively zero.<br />

Example Protocols<br />

We now consider a variety of examples of authentication protocols taken from parts 2, 3 and 4 of<br />

ISO/IEC 9798. We give examples based on both types of freshness mechanism.<br />

A Unilateral Authentication Protocol Using Timestamps and Encipherment<br />

The first example can be found in clause 5.1.1 of ISO/IEC 9798-2. It is based on the use of timestamps<br />

(for freshness) and encipherment (for origin and integrity checking). It provides unilateral<br />

authentication (B can check A's identity, but not vice versa). In the message description (here and<br />

subsequently) we use the following notation:<br />

• x | | y denotes the concatenation of data items x and y,<br />

• Text1 and Text2 are data strings, whose use will depend on the application of the protocol,

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!