Blowfish Cipher Tutorials - Herong's Tutorial Examples
∟OpenSSL "enc -bf-ofb" for Blowfish/OFB Encryption
Tutorial notes and example codes are provided OpenSSL 'enc -bf-ofb' command for Blowfish encryption in OFB mode. Topics include introduction of OFB (Output FeedBack) cipher operation mode; Literal Key options to specify secret key and IV directly; Salted Key and Random Salt options to specify secret key and IV indirectly; Prepended cipher headers; PKCS#5 standard padding.
These sections are omitted from this Web preview version. To view the full content,
see information on how to obtain the full version this book.
"bf-ofb" Cipher with Literal Key
"bf-ofb" Cipher on Multiple Blocks
"bf-ofb" Encryption Verification
"bf-ofb" 2-Block Test Vectors
"bf-ofb" Cipher with Salted Key
"bf-ofb" Cipher with Random Salt
"enc -bf-ofb" Command Summary
Takeaways:
- OpenSSL is a generic cryptography toolkit library with a command line interface.
- OpenSSL is easy to install if you download the Windows binary package.
- OpenSSL uses a single command "enc" with a standard set
of options to encrypt and decrypt files with different block cipher algorithms.
- OpenSSL supports Blowfish cipher algorithm in 4 operation modes:
ECB, CBC, CFB and OFB.
- OpenSSL supports 3 ways to control the secret key and the IV:
Literal Key, Salted Key and Random Salt.
- OpenSSL uses MD5 hash function to derive the secret key and the IV
from a given passphrase and a given salt or random salt.
- OpenSSL prepend the salt value in the ciphertext with header blocks,
if salt is used. So no need to pass the salt to the receiver separately.
- OpenSSL supports the standard PKCS#5 padding algorithm
- OFB (Output FeedBack) operation mode does not encrypt the plaintext block directly.
It encrypts the IV block recursively. The encryption output at each iteration
is XORed with the plaintext block to give the ciphertext.
- Test vectors of Blowfish OFB operation mode with 2-block plaintext are provided.
Table of Contents
About This Book
Blowfish Cipher Algorithm
Perl Crypt::Blowfish Module
Perl Crypt::ECB Perl Module
Perl Crypt::CBC Module
Perl Crypt::CFB Perl Module
OpenSSL "enc -bf-ecb" for Blowfish/ECB Encryption
OpenSSL "enc -bf-cbc" for Blowfish/CBC Encryption
OpenSSL "enc -bf-cfb" for Blowfish/CFB Encryption
►OpenSSL "enc -bf-ofb" for Blowfish/OFB Encryption
PHP Mcrypt Extension for Blowfish
Blowfish 8-Bit Cipher in PHP
References
Full Version in PDF/EPUB