openssl 主题公钥信息:RSA 公钥:(1024 位) vs 公钥:(1024 位)

openssl 主题公钥信息:RSA 公钥:(1024 位) vs 公钥:(1024 位)

我有几个证书,它们的格式看起来非常相似,除了一件事,我使用以下 openssl 命令检查了证书的详细信息

openssl x509 -in certname -text

在其中一个证书中,主题公钥信息如下所示

Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)

另一个看起来像

Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public Key: (1024 bit)

我使用以下命令生成了证书

openssl genrsa -out my.key 1024
openssl req -new -key my.key -config -out my.req
openssl ca -out my.crt -infiles my.req 

我的证书包含公钥:(1024 位),而不是“RSA 公钥:(1024 位)”

要获取证书中的“RSA 公钥:(1024 位)”,需要做哪些不同的事情?我的 my.key 以

-----BEGIN RSA PRIVATE KEY-----

所以它是一个 RSA 密钥。

答案1

您是否真的会比较openssl x509给定不同输入文件的同一实用程序的输出?您询问的不同输出显然只是 OpenSSL 版本之间的差异。例如,openssl-0.9.8e 有这样的代码:

                    BIO_printf(bp,"%12sRSA Public Key: (%d bit)\n","",
                    BN_num_bits(pkey->pkey.rsa->n));

但是,openssl-1.0.0 的文本略有不同:

            if (BIO_printf(bp,"Public-Key: (%d bit)\n", mod_len)
                    <= 0) goto err;

(请注意,实际文本是Public-Key,而不是Public Key)。因此,根据您用于转储文件的 OpenSSL 版本,同一证书的输出可能会有所不同,并且包含的​​文件RSA Public Key: (1024 bit)只是使用旧版本的 OpenSSL 转储为文本。

相关内容