Konwerter kodowań Base-N

Zamień ciąg z jednego kodowania binarno-tekstowego na inne w jednym kroku. Dane wejściowe są dekodowane do bajtów i od razu kodowane ponownie, więc po drodze nic nie ginie.

Działa w całości w przeglądarce. Nic nie jest wysyłane.

Jak używać

  1. W polu „Z formatu” wybierz kodowanie danych wejściowych, np. Base64.
  2. W polu „Na format” wybierz kodowanie docelowe, np. Base58.
  3. Wklej dane wejściowe, aby otrzymać przekonwertowany wynik.
  4. Kliknij „Kopiuj”, aby użyć wyniku, lub „Zamień wejście z wyjściem”, aby przekonwertować dane w przeciwnym kierunku.

Dlaczego konwertować bajty, a nie tekst

Base64, Base58, hex i pozostałe kodowania w tym serwisie opisują bajty. Konwersja polegająca na zdekodowaniu do tekstu i ponownym zakodowaniu tego tekstu działa tylko wtedy, gdy dane naprawdę są tekstem. Klucze, skróty, podpisy, obrazy i dane skompresowane zawierają sekwencje bajtów, które nie są prawidłowym UTF-8. Dekoder tekstu zastępuje je znakiem zastępczym U+FFFD, a ponownie zakodowany wynik jest po cichu błędny.

Ten konwerter dekoduje ciąg źródłowy do surowych bajtów i zapisuje je bezpośrednio w kodowaniu docelowym. 32-bajtowy klucz pozostaje dokładnie 32-bajtowy, wiodące bajty zerowe są zachowywane, a konwersja w drugą stronę zwraca te same bajty. Całość działa w przeglądarce.

Typowe konwersje

  • Base64 na Base58: przeniesienie kluczy publicznych i skrótów z API do formatu używanego przez Bitcoin, Solanę i IPFS. Dla danych w hex zobacz Hex na Base58.
  • Base32 na Base64 lub hex: sprawdzenie sekretu TOTP lub użycie go w systemie, który oczekuje innego formatu.
  • Hex na Base62 lub Base58: krótszy zapis skrótów i identyfikatorów w adresach URL. 64-cyfrowy ciąg hex ze skrótem SHA-256 zmienia się w ok. 43 znaki.
  • Base64 na Base64URL: przygotowanie wartości do bezpiecznego użycia w adresach URL, plikach cookie i polach JWT.
  • Ascii85, Base85 lub Z85 na Base64: ponowne użycie danych pobranych ze strumieni PDF, binarnych łatek Git lub wiadomości ZeroMQ.

Te same cztery bajty w pięciu kodowaniach:

KodowanieWartość
Hexdeadbeef
Base643q2+7w==
Base586h8cQN
Base6244pZgF
Base85-mSjx

Zasady i ograniczenia dotyczące danych wejściowych

  • Dane Base64 mogą używać alfabetu standardowego lub bezpiecznego dla URL, zawierać podziały wierszy i nie mieć dopełnienia.
  • Dane hex mogą zawierać spacje, dwukropki lub prefiks 0x i być zapisane wielkimi lub małymi literami.
  • Base58 i Base62 traktują dane jako jedną dużą liczbę, więc konwersje z ich udziałem są ograniczone do ok. 20 KB.
  • Sumy kontrolne nie są ani sprawdzane, ani dodawane. Aby zweryfikować lub utworzyć ciąg Base58Check, użyj strony Base58Check.

Najczęściej zadawane pytania

Jak przekonwertować Base64 na Base58?

W polu „Z formatu” wybierz Base64, w polu „Na format” Base58, a następnie wklej ciąg. Base64 zostaje zdekodowany do bajtów, które są zapisywane alfabetem Bitcoin Base58, używanym również przez Solanę i IPFS.

Czy to to samo co dekodowanie i ponowne kodowanie?

Tylko wtedy, gdy dane są zwykłym tekstem. W przypadku danych binarnych, takich jak klucze czy obrazy, dekodowanie do tekstu powoduje utratę bajtów. To narzędzie nigdy nie przechodzi przez tekst, więc bajty są zachowywane dokładnie.

Dlaczego przekonwertowany ciąg jest krótszy lub dłuższy niż dane wejściowe?
Każde kodowanie mieści w jednym znaku inną liczbę bitów. Hex potrzebuje 2 znaków na bajt, Base58 ok. 1,37, a Base64 ok. 1,33. Strona Wszystkie kodowania porównuje je obok siebie.
Czy można tu przeliczyć liczbę binarną na dziesiętną?
Nie jako liczbę. Zapis binarny na tej stronie oznacza bajty danych zapisane w grupach po 8 bitów, a nie wartość pojedynczej liczby. Aby przeliczyć wartość liczby, np. binarne 1010 na dziesiętne 10, użyj konwertera systemów liczbowych.