Maison > Article > développement back-end > Comment protéger le code principal de PHP
Protéger PHP, c'est protéger les droits de propriété intellectuelle, y compris certaines interfaces importantes, etc.
Solutions actuellement couramment utilisées :
Pour la protection des langages dynamiquestels que PHP, je je pense que c'est la même chose que celle résumée avant. La protection js est presque la même, rien de plus que : (apprentissage recommandé : Programmation PHP de l'entrée à la maîtrise)
cryptage ; (le plus faible, il n'y a aucun moyen, ce genre de dynamique Les caractéristiques du langage interprété conduisent à) un débogage dynamique ou un accrochage pour le résoudre, bien sûr cela peut aussi être fait en regardant.
obscurcissement ; (c'est-à-dire certains obscurcissements locaux, y compris des modifications des variables et des chaînes dans le code, les plus forts effectueront un anti-obscurcissement logique via l'accord php ast open source) ; avec.
Protection des machines virtuelles, une question courante, quant à l'amélioration de la machine virtuelle, cela dépend de la façon de bien la combiner avec la couche locale, et de comment mieux concevoir le Handler ; comme Rubik's Cube, rétro-ingénierie, 52 Il y a un grand gars Ganlv qui a fait des recherches approfondies, vous pouvez aller le lire
Il y a aussi l'introduction de la compilation , qui est ; compilé dans un fichier de bytecode pour l'interprétation et l'exécution. Il y a un écart entre le bytecode et l'interprétation, vous pouvez modifier les règles de mappage à ce moment, par exemple, Zend Guard
Swoole Compiler est. actuellement le plus fort, et en même temps l'impact sur les performances n'est pas significatif. Je suis très curieux et intéressé par ce cryptage étendu, bien sûr, je ne peux pas l'analyser. je n'ai pas le temps. Nous savons que les langages dynamiques comme PHP doivent fonctionner sur un interpréteur. Interpréteur de bytecode Zend, ce qui peut être fait ici est de convertir le bytecode Zend en LLVM ir, puis de l'optimiser à l'aide de nombreuses bonnes passes d'optimisation dans llvm, et il peut également être obscurci. Swoole Compiler compile PHP en bytecode ou en fichiers de niveau inférieur, puis fournit aux clients un outil d'extension pour l'interprétation ; pour Swoole Compiler, cela peut être une modification magique de la partie interprétation dans la machine virtuelle Zend. Plus, plus quelques autres mesures de sécurité, l'effet peut être plus puissant. On estime que de nombreuses routines de piratage existantes seront invalides. En même temps, Swoole lui-même est le légendaire Node.js en PHP, et ses performances doivent être meilleures. de nombreuses optimisations ont été faites pour compenser la perte de performances dans la protection de la virtualisationCe 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!