Secure Hash Algorithm
[Link]@[Link]
+91-9441020846
Comparison of Secure Hash Algorithms
SHA 512
• Input: Message of length < (2^128) bits
• Output: 512 bit Message Digest
• Input is processed in 1024 bit blocks
• Steps in processing: 7 steps
Append padding bits such that length is congruent to 896 (mod
1024)
Append length (128 bit unsigned integer representing length before
padding)
Initialize Hash buffer ( 8 no. of 64-bit registers namely a,b,c,d,e,f,g,h
to hold initial and final hash values in big endian fashion. Initialized
by taking first 64-bits of fractional parts of square root of first eight
prime numbers)
Process message in 1024 bit /128 Word blocks
Output
Message Digest Generation
Step 4: F expanded
Contd..
• 80 rounds i.e. 0>=t<=79 where ‘t’ is round
• Each round makes use of wt (64 bit) derived
from Mi after message schedule ( explained
later)
• Each round also uses Kt (additive constant) i.e.
first 64-bits of fractional part of cube root of
first 80 prime numbers removing regularities
in the input data (randomization)
Step 5: Output
Round Function
Equations guiding Round function
Contd..
Derivation wt from 1024 bit Messages
Contd..
• First 16 values of wt are taken directly from 16 words
of current block. Remaining values are computed as:
Security of SHA 512
• Every bit of hash code is function of every bit
of input.
• Two message blocks having similarity produce
same hash because of repetition in F
structure.
• Difficulty of 2 messages having same digest is
on order of 2^256 operations.
• Difficulty of finding message with given digest
is in order of 2^512 operations.