java - 黑莓中的弹跳城堡 aes 加密

标签 java blackberry

谁能解释一下AES/CBC/PKCS5Padding使用弹跳加密解密

城堡我自己努力尝试,但我没有取得任何成功。

在网上我没有得到关于这个的教程

最佳答案

我假设您询问的是 J2ME 版本中的 Bouncy CaSTLe 轻量级 API。来自specifications page ,有一个如何使用 API 的示例。我已经更新它以匹配最新的 API。 (请注意,我还没有尝试运行它。)

BlockCipher engine = new AESEngine();
BufferedBlockCipher cipher = new PaddedBufferedBlockCipher(new CBCBlockCipher(engine));

byte[] key = keyString.getBytes();
byte[] input = inputString.getBytes();

cipher.init(true, new ParametersWithIV(new KeyParameter(key), ivBytes));

byte[] cipherText = new byte[cipher.getOutputSize(input.length)];

int outputLen = cipher.processBytes(input, 0, input.length, cipherText, 0);
try
{
    cipher.doFinal(cipherText, outputLen);
}
catch (CryptoException ce)
{
    System.err.println(ce);
    System.exit(1);
}

请注意,PaddedBufferedBlockCipher 的默认填充模式是 PKCS7/PKCS5。

解密是类似的,但你会调用cipher.init(false, ...)并将密文传递给processBytes

关于java - 黑莓中的弹跳城堡 aes 加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4343429/

相关文章:

用于创建音频 CD 磁盘镜像的 Java 库

java - 如何在圆圈中导航

java - 黑莓 7 : Odd Memory Leak in Root Process

java - 我们应该使用 collection、get 和 set 吗?

java - 词频计数 Java 8

Java 递归 - 传递引用的替代方法 :

java - Android HttpURLConnection 和带有特殊字符的 URL

user-interface - 如何在 Blackberry Storm 中设置抗锯齿?

user-interface - 如何在 BlackBerry 中自定义 ListField?

javascript - 检查黑莓操作系统版本