in reply to Blowfish Encryption problem

I think your main problem might be that you aren't using the Crypt::CBC module. Here is an example program which encrypts and decrypts a file using Blowfish:

#!/usr/bin/perl use strict; use warnings; use Crypt::CBC; run(); sub run { my $cipher = Crypt::CBC->new( {'key' => 'my secret key +', 'cipher' => 'Blowfish', 'iv' => '$KJh#(}q', 'regenerate_key' => 0, # default + true 'padding' => 'space', 'prepend_iv' => 0, 'pcbc' => 1 #default 0 }); encrypt_and_decrypt_strings($cipher); encrypt_file($cipher); decrypt_file($cipher); } sub encrypt_and_decrypt_strings { my $cipher = shift; # encrypt and decrypt strings my $ciphertext = $cipher->encrypt("This data is hush hush"); my $plaintext = $cipher->decrypt($ciphertext); print("decrypted plaintext = $plaintext\n"); } sub encrypt_file { my $cipher = shift; print "encrypting file...\n"; my $plain_file = "BIG_FILE"; my $enc_file = "BIG_FILE.encrypted"; open OUTFILE, ">$enc_file" or die "can't open $enc_file: $!"; my $buffer; $cipher->start('encrypting'); open(F,"$plain_file") or die "can't open $plain_file: $!"; while (read(F, $buffer, 1024)) { print OUTFILE $cipher->crypt($buffer); } print OUTFILE $cipher->finish; close F; close OUTFILE; print "finished encrypting file\n"; } sub decrypt_file { my $cipher = shift; print "decrypting file...\n"; my $enc_file = "BIG_FILE.encrypted"; open INFILE, "<$enc_file" or die "can't open $enc_file: $!"; my $dec_file = "BIG_FILE.decrypted"; open DECFILE, ">$dec_file" or die "can't open $dec_file: $!"; $cipher->start('decrypting'); my $buffer; while (read(INFILE, $buffer, 1024)) { print DECFILE $cipher->crypt($buffer); } print DECFILE $cipher->finish; close DECFILE; close INFILE; print "finished decrypting file\n"; } __END__