Wejście

Zaciemnione wyjście

Czym jest obfuskator JavaScript?

Obfuskator JavaScript przekształca JavaScript, aby utrudnić odczyt i inżynierię wsteczną. Nazwy zmiennych są zniekształcane, łańcuchy kodowane, a przepływ sterowania utrudniany. Używaj go do ochrony kodu po stronie klienta. Specyfikacja ECMAScript definiuje język.

Narzędzie działa w całości w przeglądarce. Nic nie jest wysyłane na serwer. Wklej JS lub wczytaj plik, aby uzyskać zaciemniony wynik. Do deobfuskacji użyj deobfuskatora JavaScript. Tylko do minifikacji: minifikatora JavaScript. Do formatowania: formatera JavaScript.

Jak używać tego narzędzia

1

Wklej lub wczytaj

Wklej JavaScript w lewym panelu lub wczytaj plik .js lub .txt. Użyj Przykładu, aby załadować przykładowy kod. Wyczyść resetuje pola.

2

Zobacz zaciemnione wyjście

Prawy panel pokazuje zaciemniony kod. Logika jest zachowana, ale kod jest trudniejszy do odczytu i odwrócenia.

3

Kopiuj lub pobierz

Użyj Kopiuj lub Pobierz, aby uzyskać zaciemniony kod. Testuj przed wdrożeniem. Zaciemnienie może wpływać na wydajność.

Przykłady obfuskatora JavaScript

Oto przykład zaciemniania JavaScript (nazwy zmiennych są zniekształcane).

Przykład: walidacja MSISDN

Wejście (czytelne):

Wejście

Zaciemnione wyjście (zmienione nazwy):

Wyjście

Kiedy obfuskator JavaScript pomaga

Gdy musisz chronić logikę po stronie klienta, ukrywać algorytmy lub zniechęcać do kopiowania, zaciemnienie dodaje warstwę trudności. To nie jest pełne bezpieczeństwo — zdeterminowani użytkownicy mogą je cofnąć. Aby zmniejszyć rozmiar, użyj minifikatora JavaScript. Narzędzia budowania takie jak webpack i rollup mogą pakować zaciemniony kod. Zobacz mapy źródeł do debugowania.

Często zadawane pytania

Czy moje dane są prywatne?

Tak. Zaciemnienie odbywa się w całości w przeglądarce. Żadne dane nie są wysyłane na serwer.

Czy zaciemnienie psuje kod?

Prawidłowe zaciemnienie zachowuje zachowanie. Testuj wyjście. Skrajne przypadki lub kod oparty na eval mogą być dotknięte.

Czy zaciemniony kod można odwrócić?

Tak. Zaciemnienie utrudnia, ale nie uniemożliwia. Użyj deobfuskatora JavaScript, aby zobaczyć, ile da się odzyskać.

Obfuskator a minifikator?

Minifikator zmniejsza kod. Obfuskator utrudnia czytanie. Zaciemnienie często zwiększa rozmiar pliku.

A wydajność?

Silne zaciemnienie może spowolnić wykonywanie. Używaj umiarkowanych ustawień w produkcji. Testuj przed wdrożeniem.

Powiązane narzędzia

ECMAScript. MDN JavaScript. Terser. webpack. ESLint.