// айпишник "записываем" как раз на случай украденных кук
// и проверяем так же просто...
если разные айпи - логаут.
если айди сессии != тому айди, что в куках - логаут.
в таком случае не нужно что-то генерить, а тем более хранить в базе или совать и читать оттуда каждый раз(!) при вызове странички, где предполагается авторизация..А если страничек тысяча? Мемкеш можно, но зачем? :) Просто напишите функцию и вызывайте в хедере каждой страницы, где нужна проверка.
Да, проверку на длину строки/заглавные или строчные буквы можно прямо в регулярке делать.
И никогда не стоит делать что-то вроде md5(md5(...)); т.к. это хэш-функция, т.е. перебор будет осуществляться без особых осложнений (единственный минус - с каждым md5 увеличивается процессорное время, необходимое на генерацию хеша), просто выбирайте более продвинутые алгоритмы.
Надо хеш - есть md5(uniqid(rand()));
Есть задача проверять "не украли ли куку"/действительна ли авторизация -
session_start();
// в куке (при дефолтных настройках пхп) появляется PHPSESSID, уже сгенеренное
// присваиваем готовые значения
$_SESSION['USER_PHPSESSID'] = $_COOKIE['PHPSESSID'];
$_SESSION['USER_REMOTE_ADDR'] = $_SERVER['REMOTE_ADDR'];
// айпишник "записываем" как раз на случай украденных кук
// и проверяем так же просто...
если разные айпи - логаут.
если айди сессии != тому айди, что в куках - логаут.
в таком случае не нужно что-то генерить, а тем более хранить в базе или совать и читать оттуда каждый раз(!) при вызове странички, где предполагается авторизация..А если страничек тысяча? Мемкеш можно, но зачем? :) Просто напишите функцию и вызывайте в хедере каждой страницы, где нужна проверка.
Да, проверку на длину строки/заглавные или строчные буквы можно прямо в регулярке делать.
И никогда не стоит делать что-то вроде md5(md5(...)); т.к. это хэш-функция, т.е. перебор будет осуществляться без особых осложнений (единственный минус - с каждым md5 увеличивается процессорное время, необходимое на генерацию хеша), просто выбирайте более продвинутые алгоритмы.