Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用OpenSSL生成包含通用(任意)扩展的证书请求?_Openssl_X509_Asn.1 - Fatal编程技术网

如何使用OpenSSL生成包含通用(任意)扩展的证书请求?

如何使用OpenSSL生成包含通用(任意)扩展的证书请求?,openssl,x509,asn.1,Openssl,X509,Asn.1,我已经在网上搜索了几个小时,但我找不到一个方法来做到这一点。我已经能够使用以下命令创建自签名CA证书: openssl genrsa -out ca.key 1024 openssl req -new -x509 -extensions v3_ca -key ca.key -out ca.crt -days 3650 现在我想创建一个新的证书,并用我的CA签名。在新证书中,我想有我自己的扩展名——我们可以将其称为“abc”,使其整数值为“1”。我尝试了以下命令: openssl req -ne

我已经在网上搜索了几个小时,但我找不到一个方法来做到这一点。我已经能够使用以下命令创建自签名CA证书:

openssl genrsa -out ca.key 1024
openssl req -new -x509 -extensions v3_ca -key ca.key -out ca.crt -days 3650
现在我想创建一个新的证书,并用我的CA签名。在新证书中,我想有我自己的扩展名——我们可以将其称为“abc”,使其整数值为“1”。我尝试了以下命令:

openssl req -new -nodes -newkey rsa -extensions abc -keyout mycert.key -out mycsr.csr -days 365 -config ./openssl.cnf
使用
openssl.cnf
文件时,仅包括以下内容:

[ abc ]

abc = ASN1:INTEGER:1
我得到以下错误

Error Loading extension section abc
3073632456:error:0D06407A:asn1 encoding routines:a2d_ASN1_OBJECT:first num too large:a_object.c:109:
3073632456:error:22074073:X509 V3 routines:V3_GENERIC_EXTENSION:extension name error:v3_conf.c:271:name=abc
我在这里找到了一些模糊的相关话题,但这一点都没有帮助


有什么问题吗?我怎样才能改正自己?感谢您的意见。

您的错误在参数abc
扩展名错误:v3_conf.c:271:name=abc
非节[abc]。 你不能写
abc=…
如果您在配置中看到类似这样的内容,
policyConstraints=…
这意味着关键字policyConstraints有自己的OID(见2.5.29.36),并在库中预编译。 那你能做什么呢 1.试着找到一个适合你的现有OID,并编写它们而不是abc。
2.定义自己的OID(只需替换1.2.3.4而不是abc),但此类证书不能用于其他系统。

太好了,非常感谢!我已经不能测试它了,因为我不在那个项目上工作,但你的回答是有意义的,我希望它将有助于其他人在未来。谢谢你的积极反馈,这对我非常重要。很抱歉重播太晚了,我有点懒得互相帮助。