php加密和解密cookie

php加密和解密cookie,php,file,encryption,cookies,mcrypt,Php,File,Encryption,Cookies,Mcrypt,我尝试使用以下类来加密和解密我的cookie。我需要在cookies中为让我登录功能存储用户id,这样即使用户关闭浏览器并稍后返回,也可以保持登录状态。我正在使用的以下函数对于加密工作正常。但是,它不适用于解密。这门课是我从学校上的 这里是用来解密不起作用的。它什么也不返回 function sessionUser(){ global $key, $iv; // return (isset($_SESSION['newchatapp']))?$_SESSION['newchatapp']

我尝试使用以下类来加密和解密我的cookie。我需要在cookies中为
让我登录
功能存储用户id,这样即使用户关闭浏览器并稍后返回,也可以保持登录状态。我正在使用的以下函数对于加密工作正常。但是,它不适用于解密。这门课是我从学校上的

这里是用来解密不起作用的。它什么也不返回

function sessionUser(){
  global $key, $iv;
  // return (isset($_SESSION['newchatapp']))?$_SESSION['newchatapp']:AES256Encryption::decrypt($_COOKIE['newchatapp'], $key, $iv);
  return AES256Encryption::decrypt($_COOKIE['newchatapp'], $key, $iv);
}
echo AES256Encryption::decrypt('ianXhsXhh6MWAHliZoshEA%3D%3D', $key, $iv);
即使我手动输入并尝试解码加密字符串,它仍然不会返回任何内容

function sessionUser(){
  global $key, $iv;
  // return (isset($_SESSION['newchatapp']))?$_SESSION['newchatapp']:AES256Encryption::decrypt($_COOKIE['newchatapp'], $key, $iv);
  return AES256Encryption::decrypt($_COOKIE['newchatapp'], $key, $iv);
}
echo AES256Encryption::decrypt('ianXhsXhh6MWAHliZoshEA%3D%3D', $key, $iv);

这意味着解密根本不起作用。我该怎么做才能使它工作?

为什么不生成一个加密安全令牌并将其存储在您的用户记录中呢。不需要加密或解密,如果需要,您可以在不影响用户帐户的情况下撤销它。查看浏览器是否在关闭时丢弃cookie。您的用户也不会保持登录状态。@Code4R7我将把应用程序转换为webview以用作android应用程序,因此我将确保它使用我在webview中指定的设置来保存cookie,并且除非用户注销,否则决不会销毁cookie。因此,这是可以管理的。现在,如果你能帮我解决真正的问题,我会很高兴:)当PHP在服务器上运行时,你会如何在客户端设备上模拟WebView?无论如何,我认为这不值得你花时间,因为2010年的脚本看起来相当过时,你可能最好使用示例,我也将尝试一下。我最终得到了一个没有安全缺陷并使用openssl_random_pseudo_bytes()的SO答案。