JavaScript code verstecken/unleserlich machen?
Ich möchte meinen code verstecken oder unleserlich machen , damit ihn andere nicht sofort klauen Wie kann ich das machen?
4 Antworten
uglyify2 über das javascript laufen lassen, das ist ein kompressor der dir dein js code in eine einzigen Zeile schreibt und u.a. funktionen und variablen unbenennt. danach kann niemand (zumindest kein mensch) mehr etwas mit dem script anfangen,... du wirst augen machen wie hoch die kompressionsrate (bekomme meinst > 80%) ist und wie klein (kb) dein script am ende wird
github.com/mishoo/UglifyJS2
Das einzige, was du verhindern kannst, ist dass jemand auf den ersten Blick erkennt, was dein Code tut. Selbst "fluffiknuffi" der olle PHPler würde mir zustimmen, und sagen: "VGVlVGllciBoYXQgUmVjaHQh". :)
Entsprechende JS-Deocder sind aber meist nur einen einzigen Klick entfernt. Und zur Not ersetzt man einfach eval() durch alert(). Selbst wenn ein Obfuscator dabei alle Variablen durch "a", "b", "c", usw. ersetzt hat, kommt man mit grundlegensten Reversing-Techniken locker an deinen Code ran.
Und sooooo komplex, dass das ganze länger als 15 Minuten dauern würde, ist dein Code bestimmt nicht. Wir reden hier ja schließlich von JavaScript, und nicht von Bytecode. ;)
Frage dich lieber mal ganz ehrlich selber: a) Ist es wirklich notwendig, den JS-Code zu verschleiern? b) Und lohnt sich der Aufwand dafür tatsächlich? :)
Du kannst den Code Base 64-Kodieren (und mit eval ausführen lassen).
Das ist ein Beispiel
wird zu
RGFzIGlzdCBlaW4gQmVpc3BpZWw=
Allerdings kann es auch jeder sofort dekodieren.
Mehr: https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding
Ein Javascrip (auf einer Webseite eingebunden) kannst du auslagern und dan die Lese rechte verweigern (Ausnahme der eigene Webserver ^^)
Wie das geht habe ich leider vergessen eventuell mal mit SSI versuchen :o
Ich hoffe ich konnte helfen,
MFG Hiajen
Und wie kommt der Browser, in dem ja das JavaScript läuft, dann zu der Datei?
und ne anleitung? (klingt jetzt bisl blöd)