■名称 TENCO for Windows ■機能 ・ファイルの暗号化・復号化をおこないます。 ・自己復号ファイルの作成も可能です。 ・コマンドラインプログラムですが、GUI的な使い方も可能です。 ・モジュール単体のみで動作します。レジストリ等は使用しません。 ・暗号化アルゴリズムは Twofish および AES を採用しています。 (Niels Ferguson 氏の Twofish C library を使用。) ・Windows 版と Linux 版の双方でファイルのやりとりが可能です。 (Linux 版で暗号化して Windows 版で復号化するといった使い方が可能。) ■適用機種 Visual C++ 2010 Express Edition でコンパイルして、 Windows 7(32bit) / 8.1(64bit) で動作確認しています。 他のバージョンでも動作はするものと思われます。 ■インストール/アンインストール ・tenco.exe ファイルが 32bit プログラムで、tenco64.exe ファイルが 64bit プログラムです。32bit 環境の場合は tenco.exe ファイルを そのまま使用し、64bit 環境の場合は tenco64.exe ファイルの名前を tenco.exe に変更して使用してください。 ・インストールするには、tenco.exe ファイルを Windows フォルダなどの パスが通ったフォルダにコピーしてください。 ・アンインストールするには、コピーしたファイルを削除してください。 ■使い方(コマンドライン版) コマンドラインより以下のように入力します。 >tenco <e|ea|d|s|sa> <infile> [key] [outfile] 自己復号ファイルを実行する場合は以下のように入力します。 >self-decrypt [key] [outfile] e = ファイルの暗号化をおこないます。(Twofish を使用) ea = ファイルの暗号化をおこないます。(AES を使用) d = ファイルの復号化をおこないます。 s = 自己復号ファイルを作成します。(Twofish を使用) sa = 自己復号ファイルを作成します。(AES を使用) infile = 処理するファイル名を指定します。 空白を含むファイル名の場合はダブルクォーテーションで囲みます。 key = 暗号化・復号化に使用するキーです。(オプション) 最大32バイトの文字列で、漢字・記号等も使用可能です。 指定しなかった場合は、処理実行時に画面から入力します。 この場合、暗号化時は、確認のため同じキーを2回入力します。 outfile = 出力するファイル名を指定します。(オプション) 指定しなかった場合は、 ・暗号化時は、拡張子 .tcf が追加されたファイル名で出力します。 ・復号化時は、暗号化する前のファイル名で出力します。 ・自己復号ファイル作成時は、拡張子 .exe が追加されたファイル名 で出力します。 コマンドラインを間違った場合は、ヘルプメッセージを表示します。 例1.ファイルの暗号化 >tenco e foo.txt crypt →foo.txt を「crypt」というキーで暗号化し、foo.txt.tcf を出力します。 例2.ファイルの復号化(例1の出力ファイルを復号化) >tenco d foo.txt.tcf →「enter key:」という入力指示が出るので「crypt」と入力すると、 foo.txt を出力します。 ※foo.txt.tcf を任意のファイル名に変更しても、出力するファイル名を 指定しなければ、foo.txt が出力されます。 (ファイル名は内部に保持しています。) 例3.自己復号ファイルの作成 >tenco s foo.txt crypt foo.exe →foo.txt を「crypt」というキーで暗号化し、foo.exe を出力します。 例4.自己復号ファイルの実行(例3の出力ファイルを実行) >foo →「enter key:」という入力指示が出るので「crypt」と入力すると、 foo.txt を出力します。 ■使い方(GUI版) 例を示します。基本動作は、コマンドライン版と同じです。 1.任意のフォルダに tenco.exe をコピーします。 2.tenco.exe へのショートカットを作成して、デスクトップに置きます。 ショートカットの名前は例えば「TENCO」にして、アイコンを好きな ものに変更します。 3.ショートカットのプロパティを開いて、 ・「リンク先」の「"(中略)\tenco.exe"」に「s」を追加して、 「"(中略)\tenco.exe" s」のように変更します。 (自己復号ファイル作成の場合) ・「作業フォルダ」を「"(中略)\デスクトップ"」に変更します。 (このフォルダにファイルが出力されます。) 4.暗号化したいファイルを、ショートカットにドラッグ&ドロップします。 5.「enter key:」という入力指示が出るので、任意のキーを入力します。 確認のため「retype key:」と出るので、同じキーを入力します。 6.デスクトップに、拡張子に .exe が追加された自己復号ファイルが 出力されます。必要に応じてファイル名を変更します。 7.出力されたファイルを、任意のドライブやフォルダに移動します。 〜〜〜 以下復号 〜〜〜 8.出力されたファイルを、任意のドライブやフォルダでダブルクリックします。 9.「enter key:」という入力指示が出るので、キーを入力します。 10.キーが正しければ、同じフォルダに復号化したファイルが出力されます。 ■出力メッセージ(主なもの) "encrypted." …正常に暗号化されました。 "decrypted." …正常に復号化されました。 "keys mismatch." …暗号化時に2回入力したキーが異なっています。 "infile header error" …復号化時に、ヘッダ情報が見つかりません。 "infile data error" …復号化時に、データが間違っています。 (入力したキーが間違っているか、ファイルが壊れています。) "infile version error" …復号化時に、バージョン情報が間違っています。 (新しいバージョンで暗号化したファイルを 古いバージョンで復号化しようとすると出力されます。) ■その他 ・使用可能なファイルサイズは2GBまでです。 2GB以上のファイルに対しては、正常動作しません。 ・ファイルサイズ情報(バイト数)は暗号化しません。 ・何らかのエラーが発生した場合に、「hit any key....」という確認が 表示されるのは、仕様です。 ・復号化時に、出力するファイル名を省略した場合は、ファイル名および ファイルの作成日付も復元されますが、出力するファイル名を指定した 場合は、ファイルの作成日付は復元されません。 ・復号化時に、出力するファイル名を省略した場合は、"_tenco_.tmp" というファイルに一時的に出力してから、ファイル名を変更します。 ・ファイルの属性(アクセス権)は復元されません。 必要に応じて、復号化した後で変更してください。 ・アーカイブ機能はありません。単一のファイルのみ処理します。 お好きなアーカイバで処理してからお使いください。 ・自己復号ファイルも「tenco d」で復号化できます。 ■制限事項等 ・64bit プログラムで作成した自己復号ファイルは、32bit 環境では実行 できません。ただし、32bit プログラムの「tenco d」で復号化できます。 ・Windows 版で作成した自己復号ファイルは、Linux では実行できません。 また、Linux 版で作成した自己復号ファイルは、Windows では実行できません。 ただし、各々の自己復号ファイルを両方の「tenco d」で復号化できます。 ・漢字コードについての特別な処理はおこなっていません。 OSによる漢字コードの違い(S-JIS/UTF8等)から、以下の制限があります。 異なるOSを併用する場合は、アルファベット・数字・記号等、いわゆる 半角文字(1バイト文字)を使用してください。 1.パスワードに漢字が含まれる場合、異なるOSでは復号化できません。 2.ファイル名に漢字が含まれる場合、異なるOSで復号化したときに ファイル名が正しく復元されません。 ■暗号輸出規制 ・「外国為替及び外国貿易法」により、本プログラムを日本国外で使用 (輸出)するには、おそらく経済産業大臣の許可を必要とします。 ・ただし、「輸出貿易管理令別表第一及び外国為替令別表の規定に 基づき貨物または技術を定める省令」によると、自己復号ファイルを 日本国外で使用するのは、特に問題はなさそうです。 ・最終的には、使用者にて判断をお願いします。 ■ライセンス ・本ソフトウェアの使用に関しては、いかなる責任も負いません。 ・本ソフトウェアに対しては、いかなる保証もおこないません。 ・著作権は作者に帰属しますが、作者は著作権を主張しません。 ・個人使用、業務使用、商用、非商用など、その用途に関わらず 自由に使用していただいて構いません。 ・複製、改変、再配布など、自由に扱っていただいて構いません。 ・オリジナル、および、その改変物を組み込むにあたっては、 クレジット表記も不要、ソース公開も不要、作者への連絡も不要です。 (していただければ嬉しいですが。) ・唯一、オリジナルに対して、その作者だと名乗ることだけは禁止です。 ■改版履歴 ・ver 1.1a 2014/08/14 64bit に対応しました。 ・ver 1.1 2010/09/07 初期化ベクトルを変更しました。 ・ver 1.0 2010/05/05 ヘッダ構造を変更しました。 乱数要素を無くしました。 ・ver 0.6 2007/11/11 ソースを公開しました。 ・ver 0.5 2005/10/02 乱数要素を追加しました。 ヘッダチェックを簡素化しました。 自己復号ファイルを「tenco d」で復号化できるようにしました。 ・ver 0.4 2005/03/03 Linux に対応しました。 ・ver 0.3 2004/06/14 AES に対応しました。 ・ver 0.2 2004/04/04 Windows、Towfish で公開しました。 ・ver 0.1 2004/03/27 非公開バージョンです。 -- 中村 雅彦 (Nakamura Masahiko) http://www.sealight.jp/ mailto:(アーカイブを展開してご確認ください)