【问题标题】:is there a way to get a list of all the possible 'algorithm/mode/padding' strings for Cipher.getInstance?有没有办法获取 Cipher.getInstance 的所有可能的“算法/模式/填充”字符串的列表?
【发布时间】:2016-11-07 03:23:04
【问题描述】:

我已将 BouncyCastle 添加为提供者:

java.security.Security.addProvider(
    org.bouncycastle.jce.provider.BouncyCastleProvider())

现在我想查看可用于getInstance 的密码列表 - 例如:

Cipher.getInstance("AES/CBC/PKCS5Padding", "BC")

有没有办法查看可用的所有不同类型的加密算法列表?

【问题讨论】:

  • 阅读文档,但很难找到这些信息,尤其是默认值。如果没有文档,请不要使用该库。

标签: java security bouncycastle


【解决方案1】:

您可以遍历可用的 Security.providers 并按类型过滤服务。例如:

for (Provider provider: Security.getProviders()) {
    System.out.println(provider.getName());
    for (Provider.Service s: provider.getServices()){
        if (s.getType().equals("Cipher"))
            System.out.println("\t"+s.getType()+" "+ s.getAlgorithm());
    }
}

【讨论】:

    猜你喜欢
    • 2013-08-07
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 2022-11-26
    • 2020-05-14
    • 2023-03-13
    • 1970-01-01
    • 2014-04-07
    相关资源
    最近更新 更多