テキストファイルの暗号化
Microsoft が提供している暗号用API 「Crypt API 」のCOMである「CAPICOM 2.0」をVB6.0で使用したサンプルです。
盗聴・誤配信したとしてもパスワードが破られない限りファイルの中身を知ることができないので、電子メールを利用してのセキュアなデータ配信に応用できると思います。
サンプルの実行には「CAPICOM 2.0」をインストールする必要があります。
下記でダウンロードできます。
【サンプル内容】
指定したテキストファイルの共通鍵方式のパスワードで暗号化したファイルと、それを復号化したファイルを出力します。
入力ファイルはテキストファイルのみです、バイナリファイルだと復号しても元に戻りません。
色々頑張ってみましたがそもそもEnvelopedDataオブジェクトのContentプロパティが文字型のためUnicodeに変換されてしまっているからだと思います。
確認していませんが、この場合は一旦、Base64とかでテキスト化してから暗号化すればOKかもしれません。
(「CAPICOM 2.0」はBase64形式の文字列も暗号化できるようです)メモリ上に丸ごとファイルの中身を読み込んでから暗号化していますのであまりにも巨大なファイルの場合、PCの環境次第ではリソース不足で異常終了する可能性があります。
(一応、自分のPCでは11.5MBのファイルで正常動作するのを確認しました)
[ Window Close ]