Кодирование в рунах
Сделал небольшой шуточный проект – утилита кодирования двоичных данных, аналогично Base32, но на основе англосаксонских (древнегерманских) рун. Код доступен на GitHub. Base32 это алгоритм кодирования данных, использующий латинский алфавит. Он устроен аналогично несколько более широко известному Base64. Смысл использования подобных схем кодирования в том, чтобы отобразить произвольные “двоичные данные” в алфавит, который можно передать через “текстовый канал”, например, электронной почтой (или даже в виде простой распечатки). Конечно, с рунами этот фокус не сработает. Поэтому – проект шуточный.
Руны входят в таблицы Unicode. (“Обобщённые” символы Unicode тоже называют рунами, но в нашем случае – речь про конкретное подмножество, про англосаксонские руны.) Используемое кодирование (представление Unicode) занимает по три байта на каждую руну. При этом для записи 40 битов (пять байтов) в Base32 используется 8 символов: каждый символ несёт пять битов, откуда, собственно, число 32 == 2^5. То есть, получается, что Base32 на основе рунического письма в Unicode превращает пять байтов исходных данных в 24 байта (восьмибитных) закодированного текста. Не очень-то экономно. Оригинальный вариант Base32, построенный на латинском ASCII-алфавите и ASCII-цифрах, даёт результат лучше: пять байтов кодируются восемью байтами (если при кодировании текста используется привычное, 8-битное, представление байта). Но руны выглядят интереснее, что подтверждается скриншотом ниже, на котором запечатлён TLS-сертификат, записанный в runic32.
Примеры использования утилиты, написанной на Go, приведены на странице репозитория Runic32 в GitHub.
Адрес записки: https://dxdt.ru/2021/06/17/9060/
Похожие записки:
- Объёмы в трудах византийского Герона
- Квантовая криптография и стойкость
- "Двухфакторная" аутентификация и Google Authenticator
- Реплика: что именно читает читающий сейчас
- "Сверхмашинный" интеллект
- Кибернетический след в "Илиаде" и цветовой сдвиг
- Наложенные сети Chrome для размещения сервисов
- Хитрости записи корней уравнений
- Реплика: площади фигур в телевикторине
- Циклы и логические формулы
- Реплика: названия букв и омонимия
Комментарии читателей блога: 2
1. 17th June 2021, 23:45 // Читатель Nataraj написал:
И высечь в камне!
2. 28th June 2021, 20:22 // Читатель alex написал:
Можно на 3D-принтере напечатать – будет гламурно
Написать комментарий