1

我有两个清晰的组件,由命令生成000A30303030413230303255(它是000A0000A2002U在 HEX 模式下。这是"GC"- 从 1270A513 第 3 期手册将 ZPK 从 LMK 转换为 ZMK 加密命令)使用 Java 代码

现在我需要从这些组件生成一个加密密钥。它的控制台命令:"FK"command(1270A513 第 3 期,第 5-14 页)。我找不到任何通过 Java 代码执行此操作的命令。我使用了主机命令参考手册(1270A351 第 6 期),只发现A4- Form a Key from Encrypted Components 命令,但此命令用于从加密组件生成密钥。

有没有办法使用明文组件生成加密密钥?

4

2 回答 2

4

没有办法做到这一点,并且有充分的理由。如果您要通过您的 java 代码发送它,那么它很容易受到攻击,因为透明组件是通过未加密的网络发送的。任何拦截这些组件的人都可以自己生成密钥。GC 和 FK 命令旨在与控制台一起使用,而不是远程使用,这就是为什么可以使用这些命令的原因。

如果您已经拥有这些组件,则只能在 HSM 控制台中形成它们。如果您可以生成新密钥,请使用您的 java 代码中的 A0 命令。

于 2014-11-26T15:48:07.267 回答
0

我不建议在生产中使用它。如果我真的需要这样做,我会采取以下步骤。

  1. 使用“GC”和“FK”命令在 HSM 控制台上生成 ZMK(清除和加密)。(只需执行一次并重复使用密钥)。
  2. 使用 clear ZMK 在您的应用程序中使用 TripleDES-ECB-NOPADDING 加密您的所有密钥。
  3. 使用命令“A6”。将所有 ZMK 加密密钥导入 LMK。
  4. 使用“A4”命令使用 LMK 加密组件形成密钥。
于 2019-07-24T09:35:23.557 回答