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,这是一个错误条件。
答案 0 :(得分: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个证书,首先是客户端证书,然后是中间证书。