SlideShare a Scribd company logo
1 of 22
Download to read offline
Message Digest Algorithm : SHA-1
Shiva Ram Dam
MSc Information System Engineering
June 12, 2019
Pokhara University
Nepal
Introduction
• SHA1: Secure Hash Algorithm 1
• Designed by the United States National Security Agency
• Produces hash value known as Message Digest
2June 12, 2019 SHA-1 Algorithm
Salient Features
• Works for any input message that is less than 264 bits
• produces160 bits length message digest
• Infeasible to retain the original message from the message digest
• Same message digest to be produced from both sender and
receiver
• Purpose: Authentication , not Encryption
• widely used in security applications and protocols, including TLS,
SSL, PGP, SSH, IPSec and S/MIME
3June 12, 2019 SHA-1 Algorithm
Message-Hashcode Example
abc
Abc
4June 12, 2019 SHA-1 Algorithm
a9993e36-4706816a-ba3e2571-
7850c26c-9cd0d89d
915858af-a2278f25-527f1920-
38108346-164b47f2
SHA
Abstract view of SHA
• Input to the SHA can be of
arbitrary length.
• Produces fixed length output
(i.e. 160 bits length)
June 12, 2019 SHA-1 Algorithm 5
SHA 1
Arbitrary Length
H(X)
160 bits
X
Steps:
1. Append padding bits
2. Append Length
3. Initialize hash bufffer
4. SHA processing
5. Output
June 12, 2019 SHA-1 Algorithm 6
Padding
X (X1, X2, ….Xn)
Compression
Function
512
bits
160 bits
H(X)
160 bits
1. Padding
Process of adding extra bits (i.e. 0
followed after a 1)
June 12, 2019 SHA-1 Algorithm 7
Padding
X (X1, X2, ….Xn)
Compression
Function
512
bits
160 bits
H(X)
160 bits
Fig: Padding of string "abc" in bits
2. Appending length
• After padding, length of the
message is represented in 24
bit
• In total, the string is a multiple
of 512 bits.
June 12, 2019 SHA-1 Algorithm 8
Padding
X (X1, X2, ….Xn)
Compression
Function
512
bits
160 bits
H(X)
160 bits
Fig: Padding of string "abc" in bits, finalized by the length
of the string, which is 24 bits
• This 512 bits input to the
compression function
• The message divided into 16
words.
• Each word consists of 32 bits.
• 512/32 =16 words
June 12, 2019 SHA-1 Algorithm 9
Padding
X (X1, X2, ….Xn)
Compression
Function
512
bits
160 bits
H(X)
160 bits
3. Initialize hash buffer
Initial values of Ho are predefined
and stored in registers ABCDE
These initial values are used in
Round 0.
June 12, 2019 SHA-1 Algorithm 10
H Hex values
Ho(A) 01234567
Ho(B) 89ABCDEF
Ho(C) FEDCBA98
Ho(D) 76543210
Ho(E) C3D2E1F0
Source:
https://www.researchgate.net/publication/238180532_An_Architecture_for_a
_SHA1_Applied_for_DSA/figures?lo=1
CF
4. SHA Processing
SHA1 has 80 rounds defined.
The Message Scheduler Algorithm
schedules each word to rounds as:
• W0 Round 0
• W1 Round 1
……
• W15 Round 15
• W16 Round 16
…..
• W79 Round 79
June 12, 2019 SHA-1 Algorithm 11
Wt is
calculatedSource:
https://www.researchgate.net/publication/238180532_An_Architecture_for_a
_SHA1_Applied_for_DSA/figures?lo=1
Word assigning to rounds:
4. SHA Processing (contd.)
June 12, 2019 SHA-1 Algorithm 12
Source:
https://www.researchgate.net/publication/238180532_An_Architecture_for_a
_SHA1_Applied_for_DSA/figures?lo=1
Word assigning to round 0:
4. SHA Processing (contd.)
June 12, 2019 SHA-1 Algorithm 13
Source:
https://www.researchgate.net/publication/238180532_An_Architecture_for_a
_SHA1_Applied_for_DSA/figures?lo=1
Word assigning to other rounds:
For others (i.e round 16- 79)
W[t] = S1(w[t-16] XOR W[t-14] XOR W[t-8] XOR W[t-3])
For example: when round is 16,
• W[16] = S1(w[16-16] XOR W[16-14] XOR W[16-8] XOR W[16-3])
• Here W0, W2, W8 and W13 are XORed.
• The output is the new word for round 16.
4. SHA Processing (contd.)
Stages Round
t=1 0 to 19
t=2 20 to 39
t=3 40 to 59
t=4 60 to 79
June 12, 2019 SHA-1 Algorithm 14
Each stage has 20 rounds.
Source:
https://www.researchgate.net/publication/238180532_An_Architecture_for_a
_SHA1_Applied_for_DSA/figures?lo=1
Division of stages:
4. SHA Processing (contd.)
At each stage:
June 12, 2019 SHA-1 Algorithm 15
Stage Predefined value of k
t1 K1=0X5A827999
t2 K2= 0X6ED9EBA1
t3 K3=0X8F1BBCDC
t4 K4=0XCA62C1D6
Source:
https://www.researchgate.net/publication/238180532_An_Architecture_for_a
_SHA1_Applied_for_DSA/figures?lo=1
Constant values:
4. SHA Processing (contd.)
Each round takes 3 inputs:
• 32 bit word form 512 bit block
(i.e.Wt)
• The values from register
ABCDE
• Constant Kt
June 12, 2019 SHA-1 Algorithm 16
Source:
https://www.researchgate.net/publication/238180532_An_Architecture_for_a
_SHA1_Applied_for_DSA/figures?lo=1
Process in each round:
4. SHA Processing (contd.)
Stage Ft
t1 Ft(B.C,D) = (B AND C) OR ((NOT B)
AND D)
t2 Ft(B.C,D) = B XOR C XOR D
t3 Ft(B.C,D) = (B AND C) OR (B AND D)
OR (C AND D)
t4 Ft(B.C,D) = B XOR C XOR D
June 12, 2019 SHA-1 Algorithm 17
Source: https://en.wikipediaorg/wiki/SHA-1
Ft at different stages:
4. SHA Processing (contd.)
June 12, 2019 SHA-1 Algorithm 18
Source: https://en.wikipediaorg/wiki/SHA-1
• Output of Ft and E are added
• Value in register A is 5 bit circular-left
shifted.
• This then added to previous sum.
• Wt is added
• Kt introduced
• B is circular-left shifted by 30 bits.
New values for next round
At each Round:
Denotes addition module 232
5. The Output
June 12, 2019 SHA-1 Algorithm 19
• The 160 bit output from the final
round is modulo added to the initial
predefined values of Ho at registers
ABCDE.
• Output obtained thus is a 160 bit
hash code.
After Final Round:
InitialvaluesofHo
atABCDE
32 bits 32 bits 32 bits 32 bits 32 bits
H(X)
160 bits
References
• https://resources.saylor.org/wwwresources/archived/site/wp-
content/uploads/2012/07/SHA-1-1.pdf
• https://www.youtube.com/watch?v=YCf80-8xhGs
• https://www.slideshare.net/karteek10/secure-hashing-algorithm
• https://slideplayer.com/slide/8199025/
• https://www.slideshare.net/VishakhaAgarwal4/secure-hash-algorithm
• https://brilliant.org/wiki/secure-hashing-algorithms/
• https://en.wikipedia.org/wiki/SHA-1
20June 12, 2019 SHA-1 Algorithm
QA session
21June 12, 2019 SHA-1 Algorithm
Thank You
22June 12, 2019 SHA-1 Algorithm

