Comment fonctionne Protector4J ?
Problèmes liés à la solution actuelle de protection du code Java
Avant de comprendre le fonctionnement de Protector4J, examinons d'abord les problèmes qui existent dans d'autres solutions de protection du code Java.
Obfuscation du code
Grâce à la haute sémantique du bytecode JVM, son analyse et sa lecture sont très aisées. Le débogage dynamique permet d'analyser facilement sa logique d'exécution, rendant ainsi l'obfuscation peu fiable comme solution de protection.
Pour plus d'informations, veuillez consulter l'article : https://protector4j.com/articles/the-issues-of-code-obfuscation/
Chiffrement des fichiers de classe
Du fait de l'existence du mécanisme d'attachement à la JVM, tout code chiffré non détaché de la JRE standard peut être facilement récupéré via des outils d'attachement. Par conséquent, cette solution de protection est la moins efficace.
Pour plus d'informations, veuillez consulter l'article : https://protector4j.com/articles/the-issues-of-class-encryption/
Protection VMP
La protection par virtualisation est la forme de protection de code la plus sûre, mais en raison de son impact important sur les performances, elle ne peut être appliquée qu'au code critique d'un programme. Le reste du code demeure vulnérable. En ciblant d'autres parties du code, un pirate peut obtenir des informations fonctionnelles sur le code virtualisé.
Veuillez vous référer à l'article pour plus de détails : https://protector4j.com/articles/the-issues-of-vm-protection/
Compilation AOT
La configuration et la compilation AOT sont très complexes, et le risque d'échec est élevé. Même en cas de succès, la logique du code est uniquement transformée de sa représentation bytecode en code machine, et sa logique intrinsèque demeure exposée sans protection particulière. Si l'on parvient à comprendre son mécanisme de compilation et d'exécution, il est possible de reconstituer le code source.
Pour plus d'informations, veuillez consulter l'article : https://protector4j.com/articles/the-issues-of-aot-protection/
Comment fonctionne Protector4J ?
Nous avons défini un format de paquetage de compression privé : JARX
Pour protéger le code Java, nous avons créé un format de document compressé privé appelé JARX et l'avons intégré à l'environnement d'exécution JVM. Un fichier JAR traité par Protector4J est transformé au format JARX.
Nous avons apporté des modifications et des personnalisations importantes à la JVM.
Grâce à une étude approfondie de la JVM, nous l'avons profondément personnalisée et modifiée. Nous avons supprimé tous les mécanismes superflus et renforcé considérablement la sécurité au niveau binaire, tout en optimisant le processus. Ceci empêche les pirates d'exploiter les méthodes existantes pour exporter les informations de vos classes. Nous sommes convaincus qu'avec les mesures actuelles, l'application chiffrée protégée par Protector4J bénéficie d'un haut niveau de sécurité. Cependant, la lutte contre le piratage informatique est un processus d'amélioration continue. Nous poursuivrons l'amélioration de nos solutions de chiffrement et de protection afin de renforcer constamment la sécurité de l'application.