QR Messenger — Руководство пользователя

Оглавление

  1. О приложении
  2. Начало работы
  3. Главный экран
  4. Создание сообщения
  5. Сканирование QR-кода
  6. Просмотр сообщения
  7. Зашифрованный ответ
  8. Настройки
  9. Резервное копирование и восстановление
  10. Часто задаваемые вопросы
  11. Юридическая информация

О приложении

QR Messenger

Зачем это приложение?

QR Messenger — это мобильное приложение для безопасного, защищённого общения через QR-коды. Оно решает несколько ключевых проблем:

  • Конфиденциальность переписки. Всё общение строится на асимметричном шифровании (ECC P-256). Даже если QR-код перехватят — прочитать закрытую часть сообщения сможет только тот, у кого есть соответствующий приватный ключ.
  • Никаких серверов. Для работы приложения не нужен сервер. Вся генерация ключей, шифрование и расшифровка происходят прямо на устройстве. Данные хранятся локально.
  • Устойчивость к блокировкам. QR-код можно передать через любой канал (мессенджер, email, соцсеть, печать на бумаге). Поскольку изображение не содержит ссылок и не требует сервера, его сложнее технически заблокировать на уровне провайдера. Это свойство формата, а не средство обхода.

Для кого это приложение?

  • Для обычных людей, которые оказались под давлением — мошенники, слежка, цензура. Кто ценит приватность переписки и хочет защитить её от несанкционированного доступа (например, от взлома или утечек данных)
  • Для тех, кто хочет использовать шифрование, не завися от конкретного мессенджера
  • В регионах, где доступ к некоторым мессенджерам может быть ограничен оператором связи
  • Для тех, кто боится, что их личные сообщения прочитают чужие люди
  • Для любой ситуации, когда обычные мессенджеры стали небезопасны

В каких ситуациях использовать?

  • Вас могут прослушивать — нужно передать сообщение, которое никто посторонний не прочитает.
  • Вы не доверяете обычным мессенджерам — они читают вашу переписку, сливают данные, блокируют аккаунты.
  • В вашем регионе блокируют мессенджеры, но социальные сети, email или даже обычная почта работают.
  • Нужно передать сообщение так, чтобы его мог прочитать только конкретный человек и никто больше.
  • Хотите сохранить «цифровое письмо» — QR-код можно распечатать на бумаге, переслать как картинку, сохранить в файл.

Как это работает (простыми словами)

Представьте, что вы хотите начать разговор с незнакомым человеком, но так, чтобы никто посторонний не мог подслушать.

Цепочка разговора

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Шаг 1. Вы пишете **открытое** сообщение → создаётся QR-код с вашим публичным ключом

Шаг 2. Другой человек сканирует ваш QR → видит **открытое** сообщение

Шаг 3. Он отвечает вам **зашифрованным** ответом → новый QR-код,
который можете прочитать ТОЛЬКО ВЫ

Шаг 4. Вы сканируете QR-код ответа → нажимаете **«Расшифровать»** →
читаете ответ (ваш приватный ключ расшифровывает сообщение)

Шаг 5. Вы отвечаете снова, уже шифруя свой ответ его публичным ключом

Шаг 6. И так далее — каждый следующий ответ **зашифрован** и доступен
только тому, кому предназначен

**Первое сообщение всегда **открытое — это как приветствие. Вы пишете что-то вроде «Привет, это я, давай пообщаемся». Или можете написать просто любую фразу — она будет видна всем, кто отсканирует ваш QR-код.

А вот все ответы уже шифруются. Каждый раз, когда кто-то отвечает вам, его ответ зашифрован вашим публичным ключом. Прочитать его можете только вы — вашим приватным ключом. Никто другой, даже если перехватит QR-код, не поймёт, что там написано.

Как это выглядит на примере

Допустим, Маша хочет начать безопасный разговор с Петей.

1
2
У Маши есть:  ПРИВАТНЫЙ_КЛЮЧ_Маши + ПУБЛИЧНЫЙ_КЛЮЧ_Маши
У Пети есть: ПРИВАТНЫЙ_КЛЮЧ_Пети + ПУБЛИЧНЫЙ_КЛЮЧ_Пети

Шаг 1. Маша пишет открытое сообщение

