2009-07-24 5 views
0

は、私はそうのように初期化さX509StoreからX509Certificate2オブジェクトをロードしています不足している:X509Certificate2:拡張機能は、C#で

 X509Store store = new X509Store("My", StoreLocation.LocalMachine); 
     store.Open(OpenFlags.OpenExistingOnly | OpenFlags.ReadOnly); 

は、私は、OpenSSLで私の証明書を作り、それが「どのような目的」に設定されています。だから私はX509Certificate2.Extensionsが空でなく、 "Server Auth"拡張を保持することを期待します。ただし、拡張機能は常に空のリストです。何か案は?

答えて

2

私は独立したソースで証明書を二重にチェックして、実際にそこにあると思うデータがあるかどうかを確認します。私は通常のWebベースのツールのいずれかを使用します。

http://www.redkestrel.co.uk/cgi/decodeCert.pl

http://www.bogpeople.com/networking/CertDecoder/

は、2つのそのようなツールです。

それがテストデータであるかX509ライブラリの使用であるかわかります。

次に、私はあなたが「何らかの目的」に設定されていることを意味するかどうかはわかりません。私はOpen SSLのドキュメントを突き抜けたので、あなたが何を記述しているのかはわかりません。鍵の使用法を定義する証明書には、鍵の使用法と拡張鍵の使用という2つの拡張があります。また、Open SSLコマンドと設定ファイルの説明には、「任意」を設定してこれらのすべてを有効にできる場所が示されていません。私はあなたが欲しいと思うことは、拡張キー使用法の拡張子に「serverAuth」の値である:

http://www.openssl.org/docs/apps/x509v3_config.html#Extended_Key_Usage_

あなたが使用される特定のopensslコマンドを投稿して喜んと証明書の生成のための設定ファイルであれば、私はおそらく可能性もっと助けてください。

+0

情報ありがとうございました。私はOpenSSLのもので直接材料を設定する方法を検討します。 「任意の目的」に設定されていると言ったとき、私はWindowsの証明書マネージャーのMMCスナップインを参照していました。インストールされた証明書の証明書のプロパティを見ると、[全般]タブに「この証明書の目的をすべて有効にする」というマークが付いています。しかし、私はどちらか他の何かを意味するか、またはちょうどランダムなMicrosoftのbamboozlementだと思う。 – evilfred

関連する問題