Title: VIII' MESSAGE AUTHENTICATION AND HASH FUNCTIONS
1VIII. MESSAGE AUTHENTICATION AND HASH FUNCTIONS
- Introdution to the requirements for
authentication and digital signature and the
types of attacks to be countered. Then the basic
approaches are surveyed.
21.AUTHENTICATION REQUIREMENTS
- Disclosure Release of message contents to any
person or process not possessing the appropriate
cryptographic key. - Traffic analysis Discovery of the pattern of
traffic between parties. - Masquerade Insertion of message into the
network from a fraudulent source. - Content modification Changes to the contents of
a message, including insertion, deletion,
transposition, and modification.
31.AUTHENTICATION REQUIREMENTS
- Sequence modification Any modification to a
sequence of messages between parties, including
insertion, deletion, and reordering. - Timing modification Delay or replay of
messages. - Repudiation Denial of receipt of message by
destination or denial of transmission of message
by source.
42.AUTHENTICATION FUNCTIONS
- Authentication functions may be grouped into
three classes - Message encryption The ciphertext of the entire
message serves as its authenticator. - Message authentication code (MAC) A public
function of the message and a secret key that
produces a fixed-length value that serves as the
authenticator. - Hash function A public function that maps a
message of any length into a fixed-length hash
value, which serves as the authenticator.
52.AUTHENTICATION FUNCTIONS
- Message Encryption
- Message encryption by itself can provide a
measure of authentication.
62.AUTHENTICATION FUNCTIONS
Source
Destination
M
M
E
D
(c) Public-key encryption authentication and
signature
M
M
E
D
D
E
(d) Public-key encryption confidentiality,
authentication and signature
Basic Uses of Message Encryption
72.AUTHENTICATION FUNCTIONS
- Message Authentication Code
- generated a small fixed-size block of data by use
of a secret key
82.AUTHENTICATION FUNCTIONS
92.AUTHENTICATION FUNCTIONS
- Hash function
- accepts a variable-size message M as input and
produces a fixed-size hash code H(M) - The hash code is a function of all the bits of
the message and provides an error-detection
capability
102.AUTHENTICATION FUNCTIONS
112.AUTHENTICATION FUNCTIONS
122.AUTHENTICATION FUNCTIONS
133.MESSAGE AUTHENTICATION CODES
- Requirements for MACs
- If an opponent observers M and Ck(M), it should
be computationally infeasible for the opponent to
construct a message M such that Ck(M) Ck(M) - Ck(M) should be uniformly distributed In the
sense that for randomly chosen messages, M and
M, the probability that Ck(M) Ck(M) is 2-n,
where n is the number of bits in the MAC. - Let M be equal to some known transformation on
M. That is M f(M). For example, f may involve
inverting one or more specific bits.In that case,
PrCk(M) Ck(M) 2-n.
143.MESSAGE AUTHENTICATION CODES
- Message Authentication Code Based on DES
- ANSI Standard X9.17 MAC
154.HASH FUNCTIONS
- Requirement for a Hash Function
- H can be applied to a block data of any size.
- H produces a fixed-length output.
- H(x) is relatively easy to compute for any given
x, making both hardware and software
implementations practical. - For any given code h, it is computationally
infeasible to find x such that H(x) h. (one-way
property) - For any given block x, it is infeasible to find y
? x with H(y) H(x). (weak collision resistance) - It is infeasible to find any pair (x, y) such
that H(x) H(y). (strong collision resistance)
164.HASH FUNCTIONS
- Simple Hash Function
- Ci Ith bit of the hash code, 1lt I ltn
- m number of n-bit blocks in the input
- bij ith bit in jth block
- XOR operation
174.HASH FUNCTIONS
- Birthday Attacks
- Message M
- Find an M such that H(M) H(M)
- On average, the opponent would have to try about
263 message to find one that matches the hash
code of the intercepted message - By the birthday paradox, the level of effort
required is only on the order of 232
184.HASH FUNCTIONS
- Block Chaining Techniques
- Based on using a cipher block chaining technique
without secrete key - Meet in the middle attack
195.SECURITY OF HASH FUNCTIONS AND MACS
- Brute-Force Attacks
- Hash Function
- One Way -gt 2n
- Weak collision resistance -gt 2n
- Strong collision resistance -gt2n/2
- Message Authentication Codes
- Min(2k, 2n)
- k key length
- n MAC length
205.SECURITY OF HASH FUNCTIONS AND MACS
- Cryptanalysis
- An ideal hash of MAC algorithm require a
cryptanalytic effort greater than or equal to the
brute-force effort. - Hash Functions
- Focuses on the internal structure of f
- Based on attempts to find efficient techniques
for producing collisions for a single execution
of f - Message Authentication Codes
- Difficult to generalize