これは、ASP(Active Server Pages) & WSH などで利用できる COM コンポーネントです

多分...


はじめに
NTT と三菱電機が2000年に開発した共通鍵ブロック暗号を、COM ラッパにしてみました。
暗号アルゴリズムが公開されましたので、COM ラッパにしてみました。

本家はここです。


使用方法
  1. sCOMmon.dll が必要ですので、ダウンロードして、sCOMmon.dll をシステム・ディレクトリ(%SystemRoot%\System32 {Win64 → %SystemRoot%\SysWOW64})にコピーしてください。
  2. ファイルをダウンロードします。
  3. ダウンロードしたファイルを解凍しします。
    (LHA は、吉崎栄泰氏が、著作権を所有)
  4. sCamellia.dll を任意のディレクトリにコピー。
  5. コピーされたディレクトリで、regsvr32.exe を実行して sCamellia.dll をレジストリに登録。
  6. (同梱されている regsvr32.bat を sCamellia.dll と同一ディレクトリにコピーして実行することでも可能。
  7. 以上で、
    VBScript,JScript,VisualBASIC にて、この COM コンポーネントを利用可能。



使い方(VBScript を例にして...)
基本的には
  1. オブジェクトを生成{CreateObject("SCamellia.Crypt")}
  2. 秘密鍵をセットする SetKey/SetKeyBin() メソッドの実行
  3. 暗号化、または復号化メソッドの実行{Encrypt/EncryptBin() または Decrypt/DecryptBin() メソッド}
  4. オブジェクトを解放{Nothing キーワード}

ってな感じです。

ダウンロードしたファイルを解凍すると、sample.vbs というファイルがあると思います。
WSH & VBScript でのサンプルです。


アンインストール方法
RegSvr32 コマンドの /u オプションを用いて、sCamellia.dll をレジストリから削除するだけです。
必要がないようでしたら、sCOMmon.dll も削除してください。


免責など
バイナリには BSD 版の camellia のソースコードを使用してコンパイルしたので、本 COM ラッパも BSD ライセンスとします

camellia のアルゴリズム自体、および camellia.h/camellia.c は NTT の著作権などは NTT にあります。

このソフトを使用したことによって生じた、
いかなる損害についても責任は持ちません。
ソースコードについては、各自の責任において、自由にいじってくれてもいいです。

修正についての提案や、バグレポートなどは、メールにて受け付けています。


DownLoad(sCamellia.lzh as 736,809byte) (sCamellia.lzh.base64)
sCamellia.dll is 90,112byte(ver1.0.0.1)


変更履歴



COM(sCamellia.dll) メソッド一覧


処理されたデータ = Encrypt(対象データ)
処理されたデータ = Decrypt(対象データ)
処理されたデータ = EncryptBin(対象データ)
処理されたデータ = DecryptBin(対象データ)
内容 入力データを暗号化/復号します。
暗号モードは、ECB モードです。16Byte(128bit)単位で暗号化されます。
xxxxBin() は入力データ、出力データ共に、バイナリ(UTF16)として扱います。
xxxx() 関数は、入力データ、出力データ共にテキスト(Shift_JIS)に変換して扱います。

Encrypt() 関数の出力データは HEX 表示として出力します。
Decrypt() 関数の入力データは HEX 表示として与えてください。



SetKey(秘密鍵,鍵長)
SetKeyBin(秘密鍵,鍵長)
内容 秘密鍵をセットします。
このメソッドを呼び出した後に Encrypt/Decrypt() メソッドを呼び出すようにしてください。

鍵長は「128」「192」「256」のどれかです。



サンプルコード(WSH & VBScript)
Set Obj = WScript.CreateObject("SCamellia.Crypt")
Obj.SetKey("secret",128)
ret = Obj.Encrpt("文字列")
Set Obj = Nothing



ソースコードの使い方と、バイナリ(sCamellia.dll) について



mail to active@window.goukaku.com