Maison > Article > développement back-end > Comment empêcher le piratage du code source PHP
Protégez votre propre code PHP, chiffrez-le :
Obfuscation du code + chiffrement
Le cryptage réel ne compte pas. L'idée spécifique de l'implémentation est de crypter le code en base64, puis d'effectuer un mappage de chaîne sur la chaîne en base64 (générer aléatoirement un obscurcissement du dictionnaire), puis d'évaluer l'exécution, qui peut être craquée et restaurée à 100 % ( apprentissage recommandé : Tutoriel vidéo PHP)
représente le code suivant :
<?php function RandAbc($length = "") { // 返回随机字符串 $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; return str_shuffle($str); } $filename = 'index.php'; //要加密的文件 $T_k1 = RandAbc(); //随机密匙1 $T_k2 = RandAbc(); //随机密匙2 $vstr = file_get_contents($filename); $v1 = base64_encode($vstr); $c = strtr($v1, $T_k1, $T_k2); //根据密匙替换对应字符。 $c = $T_k1.$T_k2.$c; $q1 = "O00O0O"; $q2 = "O0O000"; $q3 = "O0OO00"; $q4 = "OO0O00"; $q5 = "OO0000"; $q6 = "O00OO0"; $s = '$'.$q6.'=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");$'.$q1.'=$'.$q6.'{3}.$'.$q6.'{6}.$'.$q6.'{33}.$'.$q6.'{30};$'.$q3.'=$'.$q6.'{33}.$'.$q6.'{10}.$'.$q6.'{24}.$'.$q6.'{10}.$'.$q6.'{24};$'.$q4.'=$'.$q3.'{0}.$'.$q6.'{18}.$'.$q6.'{3}.$'.$q3.'{0}.$'.$q3.'{1}.$'.$q6.'{24};$'.$q5.'=$'.$q6.'{7}.$'.$q6.'{13};$'.$q1.'.=$'.$q6.'{22}.$'.$q6.'{36}.$'.$q6.'{29}.$'.$q6.'{26}.$'.$q6.'{30}.$'.$q6.'{32}.$'.$q6.'{35}.$'.$q6.'{26}.$'.$q6.'{30};eval($'.$q1.'("'.base64_encode('$'.$q2.'="'.$c.'";eval(\'?>\'.$'.$q1.'($'.$q3.'($'.$q4.'($'.$q2.',$'.$q5.'*2),$'.$q4.'($'.$q2.',$'.$q5.',$'.$q5.'),$'.$q4.'($'.$q2.',0,$'.$q5.'))));').'"));'; $s = '<?php '."\n".$s."\n".' ?>'; //echo $s; // 生成 加密后的PHP文件 $fpp1 = fopen('temp_'.$filename, 'w'); fwrite($fpp1, $s) or die('写文件错误'); ?>
Distribuer l'opcode
Ne distribuez pas de code, mais précompilez d'abord le code PHP et distribuez l'opcode. Après PHP7, opcache est profondément intégré à cette chose. Après PHP7, vous pouvez utiliser cette méthode pour protéger le code source, mais il sera également décompilé par. l'opcode et sera cracké.
Obfusquer + crypter + écrire l'extension PHP
Obscurcir + crypter + écrire l'extension PHP, mais tant qu'il s'agit d'une extension PHP open source, elle sera crackée à moins que vous écrivez vous-même l'algorithme de cryptage. Cryptez le code PHP, puis utilisez la voix C pour écrire vous-même une extension à source fermée. D'autres ne connaissent pas vos idées de cryptage et de piratage, donc la possibilité d'être piraté est très faible.
Compilateur Swoole
Celui produit par swoole consiste à prendre l'opcode généré puis à obscurcir le cryptage. Alors c'est génial si vous voulez l'exécuter. Il est évident que le moteur zend est impossible de reconnaître l'opcode obscurci et crypté, il doit donc en fait réécrire zend, donc le moteur zend pris en charge doit également être modifié.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!