Насколько я читал из здесь, тот факт, что captchas не на 100% безопасен. Что можно использовать вместо captcha? Как программист, как вы думаете? как решить эту проблему?
Изменить: спасибо за все ответы.
Насколько я читал из здесь, тот факт, что captchas не на 100% безопасен. Что можно использовать вместо captcha? Как программист, как вы думаете? как решить эту проблему?
Изменить: спасибо за все ответы.
Это нерешенная проблема, и с течением времени она станет более нераскрытой. Чем лучше инструменты OCR, тем меньше разрыв между людьми и компьютерами, и чем сложнее будет рассказать им обособленно. В конце концов, компьютеры будут неотличимы от людей, а затем игра будет вверх.
Если ваш сервер хочет убедиться, что человек находится на другом конце TCP-протокола, не существует теста turing-test, который в конечном итоге не будет побежден (и, вероятно, никогда не будет такого). CAPTCHA обречен, это всего лишь вопрос о том, как скоро.
Конечно, это не значит, что это касается человеческой аутентификации. Это просто означает, что автоматические тесты turing, так же удобные, как они, не будут эффективным способом достижения этого в течение очень долгого времени.
Я думаю, что это действительно зависит от того, что вы пытаетесь контролировать использование captcha.
Дальнейшее объяснение предложения Бориса:
случайным образом сгенерированный скрытый ввод, который должен иметь значение null
Идея состоит в том, что ваша форма содержит несколько невидимых входов, их тип, вероятно, не должен быть скрытым, но они должны быть невидимыми для человека (например, установить ширину или высоту до 0). Первоначальное содержимое этих полей должно быть пустым. Если человек заполняет форму, поле будет пустым, потому что человек не может видеть поле, чтобы в него что-либо вставить, но если бот заполнит форму, поле будет (возможно) не пустым, потому что боты обычно просто слепо вводите что-то в каждое поле.
Таким образом, вы можете отличить бота и человека от того, пусто ли содержимое этого поля.
Хотя captchas можно сломать, Capthca только добавить к безопасности reCapthca очень хорошо, и обученный OCR, такой как Tesseract, будет иметь очень ограниченный успех в его нарушении. Тем не менее, есть наряды, которые используют Human Computation, чтобы разбить их на гроши. Но это делает атаки против вашей системы более дорогими, и это лучшее, на что вы можете надеяться. Криптография может быть разбита с помощью грубой силы. Все хэши паролей являются гибкими, но мы по-прежнему используем их, потому что это затрудняет атаку.
Большинство "решений" в этом потоке "" Security While Obscurity", и вы должны с осторожностью относиться к этим быстрым исправлениям сложная проблема.
Captcha используются для определения того, что фактический человек выполняет запрос, а не машину. Captcha и captcha-подобные системы будут обновляться, и технология также сможет их сломать.
Итак, как вы подтверждаете, что разговариваете с человеком, а не с компьютером? Например, вы можете потребовать от пользователей участия в сеансе чата и небольшого разговора. В настоящее время нет ИИ, которые проходят тест на трение.
Итак, ответ: никакая система не идеальна. Не пытайтесь решить эту проблему, но попытайтесь найти способ уменьшить влияние этого.
В долгосрочной перспективе правительство может запускать openid-серверы в качестве цифровых паспортов для своих граждан. Это был бы чистый способ идентифицировать людей и предотвратить заражение.
В настоящий момент на моем сайте я выбрал простые вопросы. Некоторые вопросы, которые я использовал в прошлом:
Некоторые другие приятные могут быть
Лучший способ, которым я могу думать, - использовать что-то нетрадиционное, как специальное скрытое поле, которое должно быть нулевым (или другим конкретным значением), с которым роботы будут возиться.
Если какой-либо производитель роботов настраивает свой робот для вашего сайта, вам придется быстро изменить капчу на что-то другое. Он (надеюсь) займет хорошее время, прежде чем другой производитель робота настроит свой робот для вашего сайта.
В принципе, это безопасность через неясность, которая должна постоянно меняться, чтобы оставаться неясной.
Это не сработает, если кто-то специально нацеливает ваш сайт.
Его просто идея, идентификатор, используемый в моем приложении и хорошо работающий
вы можете создать файл cookie при перемещении мыши с javascript или jquery и на стороне сервера проверить, существует ли файл cookie, потому что только у людей есть мышь, cookie может быть создан только ими cookie может быть отметкой времени или токеном, который может быть проверен
Получает координаты мыши, определяет, изменились ли координаты, вы можете определить, является ли это роботом.
Затем зашифруйте данные координат.