今回は本格的な暗号化ツールとしてOpenSSLを使ったファイルの暗号化について紹介します。以前にもファイルの暗号化について触れました(ZIPファイルの暗号化機能「大切なファイルを暗号化してDropboxやHDDへ定期的にバックアップしよう!」)が、世の中には、暗号化したZIPファイルのパスワードを見破るソフトが多く存在します。これらのソフトを使えば暗号解読の専門家でなくてもZIP暗号を解くことが可能です。そのため、Dropboxのパスワードが外部の人に漏れた場合や、ハードディスクが盗難にあった場合などに備えて、重要なファイルには、強力なパスワードをかけておくと安心です。

 そこで今回は、暗号化ZIPよりも強力なOpenSSLを使用してファイルを暗号化します。

OpenSSLとは?

 SSLとはインターネット通信で情報を暗号化するための規約で、プライバシー情報やクレジットカード情報を送受信するときなどに利用されています。IEやFirefoxなどのWebブラウザーはサポートしています。

 OpenSSLは、オープンソースとして開発されたSSLのプログラム。暗号化のためのライブラリを備えており、Windows や Linux、Mac OS Xなど多くのOSで利用できます。暗号化方式には、Blowfish、AESや、RSA、DSA などさまざまなものが備わっています。

プログラム~OpenSSLのフロントエンドを作る

 今回作るプログラムは、コマンドライン版のOpenSSLを利用します。OpenSSLは多くの機能を持っているので、コマンドラインに慣れてないと扱うのが面倒です。そこで、なでしこのプログラムはこの操作を自動で行うようにします。こうしたコマンドラインのプログラムを操作するGUIプログラムを「フロントエンド」と呼びます。即ち、今回は、OpenSSLのフロントエンドを作るということになります。

【準備】OpenSSLのインストール

 Windows 版のOpenSSL は、以下よりダウンロードできます(英語)。「Win32 OpenSSL v0.9.*l」(*はバージョン番号)を探してダウンロードの上、インストールしてください(ここでは、0.9.8を対象にします)。

- Win32 OpenSSL
 http://www.slproweb.com/products/Win32OpenSSL.html