Thales HSM生成关键的“来自清除组件的表单密钥”(“FK”命令)

时间:2014-08-01 11:47:35

标签: encryption command components hsm

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

现在我需要从这些组件生成加密密钥。它的控制台命令:"FK"命令(1270A513第3版,第5-14页)。 我无法通过Java代码找到任何命令。我使用了Host Command Reference手册(1270A351 Issue 6),发现只有A4 - 从加密组件命令形成密钥,但此命令用于从加密组件生成密钥。

是否可以使用清除组件生成加密密钥?

2 个答案:

答案 0 :(得分:4)

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

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

答案 1 :(得分:0)

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

  1. 使用“ GC”和“ FK”命令在HSM控制台上生成ZMK(明文和加密)。(只需执行一次并重用密钥)。
  2. 在应用程序中使用TripleDES-ECB-NOPADDING使用清晰的ZMK加密所有密钥。
  3. 使用命令“ A6”。将所有ZMK加密密钥导入到LMK。
  4. 使用'A4'命令通过LMK加密组件来形成密钥。