MD5

MD5-[MD5ハッシュ値を算出する-ExcelVBA Class Modules]

NAME

MD5 — [MD5 クラスモジュール]

作成日:2012/05/13更新日:2014/02/05動作環境:[Excel 2000-2016]

SYNOPSIS

        Sub Main()
            Dim objMD5 As New MD5

            objMD5.Text = "a"
            Debug.Print objMD5.TextHash
        End Sub

DESCRIPTION


AN OUTLINE — 概要

ExcelVBAから文字列やファイルのハッシュ値を求めることが出来るクラスモジュールです。他のモジュールを使用していないので、Excelが動作する環境であれば、ファイル内で完結した処理が行えます。

なお、MD5の処理に関しては[http://www.ipa.go.jp/security/rfc/RFC1321JA.html]の[md5c.c]を[VBAコード]に書き直しています。

主な機能:
・指定した文字列、ファイルのハッシュ値を求めることが出来る。
・他のモジュールを使用しないため、Excelファイル内で処理を完結することが出来る。
・三種類の文字コード([SHIFT-JIS/UTF-8/UNICODE)コードを扱ったハッシュ変換が出来る。


PREPARATION — 準備

[DOWNLOAD] から、本ExcelBookをダウンロードします。

ダウンロードが完了したらzipファイルを解凍してください。そこに実行ファイルが含まれています。


HOW TO USE — 使用方法

ダウンロードが完了したらマクロを有効にして開いてください。そこにサンプルモジュールと本モジュールが含まれています。
※クラスをエクスポート、インポートする事で別のExcelBookでも使用することが出来ます。

        Dim objMD5 As New MD5

  

○[Charset]オブジェクト「MD5.Charset」プロパティ

文字列の文字コードを指定するには、「MD5.Charset」プロパティを使用します。

指定可能な文字コードは[SHIFT-JIS][UTF-8][UNICODE]の三種類となります。
注:何も指定しない場合は[SHIFT-JIS]が設定されます。

        objMD5.Charset = "UTF-8"

  

○[Text]オブジェクト「MD5.Text」プロパティ

ハッシュ値を求めたい文字列を指定するには、「MD5.Text」プロパティを使用します。

        objMD5.Text = "a"

  

○[FilePath]オブジェクト「MD5.FilePath」プロパティ

ハッシュ値を求めたいファイルを指定するには、「MD5.FilePath」プロパティを使用します。

        objMD5.FilePath = "C:\hoge.txt"

  

○文字列のハッシュ値を取得「MD5.TextHash」メソッド

[MD5.Text]にて設定した文字列のハッシュ値を取得するには、「MD5.TextHash」メソッドを使用します。

        value = objMD5.TextHash

  

○ファイルのハッシュ値を取得「MD5.FileHash」メソッド

[MD5.FilePath]にて設定したファイルのハッシュ値を取得するには、「MD5.FileHash」メソッドを使用します。

        value = objMD5.FileHash

  


EXAMPLE — 使用例

例1:文字列のハッシュ値を取得する。

     Sub Sample()
         Dim objMD5 As New MD5
         objMD5.Text = "message digest"
         Debug.Print objMD5.TextHash
     End Sub

  

例2:文字コードを指定して文字列のハッシュ値を取得する。

     Sub Sample()
         Dim objMD5 As New MD5
         objMD5.Charset = "UTF-8"
         objMD5.Text = "本日は晴天なり 2012/5/13"
         Debug.Print objMD5.TextHash
     End Sub

  

例3:ファイルのハッシュ値を取得する。

     Sub Sample()
         Dim objMD5 As New MD5
         objMD5.FilePath = "C:\hoge.txt"
         Debug.Print objMD5.FileHash
     End Sub

REFERENCE

NameDescriptionSyntax

ATTENTION

・本ソフトを利用した事によるいかなる損害も一切の責任を負いません。

・感想や要望、不具合などありましたら、作者までご連絡ください。


MEMO

本ソフトの[readme.txt]に「NAME/VERSION/AUTHOR/COPYRIGHT」が記載されています。


CONTRIBUTION

寄付歓迎

本モジュールはフリーですが、「このモジュールのおかげで、素晴らしいソフトが作れた」など、寄付をしていただける方がいましたら、作者宛までご一報ください。


DOWNLOAD

<<—DOWNLOAD MD5—>>


VERSION

Version:1.00 – Sun May 13, 2012
Version:1.01 – Fri Jul 5, 2013 | MD5.MDFile実行時に対象ファイルがない場合、空白として処理する。
Version:1.02 – Wed Feb 5, 2014 | 他のハッシュクラスとメソッド名を統一するため次のメソッド名を変更
[Strings]→[Text]/[MDString]→[TextHash]/[MDFile]→[FileHash]


AUTHOR

Syunzi Shimohata < webmaster@taru-net.jp > https://www.taru-net.jp/