gb us de cz sk

3D CAPTCHA KONZEPT

juraj rolko

JURAJ ROLKO

CAPTCHA ist eine Art, wie man überprüfen kann, dass der Benutzer der Webapplikation ein Mensch ist. Die Verwendung von CAPTCHA ist in vielen Webapplikationen eine Notwendigkeit. Heute werden üblich die Typen auf der Basis der Erkennung der alphanumerischen Zeichen benutzt. Das Problem ist, dass diese Teste für die Leute immer komplizierter und umgekehrt für automatische Systeme immer einfacher werden. Ich habe mich deshalb entschieden, ein Konzept zu erstellen, das auf einem ganz anderen Prinzip gegründet wird. Das Ergebnis meiner Bestrebung ist eine 3D-captcha-Technologie.

Noch vor dem, als ich diese Idee ausführlich beschreiben werde, können Sie das Prinzip auf dem Probebeispiel ausprobieren. Ihr Ziel ist, in Flash-Animation den Schieber in eine richtige Position einzustellen. Durch das Verschieben des Schiebers drehen Sie das 3D-Modell. Wenn Sie erkennen, dass das entstandene Bild auf der aktuellen Position Ihnen ein Sinn gibt (Sie erkennen ein reales Objekt), enden Sie und klicken Sie auf TEST. Sie brauchen nicht 100%-ig pünktlich zu sein, für die richtige Lösung ist eine bestimmte Toleranz eingestellt.

Testzone

TEST


noch nicht getestet. Schieben Sie den Schieber in die gewünschte Position und klicken Sie auf TEST

3D CAPTCHA

Wie Sie sicher bemerkt haben, ist die Lösung immer gleich. Es ist nur aus den Demonstrationsgründen. In einer realen Verwendung ist die richtige Position zufällig generiert.


Ausführlichere Beschreibung der Technologie

Bei der Erstellung des 3D-captcha-Systems wurde eine Hauptbetonung auf die Innovation und Benutzerfreundlichkeit gelegt. Das CAPTCHA-System ist auf einer menschlichen Vorstellungskraft und Raumperspektive gegründet. Die Grundidee ist eine Rotation des speziellen 3D-Modells und die Findung der richtigen Position seiner Verdrehung. Das 3D-Modell wird aus jedem beliebigen 2D-Bild erstellt. Dieses Bild wird zuerst in einige Teile aufgeteilt, die anschließend auf Grund der bestimmten Regel zufällig in den 3D-Raum projiziert werden. Die so raumprojizierten Teile erstellen zusammen ein 3D-Modell so, dass das Modell wie das ursprüngliche 2D-Bild nur aus einem einzigen Beobachtungspunkt aussieht. Aus jedem anderen Beobachtungspunkt ist der Sinn des 3D-Modells für den Mensch unverständlich. Die Aufgabe des Benutzers ist dann, durch die Rotation des Modells diesen richtigen Punkt zu finden und so den CAPTCHA-Test erfolgreich zu lösen. Dieses Konzept nutzt die Tatsache aus, dass der Sinn des Modells aus dem richtigen Beobachtungspunkt nur der Mensch erkennen kann. Das Prinzip der Gestaltung der 3D-captcha-Technologie kann mit den folgenden drei Grundschritten beschrieben werden:


1. SCHRITT - Wahl des Ursprungsbildes, Bilddekomposition und Beobachtungspunkt

Es wird ein beliebiges Bild gewählt. Selbstverständlich, nicht alle Bilder sind geeignet, jedoch existiert eine riesige Menge von verwendbaren Bildern. In diesem Fall wurde das Bild eines Klees verwendet.

Durch die Verwendung der graphischen Methode wird das Bild in mehrere Teile, Dreiecke aufgeteilt. Diese Teile sind die sog. Grundelemente. Jedes Dreieck wird durch seine Koordinaten und Farbe definiert. Anschließend werden die Koordinaten des originalen Beobachtungspunktes gewählt. Auf Grund der Koordinaten der Grundelemente und der Koordinaten des Beobachtungspunktes werden später die Koordinaten der projektierten Elemente berechnet.

URSPRUNGS-2D-BILD

DEKOMPOSITION DES 2D-BILDES

BESTIMMUNG DES BEOBACHTUNGSPUNKTES

2. SCHRITT - Projektion der Grundelemente in den 3D-Raum

In diesem Moment haben wir einen Satz der Grundelemente. Jedes Grundelement wird zufällig in den 3D-Projektionsraum, in die sog. Projektionskugel projektiert. Das bedeutet, das sich jedes projektierte Element innen in dieser Kugel befinden muss. Die Kugel wird aus dem Grund gewählt, weil ihre Form aus jedem beliebigen Beobachtungspunkt immer gleich ist und für den Beobachter also die Form des Projektionsraumes informatorisch unbedeutend ist. Die Koordinaten der projektierten Elemente werden auf Grund der Koordinaten des Originalbeobachtungspunktes und der Koordinaten der Grundelemente berechnet.

PROJEKTION EINES ELEMENTES

ANSICHT AUS EINEM ANDEREN WINKEL

PROJEKTION DES GANZEN BILDES

3. SCHRITT - Erstellung des 3D-Modells und der Klientenapplikation

Alle projektierten Elemente bilden jetzt ein 3D-Modell. Dieses Modell kann in ein der üblich verwendeten Dateiformate für die 3D-Modelle (DAE,KMZ und andere) abgelegt werden. Mit der Verwendung einer geeigneten Technologie für die Darstellung des interaktiven Webinhaltes und unserer 3D-Datei wird anschließend eine Klientenapplikation für die Lösung des CAPTCHA-Testes erstellt. In diesem Fall wurde eine FLASH-Technologie mit der Ausnutzung von Papervision3D benutzt. Diese Applikation kann dann ein Bestandteil jeder beliebigen Webseite sein, um die klassischen CAPTCHA-Textsysteme zu ersetzen.

DAE-FORMAT

KLIENTENAPPLIKATION


Vorteile Nachteile
- captcha auf der Basis der menschlichen Vorstellungskraft
- kann voll automatisiert sein
- unbeschränkte Menge von Ursprungsbilder, allgemein kann jede beliebige Abbildung verwendet werden
- großes Potential für die Modifikation auf das Insertionssystem
- eventuelle Insertionsmodifikation wird mehr an den Benutzer als die klassische Textinsertion orientiert (der Benutzer wird zur Aufmerksamkeit auf die Insertion während des Lösen von captcha-Test "gezwungen")
- mit den ansteigenden Erfahrungen kann die Lösung von einem 3D-captcha-Test schneller als die Lösung von einem CAPTCHA-Textsystem sein
- Demonstrationsbeispiel verwendet ein flash, das nicht an allen Anlagen unterstützt wird
- Risiko, das die automatisierten Systeme (boti) den Test mit der Ausnutzung einer Bildanalyse, beziehungsweise durch den Mißbrauch einer bis jetzt unbekannten Unvollkommenheit des Systems lösen werden
- relativ hohe Ansprüche an die Konektivität des Benutzers (die Beispiele haben eine Größe von ungefähr 500 kB)

VERGLEICHSTABELLE



Bemerkungen des Autors