■名称

  TENCO for Linux

■機能

  ・ファイルの暗号化・復号化をおこないます。
  ・自己復号ファイルの作成も可能です。
  ・暗号化アルゴリズムは Twofish および AES を採用しています。
   (Niels Ferguson 氏の Twofish C library を使用。)
  ・Windows 版と Linux 版の双方でファイルのやりとりが可能です。
   (Linux 版で暗号化して Windows 版で復号化するといった使い方が可能。)

■適用機種

  CentOS 5(32bit/64bit) でコンパイルして動作確認しています。
  他のディストリビューションでも、動作するものは多いと思われます。

■インストール/アンインストール

  ・tenco ファイルが 32bit プログラムで、tenco64 ファイルが
   64bit プログラムです。32bit 環境の場合は tenco ファイルを
   そのまま使用し、64bit 環境の場合は tenco64 ファイルの名前を
   tenco に変更して使用してください。
  ・インストールするには、tenco ファイルをパスが通ったディレクトリに
   コピーしてください。
  ・アンインストールするには、コピーしたファイルを削除してください。

■使い方

  コマンドラインより以下のように入力します。
   $ 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 が追加されたファイル名で出力します。
       ・復号化時は、暗号化する前のファイル名で出力します。
       ・自己復号ファイル作成時は、拡張子 .tce が追加されたファイル名
        で出力します。
  
  コマンドラインを間違った場合は、ヘルプメッセージを表示します。
  
  例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.tce
    →foo.txt を「crypt」というキーで暗号化し、foo.tce を出力します。
  
  例4.自己復号ファイルの実行(例3の出力ファイルを実行)
    $ ./foo.tce
    →「enter key:」という入力指示が出るので「crypt」と入力すると、
     foo.txt を出力します。

■出力メッセージ(主なもの)

  "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:(アーカイブを展開してご確認ください)