Så använder du verktyget
- Klistra in Base64-strängen i fältet Indata. Base64 är redan förvalt som källa och hex som mål.
- Läs av det hexadecimala resultatet, med två hexsiffror för varje byte.
- Välj en annan målkodning, till exempel Base58 eller Base32, om du behöver ett annat format, eller klicka på Byt plats på indata och utdata för att konvertera hex tillbaka till Base64.
- Kopiera resultatet.
Två sätt att skriva samma byte
Både hex och Base64 skriver binärdata som text. Hex använder två tecken per byte, vilket gör enskilda bytevärden lätta att läsa och jämföra. Base64 packar 3 byte i 4 tecken och blir ungefär en tredjedel kortare. En konvertering mellan dem ändrar bara skrivsättet, aldrig själva datan:
| Värde | Byte | Längd i hex | Längd i Base64 |
|---|---|---|---|
| MD5-hashvärde | 16 | 32 | 24 |
| SHA-1-hashvärde | 20 | 40 | 28 |
| SHA-256-hashvärde, publik Ed25519-nyckel | 32 | 64 | 44 |
| SHA-384-hashvärde | 48 | 96 | 64 |
| SHA-512-hashvärde, Ed25519-signatur | 64 | 128 | 88 |
Hex är också det format som hexeditorer, paketanalysverktyg och felsökare visar, så när du konverterar Base64 till hex kan du jämföra datan direkt med det som de verktygen visar.
När du behöver hex från Base64
- Jämföra hashvärden. Verktyg som
sha256sumskriver ut hex, medan Subresource Integrity-attribut, hashvärden i Content Security Policy och kontrollsummeheaders somContent-MD5använder Base64. Konvertera den ena sidan för att kunna jämföra dem. - SSH-fingeravtryck.
ssh-keygen -lskriver ut fingeravtryck av typenSHA256:som Base64 utan utfyllnad, medan SSHFP-poster i DNS lagrar samma SHA-256-hashvärde i hex. Klistra in delen efterSHA256:för att få hexformen. - Nycklar, IV:er och signaturer. När du felsöker kryptografisk kod och ser bytena i hex blir det enkelt att kontrollera längden, jämföra värden och upptäcka en saknad eller extra byte.
Indata som konverteraren accepterar
Mellanslag och radbrytningar i Base64-indatan ignoreras, de URL-säkra tecknen - och _ accepteras och utfyllnad med = är valfri, så värden som du kopierat från JSON, JWT:er eller terminalutdata kan klistras in som de är. Konverteringen arbetar på de avkodade bytena: resultatet är datan i hex, inte själva Base64-tecknen i hex. Vill du se hexkoderna för en text använder du Base16 i stället.
# Shell
printf '%s' "$B64" | base64 --decode | xxd -p
# Python
base64.b64decode(s).hex()
// Node.js
Buffer.from(s, 'base64').toString('hex')
Vanliga frågor
Konverteras Base64-texten eller de byte som den representerar?
Varför är hexresultatet längre än Base64-indatan?
Hex behöver 2 tecken per byte, medan Base64 behöver ungefär 1,33. Ett SHA-256-hashvärde på 32 byte är 44 tecken långt i Base64 och 64 tecken i hex.
Hur får jag hex med versaler eller kolon som avgränsare?
Kan jag konvertera Base64URL-värden från en JWT eller JSON Web Key?
Ja. URL-säkra tecken och utelämnad utfyllnad hanteras automatiskt, så nyckelparametrar och signaturer kan klistras in utan ändringar.