Message authentication and hash function

Network Security
Presentation
Chapter 11
Message authentication and
hash function
.
• Names IDs
1) Abdiqadir Osman mohamud 204326915
2) Rita Abdalla Hussein 214306913
3) Omar Ahmed Salad 214306912
4) Abdinasir Abdullahi Dahir 214326902
5) Abdifatah Ismail Sulub 214326917
6) Mohamed Sharif Hussein 214306908
.
• Message authentication
• Security requirements and attacks
• Authentication Functions:-
a. Message encryption
b. Message authentication code (MAC)
c. Hash functions
• Practice and real life applications:-
Overviewing concepts
Capturing traffic using BURP SUIT
Intercept network traffic
Hashing function in PHP
Message Authentication
message authentication is concerned with:
protecting the integrity of a message
validating identity of originator
non-repudiation of origin (dispute resolution)
CS526
Topic
5:
Hash
Functions
and
Message
Authentication
5
Data Integrity and Source
Authentication
• Encryption does not protect data from modification
by another party.
• Why?
• Need a way to ensure that data arrives at destination
in its original form as sent by the sender and it is
coming from an authenticated source.
Communication without
authentication
Shared key k to generate authenticate message
Alice
M
Bob
Eve
M’
Very
easy..
Eve can simply
change the message
Security attacks
In the context of communications across a network, the
following attacks can be identified:
• disclosure
• traffic analysis
• masquerade
• content modification
• sequence modification
• timing modification
• source repudiation
• destination repudiation
Security attacks…….
• 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. In a connection-oriented application, the frequency
and duration of connections could be determined. In either a
connection-oriented or connectionless environment, the
number and length of messages between parties could be
determined.
Security attacks…….
• Masquerade: Insertion of messages into the network from a
fraudulent source. This includes the creation of messages by
an opponent that are purported to come from an authorized
entity. Also included are fraudulent acknowledgments of
message receipt or nonreceipt by someone other than the
message recipient.
Security attacks…….
• Content modification: Changes to the contents of a message,
including insertion, deletion, transposition, and modification.
• Sequence modification: Any modification to a sequence of
messages between parties, including insertion, deletion, and
reordering.
Security attacks…….
• Timing modification: Delay or replay of messages. In a
connection-oriented application, an entire session or
sequence of messages could be a replay of some previous
valid session, or individual messages in the sequence could be
delayed or replayed. In a connectionless application, an
individual message (e.g., datagram) could be delayed or
replayed.
Security attacks…….
• Source repudiation: Denial of transmission of message by
source.
• Destination repudiation: Denial of receipt of message by
destination.
Authentication Functions
• Any message authentication or digital signature mechanism
has two levels of functionality.
• At the lower level, there must be some sort of function that
produces an authenticator: a value to be used to authenticate
a message. This lower-level function is then used as a
primitive in a higher-level authentication protocol that enables
a receiver to verify the authenticity of a message.
Authentication Functions..
This section is concerned with the types of functions that may
be used to produce an authenticator. These may be grouped
into three classes, as follows:
● Message encryption: The ciphertext of the entire message
serves as its authenticator
● Message authentication code (MAC): A function of the
message and a secret key that produces a fixed-length value that
serves as the authenticator
● Hash function: A function that maps a message of any length
into a fixed-length hash value, which serves as the authenticator
Message Encryption
• message encryption by itself also provides a measure of
authentication
• if symmetric encryption is used then:
• receiver know sender must have created it
• since only sender and receiver now key used
• know content cannot of been altered
• if message has suitable structure, redundancy or a checksum to
detect any changes
Message Encryption
• if public-key encryption is used:
• encryption provides no confidence of sender
• since anyone potentially knows public-key
• however if
• sender signs message using their private-key
• then encrypts with recipients public key
• have both secrecy and authentication
• again need to recognize corrupted messages
• but at cost of two public-key uses on message
Message Authentication Code
(MAC)
• generated by an algorithm that creates a small fixed-sized
block
• depending on both message and some key
• like encryption though need not be reversible
• appended to message as a signature
• receiver performs same computation on message and checks
it matches the MAC
• provides assurance that message is unaltered and comes from
sender
Message Authentication Codes
Keyed hash function.
Authenticate origin of messages
Symmetric key, shared between sender and receiver. Both sender and
receiver can create and verify MAC.
Integrity protection of messages
Message changes in transit are detected.
An ordinary (key-less) hash function does not provide this. (why?)
Two known designs:
HMAC (based on hash function)
CBC-MAC (based on block cipher in CBC-mode)
Are these good constructions?
MACk (m) = h (kkm).
MACk (m) = h (mkk).
22 / 26
Message Authentication Code
Message Authentication Codes
as shown the MAC provides authentication
can also use encryption for secrecy
generally use separate keys for each
can compute MAC either before or after encryption
is generally regarded as better done before
why use a MAC?
sometimes only authentication is needed
sometimes need authentication to persist longer than
the encryption (eg. archival use)
note that a MAC is not a digital signature
MAC Properties
• a MAC is a cryptographic checksum
MAC = CK(M)
• condenses a variable-length message M
• using a secret key K
• to a fixed-sized authenticator
• is a many-to-one function
• potentially many messages have same MAC
• but finding these needs to be very difficult
Requirements for MACs
• taking into account the types of attacks
• need the MAC to satisfy the following:
1. knowing a message and MAC, is infeasible to find another
message with same MAC
2. MACs should be uniformly distributed
3. MAC should depend equally on all bits of the message
Hash Functions
A cryptographic hash function h is a function which takes arbitrary
length bit strings as input and produces a fixed length bit string as
output, the hash value.
A cryptographic hash function should be one-way: given any string y
from the range of h, it should be computationally infeasible to find any
value x in the domain of h such that
h(x) = y.
Given a hash function with outputs of n bits, we would like a function
for which finding preimages requires O(2n) time.
23 /
Hash Functions
• condenses arbitrary message to fixed size
h = H(M)
• usually assume that the hash function is public and not keyed
• cf. MAC which is keyed
• hash used to detect changes to message
• can use in various ways with message
• most often to create a digital signature
Requirements for a HashFunction
• The purpose of a hash function is to produce a "fingerprint" of
a file, message, or other block of data. To be useful for
message authentication, a hash function H must have the
following properties.
1. H can be applied to a block of data of any size.
2. H produces a fixed-length output.
HashFunction requirement
3. H(x) is relatively easy to compute for any given x, making both
hardware and software implementations practical.
4. For any given value h, it is computationally infeasible to find x
such that H(x) = h. This is sometimes referred to in the literature
as the one-way property.
HashFunction requirement….
5. For any given block x, it is computationally infeasible to find y x
such that H(y) = H(x). This is sometimes referred to as weak
collision resistance.
6.It is computationally infeasible to find any pair (x, y) such that
H(x) = H(y). This is sometimes referred to as strong collision
resistance
Hash Functions & Digital Signatures
Example Operation of
Hash Functions
Information
2
Birthday Attacks
might think a 64-bit hash is secure
but by Birthday Paradox is not
birthday attack works thus:
opponent generates 2
m/2 variations of a valid message
all with essentially the same meaning
opponent also generates 2
m/2 variations of a desired
fraudulent message
two sets of messages are compared to find pair with
same hash (probability > 0.5 by birthday paradox)
have user sign the valid message, then substitute the
forgery which will have a valid signature
conclusion is that need to use larger MAC/hash
Some Popular HashAlgorithms
Information 3
 MD5
