Kigeuzi cha Bure

Kisimbaji cha Base64 / Avkodare

Sanidi maandishi au faili kwa Base64 na usimbue mifuatano ya Base64 papo hapo kwenye kivinjari chako. Bure, ya faragha, na hakuna upakiaji unaohitajika.

Kuhusu zana hii

Base64 ni mpango wa usimbaji unaowakilisha data ya jozi kama maandishi ya ASCII kwa kutumia herufi 64 zinazoweza kuchapishwa: A-Z, a-z, 0-9, pamoja na (+), na kufyeka (/), na sawa (=) zinazotumika kuweka pedi. Umbizo lilibuniwa awali ili kufanya viambatisho vya jozi viweze kudumu katika usafirishaji wa barua pepe 7-bit-safi, lakini umepanuka hadi matumizi kadhaa leo: URL za data katika HTML, JSON iliyo na data ya picha, upakiaji wa JWT, vichwa vya msingi vya uthibitishaji, na itifaki yoyote ya maandishi ambayo inahitaji kubeba baiti.

Usimbaji huchukua baiti 3 za ingizo na hutoa herufi 4 za ASCII za pato. Kwa hivyo, matokeo ni 33% zaidi ya ingizo - ambayo ni gharama ya kuweka mfumo wa jozi katika umbizo salama la maandishi. Kusimbua kunageuza mchakato haswa, kupata baiti asili kutoka kwa maandishi yaliyosimbwa.

Chombo hiki kinashughulikia pande zote mbili. Hali ya kusimba huchukua maandishi (au faili ya jozi kupitia upakiaji) na hutoa maandishi ya base64. Hali ya kusimbua huchukua maandishi ya base64 na kutoa maandishi asilia au mfumo wa jozi unaopakuliwa. Lahaja-salama ya URL (kutumia - na _ badala ya + na /) inatumika kwa ishara na vitambulishi.

Kwa nini Utumie Base64

Base64 ndiyo njia ya kawaida ya kupachika data ya binary katika miktadha ya maandishi pekee. Picha za ndani katika HTML hutumia URL za data (data:image/png;base64,...) ili ikoni ndogo iweze kusafirishwa pamoja na ukurasa bila ombi tofauti. Upakiaji wa malipo wa JSON unaobeba picha, vyeti, au saini huzisimba kama mifuatano ya base64. JWT tokens are three base64-encoded segments separated by dots.

Base64 pia hurekebisha ushughulikiaji wa herufi kwa itifaki ambazo hushughulikia vibaya 8-bit. Vijajuu vya uthibitishaji (Uthibitishaji wa kimsingi hutumia base64), viambatisho vya barua pepe, faili za usanidi zilizo na funguo, na API nyingi zinahitaji base64 kwa sababu mfumo wa jozi hauwezi kupita kwa njia za kuaminika.

Jinsi ya kutumia

Bandika data, chagua mwelekeo.

  1. Chagua usimbaji au usimbue: Encode hutoa maandishi ya base64 kutoka kwa pembejeo ya binary au maandishi. Kusimbua kunarudisha nyuma mchakato.
  2. Ongeza pembejeo: Kwa usimbaji, bandika maandishi au pakia faili ya jozi. Kwa kusimbua, bandika maandishi ya base64. Zana hutambua lahaja-salama ya URL kiotomatiki.
  3. Geuza: Kivinjari hutumia btoa kwa usimbaji na atob kwa kusimbua (kwa ushughulikiaji wa UTF-8 kwa maandishi yasiyo ya ASCII). Pato ni halisi na huamua.
  4. Nakili au pakua: Maandishi yaliyosimbwa yanaweza kupachikwa katika URL, JSON, URL za data za HTML, au itifaki yoyote inayotegemea maandishi. Vipakuliwa vya mfumo wa jozi vilivyochambuliwa kama faili iliyo na nadhani kwenye kiendelezi kinachofaa kulingana na aina ya faili iliyotambuliwa.

Kesi za Matumizi ya Kawaida

Maelezo ya Kiufundi

Ramani za Base64 kila biti 6 za ingizo kwa mojawapo ya vibambo 64 vya matokeo. Baiti tatu za pembejeo (biti 24) hutoa herufi nne za pato. Wakati urefu wa ingizo si kizidishio cha 3, kisimbaji huambatanisha ishara moja au mbili zinazolingana ili kuweka towe kwa mzidisho wa herufi 4.

URL-safe base64 (imefafanuliwa katika RFC 4648 sehemu ya 5) inachukua nafasi ya + na - na / na _ ili kutoa mifuatano salama kutumia katika URL na majina ya faili bila kuepuka zaidi. Alama za kuweka sawa wakati mwingine huachwa katika miktadha salama ya URL; avkodare kawaida kukubali aina zote mbili.

Btoa ya JavaScript na atob hushughulikia ASCII moja kwa moja lakini hushindwa kwenye mifuatano isiyo ya ASCII. Kwa maandishi ya UTF-8, kigeuzi hutumia TextEncoder/TextDecoder kubadilisha kati ya maandishi na mfumo wa jozi, kisha base64-husimba jozi. Hii inashughulikia emoji, herufi zenye lafu, na hati zisizo za Kilatini kwa usahihi.

Mazoea Bora

Maswali yanayoulizwa mara kwa mara

Usimbaji wa Base64 unatumika kwa nini?
Base64 hubadilisha data ya jozi hadi maandishi ya ASCII. Matumizi ya kawaida ni pamoja na kupachika picha katika HTML (URI za data), kusimba viambatisho vya barua pepe, kutuma data ya jozi katika API za JSON, na kuhifadhi blobs binary katika hifadhidata zinazotegemea maandishi.
Je, usimbaji wa Base64 husimba data yangu kwa njia fiche?
No. Base64 ni usimbaji, si usimbaji fiche. Mtu yeyote anaweza kusimbua mfuatano wa Base64. Imeundwa kwa ajili ya usafiri salama wa data, si usalama. Tumia usimbaji fiche halisi (AES, RSA) kwa data nyeti.
Kwa nini Base64 huongeza saizi ya faili?
Base64 inawakilisha kila baiti 3 za ingizo kama herufi 4 za ASCII, na kusababisha ongezeko la takriban 33%. Huu ni ubadilishanaji wa kuweza kupachika data ya jozi kwa usalama katika miundo ya maandishi.
Ninaweza kusimba picha kwa Base64?
Ndiyo. Pakia faili ya picha na zana itazalisha mfuatano wa Base64 unaoweza kutumia kama URI ya data (data:image/png;base64,...) katika HTML au CSS.
Je, tokeni za JWT ni msingi64?
Ndiyo - JWT ina sehemu tatu za base64url zilizosimbwa na zikitenganishwa na nukta. Ya kwanza ni kichwa, pili ni malipo, ya tatu ni saini.
Je, data yangu imepakiwa kwenye seva?
Hapana. Usimbaji na usimbaji hutokea katika kivinjari chako kwa kutumia btoa, atob, TextEncoder, na TextDecoder.
Ni ukubwa gani wa juu zaidi?
Hadi 50 MB. Kumbukumbu ya kivinjari hufunga ukubwa wa vitendo kwa ingizo kubwa sana.
Kwa nini pato langu lililotengwa linaonekana kama takataka?
Uwezekano mkubwa zaidi chanzo kilikuwa cha binary, si maandishi. Badili hadi modi ya kupakua faili ili kupata jozi, au hakikisha kuwa ingizo ni maandishi yaliyosimbwa kwa base64 badala ya mfumo wa jozi.