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