Гамми́рование, или Шифр XOR, — метод симметричного шифрования, заключающийся в «наложении» последовательности, состоящей из случайных чисел, на открытый текст. Последовательность случайных чисел называется гамма-последовательностью и используется для зашифровывания и расшифровывания данных.
function gamma_encryption($str, $passw = '') {
$salt = 'jEJerBV3xg';
$len = strlen($str);
$gamma = '';
$n = $len > 100 ? 8 : 2;
while (strlen($gamma) < $len) {
$gamma .= substr(pack('H*', sha1($passw . $gamma . $salt)), 0, $n);
}
return $str ^ $gamma;
}