AES / CBC / PKCS5Padding vs AES / CBC / PKCS7Padding com 256 desempenho de tamanho de chave java
Atualmente estou usandoAES/CBC/PKCS5Padding
para criptografar arquivos em Java com256 bytes tamanho da chave, mas ao pesquisar, encontrei no stackexchangePKCS # 5-PKCS # 7 Padding e é mencionado,
O preenchimento PKCS # 5 é um subconjunto do preenchimento PKCS # 7 para tamanhos de blocos de 8 bytes
Então eu quero saber
O desempenho deAES/CBC/PKCS7Padding
será melhor entãoAES/CBC/PKCS5Padding
para a configuração acima?Como podemos configurar o tamanho do bloco em Java, conforme mencionadoO preenchimento PKCS # 7 funcionaria para qualquer tamanho de bloco de 1 a 255 bytes.
Meu código de amostra é,
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);