2007-12-24

JanusDG-1.0.11 マニュアル

ソフトウェアの概要

JanusDGは、データを安全に移送するために開発された暗号化ソフトウェアです

特長

  • パスワード管理のわずらわしさ(=従来型暗号の弱点)がありません
  • 公開鍵暗号方式を使用しています(公開鍵暗号については後述)。
    • 取引のたびにパスワードを秘密にやりとりする必要はありません。
    • たくさんのパスワードを秘密に管理する必要もありません。 
  • 暗号化のエンジン部分にはGnuPGを使用しています 
    • UNIX/Linuxでは定番のGnuPG ( http://www.gnupg.org/ ) をエンジンにすることで、十分な暗号強度を確保しました。また、データに互換性がありますので、GnuPGとの相互運用が可能です(件数の多いデータをGnuPGでバッチ処理で暗号化し、受信側はJanusDGで復号するという運用が可能です)。
  • マウスで操作が可能です 
    • GUIを採用し、マウス主体での操作が可能となっています。
    • ドラッグ&ドロップでファイルの暗号化、復号が可能です。 

動作環境

Microsoft Windows XP/Vistaでの動作を確認しております。

使用条件

GPL3に従います。同梱のLicense.txtを参照してください。

本ソフトウェアは無保証です。

著作権表示を保持し、GPL3を適用する限りにおいて、本ソフトウェアの複製・改変・再頒布を認めます。

(同梱のgpg.exeについてもGPL3が適用されています)

著作権

GnuPGに関する部分を除き、Kazuyoshi Kakiharaが本ソフトウェアの著作権を有しています。

GnuPGについては、GnuPGのホームページhttp://www.gnupg.org/を参照してください。

公開鍵暗号について

公開鍵暗号とは、データの暗号化と復号で、対になる二つの異なる鍵を使う暗号方式です。

実際の運用にあたっては、あらかじめ自分の暗号化鍵を公開しておき、誰からのデータであっても自分宛の暗号はすべてその暗号化鍵を使ってもらうようにします。

自分は公開した鍵と対になる復号鍵一つだけを厳重秘密に管理しておきます。

従来型の暗号と比べて、

  • パスワードを相手に秘密に伝える必要がない
  • 暗号を解くためのパスワード(復号鍵)を誰かと共有しているわけではない
  • たくさんのパスワードを秘密に管理しておく必要がない

以上の点で、運用が容易で、安全性が高くなっているのが公開鍵暗号の特長です。

一般に、暗号化鍵は「公開鍵」、復号鍵は「秘密鍵」とよばれます。

JanusDGでは鍵の管理はソフトが行います。ユーザーがしなければならないことは、初回起動時の鍵作成と、あとは公開鍵の受け渡しだけです。

※公開鍵暗号は鍵を人に盗聴されても安全ですが、鍵の詐称(悪意のある人が別人になりすまして、あたかもその人のものであるかのようにして公開鍵を渡す場合など)には対応できませんので注意してください。

セットアップ

新規インストール

JanusDGを運用する専用のフォルダを作成してください。My Documents以下が好ましいですが、他の場所でもかまいません。USBキーなどのリムーバブルメディア上でも構いません。

作成したフォルダ内でJanusDGの配布アーカイブを展開してください。

フォルダ内の様子

JanusDG.exeがJanusDGの本体になります。

初回起動

JanusDGは公開鍵暗号を使用します。このため、通常使用を始める前に、対になる公開鍵(データの暗号化に使用する鍵)と秘密鍵(データの復号に使用する鍵)を作成しておく必要があります。JanusDGは初回起動時に自動的にこれらの鍵を作成します。

公開鍵暗号では一般に、2進数で1000桁以上という長い鍵が使用されるため、鍵はファイル形式で受け渡しされます。

JanusDGを初めて起動すると次のような画面が現れます。

初回起動画面

注)ここでは既に名前とメールアドレス、パスフレーズが入力されています

鍵の運用者を明示するため、名前(半角英数5文字以上)、メールアドレスの入力が必要となります。

このアドレスが実際のメール送信に使われることはありませんので、現実のメールアドレスである必要はありません。しかし、現実には、管理コストを考え、実際のメールアドレスを使用することをおすすめします。

また、パソコンを他の人と共有している場合などに備え、GnuPG(JanusDGの暗号エンジン)では秘密鍵にパスワードをかけることになっています。このためのパスワード(慣例でパスフレーズと呼ばれます)を8文字以上で、確認も含めて2度入力します。

これで、鍵ペアが作成されますが、この作成作業には最新のパソコンでも少々時間がかかります。参考までに、手元のDuron 1GHzのPCで十数秒から場合によっては1分近くが必要でした。

鍵が作成されると、今のうちに配布用の公開鍵をファイルに書き出しておくかどうか、確認するメッセージが表示されます。

鍵のエクスポートの確認

ここでYesを選択すると、配布用の公開鍵を書き出すダイアログが表示されます(ここでNoを選択しても、後から必要なときに公開鍵を書き出すことは可能です)。

書き出すファイル名の選択

