#!/usr/bin/perl -w push(@c,int(rand(5)))for(1..3); sub ed{ @o=split"",shift; ($d,$e)=@_; for(0..$#o){ $k=$c[$_%@c]; $e.=chr(ord($o[$_])+($d?$k:-$k)); } return$e; } $message = "Hello, how are you?"; $encoded = ed("$message", 1); $decoded = ed("$encoded", 0); print "$message\n"; print "$encoded\n"; print "$decoded\n";