Come utilizzare la funzione crypt() in PHP

Come Utilizzare La Funzione Crypt In Php



IL cripta() La funzione in PHP è uno strumento utile per la crittografia utilizzato per creare un hash della stringa data utilizzando algoritmi di hashing come Standard DES, Extended DES, MD5, Blowfish, SHA-256 e SHA-512. Questa funzione viene utilizzata per l'hashing unidirezionale e la crittografia delle stringhe. Richiede due argomenti: la stringa da sottoporre ad hashing e un valore salt facoltativo, utilizzato per aggiungere complessità al processo di hashing e renderlo più sicuro.

Su diversi sistemi operativi, questa funzione si comporta in modo diverso. Durante l'installazione, PHP esamina gli algoritmi disponibili e consigliati. Questa funzione è inclusa in PHP versione 4 e successive e accetta un parametro obbligatorio e uno facoltativo.

Sintassi

Una semplice sintassi seguita dal cripta() la funzione è riportata di seguito:









cripta ( $str , $sale )

La funzione accetta due parametri:



  • $str: Questo parametro è una stringa che si desidera crittografare. Questa stringa potrebbe essere troncata durante la generazione dell'hash, il che significa che non prenderà in considerazione l'intera stringa in base al tipo di hash.
  • $sale: Questo parametro viene utilizzato per selezionare il metodo di hashing.

Questa funzione restituirà una stringa crittografata.



Come utilizzare la funzione crypt() in PHP?

IL cripta() la funzione in PHP può essere utilizzata con diversi algoritmi di hashing crittografico per crittografare una stringa; ecco alcuni esempi di utilizzo cripta() con diversi algoritmi di hashing:





Spieghiamo questi metodi in dettaglio.

1: Utilizzo di CRYPT_STD_DES

IL CRYPT_STD_DES è uno degli algoritmi di hashing supportati da cripta() funzione in PHP che utilizza il DES standard (standard di crittografia dei dati) algoritmo per la crittografia. Quando si usa CRYPT_STD_DES , devi fornire un valore salt di due caratteri come secondo argomento di cripta() funzione. Il valore salt specifica la variazione della chiave e la complessità del processo di crittografia.



Per esempio:



Se ( CRYPT_STD_DES == 1 ) {

eco 'DES standard: ' . cripta ( 'benvenuto su linuxhint' , 'str' ) . ' \N ' ;

} altro {

eco 'Non supporta DES standard. \N ' ;

}

?>

2: Utilizzo di CRYPT_EXT_DES

IL CRYPT_EXT_DES è un altro algoritmo di hashing supportato da cripta() funzione che utilizza il DES esteso (standard di crittografia dei dati) algoritmo per la crittografia. DES esteso è un'estensione dell'algoritmo DES originale, che fornisce uno spazio chiave più ampio e una maggiore sicurezza.

Usare CRYPT_EXT_DES , devi fornire un valore salt che inizi con _J9 seguito da caratteri aggiuntivi.

Per esempio:



Se ( CRYPT_EXT_DES == 1 ) {

eco 'DES esteso: ' . cripta ( 'benvenuto su linuxhint' , '_J9..dutta' ) . ' \N ' ;

} altro {

eco 'Non supporta DES esteso. \N ' ;

}

?>

3: Utilizzo di CRYPT_MD5

IL CRYPT_MD5 è uno degli algoritmi di hashing supportati da cripta() funzione in PHP che utilizza il MD5 (Message Digest Algoritmo 5 produce un valore hash a 128 bit (16 byte). ) algoritmo per la crittografia.

Usare CRYPT_MD5 , devi fornire un valore salt che inizi con $1$ seguito da alcuni caratteri.

Per esempio:



Se ( CRYPT_MD5 == 1 ) {

eco 'MD5: ' . cripta ( 'benvenuto su linuxhint' , '$1$provando$' ) . ' \N ' ;

} altro {

eco 'Non supporta MD5. \N ' ;

}

?>

4: Utilizzo di CRYPT_BLOWFISH

IL CRYPT_BLOWFISH è un algoritmo di hashing ampiamente raccomandato supportato dal cripta() funzione in PHP che utilizza l'algoritmo Blowfish per la crittografia. Blowfish è un cifrario a blocchi a chiave simmetrica noto per la sua elevata sicurezza. Usare CRYPT_BLOWFISH , devi fornire un valore salt, che inizia con $ 2 anni $ O $2a$ , seguito da un parametro di costo a due cifre e quindi dal valore salt effettivo.

Per esempio:



Se ( CRYPT_BLOWFISH == 1 ) {

eco 'Pesce palla:' .

cripta ( 'benvenuto su linuxhint' , '$2y$12$mkstringexforsaltparam' ) .

' \N ' ;

} altro {

eco 'Non supportare Blowfish. \N ' ;

}

?>

5: Utilizzo di CRYPT_SHA256

Un altro algoritmo di hashing supportato da cripta() la funzione è la CRYPT_SHA256 che utilizza l'algoritmo SHA-256 (produce un valore hash a 256 bit (32 byte)) per la crittografia. Usare CRYPT_SHA256 , devi fornire un valore salt, che inizia con $5$ , seguito da un parametro di costo a due cifre e quindi dal valore salt effettivo

Per esempio:



Se ( CRYPT_SHA256 == 1 ) {

eco 'SHA-256: ' .

cripta ( 'benvenuto su linuxhint' , '$5$mkstringexforsaltparam$' ) .

' \N ' ;

} altro {

eco 'Non supporta SHA256. \N ' ;

}

?>

6: Utilizzo di CRYPT_SHA512

IL CRYPT_SHA512 è un altro utile algoritmo di hashing supportato da cripta() funzione in PHP che utilizza il SHA-512 algoritmo per la crittografia. SHA-512 è una funzione hash crittografica ampiamente utilizzata che genera un valore hash a 512 bit (64 byte). Usare CRYPT_SHA512 , devi fornire un valore salt, che inizia con $6$ , seguito da un parametro di costo a due cifre e quindi dal valore salt effettivo

Per esempio:



Se ( CRYPT_SHA512 == 1 ) {

eco 'SHA-512: ' .

cripta ( 'benvenuto su linuxhint' , '$6$mkstringexforsaltparam$' ) .

' \N ' ;

} altro {

eco 'Non supporta SHA-512. \N ' ;

}

?>

Conclusione


Il PHP cripta() La funzione può crittografare stringhe con hash ed è una tecnica crittografica unidirezionale che supporta l'algoritmo specificato. Poiché consente solo la crittografia e non la decrittografia, viene definito algoritmo unidirezionale. Questa funzione accetta un parametro obbligatorio e uno facoltativo e restituisce una stringa crittografata. Questa guida ha implementato la funzione PHP crypt usando CRYPT_STD_DES, CRYPT_EXT_DES, CRYPT_MD5, CRYPT_BLOWFISH, CRYPT_SHA256 , E, CRYPT_SHA512 algoritmi.