Hvordan bruke crypt()-funksjonen i PHP

Hvordan Bruke Crypt Funksjonen I Php



De krypt() funksjon i PHP er et nyttig verktøy for kryptografi som brukes til å lage en hash av den gitte strengen ved å bruke hashing-algoritmer som Standard DES, Extended DES, MD5, Blowfish, SHA-256 og SHA-512. Denne funksjonen brukes til enveis hashing og kryptering av strenger. Det krever to argumenter: strengen som skal hashes og en valgfri saltverdi, som brukes for å legge til kompleksitet til hashprosessen og gjøre den sikrere.

På flere operativsystemer oppfører denne funksjonen seg forskjellig. Under installasjonen undersøker PHP de tilgjengelige og anbefalte algoritmene. Denne funksjonen er inkludert i PHP versjon 4 og nyere og godtar én obligatorisk og én valgfri parameter.

Syntaks

En enkel syntaks etterfulgt av krypt() funksjonen er gitt nedenfor:









krypt ( $str , $salt )

Funksjonen godtar to parametere:



  • $str: Denne parameteren er en streng som du vil kryptere. Denne strengen kan bli avkortet under generering av hash, noe som betyr at den ikke tar hele strengen i betraktning basert på hash-typen.
  • $salt: Denne parameteren brukes til å velge hashing-metoden.

Denne funksjonen vil returnere en kryptert streng.



Hvordan bruke crypt()-funksjonen i PHP?

De krypt() funksjon i PHP kan brukes med forskjellige kryptografiske hashing-algoritmer for å kryptere en streng; her er noen eksempler på bruk krypt() med forskjellige hashing-algoritmer:





La oss forklare disse metodene i detalj.

1: Bruker CRYPT_STD_DES

De CRYPT_STD_DES er en av hashing-algoritmene som støttes av krypt() funksjon i PHP som bruker Standard DES (Data Encryption Standard) algoritme for kryptering. Når du bruker CRYPT_STD_DES , må du oppgi en to-tegns saltverdi som det andre argumentet til krypt() funksjon. Saltverdien spesifiserer nøkkelvariasjonen og kompleksiteten til krypteringsprosessen.



For eksempel:



hvis ( CRYPT_STD_DES == 1 ) {

ekko 'Standard DES: ' . krypt ( 'velkommen til linuxhint' , 'str' ) . ' \n ' ;

} ellers {

ekko 'Støtter ikke standard DES. \n ' ;

}

?>

2: Bruker CRYPT_EXT_DES

De CRYPT_EXT_DES er en annen hashing-algoritme som støttes av krypt() funksjon som bruker Utvidet DES (Data Encryption Standard) algoritme for kryptering. Utvidet DES er en utvidelse av den originale DES-algoritmen, som gir større nøkkelplass og forbedret sikkerhet.

Å bruke CRYPT_EXT_DES , må du oppgi en saltverdi som starter med _J9 etterfulgt av tilleggstegn.

For eksempel:



hvis ( CRYPT_EXT_DES == 1 ) {

ekko 'Utvidet DES: ' . krypt ( 'velkommen til linuxhint' , '_J9..dutta' ) . ' \n ' ;

} ellers {

ekko 'Støtt ikke Extended DES. \n ' ;

}

?>

3: Bruker CRYPT_MD5

De CRYPT_MD5 er en av hashing-algoritmene som støttes av krypt() funksjon i PHP som bruker MD5 (Message Digest Algorithm 5 produserer en 128-biters (16-byte) hash-verdi ) algoritme for kryptering.

Å bruke CRYPT_MD5 , må du oppgi en saltverdi som starter med $1$ etterfulgt av noen karakterer.

For eksempel:



hvis ( CRYPT_MD5 == 1 ) {

ekko 'MD5: ' . krypt ( 'velkommen til linuxhint' , '$1$prøver$' ) . ' \n ' ;

} ellers {

ekko 'Støtter ikke MD5. \n ' ;

}

?>

4: Bruker CRYPT_BLOWFISH

De CRYPT_BLOWFISH er en mye anbefalt hashing-algoritme som støttes av krypt() funksjon i PHP som bruker Blowfish-algoritmen for kryptering. Blowfish er et symmetrisk nøkkelblokkchiffer som er kjent for sin sterke sikkerhet. Å bruke CRYPT_BLOWFISH , må du oppgi en saltverdi, som starter med $2y$ eller $2a$ , etterfulgt av en tosifret kostnadsparameter, og deretter den faktiske saltverdien.

For eksempel:



hvis ( CRYPT_BLOWFISH == 1 ) {

ekko 'Blowfish:' .

krypt ( 'velkommen til linuxhint' , '$2y$12$mkstringexforsaltparam' ) .

' \n ' ;

} ellers {

ekko 'Ikke støtt Blowfish. \n ' ;

}

?>

5: Bruker CRYPT_SHA256

En annen hashing-algoritme støttet av krypt() funksjonen er CRYPT_SHA256 som bruker SHA-256-algoritmen (produserer en 256-biters (32-byte) hash-verdi) for kryptering. Å bruke CRYPT_SHA256 , må du oppgi en saltverdi, som starter med $5$ , etterfulgt av en tosifret kostnadsparameter, og deretter den faktiske saltverdien

For eksempel:



hvis ( CRYPT_SHA256 == 1 ) {

ekko 'SHA-256: ' .

krypt ( 'velkommen til linuxhint' , '$5$mkstringexforsaltparam$' ) .

' \n ' ;

} ellers {

ekko 'Støtter ikke SHA256. \n ' ;

}

?>

6: Bruker CRYPT_SHA512

De CRYPT_SHA512 er en annen nyttig hashing-algoritme som støttes av krypt() funksjon i PHP som bruker SHA-512 algoritme for kryptering. SHA-512 er en mye brukt kryptografisk hash-funksjon som genererer en 512-biters (64-byte) hashverdi. Å bruke CRYPT_SHA512 , må du oppgi en saltverdi, som starter med $6$ , etterfulgt av en tosifret kostnadsparameter, og deretter den faktiske saltverdien

For eksempel:



hvis ( CRYPT_SHA512 == 1 ) {

ekko 'SHA-512: ' .

krypt ( 'velkommen til linuxhint' , '$6$mkstringexforsaltparam$' ) .

' \n ' ;

} ellers {

ekko 'Støtter ikke SHA-512. \n ' ;

}

?>

Konklusjon


PHP krypt() funksjonen kan kryptere hash-strenger og er en enveis kryptografisk teknikk som støtter den spesifiserte algoritmen. Fordi den bare tillater kryptering og ikke dekryptering, blir den referert til som en enveisalgoritme. Denne funksjonen godtar én obligatorisk og én valgfri parameter og returnerer en kryptert streng. Denne guiden implementerte PHP-krypteringsfunksjonen ved å bruke CRYPT_STD_DES, CRYPT_EXT_DES, CRYPT_MD5, CRYPT_BLOWFISH, CRYPT_SHA256 , og, CRYPT_SHA512 algoritmer.