IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Cryptage de code Javascript


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2011
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Avril 2011
    Messages : 136
    Par défaut Cryptage de code Javascript
    Dans la plupart des navigateurs, l'utilisateur d'une page web peut afficher le code source de la page. Par là même, il peut consulter le code des fichiers javascripts en cliquant sur l'include du fichier.
    Comment crypter les fichiers javascripts en include pour qu'ils soient illisibles pour tout le monde ?
    Un grand merci à celui ou celle qui me donnera la réponse...

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Oui, c'est la dure loi de l'internet !
    Ceci dit, à part si tu considères ton code trop moche pour être visible, je vois pas trop pourquoi vouloir le cacher (il n'est pas sensé contenir de données sensibles).
    Au pire, tu peux utiliser un obfuscator, mais le but est plus de réduire que d'empêcher de le lire car il existe aussi des deobfuscator
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2011
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Avril 2011
    Messages : 136
    Par défaut
    En fait, je me doutais un peu de ta réponse....
    C'était un ami à moi, un peu parano sur les bords, qui me posait la question à laquelle je ne pouvais lui répondre...
    Merci pour la rapidité de ta réponse.

  4. #4
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 442
    Par défaut
    tu peux demander des conseils à l'IOCCC ^^

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Le problème des scripts, c'est un peu comme les images, c'est le navigateur qui les interprète, il ne peut donc le faire que s'il les a récupérés et qu'ils sont interprétables.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    La seule manière de "cacher" une logique applicative métier, c'est de l'exécuter côté serveur.

    Ce qui se passe en JS sur la machine client, c'est de l'ergonomie/animation... donc en cas de nécessité de quelque chose de + lourd (quelle que soit la raison) >>> tu fais un appel AJAX, et c'est le serveur qui renvoie le résultat des traitements à "cacher".

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 9
    Par défaut
    Bonjour,

    J'ai fait il y a longtemps une petite commande sans prétention dont le but est justement de rendre illisible du code Javascript. Bien sur, on peut toujours retrouver le code original, mais c'est quand même très dissuasif. Je viens juste de terminer une page web qui lui est consacrée. C'est ici.

    Willy.

  8. #8
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    Citation Envoyé par willycat Voir le message
    Bonjour,

    J'ai fait il y a longtemps une petite commande sans prétention dont le but est justement de rendre illisible du code Javascript. Bien sur, on peut toujours retrouver le code original, mais c'est quand même très dissuasif. Je viens juste de terminer une page web qui lui est consacrée. C'est ici.

    Willy.
    Oui, c'est le principe de l'obfuscation.

    @Patsan : attention cependant à bien comprendre ce que l'on fait ici.
    On cache le code uniquement aux yeux :
    - des non-utilisateurs de JS, qui, de toutes façons ne mettent pas les pieds dans un code source JS, le plus clair et documenté soit-il,
    - des "bidouilleurs" qui reprennent des codes à droite à gauche pour les reprendre à leur sauce.

    Mais pas aux yeux des développeurs web, qui savent que le mot "obfuscation" forme une rime très riche avec "désobfuscation"

    Donc, oui, on éloigne le premier niveau de curieux, MAIS ce n'est pas de la sécurité, en tout cas pas plus qu'un rideau au fond du magasin cachant l'arrière-boutique aux yeux des clients... ^^

  9. #9
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2011
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Avril 2011
    Messages : 136
    Par défaut
    Merci à toi Willycat, c'est ce que je voulais...

  10. #10
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    Décembre 2010
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : sans emploi

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 009
    Par défaut
    Citation Envoyé par RomainVALERI Voir le message
    Oui, c'est le principe de l'obfuscation.

    @Patsan : attention cependant à bien comprendre ce que l'on fait ici.
    On cache le code uniquement aux yeux :
    - des non-utilisateurs de JS, qui, de toutes façons ne mettent pas les pieds dans un code source JS, le plus clair et documenté soit-il,
    - des "bidouilleurs" qui reprennent des codes à droite à gauche pour les reprendre à leur sauce.

    Mais pas aux yeux des développeurs web, qui savent que le mot "obfuscation" forme une rime très riche avec "désobfuscation"

    Donc, oui, on éloigne le premier niveau de curieux, MAIS ce n'est pas de la sécurité, en tout cas pas plus qu'un rideau au fond du magasin cachant l'arrière-boutique aux yeux des clients... ^^
    J'aime bc les images ^^

    @Willycat: à première vue ton outil semble générer des longs noms de variables contrairement à la plupart des autres obfuscator qui essaye en même temps de(+ ou -) minimiser le code. Que fais donc de plus ton outil ?

  11. #11
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    Citation Envoyé par Willpower Voir le message
    Que fais donc de plus ton outil ?
    Oui, car il y en a effectivement déjà beaucoup.
    (recherches pour s'en convaincre : "javascript obfuscator", "javascript minifier")

    Cela dit, ce n'est pas pour dénigrer le boulot de willycat, dont le post était très pertinent et a satisfait la demande de PatSan, ce qui était quand même l'objectif ^^

  12. #12
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    Décembre 2010
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : sans emploi

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 009
    Par défaut
    Citation Envoyé par RomainVALERI Voir le message
    Oui, car il y en a effectivement déjà beaucoup.
    (recherches pour s'en convaincre : "javascript obfuscator", "javascript minifier")

    Cela dit, ce n'est pas pour dénigrer le boulot de willycat, dont le post était très pertinent et a satisfait la demande de PatSan, ce qui était quand même l'objectif ^^
    oui, je ne voulais pas dénigrer non plus, c'est plus de la curiosité. car ça semble quand même un sacré boulot ! enfin, moi-même je recode souvent ce qui a déjà été fait pour le plaisir et pour apprendre. :-)

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 9
    Par défaut
    Citation Envoyé par Willpower Voir le message

    @Willycat: à première vue ton outil semble générer des longs noms de variables contrairement à la plupart des autres obfuscator qui essaye en même temps de(+ ou -) minimiser le code. Que fais donc de plus ton outil ?
    Je ne peux pas te dire ce que fait mon programme de plus par rapport aux autres, car je ne les connais pas.
    J'ai fait cette commande il y a longtemps parce que je n'en trouvais aucune qui me convenait.

    Voila comment elle fonctionne:

    Il faut lui indiquer un dossier source qui contient tous les fichiers javascript de ton site (à l'intérieur de ce dossier, tu peux même créer d'autres dossiers si tu le souhaites, pour mieux organiser ton code, car la commande est récursive). Puis, il faut lui indiquer un dossier destination dans lequel elle va mettre tous les fichiers convertis (elle va recréer la même arborescence que dans le dossier source, donc s'il y a des dossiers dans des dossiers, alors ils seront recréés). Pour chaque fichier trouvé, tous les commentaires sont supprimés, ainsi que les espaces. Les lignes sont mises bout à bout. Les noms de variables et de fonctions sont remplacés par des noms composés d'une série de lettres aléatoires de taille également aléatoire allant jusqu'à 32 caractères. La commande considérant que tous les fichiers qu'elle rencontre font partie d'un même projet, un nom de variable/fonction utilisé dans plusieurs fichiers est remplacé par une même suite de lettres aléatoires. Enfin, les fonctions/variables appelées/utilisées depuis un fichier HTML doivent être préfixées du caractère "_", afin que leur nom ne soit pas traité, sinon la page HTML ne fonctionnerait plus correctement.

    Willy.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fermeture fenetre crée par code javascript
    Par Kerod dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 27/02/2010, 00h04
  2. Appel fonction php dans code javascript
    Par licorne dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 05/03/2008, 10h55
  3. [débutante] conflit entre 2 codes javascript ??
    Par silversky dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 18/09/2005, 00h42
  4. pas moyen de trouver l'erreur de ce code Javascript !!!
    Par NATHW dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 25/11/2004, 21h47
  5. Deboggage de code Javascript...
    Par michel baily dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 24/11/2004, 16h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo