Base64 kodiranje i dekodiranje
Besplatan Base64 koder i dekoder sa punom podrškom za UTF-8 i opcijom base64url. Radi u tvom pregledaču, ništa se ne otprema na server.
Kako da koristiš Base64 koder i dekoder
- Izaberi da li želiš da tekst kodiraš u Base64 ili da Base64 dekodiraš nazad u tekst.
- Upiši ili nalepi unos u tekstualno polje. Podržana su slova sa dijakriticima, pisma koja nisu latinica i emodžiji.
- Ako će se rezultat koristiti u URL-u, nazivu fajla ili JSON Web Tokenu, uključi opciju Bezbedno za URL (base64url) da dobiješ base64url varijantu.
- Pročitaj rezultat i kopiraj ga. Ako dekodiraš, a unos nije ispravan Base64, poruka o grešci će ti to reći umesto da prikaže besmislicu.
Šta je Base64?
Base64 je način da se proizvoljni bajtovi predstave pomoću samo 64 štampljiva ASCII znaka: velikih slova A–Z, malih slova a–z, cifara 0–9 i dva simbola + i /. Znak = služi kao dopuna na kraju. Postoji zato što su mnogi sistemi osmišljeni da prenose tekst, a ne sirove binarne podatke. Tela e-poruka, HTTP zaglavlja, XML i JSON dokumenti i data URL-ovi očekuju znakove koji će preživeti kopiranje, beleženje i prenos bez promene.
Algoritam radi nad grupama od tri bajta (24 bita) i deli ih na četiri vrednosti od po 6 bitova, a svaka se preslikava u jedan od 64 znaka. Zato je Base64 izlaz uvek oko 33% veći od ulaza: svaka 3 bajta postaju 4 znaka. Kad dužina ulaza nije deljiva sa tri, dodaju se jedan ili dva znaka = da dužina izlaza bude deljiva sa četiri. Na primer, reč Hi se kodira u SGk=, a Hello u SGVsbG8=.
Tekst, bajtovi i UTF-8
Base64 kodira bajtove, a ne znakove, pa tekst prvo mora da se pretvori u bajtove. Ovaj alat koristi UTF-8, kodiranje koje koristi gotovo svaka moderna veb-stranica i API. To znači da café postaje Y2Fmw6k=, a emodži poput 👍 (četiri bajta u UTF-8) ispravno se kodira i dekodira nazad u isti emodži. Mnoge brze skripte koje se oslanjaju na stariju funkciju pregledača btoa() ne rade ni za šta van Latin-1 skupa. Ovaj alat nema to ograničenje.
Standardni Base64 i base64url
Standardni Base64 koristi + i /, koji imaju posebno značenje u URL-ovima i putanjama fajlova. Varijanta bezbedna za URL, zvana base64url, menja + u - i / u _, a obično izostavlja i dopunu =. To je format koji se koristi u JSON Web Tokenima (JWT), u mnogim OAuth parametrima i u skraćivačima linkova. Uključi opciju Bezbedno za URL (base64url) kad ti treba taj format, a isključi je za prilog e-pošte, data URL-ove ili konfiguracione fajlove koji očekuju standardni Base64.
Base64 nije šifrovanje
Ovo je najčešće nesporazum. Base64 je kodiranje: nema ključ ni tajnu i svako ga može trenutno poništiti. Kodiranje lozinke, API ključa ili ličnih podataka u Base64 ne štiti ih ni na koji način. HTTP Basic autentifikacija, na primer, šalje korisnik:lozinka u Base64, zbog čega sme da se koristi samo preko HTTPS-a. Ako ti treba poverljivost, koristi pravo šifrovanje (poput AES-a) ili heš lozinke (poput Argon2 ili bcrypt), a ne Base64.
Privatnost
Sva obrada se odvija lokalno u tvom pregledaču pomoću JavaScripta. Tekst koji upišeš nikada se ne šalje serveru, ne čuva se i ne beleži, pa možeš bezbedno da pregledaš tokene ili vrednosti iz konfiguracije. Alat radi samo sa tekstom i ne prima fajlove.
Česta pitanja
Zašto dekodirani tekst izgleda kao nasumični simboli?
Base64 niz verovatno predstavlja binarne podatke, poput slike, kompresovanog fajla ili šifrovanog sadržaja, a ne tekst. Dekodiranje daje ispravne bajtove, ali oni nisu smislen UTF-8 tekst. Do toga može doći i ako je originalni tekst kodiran drugim skupom znakova, a ne UTF-8.
Zašto alat kaže da moj Base64 nije ispravan?
Ispravan Base64 sadrži samo 64 dozvoljena znaka i opcionu dopunu =, a njegova dužina mora da odgovara grupisanju po 4 znaka. Uobičajeni uzroci su slučajno kopirani suvišni znaci, skraćen niz ili base64url niz (sa - i _) dekodiran bez uključene opcije Bezbedno za URL (base64url).
Mogu li da kodiram slike ili druge fajlove?
Ne. Ovaj alat je namenjen samo tekstu. Za ugrađivanje slike u HTML ili CSS potreban ti je alat koji čita sirove bajtove fajla i pravi data URL.
Da li je Base64 bezbedan za čuvanje lozinki?
Ne. Base64 svako može da dekodira za delić sekunde. Lozinke treba čuvati pomoću posebnog sporog algoritma za heširanje, kao što su Argon2, scrypt ili bcrypt.
Koja je razlika između Base64 sa dopunom i bez nje?
Dopuna znakom = samo čini dužinu izlaza deljivom sa četiri i ne nosi nikakvu informaciju. Većina dekodera može da rekonstruiše podatke i bez nje. base64url obično izostavlja dopunu jer je = sam po sebi rezervisan znak u URL-ovima.
Srodni alati
- URL koder i dekoder Besplatan URL koder i dekoder. Procentno kodiraj parametre upita ili cele adrese, dekodiraj %XX sekvence i tretiraj + kao razmak. Radi u pregledaču.
- JSON formater i validator Besplatan JSON formater i validator koji sređuje, minifikuje i proverava JSON u pregledaču, sa sintaksnim greškama prijavljenim po redu i koloni.
- UUID generator Besplatan UUID generator za UUID verzije 4 i 7. Napravi do 1.000 odjednom, velikim slovima ili bez crtica, pa kopiraj ili preuzmi kao .txt.