За последние 24 часа нас посетили 16907 программистов и 1646 роботов. Сейчас ищут 937 программистов ...

Капча_POST

Тема в разделе "Прочие вопросы по PHP", создана пользователем amir_Mirov, 25 сен 2014.

  1. amir_Mirov

    amir_Mirov Новичок

    С нами с:
    25 сен 2014
    Сообщения:
    90
    Симпатии:
    0
    Всем Доброго времени суток!
    Суть вопроса - делаю капчу ( формирую код ) прогоняю через md5 передаю в вид с оригиналом капчи:
    Код (Text):
    1. <input type="hidden" value="<?=$hash?>"
    2. <?=$k{0}?>&nbsp;<?=$k{1}?>&nbsp;<?=$k{2}?>&nbsp;<?=$k{3}?>&nbsp;<?=$k{4}?>&nbsp;
    при обработке пришедшей формы получаю md5 - того что в вел пользователь сравниваю.
    Но на сколько правильно(без опасно-ли ) так делать?
     
  2. Хыиуду

    Хыиуду Активный пользователь

    С нами с:
    3 июн 2014
    Сообщения:
    618
    Симпатии:
    5
    А зачем вам передавать на сторону клиента md5? Вы на клиентской стороне проверку делаете? Там вообще нельзя проверять, потому что к JS пользователь имеет доступ, и спокойно эту капчу обойдет. А если на серверной - зачем вам передавать этот md5, не проще ли где-нибудь в сессию положить?
     
  3. amir_Mirov

    amir_Mirov Новичок

    С нами с:
    25 сен 2014
    Сообщения:
    90
    Симпатии:
    0
    идея в том чтобы избежать использования сессий (возможно ошибочно, полагаю сессия будит в исполнении дороже,но суть не в этом
    суть - мне бы было удобней обойти сессию в данном случаи
    обход капчи не страшен главное чтобы он не был быстрым .
    - возможно перемудрил, хотелось бы понять
    сравнение на серверной части.
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    я не понял идею

    С хешем можно без сессий, да.
     
  5. Хыиуду

    Хыиуду Активный пользователь

    С нами с:
    3 июн 2014
    Сообщения:
    618
    Симпатии:
    5
    Если проверка на серверной стороне, но хочется большей секурности - можете использовать соленый хэш. Т.е. брать случайную строку (например, $salt = '*d3E92&#81)(~';), потом отдавать клиенту $salted_hash=hash(hash($captcha) . $hash($salt)). И проверять так же - if (hash(hash($_POST['captcha']) . hash($salt)) == $_POST['salted_hash']) {все хорошо}
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    А не солёный не получится использовать - раскусить слишком легко.
     
  7. amir_Mirov

    amir_Mirov Новичок

    С нами с:
    25 сен 2014
    Сообщения:
    90
    Симпатии:
    0
    это хеш капчи, в случаи с пользователем капчу и так будит видно. а касаемо соли хотелось бы понять - md5(md5($val)) чем это будит хуже соли,
    а если говорить о боте - не страшно даже если он и пройдет капчу. ибо считаю что гораздо проще будит ее получить из самого кода нежели дешифровать хеш.
    Код (Text):
    1. <?=$k{0}?>&nbsp;<?=$k{1}?>&nbsp;<?=$k{2}?>&nbsp;<?=$k{3}?>&nbsp;<?=$k{4}?>&nbsp;
    Прошу прощения, функция которую я хочу реализовать будит выполнять отсылку письма для восстановления пароля
    и будит работать с базой, вижу тут намек на ддос - понимание что можно обойти любую зашиту и привело к решению зделать максимально просто. база mysql доступ через процедуру что думаю в разы увеличит стойкость + простой код
    возможно все это бред - что хотелось бы понять.
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Тебе не нужно два md5. Достаточно и одного. Просто надо делать md5("uchdusqvimpmyfdwzrguomhrxrbogkgsxyjn".$val) и вставить в хидден поле формы. Когда юзер пришлёт свой ответ и этот хеш, подставишь его ответ опять и сравнищь. и всё станет ясно.
     
  9. Zhan

    Zhan Новичок

    С нами с:
    18 сен 2014
    Сообщения:
    4
    Симпатии:
    0
    Ребята! Подскажите пожалуйста! Нужно создать админку, а там: ПОСТ с прикрепленным календарем. Как все это можно сделать?
     
  10. Хыиуду

    Хыиуду Активный пользователь

    С нами с:
    3 июн 2014
    Сообщения:
    618
    Симпатии:
    5
    Что значит "ПОСТ с прикрепленным календарем"?
     
  11. deblogger

    deblogger Новичок

    С нами с:
    11 июл 2013
    Сообщения:
    200
    Симпатии:
    0
    Админ заходит, открывает календарь, а там - ПОСТ! Вот что ему надо.

    Насчет хешей. Это кто ж с такой скоростью регится и на какой сайт в таком количестве, чтоб волновали ресурсы на обработку формы?
     
  12. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768