【问题标题】:Using ISO7816d4Padding with a BlockCipher in Java在 Java 中将 ISO7816d4Padding 与 BlockCipher 一起使用
【发布时间】:2016-02-13 19:35:33
【问题描述】:

我正在使用我的加密应用程序中的 BC 提供程序。 我想知道是否有办法将 Cipher 对象(继承自 JCA)转换为 BlockCipher 对象(继承于 BC)。这背后的原因是因为我需要 ISO7816d4Padding,这在 JCA 中是找不到的。

【问题讨论】:

  • 如果你可以简单地用你需要的填充实例化一些BlockCipher,为什么要转换它?
  • @ArtjomB。不需要那个:)

标签: java cryptography padding bouncycastle jca


【解决方案1】:

当然,您可以通过将分组密码实例化为 "<ciphername>/ECB/NoPadding" 来使用 ECB 模式,其中 <ciphername> 当然是密码的名称。在您的情况下,它可能是"DESede""AES"。然后,如果你给它一个 8 或 16 字节的块,你将得到一个返回的加密或解密块。

但是,在你的情况下,我会使用:

Cipher iso = Cipher.getInstance("DESede/CBC/ISO7816-4Padding");

在注册 Bouncy Castle 提供程序之后。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-19
    • 2021-05-25
    • 2015-01-24
    • 2014-02-25
    相关资源
    最近更新 更多