SlideShare a Scribd company logo
Cryptography and Network Security 1
CS549:
Cryptography and Network
Security
© by Xiang-Yang Li
Department of Computer Science,
IIT
Cryptography and Network Security 2
Notice©
This lecture note (Cryptography and Network Security) is prepared by
Xiang-Yang Li. This lecture note has benefited from numerous
textbooks and online materials. Especially the “Cryptography and
Network Security” 2nd edition by William Stallings and the
“Cryptography: Theory and Practice” by Douglas Stinson.
You may not modify, publish, or sell, reproduce, create derivative
works from, distribute, perform, display, or in any way exploit any
of the content, in whole or in part, except as otherwise expressly
permitted by the author.
The author has used his best efforts in preparing this lecture note.
The author makes no warranty of any kind, expressed or implied,
with regard to the programs, protocols contained in this lecture
note. The author shall not be liable in any event for incidental or
consequential damages in connection with, or arising out of, the
furnishing, performance, or use of these.
Cryptography and Network Security 3
Cryptography and Network
Security
Hash Algorithms
Xiang-Yang Li
Cryptography and Network Security 4
Hash Function
 Map a message to a smaller value
 Requirements
 Be applied to a block of data of any size
 Produced a fixed length output
 H(x) is easy to compute (by hardware, software)
 One-way: given code h, it is computationally infeasible
to find x: H(x)=h
 Weak collision resistance: given x, computationally
infeasible to find y so H(x)=H(y)
 Strong collision resistance: Computationally
infeasible to find x, y so H(x)=H(y)
Cryptography and Network Security 5
Hash Algorithms
 see similarities in the evolution of hash
functions & block ciphers
 increasing power of brute-force attacks
 leading to evolution in algorithms
 from DES to AES in block ciphers
 from MD4 & MD5 to SHA-1 & RIPEMD-160 in hash
algorithms
 likewise tend to use common iterative
structure as do block ciphers
Cryptography and Network Security 6
Basic Uses of Hash Function
 Six basics usages
 Ek(M||H(M))
 Confidentiality and authentication
 M|| Ek(H(M))
 Authentication
 M|| EKRa(H(M))
 Authentication and digital signature
 Ek(M|| EKRa(H(M)))
 Authentication, digital signature and confidentiality
 M||H(M||S)
 Authentication (S shared by both sides)
 Ek(M||H(M||S))
 Confidentiality and authentication
Cryptography and Network Security 7
Birthday Attacks
 If 64-bits hash code is used
 On average, how many messages need to try to find one
match the intercepted hash code?
 Birthday paradox
 A will sign a message appended with m-bits hash code
 Attacker generates some variations of fraud message,
also variations of good message
 Find pair of message each from the two sets messages
 Such that they have the same hash code
 Give good message to A to get signature
 Replace good message with fraud message
Cryptography and Network Security 8
Analysis
 Using birthday attack, given 64-bits hash
code
 How many message variations needed so the success
probability is large, say 90%?
Cryptography and Network Security 9
Examples
 Simple hash functions
 XOR of the input message
 H(M)=X1 X2 … Xm-1 Xm
 But not secure
 Ym=H(M)  Y1 Y2 … Ym-1 has same hash value as
(X1X2 … Xm-1 Xm), where Yi is any value
Cryptography and Network Security 10
Cont.
 Based on DES, block chaining technique
 Rabin, 1978
 Divide message M into fix-sized blocks Mi
 Assume total n data blocks
 H0=initial value
 Hi=Emi[Hi-1]
 Hn is the hash value
 Birthday attack still applies
 If still 64-bits code used
Cryptography and Network Security 11
More Attacks
 Birthday attack applied if chosen plaintext
 Meet in the middle attack if known
plaintext
 Known signed hash code G
 Construct n-2 desired message block Qi
 Compute Hi=EQi[Hi-1]
 Generate 2m/2 random blocks X
 For each X, Compute Hn-1=EX[Hn-2]
 Generate 2m/2 random blocks Y
 For each Y, Compute H’n-1=DY[G]
 Find X, Y such that Hn-1= H’n-1
 Then Q1, Q2,…Qn-2, X,Y is a fraud message
Cryptography and Network Security 12
Security
 The size of hash code determines security
 128bits is not secure
 Currently, most use 160 bits hash code
 Now recommend 256 bits
 Attack MAC
 Objective is to find valid (x, Ck(x)) pair
 Attack the key space: roughly 2k, k =key size
 Attack the MAC value
Cryptography and Network Security 13
More Hash Algorithms
 Algorithms
 Message Digest:MD5 (was mostly widely used)
 Secure Hash Algorithm: SHA-1 (from MD4)
 RIPEMD-160
 HMAC
Cryptography and Network Security 14
MD5
 designed by Ronald Rivest (the R in RSA)
 latest in a series of MD2, MD4
 produces a 128-bit hash value
 until recently was the most widely used
hash algorithm
 in recent times have both brute-force & cryptanalytic
concerns
 specified as Internet standard RFC1321
Cryptography and Network Security 15
MD5 Overview
1. pad message so its length is 448 mod 512
2. append a 64-bit length value to message
3. initialise 4-word (128-bit) MD buffer
(A,B,C,D)
4. process message in 16-word (512-bit)
blocks:
 using 4 rounds of 16 bit operations on message block
