私はサーバーにhttps要求を行う小型のスタンドアロンプログラムを実装する予定です。クライアントで有効なSSL証明書が必要ですか?その場合、SSLハンドシェイクはどのように機能しますか?クライアントにSSL証明書を持たないセキュリティ上の問題はありますか?クライアント(Java、C++など)で正常なhttps接続を確立するために有効なデジタル証明書が必要ですか?
答えて
通常、ネットワークトラフィックを暗号化する以外に、HTTPSはサーバーの認証に使用されます。つまり、クライアントがサーバーの所有者に関する情報を安心して提供できるようにするために、クライアントはサーバーによって発行された証明書の信頼チェーンを検査する必要があります。これを自動的に行うには、クライアントマシンに、サーバーの証明書を発行した証明機関を記述した証明書がインストールされている必要があります。通常、このような証明書は "信頼されたルート証明機関"と呼ばれる店舗のマシン上にあり、ほとんどのOSには共通のCAがすでにインストールされています。
さらに、多くのWebサーバーでは、クライアントがクライアント証明書を提供することによってサーバーに対して自身を認証できる機能を提供しています。 Webサーバーは、クライアントから送信された証明書を検査し、サーバー上の一連の権限にマップすることができます。この "クライアント認証"は、動作中のHTTPSセッションには必要ありませんが、単なる選択肢です。
要するに、あなたは実際には、クライアント上でにすべての証明書は必要ありませんが、おそらくは、サーバーのIDを検証するために、ルートCA証明書を持っていることになるでしょう。その証明書を持っていない場合は、サーバーを信頼することはできません(そうする別の理由がある場合を除きますが)とにかくデータを交換することもできます。
HTTPS接続を確立するための証明書は必要ありませんが、通信相手と知りたい場合は、必要があります。
クライアント証明書は、サーバーに必要な場合にのみ必要です。クライアント証明書により、サーバーはクライアントを認証できますが、これはサーバーに許可されたすべてのクライアントのリストがある場合にのみ有効です。これは一般的にWebサーバーの場合には当てはまりませんので、クライアント証明書を要求することはまれです。
存在する場合、クライアント側の証明書は、セキュリティで保護されたチャネルの確立に影響を与えません。 (サーバーの証明書のみが必要となり、クライアント証明書を追加してもプロセスは変更されません)。セキュリティで保護されたチャネルが確立されると、サーバーはクライアントの証明書を使用してクライアントを認証しますキーまたは名前に許可されたクライアントのリストを含む)。
あなたはHTTPSハンドシェイクとどのような交渉されるの詳細を学びたい場合は、私は完全にあなたがこの素晴らしい書き込みアップでmoserware
http://www.moserware.com/2009/06/first-few-milliseconds-of-https.html
- 1. wp7の証明書とのHTTPS接続を確立する
- 2. カスタム証明書を使用してHTTPS接続を確立する
- 3. Androidでhttpsを実行するプライベート証明書が必要ですかjava
- 4. WCF - クライアントの認証にサービス証明書が必要ですか?
- 5. MonotouchでHTTPSクライアント証明書
- 6. javaキーストアで証明書の有効期限を確認する
- 7. HTTPSリクエストがiOS Safariで証明書を確認できない
- 8. TCP接続を確立するために必要なTCPセグメントの数はいくつですか?
- 9. ASP.NET有効なDBの確認に必要な正規表現
- 10. iOS配布証明書を作成するためにはどのような役割が必要ですか?
- 11. IE7とIE8でデジタル証明書が見つからない
- 12. Javaサーバー自己署名証明書+クライアント証明書とSSL接続のリセット
- 13. HTTPSプロキシが正常に接続を管理しない
- 14. HTTPS Webサイトに正常に接続するための手順
- 15. SSLクライアント - いつ証明書が必要ですか?
- 16. httpsクライアント証明書ログアウト/ relogin
- 17. GlassFishでオプションのクライアント証明書要求を有効にする方法は?
- 18. C#でSSL接続を確立するときに無効な資格情報を確認するには
- 19. https接続の証明書を追加するには
- 20. Mono C#HTTPs(XMLRPC.NET)エラー:クライアント証明書またはサーバー証明書の問題?
- 21. javaセキュリティ上の問題ページにクライアント証明書が必要です
- 22. クライアントが証明書に合格しない場合のhttps接続の安全性
- 23. アップルプッシュ証明書 - 無効な証明書署名要求
- 24. ディレクトリサービスマッピング(Active Directory)に適したクライアント証明書が必要ですか?
- 25. HTTP(HTTPSを使用しない)を介したクライアント証明書の認証
- 26. クライアント証明書を無効にする
- 27. TCP接続を確立した後、サーバはクライアントにRSTメッセージを送信しますが、なぜですか?
- 28. が必要ですウェブサイトにSSL証明書が含まれているかどうかを確認する必要がある場合は、PHPスクリプトを使用した証明書の有効期限はどうですか?
- 29. c#web api - HTTPSでWebアプリケーションを実行しています - 証明書とSSLを有効にしましたが接続が拒否されました
1良い質問を見てお勧めします!私はその答えを知らないが、私は人々の言うことを聞くことに興味がある。 – samoz