SS Toolbox
SS Toolbox
Alle Daten werden lokal verarbeitet

JavaScript-Obfuscator — höhere Lesekosten, keine Verschlüsselung

Verschleiern Sie JavaScript im Browser mit dem Standard-Preset von javascript-obfuscator. Zeichenketten landen in einem rotierenden Array, Bezeichner werden hexadezimal umbenannt, die Ausgabe wird kompakt und vereinfacht – das erschwert das Lesen, ist aber keine Verschlüsselung und macht Code nicht unumkehrbar. Kein Upload, keine Optionsschalter.

Es sieht seltsam aus, aber es kann wirklich ausgeführt werden. Sie können es in Devtool kopieren, um es auszuprobieren

Was dieser Obfuscator tut – und was nicht

  1. Obfuskation ist eine Lesbarkeitshürde, keine Verschlüsselung

    Die Ausgabe ist weiterhin normales JavaScript, das jeder Browser ausführt und jeder Entwickler formatieren kann. Sie erhöht den Leseaufwand, verbirgt aber keine Logik, schützt keine Geheimnisse und verhindert kein Deobfuskieren.

  2. Verwendet das Standard-Preset der Bibliothek

    Aktiv: String-Array mit Rotation, Shuffle und Indexverschiebung (Schwelle 0,75), hexadezimale Bezeichner, kompakte Ausgabe und Vereinfachung. Inaktiv: Control-Flow-Flattening, Dead-Code-Injection, Debug-Schutz, selbstverteidigender Code, globale Umbenennung, Unicode-Escaping.

  3. Läuft vollständig im Browser

    Die Verarbeitung erfolgt mit javascript-obfuscator in diesem Tab. Nichts wird hochgeladen; Quellcode privater Projekte bleibt auf Ihrem Gerät.

  4. Ein Button, vorhersehbares Verhalten

    Diese Seite bietet bewusst keine Optionsschalter und verwendet immer dasselbe konservative Preset, damit die Ausgabe nicht unbemerkt viel größer oder langsamer wird.

  5. Ausgabe zum direkten Weiterverwenden

    Das Ergebnis ist normales JavaScript. Kopieren Sie es in DevTools, einen Build-Schritt oder eine Datei und führen Sie vor dem Release Ihre Tests aus.

Häufige Fragen

Macht Obfuskation meinen Code sicher?

Nein. Sie erhöht nur den Leseaufwand. Es ist keine Verschlüsselung, es gibt keinen Schlüssel, und entschlossene Personen können den Code formatieren und nachvollziehen. Legen Sie keine API-Schlüssel, Passwörter oder Kernalgorithmen in clientseitigem JavaScript ab; nutzen Sie serverseitige Prüfungen und Zugriffskontrolle.

Welche Optionen sind standardmäßig aktiv?

Diese Seite ruft javascript-obfuscator ohne eigene Optionen auf. Standardmäßig aktiv sind kompakte Ausgabe, hexadezimale Bezeichner, Vereinfachung und ein String-Array mit Rotation, Shuffle und Indexverschiebung bei Schwelle 0,75. Control-Flow-Flattening, Dead-Code-Injection, Debug-Schutz, Self-Defending, renameGlobals, numbersToExpressions, transformObjectKeys und unicodeEscapeSequence sind aus.

Was bewirkt das String-Array?

String-Literale werden in ein Array verschoben und durch Indexzugriffe ersetzt; ein kleiner Bootstrap rotiert und mischt das Array beim Start. Das erschwert die Suche nach Meldungen oder URLs im Quelltext, doch zur Laufzeit existieren die Strings weiterhin und lassen sich wiederherstellen.

Was ist Control-Flow-Flattening, und wird es hier verwendet?

Dabei werden Verzweigungen und Schleifen in eine switch-gesteuerte Zustandsmaschine umgeschrieben, wodurch der Ablauf schwerer zu verfolgen ist. Hier ist es deaktiviert: Es vergrößert die Datei, kostet CPU und kann Code gelegentlich brechen. Bei Bedarf lässt es sich über die CLI oder Bibliothek von javascript-obfuscator aktivieren.

Kann Obfuskation Code brechen oder verlangsamen?

Das Standard-Preset ist relativ konservativ, kann aber Code brechen, der auf Funktionsnamen, toString(), eval oder Framework-Reflektion angewiesen ist. Die String-Array-Indirektion kostet etwas Startzeit; Control-Flow-Flattening (hier nicht aktiv) kostet mehr. Testen Sie den obfuskierten Build immer.

Wie debugge ich obfuskierten Code? Entstehen Source Maps?

Es werden keine Source Maps erzeugt. Bewahren Sie den Originalcode auf, debuggen Sie vor der Obfuskation oder in einem Entwicklungsbuild und veröffentlichen Sie erst nach bestandenen Tests. Formatieren hilft bei der Struktur, die Bezeichner bleiben aber unlesbar.

Kann ich mehrere Dateien oder ein ganzes Projekt auf einmal obfuskieren?

Nein. Diese Seite verarbeitet jeweils eine eingefügte Datei. Für mehrere Dateien nutzen Sie die CLI oder Build-Plugins von javascript-obfuscator.

Verwandte Tools
SponsorMindElixir