web-dev-qa-db-ja.com

Javaキーストアを弱いパスワードで保護している場合、リスクは何ですか?

私の理解から、Javaキーストアには証明書情報が含まれていますが、この情報は公開されています(つまり、ローカルマシンに信頼してほしい他のマシン証明書)。

これ以外に何か欠けているものはありますか?脆弱なパスワードでキーストアを保護するリスクは何ですか?

更新

この質問でトラストストアを参照している可能性があることに気づきました。どうやらキーストアには秘密鍵も含まれているようです。これを確認できれば、弱いパスワードを使用してパスワードを保護する問題が何であるかが簡単にわかります。

7
user1301428

Javaキーストアには証明書情報が含まれています

より正確には、公開鍵または鍵のペア(公開鍵と秘密鍵)が含まれます。キーストアはパスワードで保護されており、すべての秘密鍵もパスワードで保護されています。ただし、パスワードを変更または削除することはできます。それはあなた次第です。 Javaキーストアは、Webブラウザーの独立したキーストアのようなものです。

Mozilla -> Edit -> Preferences -> Advanced -> Certificates,
Chrome -> Settings -> Advanced Settings -> HTTPS/SSL

このような証明書マネージャーは、証明書、人々の公開鍵、サーバーまたは公開鍵でもある認証局証明書を管理します。これらはブラウザのキーストアに格納されます。

しかし、この情報は公開されています(つまり、ローカルマシンに信頼してほしい他のマシン証明書)

公開は、保護を必要としない唯一の鍵であり、公開鍵です。秘密鍵は公開されておらず、パスワードで保護されています。

キーをいつ使用するか、盗まれたときに情報を簡単に抽出することはできません。したがって、キーストアはセキュリティの強化です。

しかし、あなたは一般的に信頼のレベル、または 信頼メトリック について話します。

これを行うには、秘密鍵も理論的に推測できるため、セキュリティが100%でないことを知っておく必要があります。 Top500 Supercomputer Sites にリストされている今日のスーパーコンピューターが33,862.7 Tera Flops/sである場合、秘密鍵がブルートフォースになる可能性があります。理論的には、コンピュータ/ラップトップが盗まれたり、キーストアが盗まれたり、パスワードが trojan によって読み取られたりする可能性があります。

あなたは、私のキーストアが盗まれて解読されるリスクはどのくらい高いのか、それを防ぐために何ができるのかと尋ねるでしょう。これは多くの場合、労力と価格の問題でもあります。

リスクが高い場合は、分離したディスク(ペンドライブなど)にキーストアを保存し、長い複雑なパスワードを使用し、特別な保護されたマシンを使用して接続する必要があります。

3
user36486

トラストストアについて話している場合、そのリスクは、誰かがトラストストア内の証明書を表示または盗むことではありません。リスクは、誰かがあなたが信頼したくないストアに証明書を追加することです。ストアは、最初にOS権限で保護する必要があります。パスワードは追加の保護です。

4
user93353

クライアント側の認証を実行するために、キーストアに証明書のチェーンを保持するときは、強力なパスワードを用意することが重要だと思います。一部のサーバー、つまり銀行のサーバーでは、信頼できる接続を確立するためにクライアント認証が必要です。「あなたが私だと思うクライアントであることを証明してください」これらの証明書を鍵ストアに入れて、他のアプリケーションがそれらを保持できないようにする必要があります。たとえば、Androidのようなモバイルプラットフォームについて考えています。しかし、私が間違っていれば私を訂正してください。

私の経験では、公開証明書は通常、キーストアに格納されていません。

お役に立てば幸いです。

1
4oxer