(Rivest
)
◦ 128-bit output
◦ Most popular
 SHA-1 (NIST-
NSA)
◦ US gov’t standard
◦ 160-bit output
 RIPEMD-160
◦ Euro.RIPE project.
◦ 160-bit output
Algorithm Speed (MByte/s.)
MD5 205
SHA-1 72
RIPEMD-160 51
Crypto++ 5.1 benchmarks,2.1 GHz
P4
Usage of hash functions
• Commit to message by disclosing hash of message, later
showing the message
• If collision resistant, you cannot cheat (change message).
• Consider playing rock, paper, scissors remotely with a hash function.
Or rock-paper-scissors-lizard-Spock.
• Verify integrity of downloaded files.
• Digital signatures.
• SSL/TLS for integrity protection.
• Storing passwords in operating systems and web servers.
21 /
Security of Hash Functions and
Macs
• Just as with symmetric and public-key encryption, we can
group attacks on hash functions and MACs into two
categories: brute-force attacks and cryptanalysis
Brute-Force Attacks
• The nature of brute-force attacks differs somewhat for hash
functions and MACs.
Hash Functions
• The strength of a hash function against brute-force attacks
depends solely on the length of the hash
• code produced by the algorithm. Recall from our discussion of
hash functions that there are three
desirable properties:
● One-way: For any given code h, it is computationally infeasible
to find x such that H(x) = h.
● Weak collision resistance: For any given block x, it is
computationally infeasible to find y x with H(y) = H(x).
● Strong collision resistance: It is computationally infeasible to
find any pair (x, y) such that H (x) = H(y).
Hash Functions & MAC
Security
cryptanalytic attacks exploit structure
like block ciphers want brute-force attacks to be the
best alternative
have a number of analytic attacks on iterated
hash functions
CVi = f[CVi-1, Mi]; H(M)=CVN
typically focus on collisions in function f
like block ciphers is often composed of rounds
attacks exploit properties of round functions
Practical applications..
• Hashing passwords
• PHP server analysis
• Burp suit capturing
• message authentication code.pptx
.
• .
1 von 38

