Thunderbird におけるエンドツーエンド暗号化の紹介

このドキュメントでは、概要について説明します。質問と手順については、別のドキュメントも参照してください: OpenPGP in Thunderbird - HOWTO and FAQ

Thunderbird でのエンドツーエンド暗号化とは何か?

メールのエンドツーエンド暗号化 (以下、e2ee) を使用して、メッセージの送信者と受信者だけが内容を読めるようにできます。この保護がなければ、ネットワーク管理者、電子メールプロバイダー、政府機関が簡単にメッセージを読むことができます。

e2ee を達成するためには、送信者と受信者の両方の注意が必要であり、関係者のいずれかによる 1 つのミスでセキュリティが破られる可能性があります。

また、e2ee を使用してメールのメタデータを保護することはできません。例えば、送信者と受信者の名前とアドレス、メッセージが送信された時刻、コンピューターのメールが送受信された時刻などです。また、e2ee を使用してもメールの件名も保護されず、容易に判読できる可能性があります。

OpenPGP を使った e2ee の一般的な仕組み

Thunderbird はほとんどの詳細を処理するので、ユーザーがそれらについて気にする必要はありません。しかし、それがどのように機能するかを理解することをお勧めします。以下で説明されており、ミスを犯し、完全に保護されなくなるリスクを減らします。

暗号化では、数学的な手順を使用してメッセージを読み取ることができないようにします。メッセージを再び読み取ることができるようにすることを復号と呼び、関連する秘密情報を知る必要があります。

暗号化に対する古代のアプローチでは、2 人が会って秘密を共有する必要がありました。その秘密は、送信者が暗号化するためにも、受信者がメッセージを復号するためにも使用されます。

メール用の e2ee では、公開鍵暗号と呼ばれる近代的な手法が使用されています。公開鍵暗号で e2ee を使用するには、送信者と受信者全員が 1 回の準備を行う必要があります。これには、個人の乱数の生成が含まれます。このような乱数は 2 つ必要です。1 つは秘密鍵、もう 1 つは公開鍵と呼ばれます。これらの数字は非常に大きく、数百桁から数千桁で構成されています。

巧妙な数学を使えば、公開鍵を使ってメッセージを暗号化 (解読不能化) できます。メッセージは、対応する秘密鍵を所有している人だけが復号化 (可読化) できます。つまり、公開鍵を他の人に渡した場合、その人はこの鍵を使ってメッセージを暗号化できます。その結果、あなた以外の人には読めないデータが得られます。そのデータをあなたに送信します。その後、あなたは秘密鍵を使ってデータを復号化し、メッセージを読むことができます。

秘密鍵とそれに関連づいた公開鍵のペアは、個人鍵と呼ばれます。秘密鍵は他のユーザーと絶対に共有しないでください。これは、秘密鍵が秘密ではなくなり、個人鍵でもなくなるためです。秘密鍵を他のユーザーと共有すると、そのユーザーは送信された暗号化されたメッセージを読むことができます。また、不注意で秘密鍵を保護せずに保存したり、保護せずにクラウドにバックアップしたりした場合、誰かが秘密鍵を盗み、それを使用して送信された暗号化されたメッセージをすべて読むことが容易になる場合があります。

また、コンピューターを紛失したり、コンピューター上のすべてのデータを消去したりした場合など、秘密キーを紛失した場合は、暗号化されたメッセージを読むことができなくなります。このような場合、メッセージはいかなる方法によっても、誰にも復元できません。

e2ee のセキュリティが破られる可能性のある別の方法があり、それには誤った公開鍵の使用が含まれます。次に例を示します:

アリスが暗号化されたメールをボブに送信する場合、ボブの公開鍵を取得する必要があります。公開鍵は大きな数字であるため、インターネットを介して送信するか、メールで送信するか、ウェブサイトからダウンロードするか、ディレクトリーからダウンロードする必要があります。アリスがボブの鍵を使用してメールを暗号化し、ボブが自分の秘密鍵を他の誰とも共有しないように注意している場合、ボブだけがメッセージを復号して読み取れます。

