Re: Facing issue while reading RSA private key (DER format)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 23/05/18 12:10, Ruchi Tyagi wrote:
> Hi,
> 
>  
> 
> I am working on a project where we are trying to Replace RSA Bsafe
> crypto C library with openssl. I have a RSA key pair (attaching the key
> files) generated using RSA Bsafe library.
> 
> I am  able to read the public key using the below call
> 
>  
> 
> rsa = d2i_RSA_PUBKEY(NULL, &public_key_bytes, public_key_length);

RSA public keys typically come in either PKCS#1 format or
SubjectPublicKeyInfo format. You need to ensure you use the correct
function for the format. Your public key is in SubjectPublicKeyInfo
format, and this is the correct function for reading that format - so it
succeeds.

> 
>  
> 
> but while decryption , I am getting NULL “rsa” .
> 
>  
> 
> rsa = d2i_RSAPrivateKey(NULL, &p, size);

RSA private keys typically come in either traditional or PKCS#8 format.
Your private key is in PKCS#8 format, but this function is for reading
traditional format keys - hence the failure.

If you use the function d2i_AutoPrivateKey() then it will automatically
try to detect the format. It returns an EVP_PKEY *object which is the
preferred internal object for working with public/private keys. If you
must have it as an "RSA *" object you can do that with
EVP_PKEY_get1_RSA() (or EVP_PKEY_get0_RSA() if you don't want to up the
ref count on the RSA object).

Matt


> 
>  
> 
>  
> 
> It seems that I am not using the right call or missing something.
> 
>  
> 
> Please help me in resolving this issue.
> 
>  
> 
> Thanks & Regards,
> 
> Ruchi
> 
> 
> 
> _______________________________________________
> osf-contact mailing list
> To unsubscribe: https://mta.openssl.org/mailman/listinfo/osf-contact
> 
-- 
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux