gb us de cz sk

3D CAPTCHA KONCEPT

juraj rolko

JURAJ ROLKO

CAPTCHA je způsob jak ověřit, že uživatel webové aplikace je člověk. Použití CAPTCHA je v mnoha webových aplikacích nezbytnost. Dnes se běžně používají typy založené na rozpoznávání alfanumerických znaků. Problém je, že tyto testy se pro lidi stávají stále více komplikovanější a naopak, pro automatizované systémy stále jednodušší. Rozhodl jsem se proto vytvořit koncept, který by byl založen na zcela odlišném principu. Výsledkem mého snažení je technologie 3D captcha.

Ještě předtím než popíšu tuto myšlenku podrobněji, můžete si princip vyzkoušet na ukázkovém příkladu. Vaším cílem je ve flash animaci nastavit posuvník do správné pozice. Posouváním posuvníku otáčíte 3D model. Pokud uznáte, že vzniklý obraz na aktuální pozici Vám dává nějaký smysl (rozpoznáváte reálný objekt), skončete a klikněte na TEST. Nemusíte být přesný na 100%, pro správné řešení je nastavena určitá tolerance.

Testovací zóna

TEST


ještě netestováno. posuňte slider do požadované pozice a klikněte na TEST

3D CAPTCHA

Jak jste si určitě všimli, řešení je vždy stejné. To je jen z demonstračních důvodů. V reálném použití je správná pozice generována náhodně.


Podrobnější popis technologie

Při vytváření 3D captcha systému byl kladen hlavní důraz na inovativnost a uživatelskou přívětivost. Tato CAPTCHA je založena na lidské představivosti a prostorové perspektivě. Základní myšlenkou je rotace speciálního 3D modelu a nalezení správné pozice jeho pootočení. 3D model je vytvořen z jakéhokoliv 2D obrázku. Tento obrázek se nejprve rozdělí do několika částí, které jsou následně na základě určitých pravidel náhodně promítnuty do 3D prostoru. Takto prostorově promítnuty části spolu vytvářejí 3D model tak, že model vypadá jako původní 2D obrázek pouze z jednoho jediného pozorovacího bodu. Z jiného pozorovacího bodu je význam 3D modelu pro člověka nesrozumitelný. Úkolem uživatele je pak rotací modelu najít tento správný bod a úspěšně tak vyřešit CAPTCHA test. Tento koncept využívá skutečnost, že význam modelu ze správného pozorovacího bodu dokáže rozpoznat jen člověk. Princip tvorby 3D captcha technologie se dá popsat základními třemi kroky:


1. KROK - volba zdrojového obrázku, obrazová dekompozice a pozorovací bod

Zvolí se jakýkoliv obrázek. Samozřejmě, ne všechny obrázky jsou vhodné, ale existuje obrovské množství použitelných obrázků. V tomto případě byl použit obrázek čtyřlístku.

Použitím vhodné grafické metody se obrázek rozdělí do několika částí, trojúhelníků. Tyto části budou tzv. základní elementy. Každý trojúhelník je definován svými souřadnicemi a barvou. Následně se zvolí souřadnice originálního pozorovacího bodu. Ná základě souřadnic základních elementů a souřadnic pozorovacího bodu budou později vypočítány souřadnice projektovaných elementů.

ZDROJOVÝ 2D OBRÁZEK

DEKOMPOZICE 2D OBRÁZKU

URČENÍ POZOROVACÍHO BODU

2. KROK - projekce základních elementů do 3D prostoru

V tomto okamžiku máme sadu základních elementů. Každý jeden základní element bude náhodně projektován do projekčního 3D prostoru, do tzv. projekční koule. To znamená, že se každý jeden projektovaný element musí nacházet uvnitř této koule. Koule je zvolena z toho důvodu, že její tvar je z jakéhokoli pozorovacího bodu vždy stejný a pro pozorovatele je tedy tvar projekčního prostoru informačně bezvýznamný. Souřadnice projektovaných elementů budou vypočítány na základě souřadnic originálního pozorovacího bodu a souřadnic základních elementů.

PROJEKCE JEDNOHO ELEMENTU

POHLED Z JINÉHO ÚHLU

PROJEKCE CELÉHO OBRÁZKU

3. KROK - vytvoření 3D modelu a klientské aplikace

Všechny projektované elementy nyní vytvářejí 3D model. Tento model je možné uložit do jednoho z běžně používaných formátů souborů pro 3D modely (DAE, KMZ a jiné). S využitím vhodné technologie pro zobrazování interaktivního webového obsahu a našeho 3D souboru je následně vytvořena klientská aplikace pro řešení CAPTCHA testu. V tomto případě byla použita technologie FLASH s využitím Papervision3D. Tato aplikace může být pak součástí jakékoliv webové stránky aby nahradila klasické textové CAPTCHA systémy.

DAE FORMÁT

KLIENTSKÁ APLIKACE


Výhody Nevýhody
- captcha založená na lidské představivosti
- může být plně automatizovaná
- neomezené množství zdrojových obrázků, obecně může být použit jakýkoliv obrázek
- velký potenciál pro modifikaci na inzertní systém
- případná inzertní modifikace je více orientovaná na uživatele jako klasická textová inzerce (uživatel je "nucen" k pozornosti na inzerci během řešení captcha testu)
- s narůstajícími zkušenostmi může být vyřešení 3D captcha testu rychlejší než řešení textového CAPTCHA systému
- demonstrační příklad používá flash, který není podporován na všech zařízeních
- riziko, že automatizované systémy (boti), vyřeší test využitím nějaké obrazové analýzy, případně zneužitím zatím neznámé nedokonalosti systému
- relativně vysoké nároky na konektivitu uživatele (příklady mají velikost přibližně 500 KB)

SROVNÁVACÍ TABULKA



Poznámky autora