SHA-512 を使用してパスワードをハッシュし、mysql データベースに保存しています。sha-512 への入力に特殊文字を含めないという要件はありますか? パスワードは「Qwerty123.1」と「Qwerty123」です。同じように扱われていますが、「Qwerty.11」は上記と同じではありません。何が問題ですか?
私が使用しているコードは次のとおりです。
BASE64Decoder decoder=new BASE64Decoder();
byte[] b=decoder.decodeBuffer(r1); //r1 is the string containing password
MessageDigest md=MessageDigest.getInstance("SHA-512");
md.update(b);
byte[] plaintext=md.digest();
BASE64Encoder encoder=new BASE64Encoder();
String digest1=encoder.encode(plaintext); //digest1 contains the msg digest