Маша вводит текст *«Привет! Это мой публичный ключ, пиши мне зашифрованно»*. Приложение создаёт QR-код, в котором «упакованы» её публичный ключ и контакты. Открытый текст не прячется в QR — он просто отображается рядом.

1
2
3
4
5
6
7
8
9
10
┌─────────────────────────────────────┐
│ Сообщение (видно всем): │
│ "Привет! Это мой публичный ключ..." │
├─────────────────────────────────────┤
│ [QR-код] ─── содержит: │
│ • публичный ключ Маши │
│ • контакты Маши │
│ • ID сообщения │
│ • время создания │
└─────────────────────────────────────┘

Шаг 2. Маша отправляет QR-код Пете

Маша может отправить этот QR-код как обычную картинку — через Telegram, WhatsApp, email, распечатать на бумаге — как угодно.

Шаг 3. Петя сканирует QR-код

Петя открывает приложение, сканирует QR-код и видит сообщение Маши. Приложение автоматически сохраняет публичный ключ Маши — чтобы Петя мог ответить ей зашифрованно.

Шаг 4. Петя отвечает зашифрованно

Петя пишет ответ и нажимает «Зашифровать». Приложение берёт публичный ключ Маши, шифрует им текст Пети — и создаёт новый QR-код.

1
2
3
4
5
6
┌─────────────────────────────────────┐
│ [QR-код зашифрованного ответа] │
│ │
│ Прочитать может ТОЛЬКО Маша своим │
│ приватным ключом │
└─────────────────────────────────────┘

Даже если этот QR-код кто-то перехватит — он увидит только бессмысленный набор символов. Расшифровать его может только Маша.

Шаг 5. Маша сканирует зашифрованный ответ Пети

Маша нажимает «Расшифровать» — её приватный ключ расшифровывает сообщение. Она читает ответ Пети.

Шаг 6. Маша отвечает Пете снова зашифрованно

Её ответ снова шифруется — теперь уже публичным ключом Пети. И так далее — каждое следующее сообщение в цепочке зашифровано и доступно только тому, кому предназначено.

Что хранится в QR-коде

  • OM (Open Message) — открытая часть сообщения, текст который был введён пользователем, копируется в QR-код для доступности при сканировании.
  • SPK (Sender Public Key) — публичный ключ отправителя, чтобы вам могли ответить зашифрованно.
  • C (Contacts) — контакты отправителя, чтобы знать, как с вами связаться.
  • id — уникальный номер, чтобы не путать сообщения.
  • TS (Timestamp) — время создания сообщения.
  • PM (Private Message) — закрытая часть (только в обычных сообщениях).
  • ET (Encrypted Text) — зашифрованный текст (только в зашифрованных ответах).
  • OMI (Original Message ID) — ID исходного сообщения (только в зашифрованных ответах).
  • A (Algorithm) — алгоритм шифрования (только в зашифрованных ответах).

Открытый текст сообщения также отображается рядом с QR-кодом для удобства.


Начало работы

Первый запуск

При первом запуске приложение покажет предупреждения:

  1. «Нет ключей шифрования» — нажмите на баннер, чтобы перейти в настройки и сгенерировать ключевую пару.
  2. «Нет контактных данных» — добавьте ваши контакты (email, Telegram, телефон и т.д.), чтобы другие пользователи могли вас найти.

Важно: Без ключевой пары приложение не сможет создавать сообщения.

Пошаговая настройка

Шаг 1. Генерация ключей

  1. Нажмите ⚙ на главном экране (или внизу на экране настроек через баннер).
  2. В разделе «Ключи шифрования» нажмите «(1) Сгенерировать ключевую пару».
  3. Приложение создаст пару ключей (ECC P-256) и сохранит их на устройстве.
  4. Вы увидите ваш публичный ключ — его можно скопировать и передать тому, кто хочет отправить вам зашифрованное сообщение.

Публичный ключ — это ваш открытый идентификатор. Его можно публиковать где угодно.
Приватный ключ — храните в секрете! Никому не передавайте. Он нужен для расшифровки сообщений.

Шаг 2. Добавление контактов

  1. В разделе «Контактная информация» нажмите на поле ввода.
  2. Введите ваш email, Telegram, телефон или любой другой способ связи.
  3. Нажмите «+», чтобы добавить.
  4. Контакты будут автоматически добавляться в ваши QR-коды при создании сообщений.

