Tech Help

Gịnị kpatara Base64 ji eme ka faịlụ buru ibu?

Base64 na-emekarị ka data binary buru ibu ihe dị ka otu ụzọ n'ụzọ atọ. Lee usoro bytes 3 gaa mkpụrụedemede 4, padding, ọnụ ahịa Data URL ọzọ, na mgbe nha ọzọ ahụ bara uru.

Azịza dị mkpirikpi

Base64 na-emekarị ka data binary buru ibu ihe dị ka otu ụzọ n'ụzọ atọ n'ihi na ọ na-eji mkpụrụedemede Base64 anọ a pụrụ ibipụta nọchite anya bytes 3 ọ bụla nke data binary.

Ọ bụrụ na ogologo ntinye abụghị ọtụtụ ziri ezi nke 3, Base64 ọkọlọtọ nwere padding nwere ike ịgbakwunye mkpụrụedemede =. Ogologo e kọrọ bụ 4 × ceil(n / 3), ebe n bụ ọnụọgụgụ bytes mbụ.

«Ihe dị ka 33%» na-akọwa ntinye buru ibu. Ntinye dị nta nke ukwuu nwere ike iyi ka ọ bụrụ pasentị ka ukwuu n'ihi padding. Base64 abụghị mkpakọ. Maka ịkọ megide izochi, lee [Base64 abụghị izochi: ihe ọ na-eme n'ezie](/ig/story/base64-is-not-encryption).

Isiokwu a na-akọwa ihe kpatara mmepụta Base64 ji buru ibu karịa bytes mbụ. Ọ bụghị ntuziaka nchekwa. Ọ bụrụ na ị chọrọ ịkọ megide izochi, jiri Base64 abụghị izochi: ihe ọ na-eme n’ezie.

Gịnị kpatara Base64 ji achọ oghere ọzọ?

Bytes 3 bụ bits 24. Base64 na-ekewa bits 24 ahụ ka ọ bụrụ otu 4 nke bits 6. Otu ọ bụla na-adakọ mkpụrụedemede Base64 otu, yabụ bytes 3 ntinye na-aghọ mkpụrụedemede 4 mmepụta. Chekwaa dị ka byte 1 n’otu mkpụrụedemede ASCII, nke ahụ bụ 4 / 3 ≈ 1.333 — mmụba ihe dị ka 33.3%.

  • Bytes 3 (bits 24)
  • Kewaa ka ọ bụrụ otu 4 nke bits 6
  • Otu ọ bụla → otu mkpụrụedemede Base64
  • Mkpụrụedemede 4 (ọtụtụ mgbe bytes 4 nke ederede)
Nzọụkwụ bytes 3 → mkpụrụedemede 4 bụ ọnụ ahịa nha. Padding nwere ike ịgbakwunye ntakịrị n'ntinye dị mkpụmkpụ.

Ihe atụ dị mfe a pụrụ ịlele

Ịkọ ndị a dabara Base64 ọkọlọtọ nwere padding.

Man

Man

Base64

TWFu

Man bụ bytes 3 UTF-8/ASCII. TWFu bụ mkpụrụedemede 4: 3 → 4.

Hello

Hello

Base64

SGVsbG8=

Hello bụ bytes 5. SGVsbG8= bụ mkpụrụedemede 8, gụnyere otu =. N’obere data, padding na-eme ka pasentị yie ka ọ buru ibu karịa 33%.

Olee otú e si agbakọ nha Base64?

Maka Base64 ọkọlọtọ nwere padding, encodedLength = 4 × ceil(originalBytes / 3).

Bytes mbụ Mkpụrụedemede Base64
14
24
34
48
58
68

Byte 1 ma ọ bụ 2 ka na-ewepụta mkpụrụedemede 4. Jiri usoro, ọ bụghị 33% kwụ ọtọ.

Gịnị ka padding «=» pụtara?

Akara = na-egosi na ngọngọ bytes 3 ikpeazụ ejughị. Byte 1 ntinye na-eji mkpụrụedemede = abụọ; bytes 2 na-eji otu; bytes 3 anaghị eji nke ọ bụla. Padding abụghị izochi ma ọ bụ njirimara nchekwa.

Base64URL ọ na-eji oghere pere mpe?

Base64URL na-agbanwe + ka ọ bụrụ - na / ka ọ bụrụ _, Ntụgharị Base64 na-ahapụkwa = ndị ikpeazụ mgbe ịkọ. Nke ahụ nwere ike ime ka eriri dị mkpụmkpụ site na mkpụrụedemede = ndị ahụ. Usoro bytes 3 → mkpụrụedemede 4 ka dị, yabụ Base64URL abụghị ụdị binary na-echekwa oghere karịa.

Gịnị kpatara ntinye dị nta ji eto karịa 33%?

