使用PHP加密/解密文本- 16个字符或更短


Encrypt / Decrypt Text using PHP - 16 characters or shorter

我想在谷歌分析中存储用户id,但是因为他们有不允许这样做的政策,我想加密php中的一些文本,并能够在需要时解密(用户id)。

问题是我希望它尽可能短。我怎样才能做到这一点呢?我一点也不担心这是否安全。

加密URL参数的最简单和最安全的解决方案是根本不加密它们。而是使用随机生成的唯一值,将其存储在所需数据库表的另一列中,并根据该列进行选择。

例如:

function generateToken()
{
    return strtr('+/', '-_', base64_encode(random_bytes(9)));
}

检索时:

$data = $db->prepare("SELECT * FROM users WHERE selector = ?")->execute([
    $_GET['user_token']
]);