Pour éviter la décompilation, il est essentiel de supprimer les informations de débogage du code Go compilé. Bien que le comportement par défaut du compilateur Go (gc) inclut des informations de débogage, il existe des méthodes pour les supprimer.
Solution utilisant -ldflags :
Utilisez l'indicateur -ldflags lors de la compilation :
go build -ldflags="-s -w"
Cet indicateur définit les indicateurs de l'éditeur de liens pour supprimer à la fois la ou les tables de symboles et les informations de débogage (-w).
Solution utilisant -trimpath :
De plus, avec Go 1.13 et supérieur, vous pouvez utiliser -trimpath pour réduire la longueur des chemins de fichiers stockés dans l'exécutable. Cela peut empêcher davantage les tentatives de décompilation.
go build -ldflags="-s -w -trimpath=/path/to/trim"
Remarque :
L'utilisation de gccgo n'est pas une solution viable car elle nécessite des informations de débogage pour fonctionner correctement. La suppression des informations de débogage avec l'indicateur -g entraînera un exécutable cassé. Par conséquent, les méthodes recommandées sont -ldflags et -trimpath.
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!