Useissa käyttöjärjestelmissä tämä toiminto toimii eri tavalla. Asennuksen aikana PHP tutkii käytettävissä olevat ja suositellut algoritmit. Tämä toiminto sisältyy PHP-versioon 4 ja uudempiin ja hyväksyy yhden pakollisen ja yhden valinnaisen parametrin.
Syntaksi
Yksinkertainen syntaksi, jota seuraa krypta() toiminto on annettu alla:
krypta ( $str , $ suolaa )
Funktio hyväksyy kaksi parametria:
- $str: Tämä parametri on merkkijono, jonka haluat salata. Tämä merkkijono voi katkaista tiivisteen luomisen aikana, mikä tarkoittaa, että se ei ota koko merkkijonoa huomioon hash-tyypin perusteella.
- $suola: Tätä parametria käytetään hajautusmenetelmän valitsemiseen.
Tämä toiminto palauttaa salatun merkkijonon.
Kuinka käyttää crypt()-funktiota PHP:ssä?
The krypta() PHP:n funktiota voidaan käyttää eri kryptografisten hajautusalgoritmien kanssa merkkijonon salaamiseen; tässä on joitain esimerkkejä käytöstä krypta() erilaisilla hajautusalgoritmeilla:
- Käytössä CRYPT_STD_DES
- Käytössä CRYPT_EXT_DES
- Käytössä CRYPT_MD5
- Käytössä CRYPT_BLOWFISH
- Käytössä CRYPT_SHA256
- Käytössä CRYPT_SHA512
Selitämme nämä menetelmät yksityiskohtaisesti.
1: CRYPT_STD_DES
The CRYPT_STD_DES on yksi tiivistysalgoritmeista, joita krypta() funktio PHP:ssä, joka käyttää Standard DES (Data Encryption Standard) salausalgoritmi. Käytettäessä CRYPT_STD_DES , sinun on annettava kaksimerkkinen suolaarvo toiseksi argumentiksi krypta() toiminto. Suola-arvo määrittää salausprosessin avaimen vaihtelun ja monimutkaisuuden.
Esimerkiksi:
jos ( CRYPT_STD_DES == 1 ) {
kaiku 'Standard DES:' . krypta ( 'Tervetuloa linuxhintiin' , 'str' ) . ' \n ' ;
} muu {
kaiku 'Ei tue standardi DES:ää. \n ' ;
}
?>
2: CRYPT_EXT_DES
The CRYPT_EXT_DES on toinen tiivistysalgoritmi, jota tukee krypta() toiminto, joka hyödyntää Laajennettu DES (Data Encryption Standard) salausalgoritmi. Laajennettu DES on alkuperäisen DES-algoritmin laajennus, joka tarjoaa suuremman avaintilan ja parannetun suojauksen.
Käyttää CRYPT_EXT_DES , sinun on annettava suola-arvo, joka alkaa _J9 perässä lisämerkkejä.
Esimerkiksi:
jos ( CRYPT_EXT_DES == 1 ) {
kaiku 'Laajennettu DES:' . krypta ( 'Tervetuloa linuxhintiin' , '_J9..dutta' ) . ' \n ' ;
} muu {
kaiku 'Älä tue laajennettua DES:ää. \n ' ;
}
?>
3: CRYPT_MD5 käyttö
The CRYPT_MD5 on yksi tiivistysalgoritmeista, joita krypta() funktio PHP:ssä, joka käyttää MD5 (Message Digest Algorithm 5 tuottaa 128-bittisen (16-tavun) hash-arvon ) salausalgoritmi.
Käyttää CRYPT_MD5 , sinun on annettava suola-arvo, joka alkaa $1$ perässä joitain hahmoja.
Esimerkiksi:
jos ( CRYPT_MD5 == 1 ) {
kaiku 'MD5:' . krypta ( 'Tervetuloa linuxhintiin' , '$1$trying$' ) . ' \n ' ;
} muu {
kaiku 'Älä tue MD5:tä. \n ' ;
}
?>
4: CRYPT_BLOWFISH käyttö
The CRYPT_BLOWFISH on laajalti suositeltu hajautusalgoritmi, jota tukee krypta() PHP:n toiminto, joka käyttää Blowfish-algoritmia salaukseen. Blowfish on symmetrisen avaimen lohkosalaus, joka tunnetaan vahvasta turvallisuudestaan. Käyttää CRYPT_BLOWFISH , sinun on annettava suola-arvo, joka alkaa $2y$ tai $2a$ , jota seuraa kaksinumeroinen kustannusparametri ja sitten todellinen suolan arvo.
Esimerkiksi:
jos ( CRYPT_BLOWFISH == 1 ) {
kaiku 'Blowfish:' .
krypta ( 'Tervetuloa linuxhintiin' , '$2y$12$mkstringexforsaltparam' ) .
' \n ' ;
} muu {
kaiku 'Älä tue Blowfishia. \n ' ;
}
?>
5: CRYPT_SHA256:n käyttö
Toinen hajautusalgoritmi, jota tukee krypta() toiminto on CRYPT_SHA256 joka käyttää SHA-256-algoritmia (tuottaa 256-bittisen (32-tavun) hash-arvon) salaukseen. Käyttää CRYPT_SHA256 , sinun on annettava suola-arvo, joka alkaa $5$ , jota seuraa kaksinumeroinen kustannusparametri ja sitten todellinen suolan arvo
Esimerkiksi:
jos ( CRYPT_SHA256 == 1 ) {
kaiku 'SHA-256: ' .
krypta ( 'Tervetuloa linuxhintiin' , '$5$mkstringexforsaltparam$' ) .
' \n ' ;
} muu {
kaiku 'Ei tue SHA256:ta. \n ' ;
}
?>
6: CRYPT_SHA512:n käyttö
The CRYPT_SHA512 on toinen hyödyllinen hajautusalgoritmi, jota tukee krypta() funktio PHP:ssä, joka käyttää SHA-512 salausalgoritmi. SHA-512 on laajalti käytetty kryptografinen hash-funktio, joka luo 512-bittisen (64-tavun) hash-arvon. Käyttää CRYPT_SHA512 , sinun on annettava suola-arvo, joka alkaa 6 dollaria , jota seuraa kaksinumeroinen kustannusparametri ja sitten todellinen suolan arvo
Esimerkiksi:
jos ( CRYPT_SHA512 == 1 ) {
kaiku 'SHA-512: ' .
krypta ( 'Tervetuloa linuxhintiin' , '$6$mkstringexforsaltparam$' ) .
' \n ' ;
} muu {
kaiku 'Ei tue SHA-512:ta. \n ' ;
}
?>
Johtopäätös
PHP krypta() Funktio voi salata hajautetut merkkijonot ja se on yksisuuntainen salaustekniikka, joka tukee määritettyä algoritmia. Koska se sallii vain salauksen, ei salauksen purkamista, sitä kutsutaan yksisuuntaiseksi algoritmiksi. Tämä funktio hyväksyy yhden pakollisen ja yhden valinnaisen parametrin ja palauttaa salatun merkkijonon. Tämä opas toteutti PHP-salaustoiminnon käyttämällä CRYPT_STD_DES, CRYPT_EXT_DES, CRYPT_MD5, CRYPT_BLOWFISH, CRYPT_SHA256 , ja, CRYPT_SHA512 algoritmeja.