Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Loading X509Certificate results in exception CryptographicException "Cannot find the original signer"

Tags:

I am trying to instantiate an X509Certificate object, but I keep running into the same CryptographicException, with the error message:

"Cannot find the original signer".

I have tried several ways of loading the certificate:

// some different things that I have tried
var cert = X509Certificate.CreateFromCertFile(certFileName);
var cert2 = new X509Certificate(byteArray);
var cert3 = new X509Certificate(byteArray, secretString);
var cert4 = X509Certificate.CreateFromSignedFile(certFileName);

I have tried both loading from a file and from a byte array. Each time I get the same error. What could be causing this?

like image 578
MrCodeMnky Avatar asked Oct 04 '13 20:10

MrCodeMnky


2 Answers

I figured out the problem. I was attempting to load just the certificate file, which did not include the private key. To fix the problem, I had to install the private key on the machine on which the certificate was purchased, and then export it as a .pfx file and move it to where I actually wanted to use it. I'm sure was a newbie mistake. Hopefully, my silly issue will help other newbies in the future.

like image 135
MrCodeMnky Avatar answered Sep 22 '22 09:09

MrCodeMnky


        var collection = new X509Certificate2Collection();
        collection.Import(byteArray);
        return collection;

via https://stackoverflow.com/a/44073265, by https://stackoverflow.com/users/6535399, who writes crypto for msft - e.g. https://github.com/dotnet/corefx/pull/25920

like image 20
user326608 Avatar answered Sep 23 '22 09:09

user326608