Привет. Делаю я игровой портал, игры все на разных серверах. Curl даю команды. Всё нормально работает. Теперь начал пектись о безопасности. выбор пал на xxtea (было готовое решение в нете) Сделал для xxtea шифровку ключа.
//ключ для xxtea
$sekret = mt_rand(1,99999999999999);
//фальшыфка для get :D пускай тру хакеры помучаются пару недель :D
$sol = mt_rand (1, 9999999);
$iid = mt_rand (1, 900);
$iid = md5($sol.$iid.sha1($sekret.$iid).md5($sol.$iid));
$dan = base64_encode($iid);
$dan = md5($sol.$iid.$dan.sha1($sekret.$iid.$dan).md5($sekret.$iid.$dan));
//шифровка ключа который делает розшыфровку :D знаю что так надёжние :D :D
$pi = mt_rand (1, 5);
$delitil = mt_rand (1, 10);
$mnogitel = mt_rand (1, 15);
$dodan = mt_rand (1, 20);
$mn = mt_rand (1, 25);
$mn1 = mt_rand (1, 50);
$procent = mt_rand (1, 5);
$procent= $sekret / $procent;
$sekret = $sekret * $mn / $pi;
$pq = $sekret / $delitil;
$pw = $pq /$procent;
$output = $pw * $mnogitel ;
$otv = $output + $dodan * $mn1;
//розшыфровка ключа
$otv = $output / $mn1 - $dodan;
$sekret =$output * $procent * $delitil / $mnogitel /$mn * $pi;
Проблемма в том что на серверах разная настройка точности вычислений (у меня на серваке щитает 777 а на удалёнке 777.998 )
Подумал подумал решил округлить и добавил
$sekret = round($sekret);
Теперь работает более мение стабильно. но так как все цифры рандом то в некоторых случиях делает удалнка 778 вместо 777. Как с этим можно бороться?