Decoder Base64 Online

Decodifica testo codificato in Base64

Input Base64

Testo Decodificato

Esegue in locale · Sicuro per incollare segreti
Output decodificato...

Cos'è la decodifica Base64?

La decodifica Base64 è il processo inverso della codifica Base64: converte una stringa ASCII codificata in Base64 nei dati binari o nel testo originali. Ogni 4 caratteri Base64 si decodificano in 3 byte di dati originali. Il decoder cerca ogni carattere nell'alfabeto Base64, ricostruisce i gruppi originali di 6 bit e li riassembla in byte di 8 bit.

I dati codificati in Base64 sono riconoscibili dall'uso di lettere maiuscole e minuscole, cifre, e +/ (standard) o -_ (sicuro per URL), spesso terminando con uno o due caratteri di riempimento =. Compaiono frequentemente nei token JWT, negli allegati e-mail, nei data URI, nelle risposte API e nei file di configurazione — ovunque i dati binari o strutturati debbano essere incorporati in un contesto solo testuale.

Perché usare questo strumento?

Questo decoder gestisce Base64 standard e URL-safe, corregge automaticamente il riempimento mancante e decodifica interamente nel tuo browser senza inviare dati ai server.

Correzione automatica del riempimento
Molte sorgenti producono Base64 senza i caratteri = finali. Questo strumento calcola e aggiunge automaticamente il riempimento mancante prima della decodifica, prevenendo le eccezioni InvalidCharacterError.
🛡️
Entrambe le varianti supportate
Rileva e gestisce automaticamente Base64 standard (+/) e Base64 URL-safe (-_), così puoi incollare token da qualsiasi sorgente senza conversione manuale.
🔒
Completamente lato client
La decodifica avviene localmente nel tuo browser usando l'API nativa atob. I tuoi dati — che possono contenere segreti o contenuto sensibile — non lasciano mai il tuo dispositivo.
🌐
Output Unicode
Decodifica correttamente il testo codificato UTF-8 in Unicode completo, inclusi caratteri multibyte, emoji e script CJK.

Come usare questo decoder Base64 online

Nessun account, nessun upload, nessuna installazione. Incolla la tua stringa Base64 nel campo di input e il risultato decodificato appare istantaneamente. Tutto funziona nel tuo browser — i tuoi dati non lasciano mai il tuo dispositivo.

  1. 1
    Incolla la tua stringa Base64
    Copia qualsiasi stringa codificata in Base64 dalla tua fonte — un JWT, una risposta API, un header di allegato email o un file di configurazione — e incollala nel campo di input. Le varianti standard e URL-safe vengono rilevate automaticamente.
  2. 2
    Rilevamento automatico e correzione
    Il decoder identifica se il tuo input usa Base64 standard (+/) o URL-safe (-_) e corregge automaticamente il padding = mancante. Non è necessario normalizzare manualmente la stringa prima della decodifica.
  3. 3
    Ispeziona l'output
    Il testo decodificato appare nel campo di output. Se i dati originali erano testo UTF-8, vengono visualizzati come caratteri leggibili. I dati binari vengono mostrati così come sono. Viene visualizzato un messaggio di errore se l'input contiene caratteri non validi che non possono essere decodificati.
  4. 4
    Copia o usa il risultato
    Clicca su Copia per copiare l'output decodificato, oppure usalo direttamente nel tuo flusso di lavoro. Hai bisogno di ricodificare il risultato? Passa allo strumento Base64 Encoder con un solo clic.

Come funziona la decodifica

Ogni carattere Base64 corrisponde a un valore di 6 bit (0–63). Quattro caratteri consecutivi forniscono 24 bit, che si decodificano in 3 byte di dati originali. L'esempio seguente mostra come "TWFu" si decodifica in "Man":

Esempio "Man" → TWFu → "Man"
Car.Indice6 bit
T19010011
W22010110
F5000101
u46101110

