Base64-koding

Med Base64 Encoding-verktøyet kan du kryptere teksten du skriver inn med Base64-metoden. Hvis du ønsker det, kan du dekode den krypterte Base64-koden med Base64 Decode-verktøyet.

Hva er Base64-koding?

Base64 Encoding er et kodingsskjema som lar binære data transporteres i miljøer som bare bruker noen begrensede tegnkodinger (miljøer der ikke alle tegnkoder kan brukes, for eksempel xml, html, script, direktemeldingsapplikasjoner). Antall tegn i denne ordningen er 64, og tallet 64 i ordet Base64 kommer herfra.

Hvorfor bruke Base64-koding?

Behovet for Base64-koding stammer fra problemer som oppstår når medier overføres i rå binært format til tekstbaserte systemer. Fordi tekstbaserte systemer (som e-post) tolker binære data som et bredt spekter av tegn, inkludert spesialkommandotegn, blir de fleste binære dataene som sendes til overføringsmediet feiltolket av disse systemene og går tapt eller ødelagt i overføringen prosess.

En metode for å kode slike binære data på en måte som unngår slike overføringsproblemer er å sende dem som ren ASCII-tekst i Base64-kodet format. Dette er en av teknikkene som brukes av MIME-standarden for å sende andre data enn ren tekst. Mange programmeringsspråk, som PHP og Javascript, inkluderer Base64-kodings- og dekodingsfunksjoner for å tolke data som overføres ved hjelp av Base64-koding.

Base64-kodingslogikk

I Base64-koding er 3 * 8 biter = 24 biter med data bestående av 3 byte delt inn i 4 grupper på 6 biter. Tegnene som tilsvarer desimalverdiene mellom [0-64] av disse 4 6-bits gruppene matches fra Base64-tabellen for å kode. Antall tegn oppnådd som et resultat av Base64-koding må være et multiplum av 4. Kodede data som ikke er et multiplum av 4 er ikke gyldige Base64-data. Ved koding med Base64-algoritmen, når kodingen er fullført, hvis lengden på dataene ikke er et multiplum av 4, legges "=" (lik) tegnet til på slutten av kodingen til det er et multiplum av 4. For eksempel, hvis vi har 10-tegns Base64-kodede data som et resultat av kodingen, skal to "==" legges til på slutten.

Base64-kodingseksempel

Ta for eksempel de tre ASCII-tallene 155, 162 og 233. Disse tre tallene danner en binær strøm av 100110111010001011101001. En binær fil, for eksempel et bilde, inneholder en binær strøm som fungerer for titalls eller hundretusenvis av nuller og enere. En Base64-koder starter med å dele den binære strømmen i grupper på seks tegn: 100110 111010 001011 101001. Hver av disse grupperingene er oversatt til tallene 38, 58, 11 og 41. En seks-tegns binær strøm konverteres mellom binær (eller grunnleggende). 2) til desimaltegn (grunnlag-10) ved å kvadrere hver verdi representert med 1 i den binære matrisen med posisjonsfirkanten. Starter fra høyre og beveger seg til venstre og starter på null, representerer verdiene i den binære strømmen 2^0, så 2^1, så 2^2, så 2^3, så 2^4, så 2^ 5.

Her er en annen måte å se det på. Fra venstre er hver posisjon verdt 1, 2, 4, 8, 16 og 32. Hvis sporet har et binært tall 1, legger du til den verdien; hvis sporet har 0, mangler du. Binær matrise 100110 blir 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 desimal + 4 + 0 + 0 + 32. Base64-koding tar denne binære strengen og deler den inn i 6-bits verdier 38, 58, 11 og 41. Til slutt konverteres disse tallene til ASCII-tegn ved hjelp av Base64-kodingstabellen.