Recomendados

MAC-Message Authentication Codes von
MAC-Message Authentication CodesMAC-Message Authentication Codes
MAC-Message Authentication CodesDarshanPatil82
4.7K views38 Folien
Hash Function von
Hash FunctionHash Function
Hash FunctionSiddharth Srivastava
24.2K views32 Folien
S/MIME von
S/MIMES/MIME
S/MIMEmaria azam
14.8K views9 Folien
Message authentication von
Message authenticationMessage authentication
Message authenticationCAS
26.3K views22 Folien
Cryptography.ppt von
Cryptography.pptCryptography.ppt
Cryptography.pptkusum sharma
203.6K views21 Folien
CS6701 CRYPTOGRAPHY AND NETWORK SECURITY von
CS6701 CRYPTOGRAPHY AND NETWORK SECURITYCS6701 CRYPTOGRAPHY AND NETWORK SECURITY
CS6701 CRYPTOGRAPHY AND NETWORK SECURITYKathirvel Ayyaswamy
5.1K views101 Folien

Más contenido relacionado

Was ist angesagt?

Data Encryption Standard (DES) von
Data Encryption Standard (DES)Data Encryption Standard (DES)
Data Encryption Standard (DES)Haris Ahmed
34K views32 Folien
Message Authentication von
Message AuthenticationMessage Authentication
Message Authenticationchauhankapil
1.7K views20 Folien
Message digest 5 von
Message digest 5Message digest 5
Message digest 5Tirthika Bandi
6.2K views20 Folien
SHA- Secure hashing algorithm von
SHA- Secure hashing algorithmSHA- Secure hashing algorithm
SHA- Secure hashing algorithmRuchi Maurya
11.2K views16 Folien
Password cracking and brute force von
Password cracking and brute forcePassword cracking and brute force
Password cracking and brute forcevishalgohel12195
4.6K views20 Folien
Block Cipher von
Block CipherBlock Cipher
Block CipherBrandon Byungyong Jo
1.8K views9 Folien

Was ist angesagt?(20)

