Kodowanie Base64

Zakoduj dowolny ciąg znaków do formatu Base64 za pomocą naszego narzędzia do kodowania Base64 dla bezpiecznego kodowania danych.

5 z 2 ocen
Kodowanie Base64

Kodowanie Base64 to bezpłatne narzędzie, które przekształca ciąg znaków w standardowy tekst Base64.

Czym jest Base64 i po co powstało?

Base64 to sposób kodowania danych binarnych za pomocą tekstu, wykorzystujący litery, cyfry i niewielki zestaw symboli. Powstał, ponieważ niektóre systemy niezawodnie przesyłają tekst, ale mogą zmieniać lub odrzucać surowe dane binarne.

Standardowy alfabet Base64 zawiera wielkie i małe litery, cyfry, znaki plus oraz ukośniki. Na końcu może pojawić się znak równości pełniący funkcję dopełnienia. Zakodowana wartość jest zwykle dłuższa od oryginału, ponieważ każda grupa trzech bajtów wejściowych zostaje zamieniona na cztery znaki Base64.

Dane wejściowe to Hello.

Wynik to SGVsbG8=.

Base64 operuje na bajtach, a nie na znakach odczytywanych przez człowieka. Spacje, znaki interpunkcyjne i cyfry są kodowane tak samo jak pozostałe dane wejściowe. Litery ze znakami diakrytycznymi, emoji i znaki spoza alfabetu łacińskiego muszą najpierw zostać zapisane w określonym kodowaniu znaków, zwykle UTF-8. Różne kodowania bajtowe dają różne wyniki Base64. Puste dane wejściowe zwracają pustą zakodowaną wartość, natomiast bardzo długie dane tworzą proporcjonalnie dłuższy ciąg.

Base64 jest kodowaniem, a nie szyfrowaniem. Każdy, kto ma dekoder, może odzyskać oryginalne dane. Base64 nie zapewnia więc poufności i nie nadaje się do ukrywania haseł, kluczy API ani danych osobowych.

Schemat: tekst przechodzi przez narzędzie Kodowanie Base64 w obu kierunkach

Jak zakodować dane w Base64?

Wpisz ciąg, który chcesz zakodować, a następnie odczytaj przekształconą wartość w polu wyniku Zakodowane w Base64. Narzędzie korzysta ze standardowego kodowania Base64 za pośrednictwem funkcji PHP base64_encode.

  1. Skopiuj dokładny ciąg źródłowy, wraz ze wszystkimi spacjami i podziałami wierszy, które mają zostać zachowane.
  2. Skopiuj zwróconą wartość Base64 bez dodawania cudzysłowów ani zbędnych białych znaków.
Narzędzie Kodowanie Base64 w serwisie digily.link wraz z formularzem wprowadzania danych

Przetwarzanie odbywa się na serwerze. Dane wejściowe są przesyłane na serwer przez HTTPS i nie są przechowywane. HTTPS chroni żądanie podczas transmisji, ale nie przesyłaj poufnych danych, chyba że system odbiorczy rzeczywiście wymaga formatu Base64.

Gdzie w praktyce używa się Base64?

Base64 stosuje się, gdy dane binarne lub dowolne bajty trzeba przesłać w formacie tekstowym. System odbiorczy musi wiedzieć, że wartość jest zakodowana w Base64, i zdekodować ją na odpowiednim etapie.

  • Adresy URL danych pozwalają umieszczać obrazy, czcionki i inne pliki zakodowane w Base64 bezpośrednio w kodzie HTML lub CSS, wraz z typem mediów.
  • Ciągi zapytań czasami przenoszą zakodowane tokeny lub dane strukturalne, choć zwykle lepiej nadaje się do tego bezpieczny dla adresów URL wariant Base64url.
  • Poczta elektroniczna wykorzystuje Base64 jako jedno z kodowań transferowych MIME dla załączników i części wiadomości, których nie można bezpiecznie wysłać jako zwykłego tekstu.
  • Dane JSON mogą przedstawiać bajty obrazów, dokumenty lub materiały kryptograficzne jako ciągi znaków, ponieważ JSON nie ma natywnego typu danych binarnych.
  • Uwierzytelnianie HTTP wykorzystuje Base64 do zapisu nazwy użytkownika i hasła w uwierzytelnianiu Basic. Po zdekodowaniu wartość nadal jest czytelna, dlatego konieczne pozostaje zabezpieczenie transmisji.
Przykładowy wynik wygenerowany przez narzędzie Kodowanie Base64

