NetSago
Вход
Войти

Как присоединиться?
Меню
Главная
События
 Заметки
Статьи
Теги
Поиск
О Проекте
Ссылки
Наше
NetSago Paste
NetSago Phrack
RSS События по RSS
RSS Заметки по RSS
netsago NetSago
Популярное
Веб-сервер lighttpd. by n0xi0uzz

5 способов сделать использование bash более продуктивным by n0xi0uzz

Заметки — CAPTCHA с помощью Perl модуля Authen::Captcha
Назад в Заметки

CAPTCHA с помощью Perl модуля Authen::Captcha
n0xi0uzz



Теги: perl captcha



Что такое CAPTCHA? CAPTCHA — это автоматизированный тест чтобы определить, человек ли использует программу, или бот.

Сейчас CAPTCHA распространена по Сети, в основном, в виде автоматически сгенерированной картинки с текстом, который должен распознать пользователь для выполнения определенного действия (как правило, заполнение какой-либо формы) и прописать в определенном текстовом поле.

При программировании на Perl данная технология реализуется довольно легко с помощью модуля Authen::Captcha. Ниже приведен исходный код генерации изображения и проверки введенного пользователем текста:

#!/usr/bin/perl

use strict;
use warnings;

use Authen::Captcha;
use IO::Prompt;

# определям директории для хранения
# генерируемых данных
my $captcha = Authen::Captcha->new(
        data_folder   => '/tmp/Authen_Captcha',

        

output_folder => '~/public_html/', ); # генерируем картинку с 5 символами my $md5sum = $captcha->generate_code(5); # выводим её пользователю: my $code = prompt "$md5sum.png "; # проверяем результат: my $result = $captcha->check_code( $code, $md5sum ); # в зависимости от результата, # выводим сообщение if ( $result == 1 ) { print "Верно\n"; } else { print "Неверно!\n"; }

Комментарии:

Онанимус (23 апреля 2010 12:18):

qwerty

Онанимус (20 февраля 2009 00:16):

dg

Введите текст с изображения:


И комментарий:

Язык
English/Английский
Поиск
Расширенный Поиск
Ошиблись?
Если вы обнаружили ошибку на сайте, пожалуйста, сообщите нам о ней.
Посчитали
52 / 3623
К нам сегодня зашли 146 роботов. Они хотят убить всех человеков.

Зарегистрированных пользователей: 6
Онлайн: 0

Время генерации: 0.070 с
NetSago.v2.β © [2006;∞)  Neunica