Codifica Base64

Con lo strumento di codifica Base64, puoi crittografare il testo immesso con il metodo Base64. Se lo desideri, puoi decodificare il codice Base64 crittografato con lo strumento Base64 Decode.

Che cos'è la codifica Base64?

Base64 Encoding è uno schema di codifica che consente il trasporto di dati binari in ambienti che utilizzano solo alcune codifiche di caratteri limitate (ambienti in cui non tutti i codici di carattere possono essere utilizzati, come xml, html, script, applicazioni di messaggistica istantanea). Il numero di caratteri in questo schema è 64 e il numero 64 nella parola Base64 deriva da qui.

Perché usare la codifica Base64?

La necessità della codifica Base64 deriva da problemi che sorgono quando i media vengono trasmessi in formato binario non elaborato a sistemi basati su testo. Poiché i sistemi basati su testo (come la posta elettronica) interpretano i dati binari come un'ampia gamma di caratteri, inclusi caratteri di comando speciali, la maggior parte dei dati binari trasmessi al supporto di trasferimento viene interpretata in modo errato da questi sistemi e viene persa o danneggiata nella trasmissione processi.

Un metodo per codificare tali dati binari in modo da evitare tali problemi di trasmissione consiste nell'inviarli come semplice testo ASCII in formato codificato Base64. Questa è una delle tecniche utilizzate dallo standard MIME per inviare dati diversi dal testo normale. Molti linguaggi di programmazione, come PHP e Javascript, includono funzioni di codifica e decodifica Base64 per interpretare i dati trasmessi utilizzando la codifica Base64.

Logica di codifica Base64

Nella codifica Base64, 3 * 8 bit = 24 bit di dati costituiti da 3 byte sono divisi in 4 gruppi di 6 bit. I caratteri corrispondenti ai valori decimali tra [0-64] di questi 4 gruppi a 6 bit vengono abbinati dalla tabella Base64 per la codifica. Il numero di caratteri ottenuto come risultato della codifica Base64 deve essere un multiplo di 4. I dati codificati che non sono multipli di 4 non sono dati Base64 validi. Quando si codifica con l'algoritmo Base64, quando la codifica è completa, se la lunghezza dei dati non è un multiplo di 4, il carattere "=" (uguale) viene aggiunto alla fine della codifica finché non diventa un multiplo di 4. Ad esempio, se disponiamo di dati codificati Base64 di 10 caratteri come risultato della codifica, due "==" devono essere aggiunti alla fine.

Esempio di codifica Base64

Ad esempio, prendi i tre numeri ASCII 155, 162 e 233. Questi tre numeri formano un flusso binario di 1001101111010001011101001. Un file binario come un'immagine contiene un flusso binario che funziona per decine o centinaia di migliaia di zeri e uno. Un codificatore Base64 inizia suddividendo il flusso binario in gruppi di sei caratteri: 100110 111010 001011 101001. Ciascuno di questi raggruppamenti viene tradotto nei numeri 38, 58, 11 e 41. Un flusso binario di sei caratteri viene convertito in binario (o di base). 2) ai caratteri decimali (base-10) quadrando ogni valore rappresentato da 1 nell'array binario dal quadrato posizionale. Partendo da destra e spostandosi a sinistra e partendo da zero, i valori nel flusso binario rappresentano 2^0, poi 2^1, poi 2^2, poi 2^3, poi 2^4, poi 2^ 5.

Ecco un altro modo per vederlo. Partendo da sinistra, ogni posizione vale 1, 2, 4, 8, 16 e 32. Se lo slot ha un numero binario 1, aggiungi quel valore; se lo slot ha 0, sei mancante. Array binario 100110 giri 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 decimale + 4 + 0 + 0 + 32. La codifica Base64 prende questa stringa binaria e la divide in valori a 6 bit 38, 58, 11 e 41. Infine, questi numeri vengono convertiti in caratteri ASCII utilizzando la tabella di codifica Base64.