Salut,
J’ai lu qq part que les .class peuvent être décompilés pour obtenir le code source… est-ce qu’il ya un moyen pour protéger mon code source contre la décompilation ?
Merci.
Salut,
J’ai lu qq part que les .class peuvent être décompilés pour obtenir le code source… est-ce qu’il ya un moyen pour protéger mon code source contre la décompilation ?
Merci.
Le seul moyen est d'utiliser un obfuscateur qui va brouiller ton code, mais ne le rendra pas indécompilable.
Il n'y a pas de moyen de rendre impossible la décompilation de fichier .class.
Si tu veux vraiment quelque de non-décompilable, tu seras obligé de passer par la compilation native.
Oui, cela s'appelle l'obfuscation.
Mieux que Google, utilisez Sur Java spécialisé sur la plate-forme java !
Pour réaliser vos applications Java dans le cadre de prestations, forfait, conseil, contactez-moi en message privé.
Attention l'obfuscation n'interdit pas le reverse-engineering, mais le rend plus difficile vu qu'il consiste à rendre le code volontairement complexe.Oui, cela s'appelle l'obfuscation.
La compilation native ne protège absolument pas contre le reverse-engineering. La seule différence est que d'un coté, on a du bytecode et de l'autre du langage machine.Si tu veux vraiment quelque de non-décompilable, tu seras obligé de passer par la compilation native.
Le langage machine est peut-être un peu plus complexe a comprendre que le bytecode, pour un débutant, mais ça n'a jamais arrêté un cackeur.
C'est évident, mais c'est le meilleur moyen de protection possible.
Il est impossible (du moins à ma connaissance) de faire quelque chose qui ne sera pas décompilable au moins en langage machine.
Sinon, il reste une autre solution : Utiliser son propre ClassLoader qui travaille avec des fichiers .class cryptés, ce qui rendra plus difficile leur décodage, mais pas impossible.
Je pense qu'un bon obfuscateur sera plus bien plus efficace pour décourager le reverse-engineering que la compilation native.
Vu que les crackeur maitrisent généralement l'assembleur sur le bout des doigts, ce n'est pas ça qui va leur faire peur.
je suis déjà tombé sur un truc rigolo: un ClassLoader bien truqué ... mais une fois le ClassLoader lui même décompilé le pot aux roses fut découvert! (c'était assez amusant: en fait le binaire était caché dans un autre fichier .class après la limite déclarée du .class .. je ne savais pas qu'on pouvait faire ça!)
J'ai des principes: je peux toujours trouver une bonne raison pour les contredire .... mais j'ai des principes!
(mon excellent bouquin sur Java : https://eska-publishing.com/fr/livre...822407076.html)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager