# Encoder e decoder Base64

> Codifica e decodifica testo in Base64 online. Gestisce UTF-8, supporta il formato URL-safe e spiega il funzionamento. Gratis nel browser.

URL: https://acrafto.com/it/encoder-decoder-base64-online/

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

Hai bisogno di convertire testo leggibile in formato Base64 per usarlo nelle intestazioni HTTP, o viceversa, di decifrare il contenuto di un token API? Il nostro **Base64 Text Encoder & Decoder** è uno strumento specializzato per lavorare con stringhe di testo, in grado di gestire anche complessità come diacritici o caratteri speciali.

> **Stai lavorando con le immagini?**  
> Se il tuo codice inizia con `data:image/png...` o vuoi convertire un file in testo, questo strumento ti mostrerà solo caratteri privi di senso. Utilizza il nostro strumento specializzato per la conversione in immagine.

## Come funziona il formato Base64?

Molte persone usano Base64 quotidianamente, ma pochi sanno come funziona “sotto il cofano”. Non è magia, ma semplice matematica con i bit.

Il testo normale in un computer è memorizzato in gruppi di 8 bit (1 byte). Base64, tuttavia, utilizza un “alfabeto” di 64 caratteri (`A-Z`, `a-z`, `0-9`, `+`, `/`). Poiché `2^6 = 64`, un singolo carattere Base64 rappresenta esattamente **6 bit** di informazione.

**Processo di conversione (Algoritmo):**

1. Si prendono tre caratteri del tuo testo (3 × 8 bit = 24 bit).
2. Questi 24 bit vengono divisi in quattro gruppi di 6 bit.
3. Ad ogni gruppo viene assegnato un carattere dalla tabella Base64.

**Conseguenza:** Poiché trasformiamo 3 caratteri in 4 caratteri, la stringa Base64 risultante è sempre circa il **33% più lunga** del testo originale.

## Il problema del set di caratteri: Perché i comuni convertitori Base64 “rovinano” l’italiano (e le lingue simili)?

Se hai mai provato a codificare una parola come “Ciao” con un accento o un carattere speciale nella console del browser usando la funzione `btoa()`, probabilmente hai ottenuto un errore: *String contains characters outside of the Latin1 range.*

Base64 è stato originariamente progettato per caratteri ASCII a 7 bit. Tuttavia, i caratteri con diacritici, emoji e altri simboli speciali (UTF-8) occupano più byte in memoria (caratteri multibyte).

- Lettera `a` = 1 byte.
- Lettera `è` = 2 byte.
- Emoji 🚀 = 4 byte.

Il nostro strumento risolve questo problema. Prima della codifica Base64, convertiamo correttamente il testo in una sequenza di byte UTF-8. In questo modo puoi codificare in modo sicuro oggetti JSON, testi italiani e simboli moderni senza il rischio di corruzione dei dati.

## Dove viene utilizzata la codifica testuale Base64?

Mentre le immagini in Base64 servono principalmente per l’inclusione in CSS/HTML, il Base64 testuale ha usi completamente diversi nei sistemi backend:

### 1\. Autenticazione HTTP Basic

Quando ti autentichi a un’API, l’intestazione spesso appare così: `Authorization: Basic dXRlbnRlOnBhc3N3b3Jk` Dietro a questo codice si nasconde semplicemente un nome utente e una password combinati nel formato `utente:password`. Il nostro strumento ti permette di generare o controllare facilmente queste intestazioni.

### 2\. JSON Web Tokens (JWT)

Le moderne applicazioni web utilizzano i cosiddetti JWT per l’autenticazione. Un token di questo tipo appare come tre lunghe stringhe separate da un punto. La parte contenente i dati (Payload) è un semplice oggetto JSON codificato in Base64.

- **Suggerimento:** Prova a incollare qui la parte centrale del tuo token JWT e a decodificarla. Vedrai esattamente quali dati l’applicazione tiene su di te (ad es. ID utente, scadenza).

### 3\. File di configurazione (Kubernetes Secrets)

Piattaforme come Kubernetes memorizzano dati segreti (Secrets) nei file di configurazione YAML proprio in Base64. Non si tratta di crittografia, ma di un modo per memorizzare dati binari o testo con caratteri problematici (nuove righe, virgolette) in un file di testo.

## Cos’è la “codifica Base64 URL Safe” e perché è importante?

L’alfabeto Base64 standard include i caratteri `+` (più) e `/` (barra). Entrambi questi caratteri hanno un significato speciale negli indirizzi URL:

- `/` separa le directory.
- `+` viene spesso interpretato come uno spazio.

Se inviassi un Base64 standard in un parametro URL (ad es. `site.com?token=ab/cd+ef`), il server potrebbe interpretare i dati in modo errato.

**Soluzione (Modalità URL Safe):** Il nostro interruttore attiva la variante **Base64URL** (secondo RFC 4648), che esegue queste modifiche:

- `+` viene cambiato in `-` (trattino).
- `/` viene cambiato in `_` (sottolinea).
- Alla fine, i caratteri `=` (padding) vengono rimossi, poiché non sono necessari nell’URL.

