Php openssl_解密的问题

Php openssl_解密的问题,php,encryption,Php,Encryption,所以我正在尝试创建一个加密应用程序,我遇到了一个基本问题。它们通过以下功能进行过滤/消毒: 带标签和添加斜杠 然后使用OpenSSL使用AES-256-CBC对其进行加密。因此: 我的加密购物清单: -牛奶 -蛋 -豆子 别忘了收据。 很好,不过它显然没有引用单引号。所以我得到了不想要的东西,因为它会破坏用户体验。但是,只要我去掉addslashes,openssl_decrypt函数就会返回false 有什么想法吗?是的,我的建议很简单:不要逃避/净化输入。这正是为什么新版本的PHP中禁用了m

所以我正在尝试创建一个加密应用程序,我遇到了一个基本问题。它们通过以下功能进行过滤/消毒:

带标签和添加斜杠

然后使用OpenSSL使用AES-256-CBC对其进行加密。因此:

我的加密购物清单: -牛奶 -蛋 -豆子 别忘了收据。 很好,不过它显然没有引用单引号。所以我得到了不想要的东西,因为它会破坏用户体验。但是,只要我去掉addslashes,openssl_decrypt函数就会返回false


有什么想法吗?

是的,我的建议很简单:不要逃避/净化输入。这正是为什么新版本的PHP中禁用了magic quotes

在99.99%的情况下

但是,只要我去掉addslashes,openssl_decrypt函数就会返回false


这听起来很奇怪。你能在3v4l.org上发布一个带有假密钥的代码片段并在此处共享链接吗?

如果你只是想加密数据,为什么需要使用strip_标记和addslashes。您可以按原样存储/加密数据。您应该只需要在显示时对其进行消毒。您在加密或解密时遇到问题吗?@RocketHazmat decrypting。只有在存储未经消毒的加密数据时才会出现此问题…这毫无意义。您如何存储/检索加密数据?@RocketHazmat nope。不过,我发现了这个问题,需要帮助解决。因此,加密生成的字符串的长度是实际存储在数据库中的字符串的4倍。我将该列设置为长文本,尽管只有短字符串可以正常工作。如何解决这个问题?