我已按以下方式生成3DES密钥:
KeyGenerator masterKeyGenerator = KeyGenerator.getInstance("DESede");
masterKeyGenerator.init(112);
SecretKey masterKey = masterKeyGenerator.generateKey();
现在我需要使用上面生成的主密钥导出一个新密钥,但我还需要在密钥派生过程中使用随机字节(多样化数据)。
我可以使用之前生成的主密钥(下面的代码示例)导出另一个密钥,但显然不是这样,因为我找不到如何使用主密钥和其他多样化数据来获取新密钥的方法。
SecretKeyFactory secondKeyFactory = SecretKeyFactory.getInstance("DESede");
KeySpec myKeySpec = new DESedeKeySpec(masterKey.getEncoded());
SecretKey secondKey = mySecretKeyFactory.generateSecret(myKeySpec);
有人建议我在Java中使用主密钥和其他随机字节[](多样化数据)来获取新密钥的代码示例吗?