Книги: "Создание сайтов" - "Доменные войны". Защита информации: техническое описание TLS, тестовый сервер TLS 1.3. Ресурсы: LaTeX
Кодирование в рунах
Сделал небольшой шуточный проект – утилита кодирования двоичных данных, аналогично 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.
()
Похожие записки:
- Вращение Солнца и соцопросы
- Разгадка к задаче про 25519
- Падение тел в физике Аристотеля
- Реплика: уточнение о языках программирования
- Триплеты из цифр и системы счисления
- Техническое: связь SCT-меток с логами Certificate Transparency
- Форматы ключей
- Развитие автоматических "говорилок" (чат-ботов)
- "Пасхалки" в трафике
- О визире и слоне
- Шумерские цифры и хитрости Unicode
- DNS как транспорт для сигналов и данных
- Физика Аристотеля и падение тел - продолжение
- Модели движения Земли и знания о них
- Реплика: задача с делением и 25519
- Десятилетие DNSSEC в российских доменах
- Сорок лет Интернету
Комментарии читателей блога: 2
1. 17th June 2021, 23:45 // Читатель Nataraj написал:
И высечь в камне!
2. 28th June 2021, 20:22 // Читатель alex написал:
Можно на 3D-принтере напечатать – будет гламурно
Написать комментарий