В настоящее время я использую AES/CBC/PKCS5Padding
для шифрования файлов на Java с размером ключа 256 байт, но во время поиска я нашел на stackexchange PKCS # 5-PKCS # 7 Padding, и это упоминается,
PKCS # 5 padding - это подмножество дополнений PKCS # 7 для 8-байтовых размеров блоков
Итак, я хочу знать
- Будет ли производительность
AES/CBC/PKCS7Padding
лучше, чемAES/CBC/PKCS5Padding
для указанной выше конфигурации? - Как мы можем настроить размер блока в Java, как это указано
PKCS # 7 padding будет работать для любого размера блока от 1 до 255 байт.
Мой пример кода,
SecureRandom rnd = new SecureRandom();
IvParameterSpec iv = new IvParameterSpec(rnd.generateSeed(16));
KeyGenerator generator = KeyGenerator.getInstance("AES");
generator.init(256);
SecretKey k = generator.generateKey();
Cipher c = Cipher.getInstance("AES/CBC/PKCS5Padding");
c.init(Cipher.ENCRYPT_MODE, k, iv);