PHP:加密/解密短字符串

jbs*_*und 2 php

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

因此,问题是是否存在一种密码可以减少加密字符串中使用的字符列表(即省略“+”、“\”或“/”等内容)。

Ja͢*_*͢ck 6

您可以使base64_encode网络安全:

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

function base64url_decode($b64Text)
{
    return base64_decode(strtr($b64Text, '-_,' '+/='));
}
Run Code Online (Sandbox Code Playgroud)

或者使用十六进制编码:

bin2hex($plainText);

hex2bin($hexText);
Run Code Online (Sandbox Code Playgroud)