2010-02-08 3 views
17

Possible en double:
How can I obfuscate JavaScript?comment cacher le code javascript

Bonjour!

Est-il possible de cacher le code JS? Comment? J'ai lu quelque part une technique comme: prendre JS dans un fichier externe, et utiliser js-encrypt.

Je sais qu'il est impossible de cacher à tous les regards, mais ...

Merci.

+7

Ce qui est si secret sur votre code JS? – ceejayoz

+31

@ceejayoz Quel est le secret de tout code? Genre d'une question naïve. Il y a beaucoup de bonnes raisons de vouloir cacher le code. –

+1

s'il vous plaît ne me dites pas que vous cachez des mots de passe ou d'autres données sensibles en javascript. : D –

Répondre

12

Il n'est pas possible de cacher Javascript à l'utilisateur, puisque son navigateur doit le télécharger pour l'exécuter. La seule autre option est obfuscation.

+3

Je suis d'accord; la sécurité à travers l'obscurité n'est pas une très bonne sécurité du tout ... –

+0

Eh bien, l'OMI n'est même pas la sécurité. –

+7

@ chris-l me rappelle une citation du cours de sécurité de l'information: "La sécurité ne cache pas la porte.C'est mettre la porte devant eux, leur dire comment il est verrouillé, et ils ne peuvent toujours pas entrer. " – Cruncher

0

La réponse est non - depuis le navigateur doit comprendre le javascript, l'utilisateur sera en mesure de comprendre le javascript ...

+0

Utiliser Encode.js: encodejs.devincity.com –

7

Vous pouvez lancer votre côté serveur JavaScript privé par exemple en utilisant ASP JScript.NET

<% WebService Language="JScript" Class="MyClass" %> 

Vous pouvez mettre la fonctionnalité cachée sur le serveur et l'appeler via AJAX dans la partie non cachée du code sur le client.

vous pouvez également utiliser

<script runat="server"> 

ou si vous ne l'utilisez une plate-forme Microsoft vous pourriez envisager Mozilla Rhino

+0

On dirait – nicerobot

+2

Je pense que la réponse la plus moderne serait d'utiliser node.js + socket.io pour ce genre de chose – PeanutPower

+0

Ou si vous n'utilisez pas une plate-forme côté serveur qui supporte JS En supposant que le code à cacher est quelque chose qui peut être fait sur le serveur, par exemple vous ne pouvez pas déplacer les gestionnaires d'événements d'un jeu vers le côté serveur – nnnnnn

1

Comme vous pouvez prendre quelqu'un d'autre code et essayer de le chiffrer, en va de même pour les autres qui peut prendre votre code. La seule solution que je pense est d'obscurcir votre code javascript pour qu'il devienne un peu difficile à saisir pour les autres mais là encore il y a des décrypteurs disponibles donc pas de vraie solution à partir de ce que je sais qui est arrivé jusqu'ici.

Je suis sûr que ces liens vont vous aider à bien que:

http://www.portaldepot.net/articles/HideCodePg2.html

http://www.15seconds.com/howto/pg000916.htm

+0

portaldepot: j'ai mentionné la solution ce qu'ils essaient de se ll. Mais je ne veux pas vendre une solution, ce qui n'est pas 100%. –

Questions connexes