← Բոլոր գործիքները

Base64 կոդավորում և ապակոդավորում

Կոդավորեք և ապակոդավորեք Base64 ձևաչափը ակնթարթորեն ձեր բրաուզերում։ Իմացեք, թե ինչ է Base64-ը, ինչու է այն մեծացնում ծավալը 33%-ով, և ինչու դա կոդավորում է, ոչ թե գաղտնագրում։

Ինչ է Base64-ը և ինչու է այն գոյություն ունեցել

Base64-ը երկուական-տեքստ կոդավորման սխեմա է։ Այն վերցնում է հում բայթեր, ինչպիսին են այն տվյալները, որոնցից բաղկացած են պատկերները, արխիվները, կրիպտոգրաֆիկ բանալիները կամ ցանկացած այլ բան, որը սովորական ընթեռնելի տեքստ չէ, և վերաշարադրում է դրանք 64 տպագրելի նիշից բաղկացած փոքր, անվտանգ այբուբենով. 26 մեծատառ A-Z, 26 փոքրատառ a-z, տասը թվանշան 0-9, և երկու լրացուցիչ նշան, սովորաբար + և /։ Հավասարության նշանն օգտագործվում է վերջում լրացման համար։ Քանի որ ամեն մի նիշ, որ այն ստեղծում է, սովորական ASCII է, արդյունքը կարող է անցնել այն համակարգերով, որոնք նախագծված են եղել միայն տեքստ մշակելու համար։

Հենց սա է Base64-ի գյուտի ամբողջ պատճառը։ Շատ հին արձանագրություններ, էլ. փոստը դասական օրինակ է, ենթադրում են, որ իրենց փոխադրվող բովանդակությունը տեքստ է։ Եթե դրանց հանձնեք հում երկուական տվյալներ, որոշ բայթեր կխեղաթյուրվեն, կհեռացվեն կամ կմեկնաբանվեն որպես կառավարման նիշեր, և տվյալները կժամանեն վնասված։ Base64-ն շրջանցում է խնդիրը՝ բայթերը փոխակերպելով ձևի, որով ցանկացած տեքստ-անվտանգ ալիք կանցնի անփոփոխ։ Բնօրինակ տվյալները հետո ճշգրիտ վերականգնվում են մյուս կողմում։

Աբստրակտ փայլող երկուական տվյալների հոսք, որը փոխակերպվում է տեքստային նիշերի հոսքի, մուգ ինդիգո գույնով՝ երկնագույն և ոսկեգույն լույսով
Base64-ը հում բայթերը վերաձևավորում է անվտանգ, տեքստին բարեկամ նիշային հոսքի։

Ինչպես է աշխատում փոխակերպումը

Մեխանիկորեն Base64-ը մուտքային տվյալները խմբավորում է երեք բայթանոց հատվածների, ինչը 24 բիթ է, ապա այդ նույն 24 բիթերը վերաբաժանում է վեց բիթանոց չորս խմբերի։ Վեց բիթը կարող է ներկայացնել 64 հնարավոր արժեք, ինչն էլ ճշգրիտ պատճառն է, թե ինչու է այբուբենն ունի 64 նիշ։ Այսպիսով երեք բայթ մուտքային տվյալ միշտ դառնում է չորս նիշ ելքային տվյալ։ Երբ մուտքային տվյալի երկարությունը երեքի ամբողջական պատիկ չէ, կոդավորիչը վերջին խումբը լրացնում է մեկ կամ երկու = նիշով, որպեսզի վերծանիչը իմանա, թե որտեղ է ավարտվում իրական տվյալը։

Հենց այս չորս-երեքի հարաբերակցությունից է առաջանում հայտնի չափի տուգանքը. Base64-ի ելքային տվյալները մոտավորապես 33%-ով ավելի մեծ են, քան բնօրինակը։ Եթե կոդավորված տեքստը փաթաթված է ֆիքսված լայնությամբ տողերում, ինչպես հաճախ պահանջում են էլ. փոստի ստանդարտները, դրա վրա ավելանում է ևս մի քանի տոկոս՝ տողադարձերի պատճառով։ Ավելորդ ծանրաբեռնվածությունը համատեղելիության գինն է, և գործածությունների մեծ մասի համար դա արդար գործարք է։

