Develop and Download Open Source Software

OpenSource Downloads

7-Zip  (4,208)  
HandBrake Japanese Language Version  (3,353)  
CrystalDiskInfo  (1,743)  
CotEditor  (1,120)  
CrystalDiskMark  (866)  
Boookends  (788)  
SMPlayer  (642)  
えこでこツール  (599)  
Tera Term  (595)  
10  FFFTP  (579)  
11  Cabos  (530)  
12  BathyScaphe  (494)  
13  ffdshow  (481)  
14  MergeDoc  (464)  
15  ギコナビ  (438)  
More >>

最近ブックマークされた記事

ファイルのセキュリティを強化する各種の暗号化ツール

2007年02月13日 09:15 Rui-Lopes(2007年2月8日(木)) 1 2

Pad

Padによる暗号化では、先に見たBcryptやNcryptとは異なり、ワンタイムパッド(one-time pad)という方式が用いられている。このプログラムの場合、オリジナルのファイルを複数の“パッド”に分割するのだが、これらはいずれも“デタラメな情報と区別できない状態”にされる。こうして分割されたファイルの内容は、一見すると無意味なランダムデータが収められているだけだが、必要な手順を踏むことでオリジナルの情報を復元できるようになっているのである。

ワンタイムパッドは古くから用いられている暗号化方式の1つであり、理論上は、この世に存在する解読不可能な唯一の暗号化方式だとされている。もっとも、実際の運用という観点から見た場合にはいくつかの弱点を有していることも知られている。具体的には、各パッドは1回しか使えない、パッドの作成には真の意味でランダムなデータを使う必要がある(真のランダムデータの作成は一般に思われているより難しい)、いわゆるマン・イン・ザ・ミドル攻撃(別名、中間者攻撃ないし介入者攻撃)に弱いという問題である。こうした制約があるため、日常的に行うタイプの暗号化作業にはお勧めできない。とは言うものの、使い方さえ選べばその有用性を生かすことは不可能ではなく、例えば言論の自由の保障を必要とする活動をしたい場合などもその1つである。ここに、権力者に見つかるとまずい意見を収めたファイルがあり、それを多数の人間に配布したいとしよう。そうした場合は、ファイルをPadで分割したもの(2つ以上)をそれぞれ異なるシステムに格納しておき、意見を伝えたい相手に対しては、これらの入手先とオリジナルファイルの復元法を教えるようにしておけばいいのである。

GnuPG

オープンソース系のファイル暗号化プログラムとして誰もが真っ先に思いつくのは、おそらくGnuPGだろう。ディストリビューションによってはプリインストールされている場合もあるくらいだ。GnuPGプログラムのFAQには「GnuPGとは、その正式名称であるGNU Privacy Guardが示すとおり、GNUにおける通信およびデータストレージのセキュア化を目的として開発されたツールです。このツールを用いることで、データの暗号化およびデジタル署名を施すことができます。特長としては、高度なキー管理機能を装備すると同時に、RFC 2440に提案されているOpenPGPインターネット標準に準拠しています。またNAI, IncのPGPと互換性を有すことも目標としています」という旨の説明がされている。

BcryptやNcryptなど多くのファイル暗号化プログラムが用いているのは対称暗号化という方式である。GnuPGの場合は、PGPと同様に公開鍵暗号化という方式を用いているが、対称暗号化の方式もサポートしている。公開鍵暗号化は、複数のファイルを対象とした署名や暗号化を日常的に実行する場合に便利であり、他のユーザとの暗号化ファイルの交換も簡単に行えるなど、様々なメリットを有している。対称暗号化および公開鍵暗号化の意味や仕組みについては、GnuPG Handbookの第2章およびGnuPG FAQ第7.1節に分かりやすくまとめられているので、そちらを参照して頂きたい。

GnuPGはコマンドライン専用のツールであるが、多数の機能が装備されているので、上級ユーザが機能的な不満を感じることはないはずだ。また操作性を向上させるための優れたフロントエンドも各種用意されている。私もKDE用に作成されたKGpgというフロントエンドを使用しているが、これが使えるおかげで定期的に行う暗号化作業の効率が大幅に向上している。例えば、ここで紹介したファイル暗号化ツールに共通する欠点として、どのツールもディレクトリの暗号化に対応していない点が挙げられる。ただし、特定のディレクトリの内部にあるファイルをすべて暗号化する、あるいは、そうしたディレクトリ中のファイルを.tar.gzないしは.zipファイルにまとめてから改めて暗号化するという処理はできるので、手間さえかければディレクトリ単位の暗号化と同等の処理を行えない訳でもない。ところがKGpgを使うと、目的のフォルダを直接ダブルクリックしてアーカイブ化と暗号化をするように指示するだけで、後はすべてこのプログラムが自動的に処理してくれるのである。その他にもKGpgには、デスクトップに配置される“シュレッダ”へのドラッグアンドドロップで任意のファイルを削除するという機能も装備されている(ただしディレクトリの削除はできない)。これは非常に重宝する機能ではあるが、使用するに当たっては、開発者による注意事項に目を通しておくことをお勧めする。KGpgの操作性は非常に優れており、コンピュータの使用経験の浅いユーザであっても短時間で使用法をマスターできるはずだ。

GnuPGは現在も着実に開発作業が進められているが、現状でも多数のオペレーティングシステムをサポートしている。そのコンパイルはほとんどのUnixで実行可能であり、Windows用に移植されたGpg4Winも利用できる。特にUnixシステムの場合はメールの暗号化もかなりのレベルで対応しており、メールクライアントに統合されたGnuPGについてはGnuPG FAQの第4.15節に一覧されている(残念ながらWindows環境におけるOpenPGP標準のサポート状況はそれほど高くない)。その他のメール用ツールが必要であれば、Aegyptenプロジェクトを探せばいいだろう。

読者の中には、暗号化技術に関するより詳しい解説に興味を覚えた方がおられるかもしれないが、初心者向けの手頃な解説としては、Wikipediaの記事およびCryptography FAQのサイトがお勧めである。

Rui Lopesはポルトガル人Webデザイナであり、独立系の映画製作も手がけると同時に、様々な分野の最新テクノロジを常に追いかけ続けている。

NewsForge.com 原文

最終更新:2007年07月01日 19:05