在OpenSSL中配置时,如何指定私有OID值的语法?

在OpenSSL中配置时,如何指定私有OID值的语法?,openssl,asn.1,oid,Openssl,Asn.1,Oid,我有以下与OpenSSL私有OID支持相关的问题: 通过浏览互联网上的openssl配置和其他工件,我发现openssl支持配置私有OID,但我不清楚如何为与这些OID关联的属性指定值的语法 我是否可以配置由我配置的专用OID只用于证书的使用者名称或颁发者名称,而不用于其他字段或任何其他对象 您可以在oid_部分内的oid上定义短名称,如somyOid=1.2.3.4 要定义所定义OID的格式,可以在openssl.cnf文件的顶层添加定义(不在任何块内)。这些定义使用OpenSSL 0.9.8

我有以下与OpenSSL私有OID支持相关的问题:

  • 通过浏览互联网上的openssl配置和其他工件,我发现openssl支持配置私有OID,但我不清楚如何为与这些OID关联的属性指定值的语法
  • 我是否可以配置由我配置的专用OID只用于证书的使用者名称或颁发者名称,而不用于其他字段或任何其他对象

  • 您可以在oid_部分内的oid上定义短名称,如so
    myOid=1.2.3.4

    要定义所定义OID的格式,可以在openssl.cnf文件的顶层添加定义(不在任何块内)。这些定义使用OpenSSL 0.9.8中添加的迷你ASN.1编译器

    1.2.3.4=关键,ASN1:UTF8String:一些随机数据

    您还可以查看mini ASN.1编译器或OpenSSL文档在生成时的作用

    我不熟悉防止OpenSSL允许定义的OID在任何地方使用的方法,但请记住,您在OpenSSL.cnf中定义的OID将作为原始OID显示给解析这些证书而不使用您的定义的任何依赖方


    例如,如果将1.3.6.1.4.1.8088080.1定义为“myOid”。在您配置的系统上,当使用主题DN解析证书时,它将显示为
    /CN=something/O=something other/myOid=myValue
    ,而在其他系统上,它将显示为
    /CN=something/O=something other/1.3.6.1.4.1.808808080.1=myValue
    ,谢谢您的回复。比如说,我添加了一个新的OID 1.2.3.4,但我希望这个OID只在Subject和Issuer字段中使用,而不在其他字段中使用,没有办法,我可以在OpenSSL中指定它,对吗?它将用于OID适用的所有字段。对吗?对,据我所知,这是无法阻止的。