Beste captcha

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Raymond ---

Raymond ---

27/06/2007 15:25:00
Quote Anchor link
Ik ben voor mijn registratie systeem opzoek naar de beste mogelijkheid om een captcha te maken. Oftewel, veilig maar gebruikersvriendelijk. Ik heb nu dat er gevraagd word naar het huidige jaar, dit veranderd toch, maar weet iedereen wel. Totdat ik me bedacht dat er ook mensen/landen met een andere jaartelling zijn. Niet dat ik zoveel van die mensen verwacht, maar toch.

Ik heb een aantal captcha beken, de meeste met code's vind ik niet gebruikersvriendelijk. En de vraag die in Arjan's Nieuwssysteem wordt gesteld is gebruikersvriendelijk maar veranderd nooit.

Mijn vraag aan jullie: Welke optie kan ik het beste gebruiken?
1. De huidige, vb: Wat is het huidige jaar?
2. Een met een code
3. Een met een vraag, vb: Wat is de hoofdstad van Nederland?
4. Iets heel anders, zoals... (hier graag onderbouwing, waarom die?)

Alvast bedankt, Raymond.
Gewijzigd op 01/01/1970 01:00:00 door Raymond ---
 
PHP hulp

PHP hulp

24/11/2024 13:23:03
 
Jason de Ridder

Jason de Ridder

27/06/2007 15:33:00
Quote Anchor link
Je geeft 3 voorbeelden van mogelijke captcha's, waarom niet alle drie? Niet tegelijkertijd natuurlijk, maar afwisselen. Random. Zo wisselt de captcha, en bij sommige ook het antwoord.

Lijkt mij moeilijk voor spambots...
 
Raymond ---

Raymond ---

27/06/2007 15:39:00
Quote Anchor link
hmmm, is een mogelijkheid, ik denke er over na. Ik ben bang dat het dan wel erg gebruiksonvriendelijk wordt, maar ik onthoud het.
 
Nick Mulder

Nick Mulder

27/06/2007 15:44:00
Quote Anchor link
De gebruiker is onderhand wel zo'n beetje gewend aan CAPTCHAs...
 
Arjan Kapteijn

Arjan Kapteijn

27/06/2007 15:52:00
Quote Anchor link
Je kan ook mijn voorbeeld nemen en uitbreiden, maak een array met 3 verschillende simpele vragen...

Of pak 2x random een cijfer van 1 t/m 9 en laat deze optellen door de gebruiker.
 
Raymond ---

Raymond ---

27/06/2007 16:03:00
Quote Anchor link
Dat vind ik wel een goede Arjan, die met die optelsom, ik denk dat ik die eens ga uitproberen. Het volk dat zich zal gaan registreren kan wel rekenen :P
 
Rudie dirkx

rudie dirkx

27/06/2007 16:20:00
Quote Anchor link
Voila, php.net heeft dat. En php.net is open-source, dus je kan m helemaal jatten. Mooi systeempje is dat. Zitten wel een paar php functies (min(), max()) doorheen, maar dat kan je weghalen.
Voila: http://nl3.php.net/source.php?url=/manual/spam_challenge.php
 
Raymond ---

Raymond ---

28/06/2007 14:37:00
Quote Anchor link
Ok, ik heb het volgende idee:
Er is een array met geschreven nummers van 0 t/m 9. Er wordt 2 keer een getal van 0 t/m 9 gegenereerd. Dan wordt er bepaald of het optellen, aftrekken, vermenigvuldigen of delen wordt. er wordt nog even gekeken of de uitkomst negatief is, zo ja dan wordt het bovenstaande helemaal opnieuw uitgevoerd. (dit om verwarring met negatieve getallen en minnen te voorkomen). De bezoeker moet de som uitrekenen.

Is dit een goed idee ja/nee? Wat zijn jullie kritiek punten?

Ps. Is het voldoende om de 2 getallen en het teken (+, -, * of /) met een hidden veld meet te posten? Het verwerkingsscript rkent de som dan nog een keer uit, zodat de uitkomst niet in de bron gewijzigd kan worden.
Gewijzigd op 01/01/1970 01:00:00 door Raymond ---
 
Raymond ---

Raymond ---

29/06/2007 14:57:00
Quote Anchor link
Ik wacht nog steeds op reacties...

Ik ben alvast beginne, ik loop tegen het volgende probleem aan:
Ik heb 3 variabelen gedefineerd, deze worden gegenereerd met rand():

$nummer1
$nummer2
$teken

Die som wordt uitgerekend. Dan wil ik met een loop, eerst kijken of de uitkomst < 0, zoja dan moeten die 3 rand()s opnieuw worden uitgevoerd, net zolang totdat de uitkomst niet negatief is. Ik ben niet zo ervaren in loops (ik denk dat het in dit geval om een for gaat), weet eiamdn hoe ik een loop kan maken die het bovenstaande uitvoert?
 
Raymond ---

Raymond ---

30/06/2007 18:36:00
Quote Anchor link
*bumpje* Jullie reacties op het idee hoef ik niet perse, maar hulp met het script zou fijn zijn.
Gewijzigd op 01/01/1970 01:00:00 door Raymond ---
 
Mark Pieper

Mark Pieper

30/06/2007 19:40:00
Quote Anchor link
Waarom een loopje:
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
    
    function genCaptcha() {
        // Array met nummers genereren, en door elkaar schudden
        $l_aNumbers = shuffle(range('0', '9'));
        // Eerste twee nummers met elkaar optellen, antwoord in sessie zetten
        $_SESSION['answer'] = $l_aNumbers[0] + $l_aNumbers[1];
        // Vraag maken en returnen
        return $l_sQuestion = 'Tel '.$l_aNumbers[0].' en '. $l_aNumbers[1].' bij elkaar op.';        
        
    }
    
    function
