АШДИ – это записанная в двумерный штрихкод интернет-страница, для работы которой не требуется подключение к интернету.
Автономный Штрихкод Долгосрочного Использования – представляет собой надстройку над существующим стеком web-технологий, поэтому для его применения не требуется ни специальных программ, ни особых знаний. Здесь и далее в статье «долгосрочное» подразумевает период более 50 лет.
АШДИ-код начинается на ‘data:text/html’ – это особый формат записи контента в ссылке для браузера, dataUrl. После сканирования АШДИ QR-кода, текст нужно скопировать в адресную строку браузера и нажать «Ввод», чтобы открылась страница.
Чтобы разместить как можно больше контента на веб-странице, технология АШДИ использует самые современные механизмы для сжатия данных, записанных в QR-код.
Отметим, что АШДИ не ограничивается использованием только QR-кода. Носителем АШДИ может быть любой вид штрихкода и даже html-файл. Стандарт двумерного штрихкода (QR-код) выбран как максимально ёмкий, узнаваемый, популярный и легко сканируемый с телефона формат.
В момент зарождения идеи блокнота «Парольник, он же Пассвордник» главной задачей стало упрощение генерации уникальных паролей. Пользователю трудно придумать действительно случайную последовательность символов. Это подводит к мысли о переложении ответственности за генерацию на электронное устройство.
При этом необходимо, чтобы генератор сохранял свою работоспособность вне интернета и был доступен максимальному числу пользователей. Так, вектор мысли был направлен в сторону оффлайн web-решения.
Поскольку любой онлайн-сервис зависит от хостинга, а приложение, устаревает без поддержки, оба этих варианта не устраивали при создании генератора и поиск решения продолжался.
Среди всех современных технологий были выбраны QR-код и браузер, ввиду возросшей популярностью первого и всепланетного охвата второго.
Причина создания АШДИ – потребность общества в программах, которые не утратят свою функциональность без интернета и без поддержки на горизонте в 50 лет.
Максимальный размер данных в QR-коде – 2953 байта. Для сравнения, общий объём ресурсов, занимаемых Оффлайн Генератором паролей свыше 3900 байт. При этом, dataUrl позволяет хранить только символы латинского алфавита, цифры и несколько спецсимволов. Для обхода этого ограничения и сокращения занимаемого места, контент страницы сжимается алгоритмом Deflate.
В отличии от прочих упаковщиков html, АШДИ имеет ряд преимуществ:
При открытии АШДИ, встроенный в него распаковщик декодирует сжатый контент страницы, добавляет в него изображения (так как они изначально сжаты и их размер не может быть уменьшен) и заменяет себя на распакованные данные. В результате пользователь видит привычную интернет-страницу.
Помимо достоинств, базовая версия АШДИ, представляющая собой самораспаковывающуюся HTML страницу, имеет ряд недостатков. В неё невозможно записать аудио, или использовать лучший алгоритм сжатия.
Расширенная версия АШДИ, позволяет хранить несколько файлов, в том числе аудио. Для расширенной версии Rigellab разработал мобильное приложение и онлайн генератор АШДИ.
Расширенный АШДИ - это сжатая папка с файлами. Каждый файл имеет тип, индекс и размер. Все файлы записываются последовательно и сжимаются с помощью алгоритма Brotli. Для изображений, как и в базовой версии АШДИ, применяется формат WebP с подходящим уровнем качества. Для аудио используется кодек на основе нейросетей, EnCodec с битрейтом 1,5/3/6 кбит/с, что позволяет хранить от 4 до 15 секунд аудио.
--
Единственный недостаток расширенной версии АШДИ – отсутствие популяризации специального мобильного приложения. Для решения этой задачи предлагаю расширить ISO стандарт QR-кода с целью распределения ответственности по поддержке АШДИ на мировое сообщество.