Шаг 3. Создание первого сообщения

После настройки ключей и контактов вернитесь на главный экран и введите текст сообщения — QR-код сгенерируется автоматически.


Главный экран

Главный экран — это центр управления приложением.

Элементы главного экрана

Элемент Описание
⚙ (шестерёнка) Переход в настройки
Поле ввода сообщения Текстовое поле для открытой части сообщения
Область QR-кода Показывается после ввода текста (автоматическая генерация через 2 секунды)
Сканировать QR-код Кнопка перехода к сканированию
История сообщений Список отправленных и полученных сообщений

Баннеры-подсказки

Приложение показывает цветные баннеры, которые помогают ориентироваться:

  • Жёлтый («Нет ключей шифрования») — требуется сгенерировать ключевую пару.
  • Синий («Нет контактных данных») — рекомендуется добавить контакты.
  • Зелёный — информация о созданном сообщении.

История сообщений

  • Все отправленные и полученные сообщения сохраняются в истории.
  • Записи отсортированы от новых к старым.
  • Нажмите на запись, чтобы просмотреть сообщение.
  • Смахните или нажмите на кнопку удаления (✕), чтобы удалить запись.
  • Кнопка «Очистить историю» внизу списка удаляет все записи разом.

Создание сообщения

Как создать сообщение

  1. Убедитесь, что ключи сгенерированы (зелёная галочка «✓ Ключ загружен»).
  2. Введите текст в поле «открытая** часть сообщения»**.
  3. Подождите 2 секунды — QR-код сгенерируется автоматически.
  4. Нажмите «Поделиться для получения шифрованных ответов».

Что попадает в QR-код

QR-код содержит все необходимые данные для распознавания сообщения:

  • ID сообщения (уникальный идентификатор в формате Base62).
  • Открытая часть сообщения — текст, введённый пользователем (чтобы при сканировании текст не терялся).
  • SPK (Sender Public Key) — публичный ключ отправителя (чтобы получатель мог ответить).
  • Контакты отправителя (если указаны в настройках).
  • Временная метка.
  • Закрытая часть (если есть) — в поле privateMessage.

Как отправить QR-код

  1. После генерации QR-кода нажмите «Поделиться для получения шифрованных ответов».
  2. Приложение создаст PNG-изображение QR-кода и откроет системный диалог «Поделиться».
  3. Выберите способ отправки: Telegram, WhatsApp, email, сохранить в галерею и т.д.
  4. Приложение автоматически добавит подпись к изображению с открытым текстом сообщения.

Сценарий: передача по цепочке

  1. Вы создаёте сообщение → получаете QR-код.
  2. Отправляете QR-код через любой канал.
  3. Первый получатель сканирует — видит открытую часть.
  4. Получатель может ответить зашифрованно.

Сканирование QR-кода

Способы сканирования

1. Сканирование камерой (автоматическое)

  1. Нажмите «Сканировать QR-код» на главном экране.
  2. При первом использовании разрешите доступ к камере.
  3. Наведите камеру на QR-код — распознавание произойдёт автоматически.
  4. Зелёная рамка поможет навестись на QR-код.
  5. После распознавания вы перейдёте к просмотру сообщения.

2. Выбор изображения из галереи

  1. На экране сканирования нажмите «Выбрать из галереи».
  2. Выберите изображение с QR-кодом.
  3. Приложение распознает QR-код и покажет сообщение.

3. Получение через «Поделиться» (Share Intent)

Это самый удобный способ — работает из любого приложения.

  1. Откройте любое приложение (галерея, браузер, файловый менеджер).
  2. Найдите изображение с QR-кодом.
  3. Нажмите «Поделиться» → выберите «QR Messenger».
  4. Приложение автоматически откроется, распознает QR-код и покажет сообщение.

Как это работает:

  • Если приложение было закрыто — оно запустится и сразу обработает изображение.
  • Если приложение уже открыто — оно получит изображение и переключится на экран сканирования.

4. Ручной ввод

  1. На экране сканирования найдите раздел «Ручной ввод».
  2. Вставьте JSON-данные QR-кода в текстовое поле.
  3. Нажмите «Обработать данные».
  4. Можно использовать «Загрузить пример» для демонстрации с примером зашифрованного сообщения.

