-1
既存のSHA-256、別のまたは複数の異なるデータタイプハッシュ異なるデータ - 同じ結果
BigInteger d = new BigInteger("773182302672421767750165305491852205951657281488");
BigInteger r = new BigInteger("1354751385705862203270732046669540660812388894970");
String R_ID = "id_b";
String C_ID = "id_b";
MessageDigest sha_c = MessageDigest.getInstance("SHA-256");
sha_c.update(r.toByteArray());
sha_c.update(d.toByteArray());
sha_c.update(C_ID.getBytes());
System.out.println(Arrays.toString(sha_c.digest()));
MessageDigest sha_b = MessageDigest.getInstance("SHA-256");
sha_b.update(r.toByteArray());
sha_b.update(d.toByteArray());
sha_b.update(R_ID.getBytes());
System.out.println(Arrays.toString(sha_b.digest()));
同じ結果でそれを更新する方法:sha_c.update(C_ID.getBytes());
と更新と 結果[114、-62,50、-44、-118、20、-29,34、-112,99、-17、-6,97、-64, -121、20、30、-55、110、 54、9、-90,100,125、-28,75,106、-15、-87、-109、-51、46]
sha_b.update(R_ID.getBytes());
[114、-62、50、-44、-118、20、-29、34、-112、99、-17、-6、97、-64と更新と結果、 -121,2030、-55,110,54、9、-90,100,125,-28,75,106、-15、-87,109,51,46]
私はそれが配列であることを忘れて申し訳ありません。 – sherif
私は質問を明確にした – sherif
私はなぜこの特定の質問の複製であるのかわかりません。問題は、SHA-256の値が異なるデータで同じである理由と思われます。答えは、SHA-256はデータの内容のみに依存し、R_IDとC_IDは等しいということです。 ところで、2番目の例には、誤植が含まれています.d_c2はd_b2でなければなりません。 –