Dekoder Base64
Dekoduj ciągi zakodowane w Base64 z powrotem do ich oryginalnej postaci tekstowej lub binarnej. Obsługuje zarówno standardowy RFC 4648, jak i URL-safe Base64, w tym tokeny JWT.
Ciągi Base64 są z założenia nieprzezroczyste - SGVsbG8sIFdvcmxkIQ== nie ma znaczenia, dopóki nie zostanie zdekodowane z powrotem do Cześć, świecie!. Zdefiniowane w RFC 4648, Base64 koduje każde 3 bajty wejściowe jako 4 znaki wyjściowe, dodając około 33% narzutu. Ten dekoder odwraca to, używając natywnych atob() i TextDecoder API przeglądarki. Obsługuje zarówno standardowe Base64, jak i wariant URL-safe (- i _ zamiast + i /), używany w tokenach JWT i OAuth. Nic nie jest przesyłane na żaden serwer.
Jak dekodować Base64
- Wklej swój ciąg zakodowany w Base64 do pola wejściowego.
- Wybierz tryb Standardowy lub URL-safe, aby dopasować go do sposobu, w jaki dane były pierwotnie kodowane.
- Odkodowany tekst pojawia się natychmiast w panelu wyników.
- Kliknij Kopiuj, aby skopiować wynik.
Jak działa dekodowanie Base64
Proces dekodowania
Dekodowanie dokładnie odwraca kodowanie. Każdy znak Base64 jest mapowany z powrotem do swojej wartości 6-bitowej przy użyciu tabeli alfabetu. Cztery kolejne znaki (24 bity) rekonstruują trzy bajty. Funkcja atob() przeglądarki obsługuje standardowe Base64 natywnie. Dla URL-safe Base64, - i _ są konwertowane z powrotem na + i / przed dekodowaniem. Ostateczna sekwencja bajtów UTF-8 jest następnie dekodowana do ciągu Unicode przy użyciu TextDecoder.
Obsługa brakujących dopełnień
Standardowe Base64 wymaga dopełnienia =, aby długość ciągu była wielokrotnością 4. Tokeny JWT i OAuth usuwają dopełnienie, aby zmniejszyć rozmiar. Ten dekoder automatycznie oblicza i dodaje wymagane dopełnienie na podstawie długości ciągu. Jeśli długość ciągu mod 4 wynosi 2, potrzebny jest jeden =; jeśli wynosi 3, potrzebne są dwa = znaki.
Przykład
Wejście (Standardowe Base64)
SGVsbG8sIFdvcmxkIQ==
Wyjście
Cześć, świecie!
Typowe przypadki użycia
- Inspekcja tokenów JWT - Dekoduj nagłówki i sekcje ładunku, aby odczytać roszczenia bez użycia biblioteki
- HTTP Basic Auth - Dekoduj
Authorization: Basic dXNlcjpwYXNznagłówki, aby zweryfikować osadzone dane uwierzytelniające - Inspekcja URI danych - Dekoduj część Base64 z
data:image/png;base64,...URI - Debugowanie odpowiedzi API - Niektóre API kodują zawartość binarną w odpowiedziach JSON w Base64
Najlepsze praktyki
- Wybierz odpowiedni tryb (Standardowy vs URL-safe) - użycie niewłaściwego trybu skutkuje zniekształconym wynikiem
- Dla tokenów JWT dekoduj tylko nagłówek (pierwsza część) i ładunek (druga część); trzecia część to podpis kryptograficzny, a nie zakodowany tekst
- Jeśli wynik to nieczytelne znaki, dane źródłowe były binarne (obraz, PDF itp.), a nie tekstowe
- Dekodowanie Base64 nie jest kontrolą bezpieczeństwa - każdy może je dekodować
Aby zakodować tekst z powrotem do Base64, użyj Encoder Base64. Dla danych zakodowanych w URL, użyj URL Decoder. Aby w pełni zbadać JWT, dekoduj pierwsze dwie części oddzielone kropkami osobno z wybranym trybem URL-safe.
Najczęściej Zadawane Pytania
Jak dekodować token JWT za pomocą tego narzędzia?
JWT składa się z trzech części oddzielonych kropkami: header.payload.signature. Skopiuj nagłówek (pierwsza część) lub ładunek (druga część), wybierz tryb URL-safe i wklej do dekodera. Wynik to obiekt JSON z algorytmem (nagłówek) lub roszczeniami (ładunek). Nie dekoduj podpisu - to jest skrót kryptograficzny, a nie zakodowany w Base64 ciąg JSON.
Dlaczego mój dekodowany wynik pokazuje dziwne znaki?
To oznacza jedną z trzech rzeczy: (1) oryginalne dane były binarne (obraz, PDF, zip) zamiast tekstu; (2) wybrałeś zły tryb - spróbuj przełączyć się między Standardowym a URL-safe; (3) oryginalny tekst był zakodowany przy użyciu innego zestawu znaków niż UTF-8. Spróbuj najpierw przełączyć tryby. Jeśli wynik nadal jest nieczytelny, dane źródłowe były prawdopodobnie binarne.
Czy potrzebuję znaków dopełnienia (==), aby dekodowanie działało?
Standardowe Base64 wymaga dopełnienia, aby długość ciągu była wielokrotnością 4. Ten dekoder automatycznie dodaje brakujące dopełnienia, co jest ważne dla tokenów JWT i OAuth, które usuwają końcowe = znaki. Wklej ciąg tak, jak jest, a dekoder zajmie się dopełnieniem automatycznie.
Czy moje wrażliwe dane są bezpieczne podczas dekodowania tutaj?
Tak. Dekodowanie odbywa się całkowicie w twojej przeglądarce przy użyciu natywnych atob() i TextDecoder API. Tokeny, dane uwierzytelniające i prywatne dane, które wklejasz, nigdy nie są wysyłane na żaden serwer, nigdy nie są rejestrowane i nigdy nie są przechowywane. Otwórz zakładkę Sieć przeglądarki podczas dekodowania, a zobaczysz zero wychodzących żądań.
Jaka jest różnica między Standardowym a URL-safe Base64?
Standardowe Base64 (RFC 4648 §4) używa + i /. URL-safe Base64 (RFC 4648 §5) zastępuje je - i , aby uniknąć konfliktów w URL-ach, nazwach plików i nagłówkach HTTP. JWT, tokeny OAuth i weryfikatory kodów PKCE wszystkie używają URL-safe Base64. Jeśli twój ciąg zawiera - lub , wybierz tryb URL-safe.