これは、ユーザーの公開鍵を元に、配布用に加工された公開鍵です。以後、ユーザーは、この配布用の公開鍵を相手に配ることになります。

初回起動の際もこれ以後も、JanusDGでは、ソフトが鍵ペアの管理をしますので、ユーザーが鍵ファイルを直に目にすることはありません。直接操作することもありません。

2度目以降の起動

2度目以降はJanusDGを起動する際にパスフレーズの入力を求められるようになります。初回起動で指定したパスフレーズを入力してください。

パスフレーズ入力画面

JanusDGが起動すると、このようなメイン画面が現れます。

JanusDG メイン画面

バージョンアップ

以前のバージョンのJanusDGを使用していた人は、引き続きこれまでの鍵ペアを使用することができます。

運用フォルダの準備

JanusDGを運用するフォルダを以前のバージョンのものとは別に作成します。

配布物の展開

JanusDG-1.0.11.zipを上で準備した新しいフォルダ内に展開します。

設定ファイルのコピー

以前のバージョンの運用フォルダのconfフォルダの中身を、新バージョンの運用フォルダのconfフォルダ内にコピーします。必要に応じて、pubkeyフォルダの中身も、新フォルダのほうにコピーします。

公開鍵の受け渡し

相手に公開鍵を渡す

誰かに自分宛の暗号化データを作ってもらうには、事前に自分の公開鍵を相手に渡しておく必要があります。初回起動時に配布用の公開鍵を作成していない場合は、JanusDGを起動し、メニューの「鍵の操作」から「自分の公開鍵のエクスポート」を選んでください。

公開鍵のエクスポート

「名前を付けて保存」という画面が現れますので、適当なフォルダに公開鍵ファイルを書き出してください。

書き出すファイル名の選択

このファイルの中身は、配布用の公開鍵です。この鍵を誰かに見られたとしても、コピーされたとしても、暗号の強度に影響はありません。

メールに添付したり、フロッピーで郵送したりして、相手に届けてください。

相手の公開鍵を受け取る

データを暗号化する前に、データを送る相手の公開鍵を入手しておく必要があります。相手がJanusDGからエクスポートした鍵を受け取り、運用フォルダ内のpubkeyというフォルダ内にコピーしておいてください。

pubkeyフォルダの様子

この例ではデフォルトで含まれる「kkakihara.gpg(JanusDG開発者の公開鍵)」と「user2@example.com.gpg」という二つの公開鍵が見えています。

データの暗号化

JanusDGは、与えられたデータをもとにして、暗号化されたデータを作成するソフトです。元のデータを上書きして暗号化するわけではありません。また、公開鍵暗号を使用しているため、データを暗号化するにはあらかじめ相手の公開鍵を受け取っておく必要があります。

暗号化モードにセット

JanusDGを暗号化モードにセットします。ツールバーの「暗号化」ボタンをクリックし、ボタンが押された状態にしてください。

暗号化ボタンをクリックした様子

ファイルをドロップ

暗号化したいファイルをメインウインドウの「ここにファイルをドロップしてください」という部分にドラッグ&ドロップします。一度に暗号化できるファイルは一つだけです。また、フォルダごとの暗号化はできません。

公開鍵の指定

ファイルをドロップするとすぐに「暗号化に使う鍵ファイルを指定してください」という画面が現れますので、暗号データを受け取る相手の公開鍵ファイルを指定します。

公開鍵ファイルの指定

この例では、user2@example.com.gpgという鍵を選択しています。

暗号化後のファイルの名前の指定

続いて「暗号化後のファイルを指定してください」という画面が現れますので、暗号化後のファイル名を指定してください。

暗号化後のファイル名の指定

ここでファイル名を指定して「保存」をクリックすると暗号化が始まります。ステータスバーに「ファイルを暗号化しました」と表示されたら暗号化完了です。

暗号化時に自動的に署名する設定になっている場合は、ここで署名済みの暗号データが作成されます。

データの復号

JanusDGは、与えられた暗号データを元に、復号されたデータを作成するソフトです。元のデータを上書き復号するわけではありません。

復号モードにセット

JanusDGを復号モードにセットします。ツールバーの「復号」ボタンをクリックし、ボタンが押された状態にしてください。

復号ボタンをクリックした様子

ファイルをドロップ

暗号化されたファイルをメインウインドウの「ここにファイルをドロップしてください」という部分にドラッグ&ドロップします。一度に復号できるファイルは一つだけです。

署名検証のための公開鍵の指定

JanusDGでは、暗号ファイルを作成した本人を確認するため、暗号ファイルの署名を検証することができます。

そのためには、事前に相手の公開鍵を受け取っておき、なおかつメニューの「設定」の「復号時に署名検証しない」のチェックが外れている必要があります。

復号時に署名を検証する設定になっている場合、ここで署名検証のための公開鍵を指定する画面が現れます。

公開鍵の指定

暗号化データを作成した人の公開鍵をここで指定してください。

復号後のファイルの名前を指定

「復号後のファイル名を指定してください」という画面が現れますので、復号後のファイル名を指定してください。

復号後のファイル名の指定

