PHP'de crypt() İşlevi Nasıl Kullanılır?

Php De Crypt Islevi Nasil Kullanilir



bu mezar odası() PHP'deki işlev, Standard DES, Extended DES, MD5, Blowfish, SHA-256 ve SHA-512 gibi karma algoritmaları kullanarak verilen dizginin bir özetini oluşturmak için kullanılan şifreleme için yararlı bir araçtır. Bu işlev, dizelerin tek yönlü hashing ve şifrelemesi için kullanılır. İki bağımsız değişken gerekir: karma oluşturulacak dize ve karma işlemine karmaşıklık katmak ve onu daha güvenli hale getirmek için kullanılan isteğe bağlı bir salt değeri.

Birkaç işletim sisteminde bu işlev farklı davranır. Yükleme sırasında, PHP mevcut ve önerilen algoritmaları inceler. Bu işlev, PHP sürüm 4 ve sonraki sürümlerde bulunur ve bir zorunlu ve bir isteğe bağlı parametre kabul eder.

Sözdizimi

Ardından gelen basit bir sözdizimi mezar odası() fonksiyon aşağıda verilmiştir:









mezar odası ( $str , $tuz )

İşlev iki parametre kabul eder:



  • $str: Bu parametre, şifrelemek istediğiniz bir dizedir. Bu dize, karma oluşturma sırasında kesilebilir, bu da karma türüne göre tüm dizeyi hesaba katmayacağı anlamına gelir.
  • $tuz: Bu parametre hash yöntemini seçmek için kullanılır.

Bu işlev şifrelenmiş bir dize döndürür.



PHP'de crypt() İşlevi Nasıl Kullanılır?

bu mezar odası() PHP'deki işlev, bir diziyi şifrelemek için farklı kriptografik karma algoritmalarla kullanılabilir; işte nasıl kullanılacağına dair bazı örnekler mezar odası() farklı karma algoritmalarla:





Bu yöntemleri ayrıntılı olarak açıklayalım.

1: CRYPT_STD_DES Kullanımı

bu CRYPT_STD_DES tarafından desteklenen karma algoritmalardan biridir. mezar odası() kullanan PHP işlevi Standart DES (Veri Şifreleme Standardı) şifreleme için algoritma Kullanırken CRYPT_STD_DES , ikinci argüman olarak iki karakterli bir salt değeri sağlamanız gerekir. mezar odası() işlev. Tuz değeri, şifreleme işleminin anahtar varyasyonunu ve karmaşıklığını belirtir.



Örneğin:



