Konwerter liczb: dziesiętny ↔ Hex, Base32, Base64
Przeliczaj liczby między systemem dziesiętnym a Base16 (hex), Base32 i Base64 w obu kierunkach, z automatycznym wykrywaniem systemu. Koduj lub dekoduj wartości.
Dwukierunkowy Konwerter Podstaw
Konwertuj między liczbami dziesiętnymi a standardowymi kodowaniami podstawowymi (Base16/Hex, Base32, Base64). Wprowadź wartość w dowolnym polu, aby przekonwertować.
Wprowadź dodatnią liczbę całkowitą (maks.: 9 007 199 254 740 991)
Wprowadź wartość zakodowaną w Base16, Base32 lub Base64
O kodowaniach podstawowych
Dokumentacja
Dwukierunkowy konwerter systemów liczbowych: dziesiętny ↔ Base16, Base32, Base64
Konwerter systemów liczbowych zamienia liczbę zapisaną w jednym systemie na inny sposób jej zapisu. Komputery, adresy URL i formaty danych rzadko przechowują zwykłą liczbę dziesiętną — pakują ją w bardziej zwarte lub bezpieczne dla transportu kodowanie, takie jak Base16 (szesnastkowy), Base32 lub Base64. To narzędzie konwertuje w obu kierunkach: wpisz liczbę dziesiętną i zobacz jej postać Base16/Base32/Base64, albo wklej zakodowaną wartość i uzyskaj z powrotem liczbę dziesiętną. Wykrywa też, w jakim systemie zapisana jest podana zakodowana wartość.
Co oznacza „system liczbowy" (podstawa)
Każdy pozycyjny system liczbowy ma podstawę (lub radix) — liczbę odrębnych symboli używanych do zapisu pojedynczej cyfry. System dziesiętny ma podstawę 10 (0–9). Kodowania opisane tutaj zamieniają większy zestaw symboli na krótszy ciąg znaków:
- Base16 (szesnastkowy) — symbole
0-9orazA-F. Każdy znak niesie 4 bity. Powszechnie stosowany w kodach kolorów (#FF0000), adresach pamięci i sumach kontrolnych (hashach). - Base32 — symbole
A-Zoraz2-7(RFC 4648). Każdy znak niesie 5 bitów. Nie rozróżnia wielkości liter i unika łatwo mylonych znaków, dzięki czemu dobrze sprawdza się przy odczytywaniu na głos lub ręcznym wpisywaniu. - Base64 — symbole
A-Z,a-z,0-9,+oraz/(RFC 4648). Każdy znak niesie 6 bitów. Standardowy sposób przesyłania danych binarnych przez kanały obsługujące wyłącznie tekst, takie jak e-mail czy pole JSON.
Im wyższa podstawa, tym mniej znaków potrzeba do zapisania tej samej liczby — ale tym większy alfabet trzeba mieć pod kontrolą.
Jak korzystać z konwertera
Narzędzie ma dwa pola i działa niezależnie od tego, w które z nich wpiszesz wartość:
- Dziesiętny → zakodowany. Wpisz dodatnią liczbę całkowitą w polu dziesiętnym. Narzędzie od razu pokaże wartość w Base16, Base32 i Base64.
- Zakodowany → dziesiętny. Wklej wartość Base16, Base32 lub Base64 w polu zakodowanym. Narzędzie wykryje system liczbowy, sprawdzi poprawność znaków i zwróci liczbę dziesiętną.
Zakres i walidacja
Wartości są ograniczone do maksymalnej bezpiecznej liczby całkowitej JavaScript, czyli 9007199254740991 (to jest 2^53 − 1). Powyżej tej wartości liczby całkowite nie mogą być reprezentowane dokładnie, więc konwerter, który mimo to kontynuowałby obliczenia, zwracałby po cichu błędne cyfry — zamiast zgadywać, narzędzie zgłasza wtedy błąd przekroczenia zakresu. Wartość dziesiętna musi być nieujemną liczbą całkowitą; wartość zakodowana musi zawierać wyłącznie znaki dozwolone dla danego systemu, w przeciwnym razie narzędzie zgłasza błąd zamiast dekodować bezsensowny wynik.
Przykłady obliczeń
- 255 w systemie dziesiętnym. Base16 =
FF, ponieważ 255 = 15×16 + 15, a obie cyfry toF. Dlatego#FFFFFFoznacza biały kolor: trzy bajty, każdy na swojej maksymalnej wartości. - 1000 w systemie dziesiętnym. Base16 =
3E8(3×256 + 14×16 + 8 = 1000). - Dekodowanie
FF. Wykryte jako Base16, dekoduje się do 255. - Bajt o wartości maksymalnej, czyli 8 bitów, to
FFw zapisie szesnastkowym — jeden znak szesnastkowy na 4 bity, czyli dwa znaki na bajt. Ten sam bajt wymaga dłuższego ciągu w Base32 i uzupełnionej (paddingowanej) grupy w Base64, dlatego zapis szesnastkowy pozostaje najbardziej czytelnym wyborem dla krótkich wartości, takich jak kolory czy adresy.
Gdzie stosuje się każde kodowanie
- Base16 — kolory CSS/HTML, adresy MAC i IPv6, hashe kryptograficzne i sumy kontrolne, zrzuty (dumpy) plików binarnych w postaci szesnastkowej.
- Base32 — klucze tajne TOTP/2FA, niektóre systemy udostępniania plików i oparte na DNS, identyfikatory wpisywane ręcznie lub odczytywane na głos, gdzie trzeba uniknąć mylenia wielkości liter i znaków.
- Base64 — adresy
data:, załączniki e-mail (MIME), osadzanie obrazów lub certyfikatów w JSON lub XML, tokeny JWT.
Ponieważ każde kodowanie jest jedynie reprezentacją tej samej liczby, konwersja między nimi nigdy nie zmienia wartości — zmienia się jedynie liczba znaków potrzebna do jej zapisania oraz to, przez jakie kanały można ją bezpiecznie przesłać.