在Java中使用带块密码的ISO7816d4Padding
我正在使用加密应用程序中的BC提供程序。在Java中使用带块密码的ISO7816d4Padding,java,cryptography,padding,bouncycastle,jca,Java,Cryptography,Padding,Bouncycastle,Jca,我正在使用加密应用程序中的BC提供程序。 我想知道是否存在将密码对象(JCA固有的)转换为块密码对象(BC固有的)的方法。这背后的原因是因为我需要ISO7816d4Padding,这在JCA中找不到。当然,您可以通过将分组密码实例化为“/ECB/NoPadding”来使用ECB模式,其中当然是密码的名称。在您的情况下,它可能是“DESede”或“AES”。然后,如果你给它一个8或16字节的块,你将得到一个加密或解密的块返回 但是,在您的情况下,我只会使用: Cipher iso = Cipher
我想知道是否存在将密码对象(JCA固有的)转换为块密码对象(BC固有的)的方法。这背后的原因是因为我需要ISO7816d4Padding,这在JCA中找不到。当然,您可以通过将分组密码实例化为
“/ECB/NoPadding”
来使用ECB模式,其中
当然是密码的名称。在您的情况下,它可能是“DESede”
或“AES”
。然后,如果你给它一个8或16字节的块,你将得到一个加密或解密的块返回
但是,在您的情况下,我只会使用:
Cipher iso = Cipher.getInstance("DESede/CBC/ISO7816-4Padding");
注册Bouncy Castle提供程序后。如果您可以简单地使用所需的填充来实例化一些
块密码
,为什么要对其进行转换?@ArtjomB。不需要这样:)