Standardowe Base64 czy Base64url?

To narzędzie generuje standardowe Base64, odpowiednie dla wiadomości e-mail MIME, wielu interfejsów API JSON oraz systemów, które wyraźnie wymagają zwykłego alfabetu Base64. Standardowy wynik może zawierać znaki +, / oraz końcowe dopełnienie =.

Wybierz Base64url, jeśli wartość ma być częścią adresu URL, nazwy pliku, pliku cookie lub tokenu JSON Web Token. Ten wariant zastępuje + znakiem -, a / znakiem _ i często pomija dopełnienie. Nie zmieniaj wariantu bez sprawdzenia specyfikacji systemu odbiorczego. Dekoder oczekujący jednego alfabetu może odrzucić drugi.

Dlaczego Base64 nie daje się zdekodować albo zwraca niezrozumiałe znaki?

Dekodowanie Base64 najczęściej kończy się niepowodzeniem, gdy dane wejściowe korzystają z innego wariantu niż oczekiwany lub zostały zmienione podczas przesyłania. Poprawna wartość Base64 może też zostać zdekodowana do bajtów binarnych, które po wyświetleniu jako tekst wyglądają jak przypadkowe znaki.

  • Niewłaściwy alfabet: ten problem często występuje, gdy dane Base64url trafiają do dekodera wymagającego standardowego Base64 lub odwrotnie.
  • Brak dopełnienia: może powodować błąd w dekoderach, które wymagają uzupełnienia długości jednym albo dwoma znakami równości.
  • Podwójne kodowanie: występuje, gdy już zakodowana wartość zostanie zakodowana ponownie. Pierwsze dekodowanie zwraca wtedy kolejny ciąg przypominający Base64, zamiast pierwotnej zawartości.
  • Zmienione znaki: znak plus w ciągu zapytania może zostać zinterpretowany jako spacja, a podczas kopiowania mogą pojawić się dodatkowe podziały wierszy i spacje.
  • Wynik binarny: może wyglądać jak przypadkowe znaki, jeśli zostanie wyświetlony jako tekst. Zdekodowane bajty mogą tworzyć obraz, skompresowane archiwum, dokument PDF lub zaszyfrowany plik, który trzeba otworzyć w odpowiedniej aplikacji.

Dekoder Base64 pozwala odwrócić standardowe kodowanie tekstu Base64. Jeśli zdekodowane bajty tworzą obraz, wygodniejszym następnym krokiem może być narzędzie Base64 na obrazek.

Najczęściej zadawane pytania

Czy Base64 zachowuje wielkie litery i podziały wierszy?

Tak. Base64 zachowuje bazowe bajty, w tym wielkość liter i znaki nowego wiersza. Systemy Windows i Unix używają jednak różnych sekwencji bajtów do zapisu końców wierszy, dlatego wizualnie identyczny tekst wielowierszowy może dać inne zakodowane wartości.

Czy można wkleić Base64 bezpośrednio do HTML lub CSS?

Tylko po dodaniu składni wymaganej przez dany dokument. Adres URL danych zwykle wymaga typu mediów i znacznika ;base64 przed zakodowanymi danymi. To narzędzie zwraca same dane, a nie kompletny adres URL.

Czy ten sam tekst zawsze daje taką samą wartość Base64?

Tak, jeśli bajty wejściowe są identyczne. Inne kodowanie znaków, niewidoczna spacja na końcu, znacznik kolejności bajtów lub zmieniony sposób zapisu końca wiersza wpłyną na wynik.

Czy Base64 rozróżnia wielkie i małe litery?

Tak. Wielkie i małe litery reprezentują różne wartości w alfabecie Base64. Zmiana ich wielkości może więc uszkodzić zdekodowane dane, nawet jeśli ciąg nadal wygląda na poprawny.

Czy tym narzędziem można zakodować plik?

To narzędzie służy do kodowania ciągów znaków, a nie do przesyłania plików. Wklejenie tekstowej reprezentacji pliku nie jest tym samym co zakodowanie jego surowych bajtów. Jeśli inna aplikacja wymaga bajtów pliku zapisanych jako Base64, użyj kodera obsługującego pliki i zastosuj wymagany przez tę aplikację alfabet Base64 oraz sposób dopełniania.

Podobne narzędzia

Dekoder Base64

Zdekoduj dane wejściowe Base64 z powrotem do ich oryginalnego formatu za pomocą naszego narzędzia do dekodowania Base64, aby łatwo odzyskać dane.

4,931
43

Popularne narzędzia