> base64 decoder | paste | decode <
// Incolla qualsiasi stringa Base64 — standard, URL-safe o senza padding — e decodificala in testo UTF-8 all'istante. Funziona al 100% nel tuo browser.
Rilevamento automatico del formato
Rileva automaticamente Base64 standard RFC 4648, Base64 URL-safe (-_) e padding mancante. Nessuna configurazione necessaria — basta incollare.
100% nel browser
Le tue stringhe Base64 non lasciano mai il tuo dispositivo. Nessun upload sul server, nessun log, nessuna telemetria. Sicuro per token, credenziali e payload privati.
Decodifica istantanea
Decodifica mentre digiti. Gestisce testo UTF-8 multibyte, emoji, JSON, XML, dati binari come Base64. Dimensione dell'input illimitata.
// COME FUNZIONA LA DECODIFICA BASE64
Algoritmo di decodifica Base64:
Base64 codifica 3 byte di dati binari in 4 caratteri ASCII tratti da un alfabeto di 64 caratteri (A-Z, a-z, 0-9, +, /). La decodifica inverte il processo: ogni carattere viene mappato su un valore a 6 bit e quattro gruppi da 6 bit si ricombinano in tre byte da 8 bit. I caratteri di padding (=) vengono aggiunti per rendere la lunghezza codificata un multiplo di 4. Questo decodificatore accetta input con padding, senza padding e URL-safe, e restituisce testo UTF-8.
Esempio di decodifica:
Input : SGVsbG8sIEJhc2U2NCE=
Bits : 01001000 01100101 01101100 01101100
01101111 00101100 00100000 01000010
01100001 01110011 01100101 00110110
00110100 00100001
Output : Hello, Base64!
Scenari di decodifica comuni:
- >Decodificare l'header e il payload di un JWT (prima della firma)
- >Leggere allegati email codificati in Base64 (MIME)
- >Ispezionare parametri URL Base64 e token di state OAuth
- >Estrarre testo dai Data URI (data:text/plain;base64,...)
- >Eseguire il debug di risposte API che incapsulano dati binari come Base64
// DOMANDE FREQUENTI
Come decodifico una stringa Base64 online?
Incolla la stringa Base64 nell'area INPUT qui sopra — il decodificatore funziona automaticamente mentre digiti (la decodifica automatica è attiva per impostazione predefinita). Il testo decodificato appare immediatamente nell'area OUTPUT. Puoi anche fare clic esplicitamente su [DECODE] o usare Ctrl/Cmd + Enter. Tutto viene eseguito localmente nel tuo browser; nulla viene inviato a un server, quindi incollare token JWT, state OAuth o payload riservati è sicuro.
Quali varianti di Base64 supporta questo decodificatore?
Tutte. Il decodificatore rileva automaticamente e accetta:
• Base64 standard (RFC 4648) — alfabeto A-Z a-z 0-9 + / con padding =.
• Base64 URL-safe (RFC 4648 §5) — alfabeto con - e _ al posto di + e /. Usato da JWT, OAuth, Google API e URL prefirmati AWS S3.
• Base64 senza padding — i segni = finali vengono omessi. Comune nei JWT, dove un decodificatore deve aggiungere automaticamente il padding.
• Tollerante agli spazi — interruzioni di riga, tabulazioni e spazi all'interno della stringa Base64 vengono rimossi prima della decodifica (gestisce l'output a 76 colonne con a capo MIME dei corpi delle email).
Il formato rilevato viene mostrato come badge sotto i pulsanti, così sai quale variante il decodificatore ha attribuito al tuo input.
Perché il mio Base64 si decodifica in caratteri illeggibili o fallisce con un errore?
La maggior parte degli errori di decodifica ha una di queste cinque cause:
1. L'input non è effettivamente Base64. Molte persone confondono Base64 con esadecimale, Base32 o codifica URL. Base64 usa solo A-Z a-z 0-9 + / = (oppure - _ per URL-safe). Se la stringa contiene %20, è codifica percentuale; se è composta solo da 0-9 a-f, è probabilmente esadecimale.
2. Troncamento. La lunghezza Base64 deve essere un multiplo di 4 dopo il padding. Un copia-incolla che perde i == finali causa errori di "lunghezza non valida". Questo decodificatore aggiunge automaticamente il padding, ma le stringhe gravemente troncate falliscono comunque.
3. Mix di URL-safe e standard. Se sono presenti tutti i +/-_, la stringa è ambigua e probabilmente corrotta. Va usata una sola variante.
4. Doppia codifica. A volte una stringa viene codificata in Base64 due volte. Decodificandola una volta si ottengono caratteri illeggibili che sono a loro volta Base64. Decodifica di nuovo per ottenere il testo finale.
5. Codifica UTF-8 del testo originale. Base64 si decodifica in byte. Se i byte originali non sono UTF-8 valido (ad es. dati binari grezzi come un blob cifrato o un PNG), l'output decodificato apparirà come mojibake. È previsto — usa invece uno strumento da Base64 a file.
Come decodifico un JWT con questo decodificatore Base64?
Un JWT ha tre parti separate da punti: header.payload.signature. Tutte e tre sono Base64 URL-safe senza padding. Per ispezionare il payload:
1. Copia il segmento centrale (tra i due punti).
2. Incollalo nel decodificatore qui sopra. La decodifica automatica gestisce l'alfabeto URL-safe e aggiunge il padding mancante.
3. Ottieni il payload JSON con claim come iss, sub, exp, iat.
La firma (terzo segmento) è un output binario HMAC o RSA — decodificarla come testo produce caratteri illeggibili, il che è previsto. Per un ispettore JWT completo con verifica della firma, usa il nostro Decodificatore JWT dedicato.
Nota sulla sicurezza: decodificare un JWT non lo verifica. Chiunque può leggere il payload di un JWT — è voluto. La firma dimostra che il token proviene dall'emittente; viene verificata separatamente con la chiave pubblica o il segreto condiviso dell'emittente.
Posso decodificare Base64 dalla riga di comando (bash, PowerShell, Python)?
Sì — ogni piattaforma principale include un decodificatore Base64. Quando questo strumento online è troppo lento per incollarci dentro, usa:
macOS / Linux (bash/zsh):echo 'SGVsbG8=' | base64 -d — produce Hello. Usa -D su macOS se -d non funziona. Per input URL-safe, passa prima attraverso tr '_-' '/+'.
Windows PowerShell:[Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('SGVsbG8='))
Python:import base64
base64.b64decode('SGVsbG8=').decode('utf-8') # Hello
base64.urlsafe_b64decode(s + '===').decode() # URL-safe con auto-pad
Node.js:Buffer.from('SGVsbG8=', 'base64').toString('utf-8')
DevTools del browser:atob('SGVsbG8=') — funziona in qualsiasi console. Per le stringhe UTF-8 racchiudi con new TextDecoder().decode(Uint8Array.from(atob(s), c => c.charCodeAt(0))).
PHP: base64_decode('SGVsbG8=')
Ruby: Base64.decode64('SGVsbG8=')
Go: base64.StdEncoding.DecodeString("SGVsbG8=")
Questo decodificatore Base64 è sicuro per decodificare token e credenziali sensibili?
Sì — questo decodificatore è più sicuro degli strumenti lato server perché nulla lascia il tuo browser. La decodifica avviene interamente in JavaScript sul tuo dispositivo tramite le API native atob() e TextDecoder. Non c'è alcuna chiamata di rete, nessun upload, nessun logging, nessuna analisi sul contenuto dell'input. Puoi verificarlo tu stesso aprendo la scheda Rete dei DevTools del browser durante la decodifica — vedrai zero richieste.
Detto questo, Base64 non è crittografia — è solo codifica. Chiunque abbia la stringa Base64 può decodificarla. Quindi, anche se questo strumento è sicuro, dovresti comunque:
• Non condividere mai screenshot di JWT decodificati che non sono ancora scaduti.
• Ruotare le credenziali che trapelano ovunque (log, screenshot, chat condivise).
• Trattare state OAuth, token CSRF e ID di sessione decodificati come segreti finché non vengono invalidati.
Per ambienti aziendali/regolamentati in cui anche la stringa Base64 è sensibile, puoi salvare questa pagina offline (Cmd/Ctrl + S) — funziona completamente isolata dopo un solo caricamento, poiché la logica di decodifica è puro JavaScript.
Come decodifico un Data URI Base64 come 'data:image/png;base64,iVBORw0KGgo...'?
Un Data URI segue la sintassi data:[<mediatype>][;base64],<data>. Per decodificare solo il payload:
1. Trova la virgola. Tutto ciò che la precede sono metadati (data:image/png;base64), tutto ciò che segue è il file codificato in Base64.
2. Copia in questo decodificatore solo la parte dopo la virgola.
3. Per contenuti binari (PNG, JPG, PDF), l'output decodificato saranno byte grezzi — la resa come testo mostra mojibake. È previsto.
4. Per visualizzare un'immagine Data URI, incolla l'intero URI data:... nella barra degli indirizzi del browser — il browser la decodifica e la rende direttamente.
5. Per salvare il file immagine, usa il nostro strumento dedicato Da Base64 a immagine, che gestisce il Data URI completo e scarica un PNG/JPG/WebP.
I Data URI si trovano comunemente in: regole CSS background-image, icone SVG inline, immagini di firme email, allegati PDF codificati nelle risposte API JSON e bundle di icone di estensioni Electron/VS Code.
Qual è la differenza tra codifica e decodifica Base64?
La codifica prende dati binari o testuali arbitrari e produce una stringa ASCII che usa solo caratteri stampabili — sicura per il trasporto su canali solo testo (email, URL, JSON). La decodifica inverte il processo: una stringa ASCII Base64 ridiventa i byte originali.
Proprietà chiave:
• Round-trip senza perdite: decode(encode(x)) === x per qualsiasi input in byte. Nessun dato viene mai perso.
• Non è crittografia: Base64 non offre alcuna segretezza. Chiunque può decodificarlo.
• Overhead di dimensione: l'output codificato è circa il 33% più grande dell'input (4 byte di output ogni 3 byte di input).
• Casi d'uso: token JWT, allegati email MIME, header HTTP Basic Auth, codici OAuth, URL prefirmati S3, immagini inline in HTML/CSS.
Questa pagina è dedicata alla decodifica. Se devi fare il contrario (testo/file → Base64), usa il nostro Codificatore Base64 nella home page, oppure il nostro convertitore Da immagine a Base64 per i file immagine.
Posso decodificare stringhe Base64 molto grandi o file codificati in Base64?
Sì, entro i limiti di memoria del browser. Il decodificatore accetta una lunghezza di input illimitata — abbiamo testato con stringhe Base64 da 50 MB (~37 MB decodificati) su laptop moderni. Prestazioni:
• < 100 KB: istantaneo, nessun ritardo dell'interfaccia.
• 1 – 10 MB: la decodifica richiede ~50-500 ms a seconda della CPU.
• 10 – 100 MB: il browser potrebbe bloccarsi brevemente (2-10 s) poiché atob è sincrono. Disattiva prima auto-decode e fai clic su [DECODE] manualmente.
• > 100 MB: raggiungerai i limiti di memoria del browser. Per file Base64 di dimensioni nell'ordine dei gigabyte, usa uno strumento da riga di comando (base64 -d).
Se il contenuto decodificato è un file binario (PNG, PDF, ZIP), l'area di output testuale mostrerà mojibake. Per scaricare i byte decodificati come file, usa il nostro strumento Da Base64 a immagine (gestisce le immagini) oppure l'approccio da riga di comando: echo '<base64>' | base64 -d > output.bin.
Questo decodificatore Base64 funziona offline?
Sì. Dopo che la pagina è stata caricata una volta, tutta la decodifica avviene lato client in JavaScript — non è necessaria alcuna rete. Per renderlo completamente offline:
1. Salva la pagina: premi Ctrl+S (Windows/Linux) o Cmd+S (macOS) e salva come "Pagina web, completa". Il decodificatore funziona dall'HTML salvato.
2. Installa come PWA (se supportato): alcuni browser offrono "Installa questa app" per base64.sh — ti dà un launcher con accesso offline.
3. Usa nei DevTools: la funzione nativa atob() funziona in qualsiasi console del browser senza questa pagina. Per una decodifica rapida: atob('SGVsbG8=').
Il funzionamento offline è utile per: ricerca di sicurezza in ambienti isolati, laboratori di pentesting, ambienti aziendali con regole rigorose sull'uscita dei dati e voli/treni senza internet.