Data Encryption Standard (DES) von Haris Ahmed
Data Encryption Standard (DES)Data Encryption Standard (DES)
Data Encryption Standard (DES)
Haris Ahmed34K views
Message Authentication von chauhankapil
Message AuthenticationMessage Authentication
Message Authentication
chauhankapil1.7K views
SHA- Secure hashing algorithm von Ruchi Maurya
SHA- Secure hashing algorithmSHA- Secure hashing algorithm
SHA- Secure hashing algorithm
Ruchi Maurya11.2K views
Pgp pretty good privacy von Pawan Arya
Pgp pretty good privacyPgp pretty good privacy
Pgp pretty good privacy
Pawan Arya69.8K views
Secure Socket Layer von Naveen Kumar
Secure Socket LayerSecure Socket Layer
Secure Socket Layer
Naveen Kumar39.1K views
Intro to modern cryptography von zahid-mian
Intro to modern cryptographyIntro to modern cryptography
Intro to modern cryptography
zahid-mian2.5K views
Homomorphic encryption in cloud computing final von Santanu Das Saan
Homomorphic encryption  in cloud computing finalHomomorphic encryption  in cloud computing final
Homomorphic encryption in cloud computing final
Santanu Das Saan2.7K views
Introduction to Cryptography von Popescu Petre
Introduction to CryptographyIntroduction to Cryptography
Introduction to Cryptography
Popescu Petre7.9K views

Similar a Message authentication and hash function

Cs8792 cns - unit iv von
Cs8792   cns - unit ivCs8792   cns - unit iv
Cs8792 cns - unit ivArthyR3
118 views153 Folien
Cs8792 cns - unit iv von
Cs8792   cns - unit ivCs8792   cns - unit iv
Cs8792 cns - unit ivArthyR3
570 views153 Folien
Cns von
CnsCns
CnsArthyR3
172 views145 Folien
Information and data security cryptography and network security von
Information and data security cryptography and network securityInformation and data security cryptography and network security
Information and data security cryptography and network securityMazin Alwaaly
399 views33 Folien
unit - III.pptx von
unit - III.pptxunit - III.pptx
unit - III.pptxsandyBS
5 views43 Folien
BAIT1103 Chapter 2 von
BAIT1103 Chapter 2BAIT1103 Chapter 2
BAIT1103 Chapter 2limsh
938 views30 Folien

Similar a Message authentication and hash function(20)

Cs8792 cns - unit iv von ArthyR3
Cs8792   cns - unit ivCs8792   cns - unit iv
Cs8792 cns - unit iv
ArthyR3118 views
Cs8792 cns - unit iv von ArthyR3
Cs8792   cns - unit ivCs8792   cns - unit iv
Cs8792 cns - unit iv
ArthyR3570 views
Cns von ArthyR3
CnsCns
Cns
ArthyR3172 views
Information and data security cryptography and network security von Mazin Alwaaly
Information and data security cryptography and network securityInformation and data security cryptography and network security
Information and data security cryptography and network security
Mazin Alwaaly399 views
unit - III.pptx von sandyBS
unit - III.pptxunit - III.pptx
unit - III.pptx
sandyBS5 views
BAIT1103 Chapter 2 von limsh
BAIT1103 Chapter 2BAIT1103 Chapter 2
BAIT1103 Chapter 2
limsh938 views
Cryptography and Message Authentication NS3 von koolkampus
Cryptography and Message Authentication NS3Cryptography and Message Authentication NS3
Cryptography and Message Authentication NS3
koolkampus6K views
Information and network security 41 message authentication code von Vaibhav Khanna
Information and network security 41 message authentication codeInformation and network security 41 message authentication code
Information and network security 41 message authentication code
Vaibhav Khanna69 views
Distribution of public keys and hmac von anuragjagetiya
Distribution of public keys and hmacDistribution of public keys and hmac
Distribution of public keys and hmac
anuragjagetiya7.7K views
Information and data security cryptographic hash functions von Mazin Alwaaly
Information and data security cryptographic hash functionsInformation and data security cryptographic hash functions
Information and data security cryptographic hash functions
Mazin Alwaaly547 views
Message Authentication Requirement-MAC von Sou Jana
Message Authentication Requirement-MACMessage Authentication Requirement-MAC
Message Authentication Requirement-MAC
Sou Jana135 views