Что делать, если QR-код не распознаётся

  • Убедитесь, что изображение чёткое и QR-код хорошо освещён.
  • Попробуйте поднести камеру ближе.
  • Если сканируете с экрана — уменьшите яркость.
  • Используйте ручной ввод JSON-данных.
  • Попробуйте сохранить изображение и открыть через «Выбрать из галереи».

Просмотр сообщения

После сканирования QR-кода вы попадаете на экран просмотра сообщения.

Что отображается

  • ID сообщения — уникальный идентификатор.
  • Время создания — когда сообщение было создано.
  • Открытое сообщение — текст, который был введён рядом с QR-кодом.
  • Отправитель — публичный ключ и контакты отправителя.
  • Флаг закрытой части — если сообщение содержит закрытую часть (в разработке).

Типы сообщений

1. Обычное сообщение — вы сканировали QR-код с открытой частью. Вы можете ответить на него зашифрованно.

2. ** Зашифрованный ответ** — вы сканировали QR-код, который содержит зашифрованный текст.

  • Приложение не знает, кому адресован ответ — адресат определяется попыткой дешифровки.
  • Вы нажимаете «Расшифровать» — если это ваш приватный ключ подходит, сообщение расшифровывается.
  • Если расшифровка удалась — покажется зелёная карточка с открытым текстом.
  • Если расшифровка не удалась — покажется оранжевая карточка с сообщением «** Это сообщение не для вас**» и контактами, которым адресовано сообщение.
  • После расшифровки вы увидите открытый текст и сможете ответить дальше по цепочке.

Действия с сообщением

Тип сообщения Кнопка Действие
Обычное Ответить зашифрованным сообщением Переход к созданию зашифрованного ответа
Зашифрованный ответ Расшифровать Расшифровка сообщения вашим приватным ключом
Зашифрованный ответ (после расшифровки) Ответить Переход к созданию следующего зашифрованного ответа
Любой На главную Возврат на главный экран

Автоматические действия при получении

  1. Сохранение контакта отправителя — публичный ключ отправителя сохраняется в книгу контактов для быстрого доступа.
  2. Сохранение в историю — сообщение автоматически добавляется в историю с типом «получено».

Зашифрованный ответ

Как ответить

  1. Просматривая сообщение, нажмите «Ответить зашифрованным сообщением».
  2. Вы увидите карточку получателя с его публичным ключом и контактами.
  3. Введите текст ответа в поле.
  4. Нажмите «Зашифровать».
  5. Приложение зашифрует текст публичным ключом получателя.
  6. Будет сгенерирован QR-код зашифрованного ответа.

Как отправить зашифрованный ответ

  1. После шифрования нажмите «Поделиться для получения шифрованных ответов».
  2. Отправьте QR-код отправителю через любой канал (мессенджер, email и т.д.).
  3. Отправитель сканирует QR-код своим приложением.
  4. Приложение распознает зашифрованный ответ и покажет зелёную карточку с кнопкой «Расшифровать».
  5. Отправитель нажимает «Расшифровать» — его приватный ключ расшифровывает сообщение.
  6. Только владелец приватного ключа может прочитать сообщение.

Важно знать

  • Расшифровать ответ может только владелец приватного ключа, соответствующего публичному ключу, которым было зашифровано сообщение.
  • Когда вы сканируете зашифрованный QR-код ответа — приложение показывает кнопку «Расшифровать». Нажмите её, чтобы прочитать сообщение.
  • После расшифровки вы можете ответить дальше по цепочке — нажав «Ответить».
  • Даже если QR-код перехватят — никто, кроме получателя, не сможет его прочитать.
  • Вы также можете скопировать контакты получателя нажатием на них.
  • Публичный ключ получателя можно скопировать нажатием на .

Настройки

Экран настроек разделён на несколько разделов.

1. Контактная информация

Здесь вы указываете свои контактные данные, которые будут автоматически добавляться в QR-коды.

  • Добавить контакт — введите email, Telegram, телефон и нажмите «+».
  • Удалить контакт — нажмите ✕ рядом с контактом.
  • Контакты сохраняются автоматически.

2. Ключи шифрования

Управление ключевой парой ECC P-256.

