我正在开发一个Web应用程序,以使用Java 6加密某些文本。
我要做的加密是在CBC模式下使用PKCS7填充和128位 key 的AES(Rijndael)。
我看到了一篇文章,该文章解释了如何以与我相同的方式进行加密,但是使用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/