Byte 1 → mkpụrụedemede 4 bụ mmụba ogologo 300%. Bytes 2 → 4 bụ 100%. Bytes 3 → 4 bụ ihe dị ka 33.3%. Ka n na-eto, padding na-adị mkpa obere, ọnụ ahịa ọzọ na-eru nso ihe dị ka 33%. Base64 adịghị ibu karịa 33% n’ezie mgbe niile.

Gịnị kpatara Data URL Base64 ji buru ibu ọzọ?

Data URL na-agbakwunye prefix dị ka data:image/png;base64, tupu ibu. N’obere faịlụ nke ukwuu prefix ahụ nwere ike ịchịkwa pasentị. Ntụgharị Base64 nwere ike iwepụta Base64 ọhụrụ ma ọ bụ Data URL; mmepụta Data URL na-eji mkpụrụedemede ọkọlọtọ.

Base64 na binary: nke ọ dị nta?

Binary ọhụrụ na-echekwa oghere karịa maka njem na nchekwa. Base64 buru ibu, mana ọ dị nchebe dị ka ederede na JSON, ozi-e, na ụzọ ederede naanị ndị ọzọ. Ọ bụ ịkọ site na binary gaa ederede, ọ bụghị mkpakọ.

Base64 ọ na-akpakọ faịlụ?

Mba. Base64 abụghị ụdị mkpakọ. Ederede e kọrọ na-abụkarị ibu karịa bytes mbụ. Ọ bụrụ na ị tinye gzip ma ọ bụ Brotli na ederede ahụ ma emesịa, ụfọdụ nkwughachi nwere ike ịdị nta—nsonaazụ dabere na data na ihe mkpakọ. gzip anaghị ewepụ ọnụ ahịa Base64 kpamkpam.

Gịnị na-eme ma e gzip Base64?

Mkpakọ HTTP nwere ike belata ụfọdụ ụkpụrụ a na-emegharị n’ederede Base64. JPEG, PNG, ma ọ bụ ZIP na-akpakọkarị nke ọjọọ ọbụna dị ka bytes ọhụrụ, Base64-mgbe ahụ-gzip ka dabere n’ọnọdụ. Enweghị pasentị ọzọ zuru ụwa ọnụ mgbe gzip gasịrị.

Ị kwesịrị ịchekwa faịlụ dị ka Base64?

Base64 nwere ike itinye binary n’ubi JSON, obere ihe n’ahịrị, API ederede naanị, detuo/rapanye, ma ọ bụ Data URL. Maka faịlụ buru ibu, nchekwa, ebe nchekwa, na nha ibu niile na-eto. Nke ahụ abụghị «ejila Base64 maka faịlụ mgbe ọ bụla».

Gịnị kpatara Base64 ji adịkarị na API JSON?

JSON enweghị ụdị binary ọhụrụ n’ime ya, yabụ API na-etinyekarị bytes n’eriri Base64. Maka faịlụ buru ibu, multipart/form-data, nchekwa ihe, ma ọ bụ nbudata binary ozugbo nwere ike dabara nke ọma. Ọ nweghị nhọrọ kacha mma mgbe niile.

Gịnị kpatara e ji eji Base64 n’ozi-e?

MIME nwere ike iji Base64 ka mgbakwunye binary jee dị ka mkpụrụedemede dị nchebe maka ederede. Ọnụ ahịa nha ahụ ka dị. Nke a bụ ngosi njem, ọ bụghị faịlụ pere mpe.

Mgbe ọ dị nha ọzọ bara uru?

Nha ọzọ nwere ike ịba uru mgbe binary ga-anọ n’ime ederede, ibu dị nta, API chọrọ Base64, ma ọ bụ ị chọrọ Data URL. Maka midia buru ibu, họrọ binary ọhụrụ mgbe sistemụ kwere.

Mgbe ị kwesịrị izere Base64?

Wụpụ ya maka faịlụ buru ibu, bandwidth dị warara, nnyefe ugboro ugboro, ma ọ bụ mgbe ụzọ binary adịlarị—dị ka ọnọdụ, ọ bụghị «Base64 bụ omume ọjọọ».

Ogologo Base64 nwere padding ị nwere ike ilele

Ọnụọgụgụ bytes mbụ na ọnụọgụgụ mkpụrụedemede Base64 ọkọlọtọ nwere padding:

Bytes mbụ Mkpụrụedemede Base64
14
24
34
1016
100136
1,0001,336

Ahịrị niile na-eso 4 × ceil(n / 3). Ndị a bụ ọnụọgụgụ mkpụrụedemede Base64.

Ihe atụ: faịlụ bytes 1,000 ga-abụ nha ole?

4 × ceil(1000 / 3). ceil(333.333…) = 334, na 4 × 334 = 1336. Ya mere bytes 1,000 na-aghọ mkpụrụedemede Base64 1,336. Chekwaa dị ka UTF-8/ASCII, mkpụrụedemede ọ bụla na-abụkarị byte 1—ewela 1,336 dị ka ọnụọgụgụ bytes ziri ezi n’ebe nchekwa.

