1

Perl新手在这里。我需要将一个中间 CA x509 证书链接到我的客户端证书。

Net::SSLeay::set_cert_and_key($ctx, $crt, $key);
my $bio = Net::SSLeay::BIO_new_file("subca.crt", 'r');
my $x509 = Net::SSLeay::PEM_read_bio_X509($bio);
Net::SSLeay::CTX_add_extra_chain_cert($ctx, $x509)
    and die_if_ssl_error("CTX_add_extra_chain_cert"); # It dies here.

证书为 pem 格式。任何人都可以帮忙吗?

编辑:我发现对“Net::SSLeay::PEM_read_bio_X509()”的调用返回 0,这是一个错误情况。

4

1 回答 1

0

这正是我想要的:

Net::SSLeay::CTX_use_RSAPrivateKey_file($ctx, $key, &Net::SSLeay::FILETYPE_PEM)
    and die_if_ssl_error("private key");
Net::SSLeay::CTX_use_certificate_chain_file($ctx, $crt)
    and die_if_ssl_error("CTX_use_certificate_chain_file");

$crt 包含 2 个证书,第一个是客户端证书,然后是中间证书。

于 2013-02-18T09:04:32.343 回答