- NAME
- SYNOPSIS
- DESCRIPTION
- RETURN VALUES
- NOTE
- SEE ALSO
- COPYRIGHT

# NAME

BF_set_key, BF_encrypt, BF_decrypt, BF_ecb_encrypt, BF_cbc_encrypt, BF_cfb64_encrypt, BF_ofb64_encrypt, BF_options - Blowfish encryption

# SYNOPSIS

     #include <openssl/blowfish.h>

     void BF_set_key(BF_KEY *key, int len, const unsigned char *data);

     void BF_ecb_encrypt(const unsigned char *in, unsigned char *out,
             BF_KEY *key, int enc);
     void BF_cbc_encrypt(const unsigned char *in, unsigned char *out,
             long length, BF_KEY *schedule, unsigned char *ivec, int enc);
     void BF_cfb64_encrypt(const unsigned char *in, unsigned char *out,
             long length, BF_KEY *schedule, unsigned char *ivec, int *num,
             int enc);
     void BF_ofb64_encrypt(const unsigned char *in, unsigned char *out,
             long length, BF_KEY *schedule, unsigned char *ivec, int *num);
     const char *BF_options(void);

     void BF_encrypt(BF_LONG *data, const BF_KEY *key);
     void BF_decrypt(BF_LONG *data, const BF_KEY *key);

# DESCRIPTION

This library implements the Blowfish cipher, which was invented and described by Counterpane (see http://www.counterpane.com/blowfish.html ).

Blowfish is a block cipher that operates on 64 bit (8 byte) blocks of data. It uses a variable size key, but typically, 128 bit (16 byte) keys are considered good for strong encryption. Blowfish can be used in the same modes as DES (see RETURN VALUES

None of the functions presented here return any value.

# NOTE

Applications should use the higher level functions SEE ALSO

des_modes(7)

# COPYRIGHT

Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved.

Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at https://www.openssl.org/source/license.html.