Último

HTTP headers that make your website go faster - devs.gent November 2023 von
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023Thijs Feryn
26 views151 Folien
Igniting Next Level Productivity with AI-Infused Data Integration Workflows von
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
317 views86 Folien
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors von
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensorssugiuralab
23 views15 Folien
"Node.js Development in 2024: trends and tools", Nikita Galkin von
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin Fwdays
17 views38 Folien
"Surviving highload with Node.js", Andrii Shumada von
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada Fwdays
33 views29 Folien
Zero to Automated in Under a Year von
Zero to Automated in Under a YearZero to Automated in Under a Year
Zero to Automated in Under a YearNetwork Automation Forum
22 views23 Folien

Último(20)

HTTP headers that make your website go faster - devs.gent November 2023 von Thijs Feryn
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023
Thijs Feryn26 views
Igniting Next Level Productivity with AI-Infused Data Integration Workflows von Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software317 views
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors von sugiuralab
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors
sugiuralab23 views
"Node.js Development in 2024: trends and tools", Nikita Galkin von Fwdays
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin
Fwdays17 views
"Surviving highload with Node.js", Andrii Shumada von Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays33 views
The Forbidden VPN Secrets.pdf von Mariam Shaba
The Forbidden VPN Secrets.pdfThe Forbidden VPN Secrets.pdf
The Forbidden VPN Secrets.pdf
Mariam Shaba20 views
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf von Dr. Jimmy Schwarzkopf
STKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdfSTKI Israeli Market Study 2023   corrected forecast 2023_24 v3.pdf
STKI Israeli Market Study 2023 corrected forecast 2023_24 v3.pdf
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... von TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc72 views
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... von James Anderson
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
James Anderson126 views
Five Things You SHOULD Know About Postman von Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman38 views
Business Analyst Series 2023 - Week 3 Session 5 von DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10345 views

