5

ポートをリッスンし、ssl で認証する単純なサーバーを作成しようとしています。ファイルがあります

server.crt
server.key
my-ca.crt

openssl チュートリアル ( http://www.vanemery.com/Linux/Apache/apache-SSL.html ) で取得します。my-ca.crtは自分の CA 証明書でserver.crtあり、x509 サーバー証明書 (my-ca.crt で署名) を含みserver.key、対応する秘密鍵です。

これら 3 つのファイルを c# で読み込む方法がわかりません。私は次のようなものを持っています

serverCertificate = new X509Certificate2("server.crt", "secret_password");
sslStream.AuthenticateAsServer(serverCertificate, false, SslProtocols.Tls, true);

これは機能しません(私は

Unhandled Exception: System.NotSupportedException: The server mode SSL must use a certificate with the associated private key.

server.key)しかし、および/またはを追加する方法がわかりませんmy-ca.crt

4

1 に答える 1

3

X509Certificate2フォームで使用するには

serverCertificate = new X509Certificate2("server.pfx", "secret_password");

証明書は PKCS12 形式で保存する必要があります。http://www.madboa.com/geek/openssl/#cert-pkcs12およびhttp://www.openssl.org/docs/apps/pkcs12.htmlを参照してください。

于 2010-07-12T16:49:33.690 に答える