gpt4 book ai didi

ssl-certificate - 如何从 cacerts 中删除所有证书?

转载 作者:行者123 更新时间:2023-12-04 06:56:37 27 4
gpt4 key购买 nike

我知道我可以使用

keytool -delete -alias alias -keystore .keystore

从证书存储中删除一些证书。但是我有 109 个证书存储在 cacerts 中: keytool -list result

如何用一个命令删除它们?或者,换句话说,你如何清除 cacerts 存储?

最佳答案

没有来自 keytool 的命令删除 keystore 中的所有条目。你必须做一些变通方法来实现这一点。

您可以通过使用 KeyStore 编写简单的 Java 代码来实现。接口(interface):

KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());
ks.load(new FileInputStream(new File("KEYSTORE_PATH")), "changeit".toCharArray());

Enumeration<String> aliases = ks.aliases();

while (aliases.hasMoreElements())
{
String alias = aliases.nextElement();

ks.deleteEntry(alias);
}

ks.store(new FileOutputStream(new File("KEYSTORE_PATH")), "changeit".toCharArray());

(或者)

创建一个类似的商店,因为您已经知道 cacerts 的类型 keystore (此处的小解决方法)。
  • 最初创建 cacerts 时使用 key 对创建 KeyStore keystore 文件。

  • keytool -genkeypair -keystore cacerts -storepass changeit


  • 删除最初创建的 key 对条目。

  • keytool -delete -keystore cacerts -storepass changeit -alias mykey



    由于 cacerts 是默认 keystore ,因此您无需在 keytool 命令中指定其他属性,让 java 为您处理默认值。现在您应该有一个空的 cacerts keystore 。

    关于ssl-certificate - 如何从 cacerts 中删除所有证书?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48417771/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com