I dag er CAPTCHA en integrert del av nettstedssikkerhet. Millioner av CAPTCHA -tester gjennomføres online hver dag.
Hvis du ikke har implementert CAPTCHA -validering på nettstedet ditt, kan det skape et stort problem for deg og sette deg opp som et mål for spammere.
Her er alt du trenger å vite om CAPTCHAer og hvordan du enkelt kan implementere dem på nettstedet ditt ved hjelp av HTML, CSS og JavaScript.
Hva er CAPTCHA?
CAPTCHA står for 'Fullstendig automatisert offentlig Turing -test for å fortelle datamaskiner og mennesker.' Dette begrepet ble laget i 2003 av Luis von Ahn, Manuel Blum, Nicholas J. Hopper og John Langford. Det er en type utfordring-respons-test som brukes til å avgjøre om brukeren er menneskelig eller ikke.
CAPTCHA -er gir sikkerhet til nettsteder ved å tilby utfordringer som er vanskelige for roboter å utføre, men relativt enkle for mennesker. For eksempel er det vanskelig for roboter å identifisere alle bildene av en bil fra et sett med flere bilder, men enkelt nok for menneskelige øyne.
Ideen om CAPTCHA stammer fra Turing -testen. En Turing -test er en metode for å teste om en maskin kan tenke som et menneske eller ikke. Interessant nok kan en CAPTCHA -test kalles en 'reverse Turing Test' siden datamaskinen i dette tilfellet lager testen som utfordrer mennesker.
Hvorfor trenger nettstedet ditt CAPTCHA -validering?
CAPTCHA brukes hovedsakelig for å forhindre at roboter automatisk sender inn skjemaer med spam og annet skadelig innhold. Til og med selskaper som Google bruker det til å forhindre at systemet angriper spam. Her er noen av grunnene til at nettstedet ditt kan dra fordel av CAPTCHA -validering:
- CAPTCHAs bidrar til å forhindre hackere og roboter i å spamme registreringssystemene ved å opprette falske kontoer. Hvis de ikke er forhindret, kan de bruke disse kontoene til uærlige formål.
- CAPTCHAs kan forby brute force-påloggingsangrep fra nettstedet ditt, som hackere bruker for å prøve å logge inn med tusenvis av passord.
- CAPTCHA -er kan begrense roboter fra å spamme anmeldelsesdelen ved å gi falske kommentarer.
- CAPTCHAs hjelper til med å forhindre billettinflasjon ettersom noen kjøper et stort antall billetter for videresalg. CAPTCHA kan til og med forhindre falske registreringer til gratis arrangementer.
- CAPTCHA -er kan begrense cyber -skurkene fra å spamme blogger med dodgy kommentarer og lenker til skadelige nettsteder.
Det er mange flere grunner som støtter integrering av CAPTCHA -validering på nettstedet ditt. Du kan gjøre det med følgende kode.
windows 10 fortsetter å miste wifi -tilkoblingen
HTML CAPTCHA -kode
HTML, eller HyperText Markup Language, beskriver strukturen til en webside. Bruk følgende HTML -kode for å strukturere CAPTCHA -valideringsskjemaet:
captcha text
Refresh
Denne koden består hovedsakelig av 7 elementer:
-
- : Dette elementet brukes til å vise CAPTCHA -teksten.
- - Dette elementet brukes til å lage en inndataboks for å skrive CAPTCHA.
- : Denne knappen sender inn skjemaet og kontrollerer om CAPTCHA og den skrevne teksten er den samme eller ikke.
- : Denne knappen brukes til å oppdatere CAPTCHA.
- : Dette elementet brukes til å vise utdataene i henhold til den angitte teksten.
- : Dette er det overordnede elementet som inneholder alle de andre elementene.
CSS- og JavaScript -filer er knyttet til denne HTML -siden gjennom og elementer henholdsvis. Du må legge til lenke tag inne i hode tag og manus tag på slutten av kropp .
Du kan også integrere denne koden med eksisterende former for nettstedet ditt.
I slekt: HTML Essentials Cheat Sheet: Merker, attributter og mer
CSS CAPTCHA -kode
CSS, eller Cascading Style Sheets, brukes til å style HTML -elementer. Bruk følgende CSS -kode for å style HTML -elementene ovenfor:
@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');
body {
background-color: #232331;
font-family: 'Roboto', sans-serif;
}
#captchaBackground {
height: 220px;
width: 250px;
background-color: #2d3748;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
}
#captchaHeading {
color: white;
}
#captcha {
height: 80%;
width: 80%;
font-size: 30px;
letter-spacing: 3px;
margin: auto;
display: block;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
.center {
display: flex;
flex-direction: column;
align-items: center;
}
#submitButton {
margin-top: 2em;
margin-bottom: 2em;
background-color: #08e5ff;
border: 0px;
font-weight: bold;
}
#refreshButton {
background-color: #08e5ff;
border: 0px;
font-weight: bold;
}
#textBox {
height: 25px;
}
.incorrectCaptcha {
color: #FF0000;
}
.correctCaptcha {
color: #7FFF00;
}
Legg til eller fjern CSS -egenskaper fra denne koden i henhold til dine preferanser. Du kan også gi et elegant utseende til formbeholderen ved hjelp av CSS-skyggeegenskap .
JavaScript CAPTCHA -kode
JavaScript brukes til å legge til funksjonalitet på en ellers statisk webside. Bruk følgende kode for å legge til fullstendig funksjonalitet i CAPTCHA -valideringsskjemaet:
// document.querySelector() is used to select an element from the document using its ID
let captchaText = document.querySelector('#captcha');
var ctx = captchaText.getContext('2d');
ctx.font = '30px Roboto';
ctx.fillStyle = '#08e5ff';
let userText = document.querySelector('#textBox');
let submitButton = document.querySelector('#submitButton');
let output = document.querySelector('#output');
let refreshButton = document.querySelector('#refreshButton');
// alphaNums contains the characters with which you want to create the CAPTCHA
let alphaNums = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];
let emptyArr = [];
// This loop generates a random string of 7 characters using alphaNums
// Further this string is displayed as a CAPTCHA
for (let i = 1; i <= 7; i++) {
emptyArr.push(alphaNums[Math.floor(Math.random() * alphaNums.length)]);
}
var c = emptyArr.join('');
ctx.fillText(emptyArr.join(''),captchaText.width/4, captchaText.height/2);
// This event listener is stimulated whenever the user press the 'Enter' button
// 'Correct!' or 'Incorrect, please try again' message is
// displayed after validating the input text with CAPTCHA
userText.addEventListener('keyup', function(e) {
// Key Code Value of 'Enter' Button is 13
if (e.keyCode === 13) {
if (userText.value === c) {
output.classList.add('correctCaptcha');
output.innerHTML = 'Correct!';
} else {
output.classList.add('incorrectCaptcha');
output.innerHTML = 'Incorrect, please try again';
}
}
});
// This event listener is stimulated whenever the user clicks the 'Submit' button
// 'Correct!' or 'Incorrect, please try again' message is
// displayed after validating the input text with CAPTCHA
submitButton.addEventListener('click', function() {
if (userText.value === c) {
output.classList.add('correctCaptcha');
output.innerHTML = 'Correct!';
} else {
output.classList.add('incorrectCaptcha');
output.innerHTML = 'Incorrect, please try again';
}
});
// This event listener is stimulated whenever the user press the 'Refresh' button
// A new random CAPTCHA is generated and displayed after the user clicks the 'Refresh' button
refreshButton.addEventListener('click', function() {
userText.value = '';
let refreshArr = [];
for (let j = 1; j <= 7; j++) {
refreshArr.push(alphaNums[Math.floor(Math.random() * alphaNums.length)]);
}
ctx.clearRect(0, 0, captchaText.width, captchaText.height);
c = refreshArr.join('');
ctx.fillText(refreshArr.join(''),captchaText.width/4, captchaText.height/2);
output.innerHTML = '';
});
Nå har du et fullt funksjonelt CAPTCHA -valideringsskjema! Hvis du vil se på hele koden, kan du klone GitHub-depot for dette CAPTCHA-Validator-prosjektet . Etter å ha klonet depotet, kjør HTML -filen, og du får følgende utdata:
hvordan overføre filer til virtualbox
Når du skriver inn riktig CAPTCHA -kode i inndataboksen, vises følgende utgang:
Når du skriver inn feil CAPTCHA -kode i inndataboksen, vises følgende utgang:
Gjør nettstedet ditt sikkert med CAPTCHA
Tidligere har mange organisasjoner og bedrifter lidd store tap som databrudd, spamangrep, etc. som følge av at de ikke har CAPTCHA -skjemaer på nettstedene sine. Det anbefales på det sterkeste å legge til CAPTCHA på nettstedet ditt, ettersom det legger til et sikkerhetslag for å forhindre nettstedet fra cyberkriminelle.
Google lanserte også en gratis tjeneste kalt 'reCAPTCHA' som hjelper til med å beskytte nettsteder mot spam og misbruk. CAPTCHA og reCAPTCHA virker like, men de er ikke helt det samme. Noen ganger føles CAPTCHA frustrerende og vanskelig å forstå for mange brukere. Selv om det er en viktig grunn til at de er vanskelig.
Dele Dele kvitring E -post Hvordan fungerer CAPTCHAer og hvorfor er de så vanskelige?CAPTCHA og reCAPTCHA forhindrer spam. Hvordan fungerer de? Og hvorfor synes du CAPTCHA er så tøffe å løse?
Les neste Relaterte temaer- Programmering
- HTML
- JavaScript
- CSS
Yuvraj er en informatikkstudent ved University of Delhi, India. Han brenner for Full Stack webutvikling. Når han ikke skriver, utforsker han dybden i forskjellige teknologier.
Mer fra Yuvraj ChandraAbonner på vårt nyhetsbrev
Bli med i vårt nyhetsbrev for tekniske tips, anmeldelser, gratis ebøker og eksklusive tilbud!
Klikk her for å abonnere