Rijndael在Java中的支持

我们需要用Java进行一些Rijndael开发。

对文章,图书馆等有什么建议对我们有帮助吗?

是否有任何指向密钥库维护的指针,以及如何安全地存储密钥?

编辑:

它需要是开源的。本质上,它只是使用Rijndael进行数据的标准加密/解密。

回答:

Java开箱即用地包含AES。Rijndael是AES。您不需要任何外部库。您只需要这样的东西:

byte[] sessionKey = null; //Where you get this from is beyond the scope of this post

byte[] iv = null ; //Ditto

byte[] plaintext = null; //Whatever you want to encrypt/decrypt

Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");

//You can use ENCRYPT_MODE or DECRYPT_MODE

cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(sessionKey, "AES"), new IvParameterSpec(iv));

byte[] ciphertext = cipher.doFinal(plaintext);

就是这样,用于加密/解密。如果要处理大量数据,则最好读取16字节倍数的块,然后调用update而不是doFinal(您只需在最后一个块上调用doFinal)。

以上是 Rijndael在Java中的支持 的全部内容, 来源链接: utcz.com/qa/422278.html

回到顶部