Comment lire le fichier Pkcs#7 certificat de la chaîne à partir du fichier/stream en C#?

J'ai deux certificats que j'ai enregistré sur le disque. L'un est un certificat avec la clé privée que j'ai exporté en .fichier pfx, l'autre est un certificat que j'ai enregistré, y compris son certificat de chaîne d'un fichier PKCS#7 ("certchain.p7b").

En C#, je peux maintenant charger le .fichier pfx avec

  var cert = new X509Certificate2(myPfxFileStream); 

(myPfxFileStream est un FileStream ouvert à la .Fichier pfx pour la lecture), mais d'essayer la même chose avec le fichier PKCs#7 Certificat échoue dans une CryptoGraphicException "Der Indexwert ist ungültig" qui se traduit par "invalide valeur de l'indice".

Je suppose que je dois analyser PKCS#7 différemment (il contient une chaîne, pas un seul certificat!), mais comment?

(Ah, au fait: à l'heure actuelle je n'ai pas de mots de passe sur ces certficiates)

OriginalL'auteur froh42 | 2009-02-23