Код для защиты от ботов

Статус
В этой теме нельзя размещать новые ответы.

DeoZ

Новичок
Код для защиты от ботов

Написал скрипт для генерации картинки с цифровым кодом для защиты от ботов. CAPTCHA пробовать не захотел, так как проект довольно простенький, да и вообще хотелось что-то собственного, стилизованного под общий стиль. Теперь встал самый главный вопрос - как делать проверку на валидность введённого кода? Интересуют все возможные варианты, так как хочу выбрать самый простой и в тоже время надёжный.
 

DeoZ

Новичок
Не подходит, так как скорее нужна стилизованная картинка под сайт.
 

Beavis

Banned
DeoZ
ну переделай алгоритм вывода картинки чтоб она была стилизованная
 

DeoZ

Новичок
Вариант, конечно. Но если отойти от уже готового и попробовать всё написать с нуля - что бы вы предложили, как программист?
 

berkut

Новичок
DeoZ кинь потом ссылку, уж очень интересно на стилизованную под сайт капчу посмотреть
 

Beavis

Banned
DeoZ
да там алгоритм весь элементарный чтоб что-то новое придумывать... только вид самой картинки можно менять... мануал по GD в руки и вперед))
 

DeoZ

Новичок
С GD вопрос решён. Интересен вопрос проверки. Ну главный вариант, как я понимаю - $_SESSION.
 

Beavis

Banned
DeoZ
ну я думаю ты сам знаешь какими способами можно хранить данные на сервере? выбирай понравившийся
 

DeoZ

Новичок
Да, варианты предполагаю. Просто интересно может кто-то может вдруг предложить что-нибудь интересненькое помимо $_SESSION. Или возможные тонкости для улучшения его надёжности.
 

Beavis

Banned
DeoZ
может ты сначала предложишь варианты как можно обойти надежность варианта с $_SESSION ?
 

DeoZ

Новичок
Да слышал про глюк с одновременным открытием страниц с кодом, обход с принудительным созданием пустой сессии, может ещё что есть...
 

Фанат

oncle terrible
Команда форума
Спасибо, не нашлось.
Это проблема не поиска, а искателя, наверное?
что бы вы предложили, как программист?
может кто-то может вдруг предложить что-нибудь интересненькое помимо $_SESSION.
Послушай, мальчик.
Похвально, когда кто-то, изучив существующие варианты, ищет что-то новое.
Но когда ламер, толком не разбираясь ни в чем стандартном, начинает вертеть носом "а принесите мне что-нибудь новенькое!" - это выглядит отвратительно.

Ты выглядишь сейчас клоуном.
"мне капчу, но без капчи!"
"мне без сессий, а что-нибудь новенькое!"

Садись, делай, как все, и не выпендривайся.
Возникнут конкретные проблемы, из практики, а не из пальца - придешь, спросишь.
 

kode

never knows best
Самое просто что можно придумать....

$code = substr(base64_encode(uniqueid()),0,5);
generatePicture($code);
$pcv = md5($code);

<input type='hidden' name='csd' value='$pcv'>

if($_POST['csd'] != md5($_POST['code'])){
//your are bot
}

доволен?
 

Kill_Santa

Новичок
Зафигачь зеленым! Зеленый рулит, реально!
Сижу, смотрю на сайт один, где картинки настолько извратили, что лично я не в состоянии прочесть :), и думаю о том, что в майке мелом намоделить штук 100-200 анимашек, и перевести в анимированные гифчики. И портить ничего не нать, мона красивую картинку сделать, и в тоже время фиг без стакана разберешься, что от тебя хотят :)

Что касается алгоритма, я-бы сделал так:

PHP:
Генерация

$_SESSION['token']['image_url'] = // выбрал картинку случайно
$_SESSION['token']['image_num'] = md5($key_images['image_num']);  // из массива в файле или из БД правильный ключ

Проверка

if (!isset($_SESISON['token'])) {die('Die, fuckin bot!'); }
if (md5($_POST['token']) != $_SESSION['token']['image_num']) {die('Die, fuckin bot!'); }
А что касается красивых картинок, напиши скрипт для фотошопа (сие весьма несложно), или для тридэмакса, или майкиным мелом (Maya Embedded Language) - сие также весьма несложно, у меня ушло полдня на освоение.
 

Фанат

oncle terrible
Команда форума
kode
попробуй понять, почему у тебя не защита, а фуфло. самостоятельно.

-~{}~ 01.02.08 12:16:

Kill_Santa
мне кажется, ты не совсем в теме.
 

Kill_Santa

Новичок
и еще предложение
1. Берем коллекцию jpg-ов, с пейзажами или с тетками, или с логотипами или с другими фирменными фотками, уменьшаем их до приемлемых размеров.
2. Накладываем GD свежесгенеренную надпись капчей, ЦВЕТ НАДПИСИ БЕРЕМ, УСРЕДНЯЯ ЗНАЧЕНИЕ ЦВЕТА НА jpg-е, чтоб фиг кто распознал....

Только-что попробовал на http://captcha.ru/ загрузить картинку 100х100 с домом и надписью "Новостройки там-то, телефон 1234567". Визуально читается великолепно!
Знаете как распознал? Цитирую: "668668".

ABBYY FineReader ответил на тоже самое полной абракадаброй.

***** так лучше? :)
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху