lo que veo es que el texto cifrado
YUHRIdq4b1x%2B3%2FgRzNigkBfV0onuK3Xob0mYlyMikjY%2FqR%2BpLvuA3682woRIcGeA%0D%0A
tiene los caracteres que tu indicas %0, %2, los cuales no son soportados por el algoritmo (el cual genera un texto cifrado utilizando los rangos de A-Z, a-z y 0-9) probablemente es debido a que el texto plano original tiene caracteres como "&", "+", "?", "/", etc. De esa forma el algoritmo puede generar un texto cifrado corrupto.
Por otro lado, si lo que intentas hacer cifrando dichos campos es evitar algún tipo de ataque para que no se pueda acceder de forma automática a esos ficheros, es mucho más eficiente utilizar un IDS (Snort o Suricata suelen ser una excelente solución) ademas de utilizar una herramienta como Fail2ban para implementar bloqueos sobre direcciones IP. Eso si tienes control sobre el servidor o hosting en donde tienes tu aplicación, sino puedes utilizar una de esas herramientas (por restricciones del hosting por ejemplo) y lo tienes que hacer desde tu aplicación, implementar un WAF (Web Application Firewall) seria otra muy buena alternativa, algunas de las librerías existentes que te podrían servir para implementar un WAF en tu aplicación son:
Para PHP: Libreria PHPIDS (también vale mod_security si corre sobre un servidor web Apache)
Para Ruby/Java/Python/.NET: Tienes implementaciones de la librería ESAPI del proyecto OWASP
https://www.owasp.org/index.php/Category:OWASP_Enterprise_Security_API