SlideShare a Scribd company logo
Cryptography
and Network
Security
Sixth Edition
by William Stallings
Chapter 11
Cryptographic Hash Functions
“Each of the messages, like each one he had ever read of Stern's commands, began
with a number and ended with a number or row of numbers. No efforts on the part
of Mungo or any of his experts had been able to break Stern's code, nor was there
any clue as to what the preliminary number and those ultimate numbers signified.”
—Talking to Strange Men,
Ruth Rendell
“The Douglas Squirrel has a distinctive eating habit. It usually eats pine cones
from the bottom end up. Partially eaten cones can indicate the presence of
these squirrels if they have been attacked from the bottom first. If, instead, the
cone has been eaten from the top end down, it is more likely to have been a
crossbill finch that has been doing the dining.”
—Talking to Strange Men,
Ruth Rendell
Hash Functions
• A hash function H accepts a variable-length block
of data M as input and produces a fixed-size hash
value
• h = H(M)
• Principal object is data integrity
• Cryptographic hash function
• An algorithm for which it is computationally
infeasible to find either:
(a) a data object that maps to a pre-specified hash
result (the one-way property)
(b) two data objects that map to the same hash result
(the collision-free property)
secure hash function for authentication in CNS
secure hash function for authentication in CNS
secure hash function for authentication in CNS
Message Authentication Code
(MAC)
• Also known as a keyed hash function
• Typically used between two parties that share a
secret key to authenticate information exchanged
between those parties
Takes as input a secret key and a data block and produces a
hash value (MAC) which is associated with the protected
message
•If the integrity of the message needs to be checked, the MAC
function can be applied to the message and the result
compared with the associated MAC value
•An attacker who alters the message will be unable to alter the
associated MAC value without knowledge of the secret key
Digital Signature
• Operation is similar to that of the MAC
• The hash value of a message is encrypted with a
user’s private key
• Anyone who knows the user’s public key can
verify the integrity of the message
• An attacker who wishes to alter the message
would need to know the user’s private key
• Implications of digital signatures go beyond just
message authentication
secure hash function for authentication in CNS
Other Hash Function Uses
Commonly used to create
a one-way password file
When a user enters a
password, the hash of
that password is
compared to the stored
hash value for
verification
This approach to
password protection is
used by most operating
systems
Can be used for intrusion
and virus detection
Store H(F) for each file
on a system and secure
the hash values
One can later determine
if a file has been
modified by
recomputing H(F)
An intruder would need
to change F without
changing H(F)
Can be used to construct
a pseudorandom function
(PRF) or a pseudorandom
number generator (PRNG)
A common application
for a hash-based PRF is
for the generation of
symmetric keys
Two Simple Hash Functions
• Consider two simple insecure hash functions that operate
using the following general principles:
• The input is viewed as a sequence of n-bit blocks
• The input is processed one block at a time in an iterative fashion
to produce an n-bit hash function
• Bit-by-bit exclusive-OR (XOR) of every block
• Ci = bi1 xor bi2 xor . . . xor bim
• Produces a simple parity for each bit position and is known as a
longitudinal redundancy check
• Reasonably effective for random data as a data integrity check
• Perform a one-bit circular shift on the hash value after each
block is processed
• Has the effect of randomizing the input more completely and
overcoming any regularities that appear in the input
Two
Simple
Hash
Functions
Requirements and
Security
• x is the preimage of h for
a hash value h = H(x)
• Is a data block whose
hash function, using the
function H, is h
• Because H is a many-to-
one mapping, for any
given hash value h, there
will in general be multiple
preimages
• Occurs if we have x ≠ y
and H(x) = H(y)
• Because we are using
hash functions for data
integrity, collisions are
clearly undesirable
Table 11.1
Requirements for a Cryptographic Hash Function H
(Table can be found on page 323 in textbook.)
secure hash function for authentication in CNS
* Resistance required if attacker is able to mount a chosen message attack
Table 11.2
Hash Function Resistance Properties Required for Various
Data Integrity Applications
Attacks on Hash
Functions
• Does not depend on the
specific algorithm, only
depends on bit length
• In the case of a hash
function, attack depends
only on the bit length of the
hash value
• Method is to pick values at
random and try each one
until a collision occurs
• An attack based on
weaknesses in a
particular cryptographic
algorithm
• Seek to exploit some
property of the algorithm
to perform some attack
other than an exhaustive
search
Birthday Attacks
• For a collision resistant attack, an adversary wishes to find two messages or
data blocks that yield the same hash function
• The effort required is explained by a mathematical result referred to as the
birthday paradox
• How the birthday attack works:
• The source (A) is prepared to sign a legitimate message x by appending the
appropriate m-bit hash code and encrypting that hash code with A’s private key
• Opponent generates 2m/2 variations x’ of x, all with essentially the same meaning,
and stores the messages and their hash values
• Opponent generates a fraudulent message y for which A’s signature is desired
• Two sets of messages are compared to find a pair with the same hash
• The opponent offers the valid variation to A for signature which can then be
attached to the fraudulent variation for transmission to the intended recipient
• Because the two variations have the same hash code, they will produce the same
signature and the opponent is assured of success even though the encryption key
is not known
(Letter is located on page 326 in textbook)
A Letter
in 237
Variation
secure hash function for authentication in CNS
Hash Functions Based on
Cipher Block Chaining
• Can use block ciphers as hash functions
• Using H0 initial value
• Compute: Hi = E(Mi Hi-1)
• Use final block Hn as the hash value
• Similar to CBC but without a key
• Resulting hash is too small (64-bit)
• Both due to direct birthday attack
• And “meet-in-the-middle” attack
• Other variants also susceptible to attack
Secure Hash Algorithm (SHA)
• SHA was originally designed by the National Institute
of Standards and Technology (NIST) and published as
a federal information processing standard (FIPS 180) in
1993
• Was revised in 1995 as SHA-1
• Based on the hash function MD4 and its design closely
models MD4
• Produces 160-bit hash values
• In 2002 NIST produced a revised version of the
standard that defined three new versions of SHA with
hash value lengths of 256, 384, and 512
• Collectively known as SHA-2
Note: All sizes are measured in bits.
Table 11.3
Comparison of SHA Parameters
secure hash function for authentication in CNS
secure hash function for authentication in CNS
Table 11.4
SHA-512 Constants
(Table can
be found
on page
333 in
textbook)
secure hash function for authentication in CNS
secure hash function for authentication in CNS
(Figure can be found on
page 337 in textbook)
SHA-512
Logic
SHA-3
SHA-1 has not yet been "broken”
• No one has demonstrated a technique
for producing collisions in a practical
amount of time
• Considered to be insecure and has been
phased out for SHA-2
SHA-2 shares the same structure and
mathematical operations as its
predecessors so this is a cause for
concern
• Because it will take years to find a
suitable replacement for SHA-2
should it become vulnerable, NIST
decided to begin the process of
developing a new hash standard
NIST announced in 2007 a competition
for the SHA-3 next generation NIST
hash function
• Winning design was announced by
NIST in October 2012
• SHA-3 is a cryptographic hash
function that is intended to
complement SHA-2 as the approved
standard for a wide range of
applications
The Sponge Construction
• Underlying structure of SHA-3 is a scheme referred to by its
designers as a sponge construction
• Takes an input message and partitions it into fixed-size
blocks
• Each block is processed in turn with the output of each
iteration fed into the next iteration, finally producing an
output block
• The sponge function is defined by three parameters:
• f = the internal function used to process each input block
• r = the size in bits of the input blocks, called the bitrate
• pad = the padding algorithm
secure hash function for authentication in CNS
secure hash function for authentication in CNS
Table 11.5
SHA-3 Parameters
secure hash function for authentication in CNS
SHA-3
Iteration
Function f
Table
11.6
Step
Functions
in SHA-3
secure hash function for authentication in CNS
secure hash function for authentication in CNS
Summary
• Applications of
cryptographic hash
functions
• Message authentication
• Digital signatures
• Other applications
• Requirements and
security
• Security requirements
for cryptographic hash
functions
• Brute-force attacks
• Cryptanalysis
• Hash functions based
on cipher block
chaining
• Secure hash
algorithm (SHA)
• SHA-512 logic
• SHA-512 round
function
• SHA-3
• The sponge
construction
• The SHA-3 Iteration
Function f

