On Mon, Nov 30, 2009 at 10:14:43AM -0800, adfm wrote:
> Hello all,
>
> my problem:
> 1. I have been given a certificate in a pfx form that contains the
> private key I must use to decode a message.
pfx is likely a PKCS-12 defined by RSA Labs
a private key and a cerificate are likely there in the PKCS-12 structure
"openssl pkcs12 -in yourfule" might be useful to see exactly what is there
please remember not to post a production private key to the list
> 2. I opened up the certificate and saved the private key data to
> a .pem file.
> 3. The certificate is in the form:
>
> -----BEGIN CERTIFICATE-----
> MIICuzCCAiSgAwIBAgIJAMLZ1aXsvPdqMA0GCSqGSIb3DQEBBQUAMGkxCzAJBgNV
> (...)
> /9kfj2B6h78n9yXo339Xa8i/+3xJQMApR5yXW0IkEg==
> -----END CERTIFICATE-----
>
> I went through the examples and found the cool function
> string RSADecryptString(const char *privFilename, const char
> *ciphertext)
> I tried to use it, but I am getting a "BER decode error".
>
> {
> string b64decoded;
>
> //decode file from bsae 64
> StringSource( privFilename, true,
> new CryptoPP::Base64Decoder(
> new CryptoPP::StringSink( b64decoded )
> ) // Base64Encoder
> ); // StringSource
>
> //Set up the decryptor
> StringSource priv_key(b64decoded, true, new HexDecoder);
> RSAES_OAEP_SHA_Decryptor priv(priv_key);
>
> //to replace GlobalRNG that I haver no idea where it is!
> AutoSeededRandomPool rng;
>
> string result;
> StringSource(ciphertext, true, new HexDecoder(new
> PK_DecryptorFilter(rng, priv, new StringSink(result))));
>
> return result;
> }
>
> Sorry for the dumb question, but I'm learning about cryptography as I
> go and my time is running short for going through the cryptoPP API's
> thoroughly.
>
> I hope that someone can help me out.
>
> Thanks in advance!
>
> Cheers
>
> --
> You received this message because you are subscribed to the "Crypto++ Users"
> Google Group.
> To unsubscribe, send an email to [email protected].
> More information about Crypto++ and this group is available at
> http://www.cryptopp.com.
--
You received this message because you are subscribed to the "Crypto++ Users"
Google Group.
To unsubscribe, send an email to [email protected].
More information about Crypto++ and this group is available at
http://www.cryptopp.com.