Saltar al contenido

¿El relleno no es válido y no se puede quitar?

Estate atento porque en esta sección encontrarás el arreglo que buscas.

Solución:

Rijndael/AES es un cifrado de bloque. Cifra datos en bloques de 128 bits (16 caracteres). El relleno criptográfico se utiliza para garantizar que el último bloque del mensaje tenga siempre el tamaño correcto.

Su método de descifrado espera cualquiera que sea su relleno predeterminado y no lo encuentra. Como dice @NetSquirrel, debe configurar explícitamente el relleno tanto para el cifrado como para el descifrado. A menos que tenga una razón para hacer lo contrario, use el relleno PKCS#7.

Asegúrese de que el keys usas para encriptar y descifrar son lo mismo. El método de relleno, incluso si no se establece explícitamente, debería permitir un descifrado/cifrado adecuado (si no se establece, será el mismo). Sin embargo, si por alguna razón está utilizando un conjunto diferente de keys para el descifrado de lo que se utiliza para el cifrado voluntad obtener este error:

El relleno no es válido y no se puede eliminar

Si está utilizando algún algoritmo para generar dinámicamente keys eso no funcionará. Deben ser iguales tanto para el cifrado como para el descifrado. Una forma común es hacer que la persona que llama proporcione la keys en el constructor de la clase de métodos de cifrado, para evitar que el proceso de cifrado/descifrado intervenga en la creación de estos elementos. Se centra en la tarea en cuestión (cifrar y descifrar datos) y requiere la iv y key ser suministrado por la persona que llama.

Para el beneficio de las personas que buscan, puede valer la pena verificar la entrada que se está descifrando. En mi caso, la información que se enviaba para el descifrado entraba (erróneamente) como un archivo vacío string. Dio como resultado el error de relleno.

Esto puede estar relacionado con la respuesta de Rossum, pero pensé que valía la pena mencionarlo.

Reseñas y valoraciones

Si crees que te ha sido útil nuestro artículo, sería de mucha ayuda si lo compartes con otros desarrolladores de esta forma nos ayudas a extender este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *