CAPTCHA, kas tika ieviesti 2000. gadu sākumā, lietotājus ir kaitinājuši jau vairākus gadu desmitus. No autobusa attēlu atrašanas līdz dīvainas burtu secības ievadīšanai vai matemātikas uzdevumu risināšanai ir daudz veidu, kā vietnes lūdz jums pierādīt, ka neesat robots.
Bet vai esat kādreiz domājis, kā darbojas CAPTCHA un kāpēc vietnes liek jums tās atrisināt?
Kas ir CAPTCHA?
CAPTCHA apzīmē pilnībā automatizētu publisko Tjūringa testu, lai atšķirtu datorus un cilvēkus. Kā norāda nosaukums, tas atšķir cilvēkus un datorus.
CAPTCHA pamatjēdziens balstās uz datora inteliģences trūkumu, lai atpazītu modeļus. Dators var atpazīt burtus, bet ne gadījumos, kad tie ir mainīti vai tajos ir daudz fona trokšņu. Tikmēr cilvēki paaudzēm ir sasprindzināti, lai pamanītu un identificētu modeļus kā drošības mehānismu.
CAPTCHA veidi
CAPTCHA ir dažādu veidu, daži no tiem ir:
1. Teksta attēls CAPTCHA
Uz tekstu balstīta CAPTCHA izmanto vārdu vai frāžu kopu vai dažādu burtu, ciparu un simbolu nejaušu kombināciju. Tas attēlo rakstzīmju secību atsvešinātā formā, kuru ir nedaudz grūti interpretēt.
Tie ietver izkropļojumus, pagriešanu, apvēršanu, ļodzību, lielo burtu lietojuma stilu un pārklāšanos ar blakus esošajām rakstzīmēm. Lai uzlabotu šo paņēmienu, CAPTCHA var ietvert grafikus, piemēram, līnijas, lokus vai punktus nejauši izvēlētā veidā, kas izkliedēti visā attēlā.
2. Audio CAPTCHA
Audio CAPTCHA kalpo kā alternatīva teksta CAPTCHA un ir paredzēts lietotājiem ar redzes traucējumiem. Audio CAPTCHA parāda burtu vai ciparu virknes audio ierakstu, kas lietotājam ir jāievada pareizi. Atkal ir izkropļojumi, šoreiz pievienota fona trokšņa veidā. Interesanti atzīmēt, ka Python CAPTCHA modulis darbojas tikai ar cipariem.
3. Attēls CAPTCHA
Attēlu CAPTCHA ir alternatīva teksta attēlu CAPTCHA. Šīs ir tipiskās CAPTCHA, ar kurām jūs nodarbojaties katru dienu.
Šie CAPTCHA lūdz jums identificēt konkrētu objektu, piemēram, laivu, kravas automašīnu vai ugunsdzēsības hidrantu. Viņi tos piedāvā kopā ar citiem attēliem, no kuriem izvēlēties. Tie ir cilvēkiem daudz draudzīgāki nekā uz tekstu balstīti testi, kā arī robotiem tos ir grūtāk atpazīt.
4. Matemātika, vārdu uzdevumi un mīklas CAPTCHA
Matemātikas CAPTCHA bieži ir vienkāršas aritmētiskas problēmas, piemēram, 17 + 23, 16 * 10 vai 30/10 ar pievienotiem grafiskiem elementiem.
Vārdu problēma CAPTCHA parāda vārdu secību vai saistītus vienumus un lūdz aizpildīt tukšās vietas ar atbilstošo atbildi.
Mīkla CAPTCHA ietver mini puzles atrisināšanu, piemēram, stieņa pabīdīšanu līdz pareizajam garumam, lai trūkstošais gabals pabeigtu attēlu.
5. Nav CAPTCHA ReCAPTCHA
Google pieder ReCAPTCHA, kas izmanto uzlabotu riska analīzi un adaptīvas problēmas, lai novērstu robotprogrammatūras. ReCAPTCHA izgūst saturu no Google ielas attēla, laikrakstiem, grāmatām un daudz ko citu.
Neviena CAPTCHA ReCAPTCHA neprasa pārbaudīt opciju “Es neesmu robots”, neprasot jums iziet testus. Tas ir iespējams, jo tas izseko kustībām un identificē klikšķi. Viena lieta, kas jāatzīmē, ir tā ReCAPTCHA tver jūsu privāto informāciju arī.
Jūs varat izveidot a CAPTCHA validācijas veidlapa, izmantojot HTML, CSS un JS kā arī izmantojot Python CAPTCHA moduli.
Python CAPTCHA modulis
Python ir aprīkots ar fantastisku moduli, ko sauc par CAPTCHA, kas palīdz mirkļos izveidot teksta attēlu un audio CAPTCHA. Lai gan modulis nodrošina iebūvētu fonta stilu un balsi, varat izmantot balss un fonta datus, lai vēl vairāk pielāgotu CAPTCHA.
Lai Python vidē instalētu CAPTCHA moduli, atveriet termināļa logu un ierakstiet:
pip uzstādīt captcha
Kā ģenerēt uz teksta balstītu attēlu CAPTCHA, izmantojot Python
Šeit ir pieejams viss avota kods pielāgotu teksta attēlu un audio CAPTCHA ģenerēšanai GitHub repozitorijs.
Varat veikt šīs darbības, lai izveidotu teksta attēlu CAPTCHA, izmantojot Python:
- Importēt ImageCaptcha modulis, kas atrodas captcha.image.
# nepieciešamo bibliotēku importēšana
no captcha.image imports ImageCaptcha - Norādiet pielāgotu CAPTCHA platumu un augstumu un izveidojiet tā eksemplāru.
# norādiet izmērus
attēls = ImageCaptcha (platums = 300, augstums = 100) - Izmantojiet rakstzīmju secību kā lietotāja ievadi, izmantojot ievade () funkciju, lai to pārvērstu teksta formātā CAPTCHA.
# ievadiet tekstu, lai izveidotu tā captcha
captcha_text = ievade("Lūdzu, ievadiet tekstu: ") - Nosūtiet no lietotāja saņemto tekstu uz image.generate() lai izveidotu CAPTCHA.
# ģenerēt uz teksta balstītu captcha
dati = image.generate (captcha_text) - Nosūtiet CAPTCHA tekstu un attēla faila nosaukumu kopā ar tā paplašinājumu image.write() lai saglabātu ģenerēto attēlu CAPTCHA.
# saglabājiet captcha attēla failu
image.write (captcha_text, (captcha_text) + ".png")
Teksta attēla CAPTCHA izvade, izmantojot Python
Viena no šī moduļa labākajām īpašībām ir tā, ka tas ģenerē vienu un to pašu tekstu dažādās krāsās, stilos un šķībumā. Šie ir daži no izveidotajiem piemēriem.
Šis ir vēl viens aizraujošs dizains, kas izveidots, izmantojot to pašu programmu.
Kā ģenerēt audio CAPTCHA, izmantojot Python
Veiciet šīs darbības, lai izveidotu audio CAPTCHA, izmantojot Python:
- Importēt AudioCaptcha modulis no captcha.audio.
# nepieciešamo bibliotēku importēšana
no captcha.audio imports AudioCaptcha - Izveidojiet AudioCaptcha() gadījumu.
# izveidojot audio instanci
audio = AudioCaptcha() - Izmantojiet ciparus kā lietotāja ievadi, izmantojot ievade () funkcija, lai izveidotu savu audio CAPTCHA.
# audio captcha numurs, piemēram: 32135
captcha_text = ievade("Lūdzu, ievadiet numuru: ") - Nosūtiet tekstu, kuru saņēmāt no lietotāja audio.generate() lai izveidotu CAPTCHA.
# ģenerēt uz audio balstītu captcha
audio_data = audio.ģenerēt (captcha_text) - Nosūtiet CAPTCHA tekstu un audio faila nosaukumu kopā ar tā paplašinājumu audio.write() lai saglabātu ģenerēto audio CAPTCHA.
# saglabājiet audio failu
audio.write (captcha_text, "audio"+captcha_text+'.wav')
Ja ievadāt ciparus 970322, šī audio CAPTCHA programma ģenerēs audio970322.wav failu, kas izrunā ciparus secīgi ar fona trokšņiem.
CAPTCHA daudzie lietojumi
CAPTCHA galvenā funkcija ir novērst surogātpastu un robotu ļaunprātīgu izmantošanu vietnē. Tie palīdz saglabāt tiešsaistes aptauju precizitāti, neļaujot robotprogrammatūrām tās pārpludināt ar negatīvām atbildēm. Tie darbojas kā aizsardzības slānis pret brutālu spēku uzbrukumiem un ierobežo to, cik reižu lietotājs mēģina pieteikties vietnē.
CAPTCHA var arī palīdzēt novērst automatizētus komentārus un nodrošināt maksājumu vārtejas, kuru risināšana ir sarežģīta.