Որտեղ կհանդիպեք Base64-ին

Երբ գիտեք, թե ինչ փնտրել, Base64-ը ամենուր հանդիպում է առօրյա հաշվարկային տեխնիկայում.

  • Տվյալների URI-ներ։ Փոքր պատկեր կամ տառատեսակ կարող է ուղղակիորեն ներդրվել HTML-ի կամ CSS-ի մեջ data: URI-ով, ֆայլի բովանդակությունը գրված Base64 ձևով։ Բրաուզերը վերծանում է այն ուղղակիորեն, խնայելով առանձին ցանցային հարցում։
  • Էլ. փոստի հավելվածներ։ MIME-ը, ստանդարտը, որը թույլ է տալիս էլ. փոստին կրել ֆայլեր, հենվում է Base64-ի վրա՝ երկուական հավելվածները տեքստ-միայն փոստային համակարգով անվնաս փոխադրելու համար։
  • HTTP Basic նույնականացում։ Ծանոթ Authorization: Basic ... վերնագիրը պարզապես օգտանուն և գաղտնաբառ է, միացված երկու կետով և Base64-կոդավորված, ինչն էլ ճշգրիտ պատճառն է, թե ինչու Basic auth-ը միշտ պետք է աշխատի HTTPS-ի վրայով։
  • Տոկեններ և կոնֆիգուրացիա։ JSON Web Token-ները, վկայագրերը, SSH բանալիները և անհամար կոնֆիգուրացիոն արժեքներ պահվում կամ փոխանցվում են Base64 ձևով, որպեսզի գոյատևեն պատճենահանման-տեղադրման և տեքստի վրա հիմնված պահեստավորման ընթացքում։

Կոդավորումը գաղտնագրում չէ

Սա ամենակարևոր բանն է, որ պետք է հասկանալ, և այն սայթաքեցնում է թե սկսնակներին, թե փորձառու ծրագրավորողներին։ Base64-ը չէ գաղտնագրում և ընդհանրապես ոչ մի անվտանգություն չի տալիս։ Չկա գաղտնի բանալի, չկա գաղտնաբառ, և ոչինչ գաղտնի չկա դրանում։ Փոխակերպումն ամբողջովին հրապարակային է և ամբողջովին շրջելի. ցանկացած ոք, ով տեսնում է Base64 տողը, կարող է վրկյանների ընթացքում վերծանել այն սկզբնական բայթերի, ճշգրիտ սույն գործիքի նման միջոցով։

Այսպիսով Base64-ը գաղտնաբառերի, API բանալիների կամ ցանկացած զգայուն արժեքի վատ թաքստոց է։ Եթե տողը պարզապես թվում է խառնված, դա չի նշանակում, որ այն պաշտպանված է։ Ի հակադրություն, գաղտնագրումը փոխակերպում է տվյալները գաղտնի բանալիով, այնպես որ միայն այդ բանալին ունեցող մարդը կարող է կարդալ դրանք։ Երկուսը լուծում են տարբեր խնդիրներ. գաղտնագրումը պաշտպանում է գաղտնիությունը, Base64-ը՝ համատեղելիությունը։ Դրանք հաճախ օգտագործվում են միասին, կարող եք տվյալները գաղտնագրել AES-ով, ապա Base64-կոդավորել ծածկագրված տեքստը, որպեսզի այն կարողանա անցնել տեքստային ալիքով, բայց մեկը երբեք չի փոխարինում մյուսին։

Աբստրակտ պատկեր, որը լուծարվում է փայլող նիշերի հոսքի մեջ և վերահավաքվում, ինդիգո-նավի գույնով երկնագույն և ոսկեգույն երանգներով
Կոդավորումն ու վերծանումը կատարելապես շրջելի են և ոչ մի գաղտնիություն չեն առաջարկում։

