Код: Выделить всё
#!/usr/bin/perl
use Digest::MD5 qw(md5_hex);
$username='285';
$password='slk38vnjsuhdfa';
$realm='asterisk';
$nonce='21ba11ea';
$uri='sip:sip.server.ru;
$res='3cef0f9309c78d981e55f4bda814fda9';
my $str1 = "$username:$realm:$password";
my $str2 = "REGISTER:$uri";
$md5str1=md5_hex("$str1");
$md5str2=md5_hex("$str2");
#print "$str1 --- $str2 --- $nonce !!! $md5str1:$nonce:$md5str\n";
$var="$md5str1:$nonce:$md5str2";
$end=md5_hex("$var");
#print "str1 $md5str1 \n";
#print "str2 $md5str2 \n";
#print "$var - gen\n";
print "$res - orignal\n";
print "$end - generic\n";
if ( $end == $res ) {
print "OK\n";
} else {
print "NO\n";
}