> base64 decoder | paste | decode <
// Wklej dowolny ciąg Base64 — standardowy, URL-safe lub bez dopełnienia — i natychmiast zdekoduj go do tekstu UTF-8. Działa w 100% w Twojej przeglądarce.
Automatyczne wykrywanie formatu
Automatycznie wykrywa standardowe Base64 RFC 4648, Base64 URL-safe (-_) oraz brakujące dopełnienie. Bez żadnej konfiguracji — wystarczy wkleić.
100% w przeglądarce
Twoje ciągi Base64 nigdy nie opuszczają urządzenia. Bez przesyłania na serwer, bez logów, bez telemetrii. Bezpieczne dla tokenów, danych uwierzytelniających i prywatnych ładunków.
Natychmiastowe dekodowanie
Dekoduje podczas pisania. Obsługuje tekst wielobajtowy UTF-8, emoji, JSON, XML, dane binarne jako Base64. Nieograniczony rozmiar wejścia.
// JAK DZIAŁA DEKODOWANIE BASE64
Algorytm dekodowania Base64:
Base64 koduje 3 bajty danych binarnych w 4 znaki ASCII z 64-znakowego alfabetu (A-Z, a-z, 0-9, +, /). Dekodowanie odwraca ten proces: każdy znak jest mapowany na wartość 6-bitową, a cztery grupy 6-bitowe są ponownie łączone w trzy bajty 8-bitowe. Znaki dopełnienia (=) są dodawane, aby długość zakodowana była wielokrotnością 4. Ten dekoder akceptuje wejście z dopełnieniem, bez dopełnienia oraz URL-safe i zwraca tekst UTF-8.
Przykład dekodowania:
Input : SGVsbG8sIEJhc2U2NCE=
Bits : 01001000 01100101 01101100 01101100
01101111 00101100 00100000 01000010
01100001 01110011 01100101 00110110
00110100 00100001
Output : Hello, Base64!
Typowe scenariusze dekodowania:
- >Dekodowanie nagłówka i ładunku JWT (przed podpisem)
- >Odczytywanie załączników e-mail zakodowanych w Base64 (MIME)
- >Inspekcja parametrów URL w Base64 i tokenów state OAuth
- >Wyodrębnianie tekstu z Data URI (data:text/plain;base64,...)
- >Debugowanie odpowiedzi API opakowujących dane binarne jako Base64
// NAJCZĘŚCIEJ ZADAWANE PYTANIA
Jak zdekodować ciąg Base64 online?
Wklej ciąg Base64 w obszar WEJŚCIE powyżej — dekoder działa automatycznie podczas pisania (automatyczne dekodowanie jest domyślnie włączone). Zdekodowany tekst pojawia się natychmiast w obszarze WYJŚCIE. Możesz też kliknąć jawnie [DECODE] lub użyć Ctrl/Cmd + Enter. Wszystko działa lokalnie w przeglądarce; nic nie jest wysyłane na serwer, więc wklejanie tokenów JWT, state OAuth lub poufnych ładunków jest bezpieczne.
Jakie warianty Base64 obsługuje ten dekoder?
Wszystkie. Dekoder automatycznie wykrywa i akceptuje:
• Standardowe Base64 (RFC 4648) — alfabet A-Z a-z 0-9 + / z dopełnieniem =.
• Base64 URL-safe (RFC 4648 §5) — alfabet z - i _ zamiast + i /. Używane przez JWT, OAuth, interfejsy API Google oraz podpisane wstępnie adresy URL AWS S3.
• Base64 bez dopełnienia — końcowe znaki = są pomijane. Częste w JWT, gdzie dekoder musi automatycznie dodać dopełnienie.
• Tolerancyjne na białe znaki — podziały wierszy, tabulatory i spacje wewnątrz ciągu Base64 są usuwane przed dekodowaniem (obsługuje 76-kolumnowe wyjście zawijane MIME z treści e-maili).
Wykryty format jest pokazywany jako znacznik pod przyciskami, dzięki czemu wiesz, do którego wariantu dekoder zaklasyfikował Twoje wejście.
Dlaczego moje Base64 dekoduje się do nieczytelnych znaków lub kończy się błędem?
Większość błędów dekodowania ma jedną z tych pięciu przyczyn:
1. Wejście wcale nie jest Base64. Wiele osób myli Base64 z heksadecymalnym, Base32 lub kodowaniem URL. Base64 używa tylko A-Z a-z 0-9 + / = (lub - _ dla URL-safe). Jeśli ciąg zawiera %20, jest to kodowanie procentowe; jeśli składa się wyłącznie z 0-9 a-f, to prawdopodobnie kod szesnastkowy.
2. Obcięcie. Długość Base64 po dopełnieniu musi być wielokrotnością 4. Kopiowanie, które pomija końcowe ==, powoduje błędy „nieprawidłowej długości”. Ten dekoder automatycznie dopełnia, ale poważnie obcięte ciągi i tak zawiodą.
3. Mieszanie URL-safe i standardowego. Jeśli wszystkie +/-_ są obecne, ciąg jest niejednoznaczny i prawdopodobnie uszkodzony. Należy używać tylko jednego wariantu.
4. Podwójne kodowanie. Czasem ciąg jest kodowany w Base64 dwukrotnie. Jednokrotne dekodowanie daje nieczytelne znaki, które same są Base64. Zdekoduj ponownie, aby uzyskać końcowy tekst.
5. Kodowanie UTF-8 oryginalnego tekstu. Base64 dekoduje się do bajtów. Jeśli oryginalne bajty nie są prawidłowym UTF-8 (np. surowe dane binarne, takie jak zaszyfrowany blob lub PNG), zdekodowane wyjście będzie wyglądać jak mojibake. To oczekiwane — zamiast tego użyj narzędzia Base64 na plik.
Jak zdekodować JWT za pomocą tego dekodera Base64?
JWT ma trzy części oddzielone kropkami: header.payload.signature. Wszystkie trzy są w formacie Base64 URL-safe bez dopełnienia. Aby przeprowadzić inspekcję ładunku:
1. Skopiuj środkowy segment (pomiędzy dwiema kropkami).
2. Wklej go do dekodera powyżej. Automatyczne dekodowanie obsługuje alfabet URL-safe i dodaje brakujące dopełnienie.
3. Otrzymasz ładunek JSON z oświadczeniami (claims) takimi jak iss, sub, exp, iat.
Podpis (trzeci segment) to binarne wyjście HMAC lub RSA — dekodowanie go jako tekstu daje nieczytelne znaki, co jest oczekiwane. Aby uzyskać pełny inspektor JWT z weryfikacją podpisu, użyj naszego dedykowanego Dekodera JWT.
Uwaga dotycząca bezpieczeństwa: zdekodowanie JWT nie weryfikuje go. Każdy może odczytać ładunek JWT — tak to zaprojektowano. Podpis dowodzi, że token pochodzi od wystawcy; jest weryfikowany osobno przy użyciu klucza publicznego lub współdzielonego sekretu wystawcy.
Czy mogę dekodować Base64 w wierszu poleceń (bash, PowerShell, Python)?
Tak — każda większa platforma zawiera dekoder Base64. Gdy to narzędzie online jest zbyt wolne, aby do niego wkleić, użyj:
macOS / Linux (bash/zsh):echo 'SGVsbG8=' | base64 -d — wypisuje Hello. Użyj -D w systemie macOS, jeśli -d nie działa. Dla wejścia URL-safe przepuść je najpierw przez tr '_-' '/+'.
Windows PowerShell:[Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('SGVsbG8='))
Python:import base64
base64.b64decode('SGVsbG8=').decode('utf-8') # Hello
base64.urlsafe_b64decode(s + '===').decode() # URL-safe z auto-dopełnieniem
Node.js:Buffer.from('SGVsbG8=', 'base64').toString('utf-8')
DevTools przeglądarki:atob('SGVsbG8=') — działa w dowolnej konsoli. W przypadku ciągów UTF-8 opakuj je w new TextDecoder().decode(Uint8Array.from(atob(s), c => c.charCodeAt(0))).
PHP: base64_decode('SGVsbG8=')
Ruby: Base64.decode64('SGVsbG8=')
Go: base64.StdEncoding.DecodeString("SGVsbG8=")
Czy ten dekoder Base64 jest bezpieczny do dekodowania wrażliwych tokenów i danych uwierzytelniających?
Tak — ten dekoder jest bezpieczniejszy niż narzędzia po stronie serwera, ponieważ nic nie opuszcza Twojej przeglądarki. Dekodowanie odbywa się w całości w języku JavaScript na Twoim urządzeniu za pośrednictwem natywnych interfejsów API atob() i TextDecoder. Nie ma żadnego wywołania sieciowego, przesyłania, logowania ani analityki treści wejściowej. Możesz to sprawdzić samodzielnie, otwierając kartę Sieć w DevTools przeglądarki podczas dekodowania — zobaczysz zero żądań.
Mimo to Base64 nie jest szyfrowaniem — to tylko kodowanie. Każdy, kto ma ciąg Base64, może go zdekodować. Dlatego, choć to narzędzie jest bezpieczne, nadal powinieneś:
• Nigdy nie udostępniać zrzutów ekranu zdekodowanych JWT, które jeszcze nie wygasły.
• Rotować dane uwierzytelniające, które gdziekolwiek wyciekną (logi, zrzuty ekranu, udostępniony czat).
• Traktować zdekodowany state OAuth, tokeny CSRF i identyfikatory sesji jako sekrety, dopóki nie zostaną unieważnione.
W środowiskach korporacyjnych/regulowanych, gdzie nawet sam ciąg Base64 jest wrażliwy, możesz zapisać tę stronę offline (Cmd/Ctrl + S) — działa ona w pełni odizolowana po jednorazowym wczytaniu, ponieważ logika dekodowania to czysty JavaScript.
Jak zdekodować Data URI Base64, takie jak 'data:image/png;base64,iVBORw0KGgo...'?
Data URI ma składnię data:[<mediatype>][;base64],<data>. Aby zdekodować tylko ładunek:
1. Znajdź przecinek. Wszystko przed nim to metadane (data:image/png;base64), wszystko po nim to plik zakodowany w Base64.
2. Skopiuj do tego dekodera tylko część po przecinku.
3. W przypadku treści binarnych (PNG, JPG, PDF) zdekodowane wyjście będzie surowymi bajtami — renderowanie jako tekst pokazuje mojibake. To oczekiwane.
4. Aby wyświetlić obraz Data URI, wklej całe URI data:... w pasek adresu przeglądarki — przeglądarka zdekoduje je i wyrenderuje bezpośrednio.
5. Aby zapisać plik obrazu, użyj naszego dedykowanego narzędzia Base64 na obraz, które obsługuje pełne Data URI i pobiera plik PNG/JPG/WebP.
Data URI często występują w: regułach CSS background-image, wbudowanych ikonach SVG, obrazach podpisów e-mail, załącznikach PDF zakodowanych w odpowiedziach API JSON oraz pakietach ikon rozszerzeń Electron/VS Code.
Jaka jest różnica między kodowaniem a dekodowaniem Base64?
Kodowanie pobiera dowolne dane binarne lub tekstowe i tworzy ciąg ASCII przy użyciu wyłącznie znaków drukowalnych — bezpieczny do transportu kanałami tekstowymi (e-mail, adresy URL, JSON). Dekodowanie odwraca ten proces: ciąg ASCII Base64 staje się ponownie oryginalnymi bajtami.
Kluczowe właściwości:
• Bezstratny obieg tam i z powrotem: decode(encode(x)) === x dla wszystkich danych bajtowych. Żadne dane nie są tracone.
• To nie szyfrowanie: Base64 nie zapewnia żadnej poufności. Każdy może je zdekodować.
• Narzut rozmiaru: zakodowane wyjście jest o ~33% większe niż wejście (4 bajty wyjściowe na 3 bajty wejściowe).
• Zastosowania: tokeny JWT, załączniki e-mail MIME, nagłówki HTTP Basic Auth, kody OAuth, podpisane wstępnie adresy URL S3, obrazy wbudowane w HTML/CSS.
Ta strona jest poświęcona dekodowaniu. Jeśli potrzebujesz przejść w drugą stronę (tekst/plik → Base64), użyj naszego Kodera Base64 na stronie głównej lub naszego konwertera Obraz na Base64 dla plików graficznych.
Czy mogę dekodować bardzo długie ciągi Base64 lub pliki zakodowane w Base64?
Tak, w granicach pamięci przeglądarki. Dekoder akceptuje nieograniczoną długość wejścia — testowaliśmy go z ciągami Base64 o rozmiarze 50 MB (~37 MB po zdekodowaniu) na nowoczesnych laptopach. Wydajność:
• < 100 KB: natychmiast, bez opóźnień interfejsu.
• 1 – 10 MB: dekodowanie zajmuje ~50-500 ms w zależności od procesora.
• 10 – 100 MB: przeglądarka może na chwilę się zawiesić (2-10 s), ponieważ atob jest synchroniczne. Najpierw wyłącz auto-decode i kliknij [DECODE] ręcznie.
• > 100 MB: osiągniesz limity pamięci przeglądarki. W przypadku plików Base64 rzędu gigabajtów użyj narzędzia wiersza poleceń (base64 -d).
Jeśli zdekodowana treść to plik binarny (PNG, PDF, ZIP), obszar wyjścia tekstowego pokaże mojibake. Aby pobrać zdekodowane bajty jako plik, użyj naszego narzędzia Base64 na obraz (obsługuje obrazy) lub podejścia z wiersza poleceń: echo '<base64>' | base64 -d > output.bin.
Czy ten dekoder Base64 działa offline?
Tak. Po jednorazowym wczytaniu strony całe dekodowanie odbywa się po stronie klienta w języku JavaScript — sieć nie jest potrzebna. Aby działał całkowicie offline:
1. Zapisz stronę: naciśnij Ctrl+S (Windows/Linux) lub Cmd+S (macOS) i zapisz jako „Strona internetowa, kompletna”. Dekoder działa z zapisanego pliku HTML.
2. Zainstaluj jako PWA (jeśli obsługiwane): niektóre przeglądarki oferują „Zainstaluj tę aplikację” dla base64.sh — daje to program uruchamiający z dostępem offline.
3. Użyj w DevTools: natywna funkcja atob() działa w dowolnej konsoli przeglądarki bez tej strony. Do szybkiego dekodowania: atob('SGVsbG8=').
Działanie offline jest przydatne w: badaniach bezpieczeństwa w środowiskach odizolowanych, laboratoriach pentestowych, środowiskach korporacyjnych ze ścisłymi regułami wycieku danych oraz podczas lotów/podróży pociągiem bez internetu.