Կոդավորում ընդդեմ վերծանման

Երկու ուղղություններն էլ պարզ հայելային արտապատկերումներ են։ Կոդավորումը վերցնում է ձեր բնօրինակ տեքստը կամ երկուական տվյալները և ստեղծում Base64 նիշային տողը։ Վերծանումը վերցնում է Base64 տողը և վերականգնում ճշգրիտ բնօրինակ բայթերը։ Մեր գործիքն անում է երկուսն էլ ուղղակիորեն ձեր բրաուզերում. ինչ էլ մուտքագրեք կամ տեղադրեք, երբեք չի ուղարկվում սերվեր, այնպես որ գործողությունն ամբողջովին տեղական է և գաղտնի։ Սա ապահով է դարձնում գործիքի օգտագործումը՝ վերծանելու ձեր կարգաբերվող տոկենը կամ կոդավորելու ներդնել ցանկացած հատված, առանց ձեր տվյալները էջից հեռանալու։

Կապակցված փոխակերպումների համար տես մեր URL կոդավորում/վերծանում գործիքը՝ պրոցենտային կոդավորման համար, կամ JWT վերծանիչը, երբ ձեզ պետք է ուսումնասիրել տոկենի ներսում գտնվող Base64 հատվածները։ Դրանք կգտնեք մեր ծրագրավորողի գործիքների շարքում։

Հաճախակի տրվող հարցեր

Base64-ը գաղտնագրման ձև՞ է

Ոչ։ Base64-ը կոդավորում է, ոչ թե գաղտնագրում։ Այն օգտագործում է զրո բանալի և ամբողջովին շրջելի է ցանկացածի կողմից, այնպես որ ոչ մի անվտանգություն չի տալիս։ Զգայուն տվյալները պաշտպանելու համար օգտագործեք իրական գաղտնագրում, ինչպիսին են AES-ը կամ RSA-ն։

Ինչու՞ է Base64-ը մեծացնում տվյալները

Base64-ը մուտքային տվյալի յուրաքանչյուր երեք բայթը վերածում է չորս ելքային նիշի, ինչն ավելացնում է չափը մոտավորապես 33%-ով։ Եթե ելքային տվյալները բաժանված են ֆիքսված երկարությամբ տողերի, տողադարձերն ավելացնում են ևս մի քանի տոկոս։

Ի՞նչ նիշեր է օգտագործում Base64-ը

Ստանդարտ այբուբենը 26 մեծատառ, 26 փոքրատառ, 0-ից 9 թվանշաններն են, գումարած գումարման և թեք գծիկի նշանները, հավասարության նշանն օգտագործվում է վերջում լրացման համար։

Կարո՞ղ եմ անվտանգ կերպով գաղտնաբառեր պահել Base64-ով

Ոչ։ Base64-ը միայն փոխում է տվյալի արտաքին տեսքը, ոչ թե դա, թե ով կարող է կարդալ։ Ցանկացած ոք կարող է վրկյանորեն վերծանել այն։ Գաղտնաբառերը պետք է հեշավորվեն ուժեղ ալգորիթմով, և գաղտնիքները պետք է գաղտնագրվեն։

Այս Base64 գործիքն անվտա՞նգ է

Այո։ Կոդավորումն ու վերծանումն ամբողջովին տեղի են ունենում ձեր բրաուզերում։ Ինչ էլ մուտքագրեք, չի վերբեռնվում կամ ուղարկվում ցանկացած սերվեր, այնպես որ ձեր տվյալները մնում են ձեր սեփական սարքում։

Ի՞նչ տարբերություն կա կոդավորման և վերծանման միջև

Կոդավորումը բնօրինակ տեքստը կամ երկուական տվյալները փոխակերպում է Base64 տողի։ Վերծանումն այն հակադարձում է՝ Base64 տողը վերածելով ճշգրիտ բնօրինակ բայթերի։ Դրանք հայելային գործողություններ են։