Me gustaría cifrar algunos tokens de autenticación utilizando AES 256 (no está vinculado a este algoritmo, pero parece ser una opción razonable). Estos mensajes son generalmente muy cortos en 128-256 bits. Estoy preocupado principalmente por la seguridad, no muy preocupado por la longitud del texto cifrado o el rendimiento en el cifrado o descifrado. Estos son secretos compartidos, así que tengo que poder obtener el texto simple.
Tengo curiosidad por si es beneficioso cualquier relleno adicional más allá de lo que se requiere para que el mensaje coincida con el tamaño de bloque.
Para aclarar esto, no se trata de rellenar el mensaje para que pueda ejecutarse a través del algoritmo de cifrado, sino que obtendría algo al rellenar el mensaje para decir 1024 bits en lugar de 256 cuando el mensaje es muy corto. Ya estoy usando un IV ya que estoy reutilizando una clave.
Si hago un pad de una longitud adicional, ¿debería usar un solo carácter o colocar un flujo de datos al azar?
Mi preocupación es que al rellenar solo a 256 bits potencialmente puedo traicionar el tamaño del secreto (aunque la mayoría de ellos son más cortos que el tamaño del bloque).