ここでファイル名を指定して「保存」をクリックすると復号が始まります。ステータスバーに「ファイルを復号しました」と表示されたら復号完了です。

復号時に署名をする設定になっている場合、ここで署名の検証も行われます。署名の検証に失敗した場合、「署名の検証に失敗しました」というエラーが表示されますが、ファイルは復号されますので注意してください。

署名作成

公開鍵暗号の応用技術です。ファイルを暗号化するのではなく、電子署名を付けることによって正真性(本人が作成しており、移送途中に変更が加えられてはいないこと)を証明することができます。たとえば、身分証明書など、誰もが読める状態でなければ困るが、データの正真性だけは保証しておきたいというような場合に使います。

データが偽造されていない証拠として、チェックサムをさらに複雑化したような署名ファイルをJanusDGは作成することができます。相手はやはりJanusDGを使用して、データの正真性を確認することができます。

署名作成モードにセット

JanusDGを署名モードにセットします。ツールバーの「署名作成」ボタンをクリックし、ボタンが押された状態にしてください。

署名作成ボタンをクリックした様子

ファイルをドロップ

署名したいファイルをメインウインドウの「ここにファイルをドロップしてください」という部分にドラッグ&ドロップします。一度に署名できるファイルは一つだけです。

署名ファイルの名前の指定

「署名ファイルの名前を指定してください」という画面が現れますので、作成したい署名ファイルの名前を指定してください。

署名ファイルの名前の指定

ここで「保存」をクリックすると署名ファイルが作成されます。

相手には元のファイルと署名ファイルをセットにして届けます(初めての相手には自分の公開鍵もあわせて届ける必要があります)。

署名の検証

相手から受け取ったファイルを、それに添付された署名ファイルと照合することによって、正真性を検証します。

これにはあらかじめ相手の「公開鍵」を入手しておく必要があります。

署名検証モードにセット

JanusDGを署名検証モードにセットします。ツールバーの「署名検証」ボタンをクリックし、ボタンが押された状態にしてください。

署名検証ボタンをクリックした様子

ファイルをドロップ

署名を検証したい、対象のファイル本体(署名ファイルではありません)をメインウインドウの「ここにファイルをドロップしてください」という部分にドラッグ&ドロップします。一度に署名検証できるファイルは一つだけです。

署名ファイルを指定

「署名ファイルを指定してください」という画面が現れますので、ファイル本体と対になる署名ファイルを指定してください。

署名ファイルの指定

公開鍵ファイルを指定

続いて、「検証に使う公開鍵ファイルを指定してください」という画面が現れますので、ファイルに署名した人の公開鍵ファイルを指定してください。

公開鍵ファイルの指定

ここで「開く」をクリックするとファイルの検証が始まり、問題がなければ「正当なファイルです」と表示されます。

受け取った公開鍵が本物かどうかの確認

緊急の場合、電子メールなど、途中で改ざんされる恐れのあるような方法で公開鍵をやり取りすることがあるかもしれません。このような場合、公開鍵を使用する前に、それが本当に本物かどうかを確認する必要があります。

電話、FAX等、安全な通信経路が確保されている必要があります。

公開鍵を送った側の操作公開鍵を送った側はJanusDGを起動し、メニューの「鍵の操作」から「自分の鍵指紋を見る」を選択し、「鍵指紋」を表示させます。

自分の鍵指紋の表示
表示された自分の鍵指紋

この例ではUser1 Exampleの鍵指紋が表示されています

公開鍵を受け取った側の操作公開鍵を受けとった側はJanusDGを起動し、メニューの「鍵の操作」から「受け取った鍵の情報を見る」を選択し、受け取った鍵ファイルを指定することで、受け取った鍵の鍵指紋を見ることができます。

受け取った鍵の指紋を見る
鍵ファイルの選択

この例ではKazuyoshi Kakiharaの鍵指紋を見ようとしています

表示された鍵指紋

ここで表示されているのはKazuyoshi Kakiharaの鍵指紋です(上記のUser1 Exampleとは鍵指紋が異なっています)

パスフレーズの変更メニューの「鍵の操作」から「パスフレーズの変更」を選択してください。

設定項目

メニューの「設定」で設定できる項目があります。

暗号化時に自動署名しない

この項目にチェックが入っていると、データを暗号化する際に電子署名がされません。

復号時に署名検証しない

この項目にチェックが入っていると、データを復号する際に署名が検証されません。署名検証に関するダイアログも表示されません。

鍵のバックアップ

JanusDG運用フォルダ内のconfというフォルダ内に自分の秘密鍵を始めとした設定情報が格納されています。

また、受け取った公開鍵は基本的にpubkeyフォルダに格納されているはずです。

これらのフォルダをまるごとどこかの媒体にコピーすれば、バックアップになります。

バックアップからのデータのリストアには、これらのデータを元の位置に上書きコピーします。

同梱のファイルについて

binフォルダ内にGnuPGの構成物であるgpg.exeが含まれています。

同ソフトについては、GnuPGのライセンスが適用されます。

GnuPGについては、GnuPGのホームページhttp://www.gnupg.org/を参照してください。

Kazuyoshi Kakihara