Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: непонятки с mysql_fetch_array

Сообщения:  [1-10]   [11-16] 

 
 автор: ladan   (10.01.2012 в 23:52)   письмо автору
 
   для: ladan   (10.01.2012 в 16:15)
 

вообщем весь день убил на то, чтоб понять почему в запрос отправляется неверная расшифрованная инфа.
Оптимальное решение, это скрипт, что приводил в самом первом сообщении, он рабочий, но оказывается, если длина шифруемого текста меньше чем 8 символов, то расшифрованные данные не пойдут для запроса бд.. вообще бред.

Может быть из-за этого алгоритма $td = mcrypt_module_open ('des', '', 'ecb', '');?

  Ответить  
 
 автор: ladan   (10.01.2012 в 16:15)   письмо автору
 
   для: ladan   (10.01.2012 в 16:06)
 

все, данные из бд выводит!!!!!!! Косячный шифровальщик был, софт тайм рулит ))

  Ответить  
 
 автор: ladan   (10.01.2012 в 16:06)   письмо автору
 
   для: ladan   (10.01.2012 в 16:00)
 

а нет, извиняюсь, все правильно из статьи софттайм, это я косячил

  Ответить  
 
 автор: ladan   (10.01.2012 в 16:00)   письмо автору
 
   для: ladan   (10.01.2012 в 15:55)
 

из статьи http://www.softtime.ru/bookphp/gl8_2.php

там в шифровании указан такой вектор

<?

  $vector 
mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_CAST_256
                             
MCRYPT_MODE_CFB), MCRYPT_RAND);

?>


не буду говорить, что это неправильно, но пароль не расшифровывался

поменял на

<?

  $vector 
mcrypt_create_iv (mcrypt_get_iv_size (MCRYPT_CAST_256MCRYPT_MODE_CFB), MCRYPT_DEV_RANDOM);

?>


и сейчас вот расшифровался.

  Ответить  
 
 автор: ladan   (10.01.2012 в 15:55)   письмо автору
 
   для: ladan   (10.01.2012 в 15:46)
 

все, разобрался с вектором




<?

  $size 
mcrypt_get_iv_size (MCRYPT_CAST_256MCRYPT_MODE_CFB);
    
$iv mcrypt_create_iv ($sizeMCRYPT_DEV_RANDOM);
  
$key "qwe233jk312jx813893xk312"// ключ для расшифрования
  
$password "12345";
  
$pass_shifr mcrypt_encrypt(MCRYPT_CAST_256$key$password,
                           
MCRYPT_MODE_CFB$iv);
                           

echo 
$pass_shifr."<br><br>";


 
 
  
$key "qwe233jk312jx813893xk312";
  
$pass_deshifr mcrypt_decrypt(MCRYPT_CAST_256$key$pass_shifr,
                                  
MCRYPT_MODE_CFB$iv);
  echo 
$pass_deshifr;
?>

выводит рандомный шифрованный пароль и расшифровывает в то что надо :)

  Ответить  
 
 автор: ladan   (10.01.2012 в 15:46)   письмо автору
 
   для: Slo_Nik   (10.01.2012 в 15:39)
 

делал так, все нормально проходит, функция шифрования такая значит :) Вот сейчас проблема с вектором(сообщение выше)

  Ответить  
 
 автор: Slo_Nik   (10.01.2012 в 15:39)   письмо автору
 
   для: ladan   (10.01.2012 в 15:35)
 

попробуйте получить данные из базы без всякой шифровки.
если всё пройдёт нормально, то дело в функции шифрования и тогда будете знать где искать причину

  Ответить  
 
 автор: ladan   (10.01.2012 в 15:35)   письмо автору
 
   для: ladan   (10.01.2012 в 15:15)
 

уже получилось расшифровать, но без - $vector в mcrypt




<?


  $key 
"qwe233jk312jx813893xk312"// ключ для расшифрования
  
$password "12345";
  
$pass_shifr mcrypt_encrypt(MCRYPT_CAST_256$key$password,
                           
MCRYPT_MODE_CFB);
                           

echo 
$pass_shifr."<br><br>";


 
 
  
$key "qwe233jk312jx813893xk312";
  
$pass_deshifr mcrypt_decrypt(MCRYPT_CAST_256$key$pass_shifr,
                                  
MCRYPT_MODE_CFB);
  echo 
$pass_deshifr;
?>

при перезагрузке шифрованный пароль не меняется, но выдается предупреждение

Warning: mcrypt_encrypt() [function.mcrypt-encrypt]: Attempt to use an empty IV, which is NOT recommend

а с вектором не удается расшифровать (

  Ответить  
 
 автор: ladan   (10.01.2012 в 15:17)   письмо автору
 
   для: Slo_Nik   (10.01.2012 в 15:15)
 

ну я один владелец, доступ к бд только у меня:) А так конечно пароль в бд совпадает с тем что ввожу, но mysql_fetch_array не хочет принимать "такой расшифрованный" пароль

  Ответить  
 
 автор: ladan   (10.01.2012 в 15:15)   письмо автору
 
   для: ladan   (10.01.2012 в 14:55)
 

нашел хороший шифровальщик http://www.softtime.ru/bookphp/gl8_2.php

<?

Шифрование

Применить шифрование к cookies можно разными способами
рассмотрим один из них:
<?
  
// создаем вектор начального состояния для шифрования
  
$vector mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_CAST_256
                             
MCRYPT_MODE_CFB), MCRYPT_RAND);
  
$key "qwe233jk312jx813893xk312"// ключ для расшифрования
  
$cook_name "maks";
  
$cipher mcrypt_encrypt(MCRYPT_CAST_256$key$cook_name,
                           
MCRYPT_MODE_CFB$vector);
  
setcookie("username"$cipher"/decrypt.php");
?>

Как видно из листинга 10.13, расшифровка cookie проводится при помощи скрипта decrypt.php, код которого приведен ниже:
<?
  
// вектор начального состояния остается неизменным
  
$vector mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_CAST_256,
                             
MCRYPT_MODE_CFB), MCRYPT_RAND);
  
$key "qwe233jk312jx813893xk312";
  
$decrypt_name mcrypt_ decrypt(MCRYPT_CAST_256$key$username,
                                  
MCRYPT_MODE_CFB$vector);
  echo(
"$decrypt_name, мы рады видеть вас на нашей страничке!");
?>


?>



Пока что разбираюсь в нем, сделал так. Пароль шифрует, но не расшифровывает

<?

  
// создаем вектор начального состояния для шифрования
  
$vector mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_CAST_256
                             
MCRYPT_MODE_CFB), MCRYPT_RAND);
  
$key "qwe233jk312jx813893xk312"// ключ для расшифрования
  
$password "12345";
  
$pass_shifr mcrypt_encrypt(MCRYPT_CAST_256$key$password,
                           
MCRYPT_MODE_CFB$vector);
                           

echo 
$pass_shifr."<br><br>"/* выводит зашифрованный пароль */




  // вектор начального состояния остается неизменным
  
$vector mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_CAST_256,
                             
MCRYPT_MODE_CFB), MCRYPT_RAND);
  
$key "qwe233jk312jx813893xk312";
  
$pass_deshifr mcrypt_decrypt(MCRYPT_CAST_256$key$pass_shifr,
                                  
MCRYPT_MODE_CFB$vector);

  echo 
$pass_deshifr/* выводит карякули */
?>




И это нормально, что при каждой перезагрузке он каждый раз по разному шифруется?

  Ответить  

Сообщения:  [1-10]   [11-16] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования