首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从私钥生成CSR密钥

从私钥生成CSR密钥
EN

Stack Overflow用户
提问于 2018-08-21 12:17:55
回答 1查看 1.3K关注 0票数 1

我需要从私钥/证书生成CSR密钥

当我这样做的时候,我得到了一个错误

openssl_csr_new():dn: add_entry_by_NID 48 -> (失败;如果报告了非法字符,请检查错误队列和string_mask OpenSSL选项的值) test.php(33)

代码语言:javascript
复制
$dn = [
    'commonName'            => '123@-1552-21',// 'func_id@activationcode',
    'organizationalUnitName'=> 'test',
    'organizationName'      => 'test',
    'localityName'          => 'DK',
    'stateOrProvinceName'   => 'DK',
    'countryName'           => 'DK',
    'emailAddress'          => ''
];

$csr = [
    'private_key_bits'  => 2048,
    'private_key_type'  => OPENSSL_KEYTYPE_RSA,
    'encrypt_key'       => true
];

$private_key = openssl_pkey_get_private('./1_0010444508001.pem');

$csr = openssl_csr_new($dn, $private_key, [
    'digest_alg' => 'sha256'
]);

openssl_csr_export($csr, $csrout);
openssl_pkey_export($private_key, $pkeyout, '');

echo $csrout . "\n" . $pkeyout;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-21 14:09:13

openssl_csr_new():dn: add_entry_by_NID 48 -> (失败;如果报告了非法字符,请检查错误队列和string_mask OpenSSL选项的值) test.php(33)

问题不是私钥,而是dn中的问题。它抱怨说,在CSR中添加NID 48的属性有问题。NID 48 是emailAddress的NID。,因此它抱怨这个字段的内容。看上去不应该是空的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51948515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档