eğer ( CRYPT_STD_DES == 1 ) {

Eko 'Standart DES:' . mezar odası ( 'linuxhint'e hoş geldiniz' , 'str' ) . ' \N ' ;

} başka {

Eko 'Standart DES'i desteklemeyin. \N ' ;

}

?>

2: CRYPT_EXT_DES Kullanımı

bu CRYPT_EXT_DES tarafından desteklenen başka bir karma algoritmadır. mezar odası() kullanan fonksiyon Genişletilmiş DES (Veri Şifreleme Standardı) şifreleme için algoritma Genişletilmiş DES orijinal DES algoritmasının bir uzantısıdır ve daha geniş bir anahtar alanı ve geliştirilmiş güvenlik sağlar.

Kullanmak CRYPT_EXT_DES ile başlayan bir tuz değeri sağlamanız gerekir. _J9 ardından ek karakterler gelir.

Örneğin:



eğer ( CRYPT_EXT_DES == 1 ) {

Eko 'Genişletilmiş DES:' . mezar odası ( 'linuxhint'e hoş geldiniz' , '_J9..dutta' ) . ' \N ' ;

} başka {

Eko 'Genişletilmiş DES'i desteklemeyin. \N ' ;

}

?>

3: CRYPT_MD5'i Kullanma

bu CRYPT_MD5 tarafından desteklenen karma algoritmalardan biridir. mezar odası() kullanan PHP işlevi MD5 (Mesaj Özetleme Algoritması 5 128 bit (16 bayt) karma değer üretir ) şifreleme için algoritma

Kullanmak CRYPT_MD5 ile başlayan bir tuz değeri sağlamanız gerekir. $1$ ardından bazı karakterler gelir.

Örneğin:



eğer ( CRYPT_MD5 == 1 ) {

Eko 'MD5:' . mezar odası ( 'linuxhint'e hoş geldiniz' , '$1$deneniyor$' ) . ' \N ' ;

} başka {

Eko 'MD5'i desteklemeyin. \N ' ;

}

?>

4: CRYPT_BLOWFISH Kullanımı

bu CRYPT_BLOWFISH tarafından desteklenen, yaygın olarak tavsiye edilen bir karma algoritmadır. mezar odası() şifreleme için Blowfish algoritmasını kullanan PHP'de işlev. Blowfish, güçlü güvenliği ile tanınan simetrik anahtarlı bir blok şifreleyicidir. Kullanmak CRYPT_BLOWFISH ile başlayan bir tuz değeri sağlamanız gerekir. $2y$ veya $2a$ , ardından iki basamaklı bir maliyet parametresi ve ardından gerçek tuz değeri.

Örneğin:



eğer ( CRYPT_BLOWFISH == 1 ) {

Eko 'Balo balığı:' .

mezar odası ( 'linuxhint'e hoş geldiniz' , '$2y$12$mkstringexforsaltparam' ) .

' \N ' ;

} başka {

Eko 'Blowfish'i desteklemeyin. \N ' ;

}

?>

5: CRYPT_SHA256'yı Kullanma

Tarafından desteklenen başka bir karma algoritma mezar odası() işlev CRYPT_SHA256 şifreleme için SHA-256 algoritmasını kullanır (256 bit (32 bayt) karma değer üretir). Kullanmak CRYPT_SHA256 ile başlayan bir tuz değeri sağlamanız gerekir. 5$ , ardından iki basamaklı bir maliyet parametresi ve ardından gerçek tuz değeri

Örneğin:



eğer ( CRYPT_SHA256 == 1 ) {

Eko 'SHA-256:' .

mezar odası ( 'linuxhint'e hoş geldiniz' , '$5$mkstringexforsaltparam$' ) .

' \N ' ;

} başka {

Eko 'SHA256'yı desteklemeyin. \N ' ;

}

?>

6: CRYPT_SHA512'yi Kullanma

bu CRYPT_SHA512 tarafından desteklenen başka bir kullanışlı karma algoritmadır. mezar odası() kullanan PHP işlevi SHA-512 şifreleme için algoritma SHA-512 512 bitlik (64 bayt) bir karma değer üreten, yaygın olarak kullanılan bir kriptografik karma işlevidir. Kullanmak CRYPT_SHA512 ile başlayan bir tuz değeri sağlamanız gerekir. 6$ , ardından iki basamaklı bir maliyet parametresi ve ardından gerçek tuz değeri

Örneğin:



eğer ( CRYPT_SHA512 == 1 ) {

Eko 'SHA-512:' .

mezar odası ( 'linuxhint'e hoş geldiniz' , '$6$mkstringexforsaltparam$' ) .

' \N ' ;

} başka {

Eko 'SHA-512'yi desteklemeyin. \N ' ;

}

?>

Çözüm


PHP mezar odası() işlevi karma dizileri şifreleyebilir ve belirtilen algoritmayı destekleyen tek yönlü bir kriptografik tekniktir. Yalnızca şifrelemeye izin verdiği ve şifre çözmeye izin vermediği için, tek yönlü bir algoritma olarak adlandırılır. Bu işlev, bir zorunlu ve bir isteğe bağlı parametreyi kabul eder ve şifreli bir dize döndürür. Bu kılavuz kullanarak PHP crypt işlevini uygulamıştır. CRYPT_STD_DES, CRYPT_EXT_DES, CRYPT_MD5, CRYPT_BLOWFISH, CRYPT_SHA256 , Ve, CRYPT_SHA512 algoritmalar.