Zum Inhalt springen

JavaScript-Obfuskator

Konvertieren Sie JavaScript-Quellcode in einen hexadezimal codierten eval(unescape(...))-Snippet, der den Code vor flüchtigem Blick verbirgt.

Eingabe
Ausgabe

JavaScript-Obfuskator

Fügen Sie einen beliebigen JavaScript-Quellcode ein und dieses Tool schreibt ihn in einen einzigen hexadezimal escapten String um, der sich selbst wieder zusammensetzt und mit eval(unescape('...')) ausführt. Es ist der klassische Trick der "grundlegenden Obfuskation": Jedes Zeichen Ihres Codes wird zu einer %XX Sequenz (oder %uXXXX für Zeichen außerhalb der ersten 256 Code-Punkte), sodass der Quellcode auf den ersten Blick nicht lesbar ist — keine Variablennamen, keine String-Literale, keine Kommentare sichtbar.

Standardmäßig wird die Ausgabe in eine selbstausführende Funktion eingebunden, (function(){eval(unescape('...'))})();, sodass Sie das Ergebnis direkt in ein <script> Tag oder eine andere Datei einfügen und es sofort lädt — genau wie das Original. Schalten Sie "In selbstausführende Funktion einwickeln" aus, wenn Sie die bloße eval(unescape('...')); Anweisung benötigen, zum Beispiel zum Einbetten in eine Funktion, die Sie bereits kontrollieren.

Dies ist Obfuskation, keine Verschlüsselung oder Sicherheit: unescape() und eval() sind in der Ausgabe sichtbar, und das Dekodieren des Hex-Strings zurück zum Quellcode ist eine einzeilige Operation für jeden, der schaut — eine Browser-Konsole tut dies so schnell, wie Sie es einfügen können. Behandeln Sie es als einen Weg, um zufälliges Kopieren abzuschrecken oder ein Snippet vor einem schnellen view-source zu verstecken, nicht als einen Weg, um Geheimnisse, API-Schlüssel oder irgendetwas zu schützen, das wirklich vertraulich bleiben muss.

Alles läuft lokal in Ihrem Browser. Der Code, den Sie einfügen, wird nie hochgeladen oder irgendwohin gesendet, daher ist es sicher, proprietäre oder unveröffentlichte Skripte zu obfuskieren. Das Live-Zähler unter der Ausgabe zeigt, wie viele Zeichen eingegeben wurden, wie viele herauskamen und wie viele Bytes hexadezimal codiert wurden, sodass Sie die Größenzunahme vor dem Kopieren oder Herunterladen des Ergebnisses sehen können.

Häufige Fragen

Ist dies echte Sicherheit, oder kann der Code de-obfuskiert werden?
Das ist keine Sicherheit. Jeder kann unescape() auf dem String in der Ausgabe ausführen und Ihren ursprünglichen Quellcode in einem Schritt zurückbekommen — dies versteckt nur den Code vor einem flüchtigen Blick, nicht vor jemandem, der wirklich hinsieht.
Verhält sich der obfuskierte Code genau wie das Original?
Ja. eval(unescape('...')) rekonstruiert und führt den exakten ursprünglichen Quellcode aus, Zeichen für Zeichen, einschließlich Leerzeichen, Zeilenumbrüche und String-Inhalte.
Was macht die Option "In selbstausführende Funktion einwickeln"?
Sie wickelt den eval(unescape('...')) Aufruf in (function(){...})(); ein, damit das Ergebnis sofort als eigenständige Anweisung lädt. Schalten Sie es aus, wenn Sie den eval(unescape('...'); Aufruf in Ihre eigene Funktion oder einen Gültigkeitsbereich einbetten möchten.
Funktioniert das auch mit minifiziertem Code?
Ja. Sie können jeden JavaScript-Text obfuskieren, minifiziert oder nicht — das Tool behandelt die Eingabe als Klartext und codiert sie Zeichen für Zeichen hexadezimal, sodass das Minifizieren zuerst (mit einem CSS/JS-Minifizierer) nur die codierte Ausgabe kürzer macht.
Wird mein Quellcode irgendwo hochgeladen?
Nein. Der Obfuskator lädt vollständig in Ihrem Browser — der Code, den Sie einfügen, verlässt nie Ihr Gerät.