Мне нужно зашифровать и расшифровать короткие строки (пример. Product1234). Я использовал mcrypt_encrypt и mcrypt_decrypt с различными шифрами. Проблема в том, что он неизменно выводит расширенные символы в итоговую строку, что вызывает некоторые проблемы с некоторыми аспектами кода приложения, которые я не могу контролировать.
Итак, вопрос заключается в том, существует ли шифр, который уменьшает список символов, которые используются в зашифрованной строке (т. Е. Исключая такие вещи, как «+», «\» или «/»).
Вы можете сделать base64_encode
web безопасным:
function base64url_encode($plainText) { return strtr(base64_encode($plainText), '+/=', '-_,'); } function base64url_decode($b64Text) { return base64_decode(strtr($b64Text, '-_,' '+/=')); }
Или используйте шестнадцатеричное кодирование:
bin2hex($plainText); hex2bin($hexText);