checkCaptcha($p_iInput = $_POST['answer']) {
        
        if($p_iInput === $_SESSION['answer']) {
            
            return true;
            
        }

        
        else
        
        {
            
            return false;
            
        }
        
    }

?>

EDIT: foutje verbeterd
Gewijzigd op 01/01/1970 01:00:00 door Mark Pieper
 
TJVB tvb

TJVB tvb

30/06/2007 19:41:00
Quote Anchor link
Raymond schreef op 28.06.2007 14:37:
Ps. Is het voldoende om de 2 getallen en het teken (+, -, * of /) met een hidden veld meet te posten? Het verwerkingsscript rkent de som dan nog een keer uit, zodat de uitkomst niet in de bron gewijzigd kan worden.

In een hidden field meesturen is nogal fout. Dit maakt het heel makkelijk voor bots want die lezen dan gewoon je html en berekenen het.
 
Raymond ---

Raymond ---

30/06/2007 19:53:00
Quote Anchor link
@Mark, ik ga jou code uitproberen en als alles goed werkt gebruiken. Bedankt!

@TJVB, dat dacht ik al. Maar aan de hand van de code van Mark snap ik nu hoe het wel moet.
 
Bluecherry

bluecherry

01/07/2007 01:32:00
Quote Anchor link
De reden waarom de meeste captcha's zo'n afleidingsstreepjes en -puntjes hebben is om te vermijden dat bots gewoon de afbeelding lezen...

Als je gewoon "6 + 9" in een afbeelding zet kan een bot gewoon OCR-en en een eval-etje uitvoeren. Aangezien deze methode wel meer gebruikt wordt ga ik ervan uit dat bots hieraan zijn aangepast.

Gebruik miss een achtergrond in je captcha die dit vermijdt?

Het hangt er maar vanaf hoe ver je wil gaan natuurlijk :).
 
Mark L

Mark L

01/07/2007 09:42:00
Quote Anchor link
Naast een sessie kan je het antwoord / rekensom natuurlijk ook geëncrypt meesturen.
 
GaMer B

GaMer B

01/07/2007 10:10:00
Quote Anchor link
bluecherry schreef op 01.07.2007 01:32:
De reden waarom de meeste captcha's zo'n afleidingsstreepjes en -puntjes hebben is om te vermijden dat bots gewoon de afbeelding lezen...

Als je gewoon "6 + 9" in een afbeelding zet kan een bot gewoon OCR-en en een eval-etje uitvoeren. Aangezien deze methode wel meer gebruikt wordt ga ik ervan uit dat bots hieraan zijn aangepast.

Gebruik miss een achtergrond in je captcha die dit vermijdt?

Het hangt er maar vanaf hoe ver je wil gaan natuurlijk :).

Je kunt ook 'at random' afwisselend letters en cijfers doen, dus de ene keer:
een plus drie en de andere keer 5 + 3.

EDIT: Of je doet dit: drie + zeven en een andere is: 3 plus vijf en een andere is: 3 plus 6.
Dus mogelijke combi's zijn:
cijfer - teken(non-letters) - cijfer
letters - teken(non-letters) - cijfer
letters - teken(non-letters) - letters
cijfer - teken(non-letters) - letters
cijfer - letters - cijfer
cijfer - letters - letters
letters - letters - letters
letters - letters - cijfer
Dit geeft 'at random' 8 mogelijkheden...
Gewijzigd op 01/01/1970 01:00:00 door GaMer B
 
Jurgen assaasas

Jurgen assaasas

01/07/2007 10:51:00
Quote Anchor link
Spambots vullen toch alles in? Ik heb een hidden field met de naam "name" gegeven. en een html comment erbij dat ze die leeg moeten laten in het Nederlands. Niet met simpele woorden als niet en leeg maar even mooi verwoord.
 
GaMer B

GaMer B

01/07/2007 10:57:00
Quote Anchor link
Jurgen schreef op 01.07.2007 10:51:
Spambots vullen toch alles in? Ik heb een hidden field met de naam "name" gegeven. en een html comment erbij dat ze die leeg moeten laten in het Nederlands. Niet met simpele woorden als niet en leeg maar even mooi verwoord.

Ligt volgens mij ook aan de spambot hoor...
 
Raymond ---

Raymond ---

01/07/2007 13:06:00
Quote Anchor link
Het blijft moeilijk, ik ga het volgende doen: (kritieken hoor ik graag
Een gebruiker/spambot krijgt 1 van de volgende sommen voor zich:
cijfer + cijfer, de cijfers en tekens worden op zo veel mogelijk verschillende manieren weergegeven. Zelf zat ik te denken om er ook nog de volgende zin van te maken: Wat is de som van ... en ...? Want dan staat er geen plus en ook geen + tussen de cijfers.
 
GaMer B

GaMer B

01/07/2007 13:12:00
Quote Anchor link
Dat zou ook nog kunnen. Zolang er maar veel variatie in zit...
 
Bart van der veen

bart van der veen

01/07/2007 13:27:00
Quote Anchor link
beste oplossing, inloggen.

2 na beste oplossing. een spambot probeert alle velden in te vullen. Wat ik gedaan voor mijn site (we wachten de resultaten af) is een hidden/margin-100em ed text field maken in mijn formulier. de gebruiker ziet dit niet de spambot wel. de spambot vult het dus is, de gebruiker niet. als het veld is ingevult het formulier niet laten versturen anders wel.

wel "captha" geen gebruikers irrataties.

ps niet mijn idee ik heb dit ergens op het wereldwijdeweb gelezen en ik weet niet meer waar.
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

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.