Tamaño de texto cifrado de Java AES

Estoy usando una forma muy estándar de cifrado / descifrado AES de Java.

byte[] key = hexStringToByteArray("C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF");

byte[] message = hexStringToByteArray("01A0A1A2A3A4A5A6A703020100060001");

SecretKeySpec secretKeySpec = new SecretKeySpec(key, "AES");

// Instantiate the cipher
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec);

byte[] encrypted = cipher.doFinal(message);

cipher.init(Cipher.DECRYPT_MODE, secretKeySpec);
byte[] original = cipher.doFinal(encrypted);

Como puede ver, estoy usando una clave de 128 bits y un mensaje de 128 bits. Siempre obtengo el resultado que esperaba, sin embargo, el resultado cifrado siempre tiene 256 bits de longitud. Los segundos 128 bits son siempre los mismos. Aparte de truncar el resultado, ¿cómo puedo asegurarme de que el cifrado devuelva solo los primeros 128 bits, sin cambiar los primeros 128 bits? Siento que me he confundido con la definición de tamaño de bloque aquí.

Respuestas a la pregunta(2)

Su respuesta a la pregunta