Juste une petite note de comparaison au sujet de l'obscuration du code.
pour l'exemple javascript, le code 'cripté' est contenue dans une chaine.
cette chaine est décryptée par le javacript puis interprété par la function eval.
D'une part il suffit de replacer "eval" par "alert" pour faire afficher le code
et d'autre part ce genre de traitement rallonge le traitement...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 function out(v){document.write(v);} for(i=99;i>0;i--){out(i);out(' bottle');out((i!=1)?'s':''); out(' of beer on the wall, '); out(i);out(' bottle');out((i!=1)?'s':''); out(' of beer.<br>Take one down and pass it around, '); out((i-1!=0)?i-1:'no more'); out(' bottle');out((i-1!=1)?'s':''); out(' of beer on the wall.<br><br>');}; out('No more bottles of beer on the wall, no more bottles of beer.<br>Go to the store and buy some more, 99 bottles of beer on the wall.<br>');
donc ce traitement ne protège pas la source, et il consomme plus.
En action script. le code action script est transformé en ABC ( code prémaché/ sorte d'assembleur ). Donc pas de parsing du code, de plus le code abc est gzipé. le dézipage est effectué par le player et pas par le script donc : rapide.
Pour obscurer du code : en général les noms des variables sont remplacées par des noms plus difficilement exploitable.
De plus le traitement effectué sur le code js pour le parser et l'exécuter dépend de l'implémentation du navigateur...
bref dans les deux cas la protection du code ne sert a rien.
Pire dans l'un des cas ça fait des traitement en plus.
Partager