„Base64" teksto į neapdorotų dvejetainių duomenų keitiklis
„Base64" teksto konvertavimas į neapdorotus dvejetainius duomenis pašalina ASCII kodavimo perteklių, kad būtų atkurtas pradinis 8 bitų baitų srautas.
Formatų palyginimas ir techninės specifikacijos
| Specifikacija | BASE64 | BIN |
|---|---|---|
| MIME tipas | text/plain | application/octet-stream |
| Tipas | radix-64 ASCII encoding | raw binary byte stream |
| Glaudinimas | none (33% size expansion over raw binary) | none |
| Standartinė specifikacija | IETF RFC 4648 | Raw Binary Byte Stream Specification |
| Maginės baitų antraštės (Magic Bytes) | A-Z a-z 0-9 + / = (Base64 character set) | Raw arbitrary binary bytes |
Formato apžvalga ir taikymas
„Base64" tekste naudojamas saugus 64 spausdinamų ASCII simbolių rinkinys, leidžiantis saugiai perduoti dvejetainius duomenis per tik tekstui skirtus ryšio kanalus, pavyzdžiui, el. paštą arba JSON naudingąją apkrovą. Tačiau sistemos negali vykdyti arba apdoroti „Base64" formato teksto, kol jis nėra grąžintas į pradinę baitų struktūrą. Programinės įrangos kūrėjai dažnai atlieka šį konvertavimą išskirdami įterptuosius paveikslėlius, šriftus arba sukompiliuotas vykdomąsias naudingąsias apkrovas iš konfigūracijos failų, API atsakymų arba žiniatinklio taikomųjų programų išteklių. Perėjimas nuo „Base64" atgal prie neapdorotų dvejetainių duomenų reikalauja atšaukti kodavimo metu naudotą matematiką. Keturias „Base64" teksto simbolių grupes atitinka lygiai trys pagrindinių dvejetainių duomenų baitai. Šis procesas pašalina formatavimo simbolius ir atstato tikslią 1 ir 0 seką, kurios reikalauja operacinės sistemos, aparatinės įrangos įrenginiai ir savieji dvejetainiai analizatoriai.
Techninės specifikacijos ir kodekų apžvalga
„Base64" tekstas identifikuojamas pagal text/plain MIME tipą ir remiasi radix-64 ASCII kodavimu be jokio suspaudimo, todėl failo dydis padidėja trisdešimt trimis procentais lyginant su pradiniais failais. Neapdorotam dvejetainiam failui naudojamas application/octet-stream MIME tipo formatas, kad būtų pateiktas nesuformatuotas baitų srautas. Nė vienas formatas nenaudoja suspaudimo algoritmų, o tai reiškia, kad konvertavimas yra visiškai be nuostolių. „Base64" neturi magiškųjų baitų antraščių, nes tai tik teksto vaizdavimas, tačiau gautame neapdorotame dvejetainiam faile iššifruoto baitų srauto pačioje pradžioje dažnai atsiras standartiniai failų parašai, tokie kaip „PK" ZIP archyvams arba „MZ" „Windows" vykdomiems failams.
OS ir naršyklės suderinamumas
Operacinės sistemos, tokios kaip „Windows", „macOS" ir „Linux", apdoroja neapdorotus dvejetainius failus savituoju būdu per sisteminius kvietimus ir komandų eilutės įrankius. Šiuolaikinės naršyklės tvarko dvejetainius duomenis naudodamos Fetch API ir TypedArrays, leisdamos kūrėjams dekoduoti „Base64" eilutes tiesiogiai „JavaScript" kalboje naudojant atob funkciją prieš įrašant baitus į Blob objektą. Mobiliosios „iOS" ir „Android" operacinės sistemos efektyviai skaito dvejetainius failus per vietines programų smėlio dėžes, jei pritaikyti tinkami failų plėtiniai ir leidimai.
💡 Naudinga informacija
Prieš pradedant dekodavimo procesą, visada patikrinkite, ar jūsų „Base64" teksto eilutėje nėra nepageidaujamų tarpų arba naujos eilutės simbolių, nes nuklydę simboliai gali sugadinti išvesties baitų seką.
Formatų palyginimas ir techninės specifikacijos
10 megabaitų neapdorotas dvejetainis failas išsiplečia iki maždaug 13,3 megabaito, kai jis užkoduojamas kaip „Base64" tekstas dėl 33 procentų dydžio pertekliaus. Mažesnio neapdoroto dvejetainio failo perkėlimas užtrunka apie 0,02 sekundės naudojant 5 Gbps šviesolaidinį ryšį, maždaug 0,2 sekundės greitu 5G ryšiu ir beveik 2 sekundes standartiniame 4G mobiliojo ryšio tinkle.
Dažnai užduodami klausimai
Kaip konvertuoti „Base64" tekstą į neapdorotus dvejetainius duomenis neprarandant kokybės?
Kadangi „Base64" yra tiesiog dvejetainių duomenų teksto apvalkalas ir nenaudoja jokio suspaudimo, jo dekodavimas atgal į neapdorotus dvejetainius duomenis yra visiškai be nuostolių. Kiekvienas originalus baitas matematiškai atstatomas be jokio pagrindinių duomenų pablogėjimo.
Kuo skiriasi „Base64" tekstas ir neapdoroti dvejetainiai duomenys?
„Base64" tekstas yra saugus, tik tekstui skirtas duomenų vaizdavimas, naudojantis spausdinamus ASCII simbolius, kurie padidina failo dydį 33 procentais. Neapdorotieji dvejetainiai duomenys yra vietinis, nesuformatuotas 8 bitų baitų srautas, kurį kompiuteriai ir aparatinė įranga vykdo arba atvaizduoja tiesiogiai.