如何创建 keystore.jks 和创建 private.der 和 public.der 证书文件 -

How to create keystore.jks and create private.der and public.der cert file -

我希望在我的 Angular Spring MVC 应用程序中实施 基于令牌的身份验证 (Nimbus JOSE+JWT)。我还想实现基于 RSA 的密钥库工具,并使用基于 'Private' 和 'public' 密钥的身份验证来识别客户端。我该怎么做?

我只需要执行以下步骤:

1) Create a .keystore
2) Generate private.der cert file
3) Generate public.der cert file. 

我知道如何从 link 加载私钥和 public 密钥:Load RSA public key from file(来自 JavaHelper 的回答),但是我可以继续吗?

如果需要从 link 下载 opensslhttps://code.google.com/archive/p/openssl-for-windows/downloads。下载 .zip 文件并解压到任意位置。转到那个位置,直到在我的例子中是 C:\openssl-0.9.8k_X64\bin

根据link:https://rietta.com/blog/2012/01/27/openssl-generating-rsa-key-from-command/,您需要执行以下命令:

您可以像这样生成 public 和 RSA 私钥对:

openssl genrsa -des3 -out private.pem 2048

这会生成一个 2048 位的 RSA 密钥对,使用您提供的密码对其进行加密,并将它们写入文件。接下来您需要提取 public 密钥文件。例如,您将在您的 Web 服务器上使用它来加密内容,以便只能使用私钥读取它。

根据 link:https://www.openssl.org/docs/manmaster/apps/pkcs8.html and https://superuser.com/questions/606215/openssl-pkcs8-default-format-gives-rsa-private-key

读取 DER 未加密的 PKCS#8 格式私钥:

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

并创建 public 密钥,如下所示

openssl rsa -in key.pem -pubout -out pubkey.pem

完成!!