gb us de cz sk

3D CAPTCHA KONCEPT

juraj rolko

JURAJ ROLKO

CAPTCHA je spôsob ako overiť, že užívateľ webovej aplikácie je človek. Použitie CAPTCHA je v mnohých webových aplikáciách nevyhnutnosť. Dnes sa bežne používajú typy založené na rozpoznávaní alfanumerických znakov. Problém je, že tieto testy sa pre ľudí stávajú čoraz viac komplikovanejšie a naopak, pre automatizované systémy stále jednoduchšie. Rozhodol som sa preto vytvoriť koncept, ktorý by bol založený na úplne odlišnom princípe. Výsledkom môjho snaženia je technológia 3D captcha.

Ešte predtým ako popíšem túto myšlienku podrobnejšie, môžete si princíp vyskúšať na ukážkovom príklade. Vaším cieľom je vo flash animácii nastaviť posuvník do správnej pozície. Posúvaním posuvníka otáčate 3D model. Ak uznáte, že vzniknutý obraz na aktuálnej pozícii Vám dáva nejaký zmysel (rozpoznávate reálny objekt), skončite a kliknite na TEST. Nemusíte byť presný na 100%, pre správne riešenie je nastavená určitá tolerancia.

Testovacia zóna

TEST


ešte netestované. posuňte slider do požadovanej pozície a kliknite na TEST

3D CAPTCHA

Ako ste si určite všimli, riešenie je vždy rovnaké. To je len z demonštračných dôvodov. V reálnom použití je správna pozícia generovaná náhodne.


Podrobnejší popis technológie

Pri vytváraní 3D captcha systému bol kladený hlavný dôraz na inovatívnosť a užívateľskú prívetivosť. Táto CAPTCHA je založená na ľudskej predstavivosti a priestorovej perspektíve. Základnou myšlienkou je rotácia špeciálneho 3D modelu a nájdenie správnej pozície jeho pootočenia. 3D model je vytvorený z akéhokoľvek 2D obrázka. Tento obrázok sa najskôr rozdelí do niekoľkých častí, ktoré sú následne na základe určitých pravidiel náhodne premietnuté do 3D priestoru. Takto priestorovo premietnuté časti spolu vytvárajú 3D model tak, že model vyzerá ako pôvodný 2D obrázok iba z jedného jediného pozorovacieho bodu. Z akéhokoľvek iného pozorovacieho bodu je význam 3D modelu pre človeka nezrozumiteľný. Úlohou užívateľa je potom rotáciou modelu nájsť tento správny bod a úspešne tak vyriešiť CAPTCHA test. Tento koncept využíva skutočnosť, že význam modelu zo správneho pozorovacieho bodu dokáže rozpoznať len človek. Princíp tvorby 3D captcha technológie sa dá popísať základnými troma krokmi:


1. KROK - voľba zdrojového obrázka, obrazová dekompozícia a pozorovací bod

Zvolí sa akýkoľvek obrázok. Samozrejme, nie všetky obrázky sú vhodné, ale existuje obrovské množstvo použiteľných obrázkov. V tomto prípade bol použitý obrázok štvorlístka.

Použitím vhodnej grafickej metódy sa obrázok rozdelí do niekoľkých častí, trojuholníkov. Tieto časti budú tzv. základné elementy. Káždý trojuholník je definovaný svojimi súradnicami a farbou. Následne sa zvolia súradnice originálneho pozorovacieho bodu. Ná základe súradníc základných elementov a súradníc pozorovacieho bodu budú neskôr vypočítané súradnice projektovaných elementov.

ZDROJOVÝ 2D OBRÁZOK

DEKOMPOZÍCIA 2D OBRÁZKA

URČENIE POZOROVACIEHO BODU

2. KROK - projekcia základných elementov do 3D priestoru

V tomto momente máme sadu základných elementov. Každý jeden základný element bude náhodne projektovaný do projekčného 3D priestoru, do tzv. projekčnej gule. To znamená, že sa každý jeden projektovaný element musí nachádzať vo vnútri tejto gule. Guľa je zvolená z toho dôvodu, že jej tvar je z akéhokoľvek pozorovacieho bodu vždy rovnaký a pre pozorovateľa je teda tvar projekčného priestoru informačne bezvýznamný. Súradnice projektovaných elementov budú vypočítané na základe súradníc originálneho pozorovacieho bodu a súradníc základných elementov.

PROJEKCIA JEDNÉHO ELEMENTU

POHĽAD Z INÉHO UHLA

PROJEKCIA CELÉHO OBRÁZKA

3. KROK - vytvorenie 3D modelu a klientskej aplikácie

Všetky projektované elementy teraz vytvárajú 3D model. Tento model je možné uložiť do jedného z bežne používaných formátov súborov pre 3D modely (DAE,KMZ a iné). S využitím vhodnej technológie pre zobrazovanie interaktívneho webového obsahu a nášho 3D súboru je následne vytvorená klientská aplikácia pre riešenie CAPTCHA testu. V tomto prípade bola použitá technológia FLASH s využitím Papervision3D. Táto aplikácia môže byť potom súčasťou akejkoľvek webovej stránky aby nahradila klasické textové CAPTCHA systémy.

DAE FORMÁT

KLIENTSKÁ APLIKÁCIA


Výhody Nevýhody
- captcha založená na ľudskej predstavivosti
- môže byť plne automatizovaná
- neobmedzené množstvo zdrojových obrázkov, vo všeobecnosti môže byť použitý akýkoľvek obrázok
- veľký potenciál pre modifikáciu na inzertný systém
- prípadná inzertná modifikácia je viac orientovaná na užívateľa ako klasická textová inzercia (užívateľ je "nútený" k pozornosti na inzerciu počas riešenia captcha testu)
- s narastajúcimi skúsenosťami môže byť vyriešenie 3D captcha testu rýchlejšie ako riešenie textového CAPTCHA systému
- demonštračný príklad používa flash, ktorý nie je podporovaný na všetkých zariadeniach
- riziko, že automatizované systémy (boti), vyriešia test využitím nejakej obrazovej analýzy, prípadne zneužitím zatiaľ neznámej nedokonalosti systému
- relatívne vysoké nároky na konektivitu uživateľa (príklady majú veľkosť približne 500 KB)

POROVNÁVACIA TABUĽKA



Poznámky autora