På flere operativsystemer opfører denne funktion sig forskelligt. Under installationen undersøger PHP de tilgængelige og anbefalede algoritmer. Denne funktion er inkluderet i PHP version 4 og nyere og accepterer en obligatorisk og en valgfri parameter.
Syntaks
En simpel syntaks efterfulgt af krypt() funktion er angivet nedenfor:
krypt ( $str , $salt )
Funktionen accepterer to parametre:
- $str: Denne parameter er en streng, som du vil kryptere. Denne streng kan blive afkortet under hash-generering, hvilket betyder, at den ikke tager hele strengen i betragtning baseret på hash-typen.
- $salt: Denne parameter bruges til at vælge hashing-metoden.
Denne funktion returnerer en krypteret streng.
Hvordan bruger man crypt()-funktionen i PHP?
Det krypt() funktion i PHP kan bruges med forskellige kryptografiske hashing-algoritmer til at kryptere en streng; her er nogle eksempler på, hvordan du bruger krypt() med forskellige hashing-algoritmer:
- Bruger CRYPT_STD_DES
- Bruger CRYPT_EXT_DES
- Bruger CRYPT_MD5
- Bruger CRYPT_BLOWFISH
- Bruger CRYPT_SHA256
- Bruger CRYPT_SHA512
Lad os forklare disse metoder i detaljer.
1: Brug af CRYPT_STD_DES
Det CRYPT_STD_DES er en af hashing-algoritmerne, der understøttes af krypt() funktion i PHP, der bruger Standard DES (Data Encryption Standard) algoritme til kryptering. Ved brug CRYPT_STD_DES , skal du angive en saltværdi på to tegn som det andet argument til krypt() fungere. Saltværdien angiver nøglevariationen og kompleksiteten af krypteringsprocessen.
For eksempel:
hvis ( CRYPT_STD_DES == 1 ) {
ekko 'Standard DES: ' . krypt ( 'velkommen til linuxhint' , 'str' ) . ' \n ' ;
} andet {
ekko 'Understøtter ikke standard DES. \n ' ;
}
?>
2: Brug af CRYPT_EXT_DES
Det CRYPT_EXT_DES er en anden hashing-algoritme, der understøttes af krypt() funktion, der udnytter Udvidet DES (Data Encryption Standard) algoritme til kryptering. Udvidet DES er en udvidelse af den originale DES-algoritme, der giver et større nøglerum og forbedret sikkerhed.
At bruge CRYPT_EXT_DES , skal du angive en saltværdi, der starter med _J9 efterfulgt af yderligere tegn.
For eksempel:
hvis ( CRYPT_EXT_DES == 1 ) {
ekko 'Udvidet DES: ' . krypt ( 'velkommen til linuxhint' , '_J9..dutta' ) . ' \n ' ;
} andet {
ekko 'Understøtter ikke Extended DES. \n ' ;
}
?>
3: Brug af CRYPT_MD5
Det CRYPT_MD5 er en af hashing-algoritmerne, der understøttes af krypt() funktion i PHP, der bruger MD5 (Message Digest Algorithm 5 producerer en 128-bit (16-byte) hashværdi ) algoritme til kryptering.
At bruge CRYPT_MD5 , skal du angive en saltværdi, der starter med $1$ efterfulgt af nogle karakterer.
For eksempel:
hvis ( CRYPT_MD5 == 1 ) {
ekko 'MD5: ' . krypt ( 'velkommen til linuxhint' , '$1$forsøger$' ) . ' \n ' ;
} andet {
ekko 'Understøtter ikke MD5. \n ' ;
}
?>
4: Brug af CRYPT_BLOWFISH
Det CRYPT_BLOWFISH er en almindeligt anbefalet hashing-algoritme, der understøttes af krypt() funktion i PHP, der bruger Blowfish-algoritmen til kryptering. Blowfish er en symmetrisk-nøgle blok chiffer, der er kendt for sin stærke sikkerhed. At bruge CRYPT_BLOWFISH , skal du angive en saltværdi, som starter med $2y$ eller $2a$ , efterfulgt af en tocifret omkostningsparameter og derefter den faktiske saltværdi.
For eksempel:
hvis ( CRYPT_BLOWFISH == 1 ) {
ekko 'Blowfish:' .
krypt ( 'velkommen til linuxhint' , '$2y$12$mkstringexforsaltparam' ) .
' \n ' ;
} andet {
ekko 'Støt ikke Blowfish. \n ' ;
}
?>
5: Brug af CRYPT_SHA256
En anden hashing-algoritme understøttet af krypt() funktionen er CRYPT_SHA256 som bruger SHA-256-algoritmen (producerer en 256-bit (32-byte) hashværdi) til kryptering. At bruge CRYPT_SHA256 , skal du angive en saltværdi, som starter med $5$ , efterfulgt af en tocifret omkostningsparameter og derefter den faktiske saltværdi
For eksempel:
hvis ( CRYPT_SHA256 == 1 ) {
ekko 'SHA-256: ' .
krypt ( 'velkommen til linuxhint' , '$5$mkstringexforsaltparam$' ) .
' \n ' ;
} andet {
ekko 'Understøtter ikke SHA256. \n ' ;
}
?>
6: Brug af CRYPT_SHA512
Det CRYPT_SHA512 er en anden nyttig hashing-algoritme, der understøttes af krypt() funktion i PHP, der bruger SHA-512 algoritme til kryptering. SHA-512 er en meget brugt kryptografisk hash-funktion, der genererer en 512-bit (64-byte) hashværdi. At bruge CRYPT_SHA512 , skal du angive en saltværdi, som starter med $6$ , efterfulgt af en tocifret omkostningsparameter og derefter den faktiske saltværdi
For eksempel:
hvis ( CRYPT_SHA512 == 1 ) {
ekko 'SHA-512: ' .
krypt ( 'velkommen til linuxhint' , '$6$mkstringexforsaltparam$' ) .
' \n ' ;
} andet {
ekko 'Understøtter ikke SHA-512. \n ' ;
}
?>
Konklusion
PHP krypt() funktion kan kryptere hash-strenge og er en envejs kryptografisk teknik, der understøtter den angivne algoritme. Fordi det kun tillader kryptering og ikke dekryptering, omtales det som en envejsalgoritme. Denne funktion accepterer en obligatorisk og en valgfri parameter og returnerer en krypteret streng. Denne vejledning implementerede PHP-krypteringsfunktionen ved hjælp af CRYPT_STD_DES, CRYPT_EXT_DES, CRYPT_MD5, CRYPT_BLOWFISH, CRYPT_SHA256 , og, CRYPT_SHA512 algoritmer.