Hvað er þetta verkfæri?
Base64 er dulkóðunarkerfi sem breytir tvíundar- eða textagögnum í mengi af 64 öruggum ASCII-stöfum (A–Z, a–z, 0–9, + og /). Það er notað alls staðar í hugbúnaði: til að fella myndir inn í HTML/CSS, í HTTP Basic auðkenningarhausum, tölvupóstviðhengjum (MIME), JSON Web Tokens, og API-gögnum sem verða að komast í gegnum leiðir sem aðeins ráða við texta.
Mikilvægt: Base64 er dulkóðun, ekki dulritun. Hver sem er getur afkóðað það. Tilgangur þess er að gera gögn örugg til flutnings gegnum kerfi sem skilja aðeins texta — ekki að halda þeim leyndum.
Base64 er formlega skilgreint í RFC 4648, sem skilgreinir einnig URL-örugga afbrigðið sem notað er í JWT-tólum og vefþjónustum: það skiptir út + fyrir - og / fyrir _ svo dulkóðaði strengurinn geti ferðast innan í vefslóð án prósentudulkóðunar.
Af hverju að nota það?
- Afkóðaðu API-tákn, JWT-hluta og auðkenningarhausa til að sjá hvað leynist í þeim.
- Dulkóðaðu texta fyrir data URI, stillingarskrár eða HTTP-hausa.
- Öruggt fyrir UTF-8: emoji og önnur en latnesk tákn dulkóðast og afkóðast rétt.
- 100% einkalíf — umbreytingin fer fram í vafranum þínum, ekkert er hlaðið upp.
- Ókeypis, engin innskráning, engar stærðartakmarkanir.
Hvernig á að nota það
- Skrifaðu eða límdu efnið þitt í innsláttarreitinn.
- Smelltu á „Dulkóða“ til að breyta texta í Base64, eða „Afkóða“ til að breyta Base64 aftur í texta.
- Ef afkóðun mistekst er innslátturinn ekki gilt Base64 — athugaðu hvort tákn vanti eða hvort auka bil séu til staðar.
- Smelltu á „Afrita“ til að afrita niðurstöðuna.
Dæmi
Inntak
Hello, CodeKitHub! 你好 👋Úttak
SGVsbG8sIENvZGVLaXRIdWIhIOS9oOWlvSDwn5GLTaktu eftir hvernig kínversku táknin og emoji-táknið lifa af heilan hring — það er UTF-8-örugga hlutinn.
Hagnýt ráð
- JWT-tákn eru þrír Base64-hlutar tengdir með punktum — afkóðaðu fyrstu tvo (haus og innihald) hvorn í sínu lagi til að lesa þá; þriðji hlutinn er tvíundarundirskrift og lítur út eins og hávaði.
- Ef afkóðun mistekst á JWT-hluta er það base64url-dulkóðun: skiptu fyrst út - fyrir + og _ fyrir / (staðlaðar tól gera ráð fyrir +/-stafrófinu).
- Bil og línuskil innan í Base64-streng eru yfirleitt skaðlausar leifar frá tölvupósti eða atburðaskrám, en vantandi lokauppfylling = er það oft ekki — athugaðu lengdina áður en þú gengur út frá því að gögnin séu skemmd.
- Base64 blæs gögn upp um u.þ.b. 33%. Fínt fyrir lítil gögn; fyrir myndir sem eru stærri en nokkur KB er raunveruleg skrá nánast alltaf betri kostur en data URI.
Raunveruleg notkunartilvik
Þrjú tilvik sem koma fólki hingað daglega: að lesa hvað leynist í Authorization-haus eða JWT-tákni, að afkóða reit í webhook/API-gögnum sem barst pakkað inn í Base64 (oft JSON — sniðgangdu það eftir afkóðun), og að útbúa data URI eða Basic-Auth-streng handvirkt við villuleit.
Fyrir tvíundargögn (myndir, skrár) skaltu muna að þegar afkóðað er sem texti fæst bull (mojibake) — gögnin geta verið fullkomlega gild, þau eru einfaldlega ekki texti. Dulkóðun/afkóðun tvíundargagna á heima í forritskóða; þetta tól er hannað fyrir texta-tilvikin.
Hvernig á að greina bilun í afkóðun
Bilanir í Base64-afkóðun má nánast alltaf rekja til einnar af þremur ástæðum, í röð eftir tíðni: innsláttinn var í raun base64url (notar - og _ í stað staðlaðra + og /, algengt í JWT og vefslóðaröruggum aðstæðum) og þarf að skipta þeim táknum til baka áður en stöðluð afkóðun samþykkir hann; strengurinn styttist einhvers staðar á leiðinni (afritun-líming sem missti af síðustu táknunum, eða atburðalína sem var klippt af), sem má greina því lengd gilds Base64-strengs er alltaf margfeldi af 4 þegar uppfylling er tekin með í reikninginn; eða óviðkomandi tákn (auka bil, villuleg lína, óvart tvítekið tákn) bárust inn við afritun, sem er ástæðan fyrir því að að líma beint úr upprunalegu heimildinni frekar en að endurskrifa er alltaf öruggara.
→
Algengar spurningar
Er Base64 dulritun?
Nei. Base64 er afturkræf dulkóðun sem hver sem er getur afkóðað — hún veitir enga vernd. Ef þú þarft að vernda gögn skaltu nota alvöru dulritun (eins og AES); Base64 er einungis til að gera gögn örugg til flutnings sem texta.
Af hverju lítur afkóðaða úttakið mitt út eins og bull?
Annaðhvort er innsláturinn ekki í raun Base64, hann hefur verið styttur, eða upprunalegu gögnin voru tvíundargögn (eins og mynd) frekar en texti. Tvíundargögn birtast ekki sem læsileg tákn.
Hvað eru = táknin í lokin?
Uppfylling (padding). Base64 vinnur í blokkum af 3 inntaksbætum → 4 úttakstáknum. Þegar lengd inntaksins er ekki deilanleg með 3 fylla eitt eða tvö = tákn upp í síðustu blokkina.
Virkar þetta tól með emoji og kínverskum táknum?
Já. Það dulkóðar texta fyrst sem UTF-8-bæti, sem er staðlaða aðferðin. Einfaldari tól sem nota btoa() beint mistakast með öllum táknum utan Latin-1 — þetta tól gerir það ekki.
Er gögnunum mínum hlaðið upp einhvers staðar?
Nei. Dulkóðun og afkóðun fer alfarið fram í vafranum þínum með JavaScript. Gögnin þín yfirgefa aldrei tækið þitt.