Cryptage AES-256 avec BouncyCastle API Légère

J'ai écrit certains (fonctionnelle) de chiffrement AES code à l'aide de Java intégré dans des bibliothèques de cryptage, comme suit, mais je tiens à utiliser une clé de 256 bits. Cependant, je tiens à le faire sans que l'utilisateur ait à installer à un nombre Illimité de Force Politique en matière de Cryptographie fichiers.

Maintenant, j'ai entendu dire que l'utilisation de la BouncyCastle API Légère peut me permettre de faire cela, mais malheureusement, je vais avoir beaucoup de mal à obtenir ma tête autour de lui, et je suis mal à s'adapter à toute la documentation qui m'aide.

Voici mon code actuel, dont le "contenu" est le tableau d'octets à être chiffré:

KeyGenerator kgen = KeyGenerator.getInstance("AES");
int keySize = 128;
kgen.init(keySize);
SecretKey key = kgen.generateKey();
byte[] aesKey = key.getEncoded();
SecretKeySpec aesKeySpec = new SecretKeySpec(aesKey, "AES");
Cipher aesCipher = Cipher.getInstance("AES");
aesCipher.init(Cipher.ENCRYPT_MODE, aesKeySpec);
byte[] encryptedContent = aesCipher.doFinal(content);

Comment pourrais-je aller sur la re-mise en œuvre des ce avec l'BouncyCastle API Légère? Quelqu'un peut-il m'aider et/ou me diriger dans le sens d'un exemple simple de code?

Je suis aussi intéressant à d'autres solutions qui permettent de clé de 256 bits de cryptage AES sans la nécessité pour l'utilisateur d'installer la force illimitée de la politique de fichiers.

Merci beaucoup!

Recherchez PaddedBufferedBlockCipher des exemples ici.
Vous utilisez dangereux de la BCE encodage "AES" au lieu de "AES/CBC/PKCS5Padding"), vous ne semblez pas faire n'importe quoi avec le IV (fine si vous êtes seulement de chiffrer une simple texte brut, mais sinon, pas OK), et vous êtes, pour une raison quelconque, la conversion d'un SecretKey à un SecretKeySpec, qui semble à l'envers...

OriginalL'auteur DivineOmega | 2012-03-04