Somcaptcha

Door Sam , 16 jaar geleden, 2.350x bekeken

Om spam te vermijden heb ik geprobeerd om 2 methodes te combineren. Een captcha-afbeelding met daarin een som die opgelost moet worden.

Graag hoor ik of deze captcha sterk genoeg zou zijn en waar ik mijn script nog kan verbeteren.

Getest op php5, waarschijnlijk werkt het ook op php4.

(De font kan je hier downloaden: http://zamna.be/captcha/fonts/GeosansLight.ttf)

Voorbeeld: http://zamna.be/captcha/voorbeeld.php

Gesponsorde koppelingen

PHP script bestanden

  1. somcaptcha

 

Er zijn 11 reacties op 'Somcaptcha'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
- -
- -
16 jaar geleden
 
0 +1 -0 -1
Goede oplossing! Duidelijk leesbaar en niet ingewikkeld. Ik ga hem vast nog wel eens gebruiken ;)
Erik Rijk
Erik Rijk
16 jaar geleden
 
0 +1 -0 -1
Ik kreeg net een som:

5 - 9 = ...
Nu kon ik wel - als antwoord opgeven maar erg gebruiksvriendelijk is het niet denk ik .... (denk aan mensen die enkel weten waar de aan en uit knop van een computer zit)
Thomas
Thomas
16 jaar geleden
 
0 +1 -0 -1
@ Erik, als je alleen je pc aan en uit krijgt :P wat doe je dan op sites met chappcha's? mijn opa heeft internet, maar die gaat echt niet op sites met mailforms oid rondhangen. Alleen google gebruik hij...

T ziet er mooi uit, maar waarom zou hij beter zijn dan al die 4141512132miljard anderen?
Erik Rijk
Erik Rijk
16 jaar geleden
 
0 +1 -0 -1
@ Thomas,

Mijn zus is zo iemand, toch presteert ze het om een computer zo erg te slopen dat zelf een professioneel ICT bedrijf er niks meer mee kan....

Die mensen weten nooit wat ze doen...
PHP erik
PHP erik
16 jaar geleden
 
0 +1 -0 -1
Op zich wel leuk script. Ik vind het alleen niet altijd even goed leesbaar.

Ik heb wel 1 nuttige opmerking. Het bereik van de antwoorden is [-9,9]. Dat zijn dus 19 mogelijke antwoorden. Als iemand z'n robot even zo programmeert dat ie altijd 1 invult of altijd 0 invult of iets dergelijks, dan lukt het 1 op de 19 keer. Als je een paar requests per seconde doet, dan kun je nog steeds flink spammen met dit formulier.

Met andere woorden, deze methode is vrij nutteloos als iemand even z'n script aanpast. En ik denk dat slimme bots er ook wel doorheen prikken.
Raymond ---
Raymond ---
16 jaar geleden
 
0 +1 -0 -1
Erik:
Ik kreeg net een som:

5 - 9 = ...
Nu kon ik wel - als antwoord opgeven maar erg gebruiksvriendelijk is het niet denk ik .... (denk aan mensen die enkel weten waar de aan en uit knop van een computer zit)

Dat ben ik met je eens, je krijgt altijd verwarring met een - teken. Dus misschien si het handig om even te checken of de uitkomst kleiner dan 0 is, zoja dan moet hij alles weer overnieuw doen.
Sam
Sam
16 jaar geleden
 
0 +1 -0 -1
@PHPerik: 'k had ook al op deze beperking gedacht. Helaas is deze methode dus ook niet perfect.

Misschien zoiets:
twee acht drie negen een = 28391
Maar dat zit je nog altijd beperkt qua aantal mogelijkheden.
Leroy Boerefijn
Leroy Boerefijn
16 jaar geleden
 
0 +1 -0 -1
ik heb is gezien hoe je via een bepaald progje de letters van captcha's kon instellen zodat dat progje het zelf kon bekijken, en aangezien de achtergrond hier erg licht is.. is dit erg makkelijk ;) je hebt dan alleen een nederlandse hacker nodig ;)

gr. leroy
Jan Koehoorn
Jan Koehoorn
16 jaar geleden
 
0 +1 -0 -1
Er is nog iets geks aan de hand met deze captcha. In de vraag worden de cijfers als woorden gegeven, maar je moet het antwoord in cijfers geven.

Op de vraag vier + twee = ? zou ik normaal gesproken 'zes' antwoorden, en niet '6'.
Mike van Dongen
Mike van Dongen
16 jaar geleden
 
0 +1 -0 -1
Ziet er goed uit!
Je zou btw ook vermenigvuldigen en delen kunnen gebruiken!
Dan zou dit veranderen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
//calculations
$_CALCULATIONS = array();
$_CALCULATIONS[0] = "plus";
$_CALCULATIONS[1] = "min";
$_CALCULATIONS[2] = "keer";
$_CALCULATIONS[3] = "delen";

//generate random sum
$loginnumber1 = rand(0,9);
$loginnumber2 = rand(0,9);
$calculation = rand(0,3);
$_SESSION['numberwork'] = $_NUMBERS[$loginnumber1]." ".$_CALCULATIONS[$calculation]." ".$_NUMBERS[$loginnumber2];
if($calculation == 0)
{

    $sum = ($loginnumber1 + $loginnumber2);
}

elseif($calculation == 1)
{

    $sum = ($loginnumber1 - $loginnumber2);
}

elseif($calculation == 2)
{

    $sum = ($loginnumber1 * $loginnumber2);
}

elseif($calculation == 3)
{

    $sum = ($loginnumber1 / $loginnumber2);
}

?>
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Thijs X
Thijs X
16 jaar geleden
 
0 +1 -0 -1
@ Miky

Delen lijkt me in dit geval neit zon goede optie

wat nou als je bijvoorbeeld krijgt 4 / 5 ? ;) Dat kunnen mensen meestal niet even uit hun hoofd.

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. somcaptcha

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.