Я использую MessageDigest Java для создания хэширующего проекта. Я хочу создать столкновение с хэшами, создаваемыми случайно генерируемыми строками. Я проверил, что мои строки действительно случайны. Когда я выводил дайджест, он всегда начинается с «[B @» по какой-то причине, и когда я пытаюсь обнаружить столкновение с 8 бит, очевидно, все начинается с «[». Вот мой код:Java messageDigest funky output
public boolean encrypt(String x) throws Exception {
System.out.println("x is " + x);
java.security.MessageDigest d = java.security.MessageDigest.getInstance("SHA-1");
d.update(x.getBytes());
d.reset();
String result = d.digest().toString() + " ";
char[] tempCharArray = result.toCharArray();
String bitArray = "";
for(int i=0; i< tempCharArray.length; i++){
bitArray += String.format("%8s", Integer.toBinaryString(tempCharArray[i] &
0xff)).replace(' ', '0');
}
result = bitArray.substring(0,8);
return result;
}
Кто-нибудь видел это раньше/знает, что делать, чтобы все исправить? Спасибо