Blow Fish Encryption Algorithm - PowerPoint PPT Presentation

1 / 7
About This Presentation
Title:

Blow Fish Encryption Algorithm

Description:

... and license free and available free to all users. ... This benefit has contributed to its popularity in cryptographic software. References. Front page photo: ... – PowerPoint PPT presentation

Number of Views:296
Avg rating:3.0/5.0
Slides: 8
Provided by: xav852
Category:

less

Transcript and Presenter's Notes

Title: Blow Fish Encryption Algorithm


1
Blow Fish Encryption Algorithm
2
Blow Fish Encryption
  • Blowfish is a symmetric block cipher that can be
    used as a drop-in replacement for DES or IDEA. It
    takes a variable-length key, from 32 bits to 448
    bits, making it ideal for both domestic and
    exportable use. Blowfish was designed in 1993 by
    Bruce Schneier as a fast, free alternative to
    existing encryption algorithms. It is also
    unpatented and license free and available free to
    all users.

3
Blow Fish in Practice
  • Blowfish is a fast block cipher, except when
    changing keys. Each new key requires
    pre-processing equivalent to encrypting about 4
    kilobytes of text, which is very slow compared to
    other block ciphers. This prevents its use in
    certain applications, but is not a problem in
    others. In one application, it is actually a
    benefit the password-hashing method used in
    OpenBSD uses an algorithm derived from Blowfish
    that makes use of the slow key schedule the idea
    is that the extra computational effort required
    gives protection against dictionary attacks.

4
How Blow Fish Works
  • Blowfish has 16 rounds. Each round consists of a
    key-dependent permutation, and a key- and
    data-dependent substitution. All operations are
    XORs and additions on 32-bit words. The only
    additional operations are four indexed array data
    lookups per round.
  • Subkeys
  • Blowfish uses a large number of subkeys. These
    keys must be precomputed before any data
    encryption or decryption. The P-array consists of
    18 32-bit subkeys P1, P2,..., P18. There are
    also four 32-bit S-boxes with 256 entries each
    S1,0, S1,1,..., S1,255 S2,0, S2,1,..,, S2,255
    S3,0, S3,1,..., S3,255 S4,0, S4,1,..,, S4,255.
  • Encryption and Decryption
  • Blowfish has 16 rounds. The input is a 64-bit
    data element, x. Divide x into two 32-bit halves
    xL, xR. Then, for i 1 to 16
  • xL xL XOR PixR F(xL) XOR xRSwap xL and xR

5
How Blow Fish Works Contd
  • After the sixteenth round, swap xL and xR again
    to undo the last swap. Then, xR xR XOR P17 and
    xL xL XOR P18. Finally, recombine xL and xR to
    get the ciphertext.
  • Function F looks like this Divide xL into four
    eight-bit quarters a, b, c, and d. Then, F(xL)
    ((S1,a S2,b mod 232) XOR S3,c) S4,d mod 232.
  • Decryption is exactly the same as encryption,
    except that P1, P2,..., P18 are used in the
    reverse order.

6
Blow Fish Hardware Requirements
  • Blowfish has a memory footprint of just over 4
    kilobytes of RAM. This constraint is not a
    problem even for older desktop and laptop
    computers, though it does prevent use in the
    smallest embedded systems such as early
    smartcards.
  • Blowfish was one of the first secure block
    ciphers not subject to any patents and therefore
    freely available for anyone to use. This benefit
    has contributed to its popularity in
    cryptographic software.

7
References
  • Front page photo
  • http//actualdownload.com/pictures/icon/encryption
    -shield-57903.jpg
  • http//www.schneier.com/blowfish.html
  • Wikipedia
  • http//en.wikipedia.org/wiki/Blowfish_(cipher)
  • How Blow Fish Works
  • http//www.schneier.com/paper-blowfish-oneyear.htm
    l
Write a Comment
User Comments (0)
About PowerShow.com