0% found this document useful (0 votes)
98 views18 pages

Design and Implementation of RIPEMD-160 Hash Function

This document discusses the design and implementation of the RIPEMD-160 hash function algorithm using reconfigurable hardware. It begins with an introduction to cryptography and hash functions. It then outlines the objectives of designing and implementing RIPEMD-160 using Verilog HDL to improve performance in terms of frequency, power and area requirements. The methodology section discusses the overall flowchart, software used, and steps to design RIPEMD-160 including initializing values, processing messages in 16-bit blocks through 5 different functions, and producing a 160-bit output digest.

Uploaded by

Florist Sca
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
98 views18 pages

Design and Implementation of RIPEMD-160 Hash Function

This document discusses the design and implementation of the RIPEMD-160 hash function algorithm using reconfigurable hardware. It begins with an introduction to cryptography and hash functions. It then outlines the objectives of designing and implementing RIPEMD-160 using Verilog HDL to improve performance in terms of frequency, power and area requirements. The methodology section discusses the overall flowchart, software used, and steps to design RIPEMD-160 including initializing values, processing messages in 16-bit blocks through 5 different functions, and producing a 160-bit output digest.

Uploaded by

Florist Sca
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 18

Design and Implementation of RIPEMD-

160 Algorithm Reconfigurable Hardware


Contents

1. Introduction

2. Literature Review

3. Methodology
Introduction

• Cryptography is the scientific field that offered security


over internet.
• A simple mathematic function that transforms a set of
number to another.
• Can be conducted by a wide range of application offering
security requirements.
• Used in applications that has to do with transactions.
• Example : hash function
Problems Statements

• Information security is important because it involves


privacy to all users.

• Nowadays, there are many security issues involving


hacking and stealing information from internet.
Solutions

• Cryptographic algorithms “Hash Function”

• Help users to encrypt the information securely in a way


that no third party can read it except the intended
recipient.
Objectives

• To design and implement RIPEMD-160 hash function


algorithm using Verilog HDL.

• To analyze the cryptographic algorithm.

• To improve the performance of RIPEMD-160 hash


function in terms of frequency, power and area
requirements.
Scope of Project

• Design RIPEMD-160 hash function using CAD Tool


(Altera Quartus II)

• Simulated using ModelSim

• A design of iterative RIPEMD-160


Literature Review

• RIPEMD-160 was created to make a stronger hash


algorithm and secured compared to existing algorithm
such as MD4, MD5 and RIPEMD (Y. K. Lee, M. Knezevic
and I. Verbauwhede, 2010)

• According to (B. Preneel, H. Dobbertin and A. Bosselaers,


pp. 9-14, 1997) RIPEMD-160 was intended to provide
long term security (10 years or more) with a 160-bit
results.
RIPEMD-160

• RACE Integrity Primitives Evaluation Message Digest -


160

• Design by Dobbertin, Bossalears and Preneel (1996)

• Used in banking operations

• two methods : iterative and pipelined


Features: Ripemd-160 Algorithm:

• 2 parallel iterations • 5 initial input (H0-H4)


• 5 transformations round • 5 non-linear functions
• 16 hash operations • 10 constants
• Produces 160-bit • Message value
messages • Shift value
Methodology
tt
Software used:
Overall Flowchart for designing
the RIPEMD-160

No

Yes
1. Append The message is padded to
padding 512-bit blocks.
• The message digest bits
produced output.
• output begins with low
significant bits and end
with high significnat bit.
Steps to
4. 2. Initialize • 5 initial inputs
design
Produces RIPEMD- • 10 constants
RIPEMD-
output 160 Buffer • message value
160
• shift value

5 different function:
• x XOR y XOR z 3. Process
message
• (x AND y) OR (NOT x AND z)
in 16-bit
• (x OR NOT y) XOR z blocks
• (x AND z) OR (y AND NOT z)
• x XOR (y OR NOT z)
RIPEMD-160 Top Level
Single Ripemd-160 block operation
Thank You

You might also like