Cos'è Base64 e a cosa serve
Cosa fa questo convertitore
Incolli un testo e dici cosa farne: codificarlo in Base64 o decodificarlo. Il convertitore mostra il risultato, la sua lunghezza e di quanto la stringa è cresciuta o si è ridotta.
Entrambe le direzioni sono la stessa pagina e la stessa scheda. Cambia solo la scelta nella lista «Cosa fare».
Base64 non è cifratura
Base64 non nasconde nulla. È un modo per scrivere qualsiasi byte con ventisei lettere maiuscole, ventisei minuscole, dieci cifre e due segni speciali – un insieme che sopravvive di sicuro al passaggio attraverso sistemi costruiti solo per il testo: email, JSON, XML, attributi HTML.
Chiunque può decodificare Base64 all'istante, senza nessuna chiave. Una password scritta in Base64 è una password scritta in chiaro, solo meno evidente all'occhio.
Perché il risultato è più lungo dell'originale
Base64 prende tre byte e li scrive come quattro caratteri. Quindi la stringa cresce di circa un terzo: 100 byte diventano 136 caratteri compreso il riempimento. È una proprietà del formato stesso, non di questo convertitore.
Nell'altra direzione è lo stesso al contrario: il testo decodificato è sempre più corto del Base64 da cui viene.
Due alfabeti: standard e URL-safe
Il Base64 standard (RFC 4648) chiude l'alfabeto con i caratteri + e /, e riempie il vuoto fino a un multiplo di quattro con il segno =.
Tutti e tre i caratteri hanno un significato speciale in un indirizzo di pagina e in un nome di file, quindi lì rompono la stringa. Per questi casi lo standard descrive un secondo alfabeto: - invece di +, _ invece di / e nessun riempimento. Questo è URL-safe.
L'alfabeto lo scegli tu. Se incolli una stringa URL-safe con l'alfabeto standard, il convertitore risponde con un errore e suggerisce che esiste una seconda opzione – ma non traduce un alfabeto nell'altro in silenzio. Una traduzione silenziosa vorrebbe dire che hai ottenuto byte da una stringa che credevi standard, e nessuno te l'ha detto.
L'ingresso può fare a meno del riempimento =
In uscita l'alfabeto standard riempie sempre la stringa fino a una lunghezza multipla di quattro, e URL-safe non la riempie mai.
In ingresso sono accettati entrambi. Una coda di = persa è la cosa più comune che succede al Base64 per strada, e non c'è motivo di rifiutare per questo: qui non nasce nessuna ambiguità.
Spazi e a capo
Il Base64 da un'email, da un certificato PEM o da un terminale di solito è diviso in righe da 64 o 76 caratteri. Nella decodifica spazi, tabulazioni e a capo vengono tolti – non fanno parte dei dati.
Con il testo normale questo non si fa. Uno spazio a inizio riga è contenuto, e codificarlo insieme a tutto il resto è il compito.
Quando il risultato non è testo
Base64 trasporta qualsiasi byte, non solo testo. Una stringa può decodificarsi senza errori e rivelarsi comunque un'immagine, un archivio o un testo in un'altra codifica.
In quel caso il convertitore lo dice chiaramente: quanti byte sono usciti e che non sono testo UTF-8. Non li mostra con dei «quadratini» al posto dei caratteri e non finge di aver letto qualcosa. È un convertitore di testo, e la risposta onesta qui è dichiarare il limite.
Limite di lunghezza
Il campo accetta fino a 2000 caratteri. La richiesta passa per la barra degli indirizzi, e un indirizzo troppo lungo viene rifiutato dal server, non dalla pagina – quindi il limite sta qui, così che invece di un errore silenzioso tu veda una frase.
Domande frequenti su Base64
Base64 è una cifratura?
No. È una codifica: una trasformazione senza chiave e senza segreto. Chiunque può decodificarla in un secondo.
Perché ci sono i segni = alla fine della stringa?
È il riempimento. Base64 lavora a blocchi di tre byte; se l'ultimo blocco ha uno o due byte, la stringa viene completata con uno o due segni = fino a una lunghezza multipla di quattro.
Perché la mia stringa non si decodifica?
Tre motivi comuni: è scelto l'alfabeto sbagliato (una stringa URL-safe con quello standard), la stringa ha un carattere fuori dall'alfabeto, oppure la lunghezza non torna nemmeno tenendo conto del riempimento mancante.
Posso codificare un'immagine?
Con questo convertitore – no, prende il testo dal campo. Puoi decodificare il Base64 di un'immagine, ma il risultato sarà un messaggio che non è testo, e il numero di byte.
Le lettere accentate occupano più spazio?
Sì. In UTF-8 una lettera come è occupa due byte, non uno. Quindi «caffè» è cinque caratteri e sei byte, e Base64 conta i byte.
La risposta cambia nel tempo?
No. Il convertitore non guarda né l'orologio né la rete: la stessa richiesta dà sempre la stessa risposta.
Convertitore Base64 online – codifica e decodifica
Base64 compare ovunque i dati debbano passare per un canale costruito per il testo: nelle email, nei token, nelle impostazioni, negli indirizzi data:. Questo convertitore trasforma una stringa in entrambe le direzioni e dice quale alfabeto usa.
Come si usa
Incolla testo o Base64 nel campo, scegli la direzione e l'alfabeto – la scheda con la risposta compare da sola. Non c'è niente da cliccare.