дешифрование данных с AES/CBC/PKCS5Padding использование ежевики

Я прибегаю к отдельным логическим значениям:

Bool cond1 == (var1 && var2);
Bool cond2 == (var3 && var4);

if ( cond1 && cond2 ) {}
5
задан 23 May 2009 в 10:08
поделиться

3 ответа

Я рекомендую использовать BlackBerry API (Bouncy Castle будет работать, но зачем все усложнять?).

Используйте пакет net.rim.crypto - вы используете все симметричное шифрование, поэтому вам понадобятся только стандартные ключи подписи RIM для запуска на устройстве (20 долларов США и 2-3 дня для получения) - а пока вы можете делать все на симуляторе.

В основном вы » Я хочу создать PKCS5UnformatterEngine, который обертывает CBCDecryptorEngine, который обертывает AESDecryptorEngine. Вероятно, оберните все в BlockDecryptor, чтобы вы могли обрабатывать его, как в InputStream. Что-то вроде (и прошло немного времени с тех пор, как я это сделал, поэтому он может не работать на 100%, как написано):

InputStream encryptedInput;  // if you have a byte[] of data, use a ByteArrayInputStream
AESKey key = new AESKey(<your key data as a byte[]>) 
InitializationVector iv = new InitializationVector(<your iv data as a byte[]>) // of course you need to know your IV since you're doing CBC encryption

BlockDecryptor decryptor = new BlockDecryptor(
   new PKCS5UnformatterEngine(
      new CBCDecryptorEngine(
         new AESDecryptorEngine(key),
         iv
      )
   )
);

// then decryptor acts as an InputStream which gives you your decrypted, unpacked data

decryptor.read(buffer); // buffer will contain decrypted, unpacked data
5
ответ дан 14 December 2019 в 08:59
поделиться

I think the Bouncy Castle Library supports that. They provide some short tutorials too.

2
ответ дан 14 December 2019 в 08:59
поделиться

Bouncy castle has a fantastic library for doing this. The main problem will be how to get the key there in a secure way. I found that .NET and Java serialize the keys in incompatible ways, so I ended up using Bouncy Castle on both sides in order to facilitate key transfer, as it was transferred using RSA, for security sake.

0
ответ дан 14 December 2019 в 08:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: