在 Java 中导入 .cer

Rupam Yadav 2024年2月15日
在 Java 中导入 .cer

.cer 文件是一种证书,可帮助识别和检查对实体的任何修改。

本文将学习如何在 key store 中导入扩展名为 .cer 的证书文件。

在 Java 中使用 Keytool 导入 .cer 文件

Keytool 是 Java 附带的实用程序。我们用它来管理证书密钥库

它也可用于生成 keystore 和自签名证书。

我们得到以下输出,其中显示了在不使用任何选项的情况下使用 keytool 命令时的附加命令。

这可以用于多种操作,例如生成证书请求密钥对生成打印证书内容等。

在 Java 中导入 .cer 文件

keytool 命令是导入证书的 importcert。我们还使用命令 -file 导入文件,然后指定 .cer 文件名 myCA.cer

我们需要指定要在其中导入证书的 keystore。我们将 -keystore 与密钥库名称 my-storekey2.keystore 一起使用。

然后我们告诉证书的别名 keystore 用来识别证书。

keytool -importcert -file myCA.cer -keystore my-storekey2.keystore -alias "keystore1"

我们收到以下输入 Keystore 密码的请求。

Enter Keystore password:

一旦我们输入正确的密码并按 enter 键,它将显示有关证书的信息,例如所有者和颁发者的详细信息以及证书的有效性。

输出:

Owner: CN=John Doe, OU=Test, O=Test1, L=TestLocality, ST=TestState, C=IN
Issuer: CN=John Doe, OU=Test, O=Test1, L=TestLocality, ST=TestState, C=IN
Serial number: 352a75ae344aa1cd
Valid from: Mon Feb 07 12:20:25 IST 2022 until: Sun Nov 03 12:20:25 IST 2024
Certificate fingerprints:
         SHA1: AB:0A:C8:67:A9:31:09:FE:44:CC:6D:D2:2B:19:1A:F0:D6:A6:AB:1D
         SHA256: E1:1B:DD:2B:56:C8:C5:5B:24:7B:93:31:60:14:AC:8C:09:64:2B:73:8A:CB:44:37:19:FC:BE:35:EE:BA:F8:F1
Signature algorithm name: SHA256withRSA
Subject Public Key Algorithm: 2048-bit RSA key
Version: 3

Extensions:

#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 4E 8C 16 C9 38 FA F4 D1   1B 45 E8 89 E1 B9 9E 90  N...8....E......
0010: 71 B3 D4 A4                                        q...
]
]

我们可以通过使用以下命令列出其所有证书来检查证书是否已导入 keystore

keytool -list -Keystore my-storekey.keystore

输出:

keystore1, 07-Feb-2022, PrivateKeyEntry,
Certificate fingerprint (SHA-256): E1:1B:DD:2B:56:C8:C5:5B:24:7B:93:31:60:14:AC:8C:09:64:2B:73:8A:CB:44:37:19:FC:BE:35:EE:BA:F8:F1

输出显示带有别名指纹哈希的证书。

作者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn