TERM
PAPER
ON
“Blowfish Encryption Algorithm“BLOWFISH ENCRYPTION ALGORITHM”
WRITTEN BY
NDIFON, PATRICK MANYOR
10/50050
COMPUTER SCIENCE
UNIVERSITY OF CALABAR
SUBMITTED TO
DR. F.U. OGBAN
COURSE LECTURER
IN PARTIAL FUFILMENT OF THE COURSE REQUIREMENT
CSC4211
SEPTEMBER 2014
TABLE OF
CContentsONTENTS
1. Introduction
2. Origin/Founder
3. Algorithm/Data Structures
4. Category/Performance:
5. Pseudocode
6. Implementation: C++, Java
7. Compare: Associated algorithm
8. Summarize
9. Conclusion
10. References
BLOWFISH ENCRYPTION ALGORITHM
General
Designers
Bruce Schneier
First published
1993
Successors
Twofish
Cipher detail
Key sizes
32–448 bits
Block sizes
64 bits
Structure
Feistel network
Rounds
16
Best public cryptanalysis
Four rounds of Blowfish are susceptible to a second-order differential attack (Rijmen, 1997);[1] for a class of weak keys, 14 rounds of Blowfish can be distinguished from a pseudorandom permutation (Vaudenay, 1996).
1. INTRODUCTION
The need for information security has resulted in many Encryption algorithms being developed. This term paper is aimed at analyzing one of those algorithms; the ‘Blowfish Encryption Algorithm’. What is an algorithm? One might ask. What is encryption? Before we can fully understand the ‘Blowfish Encryption Algorithm’, we must first understand briefly what ‘algorithm’ and ‘encryption’ mean.
a.) DEFINITION OF SOME BASIC TERMS “To make a computer do anything, you have to write a computer program. To write a computer program, you have to tell the computer, step by step, exactly what you want it to do. The computer then “executes” the program, following each step mechanically, to accomplish the end goal. When you are telling the computer what to do, you also get to choose how it’s going to do it. That’s where computer algorithms come in. The algorithm is the basic technique used to get the job done.”1
“In mathematics and computer science, an algorithm is a step-by-step procedure for calculations.
References: Four rounds of Blowfish are susceptible to a second-order differential attack (Rijmen, 1997);[1] for a class of weak keys, 14 rounds of Blowfish can be distinguished from a pseudorandom permutation (Vaudenay, 1996).