web-dev-qa-db-ja.com

公開鍵はどのように配布すればよいですか?

GPGの使用を開始し、公開鍵を作成しました。だれもそれを知らなければ意味がありません。どのように配布すればよいですか? FacebookやLinkedInのプロフィールに投稿する必要がありますか?私のブログはどうですか?リスクは何ですか?

193

キーを配布する最良の方法は、 keyserver.ubuntu.compgp.mit.ed または などの使用可能なキーサーバーのいずれかを使用することです。 keyserver.pgp.com

Seahorse (Ubuntuのデフォルトのキーマネージャー)を使用する場合、キーはこれらのサーバーの1つに自動的に同期されます。その後、ユーザーはメールアドレスまたはキーIDを使用してキーを検索できます。

LinkedInまたはブログに公開鍵を投稿する場合は、サーバーに鍵をアップロードするか、上記のいずれかの鍵サーバーの鍵のページにリンクするだけです。個人的には、キーサーバーの1つにアップロードしてリンクします。ファイルをさまざまな場所にロードするのではなく、1か所で最新に保つ方が簡単だからです。キーIDを他の人と共有することもできます。その場合、その人はgpg --recv-keysを使用してキーを受け取ることができます。

Facebookに公開鍵を投稿する場合は、プロフィールの[連絡先情報]セクションの下に配置するためのフィールドがあります。 Facebookのセキュリティ設定を変更して、この同じ公開鍵を使用して自分宛ての電子メールを暗号化することもできます。

たとえば、以下は my public key です。

私の知る限り、公開鍵の公開に関連するリスクはありません。

107
Mark Davidson

あなたと@Markが説明した方法で公開鍵を公開することにより、秘密鍵を公開したり、公開鍵を無効にしたりするリスクはありません。 @pboinが述べたように、世界中で利用できるように設計されています。

ただし、別の問題もあります...公開鍵を所有して公開する主な目的の1つ(実際、これはおそらく主な目的です)は、他のユーザーに対して自分自身を認証し、任意のユーザーの真正性を確認できるようにすることですあなたが署名したメッセージやデータ、そしてあなたの目のためだけにデータを保護/暗号化してください。
しかし、それらのユーザーは、それが本当にあなたの公開鍵であることをどのようにして知るのでしょうか?たとえば、プライベートメッセージを@Mark Davidsonに送信するには、公開されているキーを使用して http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xE493B06DD070AFC8 、そのキーを公開したのは[〜#〜]本物[〜#〜]マークデビッドソンであるか、またはそこに私をポイントしたかをどうやって知るのですか?
自分の公開鍵をmit.edu、LinkedIn、Facebookなどで公開し、自分をBill Clinton(またはBill Gates)と呼ぶのは簡単です。他にどのようにして知ることができますか?
さらに、どういうわけか私がこれが本当に適切な人物であるとわかっている場合(たとえば、彼のブログで公開されているpkを介して匿名のブロガーに連絡したい-私はしません彼が本当は誰であるか、サイトの所有者、つまりpkパブリッシャー-とにかく正しい人です)-公開鍵が途中で改ざんされていないことを保証するにはどうすればよいですか?これまでに言及したすべてのリンクとサイト(PGPキーサーバーを除く)はHTTPです。つまり、チャネル保護はありません。つまり、サーバーとブラウザー間で簡単に変更できます。

X.509/PKIモデルを使用する場合、常にtrustedが保証します。例えば。よく知られた認証局(ブラウザーベンダーがそれらを吟味し、ルート証明書をブラウザーの信頼されたルートストアに追加したため信頼されています)があなたの身元を確認し、公開鍵に署名/certificate。したがって、本人であることを確認したい人は、あなたが本人であることを確認し、署名を確認し、保証している人の身元を確認することができます(その後、既知の信頼されたルートCAが見つかるまで繰り返します)。

ただし、PGPモデルでは、通常no中央の信頼できる機関があります(現在のバージョンでは許可されています)。代わりに、PGPは信頼できるWebモデルに基づいています。このモデルでは、誰かを信頼する場合、他の人のIDを順番に保証できます。

とにかく、公開鍵をそこに置くだけでは、誰もがあなたの身元を確認するのに役立ちませんし、暗号化されたメッセージが正しい人だけに表示されることも保証されません。

あなたができること:

  • あなたと@Markが言ったようにあなたの公開鍵を公開します-しかし、安全なチャネルを介して公開鍵token(基本的には指紋のような公開鍵のハッシュ)を提供します。例えば。これは、あなたが個人的に知っている場合に電話で読むのに十分なほど短いです...誰かが彼のpkトークンを自分の名刺に付け、会議を手渡したのを見ました(確かにこれはベンダーからのものでした)。
  • 電子メールへの署名を開始し、アウトオブバンドチャネル(たとえば、電話または直接gasp!)を通じて、それが自分の署名であることを受信者に確認します。 !))
  • 状況を複雑にして、標準のX.509証明書を取得し、SSL(できればEV)をWebサイトに実装すると、そのドメイン名を所有する人からだとわかっているので、だれでもpkを安全にダウンロードできます...大企業に適しています...)
    Microsoftのチェック方法 それを行う ...

