如何使用 openssl 创建 public 和私钥?

How to create public and private key with openssl?

我的问题是如何在 windows 中使用 OpenSSL 创建 public 密钥和私钥,以及如何将创建的 public 密钥放入 .crt 文件和.pcks8 文件中的私有密钥,以便使用这两个密钥在 Java?

中签署 SAML 断言

提前致谢。

您可以使用 genrsa 上下文生成一个 public-私钥对(最后一个数字是以位为单位的密钥长度):

openssl genrsa -out keypair.pem 2048

要提取 public 部分,请使用 rsa 上下文:

openssl rsa -in keypair.pem -pubout -out publickey.crt

最后,使用 pkcs8 上下文将原始密钥对转换为 PKCS#8 格式:

openssl pkcs8 -topk8 -inform PEM -outform PEM -nocrypt -in keypair.pem -out pkcs8.key