diff options
Diffstat (limited to 'perl/test.pl')
-rw-r--r-- | perl/test.pl | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/perl/test.pl b/perl/test.pl new file mode 100644 index 0000000000..350b1a96fa --- /dev/null +++ b/perl/test.pl @@ -0,0 +1,30 @@ +#!/usr/local/bin/perl + +use ExtUtils::testlib; + +use SSLeay; + +($a=SSLeay::BN::new()) || die "unable to make bignum\n"; +($b=SSLeay::BN::new()) || die "unable to make bignum\n"; + +$a=SSLeay::BN::hex2bn("123456789ABCDEF"); +$b=SSLeay::BN::hex2bn("123456789ABCDEF"); +$mod=SSLeay::BN::hex2bn("fedcba9876543201"); +$c=SSLeay::BN::hex2bn("1234"); + +print "a=".$a->bn2hex()."\n"; +print "b=".$b->bn2hex()."\n"; +print "c=".$c->bn2hex()."\n"; + +print $a->mul($b)->bn2hex."\n"; +($d,$r)=$b->div($c); +print "($d)($r)\n"; +printf "%s x %s + %s\n",$c->bn2hex,$d->bn2hex,$r->bn2hex; + +$g=$d; + +for (;;) + { + $a=$a->mod_mul($a,$mod); + print $a->bn2hex."\n"; + } |