0

SSL_get_verify_result関数 " " について提示されたオープン SSL ドキュメントから : http://www.openssl.org/docs/ssl/SSL_get_verify_result.html /apps/verify.html

SSL ホストの不一致エラーが発生した場合、これらのエラーのうちどれが呼び出されるのでしょうか? つまり、証明書のホスト名とリクエストのホスト名が異なりますか?

また、実際に無視しても安全なエラーはどれですか?

4

1 に答える 1

0

SSL_get_verify_resultは、ホスト名の不一致の検索を行いません。証明書に含まれる複数のCNとサブジェクト代替名(SAN)を考慮して、手動で行う必要があります。

複数のCNを処理するために使用できる関数は次のとおりです。

int lastpos = -1; lastpos = X509_NAME_get_index_by_NID(X509_get_subject_name(cert)、NID_commonName、lastpos); X509_NAME_get_entry(X509_get_subject_name(cert)、lastpos);

新しいlastposを使用してX509_NAME_get_index_by_NIDを再度呼び出すと、使用可能なCNがもうないことを示す-1が返されるまで、次のCNが得られます。

この関数は、を使用X509_NAME_ENTRY *するように変換できるを提供します。char *ASN1_STRING_to_UTF8

SANおよびCNに含まれるワイルドカードを必ず考慮してください。

于 2012-08-10T08:55:07.420 に答える