🌐 IT

🔐 Convertitore Base64

Codifica testo e file in Base64 oppure decodifica stringhe Base64. Utile per incorporare immagini, comunicare con API e trasferire dati.

GUIDA

Scopri di piu

01

1. Che cos'è la codifica Base64?

Base64 è uno schema di codifica che converte dati binari in stringhe di testo ASCII. Utilizza solo 64 caratteri sicuri (A-Z, a-z, 0-9, +, /) per rappresentare tutti i dati binari. Si usa quando si trasmettono dati binari in ambienti che accettano solo testo, come allegati email, dati JSON e URL. Converte 3 byte di dati in 4 byte di caratteri, aumentando la dimensione di circa il 33%. Usa il carattere = per il padding, secondo lo standard RFC 4648.

02

2. Quando usare Base64

Base64 viene usato in diverse situazioni. Nello sviluppo web, incorpora piccole immagini direttamente in HTML/CSS per ridurre le richieste HTTP. I sistemi email (MIME) convertono gli allegati in testo per la trasmissione. Le API JSON lo usano per trasferire in modo sicuro dati binari. Si usa anche per memorizzare immagini o file nei database. Serve per passare dati complessi come parametri URL e nei token di autenticazione (JWT), dove viene impiegata la codifica Base64.

03

3. Base64 nello sviluppo web

Base64 è molto utile nello sviluppo web. Incorporare immagini direttamente tramite Data URI in CSS migliora la velocità di caricamento senza richieste HTTP separate. Esempio: background-image: url(data:image/png;base64,iVBORw0KG...). Tuttavia, è consigliato solo per immagini piccole sotto i 10KB; i file grandi non possono essere memorizzati nella cache e risultano più lenti. È adatto a immagini piccole come favicon, loghi e icone. In HTML5 Canvas, puoi generare immagini e convertirle in Base64 con toDataURL() per download o upload.

04

4. Codifica vs crittografia

Base64 è codifica, non crittografia. La codifica converte i dati in un altro formato, che chiunque può facilmente riportare all'originale. Serve per compatibilità e stabilità nella trasmissione, non per la sicurezza. La crittografia, invece, protegge i dati in modo che non possano essere decifrati senza una chiave. I dati codificati in Base64 non offrono alcuna sicurezza, quindi le informazioni sensibili (password, dati personali) non dovrebbero mai essere codificate solo in Base64. Se serve sicurezza, cripta prima (AES, RSA) e poi codifica in Base64.

05

5. Ottimizzare l'incorporamento delle immagini

L'incorporamento di immagini in Base64 ha vantaggi e svantaggi. Vantaggi: meno richieste HTTP, caricamento iniziale più rapido e gestione dei file più semplice. Svantaggi: aumento della dimensione del 33%, nessuna cache del browser e CSS/HTML più pesanti. Per questo motivo, usalo solo per loghi, icone e piccole immagini di sfondo (5-10KB o meno). Per immagini grandi, fornisci file separati e usa un CDN. Per immagini usate spesso, meglio fornirle come file per sfruttare la cache.

06

6. Base64 nelle API e nel trasferimento dati

Nelle API REST, Base64 viene spesso usato per il caricamento e il download dei file. JSON è basato su testo e non può includere direttamente dati binari, ma la conversione in Base64 consente di trasmettere immagini o documenti all'interno di JSON. Esempio: {"image": "data:image/png;base64,iVBORw..."}. Tuttavia, per file di grandi dimensioni, usare multipart/form-data è più efficiente. Anche GraphQL e WebSocket utilizzano Base64 per la trasmissione di dati binari. I payload dei token JWT sono anch'essi codificati in Base64, permettendo di verificarne il contenuto tramite decodifica.

Domande frequenti

Perché ricevo l'errore "Invalid Base64 string" durante la decodifica?
Succede quando l'input contiene caratteri fuori dall'alfabeto Base64, oppure il padding (=) manca o è danneggiato. Assicurati di aver copiato esattamente l'output codificato originale.
La codifica del testo produce risultati diversi rispetto alla codifica di un file caricato?
No, entrambe usano lo stesso processo di base. Il testo viene prima convertito in byte UTF-8 prima dell'applicazione di Base64, mentre i byte binari grezzi di un file vengono convertiti direttamente in Base64.
Il testo con caratteri coreani o emoji viene codificato correttamente?
Sì, poiché l'elaborazione è basata su UTF-8, i caratteri multibyte come coreano, giapponese ed emoji vengono codificati e decodificati correttamente.
La conversione in Base64 cripta il mio file?
No. Base64 è codifica, non crittografia, e chiunque può riportarla immediatamente ai dati originali. Password o dati sensibili non sono protetti dal solo Base64.
Posso convertire file di grandi dimensioni con questo strumento?
L'elaborazione avviene nella memoria del browser, quindi tecnicamente è possibile, ma i file più grandi generano un output circa il 33% più voluminoso e possono rallentare il browser - non è consigliato per file molto grandi.