& buffer
 add output to buffer input to form new buffer value
5. output hash value is the final buffer value
Cryptography and Network Security 16
MD5 Overview
Cryptography and Network Security 17
MD5 Compression Function
 each round has 16 steps of the form:
a = b+((a+g(b,c,d)+X[k]+T[i])<<<s)
 a,b,c,d refer to the 4 words of the buffer,
but used in varying permutations
 note this updates 1 word only of the buffer
 after 16 steps each word is updated 4 times
 where g(b,c,d) is a different nonlinear
function in each round (F,G,H,I)
 T[i] is a constant value derived from sin
Cryptography and Network Security 18
MD5 Compression Function
Cryptography and Network Security 19
MD4
 precursor to MD5
 also produces a 128-bit hash of message
 has 3 rounds of 16 steps vs 4 in MD5
 design goals:
 collision resistant (hard to find collisions)
 direct security (no dependence on "hard" problems)
 fast, simple, compact
 favours little-endian systems (eg PCs)
Cryptography and Network Security 20
Strength of MD5
 MD5 hash is dependent on all message bits
 Rivest claims security is good as can be
 known attacks are:
 Berson 92 attacked any 1 round using differential
cryptanalysis (but can’t extend)
 Boer & Bosselaers 93 found a pseudo collision (again
unable to extend)
 Dobbertin 96 created collisions on MD compression
function (but initial constants prevent exploit)
 conclusion is that MD5 looks vulnerable
soon
Cryptography and Network Security 21
Bad news
 Chinese authors (Wang, Feng, Lai, and Yu) reported a
family of collisions in MD5
 (fixing the previous bug in their analysis), and also reported
that their method can efficiently (2^40 hash steps) find a
collision in SHA-0.
 August Crypto 2004,
 MD5 is fatally wounded; its use will be phased out.
SHA-1 is still alive but the vultures are circling. A
gradual transition away from SHA-1 will now start.
The first stage will be a debate about alternatives,
leading to a consensus among practicing
cryptographers about what the substitute will be.
 On 1 March 2005, Arjen Lenstra, Xiaoyun Wang and Benne
de Weger demonstrated[10] construction of two X.509
certificates with different public keys and the same MD5
hash, a demonstrably practical collision. The construction
included private keys for both public keys.
 A few days later, Vlastimil Klima described[11] an improved
algorithm, able to construct MD5 collisions in a few hours on
a single notebook computer.
 On 18 March 2006, Klima published an algorithm[12] that can
find a collision within one minute on a single notebook
computer, using a method he calls tunneling.
Cryptography and Network Security 22
Cryptography and Network Security 23
Why collisions are bad
 An example of what you might do with this.
 You could request an SSL certificate (for your real identity)
from a certificate authority. After the response comes back,
you can then use that response (which is based on the MD5
of your identity+key) to "authenticate" a carefully chosen
different certificate, one which claims that you are
LargeBankOrSoftwareCorp., but which has the same MD5 as
your real identity. You can then present this to other people
in order to convince them that you are someone whom you
are not.
 Another example,
 core internet routers use md5 to exchange passwords. I
simply sniff the md5sum, and if I can find a string that
generates the same sum, easily, I can send my own routing
update that takes down the internet. More examples, since a
LOT of applications use md5, but you get the idea.
Cryptography and Network Security 24
Further detail
 Obviously the above attack isn't quite so simple, but
this research makes it *possible*. Before, it was
believed to be sufficiently difficult to find a collision,
that nobody worried about it. Now they are saying its
feasible to do it in hours.
 The question hanging around right now is that these
researchers managed to find collisions easily, but not
for an artbitrary string. The questions is how long
before someone modifies this method to find any
colllision. That is how much time the world has to
move away.
 More at
 http://www.freedom-to-tinker.com/archives/000664.html
Cryptography and Network Security 25
What to do next
 The U.S. National Institute of Standards
and Technology is having a competition for
a new cryptographic hash function.
 The phrase "one-way hash function" might
sound arcane and geeky, but hash functions
are the workhorses of modern
cryptography.
 Submissions will be due in fall 2008, and a
single standard is scheduled to be chosen
by the end of 2011.
 we have an interim solution in SHA-256.
Cryptography and Network Security 26
Secure Hash Algorithm (SHA-1)
 SHA was designed by NIST & NSA in
1993, revised 1995 as SHA-1
 US standard for use with DSA signature
scheme
 standard is FIPS 180-1 1995, also Internet RFC3174
 nb. the algorithm is SHA, the standard is SHS
 produces 160-bit hash values
 now the generally preferred hash algorithm
 based on design of MD4 with key
differences
Cryptography and Network Security 27
SHA Overview
1. pad message so its length is 448 mod 512
2. append a 64-bit length value to message
3. initialise 5-word (160-bit) buffer (A,B,C,D,E)
to
(67452301,efcdab89,98badcfe,10325476,c3d2e1f0)
4. process message in 16-word (512-bit)
chunks:
 expand 16 words into 80 words by mixing & shifting
 use 4 rounds of 20 bit operations on message block &
buffer
 add output to input to form new buffer value
