#!/usr/bin/perl -w # pgp_test.pl use strict; use IPC::Open3; my $encrypt_opts = '+force +batchmode +verbose=1 -fea'; my $decrypt_opts = '+force +batchmode +verbose=1 -f'; my $key = shift || 'zzSPECTREz'; my $passphrase = shift || '###MYSECRET KEY##'; sub encrypt () { my ($user_key, $text) = @_; my $pid = open3(\*PGPIN,\*PGPOUT,\*PGPERR,"pgp $encrypt_opts $user_key"); print PGPIN $text; close (PGPIN); my $output = join ('',); return $output; } sub decrypt () { my ($text) = @_; my $pid = open3(\*PGPIN,\*PGPOUT,\*PGPERR,"pgp $decrypt_opts -z '$passphrase'"); print PGPIN $text; close(PGPIN); my $output = join ('',); return $output; } print "\nTEST PGP\n\n"; print "ENTER TEXT TO ENCRYPT: "; my $data = ; my $enc_data = &encrypt ($key,$data); print "\nDATA ENCRYPTED:\n$enc_data\n\n"; my $dec_data = &decrypt ($enc_data); print "DATA DECRYPTED:\n$dec_data\n\n";