*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> blf_enc (3)              
Title
Content
Arch
Section
 

BLOWFISH(3)

Contents


NAME    [Toc]    [Back]

     blf_key, blf_enc, blf_dec - Blowfish encryption

SYNOPSIS    [Toc]    [Back]

     #include <blf.h>

     void
     blf_key(blf_ctx  *state,  const  u_int8_t  *key,   u_int16_t
keylen);

     void
     blf_enc(blf_ctx *state, u_int32_t *data, u_int16_t datalen);

     void
     blf_dec(blf_ctx *state, u_int32_t *data, u_int16_t datalen);

     void
     blf_ecb_encrypt(blf_ctx  *state,  u_int8_t  *data, u_int32_t
datalen);

     void
     blf_ecb_decrypt(blf_ctx *state,  u_int8_t  *data,  u_int32_t
datalen);

     void
     blf_cbc_encrypt(blf_ctx   *state,   u_int8_t  *iv,  u_int8_t
*data,
             u_int32_t datalen);

     void
     blf_cbc_decrypt(blf_ctx  *state,  u_int8_t   *iv,   u_int8_t
*data,
             u_int32_t datalen);

DESCRIPTION    [Toc]    [Back]

     Blowfish is a fast unpatented block cipher designed by Bruce
Schneier.
     It basically consists of a 16 times  iterated  Feistel  network.  The block
     size is 64 bit and the maximum key size is 448 bit.

     The  blf_key()  function  initializes the 4 8bit S-boxes and
the 18 Subkeys
     with the hexadecimal digits of Pi.  The key is used for further randomization.
  The first argument to blf_enc() is the initialized
state derived
 from blf_key().  The stream of  32-bit  words  is  encrypted in Electronic
  Codebook  Mode  (ECB)  and  datalen  must  be  even.
blf_dec() is used
     for decrypting Blowfish encrypted blocks.

     The functions blf_ecb_encrypt()  and  blf_ecb_decrypt()  are
used for encrypting
  and  decrypting  octet  streams  in ECB mode.  The
functions
     blf_cbc_encrypt() and blf_cbc_decrypt()  are  used  for  encrypting and decrypting
 octet streams in Cipherblock Chaining Mode (CBC).

     The functions Blowfish_initstate(), Blowfish_expand0state(),
     Blowfish_expandstate(),       Blowfish_encipher()        and
Blowfish_decipher() are
     used for customization of the Blowfish cipher, e.g., for the
blowfish
     password hashing function.

SEE ALSO    [Toc]    [Back]

      
      
     passwd(1), crypt(3), passwd(5)

AUTHORS    [Toc]    [Back]

     Niels Provos <[email protected]>

OpenBSD     3.6                        February     13,      1997
[ Back ]
 Similar pages
Name OS Title
des_is_weak_key Tru64 Data Encryption Standard (DES) encryption library routines (Auth)
des_key_sched Tru64 Data Encryption Standard (DES) encryption library routines (Auth)
des_quad_cksum Tru64 Data Encryption Standard (DES) encryption library routines (Auth)
des_crypt Tru64 Data Encryption Standard (DES) encryption library routines (Auth)
des_string_to_key Tru64 Data Encryption Standard (DES) encryption library routines (Auth)
des_cfb_encrypt OpenBSD DES encryption
des_3cbc_encrypt OpenBSD (non USA) DES encryption
des_ecb2_encrypt OpenBSD DES encryption
des_crypt OpenBSD DES encryption
des_cipher OpenBSD DES encryption
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service