5. output hash value is the final buffer value
Cryptography and Network Security 28
SHA-1 Compression Function
 each round has 20 steps which replaces the
5 buffer words thus:
(A,B,C,D,E) <-
(E+f(t,B,C,D)+(A<<5)+Wt+Kt),A,(B<<30),C,D)
 a,b,c,d refer to the 4 words of the buffer
 t is the step number
 f(t,B,C,D) is nonlinear function for round
 Wt is derived from the message block
 Kt is a constant value derived from sin
Cryptography and Network Security 29
SHA-1 Compression Function
Cryptography and Network Security 30
SHA-1 verses MD5
 brute force attack is harder (160 vs 128
bits for MD5)
 not vulnerable to any known attacks
(compared to MD4/5)
 a little slower than MD5 (80 vs 64 steps)
 both designed as simple and compact
 optimised for big endian CPU's (vs MD5
which is optimised for little endian CPU’s)
Cryptography and Network Security 31
Revised Secure Hash Standard
 NIST have issued a revision FIPS 180-2
 adds 3 additional hash algorithms
 SHA-256, SHA-384, SHA-512
 designed for compatibility with increased
security provided by the AES cipher
 structure & detail is similar to SHA-1
 hence analysis should be similar
 See
 http://en.wikipedia.org/wiki/SHA_hash_fu
nctions
 For history of attaching this one.
Cryptography and Network Security 32
Cryptography and Network Security 33
RIPEMD-160
 RIPEMD-160 was developed in Europe as part of
RIPE project in 96
 by researchers involved in attacks on MD4/5
 initial proposal strengthen following analysis to
become RIPEMD-160
 somewhat similar to MD5/SHA
 uses 2 parallel lines of 5 rounds of 16 steps
 creates a 160-bit hash value
 slower, but probably more secure, than SHA
Cryptography and Network Security 34
RIPEMD-160 Overview
1. pad message so its length is 448 mod 512
2. append a 64-bit length value to message
3. initialise 5-word (160-bit) buffer (A,B,C,D,E) to
(67452301,efcdab89,98badcfe,10325476,c3d2e1f0)
4. process message in 16-word (512-bit) chunks:
 use 10 rounds of 16 bit operations on message block & buffer –
in 2 parallel lines of 5
 add output to input to form new buffer value
5. output hash value is the final buffer value
Cryptography and Network Security 35
RIPEMD-160 Round
Cryptography and Network Security 36
RIPEMD-160 Compression Function
Cryptography and Network Security 37
RIPEMD-160 Design Criteria
 use 2 parallel lines of 5 rounds for
increased complexity
 for simplicity the 2 lines are very similar
 step operation very close to MD5
 permutation varies parts of message used
 circular shifts designed for best results
Cryptography and Network Security 38
RIPEMD-160 verses MD5 & SHA-1
 brute force attack harder (160 like SHA-1
vs 128 bits for MD5)
 not vulnerable to known attacks, like SHA-1
though stronger (compared to MD4/5)
 slower than MD5 (more steps)
 all designed as simple and compact
 SHA-1 optimised for big endian CPU's vs
RIPEMD-160 & MD5 optimised for little
endian CPU’s
Cryptography and Network Security 39
Keyed Hash Functions as MACs
 have desire to create a MAC using a hash
function rather than a block cipher
 because hash functions are generally faster
 not limited by export controls unlike block ciphers
 hash includes a key along with the message
 original proposal:
KeyedHash = Hash(Key|Message)
 some weaknesses were found with this
 eventually led to development of HMAC
Cryptography and Network Security 40
HMAC
 specified as Internet standard RFC2104
 uses hash function on the message:
HMACK = Hash[(K+ XOR opad) ||
Hash[(K+ XOR ipad)||M)]]
 where K+ is the key padded out to size
 and opad, ipad are specified padding constants
 overhead is just 3 more hash calculations than the
message needs alone
 any of MD5, SHA-1, RIPEMD-160 can be used
Cryptography and Network Security 41
HMAC Overview
Cryptography and Network Security 42
HMAC Security
 know that the security of HMAC relates to
that of the underlying hash algorithm
 attacking HMAC requires either:
 brute force attack on key used
 birthday attack (but since keyed would need to observe
a very large number of messages)
 choose hash function used based on speed
verses security constraints
Cryptography and Network Security 43
Summary
 have considered:
 some current hash algorithms: MD5, SHA-1, RIPEMD-
160
 HMAC authentication using hash function

More Related Content

What's hot

Network security cryptographic hash function
Network security  cryptographic hash functionNetwork security  cryptographic hash function
Network security cryptographic hash function
Mijanur Rahman Milon
 
6.hash mac
6.hash mac6.hash mac
Hash function
Hash functionHash function
Hash function
Harry Potter
 
The MD5 hashing algorithm
The MD5 hashing algorithmThe MD5 hashing algorithm
The MD5 hashing algorithm
Bob Landstrom
 
Hash Function & Analysis
Hash Function & AnalysisHash Function & Analysis
Hash Function & Analysis
Pawandeep Kaur
 
18CS2005 Cryptography and Network Security
18CS2005 Cryptography and Network Security 18CS2005 Cryptography and Network Security
18CS2005 Cryptography and Network Security
Kathirvel Ayyaswamy
 