More Related Content

PPTX
Smtp, pop3, imapv 4
PDF
Cyber Security - Unit - 4 - Introduction to Cyber Crime and law Cyber Crimes
PPT
Message authentication and hash function
PDF
Lecture 9 electronic_mail_representation_and_transfer
PDF
Self assessment true-false Quiz: Chapter 2 - Computer Networking a top-down A...
PDF
CNS - Unit - 4 - Public Key Cryptosystem
PDF
CNS - Unit - 1 - Introduction
Smtp, pop3, imapv 4
Cyber Security - Unit - 4 - Introduction to Cyber Crime and law Cyber Crimes
Message authentication and hash function
Lecture 9 electronic_mail_representation_and_transfer
Self assessment true-false Quiz: Chapter 2 - Computer Networking a top-down A...
CNS - Unit - 4 - Public Key Cryptosystem
CNS - Unit - 1 - Introduction

What's hot (20)

DOCX
SMTP - SIMPLE MAIL TRANSFER PROTOCOL
PPTX
Application layer
PPTX
OSI Model Assignment Help
PPT
Internetworking devices
PDF
NIIT Certificate
PPT
Cryptography and Network Security
PDF
Email - Electronic Mail
PDF
CNS - Unit - 5 - Cryptographic Hash Functions
PPT
Application layer protocols
PPTX
Application layer protocol - Electronic Mail
PPT
Chapter 23
PPT
Smtp protocol
PPTX
Module 19 tracking emails and investigating email crimes
PPTX
chapter 7A peter norton Operating system basic
PPT
Ch6 1 v1
PPTX
TELNET and SSH by MUSTAFA SAKHAI
PDF
CNS - Unit - 2 - Stream Ciphers and Block Ciphers
PPT
Digital signature
PDF
CNS - Unit - 8 - Key Management and Distribution
PPTX
Cryptography and network security
SMTP - SIMPLE MAIL TRANSFER PROTOCOL
Application layer
OSI Model Assignment Help
Internetworking devices
NIIT Certificate
Cryptography and Network Security
Email - Electronic Mail
CNS - Unit - 5 - Cryptographic Hash Functions
Application layer protocols
Application layer protocol - Electronic Mail
Chapter 23
Smtp protocol
Module 19 tracking emails and investigating email crimes
chapter 7A peter norton Operating system basic
Ch6 1 v1
TELNET and SSH by MUSTAFA SAKHAI
CNS - Unit - 2 - Stream Ciphers and Block Ciphers
Digital signature
CNS - Unit - 8 - Key Management and Distribution
Cryptography and network security
Ad

