#!/usr/bin/perl -w use CGI; my ($raw); $cgi= new CGI; $cgi->header; $s=$cgi->param('raw'); @fields = split(/\./,$s); @data = map(decode($_), @fields[1..$#fields]); print "$data[2]"; #print "
$data[1]"; print <Actions:
EOF $cgi->end_html; sub decode { my ($seq) = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+-'; ($encoded) = @_; @s = map { index($seq,$_); } split(//,$encoded); $l = ($#s+1) % 4; if ($l) { if ($l == 1) { print "Error!"; return; } $l = 4-$l; $#s += $l; } $r = ''; while ($#s >= 0) { $n = (($s[0] << 6 | $s[1]) << 6 | $s[2]) << 6 | $s[3]; $r .=chr(($n >> 16) ^ 67) . chr(($n >> 8 & 255) ^ 67) . chr(($n & 255) ^ 67); @s = @s[4..$#s]; } $r = substr($r,0,length($r)-$l); return $r; }