Public key cryptography and message authentication
Public key cryptography and message authenticationPublic key cryptography and message authentication
Public key cryptography and message authentication
CAS
 
Cryptography and Message Authentication NS3
Cryptography and Message Authentication NS3Cryptography and Message Authentication NS3
Cryptography and Message Authentication NS3koolkampus
 
20CS2008 Computer Networks
20CS2008 Computer Networks 20CS2008 Computer Networks
20CS2008 Computer Networks
Kathirvel Ayyaswamy
 
Message Authentication
Message AuthenticationMessage Authentication
Message Authentication
Ram Dutt Shukla
 
01204427-Hash_Crypto (1).ppt
01204427-Hash_Crypto (1).ppt01204427-Hash_Crypto (1).ppt
01204427-Hash_Crypto (1).ppt
GnanalakshmiV
 
Hashing Algorithm: MD5
Hashing Algorithm: MD5Hashing Algorithm: MD5
Hashing Algorithm: MD5
ijsrd.com
 
Is unit 5_message authentication and hash functions
Is unit 5_message authentication and hash functionsIs unit 5_message authentication and hash functions
Is unit 5_message authentication and hash functionsSarthak Patel
 
CS6701 CRYPTOGRAPHY AND NETWORK SECURITY
CS6701 CRYPTOGRAPHY AND NETWORK SECURITYCS6701 CRYPTOGRAPHY AND NETWORK SECURITY
CS6701 CRYPTOGRAPHY AND NETWORK SECURITY
Kathirvel Ayyaswamy
 
Message authentication
Message authenticationMessage authentication
Message authentication
CAS
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
Harry Potter
 
Message Authentication: MAC, Hashes
Message Authentication: MAC, HashesMessage Authentication: MAC, Hashes
Message Authentication: MAC, Hashes
Shafaan Khaliq Bhatti
 
Cryptography Ashik
Cryptography AshikCryptography Ashik
Cryptography Ashik
Ashik Iqbal
 
Hash Function
Hash FunctionHash Function
Hash Function
stalin rijal
 
5. message authentication and hash function
5. message authentication and hash function5. message authentication and hash function
5. message authentication and hash function
Chirag Patel
 

What's hot (20)

Network security cryptographic hash function
Network security  cryptographic hash functionNetwork security  cryptographic hash function
Network security cryptographic hash function
 
6.hash mac
6.hash mac6.hash mac
6.hash mac
 
Hash function
Hash functionHash function
Hash function
 
The MD5 hashing algorithm
The MD5 hashing algorithmThe MD5 hashing algorithm
The MD5 hashing algorithm
 
Hash Function & Analysis
Hash Function & AnalysisHash Function & Analysis
Hash Function & Analysis
 
18CS2005 Cryptography and Network Security
18CS2005 Cryptography and Network Security 18CS2005 Cryptography and Network Security
18CS2005 Cryptography and Network Security
 
Public key cryptography and message authentication
Public key cryptography and message authenticationPublic key cryptography and message authentication
Public key cryptography and message authentication
 
Cryptography and Message Authentication NS3
Cryptography and Message Authentication NS3Cryptography and Message Authentication NS3
Cryptography and Message Authentication NS3
 
20CS2008 Computer Networks
20CS2008 Computer Networks 20CS2008 Computer Networks
20CS2008 Computer Networks
 
Message Authentication
Message AuthenticationMessage Authentication
Message Authentication
 
01204427-Hash_Crypto (1).ppt
01204427-Hash_Crypto (1).ppt01204427-Hash_Crypto (1).ppt
01204427-Hash_Crypto (1).ppt
 
Hashing Algorithm: MD5
Hashing Algorithm: MD5Hashing Algorithm: MD5
Hashing Algorithm: MD5
 
Is unit 5_message authentication and hash functions
Is unit 5_message authentication and hash functionsIs unit 5_message authentication and hash functions
Is unit 5_message authentication and hash functions
 
CS6701 CRYPTOGRAPHY AND NETWORK SECURITY
CS6701 CRYPTOGRAPHY AND NETWORK SECURITYCS6701 CRYPTOGRAPHY AND NETWORK SECURITY
CS6701 CRYPTOGRAPHY AND NETWORK SECURITY
 
Message authentication
Message authenticationMessage authentication
Message authentication
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
 
Message Authentication: MAC, Hashes
Message Authentication: MAC, HashesMessage Authentication: MAC, Hashes
Message Authentication: MAC, Hashes
 
Cryptography Ashik
Cryptography AshikCryptography Ashik
Cryptography Ashik
 
Hash Function
Hash FunctionHash Function
Hash Function
 
5. message authentication and hash function
5. message authentication and hash function5. message authentication and hash function
5. message authentication and hash function
 

Viewers also liked

Network security & cryptography
Network security & cryptographyNetwork security & cryptography
Network security & cryptographyRahulprasad Yadav
 
Cryptography and Network Security
Cryptography and Network SecurityCryptography and Network Security
Cryptography and Network Security
Ramki M
 
Hash mac algorithms
Hash mac algorithmsHash mac algorithms
Hash mac algorithms
James Wong
 
