PHP SHA1 -funksjon

PHP SHA1 -funksjon
PHP har mange innebygde funksjoner for å sikre dataene til applikasjonen. Hashingalgoritmen er en av måtene å sikre strengdataene ved å opprette en hasjstreng av strengdataene. SHA1 () er en innebygd funksjon av PHP for å lage hasjstrengen til hvilken som helst strengverdi. Den fulle formen for SHA1 er sikker hash -algoritme 1. Den genererer en hasjstreng som kalles en meldingsfordøyelse. De forskjellige bruksområdene for denne funksjonen vises i denne opplæringen.

Syntaks:
SHA1 (streng $ streng, bool $ binær = falsk): streng

Det første argumentet er obligatorisk og hasjstrengen genereres basert på den første argumentverdien. Det andre argumentet er valgfritt som inneholder en boolsk verdi. Hvis verdien av det andre argumentet er sant, genereres en hasjstreng med 20 tegn med binært format. Hvis det andre argumentet er usant, genereres en hasjstreng på 40 tegn i sekskantformat. Den returnerer hasjverdien til strengen som brukes i funksjonens første argument.

Ulike eksempler på SHA1 () -funksjon

De forskjellige bruken av SHA1 () -funksjonen vises i denne delen av opplæringen ved hjelp av flere eksempler.

Eksempel 1: Bruke SHA1 () -funksjon uten valgfritt argument

Lag en PHP -fil med følgende skript som lager 40 tegn lang hasjverdi ved hjelp av SHA1 () -funksjonen uten det valgfrie argumentet. Den opprinnelige strengverdien og den genererte hasjverdien skrives ut senere.

// Tilordne en strengverdi
$ strVal = "Testing Message";
ekko "Den originale strengen: $ strVal
";
// Skriv ut den genererte hasjstrengen
ekko "Hash -strengen:".SHA1 ($ strVal);
?>

Produksjon:
Følgende utgang vises etter å ha utført det forrige skriptet:

Eksempel 2: Bruke SHA1 () -funksjon med valgfritt argument

Lag en PHP -fil med følgende skript som oppretter hasjverdien ved hjelp av SHA1 () -funksjonen med det valgfrie argumentet. Førti (40) tegn hashverdi genereres når Falsk brukes i den valgfrie argumentverdien til SHA1 () -funksjonen. Tjue (20) tegn hashverdi genereres når ekte brukes i den valgfrie argumentverdien til SHA1 () -funksjonen. Den originale strengverdien, den genererte hasjverdien på 40 tegn, og 20 tegn skrives ut senere.

// Tilordne en strengverdi
$ strVal = "Testing Message";
ekko "Den originale strengen: $ strVal
";
// Skriv ut den genererte hasjstrengen
ekko "Hash -strengen på 40 tegn:".SHA1 ($ strVal, falsk).""
";
// Skriv ut den genererte hasjstrengen
ekko "Hash -strengen med 20 tegn:".SHA1 ($ strVal, True).""
";
?>

Produksjon:
Følgende utgang vises etter å ha utført det forrige skriptet:

Eksempel 3: Kontroller hasjverdien til den aktuelle strengen

Opprett en PHP -fil med følgende skript som sjekker om en hasjverdi av en streng er riktig eller feil. Strengverdien er hentet fra URL -parameteren, og hasjverdien til den strengverdien sammenlignes med en bestemt hashverdi for å bekrefte om den tatt strengverdien er riktig eller ikke.

if (isset ($ _ få ['msg']))

// generere hasjverdien til strengen som er lest fra nettadressen
$ strVal = sha1 ($ _ get ['msg']);
// Skriv ut den originale strengverdien
ekko "Den originale strengen:".$ _GET ['MSG'].""
";
// Kontroller hashverdien til den tilsvarende strengverdien
if ($ strVal == '640AB2BAE07BEDC4C163F679A746F7AB7FB5D1FA')
ekko "riktig hasjverdi";
ellers
ekko "feil hasjverdi.";

ellers
ekko "strengverdi er ikke gitt.";
?>

Produksjon:
Følgende utgang vises etter å ha utført det forrige skriptet uten URL -parameteren:

Følgende utgang vises etter å ha utført det forrige skriptet ved å gi den gyldige strengen i URL -parameteren:

Eksempel 4: Bruke SHA1 () -funksjon for validering

SHA1 () -funksjonen kan brukes til å validere dataene. Måten å validere påloggingsinformasjonen ved hjelp av SHA1 () -funksjonen vises i denne opplæringen. Lag en HTML -fil som heter Logg Inn.html Med følgende skript som tar brukernavnet og passordet fra brukeren ved hjelp av en HTML -skjema. Skjemadataene er analysert ved hjelp av en PHP -fil som heter Logg Inn.PHP.

Logg Inn.html



Logg Inn



innloggingsskjema














Opprett en PHP -fil som heter pålogging.PHP med følgende skript. Brukernavnet og passordverdiene som sendes inn av skjemaet er lagret i to variabler. Deretter blir verdien av brukernavnet og passordet sjekket. Hvis brukernavnet inneholder "admin”Verdi og passordet inneholder“SecretPassword”Verdi,“Gyldig bruker”Meldingen skrives ut. Ellers "Ugyldig bruker”Meldingen skrives ut.

Logg Inn.PHP

// sjekk om variabelen er angitt eller usett
if (isset ($ _ post ['un']) && isset ($ _ post ['pwd']))

$ brukernavn = $ _post ['un'];
$ passord = $ _post ['pwd'];
$ hash_password = 'e5e9fa1ba31ecd1ae84f75caaa474f3a663f05f4';
// sjekk om den innsendte verdien er tom eller ikke
if ($ brukernavn != "" && $ passord != "")

// sjekk om de innsendte verdiene er gyldige eller ugyldige
if ($ brukernavn == 'admin' && sha1 ($ passord) == $ hash_password)
ekko "gyldig bruker.";
ellers
ekko "ugyldig bruker.";

ellers
ekko "brukernavn eller passord kan ikke være tomt.";

?>

Produksjon:
Følgende utgang vises etter å ha utført Logg Inn.html Fra nettleseren:

Skriv inn det gyldige brukernavnet og passordet i påloggingsskjemaet og klikk på Logg Inn knapp.

Følgende utdata vises for gyldig brukernavn og passordverdier:

Følgende utgang vises for ugyldig brukernavn eller passordverdier:

Konklusjon

De forskjellige bruken av SHA1 () -funksjonen er beskrevet i denne opplæringen ved å bruke denne funksjonen på flere måter. PHP har mange andre funksjoner som SHA1 () -funksjonen for å generere hasjverdiene, men denne funksjonen er så enkel å bruke for å validere dataene eller sjekke dataintegriteten. Vi håper at denne opplæringen hjelper PHP -brukerne å vite hvordan de bruker SHA1 ().