Кнопка Описание
Сгенерировать ключевую пару Создать новую пару ключей (всегда можно создать новую)
Экспортировать ключи Отправить ключи через системный Share

Отображение:

  • Публичный ключ — показывается (можно выделить и скопировать).
  • Приватный ключ — только статус («Сохранен на устройстве»).

3. Безопасность

Кнопка Описание
Создать резервную копию Экспорт всех данных (ключи, история, контакты)
Скрывать приватные ключи Защита от просмотра (в разработке)
Восстановить из резервной копии Восстановление данных из JSON

4. О приложении

Кнопка Описание
ℹ О программе Версия и краткое описание
Руководство пользователя Ссылка на это руководство
Оценить приложение (В разработке)

Резервное копирование и восстановление

Создание резервной копии

  1. Перейдите в Настройки → Безопасность.
  2. Нажмите «Создать резервную копию».
  3. Приложение соберёт все данные в JSON-файл:
    • Ключи шифрования (приватный + публичный).
    • Контакты (публичные ключи других пользователей).
    • Ваши контактные данные.
    • Историю сообщений.
  4. Откроется системный диалог «Поделиться» — сохраните файл в надёжное место:
    • Google Drive / Dropbox.
    • Отправьте себе на email.
    • Сохраните в файловом менеджере.

ВАЖНО: Резервная копия содержит ваш приватный ключ в открытом виде. Храните её в надёжном месте. Не передавайте третьим лицам. Если кто-то получит доступ к этому файлу — он сможет расшифровать все ваши сообщения.

Экспорт только ключей

  1. В разделе «Ключи шифрования» нажмите «Экспортировать ключи».
  2. Будет создан JSON-файл только с ключевой парой.
  3. Используйте для миграции на другое устройство.

Восстановление из резервной копии

  1. Скопируйте содержимое JSON-файла резервной копии в буфер обмена.
  2. В приложении: Настройки → Безопасность → «Восстановить из резервной копии».
  3. Нажмите, чтобы развернуть секцию восстановления.
  4. Вставьте JSON в текстовое поле.
  5. Нажмите «Восстановить».
  6. Приложение покажет, что было восстановлено, а что не удалось.

Что восстанавливается:

  • Ключи шифрования.
  • Контакты (без дубликатов).
  • Ваши контактные данные.
  • История сообщений (без дубликатов).

Часто задаваемые вопросы

Как установить приложение?

Приложение собирается из исходного кода (React Native). Файлы установки для Android:

  1. Соберите APK через ./gradlew assembleRelease.
  2. Установите APK на устройство.
  3. Или используйте скрипт install.sh для установки через ADB.

Что делать, если я потерял ключи?

Если вы сделали резервную копию — восстановите её. Если нет — сгенерируйте новую ключевую пару, но вы не сможете прочитать старые сообщения, зашифрованные для старого ключа.

Может ли кто-то перехватить моё сообщение?

QR-код можно сфотографировать или скопировать, но расшифровать его содержимое (закрытую часть) может только владелец соответствующего приватного ключа. Открытая часть сообщения — это то, что вы сами решили сделать публичным.

Почему открытая часть не в QR-коде?

Для компактности. QR-код может содержать ограниченный объём данных. Чем меньше данных — тем проще его сканировать даже с неидеальной камеры. Открытая часть отображается текстом рядом с QR-кодом.

Как работает шифрование?

Первое сообщение в разговоре — открытое. Его может прочитать кто угодно. Зачем? Чтобы передать ваш публичный ключ собеседнику, чтобы он мог ответить вам уже зашифрованно.

А вот все ответы и дальнейшие сообщения шифруются. У каждого пользователя есть пара ключей:

  • Публичный ключ — он встроен в каждый ваш QR-код. Это как открытый адрес, по которому вам могут писать.
  • Приватный ключ — хранится только на вашем телефоне. Никто его не знает, даже разработчик приложения.

Когда кто-то отвечает вам, его сообщение шифруется вашим публичным ключом. Расшифровать его можете только вы — своим приватным ключом. Даже если чужой QR-код перехватят, увидят только бессмысленный набор символов.

Работает ли приложение без интернета?

Да. Приложение не требует доступа в интернет. Вся криптография и хранение данных работают локально на устройстве. QR-коды передаются через любые каналы.

На каких платформах работает?

