プログラムのパスワードを暗号化するために MD5 ハッシュを使用しています。しかし、それはすべての文字を作成しているわけではなく、一部の人にとっては判読不能です。これがスクリーンショットです。リンク - http://i46.tinypic.com/2qvf2o2.jpg
どんな助けでも大歓迎です
プログラムのパスワードを暗号化するために MD5 ハッシュを使用しています。しかし、それはすべての文字を作成しているわけではなく、一部の人にとっては判読不能です。これがスクリーンショットです。リンク - http://i46.tinypic.com/2qvf2o2.jpg
どんな助けでも大歓迎です
おそらく、MD5 によって返されたバイト配列を表示用の 16 進文字列に変換したいと思うでしょう。d131dd02c5e6eec4のようなもの。
これを行う方法は次のとおりです。
MD5 から返されたバイトを生の文字データとして解釈しています。
MD5 は文字を表すバイトを返さないため、意味のない結果が得られます。
返されるのはバイナリ値です。したがって、デフォルトのコードページの有効な文字にマップされる場合とマップされない場合がある生のバイトの集まりです。あなたがすべきことは、バイト[]を16進数に変換することです。これをエンコードするには、Apache Commons Codec などを使用できます。http://commons.apache.org/codec/apidocs/org/apache/commons/codec/binary/Hex.html#encodeHex(byte[])