I quattro gruppi di 6 bit (010011 010110 000101 101110) vengono concatenati a 24 bit, poi divisi in tre byte di 8 bit: 01001101 (M=77), 01100001 (a=97), 01101110 (n=110).

Capire il riempimento

La codifica Base64 raggruppa i byte di input in insiemi di 3. Quando la lunghezza dell'input non è divisibile per 3, vengono aggiunti caratteri di riempimento (=) per completare il gruppo finale. Durante la decodifica, questi caratteri = vengono rimossi e il decoder sa di dover scartare i bit zero extra aggiunti durante la codifica.

OriginaleCodificatoRegola di riempimento
AQQ==1 byte → 2 padding chars
ABQUI=2 bytes → 1 padding char
ABCQUJD3 bytes → no padding needed

Casi d'uso comuni

Ispezionare payload JWT
I token JWT sono composti da tre segmenti codificati in Base64 URL-safe. Decodificare il secondo segmento (payload) rivela i claim: ID utente, ruoli, scadenza e altri metadati — senza necessità di una chiave di firma.
Leggere risposte API
Le API REST restituiscono frequentemente dati binari (contenuti di file, miniature, materiale crittografico) codificati in Base64 nelle risposte JSON. Decodifica il campo per leggere i dati originali.
Decodificare contenuto e-mail
I corpi e gli allegati delle e-mail MIME sono codificati in Base64. Decodificarli rivela il contenuto testo originale o permette di ricostruire gli allegati binari.
Estrarre secret Kubernetes
Kubernetes memorizza i valori segreti come Base64 nei manifest YAML. Decodificarli rivela le password, i token e le chiavi effettivi memorizzati nel cluster — utile per il debugging e l'audit.
Debug della configurazione
Le variabili d'ambiente e i segreti delle pipeline CI/CD sono spesso codificati in Base64 per una memorizzazione sicura in file di configurazione YAML o JSON. Decodificali per verificare i valori effettivi durante il debugging.
Decodificare URI di dati
Gli URI di dati incorporano risorse codificate in Base64 direttamente in HTML/CSS. Decodifica la porzione Base64 per estrarre l'immagine originale, il font o altra risorsa incorporata.

Errori comuni

Queste sono le cause più frequenti di errori di decodifica Base64 nella pratica:

Riempimento mancante
Le stringhe Base64 devono avere una lunghezza multipla di 4. Molte API e librerie JWT rimuovono i = finali per compattezza. Aggiungi il riempimento: il numero di = mancanti è (4 - lunghezza % 4) % 4.
Caratteri URL-safe non convertiti
Base64 URL-safe usa - e _ invece di + e /. Se passi Base64 URL-safe direttamente ad atob() o base64.b64decode(), fallirà. Sostituisci sempre - → + e _ → / prima di decodificare con librerie standard.
Spazi bianchi e interruzioni di riga
I certificati PEM, i dati MIME e il Base64 copiato e incollato spesso contengono interruzioni di riga ogni 76 caratteri. Rimuovi tutti gli spazi bianchi prima di decodificare per evitare InvalidCharacterError.
Output binario vs testo
Base64 può codificare qualsiasi dato binario, non solo testo. Se i dati originali erano un file binario (immagine, PDF), decodificarli come testo UTF-8 produrrà caratteri incomprensibili. Usa il metodo di output binario appropriato per payload non testuali.

Esempi di codice

Come decodificare una stringa Base64 nei linguaggi e ambienti più diffusi:

JavaScript (browser)
// Standard Base64
const decoded = decodeURIComponent(escape(atob(encoded)))

// URL-safe Base64 (restore padding first)
function decodeUrlSafe(str) {
  const padded = str.replace(/-/g, '+').replace(/_/g, '/')
  const pad = padded.length % 4
  return decodeURIComponent(escape(atob(padded + '='.repeat(pad ? 4 - pad : 0))))
}
Node.js
// Standard
const decoded = Buffer.from(encoded, 'base64').toString('utf8')

