NAME

        SHA1 -- SHA1 クラスモジュール
		


SYNOPSIS

        Sub Main()
            Dim objSHA1 As New SHA1

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

DESCRIPTION



AN OUTLINE -- 概要

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

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

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



PREPARATION -- 準備

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

ダウンロードが完了したらマクロを有効にして開いてください。そこにサンプルモジュールと本モジュールが含まれています。

※クラスをエクスポート、インポートする事で別のExcelBookでも使用することが出来ます。



HOW TO USE -- 使用方法

最初に[Dim objSHA1 As New SHA1]を宣言し、オブジェクトを使用可能にします。
オブジェクトを[Dim objSHA1]とした場合の記述方法は以下の通りです。

        Dim objSHA1 As New SHA1
		
○[Charset]オブジェクト「SHA1.Charset」プロパティ
文字列の文字コードを指定するには、「SHA1.Charset」プロパティを使用します。
指定可能な文字コードは[SHIFT-JIS][UTF-8][UNICODE]の三種類となります。
注:何も指定しない場合は[SHIFT-JIS]が設定されます。
        objSHA1.Charset = "UTF-8"
		
○[SHA1]オブジェクト「SHA1.SHA1」プロパティ
ハッシュ値を求めたい文字列を指定するには、「SHA1.Text」プロパティを使用します。
        objSHA1.Text = "a"
		
○[FilePath]オブジェクト「SHA1.FilePath」プロパティ
ハッシュ値を求めたいファイルを指定するには、「SHA1.FilePath」プロパティを使用します。
        objSHA1.FilePath = "C:\hoge.txt"
		
○文字列のハッシュ値を取得「SHA1.TextHash」メソッド
[SHA1.Text]にて設定した文字列のハッシュ値を取得するには、「SHA1.TextHash」メソッドを使用します。
        value = objSHA1.TextHash
		
○ファイルのハッシュ値を取得「SHA1.FileHash」メソッド
[SHA1.FilePath]にて設定したファイルのハッシュ値を取得するには、「SHA1.FileHash」メソッドを使用します。
        value = objSHA1.FileHash
		


EXAMPLE -- 使用例

例1:文字列のハッシュ値を取得する。
        Sub Sample()
            Dim objSHA1 As New SHA1

            objSHA1.Text = "message digest"
            Debug.Print objSHA1.TextHash
        End Sub
		
例2:文字コードを指定して文字列のハッシュ値を取得する。
        Sub Sample()
            Dim objSHA1 As New SHA1

            objSHA1.Charset = "UTF-8"
            objSHA1.Text = "本日は晴天なり 2012/5/13"
            Debug.Print objSHA1.TextHash
        End Sub
		
例3:ファイルのハッシュ値を取得する。
        Sub Sample()
            Dim objSHA1 As New SHA1

            objSHA1.FilePath = "C:\hoge.txt"
            Debug.Print objSHA1.FileHash
        End Sub
		


REFERENCE

Name Description Syntax


ATTENTION

・本クラスモジュールを利用した事によるいかなる損害も一切の責任を負いません。

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



MEMO

本モジュールの本文中に「NAME/VERSION/AUTHOR/COPYRIGHT」が記載されています。



CONTRIBUTION

寄付歓迎

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

なお受け付けている物は、お金(日本通貨円)、食料(酒/缶詰/お米など)となっております。



DOWNLOAD

<<---DOWNLOAD SHA1--->>



VERSION

Version:1.00 - Tue Feb 4, 2014
Version:1.01 - Wed Feb 5, 2014 | 他のハッシュクラスとメソッド名を統一するため次のメソッド名を変更
[Strings]→[Text]/[SHA1String]→[TextHash]/[SHA1File]→[FileHash]



AUTHOR

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