我正在尝试将 java 转换为 perl (md5) 程序。我该如何做以下两个程序相同的输出 MD5 总和。
爪哇
import java.security.MessageDigest;
import java.math.BigInteger;
public class Hash
{
public static void main( String[] args ) throws Exception
{
MessageDigest md5 = MessageDigest.getInstance("MD5");
String plain = "abcd1234";
BigInteger digest = new BigInteger(md5.digest(plain.getBytes("UTF-8")));
System.out.println( digest.abs() );
}
}
Perl
use Digest::MD5 'md5_hex';
use Math::BigInt;
my $plain = "abcd1234";
my $digest = Math::BigInt::->from_hex(md5_hex $plain);
print $digest, "\n";
我认为,
爪哇:
BigInteger digest = new BigInteger(md5.digest(plain.getBytes("UTF-8")));
珀尔:
my $digest = Math::BigInt::->from_hex(md5_hex $plain);
这是不同的输出 MD5 和。我想编辑 perl 源代码。