Similar to secure hash function for authentication in CNS (20)

PDF
Public Key Encryption & Hash functions
DOCX
Cryptography and Network Security Principles and Practice.docx
PPTX
Information and data security cryptographic hash functions
PPTX
All details of cryptography and all the topics of cryptography was explained
PPTX
Digital Signature Message Digest Network Security
PPTX
Cryptography.pptx basics and detailed toptics also
PPTX
Information and network security 38 birthday attacks and security of hash fun...
PDF
Cs8792 cns - unit iv
PDF
Cs8792 cns - unit iv
PPT
Hash Function & Analysis
PPTX
Hash Functions from Information Security
PDF
HASH FUNCTIONS.pdf
PDF
Hash Functions - Uses, Requirements, Secure Hash Algorithm
ODP
CISSP Week 20
PPTX
cryptography module-5 cyber securityantipatterns ,
PPT
NSC_Unit-III_final.ppt
PDF
Hash Functions in Software Security.p df
PDF
Cns
PPTX
Message Digest message digest ppttsx.pptx
PPT
Hash crypto
Public Key Encryption & Hash functions
Cryptography and Network Security Principles and Practice.docx
Information and data security cryptographic hash functions
All details of cryptography and all the topics of cryptography was explained
Digital Signature Message Digest Network Security
Cryptography.pptx basics and detailed toptics also
Information and network security 38 birthday attacks and security of hash fun...
Cs8792 cns - unit iv
Cs8792 cns - unit iv
Hash Function & Analysis
Hash Functions from Information Security
HASH FUNCTIONS.pdf
Hash Functions - Uses, Requirements, Secure Hash Algorithm
CISSP Week 20
cryptography module-5 cyber securityantipatterns ,
NSC_Unit-III_final.ppt
Hash Functions in Software Security.p df
Cns
Message Digest message digest ppttsx.pptx
Hash crypto
Ad

More from NithyasriA2 (8)

