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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Генерация ID сессии session_id()
 
 автор: Staglu   (23.01.2008 в 20:14)   письмо автору
 
 

У меня такой вопрос. По какому принципу генерируется ID сесии (при вызове session_id();).

   
 
 автор: bronenos   (23.01.2008 в 20:25)   письмо автору
 
   для: Staglu   (23.01.2008 в 20:14)
 

некий рандом + md5 видимо

   
 
 автор: Staglu   (23.01.2008 в 20:29)   письмо автору
 
   для: bronenos   (23.01.2008 в 20:25)
 

Ну хорошо рандом и md5! А потом я как понимаю просто это ID привязывается к IP адресу клиента. Правильно?

   
 
 автор: bronenos   (23.01.2008 в 20:40)   письмо автору
 
   для: Staglu   (23.01.2008 в 20:29)
 

никак не привязывается, клиент ее передает (cookie или get параметр)

   
 
 автор: Staglu   (23.01.2008 в 20:44)   письмо автору
 
   для: bronenos   (23.01.2008 в 20:40)
 

А если я к примеру решил написать собственный механизм сессий. Как тогда мне лучше, и безопаснее генерировать ID сесии?

   
 
 автор: bronenos   (23.01.2008 в 20:51)   письмо автору
 
   для: Staglu   (23.01.2008 в 20:44)
 

Главное - чтобы не повторялись

   
 
 автор: Staglu   (23.01.2008 в 20:53)   письмо автору
 
   для: bronenos   (23.01.2008 в 20:51)
 

А если я буду к примеру ip адрес клиента через md5 пропускать. Безопасен такой алгоритм? Могут взломать?

   
 
 автор: skor   (23.01.2008 в 22:00)   письмо автору
 
   для: Staglu   (23.01.2008 в 20:53)
 

md5(софт+ip);

   
 
 автор: Trianon   (23.01.2008 в 22:15)   письмо автору
 
   для: Staglu   (23.01.2008 в 20:53)
 

то он начнет повторяться.
Так делать нельзя.
PS. Добавление user_agent здесь не поможет.

   
 
 автор: а-я   (23.01.2008 в 22:34)   письмо автору
 
   для: Staglu   (23.01.2008 в 20:53)
 

конечно смогут... =)

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

если даже Вы хотите так сделать,
то можно поступить так

md5(софт+ip+time());

это выражение привет к минимум повторы ID....

   
 
 автор: Staglu   (23.01.2008 в 23:03)   письмо автору
 
   для: а-я   (23.01.2008 в 22:34)
 

Если я не ошибаюсь, то функция time() будет изменяться с каждой секундой и хэш md5 будет меняться. И если я захочу узнать ID клиента, то он уже будет другой.

   
 
 автор: Staglu   (23.01.2008 в 23:06)   письмо автору
 
   для: Staglu   (23.01.2008 в 23:03)
 

К примеру почему я хотел ip пропустить через md5(), потому что ip у пользователя единственный и при повторном вызове функции ID не измениться у клиента. Если я неправильно мыслю поправте

   
 
 автор: а-я   (23.01.2008 в 23:31)   письмо автору
 
   для: Staglu   (23.01.2008 в 23:06)
 

ну, не забывайте, что есть у кого динамический IP/

Вам то зачем знать какой SID у клиента?

если нужно, то можно посмотреть на время создания сессионого файла... =)

   
 
 автор: Staglu   (23.01.2008 в 23:41)   письмо автору
 
   для: а-я   (23.01.2008 в 23:31)
 

О точно! Хорошая идея С-П-А-С-И-Б-О!

   
Rambler's Top100
вверх

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