0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
Ustawienia
Kodowanie i dekodowanie tekstu w Base64 z obsługą kodowania wielu znaków. Wariant bezpieczny w użyciu URL-a zastępuje + - , / by _ i usuwa wypełnianie = (RFC 4648 §5).
Działanie
Wariant
Kodowanie
Przerwanie linii
0

Jak to działa

Base64 reprezentuje dane za pomocą 64 drukowalnych znaków ASCII. Każde 3 bajty wejścia stają się 4 znakami, dlatego wynik zajmuje około 33% więcej niż oryginał.

To nie szyfrowanie ani kompresja: to odwracalne kodowanie, które każdy może zdekodować. Służy do przesyłania danych binarnych kanałami przeznaczonymi tylko dla tekstu.

Wariant URL-safe (RFC 4648 §5) używa - i _ zamiast + i / oraz pomija wypełnienie =, aby móc umieścić wynik w adresach URL i nazwach plików bez escape'owania.

Przykłady

Hello WorldSGVsbG8gV29ybGQ=
CaféQ2Fmw6k=W UTF-8 znaki spoza ASCII zajmują więcej niż jeden bajt, dlatego „é” dodaje dwa bajty.
>>>?estándar: Pj4+Pw== · URL-safe: Pj4-PwWariant URL-safe zastępuje + i / znakami - i _ oraz usuwa wypełnienie =.

Przypadki użycia

  • Osadzać obrazy, czcionki lub ikony bezpośrednio w HTML/CSS za pomocą data URI.
  • Wysyłać załączniki e-mail (MIME) lub dane binarne wewnątrz JSON.
  • Przechowywać klucze, certyfikaty lub tokeny w zmiennych środowiskowych i plikach konfiguracyjnych.
  • Zakodować poświadczenia do nagłówka Authorization: Basic protokołu HTTP.

Najczęstsze pytania

Czy Base64 to metoda szyfrowania?

Nie. To odwracalne kodowanie bez klucza: każdy może je zdekodować. Nie zapewnia żadnego bezpieczeństwa; aby chronić dane, trzeba je zaszyfrować.

Dlaczego wynik kończy się na „=”?

Znak „=” to wypełnienie (padding) uzupełniające bloki po 4 znaki, gdy dane wejściowe nie są wielokrotnością 3 bajtów. Wariant URL-safe go pomija.

Kiedy wariant URL-safe jest lepszy?

Gdy wartość trafia do URL, nazwy pliku lub identyfikatora, ponieważ znaki + i / mają w tych kontekstach specjalne znaczenie.

Dlaczego zakodowany tekst jest dłuższy niż oryginał?

Ponieważ używa 4 znaków na każde 3 bajty wejścia, więc rozmiar rośnie o około 33%.

Czy mój tekst jest wysyłany na serwer?

Nie. Kodowanie i dekodowanie odbywają się w całości w przeglądarce.