Cryptography Reference
In-Depth Information
Table 11.2 The MD4 family of hash functions
Algorithm
Output
Input
No. of
Collisions
[bit]
[bit]
rounds
found
MD5
128
512
64
yes
SHA-1
160
512
80
not yet
SHA-224 224
512
64
no
SHA-256 256
512
64
no
SHA-2
SHA-384 384
1024
80
no
SHA-512 512
1024
80
no
preimage and second preimage resistance are required. For such applications, MD5
is still sufficient.
11.3.2 Hash Functions from Block Ciphers
Hash functions can also be constructed using block cipher chaining techniques. As
in the case of dedicated hash functions like SHA-1, we divide the message x into
blocks x i of a fixed size. Figure 11.6 shows a construction of such a hash function:
The message chunks x i are encrypted with a block cipher e of block size b .As m -bit
key input to the cipher, we use a mapping g from the previous output H i 1 , which
is a b -to- m -bit mapping. In the case of b = m , which is, for instance, given if AES
with a 128-bit key is being used, the function g can be the identity mapping. After
the encryption of the message block x i , we XOR the result to the original message
block. The last output value computed is the hash of the whole message x 1 , x 2 , ... , x n ,
i.e., H n = h ( x ).
Fig. 11.6 The Matyas-Meyer-Oseas hash function construction from block ciphers
The function can be expressed as:
H i = e g ( H i 1 ) ( x i )
x i
This construction, which is named after its inventors, is called the Matyas-Meyer-
Oseas hash function.
Search WWH ::




Custom Search