I've written a DLL wrapper for Crypto++ and it works fine - just a few 
things I'm not clear on,,,

I generate an RSA public/private key pair, then store them in PEM files.

I seem to have to call DEREncodePrivateKey on the private key before Base64 
encoding and writing to the file, and also having to call 
BERDecodePrivateKey when reading back the private key. If I use BEREncode 
on the private key rather than DEREncodePrivateKey when writing the key, I 
get a BERDecode error on readback.

If I try using DEREncodePublicKey on the public key when writing and 
BERDecodePublicKey when reading I get a BERDecode error. However, if I just 
write the public key directly I can recover it perfectly.

Why is the private key different from the public key in this? DER encoding 
is a subset of BER, so I can see why that works, but why is it needed 
rather than just "Save"?

Bit confused as to what is actually happening here (even though I have a 
satisfactory solution - I just want to properly understand it).

Thanks

Nick

-- 
-- 
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 Google Groups 
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to