// URL-safe
const decoded = Buffer.from(encoded, 'base64url').toString('utf8')
Python
import base64

# Standard
decoded = base64.b64decode(encoded).decode('utf-8')

# URL-safe (add padding if missing)
padding = '=' * (-len(encoded) % 4)
decoded = base64.urlsafe_b64decode(encoded + padding).decode('utf-8')
CLI (bash)
# Standard
echo "SGVsbG8sIFdvcmxkIQ==" | base64 -d

# URL-safe (restore + and / first)
echo "SGVsbG8sIFdvcmxkIQ" | tr '-_' '+/' | base64 -d

Decoder Base64 vs. alternative

Più strumenti possono decodificare Base64, ma differiscono per privacy, velocità e comodità.

Questo strumento
Basato su browser, istantaneo, privato. Nessun dato inviato a nessun server. Gestisce Base64 standard e URL-safe, corregge automaticamente il padding mancante e funziona offline.
CLI (base64 -d)
Veloce per scripting e file di grandi dimensioni. Richiede un terminale. Necessita di normalizzazione manuale per input URL-safe (-_ → +/).
Strumenti generici
Curl, Postman, DevTools del browser e convertitori online possono tutti decodificare Base64. La comodità varia; alcuni inviano dati a server remoti.

Domande frequenti

Perché la decodifica mi dà caratteri incomprensibili?
La causa più comune è la decodifica di dati binari (immagini, file compressi) come testo UTF-8 — i byte binari spesso non formano sequenze Unicode valide. Un'altra causa è la decodifica di Base64 URL-safe (-_) con un decoder standard che si aspetta +/. Verifica quale variante usa la tua sorgente.
Cos'è InvalidCharacterError?
Questo errore del browser da atob() si verifica quando l'input contiene caratteri al di fuori dell'alfabeto Base64, come caratteri URL-safe (- o _), spazi bianchi, interruzioni di riga o caratteri non ASCII. Rimuovi gli spazi bianchi e converti i caratteri URL-safe prima di chiamare atob().
Come faccio a sapere se il mio Base64 è URL-safe o standard?
Cerca i caratteri - o _: se presenti, è Base64 URL-safe. Base64 standard usa + e /. Base64 URL-safe di solito omette anche i caratteri di riempimento =. I token JWT usano sempre Base64 URL-safe.
La decodifica Base64 può fallire silenziosamente?
Sì. Alcuni decoder ignorano silenziosamente i caratteri non validi invece di generare un errore, producendo output errato. Valida sempre che i tuoi dati decodificati corrispondano al formato atteso (JSON, intestazione immagine, ecc.).
C'è un limite di dimensione per la decodifica Base64?
Questo strumento basato su browser può gestire stringhe Base64 fino a pochi megabyte prima che l'interfaccia diventi lenta. Per file molto grandi, usa uno strumento CLI o un decoder lato server.
Perché Base64 termina con uno o due segni =?
= è il carattere di riempimento. Base64 codifica 3 byte in 4 caratteri. Se la lunghezza dei dati originali non è un multiplo di 3, uno o due caratteri = vengono aggiunti affinché la lunghezza totale dell'output sia un multiplo di 4. Un = significa 2 byte di input nell'ultimo gruppo; due == significa 1 byte di input.
Posso decodificare file binari, immagini o PDF?
Sì, ma l'output saranno dati binari grezzi che potrebbero non essere visualizzati correttamente come testo. Per i contenuti binari, è meglio usare il data URI direttamente in un tag '<'img'>' o '<'a'>', oppure salvare i byte decodificati in un file tramite script.
Esiste un limite di dimensione per la decodifica?
Questo strumento funziona interamente nel browser senza limiti lato server. I limiti pratici dipendono dalla memoria del tuo browser. Le stringhe Base64 molto grandi (oltre qualche MB) si gestiscono meglio con un tool CLI come base64 -d (Linux/macOS) o certutil -decode (Windows).