Base64 kodeerija ja dekodeerija
Tasuta Base64 kodeerija ja dekodeerija täieliku UTF-8 toe ning base64url valikuga. Töötab täielikult sinu brauseris, midagi ei saadeta serverisse.
Kuidas Base64 kodeerijat ja dekodeerijat kasutada
- Vali, kas soovid teksti Base64-ks kodeerida või Base64 tagasi tekstiks dekodeerida.
- Kirjuta või kleebi sisend tekstikasti. Toetatud on täpitähed, mitte-ladina kirjad ja emojid.
- Kui tulemust kasutatakse URL-is, failinimes või JSON Web Tokenis, lülita sisse valik URL-i jaoks turvaline, et saada base64url-variant.
- Loe tulemus ja kopeeri see. Kui dekodeerid ja sisend ei ole korrektne Base64, annab veateade sellest teada, selle asemel et tekitada mõttetut teksti.
Mis on Base64?
Base64 on viis esitada suvalisi baite ainult 64 prinditava ASCII-märgiga: suurtähed A–Z, väiketähed a–z, numbrid 0–9 ja kaks sümbolit + ja /. Lõpus kasutatakse täitena märki =. See on olemas seetõttu, et paljud süsteemid on mõeldud teksti, mitte toorete binaarandmete edastamiseks. E-kirjade sisu, HTTP päised, XML- ja JSON-dokumendid ning andme-URL-id eeldavad märke, mis jäävad kopeerimisel, logimisel ja edastamisel muutumatuks.
Algoritm töötab kolme baidi (24 biti) rühmadega ja jagab need neljaks 6-bitiseks väärtuseks, millest igaüks vastab ühele 64 märgist. Seepärast on Base64 väljund alati umbes 33% suurem kui sisend: iga 3 baiti muutub 4 märgiks. Kui sisendi pikkus ei jagu kolmega, lisatakse üks või kaks märki =, et väljundi pikkus jaguks neljaga. Näiteks sõna Hi kodeeritakse kujule SGk= ja Hello kujule SGVsbG8=.
Tekst, baidid ja UTF-8
Base64 kodeerib baite, mitte märke, seega tuleb tekst kõigepealt baitideks muuta. Tööriist kasutab UTF-8, mida kasutab peaaegu iga tänapäevane veebileht ja API. See tähendab, et café muutub kujuks Y2Fmw6k= ning emoji nagu 👍 (neli baiti UTF-8-s) kodeeritakse õigesti ja dekodeeritakse tagasi samaks emojiks. Paljud kiired skriptid, mis tuginevad brauseri vanale funktsioonile btoa(), ebaõnnestuvad kõige peal, mis ei kuulu Latin-1 hulka; sellel tööriistal seda piirangut ei ole.
Tavaline Base64 ja base64url
Tavaline Base64 kasutab märke + ja /, millel on URL-ides ja failiteedes eri tähendus. URL-i jaoks turvaline variant, base64url, asendab + märgiga - ja / märgiga _ ning jätab tavaliselt täite = ära. Seda vormingut kasutatakse JSON Web Tokenites (JWT), paljudes OAuthi parameetrites ja lühilinkide teenustes. Lülita valik sisse, kui vajad seda vormingut, ja jäta välja e-kirja manuste, andme-URL-ide või seadistusfailide jaoks, mis ootavad tavalist Base64.
Base64 ei ole krüpteerimine
See on kõige tavalisem eksiarvamus. Base64 on kodeering: sellel ei ole võtit ega saladust ning igaüks saab selle koheselt tagasi pöörata. Parooli, API-võtme või isikuandmete Base64-ga kodeerimine ei kaitse neid mingil moel. HTTP Basic autentimine näiteks saadab kasutajanimi:parool Base64-na, seepärast tohib seda kasutada ainult HTTPS-i kaudu. Kui vajad konfidentsiaalsust, kasuta päris krüpteerimist (näiteks AES) või parooliräsi (näiteks Argon2 või bcrypt), mitte Base64.
Privaatsus
Kogu kodeerimine ja dekodeerimine toimub kohapeal sinu brauseris JavaScriptiga. Sisestatud teksti ei saadeta serverisse, ei salvestata ega logita, seega saad turvaliselt uurida tokeneid või seadistusväärtusi. Tööriist töötab ainult tekstiga; failide üleslaadimist see ei toeta.
Korduma kippuvad küsimused
Miks näeb dekodeeritud tekst välja nagu suvalised sümbolid?
Base64 string esindab tõenäoliselt binaarandmeid, näiteks pilti, pakitud faili või krüpteeritud sisu, mitte teksti. Dekodeerimine annab korrektsed baidid, kuid need ei ole mõistlik UTF-8 tekst. Nii võib juhtuda ka siis, kui algne tekst on kodeeritud muu märgistikuga kui UTF-8.
Miks ütleb tööriist, et minu Base64 on vigane?
Korrektne Base64 sisaldab ainult 64 lubatud märki ja valikulist täidet = ning selle pikkus peab sobima 4-märgiliste rühmadega. Tavalised põhjused on kogemata kaasa kopeeritud märgid, katkenud string või base64url-string (märkidega - ja _), mida dekodeeritakse ilma sisse lülitatud valikuta URL-i jaoks turvaline.
Kas saan kodeerida pilte või muid faile?
Ei. Tööriist on mõeldud ainult tekstile. Pildi manustamiseks HTML-i või CSS-i on vaja tööriista, mis loeb faili toorbaite ja loob andme-URL-i.
Kas Base64 on paroolide hoidmiseks turvaline?
Ei. Base64 saab igaüks murdosa sekundiga dekodeerida. Paroole tuleb hoida spetsiaalse aeglase räsialgoritmiga, näiteks Argon2, scrypt või bcrypt.
Mis vahe on täitega ja täiteta Base64-l?
Täide = teeb väljundi pikkuse ainult neljaga jaguvaks ega kanna mingit teavet. Enamik dekoodereid suudab andmed ka ilma selleta taastada. base64url jätab täite tavaliselt ära, sest = on URL-ides ise reserveeritud märk.
Seotud tööriistad
- URL-i kodeerija ja dekodeerija Tasuta URL-i kodeerija ja dekodeerija. Kodeeri päringuparameetrid või terved URL-id, dekodeeri %XX jadad ja käsitle + tühikuna. Töötab sinu brauseris.
- JSON-i vormindaja ja valideerija Tasuta JSON-i vormindaja ja valideerija, mis kaunistab, minimeerib ja kontrollib JSON-i sinu brauseris ning teatab süntaksivead rea ja veeruga.
- UUID generaator Tasuta UUID generaator versioonidele 4 ja 7. Loo korraga kuni 1000 UUID-d suurtähtedes või ilma sidekriipsudeta, seejärel kopeeri või laadi alla .txt failina.