6

私たちはRESTサービスを展開しようとしています(サービスはインターネットに面していません)、そしてsslを使用してそれを保護したいと思います。このためには証明書が必要であり、作業を簡単にするために、インストール時にルートCAを作成しています。

これは良い考えですか?自己署名証明書を使用することの長所と短所は何ですか?これは良い習慣ですか?

私はこの分野の初心者ですので、愚かなことを聞​​いたら、優しくしてください!

4

3 に答える 3

4

自己署名証明書を使用する利点は、開発時に少しお金を節約できることです。短所は、クライアントの作成を難しくしたり、ユーザーに「大きな怖い警告」をクリックするように要求したりすることです。BSWは中間者攻撃などの攻撃者からの保護の重要な部分であるため、ユーザーにBSWをクリックするように指示しないことを強くお勧めします。

ほら、単純な本物のシングルホスト証明書を取得するのは本当に安いです(年間数ドルのように)。その少量を節約しようとする価値はありません。プライベートCAを設定し、すべての標準CAのサポートをオフにする場合が価値がありますこれはパラノイアですが、プライベートCA証明書を配布してクライアントにインストールするという苦痛に耐えられる高セキュリティ構成では許容できます。しかし、通常は安い証明書を購入するのが賢明です…</ p>

于 2013-01-29T15:33:13.587 に答える
3

SSLは「メカニカルアドバンテージ」として暗号を使用します。基本的に、信頼されたルートCAを使用して、サーバーがサーバーであるとサーバーが言っている人物であることを検証することにより、証明書の信頼性を保証します。

自己署名証明書を使用する場合、これは、ユーザーが警告メッセージをクリックするだけの場合よりもはるかに悪いです。これは、証明書が保護を提供しないことを意味します。中間者攻撃を仕掛け、自己署名証明書を使用してサービスを提供できる人。証明書自体を検証する信頼の鎖がないため、クライアントは、証明書が中間者の影響を受けているかどうかを判断できません。

これで、独自のルートCAを操作して、ここでセキュリティを復元できます。その場合、ルート証明書をクライアントマシンに伝達するための信頼できるセキュリティで保護されたチャネルが必要です。ただし、プラス面として、クライアントは、サービスを検証するためにVerisignなどのサードパーティのCAを信頼する必要はありません。

于 2013-01-30T17:34:39.233 に答える
1

自己署名証明書とCAによって発行された証明書の主な違いは、信頼の連鎖です。自分の証明書に署名する場合、自分や他の人がそれを使用するときは、証明書に署名したサーバーを特に信頼する必要があります。これを行う方法は、ブラウザ(Firefox、またはMSIEまたはChromeの場合はMicrosoftのCAPIストア)の「信頼できるCAルート」のリスト、またはJavaアプリケーションの場合はcacertsファイルに証明書を追加することです。そうしないと、自己署名証明書が信頼されず、その環境(Javaまたは特定のブラウザ)でのセキュリティ設定の厳格さに応じて、「警告」またはエラーメッセージが表示されます。

CAによって署名された証明書では、証明書に署名したCA、またはCAの信頼されたルート(そのCAの証明書に署名したルート)のいずれかがすでに関連するトラストストア(ブラウザーまたはJava用のcacertsファイル)。MicrosoftとOracle(Javaの場合)は、侵害または取り消されたCAまたは機関に対して、信頼できるCAを常に更新し、CRL(証明書失効リスト)を管理しています。

通常、これらの信頼できるCAの1つ(verisign、entrustなど)は、証明書の署名と発行に対して$$を請求し、有効期間が長いほど、請求額が高くなります。

自己署名は無料で、長期間発行される場合があります(ただし推奨されません)。

于 2014-01-16T16:36:36.277 に答える