Base64 ọ nwere ike iji ebe nchekwa karịa nha faịlụ na-egosi?

Ụfọdụ gburugburu na-echekwa eriri karịa byte 1 n’otu mkpụrụedemede, ịkọ/ịgbapụta nwekwara ike idebe buffer na eriri ọnụ. Ojiji ebe nchekwa abụghị ogologo mkpụrụedemede n’ezie.

Ntuziaka mkpebi nha dị mfe

Ọ bụrụ na sistemụ nabatara binary ọhụrụ, họrọ ya maka nha. Ọ bụrụ na a kwadoro naanị ederede, Base64 nwere ike dabara. Maka ibu buru ibu, chọọ ụzọ nbudata binary. Maka ederede dị nchebe URL, tụlee Base64URL—mgbasawanye 3 gaa 4 ka dị.

  • Achọrọ izipu data binary
  • A kwadoro binary ọhụrụ? Họrọ binary maka nha
  • Ubi ederede naanị? Base64 nwere ike dabara
  • Ibu buru ibu? Chọọ ụzọ nbudata binary
  • Achọrọ ederede dị nchebe URL? Tụlee Base64URL
  • Tụkwasị obi ihe dị ka 33% ederede ọzọ n'ntinye buru ibu
Base64 na-azụ nkwekọ ederede. Ọ naghị azụ faịlụ pere mpe.
Base64 na-agbanwe oghere maka nkwekọ ederede

E meghị Base64 iji mee ka data dị nta. Ọ na-eme ka ọ dị mfe ịnọchite anya binary n'ime sistemụ dabere n'ederede, ọnụ ahịa bụ nha ọzọ.

Kọọ ma ọ bụ gbapụta Base64 n’ihe nchọgharị

NEXNARA Ntụgharị Base64 na-akọ ma na-agbapụta ederede, ọ nwekwara ike ịtụgharị faịlụ ka ọ bụrụ Base64 ma ọ bụ Data URL ma laghachi Base64 ka ọ bụrụ faịlụ.

Ederede na-eji bytes UTF-8, mgbe ahụ Base64—ọ bụghị ASCII naanị. Họrọ Standard ma ọ bụ Base64URL. Mmepụta faịlụ nwere ike ịbụ Base64 ọhụrụ ma ọ bụ Data URL (mkpụrụedemede ọkọlọtọ). A na-ajụ ntinye na-ezighi ezi. Bytes na-abụghị UTF-8 chọrọ ịga faịlụ, ọ bụghị ịgbapụta ederede.

Faịlụ karịa 10 MB nwere ike ime ka taabụ dị nwayọọ (ịdọ aka ná ntị). A na-egbochi faịlụ karịa 32 MB.

Ịkọ na ịgbapụta na-eme n’ihe nchọgharị gị. A naghị ezipu faịlụ na sava NEXNARA maka ngwá ọrụ a. Mgbasa ozi na atụmatụ saịtị ndị ọzọ ka na-eji netwọk.

Rapanye ederede ma ọ bụ faịlụ na Ntụgharị Base64 ma tụnyere bytes mbụ na ogologo e kọrọ.

FAQ

Gịnị kpatara Base64 ji abawanye nha faịlụ?

Ọ na-atụgharị bytes 3 (bits 24) ka ọ bụrụ mkpụrụedemede 4 (4 × bits 6). Chekwaa dị ka ederede, nke ahụ bụ ihe dị ka otu ụzọ n’ụzọ atọ ọzọ maka ntinye buru ibu.

Base64 ọ na-abụ ibu 33% mgbe niile?

Mba. Ntinye buru ibu na-eru nso ihe dị ka 33.3%. Ntinye dị nta nwere ike itolite karịa n’ihi padding. Jiri 4 × ceil(n / 3).

Base64 buru ibu ole karịa binary?

Ogologo ọkọlọtọ nwere padding bụ mkpụrụedemede 4 × ceil(n / 3). Prefix Data URL na-agbakwunye ọzọ.

Mkpakọ Base64 ọ na-ebelata nha faịlụ?

Base64 anaghị akpakọ. Gzip ma ọ bụ Brotli n’ederede e kọrọ nwere ike ibelata ụfọdụ; ha anaghị ehichapụ ọnụ ahịa n’ọnọdụ ọ bụla.

Base64URL ọ na-eji oghere pere mpe?

Ọ nwere ike ịhapụ padding =, yabụ eriri nwere ike ịdị mkpụmkpụ mkpụrụedemede 0–2. Usoro ịkọ 3-gaa-4 bụ otu.

M kwesịrị iji Base64 maka faịlụ buru ibu?

Naanị ọ bụrụ na ị chọrọ ederede. Maka nnyefe buru ibu ma ọ bụ ugboro ugboro, ụzọ binary na-adịkarị nta. Base64 adịghị njọ mgbe niile maka API.