java - 将文本加密为 AES/CBC/PKCS7Padding

标签 java encryption aes pkcs#7

我正在开发一个 Web 应用程序来使用 Java 6 加密一些文本。

我必须做的加密是 CBC 模式的 AES (Rijndael),带有 PKCS7 填充和 128 位 key 。

我看到一篇文章解释了如何以我必须执行的相同方式进行加密,但使用 PKCS5 填充。

文章链接在这里:

https://bit502.wordpress.com/2014/06/27/codigo-java-encriptar-y-desencriptar-texto-usando-el-algoritmo-aes-con-cifrado-por-bloques-cbc-de-128-bits/

我改变

private final static String cI = "AES/CBC/PKCS5Padding";

private final static String cI = "AES/CBC/PKCS7Padding";

但是 Java 无法为此找到提供程序。

谁能告诉我该怎么做?

最佳答案

Java 只提供 PKCS#5 填充,但它与 PKCS#7 填充相同。在 Crypto.SE 上看到这个问题:

What is the difference between PKCS#5 padding and PKCS#7 padding

对于 AES 和 DES 等常见分组密码,它们可以互换。

关于java - 将文本加密为 AES/CBC/PKCS7Padding,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29232705/

相关文章:

java - 如何在 libgdx 中创建带有碰撞和球的随机和无限墙?

java - 避免在加密和编码的 URL 字符串中换行

java - 安卓AES问题

java - 我试图从 3 个字符串数组中随机选择元素?

JavaFX + Hibernate(JPA) 持久化 + Derby DB

java - OneToMany 关系孤儿不会从数据库中删除

客户端Java加密,服务器解密,使用PBKDF2WithHmacSHA1和AES/CBC/PKCS5Padding

ios - 如何保护我的音乐应用程序下载的音乐文件?

java - KeyStore 未返回正确的 key

java - 用 Python 解密用 Java 加密的字符串