
您期望的值是十六进制编码的值。您正在基于原始字节创建字符串,这将不起作用。
您应该尽可能使用标准的Java Crypto API,而不是BouncyCastle特定的API。
尝试以下 *** 作(十六进制库来自commons-prec):
Security.addProvider(new BouncyCastleProvider());String data = "hello world";MessageDigest mda = MessageDigest.getInstance("SHA-512", "BC");byte [] digesta = mda.digest(data.getBytes());MessageDigest mdb = MessageDigest.getInstance("SHA-512", "BC");byte [] digestb = mdb.digest(data.getBytes());System.out.println(MessageDigest.isEqual(digesta, digestb));System.out.println(Hex.enpreHex(digesta));欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)