More Related Content

What's hot

Secure Hash Algorithm (SHA-512)
Secure Hash Algorithm (SHA-512)Secure Hash Algorithm (SHA-512)
Secure Hash Algorithm (SHA-512)DUET
 
What is AES? Advanced Encryption Standards
What is AES? Advanced Encryption StandardsWhat is AES? Advanced Encryption Standards
What is AES? Advanced Encryption StandardsFaisal Shahzad Khan
 
MAC-Message Authentication Codes
MAC-Message Authentication CodesMAC-Message Authentication Codes
MAC-Message Authentication CodesDarshanPatil82
 
Block cipher modes of operation
Block cipher modes of operation Block cipher modes of operation
Block cipher modes of operation harshit chavda
 
AES-Advanced Encryption Standard
AES-Advanced Encryption StandardAES-Advanced Encryption Standard
AES-Advanced Encryption StandardPrince Rachit
 
Public Key Cryptography
Public Key CryptographyPublic Key Cryptography
Public Key CryptographyGopal Sakarkar
 
Design of Secure Hash Algorithm(SHA)
Design of Secure Hash Algorithm(SHA)Design of Secure Hash Algorithm(SHA)
Design of Secure Hash Algorithm(SHA)Saravanan T.M
 
Leaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shapingLeaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shapingVimal Dewangan
 