しかしながら、アリスが本当にボブの公開鍵を取得したことを確認するのは困難です。誰かがアリスとボブをだまして、監視目的で通信を傍受しようとする可能性があります。例えば、イヴは不正な鍵を作成してアリスに送信し、それをボブの鍵として提示することができます。アリスがこの鍵はボブのものであると信じ、それを使用してボブへのメッセージを暗号化すると、イヴはアリスから送信されたメッセージを読み取ることができます。これは、誰かの間違った住所を取得して、アリスからボブへの手紙がイヴの家に送られるようにすることができるようなものです。イヴはその手紙を開き、それを読んでボブに送信し、場合によっては一部を変更できます。

e2ee のセキュリティを保証するためには、不正な鍵ではなく、本当にボブの鍵を入手したことを確認することが重要です。

公開鍵を受け取るときはいつでも、それが不正な鍵の可能性があるリスクに注意してください。イヴによってだまされるリスクを負えない場合、二重チェックを行ったうえでボブの正しい公開鍵を受け取ってください。

二重チェックする一般的な方法は、実際にボブと話して確認できるメカニズムを使用して、一度ボブと通信することです。例えば、テレビ電話を使用したり、ボブの声を知っている場合は電話を使用します。あるいは、直接会うことも手段の一つです。

ボブと通信したら、受け取った公開鍵の詳細を開く必要があります。Thunderbird は、フィンガープリントとも呼ばれる特殊なチェックサムを表示します。フィンガープリントは約 40 桁の文字を組み合わせです。ボブは自分のフィンガープリントに対して同じことを行い、そのフィンガープリントをあなたに見せる必要があります。あなたは自分のコンピューターの画面を見て、それが自分のコンピュータに表示されているものと一致することを確認する必要があります。一致しない場合、間違った鍵をダウンロードしたか、誰かがあなたをだまそうとしています。実際には、あなたの通信は監視されています。完全に一致する場合は、その鍵を検証済みとしてマークすることができ、ソフトウェアはそれを記憶します。

公開鍵と秘密鍵の概念は、次のような例えで理解しやすくなります。公開鍵は、鍵をかけられる小さな箱とします。小さな箱は好きなだけ持つことができます。箱を共有したり、ダウンロードできるようにしたり、ディレクトリーに追加したりすることもできます。他の人がインターネットであなたの箱を見つけることができます。その中に秘密のメッセージを入れて鍵をかけ、その箱をあなたに送ることができます。秘密鍵は本物の鍵のようなもので、箱の鍵を開錠するために使用できます。一致する鍵を持っているのはあなただけであるため、箱のロックを解除することはあなただけです。あなたが本当にイヴの箱ではなくボブの箱を持っていることを確認したいのであれば、箱の外側に書かれた番号を見る必要があります。これはフィンガープリントと呼ばれます。ビデオチャット、電話、または直接会ってボブと話し、箱のフィンガープリントがボブの言う通りであることを確認します。

また、暗号化されたメールを使用する場合は間違いが起こりやすいことにも注意してください。アリスがボブに暗号化されたメッセージを送信し、ボブがそのメッセージをキャロルに転送する場合を考えてみてください。キャロルは e2ee を使用する準備をしていなかったり、ボブがキャロルの公開鍵を持っていなかったりする可能性があります。ボブがアリスのメッセージを暗号化せずにキャロルに転送する場合、元のメッセージの内容は保護されなくなります。したがって、機密性の高い内容をメールで交換する場合は、メールを転送しないようにように依頼する必要があります。

