base 64

Una delle codifiche più utilizzate per il web è sicuramente quella chiamata Base64. Difatti, viene utilizzata in uno dei principali strumenti che internet ci mette a disposizione, la posta elettronica: più specificatamente Base64 è usata per convertire le email da binario a ASCII e viceversa.

Il nome deriva dal fatto che utilizza 64 simboli proprio di ASCII, ognuno dei quali ha una corrispondenza binaria ben precisa. Questo algoritmo ovviamente non presenta nessuna caratteristica di sicurezza e quindi sconsigliamo l’utilizzo al fine di criptare le password o qualsiasi altro tipo di dato sensibile.

Come funziona

Il procedimento di conversione di Base64 è molto semplice: l’algoritmo prende ogni singolo simbolo (lettere, numeri e segni) che compongono una email, lo converte in binario e successivamente, a partire da questa conversione, in vari segmenti, ciascuno di essi composto da 6 bit.

Ogni segmento, a sua volta, è convertito in simbolo in base al  proprio valore numerico, secondo uno schema definito: le cifre da 0 a 25 corrispondono alle lettere maiuscole, dal 26 in poi le minuscole, i numeri, il segno dell’addizione quello della barra obliqua, lo slash.

base64

I primi utilizzi

I primi esempi di questo tipo di codifica furono utilizzati per le comunicazioni dial-up analogiche tra sistemi che usavano lo stesso sistema operativo e quindi la stessa tipologia di caratteri. Per esempio, uuencode (utilizzato allora sui sistemi UNIX) usa lettere maiuscole, cifre e molti caratteri di punteggiatura, ma non le lettere minuscole.

Base64 in PHP

PHP ha due funzioni native molto comode per convertire da ASCII a Base64 e viceversa. L’utilizzo è davvero molto semplice: per codificare una stringa ASCII in Base64 basterà:

mentre per convertire da Base64 in ASCII utilizzeremo:

Dai un’occhiata ai nostri corsi PHP, JavaScript, Laravel e Vue.js!

Base64 in Java

Con lo sviluppo di Java 8, codificare e decodificare stringhe di testo in Base64 è diventato molto più semplice rispetto al passato, grazie alla libreria java.util.Base64. Ecco un esempio pratico:

Corso PHP ad Oggetti LaraMind

Tool di conversione

Online esistono numerosi siti che offrono strumenti gratuiti per la conversione di stringhe alfanumeriche in Base64 e viceversa. Alcuni di questi tool offrono addirittura la scelta del charset che intendiamo utilizzare e quale linguaggio di programmazione stiamo utilizzando, per una compatibilità totale con il nostro codice; su altri tool è inoltre possibile caricare dei file testuali da convertire e quindi scaricare il risultato dell’elaborazione sul proprio computer. Possiamo citarne alcuni tra i più utilizzati:

 

 

2 comments

  1. Millie Price Rispondi

    Semplice, ma ben spiegato. Ecco un altro strumento, che vorrei suggerire, che ho trovato durante la mia ricerca su Google, è
    decode.com
    questo strumento non solo fornisce codifica / decodifica URL, codifica / decodifica base 64, ma fornisce anche oltre 100 utility web per gli utenti. L’aggiunta di quello strumento aiuterà sicuramente gli utenti.

Leave a reply