block ciphers
block ciphersblock ciphers
block ciphersAsad Ali
 
Block Cipher and its Design Principles
Block Cipher and its Design PrinciplesBlock Cipher and its Design Principles
Block Cipher and its Design PrinciplesSHUBHA CHATURVEDI
 
Token, Pattern and Lexeme
Token, Pattern and LexemeToken, Pattern and Lexeme
Token, Pattern and LexemeA. S. M. Shafi
 

What's hot (20)

MD-5 : Algorithm
MD-5 : AlgorithmMD-5 : Algorithm
MD-5 : Algorithm
 
Secure hashing algorithm
Secure hashing algorithmSecure hashing algorithm
Secure hashing algorithm
 
Secure Hash Algorithm (SHA-512)
Secure Hash Algorithm (SHA-512)Secure Hash Algorithm (SHA-512)
Secure Hash Algorithm (SHA-512)
 
8086 memory segmentation
8086 memory segmentation8086 memory segmentation
8086 memory segmentation
 
IP Security
IP SecurityIP Security
IP Security
 
What is AES? Advanced Encryption Standards
What is AES? Advanced Encryption StandardsWhat is AES? Advanced Encryption Standards
What is AES? Advanced Encryption Standards
 
MAC-Message Authentication Codes
MAC-Message Authentication CodesMAC-Message Authentication Codes
MAC-Message Authentication Codes
 
Hash function
Hash function Hash function
Hash function
 
Block cipher modes of operation
Block cipher modes of operation Block cipher modes of operation
Block cipher modes of operation
 
AES-Advanced Encryption Standard
AES-Advanced Encryption StandardAES-Advanced Encryption Standard
AES-Advanced Encryption Standard
 
RC4&RC5
RC4&RC5RC4&RC5
RC4&RC5
 
RSA ALGORITHM
RSA ALGORITHMRSA ALGORITHM
RSA ALGORITHM
 
Public Key Cryptography
Public Key CryptographyPublic Key Cryptography
Public Key Cryptography
 
Design of Secure Hash Algorithm(SHA)
Design of Secure Hash Algorithm(SHA)Design of Secure Hash Algorithm(SHA)
Design of Secure Hash Algorithm(SHA)
 
Hash Function
Hash FunctionHash Function
Hash Function
 
Cryptographic hash function md5
Cryptographic hash function md5Cryptographic hash function md5
Cryptographic hash function md5
 
Leaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shapingLeaky Bucket & Tocken Bucket - Traffic shaping
Leaky Bucket & Tocken Bucket - Traffic shaping
 
block ciphers
block ciphersblock ciphers
block ciphers
 
Block Cipher and its Design Principles
Block Cipher and its Design PrinciplesBlock Cipher and its Design Principles
Block Cipher and its Design Principles
 
Token, Pattern and Lexeme
Token, Pattern and LexemeToken, Pattern and Lexeme
Token, Pattern and Lexeme
 

Similar to SHA 1 Algorithm