В настоящее время поддерживается Android. Версия для iOS в разработке (требуется iOS Share Extension).

Как мне связаться с разработчиком?

Контакты разработчика указаны в QR-кодах, которые он создаёт. Отсканируйте любой QR-код от разработчика, чтобы увидеть его контактную информацию.


Технические детали

Криптография

Параметр Значение
Алгоритм ECC P-256 (secp256r1)
Библиотека react-native-themis (Apache 2.0)
Размер публичного ключа ~44 символа в base64
Формат шифрования Secure Message (Cryptosystem)

Формат данных QR-кода

1
2
3
4
5
6
7
{
"id": "abc123def456", // Base62 ID
"OM": "Привет!", // Открытая часть сообщения (Open Message)
"SPK": "VUVDMgAAAC2...", // Публичный ключ отправителя (Sender Public Key)
"C": ["@telegram", "email@example.com"], // Контакты отправителя
"TS": 1714212345678 // Время создания, Unix ms (Timestamp)
}

Формат зашифрованного ответа

1
2
3
4
5
6
7
8
9
{
"id": "def789ghi012", // Уникальный ID ответа (Base62)
"OMI": "abc123def456", // ID исходного сообщения (Original Message ID)
"ET": "UkVDMgAAAC...", // Зашифрованный текст (Encrypted Text, Themis Secure Message)
"SPK": "VUVDMgAAAC2...", // Публичный ключ отправителя ответа (Sender Public Key)
"C": ["@telegram_otvet"], // Контакты отправителя ответа
"TS": 1714212345678, // Время создания, Unix ms (Timestamp)
"A": "ecc-p256" // Алгоритм шифрования (Algorithm)
}

Примечание: Все имена полей сокращены до 1-3 символов для экономии места в QR-коде: OM (Open Message), SPK (Sender Public Key), C (Contacts), TS (Timestamp), ET (Encrypted Text), OMI (Original Message ID), A (Algorithm). Поле recipientPublicKey не передаётся — адресат определяется попыткой дешифровки. Поле hasPrivatePart не нужно — оно вычислимо по наличию ET.

Вместимость QR-кода

После оптимизации формата (короткие имена полей: OM, SPK, C, TS, ET, OMI, A; удалены keyId, hasPrivatePart, recipientPublicKey, дублёр publicKey) размер полезной нагрузки значительно уменьшился.

Размер полей зашифрованного ответа:

Поле Размер (символов)
Ключи/id/мета (id, SPK, OMI, TS, A) ~110
C (контакты) ~30-50
Overhead JSON ~140-160
ET (Encrypted Text, Themis Secure Message, base64) ~140
Итого ~280-300

Размеры QR-кода при разных объёмах данных (ECL = M, 15% коррекции):

Версия QR Размер (модулей) Макс. байт Вместимость текста
V10 57×57 174 ~14 символов
V15 77×77 378 ~218 символов
V20 97×97 666 ~506 символов
V25 117×117 1026 ~866 символов
V30 137×137 1446 ~1286 символов
V35 157×157 1880 ~1720 символов
V40 177×177 2330 ~2170 символов

Реальные сценарии:

Сценарий Размер данных Версия QR Размер QR
Обычное сообщение (без шифрования) ~130-170 символов V10 (57×57) ~2×2 см
Зашифрованный ответ (короткий, ~20 символов) ~280-300 символов V15 (77×77) ~2.8×2.8 см
Зашифрованный ответ (средний, ~100 символов) ~360 символов V15-V16 ~2.8×3 см
Зашифрованный ответ (длинный, ~500 символов) ~760 символов V20-V22 ~3.5×3.5 см

Вывод: после двух раундов оптимизации формата (удаление избыточных полей + сокращение имён до 1-3 символов) вместимость текста увеличилась на ~130-180 символов. Для подавляющего большинства сообщений достаточно V15-V20.


Версия

QR Messenger v0.1.0 — первая публичная версия.

Руководство актуально на апрель 2026 года.


Юридическая информация для пользователей

1. Статус программы

Данная программа является локальным инструментом для генерации и распознавания QR-кодов. Она не осуществляет передачу данных по сети, не является организатором распространения информации (ОРИ), не является оператором связи.

2. Ответственность за публикацию

