MessageDigest クラスを使用して、SHA1 または MD5 を使用して文字列のハッシュを取得しています。MD5 を使用したサンプル コードは次のとおりです。
private static String applyHashToKey(String key){
byte[] hashkey = null;
MessageDigest md = null;
try {
md = MessageDigest.getInstance("MD5");
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
hashkey = md.digest(new BASE64Decoder().decodeBuffer(key));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String result = new BASE64Encoder().encodeBuffer(hashkey);
return result;
}
今気づいたのは、SHA1 を使用するか、MD5 を使用して、この関数から返されるハッシュ文字列の最後に常に \r\n があることです。
例: Y60SedKVyEkKH4LKdikpc+zu5+0=\r\n
何が起こっているかについての任意のアイデア。これでよろしいですか、それとも私が何か間違ったことをして \r\n を導入しているのでしょうか?