IRJET- Low Power and Simple Implementation of Secure Hashing Algorithm (SHA-2...
IRJET- Low Power and Simple Implementation of Secure Hashing Algorithm (SHA-2...IRJET- Low Power and Simple Implementation of Secure Hashing Algorithm (SHA-2...
IRJET- Low Power and Simple Implementation of Secure Hashing Algorithm (SHA-2...IRJET Journal
 
Data streaming algorithms
Data streaming algorithmsData streaming algorithms
Data streaming algorithmsHridyesh Bisht
 
A Comparative Analysis between SHA and MD5 algorithms
A Comparative Analysis between SHA and MD5 algorithms A Comparative Analysis between SHA and MD5 algorithms
A Comparative Analysis between SHA and MD5 algorithms Er Piyush Gupta IN ⊞⌘
 
Information and network security 39 secure hash algorithm
Information and network security 39 secure hash algorithmInformation and network security 39 secure hash algorithm
Information and network security 39 secure hash algorithmVaibhav Khanna
 
An Overview of the ATSC 3.0 Physical Layer Specification
An Overview of the ATSC 3.0 Physical Layer SpecificationAn Overview of the ATSC 3.0 Physical Layer Specification
An Overview of the ATSC 3.0 Physical Layer SpecificationAlwin Poulose
 
Mcs 012 computer organisation and assemly language programming- ignou assignm...
Mcs 012 computer organisation and assemly language programming- ignou assignm...Mcs 012 computer organisation and assemly language programming- ignou assignm...
Mcs 012 computer organisation and assemly language programming- ignou assignm...Dr. Loganathan R
 
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...Javed Barkatullah
 
introduction to MD5 Massage Digest Algorithm.ppt
introduction to MD5 Massage Digest Algorithm.pptintroduction to MD5 Massage Digest Algorithm.ppt
introduction to MD5 Massage Digest Algorithm.pptmadlord2
 
8 bit Microprocessor with Single Vectored Interrupt
8 bit Microprocessor with Single Vectored Interrupt8 bit Microprocessor with Single Vectored Interrupt
8 bit Microprocessor with Single Vectored InterruptHardik Manocha
 
4bit pc report[cse 08-section-b2_group-02]
4bit pc report[cse 08-section-b2_group-02]4bit pc report[cse 08-section-b2_group-02]
4bit pc report[cse 08-section-b2_group-02]shibbirtanvin
 
4bit PC report
4bit PC report4bit PC report
4bit PC reporttanvin
 
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTSPERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTSijcisjournal
 
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTSPERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTSijcisjournal
 
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTSPERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTSijcisjournal
 
FPGA DESIGN FOR H.264/AVC ENCODER
FPGA DESIGN FOR H.264/AVC ENCODERFPGA DESIGN FOR H.264/AVC ENCODER
FPGA DESIGN FOR H.264/AVC ENCODERIJCSEA Journal
 

Similar to SHA 1 Algorithm (20)

IRJET- Low Power and Simple Implementation of Secure Hashing Algorithm (SHA-2...
IRJET- Low Power and Simple Implementation of Secure Hashing Algorithm (SHA-2...IRJET- Low Power and Simple Implementation of Secure Hashing Algorithm (SHA-2...
IRJET- Low Power and Simple Implementation of Secure Hashing Algorithm (SHA-2...
 
Sha
ShaSha
Sha
 
Data streaming algorithms
Data streaming algorithmsData streaming algorithms
Data streaming algorithms
 
A Comparative Analysis between SHA and MD5 algorithms
A Comparative Analysis between SHA and MD5 algorithms A Comparative Analysis between SHA and MD5 algorithms
A Comparative Analysis between SHA and MD5 algorithms
 
SHA
SHASHA
SHA
 
Information and network security 39 secure hash algorithm
Information and network security 39 secure hash algorithmInformation and network security 39 secure hash algorithm
Information and network security 39 secure hash algorithm
 
An Overview of the ATSC 3.0 Physical Layer Specification
An Overview of the ATSC 3.0 Physical Layer SpecificationAn Overview of the ATSC 3.0 Physical Layer Specification
An Overview of the ATSC 3.0 Physical Layer Specification
 
Ch12
Ch12Ch12
Ch12
 
Mcs 012 computer organisation and assemly language programming- ignou assignm...
Mcs 012 computer organisation and assemly language programming- ignou assignm...Mcs 012 computer organisation and assemly language programming- ignou assignm...
Mcs 012 computer organisation and assemly language programming- ignou assignm...
 
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
 
introduction to MD5 Massage Digest Algorithm.ppt
introduction to MD5 Massage Digest Algorithm.pptintroduction to MD5 Massage Digest Algorithm.ppt
introduction to MD5 Massage Digest Algorithm.ppt
 
8 bit Microprocessor with Single Vectored Interrupt
8 bit Microprocessor with Single Vectored Interrupt8 bit Microprocessor with Single Vectored Interrupt
8 bit Microprocessor with Single Vectored Interrupt
 
4bit pc report[cse 08-section-b2_group-02]
4bit pc report[cse 08-section-b2_group-02]4bit pc report[cse 08-section-b2_group-02]
4bit pc report[cse 08-section-b2_group-02]
 
4bit PC report
4bit PC report4bit PC report
4bit PC report
 
80x86_2.pdf
80x86_2.pdf80x86_2.pdf
80x86_2.pdf
 
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTSPERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
 
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTSPERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
 
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTSPERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
PERFORMANCE ANALYSIS OF SHA-2 AND SHA-3 FINALISTS
 
FPGA DESIGN FOR H.264/AVC ENCODER
FPGA DESIGN FOR H.264/AVC ENCODERFPGA DESIGN FOR H.264/AVC ENCODER
FPGA DESIGN FOR H.264/AVC ENCODER
 
SHA-3
SHA-3SHA-3
SHA-3
 

Recently uploaded

PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiessarkmank1
 
Computer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesComputer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesChandrakantDivate1
 
Post office management system project ..pdf
Post office management system project ..pdfPost office management system project ..pdf
Post office management system project ..pdfKamal Acharya
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARKOUSTAV SARKAR
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXssuser89054b
 
Basic Electronics for diploma students as per technical education Kerala Syll...
Basic Electronics for diploma students as per technical education Kerala Syll...Basic Electronics for diploma students as per technical education Kerala Syll...
Basic Electronics for diploma students as per technical education Kerala Syll...ppkakm
 
Path loss model, OKUMURA Model, Hata Model
Path loss model, OKUMURA Model, Hata ModelPath loss model, OKUMURA Model, Hata Model
Path loss model, OKUMURA Model, Hata ModelDrAjayKumarYadav4
 
Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)ChandrakantDivate1
 
8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessorAshwiniTodkar4
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementDr. Deepak Mudgal
 
Electromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxElectromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxNANDHAKUMARA10
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdfKamal Acharya
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxMustafa Ahmed
 
fitting shop and tools used in fitting shop .ppt
fitting shop and tools used in fitting shop .pptfitting shop and tools used in fitting shop .ppt
fitting shop and tools used in fitting shop .pptAfnanAhmad53
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxSCMS School of Architecture
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...HenryBriggs2
 
Query optimization and processing for advanced database systems
Query optimization and processing for advanced database systemsQuery optimization and processing for advanced database systems
Query optimization and processing for advanced database systemsmeharikiros2
 
UNIT 4 PTRP final Convergence in probability.pptx
UNIT 4 PTRP final Convergence in probability.pptxUNIT 4 PTRP final Convergence in probability.pptx
UNIT 4 PTRP final Convergence in probability.pptxkalpana413121
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdfAldoGarca30
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Ramkumar k
 

Recently uploaded (20)

PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
Computer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesComputer Graphics Introduction To Curves
Computer Graphics Introduction To Curves
 
Post office management system project ..pdf
Post office management system project ..pdfPost office management system project ..pdf
Post office management system project ..pdf
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
Basic Electronics for diploma students as per technical education Kerala Syll...
Basic Electronics for diploma students as per technical education Kerala Syll...Basic Electronics for diploma students as per technical education Kerala Syll...
Basic Electronics for diploma students as per technical education Kerala Syll...
 
Path loss model, OKUMURA Model, Hata Model
Path loss model, OKUMURA Model, Hata ModelPath loss model, OKUMURA Model, Hata Model
Path loss model, OKUMURA Model, Hata Model
 
Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)
 
8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth Reinforcement
 
Electromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxElectromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptx
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptx
 
fitting shop and tools used in fitting shop .ppt
fitting shop and tools used in fitting shop .pptfitting shop and tools used in fitting shop .ppt
fitting shop and tools used in fitting shop .ppt
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
 
Query optimization and processing for advanced database systems
Query optimization and processing for advanced database systemsQuery optimization and processing for advanced database systems
Query optimization and processing for advanced database systems
 
UNIT 4 PTRP final Convergence in probability.pptx
UNIT 4 PTRP final Convergence in probability.pptxUNIT 4 PTRP final Convergence in probability.pptx
UNIT 4 PTRP final Convergence in probability.pptx
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)
 

SHA 1 Algorithm

  • 1. Message Digest Algorithm : SHA-1 Shiva Ram Dam MSc Information System Engineering June 12, 2019 Pokhara University Nepal
  • 2. Introduction • SHA1: Secure Hash Algorithm 1 • Designed by the United States National Security Agency • Produces hash value known as Message Digest 2June 12, 2019 SHA-1 Algorithm
  • 3. Salient Features • Works for any input message that is less than 264 bits • produces160 bits length message digest • Infeasible to retain the original message from the message digest • Same message digest to be produced from both sender and receiver • Purpose: Authentication , not Encryption • widely used in security applications and protocols, including TLS, SSL, PGP, SSH, IPSec and S/MIME 3June 12, 2019 SHA-1 Algorithm
  • 4. Message-Hashcode Example abc Abc 4June 12, 2019 SHA-1 Algorithm a9993e36-4706816a-ba3e2571- 7850c26c-9cd0d89d 915858af-a2278f25-527f1920- 38108346-164b47f2 SHA
  • 5. Abstract view of SHA • Input to the SHA can be of arbitrary length. • Produces fixed length output (i.e. 160 bits length) June 12, 2019 SHA-1 Algorithm 5 SHA 1 Arbitrary Length H(X) 160 bits X
  • 6. Steps: 1. Append padding bits 2. Append Length 3. Initialize hash bufffer 4. SHA processing 5. Output June 12, 2019 SHA-1 Algorithm 6 Padding X (X1, X2, ….Xn) Compression Function 512 bits 160 bits H(X) 160 bits
  • 7. 1. Padding Process of adding extra bits (i.e. 0 followed after a 1) June 12, 2019 SHA-1 Algorithm 7 Padding X (X1, X2, ….Xn) Compression Function 512 bits 160 bits H(X) 160 bits Fig: Padding of string "abc" in bits
  • 8. 2. Appending length • After padding, length of the message is represented in 24 bit • In total, the string is a multiple of 512 bits. June 12, 2019 SHA-1 Algorithm 8 Padding X (X1, X2, ….Xn) Compression Function 512 bits 160 bits H(X) 160 bits Fig: Padding of string "abc" in bits, finalized by the length of the string, which is 24 bits
  • 9. • This 512 bits input to the compression function • The message divided into 16 words. • Each word consists of 32 bits. • 512/32 =16 words June 12, 2019 SHA-1 Algorithm 9 Padding X (X1, X2, ….Xn) Compression Function 512 bits 160 bits H(X) 160 bits
  • 10. 3. Initialize hash buffer Initial values of Ho are predefined and stored in registers ABCDE These initial values are used in Round 0. June 12, 2019 SHA-1 Algorithm 10 H Hex values Ho(A) 01234567 Ho(B) 89ABCDEF Ho(C) FEDCBA98 Ho(D) 76543210 Ho(E) C3D2E1F0 Source: https://www.researchgate.net/publication/238180532_An_Architecture_for_a _SHA1_Applied_for_DSA/figures?lo=1 CF
  • 11. 4. SHA Processing SHA1 has 80 rounds defined. The Message Scheduler Algorithm schedules each word to rounds as: • W0 Round 0 • W1 Round 1 …… • W15 Round 15 • W16 Round 16 ….. • W79 Round 79 June 12, 2019 SHA-1 Algorithm 11 Wt is calculatedSource: https://www.researchgate.net/publication/238180532_An_Architecture_for_a _SHA1_Applied_for_DSA/figures?lo=1 Word assigning to rounds:
  • 12. 4. SHA Processing (contd.) June 12, 2019 SHA-1 Algorithm 12 Source: https://www.researchgate.net/publication/238180532_An_Architecture_for_a _SHA1_Applied_for_DSA/figures?lo=1 Word assigning to round 0:
  • 13. 4. SHA Processing (contd.) June 12, 2019 SHA-1 Algorithm 13 Source: https://www.researchgate.net/publication/238180532_An_Architecture_for_a _SHA1_Applied_for_DSA/figures?lo=1 Word assigning to other rounds: For others (i.e round 16- 79) W[t] = S1(w[t-16] XOR W[t-14] XOR W[t-8] XOR W[t-3]) For example: when round is 16, • W[16] = S1(w[16-16] XOR W[16-14] XOR W[16-8] XOR W[16-3]) • Here W0, W2, W8 and W13 are XORed. • The output is the new word for round 16.
  • 14. 4. SHA Processing (contd.) Stages Round t=1 0 to 19 t=2 20 to 39 t=3 40 to 59 t=4 60 to 79 June 12, 2019 SHA-1 Algorithm 14 Each stage has 20 rounds. Source: https://www.researchgate.net/publication/238180532_An_Architecture_for_a _SHA1_Applied_for_DSA/figures?lo=1 Division of stages:
  • 15. 4. SHA Processing (contd.) At each stage: June 12, 2019 SHA-1 Algorithm 15 Stage Predefined value of k t1 K1=0X5A827999 t2 K2= 0X6ED9EBA1 t3 K3=0X8F1BBCDC t4 K4=0XCA62C1D6 Source: https://www.researchgate.net/publication/238180532_An_Architecture_for_a _SHA1_Applied_for_DSA/figures?lo=1 Constant values:
  • 16. 4. SHA Processing (contd.) Each round takes 3 inputs: • 32 bit word form 512 bit block (i.e.Wt) • The values from register ABCDE • Constant Kt June 12, 2019 SHA-1 Algorithm 16 Source: https://www.researchgate.net/publication/238180532_An_Architecture_for_a _SHA1_Applied_for_DSA/figures?lo=1 Process in each round:
  • 17. 4. SHA Processing (contd.) Stage Ft t1 Ft(B.C,D) = (B AND C) OR ((NOT B) AND D) t2 Ft(B.C,D) = B XOR C XOR D t3 Ft(B.C,D) = (B AND C) OR (B AND D) OR (C AND D) t4 Ft(B.C,D) = B XOR C XOR D June 12, 2019 SHA-1 Algorithm 17 Source: https://en.wikipediaorg/wiki/SHA-1 Ft at different stages:
  • 18. 4. SHA Processing (contd.) June 12, 2019 SHA-1 Algorithm 18 Source: https://en.wikipediaorg/wiki/SHA-1 • Output of Ft and E are added • Value in register A is 5 bit circular-left shifted. • This then added to previous sum. • Wt is added • Kt introduced • B is circular-left shifted by 30 bits. New values for next round At each Round: Denotes addition module 232
  • 19. 5. The Output June 12, 2019 SHA-1 Algorithm 19 • The 160 bit output from the final round is modulo added to the initial predefined values of Ho at registers ABCDE. • Output obtained thus is a 160 bit hash code. After Final Round: InitialvaluesofHo atABCDE 32 bits 32 bits 32 bits 32 bits 32 bits H(X) 160 bits
  • 20. References • https://resources.saylor.org/wwwresources/archived/site/wp- content/uploads/2012/07/SHA-1-1.pdf • https://www.youtube.com/watch?v=YCf80-8xhGs • https://www.slideshare.net/karteek10/secure-hashing-algorithm • https://slideplayer.com/slide/8199025/ • https://www.slideshare.net/VishakhaAgarwal4/secure-hash-algorithm • https://brilliant.org/wiki/secure-hashing-algorithms/ • https://en.wikipedia.org/wiki/SHA-1 20June 12, 2019 SHA-1 Algorithm
  • 21. QA session 21June 12, 2019 SHA-1 Algorithm
  • 22. Thank You 22June 12, 2019 SHA-1 Algorithm