Шифрование AES-256 с помощью BouncyCastle Lightweight API

Я написал некоторый (функциональный) код шифрования AES с использованием встроенных в Java библиотек шифрования, как показано ниже, но я бы хотел использовать 256- битовый ключ. Тем не менее, я хотел бы сделать это без необходимости установки пользователем файлов политики шифрования с неограниченной надежностью.

Я слышал, что использование BouncyCastle Lightweight API может позволить мне это сделать, но, к сожалению, у меня большие проблемы с осознанием этого, и я изо всех сил пытаюсь уместить любую документацию, которая мне помогает.

Вот мой текущий код, в котором «контент» - это байтовый массив, который должен быть зашифрован:

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);

Как мне повторить это с помощью BouncyCastle Lightweight API? Может ли кто-нибудь помочь мне и / или указать мне путь к простому примеру кода?

Мне также интересны любые другие решения, которые позволяют шифрование AES с 256-битным ключом без необходимости для пользователя устанавливать неограниченную стойкость файлы политики.

Большое спасибо!

6
задан DivineOmega 4 March 2012 в 12:56
поделиться