Question

From pkcs12 file, I extracted the private key and cert using the following - PKCS12_parse(p12, argv[2], &privatekey, &cert, &ca);

Now, I need to use the privatekey and cert to sign an XML using xmlsec libraries.

However, xmlSecCryptoAppKeyLoad() expects the key in const char* format.

How do I do the conversion?

Or, can I use xmlSecCryptoAppKeyLoadMemory() and privatekey without having to do the conversion?

Was it helpful?

Solution

If you use the XMLSEC-OpenSSL interface, the xmlSecOpenSSLEvpKeyAdopt() function loads an xmlsec key object from an OpenSSL EVP_PKEY *, and xmlSecOpenSSLKeyDataX509AdoptKeyCert() loads an OpenSSL X509 certificate.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top