Декодер base64
Preview:
Содержание
Назначение декодера
Онлайн декодер предназначен для декодирования данных по алгоритму стандарта base64. Результат сохраняется в файл, на который предоставляется ссылка для скачивания. Если после декодирования сервис определил тип содержимого файла, то в окне предварительного просмотра «Preview» будет выведен результат в виде медиаданных (это относится к таким файлам как: изображение, аудио или видео).
Результат декодирования так же представлен в виде шестнадцатеричного дампа и ASCII символов. При этом, кодировку для просмотра файла в виде текста можно выбирать между ASCII и Windows‑1251.
Что такое base64
Алгоритм кодирования
В процессе кодирования исходный массив байт делится на группы по 24 бита (3 байта). Далее каждая группа делится на 4 подгруппы по 6 бит. Каждой последовательности из 6 бит соответствует один из разрешенных символов стандарта. Таблица соответствия представлена в конце статьи. Таким образом, каждые три байта исходного массива кодируются четырьмя символами алфавита. А это значит, что выходной файл будет больше входного на 33%.
Пример декодирования
Имеем закодированную алгоритмом base64 последовательность — «Y2F0». Необходимо снять кодировку. Для начала найдем по таблице (в конце примера) соответствие символа и его двоичного значения (колонка «bin»).
Получаем:
- «Y» — 011000;
- «2» — 000010;
- «F» — 000101;
- «0» — 110100.
Записываем полученные двоичные значения в одну последовательность, которую разбиваем затем по 8 бит. Каждая группа из 8 бит является байтом декодированной последовательности. В шестнадцатеричном виде декодированная последовательность имеет вид: 63 61 74. В правильности нашего решения можно убедиться, подставив последовательность «Y2F0» в поле для ввода исходных данных декодера.
Таблица символов стандарта base64
| № | Символ | bin |
|---|---|---|
| 0 | A | 000000 |
| 1 | B | 000001 |
| 2 | C | 000010 |
| 3 | D | 000011 |
| 4 | E | 000100 |
| 5 | F | 000101 |
| 6 | G | 000110 |
| 7 | H | 000111 |
| 8 | I | 001000 |
| 9 | J | 001001 |
| 10 | K | 001010 |
| 11 | L | 001011 |
| 12 | M | 001100 |
| 13 | N | 001101 |
| 14 | O | 001110 |
| 15 | P | 001111 |
| 16 | Q | 010000 |
| 17 | R | 010001 |
| 18 | S | 010010 |
| 19 | T | 010011 |
| 20 | U | 010100 |
| 21 | V | 010101 |
| 22 | W | 010110 |
| 23 | X | 010111 |
| 24 | Y | 011000 |
| 25 | Z | 011001 |
| 26 | a | 011010 |
| 27 | b | 011011 |
| 28 | c | 011100 |
| 29 | d | 011101 |
| 30 | e | 011110 |
| 31 | f | 011111 |
| 32 | g | 100000 |
| 33 | h | 100001 |
| 34 | i | 100010 |
| 35 | j | 100011 |
| 36 | k | 100100 |
| 37 | l | 100101 |
| 38 | m | 100110 |
| 39 | n | 100111 |
| 40 | o | 101000 |
| 41 | p | 101001 |
| 42 | q | 101010 |
| 43 | r | 101011 |
| 44 | s | 101100 |
| 45 | t | 101101 |
| 46 | u | 101110 |
| 47 | v | 101111 |
| 48 | w | 110000 |
| 49 | x | 110001 |
| 50 | y | 110010 |
| 51 | z | 110011 |
| 52 | 0 | 110100 |
| 53 | 1 | 110101 |
| 54 | 2 | 110110 |
| 55 | 3 | 110111 |
| 56 | 4 | 111000 |
| 57 | 5 | 111001 |
| 58 | 6 | 111010 |
| 59 | 7 | 111011 |
| 60 | 8 | 111100 |
| 61 | 9 | 111101 |
| 62 | + | 111110 |
| 63 | / | 111111 |