Apres avoir deja aborde le sujet de l'obfuscation du code deux ou trois fois dans le forum, il est temps pour moi de m'y frotter pour de vrai ! Et comme vous devez commencer a me connaitre un peu et savoir que j'aime bien essayer de comprendre et faire moi meme les choses plutôt que d'utiliser des outils crees par d'autre devellopeurs, vous vous doutez que je me frotte de nouveau a des petits problemes

Apres avoir fait une recherche sur internet et sur le forum, je suis tombe sur plusieurs liens qui expliquent les principes généraux de l'obfuscation, ses avantages et ses défauts, mais rien qui ne reponde a toutes mes questions ou qui offre un tutoriel "pas a pas" concernant cette tache qui me permettrais d'y voir plus clair.
Voici donc quelques questions que je me pose, et j'espere trouver auprès de vous les réponses qui me manquent.
1 : Selon la methode d'obfuscation utilisée, il semble que la structure du code change. Par exemple
if(i = 30)
{
//do something;
}
Deviendrais quelquechose comme
chr(99)+chr(108)+chr(97)+chr(115)+chr(115)+chr(32)+chr(95)+chr(40)+chr(41)+chr(58)+chr(1)+chr(1)+chr(32)
Ma premiere question sera donc de savoir comment le lecteur arrive a lire ce code si la structure meme du language a ete modifie.
2 : Je comprends qu'on puisse changer le nom des variables, et les variables de type String par exemple. Mais peut-on vraiment obfusquer une valeur de type int ou boolean ?
3 : Plusieurs liens mentionnent que l'obfuscation devrait dans le meilleur des cas etre faite pendant l'ecriture du programme. Cela me semble pas mal illogique dans le sens ou si l'on obfusque le code avant de faire la release, cela permet de conserver une version du code privee, non obfusque, ce qui est plus facile a maintenir, et une version du code public, obfusque, ce qui permet d'ajouter de la securite. Il me semblerais donc plus interressant de pratiquer l'obfuscation a la fin du devellopement.
Partant de ce principe, je commence a chercher un angle d'attaque pour creer un petit programme qui ouvrirait chaque fichier de mon code et modifierait les nom des variables et leur valeur pour les rendre illisibles.
Bref je ne sais pas trop comment m'y prendre ni par quel bout prendre tout ca, auriez vous des idees ou des reponses pour moi?
Merci !