Тай Люис из Lucidchart написал хорошую статью про base64 "Base64 Encoding: A Visual Explanation".
На сегодняшний день base64 используется при внедрении ресурсов в страницы с помощью протокола
В статье описывается работа алгоритма base64 с хорошей визуализацией. В цикле верхнего уровня входной поток данных делится на группы по 24 бита (input groups), которые обрабатываются вложенным циклом. Во вложенном цикле каждая входная группа бьётся на группы по 6 битов. Каждой комбинации битов соответсвует определённый символ, которым кодируется полученная группа. При необходимости во внешнем цикле input group искусственно расширяется до 24 битов с помощью символа
В статье Тай рассказал ещё про пасхалку в Chrome, про которую я не знал. Если ввести в адресную строку
#base64 #algorithm #egg
https://www.lucidchart.com/techblog/2017/10/23/base64-encoding-a-visual-explanation/
На сегодняшний день base64 используется при внедрении ресурсов в страницы с помощью протокола
data:, в source map'ах и там, где необходимо передавать бинарные данные по текстовому протоколу.В статье описывается работа алгоритма base64 с хорошей визуализацией. В цикле верхнего уровня входной поток данных делится на группы по 24 бита (input groups), которые обрабатываются вложенным циклом. Во вложенном цикле каждая входная группа бьётся на группы по 6 битов. Каждой комбинации битов соответсвует определённый символ, которым кодируется полученная группа. При необходимости во внешнем цикле input group искусственно расширяется до 24 битов с помощью символа
=. Именно поэтому в конце base64 последовательности данных можно часто видеть =.В статье Тай рассказал ещё про пасхалку в Chrome, про которую я не знал. Если ввести в адресную строку
chrome://dino, то во весь вьюпорт браузера запустится игра с динозавром, которая доступна в обычном режиме тогда, когда нет доступа к сети (не забудьте нажать пробел). Эта игра хранит все свои ресурсы: изображение и звуки — в base64.#base64 #algorithm #egg
https://www.lucidchart.com/techblog/2017/10/23/base64-encoding-a-visual-explanation/
Lucidchart
Base64 Encoding: A Visual Explanation - Lucidchart
A visual look at how to go from raw bytes to the Base64 encoding, plus insight into the why behind Base64 encoding and a couple places you may see it.