如何使用Rijndael和256位的块大小进行加密或解密?

出于某些原因,我需要使用256位的块大小而不是使用128位块大小的AES来实现Rijndael de /

compression(原因:数据使用Rijndael在PHP中加密)。

如何更改密码的块大小?

如果我只是使用cipher "RIJNDAEL/CFB/PKCS5Padding"并尝试使用256位初始化IV,则会出现异常,因为块大小仅为128位。

回答:

除了具有128位块大小的Rijndael之外,任何Sun

JCE提供程序都不支持任何其他功能:这是AES算法。要获得具有256位块大小的rijndael,您将不得不走到其他地方。我建议Bouncycastle

Java库。该RijndaelEngine类有接受位的块大小的构造函数。大多数人都发现,与适当的填充一起使用时,PaddedBufferedBlockCipher类更方便,例如

PaddedBufferedBlockCipher c = new PaddedBufferedBlockCipher(new RijndaelEngine(256), new PKCS7Padding());

以上是 如何使用Rijndael和256位的块大小进行加密或解密? 的全部内容, 来源链接: utcz.com/qa/404662.html

回到顶部