CRYPTOGRAPHY AND NETWORK SECURITY
CRYPTOGRAPHY AND NETWORK SECURITYCRYPTOGRAPHY AND NETWORK SECURITY
CRYPTOGRAPHY AND NETWORK SECURITY
Kathirvel Ayyaswamy
 
Hash Functions, the MD5 Algorithm and the Future (SHA-3)
Hash Functions, the MD5 Algorithm and the Future (SHA-3)Hash Functions, the MD5 Algorithm and the Future (SHA-3)
Hash Functions, the MD5 Algorithm and the Future (SHA-3)
Dylan Field
 
Hash Techniques in Cryptography
Hash Techniques in CryptographyHash Techniques in Cryptography
Hash Techniques in CryptographyBasudev Saha
 
Cryptography
CryptographyCryptography
Cryptography
gueste4c97e
 
Cryptography
CryptographyCryptography
Cryptography
Shivanand Arur
 
Cryptography.ppt
Cryptography.pptCryptography.ppt
Cryptography.ppt
kusum sharma
 
RSA & MD5 algorithm
RSA & MD5 algorithmRSA & MD5 algorithm
RSA & MD5 algorithmSiva Rushi
 
Cryptography and network security
Cryptography and network securityCryptography and network security
Cryptography and network securitypatisa
 
Network Security and Cryptography
Network Security and CryptographyNetwork Security and Cryptography
Network Security and Cryptography
Adam Reagan
 

Viewers also liked (13)

Network security & cryptography
Network security & cryptographyNetwork security & cryptography
Network security & cryptography
 
Cryptography and Network Security
Cryptography and Network SecurityCryptography and Network Security
Cryptography and Network Security
 
Hash mac algorithms
Hash mac algorithmsHash mac algorithms
Hash mac algorithms
 
Lecture 11
Lecture 11Lecture 11
Lecture 11
 
CRYPTOGRAPHY AND NETWORK SECURITY
CRYPTOGRAPHY AND NETWORK SECURITYCRYPTOGRAPHY AND NETWORK SECURITY
CRYPTOGRAPHY AND NETWORK SECURITY
 
Hash Functions, the MD5 Algorithm and the Future (SHA-3)
Hash Functions, the MD5 Algorithm and the Future (SHA-3)Hash Functions, the MD5 Algorithm and the Future (SHA-3)
Hash Functions, the MD5 Algorithm and the Future (SHA-3)
 
Hash Techniques in Cryptography
Hash Techniques in CryptographyHash Techniques in Cryptography
Hash Techniques in Cryptography
 
Cryptography
CryptographyCryptography
Cryptography
 
Cryptography
CryptographyCryptography
Cryptography
 
Cryptography.ppt
Cryptography.pptCryptography.ppt
Cryptography.ppt
 
RSA & MD5 algorithm
RSA & MD5 algorithmRSA & MD5 algorithm
RSA & MD5 algorithm
 
Cryptography and network security
Cryptography and network securityCryptography and network security
Cryptography and network security
 
Network Security and Cryptography
Network Security and CryptographyNetwork Security and Cryptography
Network Security and Cryptography
 

Similar to Hash

researchpaperfinal1
researchpaperfinal1researchpaperfinal1
researchpaperfinal1Sumit Bajaj
 
Nt1330 Unit 4 Dthm Paper
Nt1330 Unit 4 Dthm PaperNt1330 Unit 4 Dthm Paper
Nt1330 Unit 4 Dthm Paper
Jennifer Reither
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
James Wong
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
Fraboni Ec
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
David Hoen
 
An Enhanced Message Digest Hash Algorithm for Information Security
An Enhanced Message Digest Hash Algorithm for Information SecurityAn Enhanced Message Digest Hash Algorithm for Information Security
An Enhanced Message Digest Hash Algorithm for Information Security
paperpublications3
 
Chapter8 27 nov_2010
Chapter8 27 nov_2010Chapter8 27 nov_2010
Chapter8 27 nov_2010Umang Gupta
 
H42063743
H42063743H42063743
H42063743
IJERA Editor
 
Nt1310 Unit 6 Powerpoint
Nt1310 Unit 6 PowerpointNt1310 Unit 6 Powerpoint
Nt1310 Unit 6 Powerpoint
Janet Robinson
 
Password based encryption
Password based encryptionPassword based encryption
Password based encryption
Sachin Tripathi
 
A Comparative Study between RSA and MD5 algorithms
A Comparative Study between RSA and MD5 algorithms A Comparative Study between RSA and MD5 algorithms
A Comparative Study between RSA and MD5 algorithms
Er Piyush Gupta IN ⊞⌘
 
Moein
MoeinMoein
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
Harry Potter
 
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
James Wong
 
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
Young Alista
 
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
David Hoen
 
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
Tony Nguyen
 

Similar to Hash (20)

researchpaperfinal1
researchpaperfinal1researchpaperfinal1
researchpaperfinal1
 
Nt1330 Unit 4 Dthm Paper
Nt1330 Unit 4 Dthm PaperNt1330 Unit 4 Dthm Paper
Nt1330 Unit 4 Dthm Paper
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
 
An Enhanced Message Digest Hash Algorithm for Information Security
An Enhanced Message Digest Hash Algorithm for Information SecurityAn Enhanced Message Digest Hash Algorithm for Information Security
An Enhanced Message Digest Hash Algorithm for Information Security
 
