Форум

Открыть Ответить

Защита Post данных - Решение скрытия через пост

0

0

1
18.07.2018 09:50:00 21.11.2018 18:32:02

Вариант решения скрытия передаваемых данных через пост.

  1. Задаём секретный ключ, например:


$key = "GDSH12345678909040363738k4653475JSGHDJSDSKJDF476354";

2. Зашифровываем данные

$td = mcrypt_module_open(MCRYPT_BLOWFISH,'',MCRYPT_MODE_CFB,''); //открываем модуль шифрования и получаем его дискриптор
$iv_size = mcrypt_enc_get_iv_size($td);          //  получаем размер вектора шифрования на основе дискриптора.
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);          // Создание вектора шифрования
mcrypt_generic_init($td,$key,$iv);          // открытие буфера обмена обмена для шифровки данных
$crypt_text = mcrypt_generic($td,$post);         //  шифруем данные
mcrypt_generic_deinit($td);          //  закрываем буфер обмена
mcrypt_module_close($td);         //  закрываем модуль обмена

3. Кодируем для передачи

$post=base64_encode($iv.$crypt_text);

4. отправляем через пост

<form method="POST" action=""> 
<input type="hidden" name="postdata" value=".$post."> 
<input type="submit" value="OK" >
</form>"

5. получаем и декодируем пришедшие данные

$post=base64_decode($_POST['postdata']);

6. Расшифровываем

$key = "GDSH12345678909040363738k4653475JSGHDJSDSKJDF476354";
$td = mcrypt_module_open(MCRYPT_BLOWFISH,'',MCRYPT_MODE_CFB,'');
$iv_size1 = mcrypt_enc_get_iv_size($td);
$iv1 = substr($post,0,$iv_size1);
$post = substr($post,$iv_size1);
mcrypt_generic_init($td,$key,$iv1);
$post = mdecrypt_generic($td,$post);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);

7. Оперируем с полученными данными

$post=explode("|",$post)
$
                        result=$db->sql_query("INSERT INTO ".$prefix."_balance summa='". $post[0]")

olevpa
  • Группа: Клиент
  • Пункты: 32309
  • Регистрация: 06.05.2011
  • Пол: Мужчина
olevpa
4.01

4.01

19.07.2018 12:24:50

Спасибо! Вечером добавлю в свою сборку, пригодится в будущем.

otherside
  • Группа: Активисты
  • Пункты: 10766
  • Регистрация: 28.10.2005
  • Пол: Мужчина
  • Из: Москва
otherside
3.96

3.96

Открыть Ответить

Хотите опробовать SLAED CMS в действии?

Идеи и предложения
Обратная связь