Генерация ID юзера, нужна помощ в реализации

Discussion in 'PHP' started by Whois, 10 Jul 2009.

  1. Whois

    Whois Banned

    Joined:
    5 May 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    Возможно раньше эта тема и обсуждалась но я не нашел того что искал.
    Вобщем нужна помошь. Средствами php нужно сгенерировать ID пользователя. примером может послужить чат бородина, (php.spb.ru/chat) но там используют яву а не php, которая не может сразу определить ID пока пользователь не пропустят через определенную страницу. Суть в том что при регистарции чата, скрипт собирает паратмеры компа (геозона, расширения экрана итд) и генерируется индивидуальны ID по которому можно в дальнейшем отличить пользователя. Мне нужно сделать чтото похожее. При заходе посетителя на страницу, считывался бы его ID и после этого мой скрипт бы решал пропускать его на страницу или нет. Т е определение ID должно проходить сразу, без посещения посторонних страниц. Сразу скажу глоабьный Reomte_addr и user_agent не предлагать.
    Если у когото есть другие идеи по определению пользователя - я вас выслушаю. IP не устраивает т к у многих динамик
     
  2. zEr0r

    zEr0r Elder - Старейшина

    Joined:
    17 Feb 2008
    Messages:
    67
    Likes Received:
    28
    Reputations:
    14
    я в афиге
    а сделать стандартное increment id никак?
     
  3. Whois

    Whois Banned

    Joined:
    5 May 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    ты мой пост видимо через строки читал и упустил всю суть, причем тут мускул, если ты о нем :rolleyes:
     
  4. imajo.ati

    imajo.ati Banned

    Joined:
    21 Feb 2008
    Messages:
    232
    Likes Received:
    62
    Reputations:
    8
    не прокатит такой способ. допустим юзверь сменит разрешение экрана и сможет войти в чат минуя баан. чем больше всего пишется в ID тем легче обойти.
     
  5. Whois

    Whois Banned

    Joined:
    5 May 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    PS если ктото еще не понял Это все равно что бан по ID юзера, где у каждого юзера свой ID.
    Плюсы такого метода в том что Смена Ника и Ip не поможет, т к ID составляется по определенным критерями (характеристики железа)
     
  6. Whois

    Whois Banned

    Joined:
    5 May 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    Да ты прав.... но можно составить регулярки и определять пытался ли чтонибудь менять юзвер или нет. Да и щас проблема не в том как сменить расширение экрана итд, а втом как это реализовать средствами PHP ну или любыми вам известными методами.
     
  7. imajo.ati

    imajo.ati Banned

    Joined:
    21 Feb 2008
    Messages:
    232
    Likes Received:
    62
    Reputations:
    8
    ты их не получишь через веб =)
     
  8. Whois

    Whois Banned

    Joined:
    5 May 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    Это я тоже знаю.... Мне бы помаксимум собрать паратмеров о компе... У меня был опыт держать чаты, года 2 назад много ими занимался и даже продвинутым юзерам зачастую не удавалось обойти бан по ID. Вырезать проверку из чата можно, но опятьтаки чтобы собрать ID в чате нужно пройти через определукнню страницу, меня такой вариан тне устраивает (((
     
  9. FireFenix

    FireFenix Elder - Старейшина

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    login + pass [+ captcha], [+id]

    можно взять id сессии или к примеру id можно гененить
    uniqid — Generate a unique ID
    PHP:
    <?php
    // no prefix
    // works only in PHP 5 and later versions
    $token md5(uniqid());

    // better, difficult to guess
    $better_token md5(uniqid(rand(), true));
    ?> 
    при логине проверять пасс, [капчу], [id (бд == куки)]
    потом после логина обновлять id или c каждой новой сесиией обновлять id

    вобщем обычная авторизация, не понимаю в чём загвоздка?
     
  10. imajo.ati

    imajo.ati Banned

    Joined:
    21 Feb 2008
    Messages:
    232
    Likes Received:
    62
    Reputations:
    8
    можно узнать маршрут HTTP пакета и инфу о веб-клиенте (браузере)
    из инфы о браузере полезной будет инфа о поддерживаемых mime-типах

    javascript может подсказать это:
    for ( i in window.navigator ) alert(i);
    еще разрешение экрана и используемые плагины

    java у многих отключена, тем более у тех, кто захочет обойти бан )
     
  11. imajo.ati

    imajo.ati Banned

    Joined:
    21 Feb 2008
    Messages:
    232
    Likes Received:
    62
    Reputations:
    8
    а если то что в последних квадратных скобках не случится, получится лишняя запятая в конце!

    правильно так: login, pass [, captcha [, id]]
     
    1 person likes this.
  12. Whois

    Whois Banned

    Joined:
    5 May 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    ребята вы немног оне вт ом направлении думаете? С принципами авторизации я знаком. Допустим есть Ваня.
    Я нехачу чтобы Ваня посещал мой сайт, хачу чтобы при заходен на мой сайт Ване выдавалось приветсвие : "Хули ты тут потерял"

    Дальше самое интересное. А как же мне отличить Ваню от Пети:? Что я знаю о Ване?
    Я знаю что у вани есть IP - который могу добавить htaccess б но это не выход т к у вани может быть динамический IP.
    Я могу ване послать куксы - но Ваня может сменить браузер.
    Поэтому мне нужно собрать больше инфы о Ване.
     
  13. neval

    neval Elder - Старейшина

    Joined:
    13 Dec 2006
    Messages:
    457
    Likes Received:
    116
    Reputations:
    23
    Нужно больше инфы - ставь лоадер на странице )

    По факту - никак не сделаешь идентификацию кроме IP, браузера, разрешения экрана и глубины цвета...
     
  14. Whois

    Whois Banned

    Joined:
    5 May 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    Что за лоадер? Примеры можно?
     
    #14 Whois, 11 Jul 2009
    Last edited: 11 Jul 2009
  15. b3

    b3 Moderator

    Joined:
    5 Dec 2004
    Messages:
    2,041
    Likes Received:
    933
    Reputations:
    199
    Сделай в БД в таблице юзеров новую колонку ban в ней пиши всем 0 при регистрации и условие:
    если 0 то пускать в чат, если 1 то непускать и все, и будет у тебя Бан лист по аккаунту, а то что юзвер регнет новый акк етого никак не избежать т.к. куки трутся, ИП меняется, Юзер Агент тоже можно при желании подменять другими браузерами.
     
    _________________________