Ako používať funkciu crypt() v PHP

Ako Pouzivat Funkciu Crypt V Php



The crypt() funkcia v PHP je užitočný nástroj pre kryptografiu, ktorý sa používa na vytvorenie hashu daného reťazca pomocou hashovacích algoritmov, ako sú Standard DES, Extended DES, MD5, Blowfish, SHA-256 a SHA-512. Táto funkcia sa používa na jednosmerné hashovanie a šifrovanie reťazcov. Vyžaduje dva argumenty: reťazec, ktorý sa má hašovať, a voliteľnú hodnotu soli, ktorá sa používa na zvýšenie zložitosti procesu hašovania a zvýšenie jeho bezpečnosti.

Vo viacerých operačných systémoch sa táto funkcia správa odlišne. Počas inštalácie PHP skúma dostupné a odporúčané algoritmy. Táto funkcia je súčasťou PHP verzie 4 a novšej a akceptuje jeden povinný a jeden voliteľný parameter.

Syntax

Jednoduchá syntax, za ktorou nasleduje crypt() funkcia je uvedená nižšie:









krypta ( $str , $soľ )

Funkcia akceptuje dva parametre:



  • $str: Tento parameter je reťazec, ktorý chcete zašifrovať. Tento reťazec sa môže počas generovania hash skrátiť, čo znamená, že nebude brať do úvahy celý reťazec na základe typu hash.
  • $soľ: Tento parameter sa používa na výber metódy hashovania.

Táto funkcia vráti zašifrovaný reťazec.



Ako používať funkciu crypt() v PHP?

The crypt() funkcia v PHP môže byť použitá s rôznymi kryptografickými hashovacími algoritmami na zašifrovanie reťazca; tu je niekoľko príkladov použitia crypt() s rôznymi hašovacími algoritmami:





Vysvetlime si tieto metódy podrobne.

1: Použitie CRYPT_STD_DES

The CRYPT_STD_DES je jedným z hashovacích algoritmov podporovaných crypt() funkcia v PHP, ktorá používa Standard DES (Data Encryption Standard) algoritmus na šifrovanie. Pri použití CRYPT_STD_DES , musíte zadať dvojznakovú hodnotu soli ako druhý argument pre crypt() funkciu. Hodnota soli určuje variáciu kľúča a zložitosť procesu šifrovania.



Napríklad:



ak ( CRYPT_STD_DES == 1 ) {

ozvena 'Štandardné DES: ' . krypta ( 'vitajte v linuxhint' , 'str' ) . ' \n ' ;

} inak {

ozvena 'Nepodporujte štandard DES. \n ' ;

}

?>

2: Použitie CRYPT_EXT_DES

The CRYPT_EXT_DES je ďalší hašovací algoritmus podporovaný crypt() funkciu, ktorá využíva Rozšírený DES (Data Encryption Standard) algoritmus na šifrovanie. Rozšírené DES je rozšírením pôvodného algoritmu DES, ktorý poskytuje väčší kľúčový priestor a vylepšenú bezpečnosť.

Použit CRYPT_EXT_DES , musíte zadať hodnotu soli, ktorá začína na _J9 nasledované ďalšími znakmi.

Napríklad:



ak ( CRYPT_EXT_DES == 1 ) {

ozvena 'Rozšírené DES: ' . krypta ( 'vitajte v linuxhint' , '_J9..dutta' ) . ' \n ' ;

} inak {

ozvena 'Nepodporujte Extended DES. \n ' ;

}

?>

3: Použitie CRYPT_MD5

The CRYPT_MD5 je jedným z hashovacích algoritmov podporovaných crypt() funkcia v PHP, ktorá využíva MD5 (Algoritmus na spracovanie správ 5 vytvára 128-bitovú (16-bajtovú) hodnotu hash ) algoritmus na šifrovanie.

Použit CRYPT_MD5 , musíte zadať hodnotu soli, ktorá začína na $ 1 $ nasledované niektorými znakmi.

Napríklad:



ak ( CRYPT_MD5 == 1 ) {

ozvena 'MD5: ' . krypta ( 'vitajte v linuxhint' , '$1$pokúšam$' ) . ' \n ' ;

} inak {

ozvena 'Nepodporujte MD5. \n ' ;

}

?>

4: Použitie CRYPT_BLOWFISH

The CRYPT_BLOWFISH je široko odporúčaný hašovací algoritmus podporovaný serverom crypt() funkciu v PHP, ktorá využíva na šifrovanie algoritmus Blowfish. Blowfish je bloková šifra so symetrickým kľúčom, ktorá je známa svojou silnou bezpečnosťou. Použit CRYPT_BLOWFISH , musíte zadať hodnotu soli, ktorá začína na $ 2 r $ alebo $2a$ , za ktorým nasleduje dvojciferný parameter ceny a potom skutočná hodnota soli.

Napríklad:



ak ( CRYPT_BLOWFISH == 1 ) {

ozvena 'Blowfish: ' .

krypta ( 'vitajte v linuxhint' , '$2y$12$mkstringexforsaltparam' ) .

' \n ' ;

} inak {

ozvena „Nepodporujte Blowfish. \n ' ;

}

?>

5: Použitie CRYPT_SHA256

Ďalší hashovací algoritmus podporovaný crypt() funkcia je CRYPT_SHA256 ktorý používa algoritmus SHA-256 (vytvára 256-bitovú (32-bajtovú) hodnotu hash) na šifrovanie. Použit CRYPT_SHA256 , musíte zadať hodnotu soli, ktorá začína na 5 $ , za ktorým nasleduje dvojciferný parameter ceny a potom skutočná hodnota soli

Napríklad:



ak ( CRYPT_SHA256 == 1 ) {

ozvena 'SHA-256: ' .

krypta ( 'vitajte v linuxhint' , '$5$mkstringexforsaltparam$' ) .

' \n ' ;

} inak {

ozvena 'Nepodporujte SHA256. \n ' ;

}

?>

6: Použitie CRYPT_SHA512

The CRYPT_SHA512 je ďalší užitočný hašovací algoritmus podporovaný crypt() funkcia v PHP, ktorá využíva SHA-512 algoritmus na šifrovanie. SHA-512 je široko používaná kryptografická hašovacia funkcia, ktorá generuje 512-bitovú (64-bajtovú) hašovaciu hodnotu. Použit CRYPT_SHA512 , musíte zadať hodnotu soli, ktorá začína na 6 $ , za ktorým nasleduje dvojciferný parameter ceny a potom skutočná hodnota soli

Napríklad:



ak ( CRYPT_SHA512 == 1 ) {

ozvena 'SHA-512: ' .

krypta ( 'vitajte v linuxhint' , '$6$mkstringexforsaltparam$' ) .

' \n ' ;

} inak {

ozvena 'Nepodporujte SHA-512. \n ' ;

}

?>

Záver


PHP crypt() funkcia môže šifrovať hashované reťazce a je to jednosmerná kryptografická technika podporujúca špecifikovaný algoritmus. Pretože umožňuje iba šifrovanie a nie dešifrovanie, označuje sa ako jednosmerný algoritmus. Táto funkcia akceptuje jeden povinný a jeden voliteľný parameter a vráti zašifrovaný reťazec. Táto príručka implementovala funkciu PHP crypt pomocou CRYPT_STD_DES, CRYPT_EXT_DES, CRYPT_MD5, CRYPT_BLOWFISH, CRYPT_SHA256 a, CRYPT_SHA512 algoritmy.