PPTX
Network Security - Intrusion Detection System.pptx
PPTX
Secure Hash Authentication in Network Security.pptx
PPTX
Module III CNS Kerberos and its example.pptx
PPTX
IETF - Internet of Things chapter and its expl.pptx
PPT
bgp1 cryptogrphy and network security.ppt
PPTX
Data Encryption standard in cryptography
PPTX
unit 4.pptx of hash function in cryptography
PPTX
Intro.pptx
Network Security - Intrusion Detection System.pptx
Secure Hash Authentication in Network Security.pptx
Module III CNS Kerberos and its example.pptx
IETF - Internet of Things chapter and its expl.pptx
bgp1 cryptogrphy and network security.ppt
Data Encryption standard in cryptography
unit 4.pptx of hash function in cryptography
Intro.pptx

Recently uploaded (20)

PPTX
Welding lecture in detail for understanding
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PDF
Digital Logic Computer Design lecture notes
PPTX
additive manufacturing of ss316l using mig welding
PPTX
Sustainable Sites - Green Building Construction
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPTX
Construction Project Organization Group 2.pptx
PDF
composite construction of structures.pdf
PDF
Well-logging-methods_new................
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PPTX
CH1 Production IntroductoryConcepts.pptx
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PPTX
UNIT 4 Total Quality Management .pptx
Welding lecture in detail for understanding
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
Operating System & Kernel Study Guide-1 - converted.pdf
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
Digital Logic Computer Design lecture notes
additive manufacturing of ss316l using mig welding
Sustainable Sites - Green Building Construction
bas. eng. economics group 4 presentation 1.pptx
Construction Project Organization Group 2.pptx
composite construction of structures.pdf
Well-logging-methods_new................
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
CH1 Production IntroductoryConcepts.pptx
Model Code of Practice - Construction Work - 21102022 .pdf
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
UNIT 4 Total Quality Management .pptx

