blowfish algorithm n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Blowfish Algorithm PowerPoint Presentation
Download Presentation
Blowfish Algorithm

Loading in 2 Seconds...

play fullscreen
1 / 11

Blowfish Algorithm - PowerPoint PPT Presentation


  • 1262 Views
  • Uploaded on

Blowfish Algorithm. The Blowfish Encryption Algorithm. Keyed, symmetric block cipher Designed in 1993 . C an be used as a drop-in replacement for DES . The Blowfish Encryption Algorith m (cont.). As a fast, free alternative to existing encryption algorithms. Variable-length key.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Blowfish Algorithm' - rosine


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
the blowfish encryption algorithm
The Blowfish Encryption Algorithm
  • Keyed, symmetric block cipher
  • Designed in 1993 .
  • Can be used as a drop-in replacement for DES.
the blowfish encryption algorith m cont
The Blowfish Encryption Algorithm (cont.)
  • As a fast, free alternative to existing encryption algorithms.
  • Variable-length key.
  • From 32 bits to 448 bits.
the blowfish encryption algorith m cont1
The Blowfish Encryption Algorithm (cont.)
  • Analyzed considerably
  • Gained acceptance as a strong encryption algorithm.
  • Blowfish is unpatented and license-free, and is available free for all uses.
  • No effective cryptanalysis has been found to date.
  • More attention is now given to block ciphers with a larger block size, such as AES or Twofish.
the blowfish a lgorithm
The Blowfish Algorithm
  • Two parts:
    • Expansion of the key.
    • Encryption of the data.
  • Expansion of the key:
    • Break the original key into a set of subkeys.
    • Key of no more than 448 bits is separated into 4168 bytes.
    • P-array and four 32-bit S-boxes.
    • P-array contains 18 32-bit subkeys.
    • Each S-box contains 256 entries.
the blowfish a lgorith m key expansion cont
The Blowfish Algorithm: Key Expansion (cont)
  • The encryption of the data:
    • 64-bit input is denoted with an x
    • P-array is denoted with a Pi (where i is the iteration).
  • 64-bit block size
  • Key length - 32 bits to 448 bits (32-448 bits in steps of 8 bits; default 128 bits).
  • 16-round Feistel cipher
  • Large key-dependent S-boxes.
the blowfish a lgorith m key expansion cont1
The Blowfish Algorithm: Key Expansion (cont)
  • Each line - 32 bits.
  • Algorithm keeps two sub-key arrays:
    • The 18-entry P-array
    • Four 256-entry S-boxes.
  • S-boxes accept 8-bit input
  • Produce 32-bit output.
  • One entry of P-array is used every round.
  • After final round, each half of data block is XORed with one of the two remaining unused P-entries.
the blowfish a lgorith m key expansion cont2
The Blowfish Algorithm: Key Expansion (cont)
  • Initialize the P-array and S-boxes
  • XOR subkey with plaintext.
    • (example) P1 XOR (first 32 bits of key), P2 XOR (second 32 bits of key), ...
  • New output of XL is apply to function .
  • Output of function is XOR with XR bits
  • Then perform swap operation.
  • Repeat 16 times.
the blowfish a lgorith m encryption cont
The Blowfish Algorithm: Encryption (cont)

Diagram of Blowfish's F function

the blowfish a lgorith m encryption cont1
The Blowfish Algorithm: Encryption (cont)
  • Blowfish's F-function.
  • Splits the 32-bit input into four eight-bit quarters, and uses the quarters as input to the S-boxes.
  • Outputs are added modulo 232 and XORed to produce the final 32-bit output.
  • Blowfish is a Feistel network, it can be inverted simply by XORing P17 and P18 to the ciphertext block, then using the P-entries in reverse order.