web-dev-qa-db-ja.com

クライアント側の暗号化キーをkeybase.ioにアップロードする際の問題は何ですか?

私はkeybase.ioに関するいくつかの記事を読んでいました:

そして、私はこの声明について混乱しています:

「クライアント側の暗号」かどうかにかかわらず、秘密鍵をアップロードしていないことを願っています。

あなたの秘密鍵が実際にクライアント側で暗号化されていると仮定すると、それをアップロードする際の問題は何ですか?

もちろん、偏執的である私は特にkeybase.ioで使用するためのキーを作成しました...

5
Wayne Werner

あなたの秘密鍵が実際にクライアント側で暗号化されていると仮定すると、それをアップロードする際の問題は何ですか?

秘密鍵は通常暗号化されています(必ずしもそうとは限りません)。とにかく、秘密鍵は「通常の」パスフレーズよりもはるかに強力であり、秘密鍵に対するブルートフォース攻撃を可能にします。暗号化された秘密鍵を共有すると、セキュリティが積極的に損なわれます。

パスフレーズを使用した秘密鍵の暗号化は、偶発的な漏洩に対する追加の保護と見なされるべきであり、公開(またはその他の信頼できないもの)と安全に共有する方法ではありませんkeybase.ioのようなエンティティ)。

しかし、それだけではありません:秘密鍵の共有に実際に使用することはできません。他の人が関わるすべての暗号化操作は、公開鍵を共有するだけでよい(共有する必要がある)ことに基づいています。メッセージの暗号化は公開鍵を使用して実行され(秘密鍵は復号化にのみ使用されます)、秘密鍵によって発行された署名は公開鍵を使用して検証されます。実現したいものがすべて、自分のマシン間で秘密鍵を共有する場合は、「クラウド」サービスなどの非公開チャネルを使用しない方法を選択することをお勧めします。秘密鍵はめったに変更されないことを忘れないでください。通常、オフラインでの送信にある程度の労力を費やすことは、過度に面倒なことではありません。 サブキーを使用してキー管理を簡単にすることを検討してください

4
Jens Erat