Message authentication and hash function

  • 1. Network Security Presentation Chapter 11 Message authentication and hash function
  • 2. . • Names IDs 1) Abdiqadir Osman mohamud 204326915 2) Rita Abdalla Hussein 214306913 3) Omar Ahmed Salad 214306912 4) Abdinasir Abdullahi Dahir 214326902 5) Abdifatah Ismail Sulub 214326917 6) Mohamed Sharif Hussein 214306908
  • 3. . • Message authentication • Security requirements and attacks • Authentication Functions:- a. Message encryption b. Message authentication code (MAC) c. Hash functions • Practice and real life applications:- Overviewing concepts Capturing traffic using BURP SUIT Intercept network traffic Hashing function in PHP
  • 4. Message Authentication message authentication is concerned with: protecting the integrity of a message validating identity of originator non-repudiation of origin (dispute resolution)
  • 5. CS526 Topic 5: Hash Functions and Message Authentication 5 Data Integrity and Source Authentication • Encryption does not protect data from modification by another party. • Why? • Need a way to ensure that data arrives at destination in its original form as sent by the sender and it is coming from an authenticated source.
  • 6. Communication without authentication Shared key k to generate authenticate message Alice M Bob Eve M’ Very easy.. Eve can simply change the message
  • 7. Security attacks In the context of communications across a network, the following attacks can be identified: • disclosure • traffic analysis • masquerade • content modification • sequence modification • timing modification • source repudiation • destination repudiation
  • 8. Security attacks……. • 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. In a connection-oriented application, the frequency and duration of connections could be determined. In either a connection-oriented or connectionless environment, the number and length of messages between parties could be determined.
  • 9. Security attacks……. • Masquerade: Insertion of messages into the network from a fraudulent source. This includes the creation of messages by an opponent that are purported to come from an authorized entity. Also included are fraudulent acknowledgments of message receipt or nonreceipt by someone other than the message recipient.
  • 10. Security attacks……. • Content modification: Changes to the contents of a message, including insertion, deletion, transposition, and modification. • Sequence modification: Any modification to a sequence of messages between parties, including insertion, deletion, and reordering.
  • 11. Security attacks……. • Timing modification: Delay or replay of messages. In a connection-oriented application, an entire session or sequence of messages could be a replay of some previous valid session, or individual messages in the sequence could be delayed or replayed. In a connectionless application, an individual message (e.g., datagram) could be delayed or replayed.
  • 12. Security attacks……. • Source repudiation: Denial of transmission of message by source. • Destination repudiation: Denial of receipt of message by destination.
  • 13. Authentication Functions • Any message authentication or digital signature mechanism has two levels of functionality. • At the lower level, there must be some sort of function that produces an authenticator: a value to be used to authenticate a message. This lower-level function is then used as a primitive in a higher-level authentication protocol that enables a receiver to verify the authenticity of a message.
  • 14. Authentication Functions.. This section is concerned with the types of functions that may be used to produce an authenticator. These may be grouped into three classes, as follows: ● Message encryption: The ciphertext of the entire message serves as its authenticator ● Message authentication code (MAC): A function of the message and a secret key that produces a fixed-length value that serves as the authenticator ● Hash function: A function that maps a message of any length into a fixed-length hash value, which serves as the authenticator
  • 15. Message Encryption • message encryption by itself also provides a measure of authentication • if symmetric encryption is used then: • receiver know sender must have created it • since only sender and receiver now key used • know content cannot of been altered • if message has suitable structure, redundancy or a checksum to detect any changes
  • 16. Message Encryption • if public-key encryption is used: • encryption provides no confidence of sender • since anyone potentially knows public-key • however if • sender signs message using their private-key • then encrypts with recipients public key • have both secrecy and authentication • again need to recognize corrupted messages • but at cost of two public-key uses on message
  • 17. Message Authentication Code (MAC) • generated by an algorithm that creates a small fixed-sized block • depending on both message and some key • like encryption though need not be reversible • appended to message as a signature • receiver performs same computation on message and checks it matches the MAC • provides assurance that message is unaltered and comes from sender
  • 18. Message Authentication Codes Keyed hash function. Authenticate origin of messages Symmetric key, shared between sender and receiver. Both sender and receiver can create and verify MAC. Integrity protection of messages Message changes in transit are detected. An ordinary (key-less) hash function does not provide this. (why?) Two known designs: HMAC (based on hash function) CBC-MAC (based on block cipher in CBC-mode) Are these good constructions? MACk (m) = h (kkm). MACk (m) = h (mkk). 22 / 26
  • 20. Message Authentication Codes as shown the MAC provides authentication can also use encryption for secrecy generally use separate keys for each can compute MAC either before or after encryption is generally regarded as better done before why use a MAC? sometimes only authentication is needed sometimes need authentication to persist longer than the encryption (eg. archival use) note that a MAC is not a digital signature
  • 21. MAC Properties • a MAC is a cryptographic checksum MAC = CK(M) • condenses a variable-length message M • using a secret key K • to a fixed-sized authenticator • is a many-to-one function • potentially many messages have same MAC • but finding these needs to be very difficult
  • 22. Requirements for MACs • taking into account the types of attacks • need the MAC to satisfy the following: 1. knowing a message and MAC, is infeasible to find another message with same MAC 2. MACs should be uniformly distributed 3. MAC should depend equally on all bits of the message
  • 23. Hash Functions A cryptographic hash function h is a function which takes arbitrary length bit strings as input and produces a fixed length bit string as output, the hash value. A cryptographic hash function should be one-way: given any string y from the range of h, it should be computationally infeasible to find any value x in the domain of h such that h(x) = y. Given a hash function with outputs of n bits, we would like a function for which finding preimages requires O(2n) time. 23 /
  • 24. Hash Functions • condenses arbitrary message to fixed size h = H(M) • usually assume that the hash function is public and not keyed • cf. MAC which is keyed • hash used to detect changes to message • can use in various ways with message • most often to create a digital signature
  • 25. Requirements for a HashFunction • The purpose of a hash function is to produce a "fingerprint" of a file, message, or other block of data. To be useful for message authentication, a hash function H must have the following properties. 1. H can be applied to a block of data of any size. 2. H produces a fixed-length output.
  • 26. HashFunction requirement 3. H(x) is relatively easy to compute for any given x, making both hardware and software implementations practical. 4. For any given value h, it is computationally infeasible to find x such that H(x) = h. This is sometimes referred to in the literature as the one-way property.
  • 27. HashFunction requirement…. 5. For any given block x, it is computationally infeasible to find y x such that H(y) = H(x). This is sometimes referred to as weak collision resistance. 6.It is computationally infeasible to find any pair (x, y) such that H(x) = H(y). This is sometimes referred to as strong collision resistance
  • 28. Hash Functions & Digital Signatures
  • 29. Example Operation of Hash Functions Information 2
  • 30. Birthday Attacks might think a 64-bit hash is secure but by Birthday Paradox is not birthday attack works thus: opponent generates 2 m/2 variations of a valid message all with essentially the same meaning opponent also generates 2 m/2 variations of a desired fraudulent message two sets of messages are compared to find pair with same hash (probability > 0.5 by birthday paradox) have user sign the valid message, then substitute the forgery which will have a valid signature conclusion is that need to use larger MAC/hash
  • 31. Some Popular HashAlgorithms Information 3  MD5 (Rivest ) ◦ 128-bit output ◦ Most popular  SHA-1 (NIST- NSA) ◦ US gov’t standard ◦ 160-bit output  RIPEMD-160 ◦ Euro.RIPE project. ◦ 160-bit output Algorithm Speed (MByte/s.) MD5 205 SHA-1 72 RIPEMD-160 51 Crypto++ 5.1 benchmarks,2.1 GHz P4
  • 32. Usage of hash functions • Commit to message by disclosing hash of message, later showing the message • If collision resistant, you cannot cheat (change message). • Consider playing rock, paper, scissors remotely with a hash function. Or rock-paper-scissors-lizard-Spock. • Verify integrity of downloaded files. • Digital signatures. • SSL/TLS for integrity protection. • Storing passwords in operating systems and web servers. 21 /
  • 33. Security of Hash Functions and Macs • Just as with symmetric and public-key encryption, we can group attacks on hash functions and MACs into two categories: brute-force attacks and cryptanalysis
  • 34. Brute-Force Attacks • The nature of brute-force attacks differs somewhat for hash functions and MACs. Hash Functions • The strength of a hash function against brute-force attacks depends solely on the length of the hash • code produced by the algorithm. Recall from our discussion of hash functions that there are three
  • 35. desirable properties: ● One-way: For any given code h, it is computationally infeasible to find x such that H(x) = h. ● Weak collision resistance: For any given block x, it is computationally infeasible to find y x with H(y) = H(x). ● Strong collision resistance: It is computationally infeasible to find any pair (x, y) such that H (x) = H(y).
  • 36. Hash Functions & MAC Security cryptanalytic attacks exploit structure like block ciphers want brute-force attacks to be the best alternative have a number of analytic attacks on iterated hash functions CVi = f[CVi-1, Mi]; H(M)=CVN typically focus on collisions in function f like block ciphers is often composed of rounds attacks exploit properties of round functions
  • 37. Practical applications.. • Hashing passwords • PHP server analysis • Burp suit capturing • message authentication code.pptx