Вы самостоятельно решаете, где и как публиковать созданные QR-коды (соцсети, мессенджеры, печать на бумаге и т.д.). За содержание опубликованной информации (в том числе за её соответствие законодательству) отвечаете вы, пользователь, а также владельцы конкретных сетевых сервисов, через которые осуществляется передача.

3. Шифрование

Программа использует шифрование для защиты содержимого сообщений. Шифрование разрешено законодательством РФ (ст. 16 Федерального закона «Об информации»). Ключи шифрования генерируются на вашем устройстве и не передаются автору программы или третьим лицам.

4. Автор не может расшифровать сообщения

Поскольку ключи хранятся только у вас, автор программы не имеет технической возможности прочитать переписку, даже при наличии судебного запроса. Это свойство архитектуры, а не отказ от сотрудничества.

5. Ваши обязанности

Не используйте программу для распространения информации, запрещённой законодательством РФ (экстремизм, порнография, призывы к насилию и т.д.). Если вы получили законное требование от госорганов расшифровать сообщения или предоставить ключи, вы должны его исполнить или обжаловать в суде. Автор программы за это ответственности не несёт.

6. Претензии третьих лиц

Если вы считаете, что через QR-коды, созданные с помощью этой программы, распространяется незаконная информация, обращайтесь к лицу, опубликовавшему код, или к владельцу соцсети, где он опубликован. Автор программы не может удалить опубликованные коды.

Пояснения

Данная программа не является организатором распространения информации (ОРИ), поскольку:

  • не имеет функций передачи сообщений между пользователями и сетевых функций вообще;
  • не имеет сервера для хранения ключей, логинов и паролей — ключи генерируются локально и не передаются автору программы;
  • не осуществляет идентификацию пользователей — никто не отслеживает, кто сканирует какую картинку.

Кто же является ОРИ?

ОРИ является соцсеть (мессенджер), в которой пользователи публикуют и сканируют изображения. Если это Telegram / WhatsApp — они уже внесены в реестр ОРИ и обязаны предоставлять данные по требованию. Однако у них нет ключей от ваших сообщений (если они не хранят картинку и не расшифровывают её — а они не расшифровывают, потому что не знают ключи).

Если пользователь публикует картинку в открытом канале, то соцсеть формально распространяет информацию, но зашифрованную. Ответственность за содержание информации (даже зашифрованной) лежит на авторе картинки и соцсети (постфактум, если её попросят удалить).

Что обязаны делать ОРИ (соцсети)?

  • Хранить на территории РФ всё содержимое переписки (текстовые сообщения, изображения, видео) — до 6 месяцев, с 2026 года до 3 лет;
  • Предоставлять эти данные и ключи для декодирования (часть 4.1 статьи 10.1) по требованию ФСБ и иных уполномоченных органов (если они сами что-то шифруют, а не пользователи);
  • Ограничивать возможность передачи информации, признанной запрещённой, в течение суток с момента получения требования.

Если соцсеть уже признана РКН ОРИ, то она технически должна хранить изображения с QR-кодами. Она также должна по запросу предоставить эти изображения в первоначальном неизменном виде (как они были опубликованы). Ей не нужно самой дешифровать их содержание. Она отвечает за сохранность и передачу данных, а за смысл отвечают другие.

Ваши права и законные действия

  • ✓ Защита вашей приватности — не равно «обход блокировок» и это легально;
  • ✓ Защищать свою переписку от прослушивания провайдерами — легально;
  • ✓ Если вы не хотите попадать под тотальную слежку — это легально;
  • ✓ Использование VPN, Tor и т.д. — легально, если они не используются для «обхода блокировок» или доступа к запрещённому контенту;
  • ✗ Читать заблокированные сайты — не легально;
  • ✗ Призывать «обходить блокировки» — не законно;
  • ✓ «Информировать» — обычно нет, но тоже смотря о чём.

Внимание. Здесь имеется тонкая грань допустимого. Чтобы грамотно и законно защищать свою приватность, вам нужно использовать правильные слова и целеполагание. Будьте внимательны — и всё будет хорошо!


«Данное руководство описывает технические возможности приложения. Автор не призывает к нарушению законодательства РФ. Пользователь самостоятельно несёт ответственность за содержание передаваемых сообщений и выбор способа их распространения в соответствии с законами своей страны.»