15

当我手动创建一个KeyManager时,其中一个步骤是:

KeyManagerFactory.getInstance("SunX509")

这在我需要指定“IbmX509”的 IBM jre 上不起作用。
我的问题:

  1. 我读到这被称为“证书编码算法”。这意味着什么?什么时候使用?
  2. 当客户端使用 IBM 算法而服务器使用 Sun 算法时会发生什么?

谢谢,
多伦

4

1 回答 1

23

我读到这被称为“证书编码算法”。

不,不是。它是定义提供者和内容类型的密钥管理器算法,在本例中为“Sun”或“IBM”和 X.509。基本上它是一种密钥库类型。

无论如何,最好的解决方案是不使用任何一个。只需使用

KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());

并且KeyManagerKeyManagerFactory处理本地密钥库/信任库。对等方不关心这些,只关心其中的证书,而且只是间接关心。

于 2012-04-10T01:36:43.400 回答