Всем привет! Пример дешифрования простого шифра на сервере с помощью php (шифр Цезаря со сдвигом -1
), работает на php версии 5.6 и ниже:
function UnCrypt($str) { $chrArray = preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY); for ($x=0; $x<mb_strlen($str, 'UTF-8'); $x++) { $ch = hexdec(bin2hex(mb_convert_encoding($chrArray[$x], 'UCS-2', 'UTF-8'))); $chrArray[$x] = uchr($ch-1); } return implode("", $chrArray); }
Функция uchr
— для преобразования кода символа в символ UTF-8
. Получив на вход число — вернет строку из одного символа, получив на вход массив чисел — вернет строку, составленную из этих чисел:
function uchr ($codes) { if (is_scalar($codes)) $codes= func_get_args(); $str= ''; foreach ($codes as $code) $str.= html_entity_decode('&#'.$code.';',ENT_QUOTES,'UTF-8'); return $str; }
от