Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
59
Добавлен:
07.08.2013
Размер:
202.57 Кб
Скачать

2.2 Розробка структури програми

Сьогодні, завдяки панам спам-ботам із ними, в мережі практично неможливо щось зробити без введення символів зі згенерованого зображення - CAPTCHA (далі - капча). Основні правила При розробці капчі потрібно обов'язково дотримуватися кількох основних правил:

1. Капча створена для людей Вона повинна сходу читатися, але не на шкоду стійкості до розпізнавання. Дуже наочний приклад капчі, не дотримує це правило -зображення праворуч.

2. Генератор капчі повинен бути чітко обмежений у використовуваних символах. До речі, коли мова йде про капчі з використанням кириличних символів - ні в якому разі генератор не повинен використовувати букву «е». Особисто я знаю багато людей, у яких на ~ (тильда / е) повішено якусь дію в системі.

3. Капча повинна бути стійкою до розпізнавання. Але не на шкоду читаності. Взагалі, цей пункт - найскладніший у всій розробці. Необхідно знайти золоту середину - капча сходу читається людьми і взагалі (наскільки можливо) не читається ботами. Так само необхідно враховувати специфіку ресурсу, на якому планується використовувати капчу, і його контингенту. Якщо мова йде про, припустимо, форумі читаючих домогосподарок за сорок, то на стійкість капчі можна плюнути з високої вежі - нікому він не упреться. Якщо мова йде про, наприклад, імейджборде, то тут потрібна капча а-ля вирвиоко. Проектуваннявякості теоретичного об'єкта, для якого ми будемо робити капчу, виступить сферичний форум у вакуумі, з помірно агресивними, помірно розумними і взагалі помірними користувачами. Отже, по порядку перерахуємо, що ж ми можемо використовувати:

1. У зображенні повинно використовуватися хоча б кілька кольорів. Бажано завжди різні Зображення вище - приклад того, як це виглядає в дії. Насправді, це не дуже надійний варіант, так як текст з фоном дуже контрастує.

2. Повинен бути присутнім шум. Прописна істина. Практично в будь капчі можна зустріти шум, який найчастіше виражається в безлічі ліній, що перетинають текст, різної довжини і під різним кутом.

3. Літери повинні знаходитися на невеликій відстані один від одного. Тут головне не перестаратися. Надмірне зближення символів призведе до сильного погіршення читабельності людиною. На прикладі вище можна помітити, що букви злипаються, це створює перешкоду для бота при сегментації зображення.

4. Розміри символів мають бути різними Якщо застосовувати цей трюк, то треба пам'ятати, що перешкода фактично виражається в тому, що для сегментації капчі бот не зможе використовувати постійну матрицю. Тому якщо і робити розмір символів різним, то обов'язково для кожного символу розмір повинен бути випадковим, динамічним.

5. Огидний шрифт Дуже корисний спосіб. Зарубки, курсив, стилізація - відмінні підводні камені для бота. Так само в поєднанні з шумом у вигляді ліній дуже добре буде виглядати тонкий шрифт. Якщо абстрагуватися від першого правила генерації капчі, то можна використовувати безліч шрифтів відразу, наприклад свій шрифт для кожного символу.

6. Символи під випадковим кутом Вельми дієвий спосіб убезпечитися від ботів. Знову ж таки, сегментація буде ускладнена, хоч і не значно. Краще всього вибрати невеликий діапазон кута, інакше ж читаність сильно зіпсується (букви будуть напливати один на одного).

7. Динамічні спотворення Нічого жахливішого людство ще не придумало. Спотворення в капчі найчастіше дуже сильно знижують читаність людиною. Зрозуміло, це досить ефективно проти ботів, але це так само ефективно і проти людей. Головне - не перестаратися, спотворення повинні бути незначними. Отже, що ж ми зробимо:

  • Контрастний фон, з шумом

  • Лінії за текстом, лінії на тексті

  • Текст у випадковому положенні

  • Кількість символів буде випадковим, від 4 до 7

  • Розмір кожного символу буде випадковим

  • Колір тексту кожного разу буде випадковим

  • Символи будуть злегка торкатися

Соседние файлы в папке курсовая docx200