MessageDigest SHA-512与openssl不同

时间:2010-06-26 18:14:27

标签: java openssl message digest sha

我无法弄清楚我在这里做错了什么。我有以下代码:

byte[] digest = new byte[0];
MessageDigest md = null;
try{
    md = MessageDigest.getInstance( "SHA-512" );
}
catch( NoSuchAlgorithmException e ) {
    return digest;
}
digest = md.digest( myString.getBytes() );

查看NetBeans调试器中摘要byte []的十六进制值,它显示的内容与输出不同:

echo "myString" | openssl dgst -sha512

我猜这是一个字符编码问题,但JVM和openssl是否使用了该机器的默认字符集?

感谢任何帮助。

1 个答案:

答案 0 :(得分:7)

echo在最后添加换行符 -

[steven@emu:~]% echo "myString" | hexdump -C
00000000  6d 79 53 74 72 69 6e 67  0a                       |myString.|

试试echo -n

相关问题