#! /usr/bin/perl -w use diagnostics; use strict; use Getopt::Std; use Crypt::CBC; my %opts; getopt( 'kio', \%opts ); my $cipher = Crypt::CBC->new({ key => $opts{"k"}, cipher => 'Skipjack', }); my $INFILE = $opts{"i"}; my $OUTFILE = $opts{"o"}; open my $in, "<", $INFILE or die "can't open $INFILE: $!"; open my $out, ">", $OUTFILE or die "can't open $OUTFILE: $!"; local $/=undef; my $plaintext = (<$in>); my $ciphertext = $cipher->encrypt($plaintext); print {$out} $ciphertext; close $out; close $in;