我有一个使用 OpenSSL 库的简单 SSL 客户端。我的服务器需要客户端身份验证,因此我必须设置存储在受密码保护的 PEM 文件中的客户端私钥。为此,我使用以下代码:
/* set the private key from KeyFile */
if (SSL_CTX_use_PrivateKey_file(ctx, KeyFile, SSL_FILETYPE_PEM) <= 0)
{
ERR_print_errors_fp(stderr);
abort();
}
/* verify private key */
if ( !SSL_CTX_check_private_key(ctx) )
{
fprintf(stderr, "Private key does not match the public certificate\n");
abort();
}
现在我想知道如何使用存储在安全令牌(使用 PKCS#11 接口)上的私钥而不是从文件中读取它来建立 SSL 连接?