Authentication Requirements
In the context of communications across a network, the following attacks can be identified:
1. Disclosure: Release of message contents to any person or process not possessing the appropriate cryptographic key.
2. Traffic analysis: Discovery of the pattern of traffic between parties. In a connection oriented application, the frequency and duration of connections could be determined. In either a connection-oriented or connectionless environment, the number and length of messages between parties could be determined.
3. Masquerade: Insertion of messages into the network from a fraudulent source. This includes the creation of messages by an opponent that are purported to come from an authorized entity. Also included are fraudulent acknowledgments of message receipt or nonreceipt by someone other than the message recipient.
4. Content Modification: Changes to the contents of a message, including insertion, deletion, transposition, or modification.
5. Sequence modification: Any modification to a sequence of messages between parties, including insertion, deletion, and reordering.
6. Timing modification: Delay or replay of messages. In a connection-orientated application, an entire session or sequence of messages could be a replay of some previous valid session, or individual messages in the sequence could be delayed or replayed.
7. Repudiation: Denial of receipt of message by destination or denial of transmission of message by source.
Message authentication is a procedure to verify that received messages come from the alleged source and have not been altered. Message authentication may also verify sequencing and timeliness. A digital signature is an authentication technique that also includes measures to counter repudiation by either source or destination.
Any message authentication or digital signature mechanism can be viewed as having fundamentally two levels. At the lower level, there must be some sort of function that produces an authenticator: a value to be used to authenticate a message. This lowerlevel function is then used as primitive in a higher-level authentication protocol that enables a receiver to verify the authenticity of a message.
This section is concerned with the types of functions that may be used to produce an authenticator. These functions may be grouped into three classes, as follows:
1. Message Encryption: The ciphertext of the entire message serves as its authenticator.
2. Message Authentication Code1 (MAC): A public function of the message and a secret key that produces a fixed length value that serves as the authenticator.
3. Hash Functions: A public function that maps a message of any length into a fixed length hash value, which serves as the authenticator.
We will mainly be concerned with the last class of function however it must be noted that hash functions and MACs are very similar except that a hash code doesn’t require a secret key. With regard to the first class, this can be seen to provide authentication
by virtue of the fact that only the sender and receiver know the key. Therefore the message could only have come from the sender. However there is also the problem that the plaintext message should be recognisable as plaintext message (for example if it was some sort of digitised X-rays it mightn’t be).
No comments:
Post a Comment