それはさておき、それはこのpkが何のためにあるかに本当に依存します-それがあなたの母親を驚かせるためだけなら、それからすべてに気をつけないでください:)
その一方で、本当に機密性の高い通信がある場合、またはセキュリティを意識したクライアントとの場合は、上記すべてが重要です...

79
AviD

一般的な解決策は、それを keyserver にアップロードすることです。別の良いアイデアは、 Biglumber にエントリを作成することです。これは、他の人と連絡を取り、おそらく他の鍵に署名するのに役立ちます。

さらに、受信トレイを調べて、すでにメールに署名している連絡先を探す必要があります。キーを持っていることを非公式のメールで送信し、リソースを指定することができます。

キーに関するブログエントリも問題ありません。キーをダウンロードするためのリンクを提供する必要があります。

メールで署名を使用している場合は、新しいキーをポイントし、もちろんeveryメールに署名できます。

キーサーバーにアップロードされた後(および配布された後)、キーを削除することはできません。もちろん、取り消すこともできます。さらに、スパマーがそれらの電子メールアドレスを探して、いくつかの「素敵なオファー」を送信すると想定されています。キー署名を行い、新しい署名をアップロードすると、署名により、特定の日付にどこにいたかが明らかになります。

27
qbi

キーのメールアドレスはすべてパブリックWebインターフェースに表示されます。キーのメールに大量のスパムが届いたため、現在のメールアドレスがキーに付けられませんでした。

11
allo

「配布」の質問に対する簡単な答えは、自分と目的の受信者にとって便利な方法を使用し、プライバシーの観点からニーズを満たすということです。例えば。キーサーバーは多くの受信者への配布に便利に使用できますが、ubiが指摘するように、典型的なキーサーバーはuid(通常はあなたの電子メールアドレスを持っています)をスパマーに常に公開します。

much難しい質問は、攻撃を容易にする偽造されたものではなく、受信者がどのようにして正しい鍵を受け取ったかを確認することですか?鍵のfingerprintを他の人と「帯域外」で交換したい場合があります。電話で。または、「信頼の網」、つまり目的のために信頼する人々の一連の署名に依存することもできます。その他のヒントについては、次の質問をご覧ください。

7
nealmcb

公開鍵の配布は、まだPGP/GPGの未解決の問題です。

公開鍵サーバーへのアップロード

  • 他の人はあなたの鍵に関連して見たくない侮辱的なテキストやコンテンツであなたの鍵に公開で署名することができます
  • 多くのユーザーはパスワードを忘れるか、失効キーを失い、メールアドレスを変更して、古いキーを削除できなくなります。
  • これらのサーバーからキーまたは署名を削除することはほぼ不可能です
  • キーサーバーからのデータを分析するためのデータマイニングツールが存在します
  • 名前、メール、友達、タイムスタンプなどの多くのメタデータをサポートしているため、トリミングが簡単で非常に興味深いため、公開鍵サーバーのアドレスに少し多くのスパムを送ります。
  • ...しかし、誰でもあなたの公開鍵をキーサーバーにアップロードできます。これは意図的に、または偶然に起こる可能性があります。ほとんどのPGPツールは、インポートされた公開鍵のアップロードをサポートしており、十分に長く待つと、誰かがそれをアップロードして、あなたに気付かれずに鍵に署名します。

自分のウェブサイトにアップロード

  • ユーザーはキーを削除または変更できます
  • 受信者の信頼できるWebサイトから鍵をダウンロードすることは、本物の鍵の別の指標になる可能性があります
  • pGPの多くの専門ユーザーがこの方法を選択しました(あまりに)
  • webサイトの連絡先の横にキーを配置すると、PGPの使用が通知されます

パーソナルミーティング

詳細については、以下を参照してください。

6
Jonas Stein

配布に関しては、それは本当にあなたの聴衆に依存します。私の楽天家は、人々が私のキーを使ってメッセージを暗号化し、私の署名をチェックすることを熱望することを望んでいます。実際のところ、それを管理することは問題ではありません。私はそれを私のブログと要求に応じて提供することで、非常にうまくいきました。

リスクに関しては、世界中ですぐに利用できるように設計されています。これらの懸念事項は、秘密鍵の保護に集中してください。その周りにパスワードを置き、慎重に保護してください。

6
pboin

Linuxでは、次のコマンドを使用できます。

$ gpg --keyserver hkp://keyserver.ubuntu.com --send-key "your key_index or email"
$ gpg --keyserver hkp://pgp.mit.edu --send-key "your key_index or email"
$ gpg --keyserver hkp://pool.sks-keyservers.net --send-key "your key_index or email"

そして、それを別のサーバーに送信しました。彼らはあなたのキーを伝播します。

4
John