忍者ブログ
Flex,Java,Html など、調べた事のメモ帳です。 間違ってたらゴメンなさい。
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

MD5 値の取得方法

メッセージダイジェストの取得は java.security.MessageDigest を使って簡単に可能です。
MessageDigest#getInstance(String algorithm) を使用してアルゴリズムを指定した MessageDigest のインスタンスを取得します。
アルゴリズム には MD5 の他 SHA-1 等有名なメッセージダイジェストは、ほとんど使用可能なようです。

byte 配列から MD5

byte 配列からメッセージダイジェストを取得する場合は非常に簡単で、MessageDigest#digest で取得可能です。 以下にコードのサンプルを書きます

 

※パスワードの保存等で利用します。


MessageDigest digest = MessageDigest.getInstance("MD5"); byte[] hash = digest.digest("hoge".getBytes());

 

InputStream から MD5

InputStram からメッセージダイジェストを取得する場合は、MessageDigest#update と MessageDigest#digest を併用しなければなりません。update ですべての Stream を読み込んだ後に digest で取得します。 公開されている

 

※アプリケーションの MD5 値を取得する時等に利用します。


InputStream in = new FileInputStream("C:/work/test.xls");
MessageDigest digest = MessageDigest.getInstance("MD5");
try {
    byte[] buff = new byte[4096];
    int len = 0;
    while ((len = in.read(buff, 0, buff.length)) >= 0) {
        digest.update(buff, 0, len);
    }
} catch (IOException e) {
    throw e;
} finally {
    if (in != null) {
        try {
            in.close();
        } catch (IOException e) {
        }
    }
}
byte[] hash = digest.digest();
 
この記事にコメントする
name
title
color
mail
URL
comment
pass   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
secret (チェックを入れると管理人だけに表示できます)
ブログランキング
にほんブログ村 IT技術ブログ IT技術メモへ
 
カレンダー
02 2017/03 04
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
人気ブログランキング
ブログランキング ブログランキング
最新CM
最新TB
ブログ内検索
PR
ATOM  
ATOM 
RSS  
RSS 
Copyright ©   プログラムメモ   All Rights Reserved
Design by MMIT  Powered by NINJA TOOLS
忍者ブログ [PR]