2009-02-23 8 views
5

私はディスクに保存した2つの証明書を持っています。 1つは.pfxファイルとしてエクスポートした秘密鍵を持つ証明書で、もう1つはPKCS#7ファイル( "certchain.p7b")として証明書チェーンを含めて保存した証明書です。私は今C#のファイル/ストリームからPkcs#7証明書チェーンを読み取る方法は?

var cert = new X509Certificate2(myPfxFileStream); 

と.pfxファイルをロードすることができますC#では

しかし7証明書に失敗したPKCS#と同じことをしようとすると、(myPfxFileStreamは、読書のための.pfxファイルに開放FileStreamです) CryptoGraphicException "Der Indexwert istungültig"は "無効なインデックス値"に変換されます。

PKCS#7を細かく解析する必要があると仮定します(チェーンには単一の証明書ではありません)。

(あ、ところで:現在、私はそれらのcertficiatesにはパスワードがありません)

答えて

7

あなたはSystem.Security.Cryptography.Pkcs名前空間にSignedCmsクラスを使用したいと思うでしょう。

このブログのエントリは、どのクラスを使用する方法を紹介します:あなたは基本的にDecodeメソッドを呼び出します

http://blogs.msdn.com/shawnfa/archive/2006/02/27/539990.aspx

、PKCSファイルを表すバイトを渡します。

+0

その場で右折してください。ありがとうございました! – froh42

関連する問題