Jak używać
- U góry wybierz Tekst lub Plik.
- W przypadku tekstu wybierz kierunek i wpisz lub wklej tekst. Wynik aktualizuje się podczas pisania.
- Aby zakodować plik, wybierz go lub upuść tutaj (maks. 10 MB). Zaznacz „Wynik jako data URL”, jeśli chcesz osadzić go w HTML lub CSS.
- Aby zamienić Base64 z powrotem na plik, wybierz Base64 → Tekst, wklej dane i kliknij „Pobierz jako plik”.
Jak to działa
Base64 zapisuje dane binarne za pomocą 64 drukowalnych znaków ASCII: A–Z, a–z, 0–9, + i /. Każde 3 bajty są zamieniane na 4 znaki, dlatego zakodowane dane są o około 33% większe od oryginału. Jeśli długość danych wejściowych nie jest wielokrotnością 3, wynik jest uzupełniany jednym lub dwoma znakami =.
Base64 to kodowanie, a nie szyfrowanie. Każdy może je zdekodować bez klucza, dlatego nigdy nie należy używać go do ukrywania haseł ani danych osobowych. Służy do przesyłania danych binarnych przez systemy przeznaczone do obsługi tekstu, takie jak poczta e-mail (MIME), JSON, XML, nagłówki HTTP i adresy data URL.
Tekst jest najpierw zamieniany na bajty UTF-8, dzięki czemu znaki spoza ASCII są prawidłowo kodowane. Ma to znaczenie, ponieważ wbudowana w przeglądarkę funkcja btoa nie obsługuje znaków takich jak é czy emoji. Podczas dekodowania narzędzie sprawdza, czy wynik jest prawidłowym tekstem UTF-8. Jeśli nie, dane są binarne i zostaną wyświetlone w postaci szesnastkowej, a nie jako zniekształcony tekst.
Wariant bezpieczny dla adresów URL (base64url, sekcja 5 RFC 4648) zamienia + na - oraz / na _, a znaków dopełnienia = zwykle nie dodaje, ponieważ znaki te mają specjalne znaczenie w adresach URL. Jest używany w tokenach JSON Web Token i wielu internetowych interfejsach API. Zawijanie wierszy MIME (RFC 2045) dzieli wynik na wiersze o długości maksymalnie 76 znaków, czego wymagają niektóre systemy pocztowe i pliki certyfikatów PEM.
Dekodowanie jest elastyczne tam, gdzie jest to bezpieczne: białe znaki i podziały wierszy są pomijane, brakujące dopełnienie jest dodawane, a oba zestawy znaków są akceptowane. Inne problemy, takie jak nieoczekiwany znak lub znak dopełnienia w środku tekstu, są zgłaszane wraz z pozycją zamiast po cichu ignorowane.
Przykłady
Kodowanie tekstu ze znakami diakrytycznymi i emoji
„Grüße 👋” daje w wyniku R3LDvMOfZSDwn5GL. Znaki ü i ß zajmują po 2 bajty UTF-8, a emoji — 4, więc 7 znaków zamienia się w 12 bajtów i 16 znaków Base64.
Tworzenie nagłówka Authorization dla HTTP Basic
Dla użytkownika „alice” i hasła „s3cret” zakoduj alice:s3cret, aby otrzymać YWxpY2U6czNjcmV0, a następnie wyślij nagłówek Authorization: Basic YWxpY2U6czNjcmV0. Ponieważ Base64 nie jest szyfrowaniem, uwierzytelniania Basic należy używać wyłącznie przez HTTPS.
Odzyskiwanie pliku z adresu data URL
Wklej ciąg, taki jak data:image/png;base64,iVBORw0KGgo…, do pola Base64 → Text. Narzędzie usunie prefiks, rozpozna dane PNG, wyświetli je w postaci szesnastkowej, ponieważ nie są tekstem, a opcja „Pobierz jako plik” zapisze plik decoded.png.
Często zadawane pytania
Czy Base64 jest formą szyfrowania?
Nie. Base64 to odwracalne kodowanie, które nie wymaga klucza ani sekretu. Każdy, kto zobaczy ciąg Base64, może go natychmiast zdekodować, dlatego nigdy nie należy polegać na nim przy ochronie haseł, tokenów ani danych osobowych.
Dlaczego w innych narzędziach zdekodowany tekst zawiera dziwne znaki?
Zwykle dzieje się tak, gdy tekst zakodowano jako UTF-8, a zdekodowano jako Latin-1 (lub odwrotnie). To narzędzie zawsze używa UTF-8 i informuje, gdy zdekodowane bajty nie są prawidłowym tekstem UTF-8.
Czym różnią się Base64 i base64url?
Obie metody działają tak samo, ale base64url zamienia + na - oraz / na _ i zwykle pomija dopełnienie znakiem =. Dzięki temu wynik można stosować w URL-ach i nazwach plików bez dodatkowego kodowania. Ten dekoder obsługuje obie wersje.
Dlaczego wynik Base64 jest większy niż plik?
Base64 zamienia każde 3 bajty na 4 znaki, co zwiększa rozmiar o około 33%. Zawijanie wierszy dodaje 2 znaki (CRLF) co 76 znaków. W przypadku dużych obrazów zwykle lepiej udostępnić plik bezpośrednio niż osadzać go jako data URL.
Czy obowiązuje limit rozmiaru?
Pliki mogą mieć maksymalnie 10 MB. Wklejany tekst nie ma określonego limitu, ale bardzo duże dane wejściowe (dziesiątki megabajtów) mogą spowolnić stronę, zwłaszcza na telefonach.
Prywatność
Kodowanie i dekodowanie odbywa się w przeglądarce. Tekst i pliki nie są przesyłane ani przechowywane, a ich zawartość nie jest uwzględniana w statystykach. Pliki do pobrania są tworzone lokalnie na Twoim urządzeniu.