blowfish(3tcl) 1.0.3 blowfish "Blowfish Block Cipher"

Name

blowfish - Implementation of the Blowfish block cipher

Table Of Contents

Synopsis

Description

This package is an implementation in Tcl of the Blowfish algorithm developed by Bruce Schneier [1]. Blowfish is a 64-bit block cipher designed to operate quickly on 32 bit architectures and accepting a variable key length. This implementation supports ECB and CBC mode blowfish encryption.

COMMANDS

::blowfish::blowfish ?-mode [ecb|cbc]? ?-dir [encrypt|decrypt]? -key keydata ?-iv vector? ?-out channel? ?-chunksize size? ?-pad padchar? [ -in channel | ?--? data ]

Perform the blowfish algorithm on either the data provided by the argument or on the data read from the -in channel. If an -out channel is given then the result will be written to this channel.

The -key option must be given. This parameter takes a binary string of variable length and is used to generate the blowfish key schedule. You should be aware that creating a key schedule is quite an expensive operation in blowfish so it is worth reusing the key where possible. See Reset.

The -mode and -dir options are optional and default to cbc m