secure hash function for authentication in CNS

  • 3. “Each of the messages, like each one he had ever read of Stern's commands, began with a number and ended with a number or row of numbers. No efforts on the part of Mungo or any of his experts had been able to break Stern's code, nor was there any clue as to what the preliminary number and those ultimate numbers signified.” —Talking to Strange Men, Ruth Rendell
  • 4. “The Douglas Squirrel has a distinctive eating habit. It usually eats pine cones from the bottom end up. Partially eaten cones can indicate the presence of these squirrels if they have been attacked from the bottom first. If, instead, the cone has been eaten from the top end down, it is more likely to have been a crossbill finch that has been doing the dining.” —Talking to Strange Men, Ruth Rendell
  • 5. Hash Functions • A hash function H accepts a variable-length block of data M as input and produces a fixed-size hash value • h = H(M) • Principal object is data integrity • Cryptographic hash function • An algorithm for which it is computationally infeasible to find either: (a) a data object that maps to a pre-specified hash result (the one-way property) (b) two data objects that map to the same hash result (the collision-free property)
  • 9. Message Authentication Code (MAC) • Also known as a keyed hash function • Typically used between two parties that share a secret key to authenticate information exchanged between those parties Takes as input a secret key and a data block and produces a hash value (MAC) which is associated with the protected message •If the integrity of the message needs to be checked, the MAC function can be applied to the message and the result compared with the associated MAC value •An attacker who alters the message will be unable to alter the associated MAC value without knowledge of the secret key
  • 10. Digital Signature • Operation is similar to that of the MAC • The hash value of a message is encrypted with a user’s private key • Anyone who knows the user’s public key can verify the integrity of the message • An attacker who wishes to alter the message would need to know the user’s private key • Implications of digital signatures go beyond just message authentication
  • 12. Other Hash Function Uses Commonly used to create a one-way password file When a user enters a password, the hash of that password is compared to the stored hash value for verification This approach to password protection is used by most operating systems Can be used for intrusion and virus detection Store H(F) for each file on a system and secure the hash values One can later determine if a file has been modified by recomputing H(F) An intruder would need to change F without changing H(F) Can be used to construct a pseudorandom function (PRF) or a pseudorandom number generator (PRNG) A common application for a hash-based PRF is for the generation of symmetric keys
  • 13. Two Simple Hash Functions • Consider two simple insecure hash functions that operate using the following general principles: • The input is viewed as a sequence of n-bit blocks • The input is processed one block at a time in an iterative fashion to produce an n-bit hash function • Bit-by-bit exclusive-OR (XOR) of every block • Ci = bi1 xor bi2 xor . . . xor bim • Produces a simple parity for each bit position and is known as a longitudinal redundancy check • Reasonably effective for random data as a data integrity check • Perform a one-bit circular shift on the hash value after each block is processed • Has the effect of randomizing the input more completely and overcoming any regularities that appear in the input
  • 15. Requirements and Security • x is the preimage of h for a hash value h = H(x) • Is a data block whose hash function, using the function H, is h • Because H is a many-to- one mapping, for any given hash value h, there will in general be multiple preimages • Occurs if we have x ≠ y and H(x) = H(y) • Because we are using hash functions for data integrity, collisions are clearly undesirable
  • 16. Table 11.1 Requirements for a Cryptographic Hash Function H (Table can be found on page 323 in textbook.)
  • 18. * Resistance required if attacker is able to mount a chosen message attack Table 11.2 Hash Function Resistance Properties Required for Various Data Integrity Applications
  • 19. Attacks on Hash Functions • Does not depend on the specific algorithm, only depends on bit length • In the case of a hash function, attack depends only on the bit length of the hash value • Method is to pick values at random and try each one until a collision occurs • An attack based on weaknesses in a particular cryptographic algorithm • Seek to exploit some property of the algorithm to perform some attack other than an exhaustive search
  • 20. Birthday Attacks • For a collision resistant attack, an adversary wishes to find two messages or data blocks that yield the same hash function • The effort required is explained by a mathematical result referred to as the birthday paradox • How the birthday attack works: • The source (A) is prepared to sign a legitimate message x by appending the appropriate m-bit hash code and encrypting that hash code with A’s private key • Opponent generates 2m/2 variations x’ of x, all with essentially the same meaning, and stores the messages and their hash values • Opponent generates a fraudulent message y for which A’s signature is desired • Two sets of messages are compared to find a pair with the same hash • The opponent offers the valid variation to A for signature which can then be attached to the fraudulent variation for transmission to the intended recipient • Because the two variations have the same hash code, they will produce the same signature and the opponent is assured of success even though the encryption key is not known
  • 21. (Letter is located on page 326 in textbook) A Letter in 237 Variation
  • 23. Hash Functions Based on Cipher Block Chaining • Can use block ciphers as hash functions • Using H0 initial value • Compute: Hi = E(Mi Hi-1) • Use final block Hn as the hash value • Similar to CBC but without a key • Resulting hash is too small (64-bit) • Both due to direct birthday attack • And “meet-in-the-middle” attack • Other variants also susceptible to attack
  • 24. Secure Hash Algorithm (SHA) • SHA was originally designed by the National Institute of Standards and Technology (NIST) and published as a federal information processing standard (FIPS 180) in 1993 • Was revised in 1995 as SHA-1 • Based on the hash function MD4 and its design closely models MD4 • Produces 160-bit hash values • In 2002 NIST produced a revised version of the standard that defined three new versions of SHA with hash value lengths of 256, 384, and 512 • Collectively known as SHA-2
  • 25. Note: All sizes are measured in bits. Table 11.3 Comparison of SHA Parameters
  • 28. Table 11.4 SHA-512 Constants (Table can be found on page 333 in textbook)
  • 31. (Figure can be found on page 337 in textbook) SHA-512 Logic
  • 32. SHA-3 SHA-1 has not yet been "broken” • No one has demonstrated a technique for producing collisions in a practical amount of time • Considered to be insecure and has been phased out for SHA-2 SHA-2 shares the same structure and mathematical operations as its predecessors so this is a cause for concern • Because it will take years to find a suitable replacement for SHA-2 should it become vulnerable, NIST decided to begin the process of developing a new hash standard NIST announced in 2007 a competition for the SHA-3 next generation NIST hash function • Winning design was announced by NIST in October 2012 • SHA-3 is a cryptographic hash function that is intended to complement SHA-2 as the approved standard for a wide range of applications
  • 33. The Sponge Construction • Underlying structure of SHA-3 is a scheme referred to by its designers as a sponge construction • Takes an input message and partitions it into fixed-size blocks • Each block is processed in turn with the output of each iteration fed into the next iteration, finally producing an output block • The sponge function is defined by three parameters: • f = the internal function used to process each input block • r = the size in bits of the input blocks, called the bitrate • pad = the padding algorithm
  • 42. Summary • Applications of cryptographic hash functions • Message authentication • Digital signatures • Other applications • Requirements and security • Security requirements for cryptographic hash functions • Brute-force attacks • Cryptanalysis • Hash functions based on cipher block chaining • Secure hash algorithm (SHA) • SHA-512 logic • SHA-512 round function • SHA-3 • The sponge construction • The SHA-3 Iteration Function f