Kodowanie Base64 - Dekoder i Koder Base64 Online

    Jak zamienić tekst na Base64 i z powrotem? Kodowanie i dekodowanie z polskimi znakami w UTF-8, wariant base64url do JWT, adresy data: i linie po 76 znaków.

    Parametry

    Wprowadź dane do obliczeń

    Kierunek zamiany

    0 / 20000 znaków

    Do 20 000 znaków

    Postęp wypełniania0 / 1 pól

    💡 Wypełnij wszystkie wymagane pola, aby odblokować przycisk obliczania

    Kodowanie Base64 i dekodowanie z polskimi znakami

    QWxhIG1hIGtvdGE= to po prostu „Ala ma kota”. Narzędzie zamienia tekst na Base64 i z powrotem, w wariancie standardowym z RFC 4648 albo w base64url (bez „=”, z - i _ zamiast + i /), jak w tokenach JWT. Polskie litery koduje w UTF-8, przy dekodowaniu rozpoznaje alfabet, pomija spacje i nowe linie, zdejmuje przedrostek data:...;base64, i mówi wprost, gdy ciąg jest ucięty albo zawiera niedozwolony znak.

    Szybki start: wybierz „Koduj”, wklej tekst i przelicz. Do odczytania nagłówka JWT albo załącznika wybierz „Dekoduj” i wklej sam ciąg, a wariant alfabetu narzędzie rozpozna samo.

    Jak zakodować albo zdekodować Base64 - krok po kroku

    1. Tryb - „Koduj” zamienia tekst na Base64, „Dekoduj” odczytuje Base64 z powrotem.
    2. Tekst albo ciąg Base64 - do 20 000 znaków. Przy dekodowaniu spacje i nowe linie są pomijane.
    3. Wariant alfabetu - standardowy do e-maili i adresów data:, base64url do JWT i parametrów w adresie URL. Pole pojawia się tylko przy kodowaniu.
    4. Łamanie linii - „co 76 znaków” tylko dla treści e-mail (MIME). Pole pojawia się tylko przy kodowaniu.
    5. Odczytaj wynik - skopiuj go przyciskiem; pod spodem są długości w znakach i bajtach oraz uwagi o dopełnieniu.

    7 typowych przypadków użycia

    Przykład 1: nagłówek Basic Auth

    Sytuacja: koduj Aladdin:open sesame (przykład z RFC 7617)
    Wynik: QWxhZGRpbjpvcGVuIHNlc2FtZQ==, czyli nagłówek Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
    Każdy, kto przechwyci nagłówek, zdekoduje hasło jednym kliknięciem. Basic Auth ma sens tylko po HTTPS.

    Przykład 2: nagłówek tokenu JWT

    Sytuacja: dekoduj eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
    Wynik: {"alg":"HS256","typ":"JWT"}, alfabet base64url
    Token to trzy takie części rozdzielone kropkami. Dekoduj każdą osobno, bez kropek; trzecia (podpis) da dane binarne.

    Przykład 3: obrazek w adresie data:

    Sytuacja: dekoduj data:image/png;base64,iVBORw0KGgo=
    Wynik: 8 bajtów 89 50 4e 47 0d 0a 1a 0a, typ image/png. Obrazek SVG (data:image/svg+xml) zdekoduje się do kodu XML, pokazanego jako tekst do zaznaczenia
    To sygnatura, od której zaczyna się każdy plik PNG (specyfikacja PNG W3C). Gdy po dekodowaniu widzisz inne bajty, typ w przedrostku jest błędny.

    Przykład 4: polskie litery

    Sytuacja: koduj zażółć gęślą jaźń
    Wynik: emHFvMOzxYLEhyBnxJnFm2zEhSBqYcW6xYQ=, 26 bajtów UTF-8 na 17 znaków
    Program, który koduje z Windows-1250, da krótszy i inny ciąg. Druga strona musi dekodować tym samym kodowaniem.

    Przykład 5: treść e-maila

    Sytuacja: koduj długi tekst z opcją co 76 znaków
    Wynik: linie po najwyżej 76 znaków rozdzielone CRLF, jak wymaga RFC 2045
    Poza e-mailem nie łam linii: RFC 4648 zabrania dopisywania znaków nowej linii, jeśli specyfikacja danego formatu tego wprost nie wymaga.

    Przykład 6: ucięty ciąg

    Sytuacja: dekoduj QWxhI
    Wynik: komunikat, że 5 znaków daje resztę 1 z dzielenia przez 4, czego Base64 nie dopuszcza
    Brak samych „=” na końcu nie jest błędem: narzędzie je uzupełni. Reszta 1 oznacza, że zgubił się kawałek danych.

    Przykład 7: „zaszyfrowane” hasło w pliku konfiguracyjnym

    Sytuacja: dekoduj aGFzxYJvMTIz
    Wynik: hasło123
    Base64 to zapis, nie szyfr. Hasło trzymane w Base64 jest jawne dla każdego, kto otworzy plik.

    Tabela: o ile Base64 wydłuża dane

    Każde 3 bajty zamieniają się w 4 znaki, a niepełna trójka na końcu i tak zajmuje cztery (z „=”). Przy krótkich danych narzut jest więc duży, przy długich zbliża się do 33,3 %. W ostatniej kolumnie doliczone są dwa znaki CRLF na każde złamanie linii co 76 znaków.

    Dane (bajty) Base64 (znaki) Narzut Z liniami po 76 (MIME)
    14300 %4
    3433,3 %4
    101660 %16
    10013636 %138
    1 0001 33633,6 %1 370
    1 048 576 (1 MiB)1 398 10433,3 %1 434 896

    Stąd praktyczna uwaga: załącznik 10 MB w e-mailu zajmuje po zakodowaniu ponad 13 MB i właśnie ta liczba liczy się do limitu skrzynki.

    FAQ - Base64 bez tajemnic

    Czym różni się Base64 od base64url?
    Tylko dwoma znakami i dopełnieniem. base64url (RFC 4648, sekcja 5) używa - i _ zamiast + i /, bo te znaki mają specjalne znaczenie w adresach URL. W JWT znak „=” na końcu się pomija (RFC 7515).
    Po co są znaki „=” na końcu?
    To dopełnienie do pełnej czwórki znaków. Gdy liczba bajtów dzieli się przez 3, nie ma ich wcale; przy reszcie 1 są dwa, przy reszcie 2 jeden. Ciąg ma ich więc najwyżej 2.
    Dlaczego po dekodowaniu widzę ciąg liczb szesnastkowych?
    Bo zdekodowane bajty nie tworzą poprawnego tekstu UTF-8: to obraz, plik PDF, podpis albo tekst w innym kodowaniu. Wtedy narzędzie pokazuje bajty jako hex, zamiast udawać tekst.
    Jak zakodować plik do Base64?
    Narzędzie przyjmuje tekst, nie pliki. W Linuksie użyj base64 plik (z -w 0, jeśli wynik ma być w jednej linii), w macOS base64 -i plik, w PowerShellu [Convert]::ToBase64String([IO.File]::ReadAllBytes("plik")).
    Czy można tu wkleić prawdziwy token?
    Nie warto. Dekodowanie odbywa się na serwerze LiczGrupa.pl, a dane wejściowe zapisują się w dzienniku obliczeń. Do nauki i debugowania wystarczy token testowy.

    Powiązane narzędzia

    Generator SHA-256

    Skrót i podpis HMAC-SHA256, także w base64url jak w JWT - Zobacz generator

    Generator MD5

    Suma MD5 tekstu, również w Base64 jak w nagłówku Content-MD5 - Zobacz generator

    Generator Slugów URL

    Bezpieczny adres URL z tytułu, bez polskich znaków - Zobacz generator

    Konwerter Systemów Liczbowych

    Odczyt bajtów hex jako liczb dziesiętnych i dwójkowych - Zobacz kalkulator

    Generator UUID/GUID

    Identyfikatory do baz danych i API - Zobacz generator

    Generator QR Code

    Kod QR z tekstu albo linku - Zobacz generator

    Generator zweryfikowany przez zespół LiczGrupa.pl

    Treść, wzory i wyniki zostały sprawdzone pod kątem poprawności i aktualności przez nasz zespół specjalistów.

    Krystian Szyszka

    Sprawdził: Krystian Szyszka