ich bin leider noch ein ziemlicher Perl Anfänger und möchte folgende Perl Routine in Python umschreiben. Hab so meine Probleme die kompakte Schreibweise zu verstehen...
Code: Alles auswählen
sub Encrypt($$$)
{
do 'bigint.pl';
$_ = shift;
my $n = shift;
my $m = shift;
my $d=0;
my $k;
s/^.(..)*$/0$&/;($k=unpack('B*',pack('H*',$_)))=~s/^0*//;
my $x=0;
my $z=$n=~s/./$x=&::badd(&::bmul($x,16),hex$&)/ge;
my $w=((2*$d-1+$z)&~1)/2;
$_=substr($m."\0"x$w,0,$w);
my $c=0; s/.|\n/$c=&::badd(&::bmul($c,256),ord$&)/ge;
my $r=1; my $t;
$_=$k;
s/./$r=&::bmod(&::bmul($r,$r),$x),$&?$r=&::bmod(&::bmul($r,$c),$x):0,""/ge;
($r,$t)=&::bdiv($r,256),$_=pack(C,$t).$_ while$w--+1-2*$d;
return unpack('H*',$_);
}
Das Ganze ist für mich gerade, wie wenn ein Python Anfänger auf so nen Blödsinn stößt

Code: Alles auswählen
g=lambda x:x<<2;r=[g(i)|g(i-1)for i in range(16)]

Gruß
Jens