2

我需要加密和解密短字符串(例如'product1234')。我已经将 mcrypt_encrypt 和 mcrypt_decrypt 与各种密码一起使用。问题是它总是将扩展字符放入结果字符串中,这会导致我的应用程序代码的某些方面出现一些我无法控制的问题。

所以,问题是是否有一种密码可以减少加密字符串中使用的字符列表(即省略诸如'+'、'\'或'/'之类的东西)。

4

1 回答 1

4

您可以使base64_encode网络安全:

function base64url_encode($plainText)
{
    return strtr(base64_encode($plainText), '+/=', '-_,');
}

function base64url_decode($b64Text)
{
    return base64_decode(strtr($b64Text, '-_,' '+/='));
}

或者使用十六进制编码:

bin2hex($plainText);

hex2bin($hexText);
于 2012-06-18T02:08:44.260 回答