Heim > Backend-Entwicklung > PHP-Tutorial > 5 Fragen und Antworten zur symmetrischen PHP-Verschlüsselung und -Entschlüsselung

5 Fragen und Antworten zur symmetrischen PHP-Verschlüsselung und -Entschlüsselung

藏色散人
Freigeben: 2023-04-11 09:16:02
nach vorne
5534 Leute haben es durchsucht

Dieser Artikel vermittelt Ihnen relevante Kenntnisse im Zusammenhang mit der symmetrischen PHP-Verschlüsselung und -Entschlüsselung. Ich hoffe, dass er für alle hilfreich ist.

1. Mcrypt-Erweiterung oder OpenSSL-Erweiterung?

php7 hat die Mcrypt-Erweiterung abgelehnt und empfiehlt die Verwendung von OpenSSL für die Ver- und Entschlüsselung

2, DES, 3DES, AES?

DES ist ein älterer symmetrischer Verschlüsselungsalgorithmus. Seine Sicherheit entspricht nicht mehr den aktuellen Anforderungen und seine Leistung ist schlechter als die von AES.

Die Essenz von 3DES ist auch DES, aber es ist im Grunde das Gleiche wie oben. Versuchen Sie, diese beiden vertraulichen Algorithmen zu vermeiden (Advanced Encryption Standard), ein derzeit weit verbreiteter symmetrischer Verschlüsselungsalgorithmus. AES ist sehr sicher und leistungsstark.

3. AES-128-X, AES-196-X oder AES-256-X? Wenn der Schlüssel 16 Bytes überschreitet, wird der zusätzliche Teil direkt ignoriert.

4. Fünf Verschlüsselungsmodi

Beispielcode:

ECB Electric CodeBook  电码本模式
CBC Cipher Block Chaining 密码分组链接模式
Nach dem Login kopieren
$my_method = 'aes-128-cbc';  //算法
$key = "1234567812345678"; //128bit秘钥
$data =  "asxsaxasdlkasjdiqi";  
//输入算法获取向量长度
$iv_length =  openssl_cipher_iv_length( $my_method );  
//根据长度获取向量 函数会给$cstrong赋bool值,判断是否使用了强加密算法,一般为true
$iv = openssl_random_pseudo_bytes( $iv_length, $cstrong );
//加密
$enc_data = openssl_encrypt($data, $my_method, $key,  OPENSSL_RAW_DATA, $iv);
//解密
$dec_data = openssl_decrypt($enc_data, $my_method, $key,  OPENSSL_RAW_DATA, $iv);
Nach dem Login kopieren

Verschiedene Iterationsmodi für die Blockverschlüsselung unter demselben Algorithmus, z. B. AES-128-ECB, was sich auf die Verwendung des AES-Algorithmus bezieht, der geheime Schlüssel eine Länge von 128 Bit hat und die Iterationsmethode ECB ist. Verwendung Der mit dem AES-128-ECB-Algorithmus verschlüsselte Chiffretext kann nur mit AES-128-ECB entschlüsselt werden

5 Wie überprüfe ich die verfügbaren Verschlüsselungsmethoden?

CFB Cipher FeedBack 密码反馈模式
OFB Output FeedBack  输出反馈模式
CTR Counter Mode 计算器模式
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt von5 Fragen und Antworten zur symmetrischen PHP-Verschlüsselung und -Entschlüsselung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:learnku.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage