#!/usr/bin/perl use strict; use warnings; use Crypt::Rijndael; use Crypt::CBC; #-------------------------------------------------------------------- # Parameters #-------------------------------------------------------------------- my $my_key; my $plain_text; my $encrypted = $ARGV[0]; my $cipher; my $buffer; my $decrypted = $encrypted; $decrypted =~ s/\.enc/\.txt/; $my_key = `openssl enc -bf-cbc -d -in key_file.txt -k encrypt`; $cipher = Crypt::CBC->new( {'key' => $my_key, 'cipher' => 'Rijndael', 'regenerate_key' => 1, 'padding' => 'standard', }); #-------------------------------------------------------------------- # Decryption #-------------------------------------------------------------------- open(FH_encrypted, "<$encrypted"); open(FH_decrypted, ">$decrypted"); $cipher->start('decrypting'); while (read(FH_encrypted,$buffer,1851)) { print FH_decrypted $cipher->crypt($buffer); } print FH_decrypted $cipher->finish; close FH_encrypted; close FH_decrypted;