NAME
setupBFstate, bfCBCencrypt, bfCBCdecrypt, bfECBencrypt, bfECBdecrypt
– blowfish encryption |
SYNOPSIS
#include <u.h> #include <libc.h> #include <mp.h> #include <libsec.h> void setupBFstate(BFstate *s, uchar key[], int keybytes, uchar *ivec) void bfCBCencrypt(uchar *data, int len, BFstate *s) void bfCBCdecrypt(uchar *data, int len, BFstate *s) void bfECBencrypt(uchar *data, int len, BFstate *s)
void bfECBdecrypt(uchar *data, int len, BFstate *s) |
DESCRIPTION
Blowfish is Bruce Schneier's symmetric block cipher. It supports
variable length keys from 32 to 448 bits and has a block size
of 64 bits. Both CBC and ECB modes are supported.
setupBFstate takes a BFstate structure, a key of at most 56 bytes,
the length of the key in bytes, and an initialization vector of
8 bytes (set to all zeroes if argument is nil). The encryption
and decryption functions take a BFstate structure, a data buffer,
and a length, which must be a multiple of eight bytes as padding
is
currently unsupported. |
SOURCE
/sys/src/libsec |
SEE ALSO
mp(2), aes(2), des(2), dsa(2), elgamal(2), rc4(2), rsa(2), sechash(2),
prime(2), rand(2) |