おまけに、e2ee で使用されている技術を使用して、メッセージにデジタル署名することもできます。メールに表示されている送信元アドレスは、ユーザーを誤解させようとするユーザーによって変更されている可能性があります。ボブがアリスにメールを送信した場合、アリスは秘密鍵を使用してデジタル署名を作成できます (内部では特別な番号を計算することで機能します)。アリスはボブの公開鍵を使用して、ボブのみがこの署名を作成できたことを確認できます。これは、ボブのみが一致する秘密鍵を所有しているためです。アリスがボブの鍵のフィンガープリントを検証し、すべての番号が Thunderbird による自動チェックに一致する場合、メッセージはボブによって送信されたものと認識されます。もちろん、ボブは秘密鍵に注意しており、決して共有していないと仮定します。

S/MIME を使った e2ee の仕組み

S/MIME は、OpenPGP と同じ概念をいくつか使用していますが、使い方は異なります。

将来、この記事は S/MIME を含まむように拡張されるでしょう。

e2ee を使用したら、どのような結果になりますか?

暗号化されたメッセージを送信する場合、送信済みフォルダー内のメッセージは暗号化されます。秘密鍵を紛失すると、アーカイブされたメッセージを読むことができなくなります。これらのメッセージは復元できません!

暗号化されたメッセージを読み取るすべてのデバイスは、同じ個人鍵を使用するように設定する必要があります。Thunderbird 以外のソフトウェアを使用している場合、そのソフトウェアはエンドツーエンドの暗号化をサポートしていない可能性があります。たとえば、暗号化されたメールを携帯電話で読み取るには、何らかの設定が必要です。

秘密鍵を紛失した場合、他のユーザーはあなたに暗号化されたメールを送信し続けることができますが、あなたはそれらを読み取ることができなくなります。

注記: 一般に、検索機能は暗号化されたメッセージの本文の内容に対しては機能しません。

Thunderbird で OpenPGP エンドツーエンド暗号化を使用するには

Thunderbird は e2ee を自動的には使用しません。e2ee を使用するには、個人鍵を設定する必要があります。設定セクションは、Thunderbird のアカウント設定の「エンドツーエンド暗号化」タブにあります。個人鍵を設定すると、送信する個々のメッセージで暗号化またはデジタル署名の使用を制御できます。

暗号化されたメールを受信するメールアドレス、またはデジタル署名されたメールの送信に使用するメールアドレスごとに、個人鍵を作成する必要があります。

複数の個人鍵を持つことは避けてください。2 つのデバイスを使用して同じメールアカウントからのメッセージを読む場合は、両方のデバイスで受信した暗号化されたメッセージを読むことができるようにする必要があります。 したがって、個人鍵は 1 回だけ生成します。次に、個人鍵をファイルにバックアップします。強力なパスワードを使用して個人鍵のバックアップを保護し、他のユーザーが秘密鍵を取得するためにバックアップファイルを使用することを困難にすることをお勧めします。バックアップファイルを他のデバイスにコピーし、パスワードを入力してバックアップのロックを解除してから、個人鍵をそのデバイスにインポートします読み込みます

メールを作成するときは、ツールバーのセキュリティーボタンの後ろに矢印が表示されます。矢印をクリックして「公開鍵を添付する」メニューを選択します。

受信者には「OpenPGP」で始まるファイル名の添付ファイルが表示されます。受信者が Thunderbird を使用している場合、そのメッセージを右クリックしてメニューを開き、そのメニューから「OpenPGP 鍵をインポート読み込む 」を選択します。

ディスカッションとサポート

Thunderbird でエンドツーエンドで暗号化されたメールについて議論したい場合、設定に関するヘルプが必要な場合、またはこのトピックに関連するその他の質問がある場合は、e2ee メーリングリストを参照してください: https://thunderbird.topicbox.com/groups/e2ee

この記事は役に立ちましたか?

しばらくお待ちください...

以下の人々がこの記事の執筆を手伝ってくれました:

Illustration of hands

ボランティア

あなたの専門知識を成長させ、他の人と共有してください。質問に答えたり、ナレッジベースを改善したりしてください。

詳しく学ぶ