空のDNリストを持つ証明書要求メッセージを受信したときのSSL/TLSクライアントの適切な動作は何ですか?
自然に見える2つの可能性があります:1)空の証明書メッセージを送り返す2)すべての可能な証明書の中から証明書を選択する(またはユーザーに選択を促す)
正しい動作は1つだけですか、それともどちらのオプションでも問題ありませんか?私の目標は、コード(.Net、WCF)でサーバーに証明書を提供することです。証明書を送信しないという一見デフォルトの動作をオーバーライドするために、クライアント側で変更を加える必要があるかどうかを判断しようとしています。 DNリストを実際に送信するには、サーバー側で変更を加える必要があります。
ブラウザはオプション2を選択するようですが、WCFと.Netを使用するコードはオプション1を使用しています。ストアから証明書を選択できますが、TLSハンドシェイクで送信されていません。
TLS 1.0および1.2仕様(RFC 2246および5246)は、この状況に関するガイダンスを提供していないようです。