如何在java中将字节数组转换为BigInteger
我正在研究java …我想知道如何将字节数组转换为BigInteger。 实际上我使用了md5的digest方法,它返回了我想要转换为Biginteger的字节数组。
这个示例在几行Java中获取MD5哈希有一个相关的例子。
我相信你应该能做到的
MessageDigest m=MessageDigest.getInstance("MD5"); m.update(message.getBytes(), 0, message.length()); BigInteger bi = new BigInteger(1,m.digest());
如果你想以"d41d8cd98f00b204e9800998ecf8427e"
的风格打印,你应该可以做到
System.out.println(bi.toString(16));
实际上我使用了md5的digest方法,它返回了我想要转换为
BigInteger
的字节数组。
您可以使用new BigInteger(byte[])
。
但是,应该注意的是MD5哈希在任何有用的意义上都不是真正的整数。 它实际上只是一个二进制位模式。
我想你只是这样做,这样你就可以打印或订购MD5哈希。 但是,完成这两项任务的内存消耗方式较少。