Chapter8 27 nov_2010
Chapter8 27 nov_2010Chapter8 27 nov_2010
Chapter8 27 nov_2010
 
H42063743
H42063743H42063743
H42063743
 
Nt1310 Unit 6 Powerpoint
Nt1310 Unit 6 PowerpointNt1310 Unit 6 Powerpoint
Nt1310 Unit 6 Powerpoint
 
Password based encryption
Password based encryptionPassword based encryption
Password based encryption
 
A Comparative Study between RSA and MD5 algorithms
A Comparative Study between RSA and MD5 algorithms A Comparative Study between RSA and MD5 algorithms
A Comparative Study between RSA and MD5 algorithms
 
Moein
MoeinMoein
Moein
 
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
 
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
 
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
 
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
 
Introduction to security_and_crypto
Introduction to security_and_cryptoIntroduction to security_and_crypto
Introduction to security_and_crypto
 

Recently uploaded

FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 

Hash

  • 1. Cryptography and Network Security 1 CS549: Cryptography and Network Security © by Xiang-Yang Li Department of Computer Science, IIT
  • 2. Cryptography and Network Security 2 Notice© This lecture note (Cryptography and Network Security) is prepared by Xiang-Yang Li. This lecture note has benefited from numerous textbooks and online materials. Especially the “Cryptography and Network Security” 2nd edition by William Stallings and the “Cryptography: Theory and Practice” by Douglas Stinson. You may not modify, publish, or sell, reproduce, create derivative works from, distribute, perform, display, or in any way exploit any of the content, in whole or in part, except as otherwise expressly permitted by the author. The author has used his best efforts in preparing this lecture note. The author makes no warranty of any kind, expressed or implied, with regard to the programs, protocols contained in this lecture note. The author shall not be liable in any event for incidental or consequential damages in connection with, or arising out of, the furnishing, performance, or use of these.
  • 3. Cryptography and Network Security 3 Cryptography and Network Security Hash Algorithms Xiang-Yang Li
  • 4. Cryptography and Network Security 4 Hash Function  Map a message to a smaller value  Requirements  Be applied to a block of data of any size  Produced a fixed length output  H(x) is easy to compute (by hardware, software)  One-way: given code h, it is computationally infeasible to find x: H(x)=h  Weak collision resistance: given x, computationally infeasible to find y so H(x)=H(y)  Strong collision resistance: Computationally infeasible to find x, y so H(x)=H(y)
  • 5. Cryptography and Network Security 5 Hash Algorithms  see similarities in the evolution of hash functions & block ciphers  increasing power of brute-force attacks  leading to evolution in algorithms  from DES to AES in block ciphers  from MD4 & MD5 to SHA-1 & RIPEMD-160 in hash algorithms  likewise tend to use common iterative structure as do block ciphers
  • 6. Cryptography and Network Security 6 Basic Uses of Hash Function  Six basics usages  Ek(M||H(M))  Confidentiality and authentication  M|| Ek(H(M))  Authentication  M|| EKRa(H(M))  Authentication and digital signature  Ek(M|| EKRa(H(M)))  Authentication, digital signature and confidentiality  M||H(M||S)  Authentication (S shared by both sides)  Ek(M||H(M||S))  Confidentiality and authentication
  • 7. Cryptography and Network Security 7 Birthday Attacks  If 64-bits hash code is used  On average, how many messages need to try to find one match the intercepted hash code?  Birthday paradox  A will sign a message appended with m-bits hash code  Attacker generates some variations of fraud message, also variations of good message  Find pair of message each from the two sets messages  Such that they have the same hash code  Give good message to A to get signature  Replace good message with fraud message
  • 8. Cryptography and Network Security 8 Analysis  Using birthday attack, given 64-bits hash code  How many message variations needed so the success probability is large, say 90%?
  • 9. Cryptography and Network Security 9 Examples  Simple hash functions  XOR of the input message  H(M)=X1 X2 … Xm-1 Xm  But not secure  Ym=H(M)  Y1 Y2 … Ym-1 has same hash value as (X1X2 … Xm-1 Xm), where Yi is any value
  • 10. Cryptography and Network Security 10 Cont.  Based on DES, block chaining technique  Rabin, 1978  Divide message M into fix-sized blocks Mi  Assume total n data blocks  H0=initial value  Hi=Emi[Hi-1]  Hn is the hash value  Birthday attack still applies  If still 64-bits code used
  • 11. Cryptography and Network Security 11 More Attacks  Birthday attack applied if chosen plaintext  Meet in the middle attack if known plaintext  Known signed hash code G  Construct n-2 desired message block Qi  Compute Hi=EQi[Hi-1]  Generate 2m/2 random blocks X  For each X, Compute Hn-1=EX[Hn-2]  Generate 2m/2 random blocks Y  For each Y, Compute H’n-1=DY[G]  Find X, Y such that Hn-1= H’n-1  Then Q1, Q2,…Qn-2, X,Y is a fraud message
  • 12. Cryptography and Network Security 12 Security  The size of hash code determines security  128bits is not secure  Currently, most use 160 bits hash code  Now recommend 256 bits  Attack MAC  Objective is to find valid (x, Ck(x)) pair  Attack the key space: roughly 2k, k =key size  Attack the MAC value
  • 13. Cryptography and Network Security 13 More Hash Algorithms  Algorithms  Message Digest:MD5 (was mostly widely used)  Secure Hash Algorithm: SHA-1 (from MD4)  RIPEMD-160  HMAC
  • 14. Cryptography and Network Security 14 MD5  designed by Ronald Rivest (the R in RSA)  latest in a series of MD2, MD4  produces a 128-bit hash value  until recently was the most widely used hash algorithm  in recent times have both brute-force & cryptanalytic concerns  specified as Internet standard RFC1321
  • 15. Cryptography and Network Security 15 MD5 Overview 1. pad message so its length is 448 mod 512 2. append a 64-bit length value to message 3. initialise 4-word (128-bit) MD buffer (A,B,C,D) 4. process message in 16-word (512-bit) blocks:  using 4 rounds of 16 bit operations on message block & buffer  add output to buffer input to form new buffer value 5. output hash value is the final buffer value
  • 16. Cryptography and Network Security 16 MD5 Overview
  • 17. Cryptography and Network Security 17 MD5 Compression Function  each round has 16 steps of the form: a = b+((a+g(b,c,d)+X[k]+T[i])<<<s)  a,b,c,d refer to the 4 words of the buffer, but used in varying permutations  note this updates 1 word only of the buffer  after 16 steps each word is updated 4 times  where g(b,c,d) is a different nonlinear function in each round (F,G,H,I)  T[i] is a constant value derived from sin
  • 18. Cryptography and Network Security 18 MD5 Compression Function
  • 19. Cryptography and Network Security 19 MD4  precursor to MD5  also produces a 128-bit hash of message  has 3 rounds of 16 steps vs 4 in MD5  design goals:  collision resistant (hard to find collisions)  direct security (no dependence on "hard" problems)  fast, simple, compact  favours little-endian systems (eg PCs)
  • 20. Cryptography and Network Security 20 Strength of MD5  MD5 hash is dependent on all message bits  Rivest claims security is good as can be  known attacks are:  Berson 92 attacked any 1 round using differential cryptanalysis (but can’t extend)  Boer & Bosselaers 93 found a pseudo collision (again unable to extend)  Dobbertin 96 created collisions on MD compression function (but initial constants prevent exploit)  conclusion is that MD5 looks vulnerable soon
  • 21. Cryptography and Network Security 21 Bad news  Chinese authors (Wang, Feng, Lai, and Yu) reported a family of collisions in MD5  (fixing the previous bug in their analysis), and also reported that their method can efficiently (2^40 hash steps) find a collision in SHA-0.  August Crypto 2004,  MD5 is fatally wounded; its use will be phased out. SHA-1 is still alive but the vultures are circling. A gradual transition away from SHA-1 will now start. The first stage will be a debate about alternatives, leading to a consensus among practicing cryptographers about what the substitute will be.
  • 22.  On 1 March 2005, Arjen Lenstra, Xiaoyun Wang and Benne de Weger demonstrated[10] construction of two X.509 certificates with different public keys and the same MD5 hash, a demonstrably practical collision. The construction included private keys for both public keys.  A few days later, Vlastimil Klima described[11] an improved algorithm, able to construct MD5 collisions in a few hours on a single notebook computer.  On 18 March 2006, Klima published an algorithm[12] that can find a collision within one minute on a single notebook computer, using a method he calls tunneling. Cryptography and Network Security 22
  • 23. Cryptography and Network Security 23 Why collisions are bad  An example of what you might do with this.  You could request an SSL certificate (for your real identity) from a certificate authority. After the response comes back, you can then use that response (which is based on the MD5 of your identity+key) to "authenticate" a carefully chosen different certificate, one which claims that you are LargeBankOrSoftwareCorp., but which has the same MD5 as your real identity. You can then present this to other people in order to convince them that you are someone whom you are not.  Another example,  core internet routers use md5 to exchange passwords. I simply sniff the md5sum, and if I can find a string that generates the same sum, easily, I can send my own routing update that takes down the internet. More examples, since a LOT of applications use md5, but you get the idea.
  • 24. Cryptography and Network Security 24 Further detail  Obviously the above attack isn't quite so simple, but this research makes it *possible*. Before, it was believed to be sufficiently difficult to find a collision, that nobody worried about it. Now they are saying its feasible to do it in hours.  The question hanging around right now is that these researchers managed to find collisions easily, but not for an artbitrary string. The questions is how long before someone modifies this method to find any colllision. That is how much time the world has to move away.  More at  http://www.freedom-to-tinker.com/archives/000664.html
  • 25. Cryptography and Network Security 25 What to do next  The U.S. National Institute of Standards and Technology is having a competition for a new cryptographic hash function.  The phrase "one-way hash function" might sound arcane and geeky, but hash functions are the workhorses of modern cryptography.  Submissions will be due in fall 2008, and a single standard is scheduled to be chosen by the end of 2011.  we have an interim solution in SHA-256.
  • 26. Cryptography and Network Security 26 Secure Hash Algorithm (SHA-1)  SHA was designed by NIST & NSA in 1993, revised 1995 as SHA-1  US standard for use with DSA signature scheme  standard is FIPS 180-1 1995, also Internet RFC3174  nb. the algorithm is SHA, the standard is SHS  produces 160-bit hash values  now the generally preferred hash algorithm  based on design of MD4 with key differences
  • 27. Cryptography and Network Security 27 SHA Overview 1. pad message so its length is 448 mod 512 2. append a 64-bit length value to message 3. initialise 5-word (160-bit) buffer (A,B,C,D,E) to (67452301,efcdab89,98badcfe,10325476,c3d2e1f0) 4. process message in 16-word (512-bit) chunks:  expand 16 words into 80 words by mixing & shifting  use 4 rounds of 20 bit operations on message block & buffer  add output to input to form new buffer value 5. output hash value is the final buffer value
  • 28. Cryptography and Network Security 28 SHA-1 Compression Function  each round has 20 steps which replaces the 5 buffer words thus: (A,B,C,D,E) <- (E+f(t,B,C,D)+(A<<5)+Wt+Kt),A,(B<<30),C,D)  a,b,c,d refer to the 4 words of the buffer  t is the step number  f(t,B,C,D) is nonlinear function for round  Wt is derived from the message block  Kt is a constant value derived from sin
  • 29. Cryptography and Network Security 29 SHA-1 Compression Function
  • 30. Cryptography and Network Security 30 SHA-1 verses MD5  brute force attack is harder (160 vs 128 bits for MD5)  not vulnerable to any known attacks (compared to MD4/5)  a little slower than MD5 (80 vs 64 steps)  both designed as simple and compact  optimised for big endian CPU's (vs MD5 which is optimised for little endian CPU’s)
  • 31. Cryptography and Network Security 31 Revised Secure Hash Standard  NIST have issued a revision FIPS 180-2  adds 3 additional hash algorithms  SHA-256, SHA-384, SHA-512  designed for compatibility with increased security provided by the AES cipher  structure & detail is similar to SHA-1  hence analysis should be similar
  • 32.  See  http://en.wikipedia.org/wiki/SHA_hash_fu nctions  For history of attaching this one. Cryptography and Network Security 32
  • 33. Cryptography and Network Security 33 RIPEMD-160  RIPEMD-160 was developed in Europe as part of RIPE project in 96  by researchers involved in attacks on MD4/5  initial proposal strengthen following analysis to become RIPEMD-160  somewhat similar to MD5/SHA  uses 2 parallel lines of 5 rounds of 16 steps  creates a 160-bit hash value  slower, but probably more secure, than SHA
  • 34. Cryptography and Network Security 34 RIPEMD-160 Overview 1. pad message so its length is 448 mod 512 2. append a 64-bit length value to message 3. initialise 5-word (160-bit) buffer (A,B,C,D,E) to (67452301,efcdab89,98badcfe,10325476,c3d2e1f0) 4. process message in 16-word (512-bit) chunks:  use 10 rounds of 16 bit operations on message block & buffer – in 2 parallel lines of 5  add output to input to form new buffer value 5. output hash value is the final buffer value
  • 35. Cryptography and Network Security 35 RIPEMD-160 Round
  • 36. Cryptography and Network Security 36 RIPEMD-160 Compression Function
  • 37. Cryptography and Network Security 37 RIPEMD-160 Design Criteria  use 2 parallel lines of 5 rounds for increased complexity  for simplicity the 2 lines are very similar  step operation very close to MD5  permutation varies parts of message used  circular shifts designed for best results
  • 38. Cryptography and Network Security 38 RIPEMD-160 verses MD5 & SHA-1  brute force attack harder (160 like SHA-1 vs 128 bits for MD5)  not vulnerable to known attacks, like SHA-1 though stronger (compared to MD4/5)  slower than MD5 (more steps)  all designed as simple and compact  SHA-1 optimised for big endian CPU's vs RIPEMD-160 & MD5 optimised for little endian CPU’s
  • 39. Cryptography and Network Security 39 Keyed Hash Functions as MACs  have desire to create a MAC using a hash function rather than a block cipher  because hash functions are generally faster  not limited by export controls unlike block ciphers  hash includes a key along with the message  original proposal: KeyedHash = Hash(Key|Message)  some weaknesses were found with this  eventually led to development of HMAC
  • 40. Cryptography and Network Security 40 HMAC  specified as Internet standard RFC2104  uses hash function on the message: HMACK = Hash[(K+ XOR opad) || Hash[(K+ XOR ipad)||M)]]  where K+ is the key padded out to size  and opad, ipad are specified padding constants  overhead is just 3 more hash calculations than the message needs alone  any of MD5, SHA-1, RIPEMD-160 can be used
  • 41. Cryptography and Network Security 41 HMAC Overview
  • 42. Cryptography and Network Security 42 HMAC Security  know that the security of HMAC relates to that of the underlying hash algorithm  attacking HMAC requires either:  brute force attack on key used  birthday attack (but since keyed would need to observe a very large number of messages)  choose hash function used based on speed verses security constraints
  • 43. Cryptography and Network Security 43 Summary  have considered:  some current hash algorithms: MD5, SHA-1, RIPEMD- 160  HMAC authentication using hash function