Lukujärjestelmämuunnin: desimaali, Hex, Base32, Base64
Muunna lukuja desimaalin ja Base16 (hex), Base32 sekä Base64 välillä molempiin suuntiin automaattisella kannan tunnistuksella. Koodaa desimaali tai pura arvo.
Kaksisuuntainen Kantalukumuunnin
Muunna desimaaliluvut ja vakiokantaluvut (Base16/Heksa, Base32, Base64) keskenään. Syötä arvo mihin tahansa kenttään muuntaaksesi.
Syötä positiivinen kokonaisluku (maks: 9.007.199.254.740.991)
Syötä Base16-, Base32- tai Base64-koodattu arvo
Tietoa kantaluvuista
Dokumentaatio
Kaksisuuntainen lukujärjestelmämuunnin: desimaali ↔ Base16, Base32, Base64
Lukujärjestelmämuunnin muuttaa luvun yhdestä kirjoitustavasta toiseen. Tietokoneet, URL-osoitteet ja data-formaatit tallentavat harvoin pelkkää desimaalilukua — ne pakkaavat sen kompaktimpaan tai siirtoturvalliseen koodaukseen, kuten Base16 (heksadesimaali), Base32 tai Base64. Tämä työkalu muuntaa molempiin suuntiin: kirjoita desimaaliluku ja näe sen Base16/Base32/Base64-muoto, tai liitä koodattu arvo ja saat desimaaliluvun takaisin. Se myös tunnistaa, missä kannassa koodattu arvo on.
Mitä "kanta" tarkoittaa
Jokaisella paikkajärjestelmällä on kanta (eli radix) — eri symbolien määrä, joita se käyttää yhdessä numeropaikassa. Desimaali on kanta 10 (0–9). Tässä esitellyt koodaukset vaihtavat suuremman symbolijoukon lyhyempään merkkijonoon:
- Base16 (heksadesimaali) — symbolit
0-9jaA-F. Jokainen merkki kantaa 4 bittiä. Yleisesti käytössä värikoodeissa (#FF0000), muistiosoitteissa ja tiivisteissä (hash). - Base32 — symbolit
A-Zja2-7(RFC 4648). Jokainen merkki kantaa 5 bittiä. Ei erottele isoja ja pieniä kirjaimia, eikä siinä ole helposti sekoittuvia merkkejä, joten se kestää ääneen luettavaksi tai käsin kirjoitettavaksi. - Base64 — symbolit
A-Z,a-z,0-9,+ja/(RFC 4648). Jokainen merkki kantaa 6 bittiä. Vakiotapa siirtää binääridataa pelkkää tekstiä käsittelevien kanavien läpi, kuten sähköpostin tai JSON-kentän.
Mitä suurempi kanta, sitä vähemmän merkkejä sama luku tarvitsee — mutta sitä suurempi aakkosto on pidettävä hallinnassa.
Näin käytät muunninta
Työkalussa on kaksi kenttää, ja se toimii sen mukaan, kumpaan kirjoitat:
- Desimaali → koodattu. Kirjoita positiivinen kokonaisluku desimaalikenttään. Työkalu näyttää arvon samanaikaisesti muodoissa Base16, Base32 ja Base64.
- Koodattu → desimaali. Liitä Base16-, Base32- tai Base64-arvo koodattu-kenttään. Työkalu tunnistaa kannan, tarkistaa merkkien kelpoisuuden ja palauttaa desimaaliluvun.
Arvoalue ja tarkistus
Arvot on rajoitettu JavaScriptin suurimpaan turvalliseen kokonaislukuun, 9007199254740991 (eli 2^53 − 1). Sen yläpuolella kokonaislukuja ei voida enää esittää tarkasti, joten muunnin, joka jatkaisi silti, palauttaisi hiljaisesti väärän tuloksen — työkalu ilmoittaa arvoalueen ylityksestä sen sijaan että arvaisi. Desimaalisyötteen on oltava ei-negatiivinen kokonaisluku; koodatussa syötteessä saa käyttää vain kyseiselle kannalle kelpaavia merkkejä, tai työkalu merkitsee sen virheelliseksi sen sijaan että purkaisi roskaa.
Esimerkkejä
- 255 desimaalina. Base16 =
FF, koska 255 = 15×16 + 15 ja molemmat numerot ovatF. Siksi#FFFFFFon valkoinen: kolme tavua, kukin maksimiarvossaan. - 1000 desimaalina. Base16 =
3E8(3×256 + 14×16 + 8 = 1000). FF:n purkaminen. Tunnistetaan Base16-muodoksi, puretaan arvoksi 255.- Tavu maksimiarvossaan, 8 bittiä, on heksana
FF— yksi heksamerkki vastaa 4 bittiä, joten tavua kohti tarvitaan kaksi merkkiä. Sama tavu tarvitsee pidemmän merkkijonon Base32-muodossa ja täytetyn ryhmän Base64-muodossa, minkä vuoksi heksa pysyy luettavimpana valintana lyhyille arvoille, kuten väreille ja osoitteille.
Mihin kutakin koodausta käytetään
- Base16 — CSS/HTML-värit, MAC- ja IPv6-osoitteet, kryptografiset tiivisteet ja tarkistussummat, binääritiedostojen heksadumpit.
- Base32 — TOTP/2FA-salaiset avaimet, jotkin tiedostonjako- ja DNS-pohjaiset järjestelmät, käsin kirjoitettavat tai ääneen luettavat tunnisteet, joissa kirjainkoon ja merkkien sekoittuminen on vältettävä.
- Base64 —
data:-URIt, sähköpostin liitetiedostot (MIME), kuvien tai varmenteiden upottaminen JSON- tai XML-tietoon, JWT-tokenit.
Koska jokainen koodaus on vain saman alla olevan luvun esitystapa, niiden välinen muuntaminen ei koskaan muuta arvoa — vain sitä, kuinka monta merkkiä sen kirjoittaminen vaatii ja missä kanavissa se voi kulkea turvallisesti.