Jak korzystać z funkcji crypt() w PHP

Jak Korzystac Z Funkcji Crypt W Php



The krypta() Funkcja w PHP jest użytecznym narzędziem kryptograficznym służącym do tworzenia skrótu danego ciągu przy użyciu algorytmów haszujących, takich jak Standard DES, Extended DES, MD5, Blowfish, SHA-256 i SHA-512. Ta funkcja służy do jednokierunkowego haszowania i szyfrowania łańcuchów. Pobiera dwa argumenty: ciąg znaków do zahaszowania i opcjonalną wartość soli, która służy do złożoności procesu mieszania i zwiększenia jego bezpieczeństwa.

W kilku systemach operacyjnych ta funkcja działa inaczej. Podczas instalacji PHP sprawdza dostępne i zalecane algorytmy. Ta funkcja jest zawarta w PHP w wersji 4 i późniejszych i akceptuje jeden obowiązkowy i jeden opcjonalny parametr.

Składnia

Prosta składnia, po której następuje krypta() funkcja jest podana poniżej:









krypta ( $str , $sól )

Funkcja przyjmuje dwa parametry:



  • $str: Ten parametr to ciąg, który chcesz zaszyfrować. Ten ciąg może zostać obcięty podczas generowania skrótu, co oznacza, że ​​nie będzie brany pod uwagę cały ciąg na podstawie typu skrótu.
  • $sól: Ten parametr służy do wyboru metody haszowania.

Ta funkcja zwróci zaszyfrowany ciąg znaków.



Jak korzystać z funkcji crypt() w PHP?

The krypta() funkcja w PHP może być używana z różnymi kryptograficznymi algorytmami haszującymi do szyfrowania łańcucha; oto kilka przykładów użycia krypta() z różnymi algorytmami haszującymi:





Wyjaśnijmy szczegółowo te metody.

1: Używając CRYPT_STD_DES

The CRYPT_STD_DES jest jednym z algorytmów mieszających obsługiwanych przez krypta() funkcja w PHP, która używa Standard DES (standard szyfrowania danych) algorytm szyfrowania. Podczas używania CRYPT_STD_DES , musisz podać dwuznakową wartość soli jako drugi argument metody krypta() funkcjonować. Wartość soli określa odmianę klucza i złożoność procesu szyfrowania.



Na przykład:



Jeśli ( CRYPT_STD_DES == 1 ) {

Echo „Standardowy DES:” . krypta ( 'witaj w linuxhincie' , 'str' ) . ' \N ' ;

} w przeciwnym razie {

Echo „Nie obsługuj standardowego DES. \N ' ;

}

?>

2: Używając CRYPT_EXT_DES

The CRYPT_EXT_DES to kolejny algorytm haszujący obsługiwany przez krypta() funkcja wykorzystująca tzw Rozszerzony DES (standard szyfrowania danych) algorytm szyfrowania. Rozszerzony DES jest rozszerzeniem oryginalnego algorytmu DES, zapewniając większą przestrzeń kluczy i ulepszone bezpieczeństwo.

Używać CRYPT_EXT_DES , musisz podać wartość soli zaczynającą się od _J9 po których następują dodatkowe znaki.

Na przykład:



Jeśli ( CRYPT_EXT_DES == 1 ) {

Echo „Rozszerzone DES:” . krypta ( 'witaj w linuxhincie' , '_J9..dutta' ) . ' \N ' ;

} w przeciwnym razie {

Echo „Nie obsługuj rozszerzonego DES. \N ' ;

}

?>

3: Używając CRYPT_MD5

The CRYPT_MD5 jest jednym z algorytmów mieszających obsługiwanych przez krypta() Funkcja w PHP, która wykorzystuje MD5 (Algorytm skrótu wiadomości 5 generuje 128-bitową (16-bajtową) wartość skrótu ) algorytm szyfrowania.

Używać CRYPT_MD5 , musisz podać wartość soli zaczynającą się od 1 $ po których następuje kilka znaków.

Na przykład:



Jeśli ( CRYPT_MD5 == 1 ) {

Echo 'MD5: ' . krypta ( 'witaj w linuxhincie' , „$1$próbuje$” ) . ' \N ' ;

} w przeciwnym razie {

Echo „Nie obsługuj MD5. \N ' ;

}

?>

4: Używanie CRYPT_BLOWFISH

The CRYPT_BLOWFISH jest szeroko zalecanym algorytmem haszującym obsługiwanym przez krypta() Funkcja w PHP, która wykorzystuje algorytm Blowfish do szyfrowania. Blowfish to szyfr blokowy z kluczem symetrycznym, który jest znany ze swoich silnych zabezpieczeń. Używać CRYPT_BLOWFISH , musisz podać wartość soli, która zaczyna się od $2y $ Lub $2a $ , po którym następuje dwucyfrowy parametr kosztu, a następnie rzeczywista wartość soli.

Na przykład:



Jeśli ( CRYPT_BLOWFISH == 1 ) {

Echo „Rozdymka:” .

krypta ( 'witaj w linuxhincie' , „$2y$12$mkstringexforsaltparam” ) .

' \N ' ;

} w przeciwnym razie {

Echo „Nie wspieraj Blowfish. \N ' ;

}

?>

5: Używanie CRYPT_SHA256

Inny algorytm haszujący obsługiwany przez krypta() funkcja jest CRYPT_SHA256 który wykorzystuje algorytm SHA-256 (generuje 256-bitową (32-bajtową) wartość skrótu) do szyfrowania. Używać CRYPT_SHA256 , musisz podać wartość soli, która zaczyna się od 5 $ , po którym następuje dwucyfrowy parametr kosztu, a następnie rzeczywista wartość soli

Na przykład:



Jeśli ( CRYPT_SHA256 == 1 ) {

Echo 'SHA-256: ' .

krypta ( 'witaj w linuxhincie' , „$5$mkstringexforsaltparam$” ) .

' \N ' ;

} w przeciwnym razie {

Echo „Nie obsługuj SHA256. \N ' ;

}

?>

6: Używanie CRYPT_SHA512

The CRYPT_SHA512 to kolejny przydatny algorytm haszujący obsługiwany przez krypta() Funkcja w PHP, która wykorzystuje SHA-512 algorytm szyfrowania. SHA-512 jest szeroko stosowaną kryptograficzną funkcją skrótu, która generuje 512-bitową (64-bajtową) wartość skrótu. Używać CRYPT_SHA512 , musisz podać wartość soli, która zaczyna się od $6 $ , po którym następuje dwucyfrowy parametr kosztu, a następnie rzeczywista wartość soli

Na przykład:



Jeśli ( CRYPT_SHA512 == 1 ) {

Echo 'SHA-512: ' .

krypta ( 'witaj w linuxhincie' , „$6$mkstringexforsaltparam$” ) .

' \N ' ;

} w przeciwnym razie {

Echo „Nie obsługuj SHA-512. \N ' ;

}

?>

Wniosek


PHP krypta() Funkcja może szyfrować zaszyfrowane łańcuchy i jest jednokierunkową techniką kryptograficzną obsługującą określony algorytm. Ponieważ umożliwia tylko szyfrowanie, a nie deszyfrowanie, jest określany jako algorytm jednokierunkowy. Ta funkcja przyjmuje jeden obowiązkowy i jeden opcjonalny parametr i zwraca zaszyfrowany ciąg znaków. Ten przewodnik zaimplementował funkcję szyfrowania PHP przy użyciu CRYPT_STD_DES, CRYPT_EXT_DES, CRYPT_MD5, CRYPT_BLOWFISH, CRYPT_SHA256 , I, CRYPT_SHA512 algorytmy.