39 lines
814 B
Perl
39 lines
814 B
Perl
#!/usr/local/bin/perl
|
|
|
|
use ExtUtils::testlib;
|
|
|
|
use SSLeay;
|
|
|
|
$md=SSLeay::MD::new("md5");
|
|
|
|
foreach (@SSLeay::Cipher::names)
|
|
{
|
|
($c=SSLeay::Cipher::new($_)) ||
|
|
die "'$_' is an unknown cipher algorithm\n";
|
|
|
|
|
|
$data="012345678abcdefghijklmnopqrstuvwxyz";
|
|
$c->init("01234567abcdefghABCDEFGH","zyxwvut",1);
|
|
|
|
$in =$c->update(substr($data, 0, 5));
|
|
$in.=$c->update(substr($data, 5,10));
|
|
$in.=$c->update(substr($data,15,1));
|
|
$in.=$c->update(substr($data,16));
|
|
|
|
$in.=$c->final();
|
|
|
|
$c->init("01234567abcdefghABCDEFGH","zyxwvut",0);
|
|
$out=$c->update($in);
|
|
$out.=$c->final();
|
|
|
|
($out eq $data) || die "decrypt for $_ failed:$!\n";
|
|
|
|
$md->init();
|
|
$md->update($in);
|
|
$digest=$md->final();
|
|
|
|
print unpack("H*",$digest);
|
|
printf " %2d %2d %2d %s\n", $c->key_length(), $c->iv_length(),
|
|
$c->block_size(), $c->name();
|
|
}
|
|
|