2017-10-17 24 views
0

私の宿題には、MessageDigestとDatatypeCoverterのパスワード用にMD5ハッシュを生成する必要があり、入力パスワードからMD5ハッシュを生成できるという要件がありますMD5ハッシュのみをJavaで生成する方法

input: minh 
hash: C92F1D1F2619172BF87A12E5915702A6 

しかし入力パスワードからハッシュを生成する別の要件がありますが、ハッシュには数字または文字のみが含まれています。私はどこにいても解決策を探していましたが、何ができますか?

+0

md5を使用しているのは良い考えではありませんが、弱いです。 –

+2

あなたの現在のハッシュは数字のみを含み、16進数で8進数に変換し、 "数字"のみを持ちます。 –

+0

@RC。それは一般的な関心事であるにもかかわらず、質問にはちゃんと関係しない。 –

答えて

0

MD5ダイジェストは数字だけなので、すでに「数字」があります。それらを数値として「表示」する必要がある場合は、String、intコンストラクタnew BigInteger(str,16);(Stringの基数16)を使用してMD5をBigIntegerとして格納できます。

10進表現が必要な場合は、BigIntegerのtoStringメソッドを使用できます。 toString(int)の過負荷を使用すると、16進表記(または実際のベース)を得ることができます。整数は、数値を表現したい「ベース」です。

+1

MD5を 'long'に保存することはできません。 – Oleg

+0

BigIntegerに入れる答えを編集してください。今は時間がありません。そうしないと後で修正します。 – iajrz

+0

@Oleg私はそれを変更しました。 – iajrz

関連する問題