Don Quigley wrote:
: 
: my @pad = (some large array of numbers);
: my @b = unpack("C*",$password);
: my $i = 0;
: my @c;
: foreach my $letterval (@b) {
:     $letterval = $letterval + $pad[$i];
:     $c[$i] = $letterval;
:     $i++;
: }
: my $obfuscated_password = join " ",@c;
: 
: and then to "decrypt" it:
: 
: my @c = split(/\s+/,$_);
: my @d;
: foreach $padval (@c) {
:     $padval = $padval - $pad[$i];
:     $d[$i] = $padval;
:     $i++;
: }
: $password = pack("C*",@d);


    That can be simplified a bit.

BEGIN {

    my @pad = (some large list of numbers);

    sub encrypt {
        my @c = unpack 'C*', $_[0];
        return join ' ', map $c[$_] += $pad[$_], 0 .. $#c;
    }

    sub decrypt {
        my @c = split ' ', $_[0];
        return pack 'C*', map $c[$_] -= $pad[$_], 0 .. $#c;
    }
}


HTH,

Charles K. Clarkson
-- 
Mobile Homes Specialist
Free Market Advocate
Web Programmer

254 968-8328

Don't tread on my bandwidth. Trim your posts.

_______________________________________________
ActivePerl mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to