Heim >Backend-Entwicklung >PHP-Problem >Was ist die PHP-Verschlüsselungs- und Entschlüsselungsmethode?

Was ist die PHP-Verschlüsselungs- und Entschlüsselungsmethode?

藏色散人
藏色散人Original
2021-07-15 09:20:376786Durchsuche

So implementieren Sie die PHP-Verschlüsselung und -Entschlüsselung: 1. Sie können die Methode „openssl_encrypt“ verwenden, um die Verschlüsselung zu implementieren. 2. Verwenden Sie die Methode „openssl_decrypt“, um die Entschlüsselung zu implementieren.

Was ist die PHP-Verschlüsselungs- und Entschlüsselungsmethode?

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Empfohlene verwandte Artikel: "Wie verschlüssele und entschlüssele ich PHP? PHP-Verschlüsselungs- und Entschlüsselungsmethoden》《Was sind die PHP-Verschlüsselungs- und Entschlüsselungstools》《Von PHP implementierte Verschlüsselungs- und Entschlüsselungsverarbeitungsklassen

Was sind die Verschlüsselungs- und Entschlüsselungsmethoden von PHP?

php implementiert AES-Verschlüsselung und -Entschlüsselung

In PHP verwenden wir openssl_encrypt, um die Verschlüsselung zu implementieren, und openssl_decrypt, um die Entschlüsselung zu implementieren.

1: Detaillierte Erklärung der openSL_encrypt-Methode:

openssl_encrypt($data, $method, $key, $options = 0, $iv = "", &$tag = NULL, $aad = "", $tag_length = 16)

Parameter:

1.$Daten: einfach verschlüsselt text

2.$method: Verschlüsselungsmethode: Sie können die Verschlüsselungsmethoden über openssl_get_cipher_methods() erhalten

3.$passwd: Verschlüsselungsschlüssel [Passwort]

4.$options: Datenformatoptionen (optional) [Optionen sind: ]: 0, OPENSSL_RAW_DATA=1, OPENSSL_ZERO_PADDING=2, OPENSSL_NO_PADDING=3

5.$iv: Dichter Initialisierungsvektor (optional), bitte beachten Sie: Wenn die Methode DES-ECB ist, muss iv nicht ausgefüllt werden

6.$tag: Übergeben Sie das referenzierte Authentifizierungs-Tag, wenn Sie den AEAD-Verschlüsselungsmodus (GCM oder CCM) verwenden (optional)

7.$aad: Zusätzliche Authentifizierungsdaten. (Optional)

8.$tag_length: Überprüfen Sie die Länge des Tags. Im GCM-Modus liegt der Bereich zwischen 4 und 16 (optional)

2: Detaillierte Erläuterung der Methode openssl_decrypt

openssl_decrypt($data, $method, $password, $options = 1, $iv = "", $tag = "",  $aad = "")

Parameter:

1.$data: Die verschlüsselte Nachricht, die entschlüsselt werden soll.

2.$method: Entschlüsselungsmethode: Sie können die Entschlüsselungsmethoden über openssl_get_cipher_methods() erhalten.

3.$passwd: Entschlüsselungsschlüssel [Passwort]

4.$options: Datenformatoptionen (optional) [Optionen sind:] : 0, OPENSSL_RAW_DATA=1, OPENSSL_ZERO_PADDING=2, OPENSSL_NO_PADDING=3

5.$iv: Dichter Initialisierungsvektor (optional), bitte beachten Sie: Wenn die Methode DES-ECB ist, muss iv nicht ausgefüllt werden

6 .$-Tag: Authentifizierungs-Tag im AEAD-Passwortmodus (optional)

7.$aad: Zusätzliche Authentifizierungsdaten. (Optional)

Drei: AES-Verschlüsselung und -Entschlüsselung implementieren

1: AES-Verschlüsselung

// 要加密的字符串  
$data = 'test';  
// 密钥  
$key = '123456';  
// 加密数据 'AES-128-ECB' 可以通过openssl_get_cipher_methods()获取  
$encrypt = openssl_encrypt($data, 'AES-128-ECB', $key, 0);  
echo (($encrypt));

2: AES-Entschlüsselung

//解密字符串  
$encrypt = '***';  
//密钥  
$key = '123456';  
// 解密数据  
$decrypt = openssl_decrypt($encrypt, 'AES-128-ECB', $key, 0);  
echo $decrypt;

Gemäß oben können Sie die AES-Verschlüsselungs- und Entschlüsselungsfunktion implementieren

Empfohlenes Lernen: „PHP Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist die PHP-Verschlüsselungs- und Entschlüsselungsmethode?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn