2015-12-15 58 views
0

我有一个以PEM格式存储的私钥字节,类型为LPSTR。即从PEM格式的私钥字节生成EVP_PKEY

LPSTR pPrivateKeyInPem; 

现在我需要使用pPrivateKeyInPem生成EVP_PKEY,以便它可以被加载到使用OpenSSL的SSL_CTX_use_PrivateKey() API的SSL_CTX对象。

我该怎么做?

+0

欢迎堆栈溢出!我编辑了您的问题以正确设置代码的格式 - 请参阅编辑帮助以获取有关格式化的更多信息。我还建议你使用较小的句子来提高可读性。请编辑添加任何必要的标识特定问题。祝你好运! – Wtower

+0

谢谢@Wtower。我会牢记这一点:) – User1234

回答

1

我会忽略从LPSTR转换为char *,这是这里介绍:Convert lptstr to char*

对于OpenSSL的部分

BIO *mem; 
mem = BIO_new_mem_buf(pkey, -1); //pkey is of type char* 

key = PEM_read_bio_PrivateKey(mem, NULL, NULL, 0);