Справочник по сетевым протоколам

       

Последовательность символов, закодированных методом Base


Последовательность символов, закодированных методом Base 64, разделяется на группы по 4 символа. Затем каждому символу в соответствии с таблицей кодировки Base64 ставится в соответствие десятичное значение порядкового номера. Каждое десятичное значение представляется в шестибитовом виде, и далее формируется последовательность длиной 24 бита (6*4). Полученная последовательность разбивается на три группы по 8 бит, при приведении которых к символьному виду получаются 3 символа ASCII. Пример реализации алгоритма показан на рисунке 1.

Шесть бит первого символа Base64 являются старшими шестью битами первого байта данных. Их необходимо переместить с позиций 1-6 на позиции 3-8. Для этого выполняется операция сдвига влево на две позиции. Затем выделяются биты с позиций 5-6 из второго символа и комбинируются выделенные 6 старших и 2 младших бита. В результате получается 1-й байт данных.

Для получения 2-го байта данных, выполняются те же операции, только вместо сдвига влево на два и сдвига вправо на четыре бита выполняется сдвиг влево на четыре и вправо на два бита.

Для получения 3-го байта данных берутся 5-6 биты 3-го символа Base64, которые соответствуют первым двум старшим битам данных, и 4-й символ. Результатом сложения является третий байт. <


Содержание раздела