Кадаванне Base64

З дапамогай інструмента кадавання Base64 вы можаце зашыфраваць тэкст, які ўводзіце метадам Base64. Пры жаданні вы можаце дэкадаваць зашыфраваны код Base64 з дапамогай інструмента Base64 Decode.

Што такое кадаванне Base64?

Base64 Encoding - гэта схема кадавання, якая дазваляе транспартаваць двайковыя даныя ў асяроддзях, якія выкарыстоўваюць толькі некаторыя абмежаваныя кадыроўкі сімвалаў (асяроддзі, дзе не могуць быць выкарыстаны ўсе коды сімвалаў, напрыклад, xml, html, скрыпты, праграмы абмену імгненнымі паведамленнямі). Колькасць знакаў у гэтай схеме 64, а лік 64 у слове Base64 паходзіць адсюль.

Навошта выкарыстоўваць кадаванне Base64?

Неабходнасць кадавання Base64 звязана з праблемамі, якія ўзнікаюць пры перадачы медыя ў сырым двайковым фармаце ў тэкставыя сістэмы. Паколькі тэкставыя сістэмы (напрыклад, электронная пошта) інтэрпрэтуюць двайковыя дадзеныя як шырокі спектр сімвалаў, уключаючы спецыяльныя камандныя сімвалы, большасць двайковых даных, якія перадаюцца на носьбіт перадачы, няправільна тлумачацца гэтымі сістэмамі і губляюцца або пашкоджваюцца пры перадачы працэс.

Адным з метадаў кадавання такіх двайковых дадзеных такім чынам, каб пазбегнуць такіх праблем з перадачай, з'яўляецца адпраўка іх у выглядзе звычайнага тэксту ASCII у фармаце кадзіравання Base64. Гэта адзін з метадаў, які выкарыстоўваецца стандартам MIME для адпраўкі дадзеных, акрамя простага тэксту. Многія мовы праграмавання, такія як PHP і Javascript, уключаюць функцыі кадавання і дэкадавання Base64 для інтэрпрэтацыі даных, якія перадаюцца з дапамогай кадавання Base64.

Логіка кадавання Base64

У кадаванні Base64 3 * 8 біт = 24 біта даных, якія складаюцца з 3 байтаў, падзеленыя на 4 групы па 6 біт. Сімвалы, якія адпавядаюць дзесятковым значэнням паміж [0-64] з гэтых 4 6-бітных груп, супастаўляюцца з табліцы Base64 для кадавання. Колькасць сімвалаў, атрыманых у выніку кадавання Base64, павінна быць кратнай 4. Закадаваныя даныя, якія не кратныя 4, не з'яўляюцца сапраўднымі данымі Base64. Пры кадаванні з дапамогай алгарытму Base64, калі кадаванне завершана, калі даўжыня даных не кратная 4, сімвал "=" (роўны) дадаецца ў канец кадавання, пакуль ён не стане кратным 4. Напрыклад, калі ў выніку кадавання ў нас ёсць 10-знакавыя дадзеныя, закадаваныя Base64, у канец трэба дадаць два знака "==".

Прыклад кадавання Base64

Напрыклад, возьмем тры лічбы ASCII 155, 162 і 233. Гэтыя тры лікі ўтвараюць двайковы паток 100110111010001011101001. Двайковы файл, напрыклад выява, змяшчае бінарны паток, які працуе для дзясяткаў ці сотняў тысяч нулёў і адзінак. Кадавальнік Base64 пачынаецца з падзелу двайковага патоку на групы па шэсць сімвалаў: 100110 111010 001011 101001. Кожная з гэтых груп пераводзіцца ў лічбы 38, 58, 11 і 41. Шасцізнакавы двайковы паток пераўтворыцца паміж бінарным (або базавым). 2) да дзесятковых знакаў (з базай 10), узводзячы ў квадрат кожнае значэнне, прадстаўленае 1 у двайковым масіве, пазіцыйным квадратам. Пачынаючы справа і рухаючыся налева і пачынаючы з нуля, значэнні ў двайковым патоку ўяўляюць сабой 2^0, затым 2^1, затым 2^2, затым 2^3, затым 2^4, затым 2^ 5.

Вось іншы спосаб паглядзець на гэта. Пачынаючы злева, кожная пазіцыя каштуе 1, 2, 4, 8, 16 і 32. Калі слот мае двайковы лік 1, вы дадаеце гэтае значэнне; калі слот мае 0, вы адсутнічаеце. Двайковы масіў 100110 атрымліваецца 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 дзесятковы + 4 + 0 + 0 + 32. Кадаванне Base64 прымае гэты двайковы радок і дзеліць яго на 6-бітныя значэнні 38, 58, 11 і 41. Нарэшце, гэтыя лічбы пераўтворацца ў сімвалы ASCII з дапамогай табліцы кадавання Base64.