---

## Mito: Base64 non è crittografia!

È importante capire una differenza fondamentale che i principianti spesso confondono:

1. **Codifica (Encoding - Base64):** Serve per la trasmissione dei dati. È come impacchettare qualcosa in una valigia per non romperla durante il viaggio. Chiunque trovi la valigia può aprirla (decodificarla) e vederne il contenuto. **Non è sicuro per i dati segreti.**
2. **Crittografia (Encryption - AES, RSA):** Blocca i dati con una chiave. Senza la chiave non è possibile accedere al contenuto.
3. **Hashing (Hashing - SHA, MD5):** Un processo unidirezionale (ad es. per la memorizzazione delle password). Dal risultato non è possibile ottenere il testo originale.

*Se hai bisogno di inviare una password o un dato sensibile, il solo Base64 non è sufficiente. Devi usare HTTPS (SSL/TLS), che cripta la trasmissione.*

---

## Domande Frequenti (FAQ)

### Cosa significano i caratteri "=" alla fine della stringa?

Questo è il cosiddetto "padding" (riempimento). Poiché Base64 codifica i dati in gruppi di 3 caratteri, può accadere che la lunghezza del testo originale non sia divisibile per tre. I caratteri \`=\` vengono aggiunti alla fine in modo che il decodificatore sappia quanti bit ignorare alla fine.

### Perché il testo decodificato appare "indecifrabile"?

Probabilmente stai cercando di decodificare dati che non sono testo. Se una stringa Base64 rappresenta un file compresso (ZIP), un'immagine o dati crittografati, la conversione in testo (UTF-8) non ha senso. Prova a scoprire l'origine dei dati.

### Lo strumento funziona offline?

Sì. Tutta la logica di conversione è scritta in JavaScript e viene eseguita direttamente nel tuo browser. Una volta caricata la pagina, puoi disconnetterti da internet e lo strumento continuerà a funzionare. I tuoi dati non vengono inviati da nessuna parte.

## Other languages

- Čeština (cs): [Base64 Encoder a Decoder](https://acrafto.com/cs/base64-decoder-encoder/) ([Markdown](https://acrafto.com/cs/base64-decoder-encoder/index.md))
- Slovenčina (sk): [Base64 kódovač a dekódovač](https://acrafto.com/sk/base64-kodovac-dekodovac-online/) ([Markdown](https://acrafto.com/sk/base64-kodovac-dekodovac-online/index.md))
- English (en): [Base64 Encoder and Decoder](https://acrafto.com/en/base64-encoder-decoder/) ([Markdown](https://acrafto.com/en/base64-encoder-decoder/index.md))
- Deutsch (de): [Base64 Encoder und Decoder](https://acrafto.com/de/base64-encoder-decoder-online/) ([Markdown](https://acrafto.com/de/base64-encoder-decoder-online/index.md))
- Français (fr): [Encodeur et décodeur Base64](https://acrafto.com/fr/encodeur-decodeur-base64/) ([Markdown](https://acrafto.com/fr/encodeur-decodeur-base64/index.md))
- Español (es): [Codificador y decodificador Base64](https://acrafto.com/es/codificador-base64-decodificador-online/) ([Markdown](https://acrafto.com/es/codificador-base64-decodificador-online/index.md))
- Português (pt): [Codificador e decodificador Base64](https://acrafto.com/pt/encoder-decoder-base64-online/) ([Markdown](https://acrafto.com/pt/encoder-decoder-base64-online/index.md))
- Nederlands (nl): [Base64 encoder en decoder](https://acrafto.com/nl/base64-encoder-decoder/) ([Markdown](https://acrafto.com/nl/base64-encoder-decoder/index.md))
- Polski (pl): [Koder i dekoder Base64](https://acrafto.com/pl/koder-dekoder-base64-online/) ([Markdown](https://acrafto.com/pl/koder-dekoder-base64-online/index.md))
- Română (ro): [Base64 encoder și decoder](https://acrafto.com/ro/codor-decodor-base64/) ([Markdown](https://acrafto.com/ro/codor-decodor-base64/index.md))
- Magyar (hu): [Base64 kódoló és dekódoló](https://acrafto.com/hu/base64-kodolo-dekodolo-online/) ([Markdown](https://acrafto.com/hu/base64-kodolo-dekodolo-online/index.md))
- Ελληνικά (el): [Κωδικοποίηση και αποκωδικοποίηση Base64](https://acrafto.com/el/base64-encoder-decoder/) ([Markdown](https://acrafto.com/el/base64-encoder-decoder/index.md))
- Български (bg): [Base64 енкодер и декодер](https://acrafto.com/bg/base64-enkoder-dekoder-onlain/) ([Markdown](https://acrafto.com/bg/base64-enkoder-dekoder-onlain/index.md))
- Hrvatski (hr): [Base64 koder i dekoder](https://acrafto.com/hr/base64-koder-dekoder/) ([Markdown](https://acrafto.com/hr/base64-koder-dekoder/index.md))
- Slovenščina (sl): [Base64 kodirnik in dekodirnik](https://acrafto.com/sl/base64-kodirnik-dekodirnik/) ([Markdown](https://acrafto.com/sl/base64-kodirnik-dekodirnik/index.md))
- Eesti (et): [Base64 kodeerija ja dekodeerija](https://acrafto.com/et/base64-teisendaja/) ([Markdown](https://acrafto.com/et/base64-teisendaja/index.md))
- Latviešu (lv): [Base64 kodētājs un dekodētājs](https://acrafto.com/lv/base64-kodetajs-dekodetajs/) ([Markdown](https://acrafto.com/lv/base64-kodetajs-dekodetajs/index.md))
- Lietuvių (lt): [Base64 koduotuvas ir dekoduotuvas](https://acrafto.com/lt/base64-koduotuvas-dekoduotuvas/) ([Markdown](https://acrafto.com/lt/base64-koduotuvas-dekoduotuvas/index.md))
- Svenska (sv): [Base64 encode och decode](https://acrafto.com/sv/base64-kodare-avkodare-online/) ([Markdown](https://acrafto.com/sv/base64-kodare-avkodare-online/index.md))
- Dansk (da): [Base64 encoder og dekoder](https://acrafto.com/da/base64-encoder-dekoder-online/) ([Markdown](https://acrafto.com/da/base64-encoder-dekoder-online/index.md))
- Suomi (fi): [Base64-kooderi ja -dekooderi](https://acrafto.com/fi/base64-kooderi-dekooderi/) ([Markdown](https://acrafto.com/fi/base64-kooderi-dekooderi/index.md))
- Norsk (no): [Base64-enkoder og -dekoder](https://acrafto.com/no/base64-enkoder-dekoder/) ([Markdown](https://acrafto.com/no/base64-enkoder-dekoder/index.md))
- Українська (uk): [Base64 кодер і декодер](https://acrafto.com/uk/base64-koder-dekoder-onlajn/) ([Markdown](https://acrafto.com/uk/base64-koder-dekoder-onlajn/index.md))
- Русский (ru): [Base64 кодировщик и декодировщик](https://acrafto.com/ru/base64-koder-dekoder/) ([Markdown](https://acrafto.com/ru/base64-koder-dekoder/index.md))
- Српски (sr): [Base64 enkoder i dekoder](https://acrafto.com/sr/base64-enkoder-dekoder-online/) ([Markdown](https://acrafto.com/sr/base64-enkoder-dekoder-online/index.md))
- Македонски (mk): [Base64 енкодер и декодер](https://acrafto.com/mk/base64-converter/) ([Markdown](https://acrafto.com/mk/base64-converter/index.md))
- Bosanski (bs): [Base64 koder i dekoder](https://acrafto.com/bs/base64-koder-dekoder/) ([Markdown](https://acrafto.com/bs/base64-koder-dekoder/index.md))
- Shqip (sq): [Base64 kodues dhe dekodues](https://acrafto.com/sq/kodues-dekodues-base64-online/) ([Markdown](https://acrafto.com/sq/kodues-dekodues-base64-online/index.md))
- Türkçe (tr): [Base64 kodlayıcı ve çözücü](https://acrafto.com/tr/base64-kodlayici-cozucu-online/) ([Markdown](https://acrafto.com/tr/base64-kodlayici-cozucu-online/index.md))
- 日本語 (ja): [Base64エンコード・デコード](https://acrafto.com/ja/base64-encoder-decoder/) ([Markdown](https://acrafto.com/ja/base64-encoder-decoder/index.md))
- 한국어 (ko): [Base64 인코딩 디코딩](https://acrafto.com/ko/base64-encoder-decoder/) ([Markdown](https://acrafto.com/ko/base64-encoder-decoder/index.md))
- العربية (ar): [ترميز وفك ترميز Base64](https://acrafto.com/ar/base64-encoder-decoder/) ([Markdown](https://acrafto.com/ar/base64-encoder-decoder/index.md))
- हिन्दी (hi): [Base64 एन्कोडर और डिकोडर](https://acrafto.com/hi/base64-encoder-decoder-online/) ([Markdown](https://acrafto.com/hi/base64-encoder-decoder-online/index.md))
- Bahasa Indonesia (id): [Base64 encode dan decode](https://acrafto.com/id/konverter-base64-online/) ([Markdown](https://acrafto.com/id/konverter-base64-online/index.md))
- Tiếng Việt (vi): [Mã hóa và giải mã Base64](https://acrafto.com/vi/base64-ma-hoa-giai-ma-online/) ([Markdown](https://acrafto.com/vi/base64-ma-hoa-giai-ma-online/index.md))
- ไทย (th): [เข้ารหัสและถอดรหัส Base64](https://acrafto.com/th/base64-encoder-decoder/) ([Markdown](https://acrafto.com/th/base64-encoder-decoder/index.md))
- עברית (he): [קידוד ופענוח Base64](https://acrafto.com/he/base64-encoder-decoder/) ([Markdown](https://acrafto.com/he/base64-encoder-decoder/index.md))
