Tech Help
Base64 nuk është fshehtëzim: çfarë bën vërtet
Base64 është kodim, jo fshehtëzim. Pse nuk fsheh fjalëkalime, pse rritet madhësia dhe si ta deshifrosh.
Base64 është kodim, jo fshehtëzim. Kthen të dhënat binare në formë teksti që sistemet e orientuara nga teksti mund t’i ruajnë ose dërgojnë.
Kush ka tekstin Base64 zakonisht mund ta deshifrojë. Nuk duhet fjalëkalim as çelës i fshehtë.
Mos përdorni Base64 për të mbrojtur fjalëkalime, çelësa API, tokenë hyrjeje, mesazhe private ose sekrete të tjera. Është mjet paraqitjeje, jo mekanizëm sigurie.
Nëse një varg duket i ngatërruar, kjo nuk do të thotë se është i fshehtëzuar. Base64 ndryshon vetëm si shkruhen bajtet si tekst.
Çfarë bën vërtet Base64?
Base64 kodon të dhëna binare me një grup të kufizuar ASCII: A–Z, a–z, 0–9, + dhe /. Mbushja = mund të shfaqet që gjatësia e daljes të mbetet shumëfish i 4. Mbushja nuk është gjithmonë—hyrjet e shkurtra mund të përdorin një ose dy =, dhe disa formate e lënë jashtë.
Hello
Hello
Base64
SGVsbG8=
Deshifroni SGVsbG8= dhe merrni sërish Hello. Ajo vajtje-ardhje nuk do çelës.
- Të dhënat origjinale
- Hello
- Kodo Base64
- SGVsbG8=
- Deshifro Base64
- Hello
Base64 kundër fshehtëzimit: cili është ndryshimi?
Base64 shërben për paraqitje dhe përputhshmëri. Nuk fsheh përmbajtjen. Fshehtëzimi shërben për konfidencialitet dhe përdor material çelësi kriptografik. Deshifrimi i Base64 nuk është shkyçje. Sistemet me çelës publik përdorin gjithashtu çelësa; thoni «çelës kriptografik i përshtatshëm», jo «një sekret i përbashkët për çdo lloj fshehtëzimi». Hashimi është ide e tretë: përmbledhje, jo kodim i kthyeshëm.
- Kodim
- Pa çelës të fshehtë
- I kthyeshëm nga kushdo
- Fshehtëzim
- Mbrojtje kriptografike
- Duhet çelësi i saktë për ta shkyçur
Tri punë të ndryshme:
| Metodë | Qëllimi kryesor | Duhet sekret |
|---|---|---|
| Base64 | Kodimi i të dhënave si tekst | Jo |
| Fshehtëzim | Mbrojtja e konfidencialitetit | Po / material çelësi |
| Hashim | Përmbledhje njëdrejtimëshe | Pa shkyçje |
A është i sigurt Base64?
Base64 vetë nuk jep konfidencialitet. Teksti mund të duket i errët, por kjo nuk është veçori sigurie. Një deshifrues i zakonshëm kthen bajtet. Kjo nuk do të thotë se «Base64 është i pasigurt» si teknologji. Është kodim i zakonshëm. Nuk është mekanizëm sigurie. Siguria varet nga sistemi rrethues dhe kontrollet.
A mund ta fsheh fjalëkalimin ose çelësin API me Base64?
Jo, jo si mbrojtje. Kodimi i fjalëkalimit, çelësit API, tokenit të hyrjes ose të dhënave private si Base64 nuk i mbron. Kush merr vargun e koduar zakonisht mund ta deshifrojë. Përdorni ruajtje të vërtetë sekretesh dhe fshehtëzim kur konfidencialiteti ka rëndësi.
Pse përdoret Base64 nëse nuk është fshehtëzim?
Sistemet që presin tekst shpesh nuk mund të mbajnë binar të papërpunuar. Base64 përdoret për të paraqitur binarin në formate teksti, për të ngulitur burime të vogla binare, për të lëvizur bajte nëpër kanale vetëm-tekst, për të ndërtuar Data URL, për t’u shfaqur në disa kontekste email/MIME dhe për të mbushur ngarkesa API kur skema kërkon Base64. API-të nuk e përdorin «për siguri». E përdorin për përputhshmëri.
Pse Base64 i bën të dhënat më të mëdha?
Base64 standard me mbushje harton 3 bajte hyrjeje në 4 shenja. Gjatësia është 4 × ceil(n / 3), ku n është numri i bajteve hyrëse. Tre bajte bëhen 4 shenja; gjashtë bëhen 8. Kjo është rreth 33% më e madhe—rreth një e treta—për ngarkesë të papërpunuar të madhe. Hyrjet e vogla mund të duken ndryshe për shkak të mbushjes: një bajt bëhet QQ== (4 shenja). Thonjëzat JSON, parashtesa Data URL, ngjeshja ose kodimi shtesë i transportit mund të ndryshojnë edhe më tej madhësinë e ruajtur ose të dërguar. Base64 nuk ngjesh të dhëna.
Çfarë është Base64URL?
Base64URL është variant i të njëjtit kodim, i sigurt për URL dhe emra skedarësh—jo fshehtëzim. + bëhet -, / bëhet _, dhe mbushja shpesh lihet jashtë. Kodim Base64 mund të kodojë dhe deshifrojë Base64 standard dhe Base64URL. Rregullat e mbushjes varen nga specifikimi. Ky mjet nuk është deshifrues JWT.
A mundet Base64 të kodojë imazhe dhe skedarë?
Po. Imazhet, PDF-të dhe skedarë të tjerë binarë mund të bëhen paraqitje teksti Base64. Base64 nuk i ngjesh ato skedarë. Teksti i koduar zakonisht është më i madh se bajtet e papërpunuara.
Çfarë është një Data URL Base64?
Një Data URL mund të mbledhë llojin e medias, shenjën e kodimit dhe bajtet e koduara në një varg:
data:image/png;base64,...
Është i përshtatshëm për asete të vogla. Të vësh një skedar të madh në Data URL nuk është gjithmonë ide e mirë: vargu rritet dhe faqet mund të ngadalësohen. Trajtojeni si kompromis, jo si të parazgjedhur.
Kodim kundër fshehtëzimi kundër hashimi
Kodimi (përfshirë Base64) është për paraqitje dhe kthehet pa sekret. Fshehtëzimi është për konfidencialitet dhe përfshin material çelësi kriptografik. Hashimi prodhon një përmbledhje që zakonisht është projektuar njëdrejtimëshe. Gjatësia e daljes varet nga algoritmi—SHA-256 dhe SHA-512 nuk kanë të njëjtën madhësi. Krijo hash SHA mund t’i tregojë ato përmbledhje; nuk fshehtëzon dhe nuk zëvendëson Base64.
Gabime të zakonshme me Base64
Të trajtosh Base64 si fshehtëzim
Ndryshon vetëm si duken bajtet si tekst.
Të ruash sekrete si Base64 të thjeshtë
Vlerën e koduar mund ta deshifrojë kush e ka.
Të supozosh se Base64 ngjesh të dhëna
Nuk ngjesh. Forma tekstuale zakonisht është më e madhe.
Të harrosh rritjen e madhësisë
Planifikoni rreth një të tretë më shumë te ngarkesa të papërpunuara të mëdha.
Të ngatërrosh Base64 me Base64URL
Alfabetet ndryshojnë. Deshifruesi mund të hedhë poshtë variantin e gabuar.
Të deshifrosh me kodim të gabuar shenjash
Base64 kthen bajte. Teksti ende ka nevojë për kodimin përkatës, zakonisht UTF-8.
Të supozosh se = shfaqet gjithmonë
Mbushja përdoret kur duhet. Disa vargje nuk e kanë.
Pse teksti Unikod mund të shkaktojë probleme me Base64?
Base64 punon mbi bajte, jo mbi shenja. Teksti duhet së pari të bëhet bajte—zakonisht UTF-8. Koreane, japonishtja, arabishtja dhe emoji kanë nevojë për atë hap. btoa() i shfletuesit mbi një varg Unikod mund të dështojë. Kodim Base64 kodon bajte UTF-8, kështu që ai tekst shkon vajtje-ardhje. Nëse deshifroni me grup të gabuar shenjash, Base64 mund të jetë i vlefshëm dhe shkronjat të duken prapë gabim.
Base64 nuk jep konfidencialitet. Kush ka vlerën e koduar zakonisht mund ta deshifrojë. Mos e trajtoni tekstin e ngatërruar si sekret të mbrojtur.
Kodoni ose deshifroni Base64 në shfletues
NEXNARA Kodim Base64 shndërron tekst UTF-8 dhe skedarë lokalisht.
Mund të kodoni ose deshifroni Base64 standard dhe Base64URL, ta ktheni një skedar në Base64 të papërpunuar ose Data URL, dhe ta ktheni Base64 ose Data URL në shkarkim. Hyrja e pavlefshme hidhet poshtë në vend që të rrëzohet. Hapësirat injorohen; mbushja që mungon plotësohet.
Skedarët mbi 10 MB mund ta ngadalësojnë skedën. Skedarët mbi 32 MB nuk përpunohen në shfletues.
Vetë përpunimi i Base64 ndodh në shfletuesin tuaj. Teksti ose skedari nuk dërgohet te një server NEXNARA për këtë mjet. Reklamat dhe veçoritë e tjera të faqes ende përdorin rrjetin; kjo është e ndarë nga përpunimi.
Duhet të kodoni ose deshifroni Base64? Hapni Kodim Base64 dhe ngjitni tekstin ose hidhni një skedar.
FAQ
A është Base64 fshehtëzim?
Jo. Base64 është kodim. Ndryshon paraqitjen. Nuk mbron konfidencialitetin.
A është i sigurt Base64?
Base64 nuk është mekanizëm sigurie. Është kodim i zakonshëm. Kush ka tekstin zakonisht mund ta deshifrojë. Siguria varet nga pjesa tjetër e sistemit.
A mund të deshifrohet Base64 pa fjalëkalim?
Po. Mjafton një deshifrues standard. Vetë Base64 nuk do fjalëkalim as çelës të fshehtë.
Pse Base64 rrit madhësinë e skedarit?
Çdo 3 bajte bëhen 4 shenja në Base64 standard me mbushje (gjatësia 4 × ceil(n / 3)). Kjo është rreth 33% më shumë për ngarkesë të papërpunuar të madhe. Mbushja mund të ndryshojë raportin te hyrje shumë të vogla.
Cili është ndryshimi mes Base64 dhe Base64URL?
Base64URL përdor - dhe _ në vend të + dhe / dhe shpesh heq mbushjen =. Të dyja janë kodime. Kodim Base64 mbështet të dy alfabetet.
A mundet Base64 të kodojë imazhe dhe skedarë?
Po. Rezultati është tekst, jo skedar më i vogël. Përdorni mënyrën Skedar në Kodim Base64 për Base64 të papërpunuar ose Data URL. Skedari qëndron në shfletues.