Руководство пользователя
Гибридное шифрование: роторная логика и AES‑256
RotorCrypt X · Пошаговое руководство

## 00Сменить язык

RotorCrypt X поддерживает 10 языков, охватывая около 36 % населения мира на родном языке – примерно 2,9 миллиарда человек.

🇩🇪 🇬🇧 🇫🇷 🇪🇸 🇹🇷 🇯🇵 🇨🇳 🇸🇦 🇷🇺 🇵🇹

Флаг | Язык | Носители языка | Код
--- | --- | --- | ---
🇨🇳 | Китайский | ~ 940 M | ZH
🇪🇸 | Испанский | ~ 485 M | ES
🇬🇧 | Английский | ~ 380 M | EN
🇸🇦 | Арабский | ~ 360 M | AR
🇵🇹 | Португальский | ~ 240 M | PT
🇷🇺 | Русский | ~ 150 M | RU
🇫🇷 | Французский | ~ 80 M | FR
🇹🇷 | Турецкий | ~ 80 M | TR
🇩🇪 | Немецкий | ~ 75 M | DE
🇯🇵 | Японский | ~ 125 M | JA

Итого: ~ 2 915 миллионов носителей языка ≈ 36 % населения мира (8,1 млрд).

### Как сменить язык

Нажмите на флаг текущего языка в правом верхнем углу окна программы.
Откроется меню со всеми 10 доступными языками, каждый со своим флагом.
Выберите нужный язык – интерфейс переключится немедленно, без перезапуска.
Руководство автоматически откроется на новом языке при следующем вызове.
Примечание: Настройка языка сохраняется локально и сохраняется после перезапуска.

## 01Создать контакт

Перед отправкой зашифрованного сообщения необходимо создать контакт. Программа не хранит имена в открытом виде – личность контакта хранится в зашифрованном виде. Никто, кто откроет файлы на вашем жёстком диске, не сможет идентифицировать ваши контакты.

Нажмите кнопку контакта в верхней части окна программы.
Выберите «Новый контакт» и введите имя (макс. 25 символов). Это имя является только локальным идентификатором – только вы видите его на своём устройстве.
Программа автоматически создаёт зашифрованный файл `*.key` и запись в `contact.json`. Читаемые имена в этих файлах не хранятся.
Выберите только что созданный контакт из выпадающего меню.
Примечание: Если то же имя контакта введено повторно, программа обнаруживает конфликт и сообщает об этом. Каждое имя контакта можно использовать только один раз.

## 02Красный баннер и требование рукопожатия

⛔ НЕТ РУКОПОЖАТИЯ С ЭТИМ КОНТАКТОМ ⛔ Не отправляйте конфиденциальную информацию!

Когда баннер красный, с этим контактом ещё не было рукопожатия. Наивысший уровень безопасности активируется только после рукопожатия.

Предупреждение: Не отправляйте конфиденциальную информацию при красном баннере. Только после успешного взаимного рукопожатия связь полностью защищена.

Как начать рукопожатие:

Введите любое первое сообщение в поле ввода – например, просто «Привет».
Нажмите «Зашифровать».
Скопируйте блок шифрования из поля вывода и отправьте его своему контакту – по электронной почте, мессенджеру или другим способом.

После отправки баннер меняется на синий:

📤 РУКОПОЖАТИЕ ОТПРАВЛЕНО 📤 Ожидайте ответа.

## 03Зашифровать сообщение

Выберите нужный контакт из выпадающего меню.
Выберите количество роторов. Shareware-версия: максимум 3 ротора; полная версия: значительно больше – чем больше роторов, тем надёжнее.
Введите текст в поле ввода. Прямо над полем, справа вверху, счётчик показывает оставшиеся символы – максимум 5 951 символ на сообщение.
Нажмите «Зашифровать». После короткой анимации блок шифрования появится в поле вывода.
Примечание о времени обработки: Зависит от количества роторов, длины текста и скорости компьютера. Много роторов с длинным текстом на старой машине может занять несколько секунд – это нормально.
Предупреждение: Если в поле ввода уже есть блок шифрования, используйте кнопку «Расшифровать».

## 04Копировать и отправить результат

Вы можете передать блок шифрования из поля вывода двумя способами:

Способ | Действия
--- | ---
Скопировать вручную | Нажмите «Копировать вывод». Вставьте в любое приложение – мессенджер, электронную почту, текстовый файл или куда угодно.
Прямая электронная почта | Нажмите «Отправить E-Mail». Ваш почтовый клиент откроется с блоком уже в теле сообщения.

Совет: Блок состоит только из стандартных текстовых символов и может быть вставлен в любое текстовое поле без проблем.

## 05Расшифровать сообщение (получатель)

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

## 06Отправить ответ и завершить рукопожатие

После расшифровки первого сообщения баннер меняется на жёлтый:

⏳ РУКОПОЖАТИЕ ПОЛУЧЕНО ОТ КОНТАКТА ⏳ Пожалуйста, отправьте ответ.

Рукопожатие ещё не завершено! Ваш контакт ждёт вашего ответа для подтверждения общего ключа с обеих сторон.

Введите любой ответ в поле ввода.
Нажмите «Зашифровать».
Отправьте блок шифрования обратно вашему контакту.

Как только исходный отправитель расшифрует ваш ответ, баннер на обоих устройствах станет зелёным – рукопожатие взаимно завершено.

## 07Зелёный баннер – защищённая связь

✔ РУКОПОЖАТИЕ ЗАВЕРШЕНО ✔ Связь надёжно зашифрована.

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

Даже если злоумышленник взломает одно сообщение, это не даст ему доступа к более ранним или более поздним сообщениям. Этот принцип называется прямая секретность (Forward Secrecy).

Теперь: Все сообщения в обоих направлениях полностью защищены. Зелёный баннер остаётся, пока файл ключа не изменён и доступен.

## 08Повреждённые файлы – что делать?

Программа работает с двумя типами файлов в подпапке `Key/`:

Файл | Содержание
--- | ---
`*.key` | Зашифрованный сеансовый ключ – один файл на контакт
`contact.json` | Зашифрованный список контактов – не содержит читаемых имён

Если один из этих файлов повреждён, удалён или случайно перезаписан:

Удалите повреждённый файл `*.key` и/или `contact.json`.
При следующем запуске программа автоматически обнаружит отсутствие файла и создаст новые пустые файлы.
Важно: Сообщите вашему контакту, что необходимо полностью новое рукопожатие.
Предупреждение: После удаления все предыдущие сообщения этому контакту больше нельзя расшифровать. Сделайте резервную копию важных файлов `*.key` на USB-накопителе – никогда в облаке (см. Условия использования).

## 09Количество роторов и советы для большей безопасности

Количество роторов напрямую влияет на то, сколько уровней шифрования создаёт роторный слой Enigma:

Версия | Роторы | Использование
--- | --- | ---
Shareware | Макс. 3 | Хорошо для начальных тестов и процесса рукопожатия
Полная версия | Значительно больше | Рекомендуется для всего конфиденциального содержимого – больше роторов означает больше пространства ключей

Рекомендация – варьируйте количество роторов: Не используйте одно и то же количество для каждого сообщения. Меняя его каждый раз (например, 3, затем 7, затем 12 роторов), в отправляемых блоках не будет узнаваемой закономерности. Это значительно затрудняет статистический анализ третьими лицами.
О времени обработки: На современном ПК это практически незаметно. На старом оборудовании с большим количеством роторов и длинными текстами это может занять несколько секунд – просто подождите, пока исчезнет индикатор состояния.

## 10Мобильное использование – программа на USB-накопителе

RotorCrypt X является на 100% портативной. Вы можете сохранить программу со всеми файлами ключей на USB-накопитель и запустить её на любом компьютере – без установки, без прав администратора, без следов на чужой системе.

Как это работает: Скопируйте полную папку программы (файл программы + папка `Key/`) на USB-накопитель. На любом компьютере с Windows: вставьте накопитель, запустите программу прямо с него. Все файлы ключей остаются на накопителе – ничего не сохраняется на чужом компьютере.
Ограничение: Это работает только пока USB-порт не заблокирован системным администратором. В некоторых корпоративных сетях или на правительственных компьютерах USB-порты отключены по соображениям безопасности.
Важно – защитите USB-накопитель: Любой, кто завладеет накопителем, получит доступ к вашим файлам ключей. Обращайтесь с ним так же осторожно, как с ключом от дома – никогда не оставляйте без присмотра.

## 11Техническая безопасность – почему это так надёжно

В этом разделе простым языком объясняется, что стоит за шифрованием – предварительных знаний не требуется.

### Шифрование имеет несколько независимых уровней

Роторы Enigma – это лишь один из нескольких уровней. Сообщение проходит через четыре взаимно независимых этапа. Каждый этап в отдельности уже обеспечивает значительную защиту – вместе они практически неуязвимы:

① Роторный уровень Enigma (динамическая перестановка через несколько роторов)
▼
② Шифрование AES-256-GCM (мировой военный и государственный стандарт)
▼
③ HMAC-подпись (криптографическая защита от подделки)
▼
④ Деривация ключа HKDF + автоматическая ротация ключа после каждого сообщения

Даже если злоумышленник атакует уровень ② с помощью самого быстрого компьютера в мире, ему всё равно придётся преодолеть роторный уровень Enigma. Комбинация умножает безопасность, а не просто складывает её.

### Что делает каждый компонент

Компонент | Что делает | Почему это важно
--- | --- | ---
Роторы Enigma | Каждый символ проходит через несколько вращающихся этапов перестановки. Схема соединений динамична – нет фиксированного алфавита. | Наиболее известная слабость исторической Enigma (буква никогда не могла зашифроваться в саму себя) здесь полностью устранена.
Коммутационная панель (65 530 позиций) | Все 65 530 позиций попарно соединены – как у исторической Enigma, но с астрономически большим пространством ключей. | Только коммутационная панель генерирует больше возможных конфигураций, чем атомов в видимой Вселенной.
AES-256-GCM | Современный блочный шифр, используемый военными и спецслужбами по всему миру. Каждое сообщение получает уникальное случайное значение (nonce). | Даже одинаковые сообщения каждый раз создают совершенно разный блок – статистический анализ невозможен.
HKDF (SHA-3-256) | Из одного главного ключа выводятся отдельные ключи для содержимого и аутентификации. | Предотвращает компрометацию других областей при утечке частичного ключа.
HMAC-подпись | Каждое сообщение криптографически подписывается. | Любое изменение – включая изменение одного символа – обнаруживается. Расшифровка отклоняется, получатель предупреждается.
Ротация ключа | После каждого сообщения ключ автоматически обновляется. | Скомпрометированный ключ не даёт доступа к прошлым или будущим сообщениям (прямая секретность).

### Насколько велико пространство ключей? – число, объясняющее всё

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

Для сравнения: Видимая Вселенная содержит примерно 1080 атомов. Это звучит невообразимо много – но это ничтожно мало по сравнению с тем, что генерирует RotorCrypt X.

Пространство ключей K определяется комбинацией роторов (50 роторов как пример для полной версии) и коммутационной панели:

// Коммутационная панель: количество всех возможных пар из 65 530 позиций Комбинации панели = 65 530! / (2^32 765 × 32 765!) // Общее пространство ключей K при 50 роторах K = 50! × 65 530^50 × Комбинации панели // Десятичный логарифм (= сколько цифр у числа?) log₁₀(панель) ≈ 143 581 log₁₀(50! × 65 530^50) ≈ 305 ───────────────────────────── log₁₀(K) ≈ 143 886 // Число в краткой форме: K ≈ 4 × 10^143 886 // Это число, у которого более 143 000 нулей. // Атомов во Вселенной: 10^80 → Пространство ключей в 10^143 806 раз больше.
Простыми словами: Представьте, что вы ищете иголку. Только стог сена – это не Земля, не галактика, не Вселенная – а 10143 806 вселенных, сложенных друг на друга. Таково пространство ключей RotorCrypt X.

### Сколько времени займёт атака?

Предположим совершенно нереалистичную вычислительную мощь – намного превосходящую всё, что возможно сегодня:

// Предполагаемая скорость: 10^18 тестов ключей в секунду // (в миллионы раз быстрее всех суперкомпьютеров мира вместе взятых) Необходимое время = K ÷ 10^18 ≈ 4 × 10^143 868 секунд // 1 год ≈ 3,15 × 10^7 секунд Необходимое время ≈ 1,3 × 10^143 861 лет // Возраст Вселенной ≈ 1,4 × 10^10 лет // Атака заняла бы в 10^143 851 раз больше, чем существует Вселенная.
Вывод: Классическая атака перебором физически невозможна. Не «очень сложна» – физически невозможна. Вселенная возникла бы и исчезла много раз прежде, чем был бы перебран хотя бы ничтожный процент комбинаций.

### Что насчёт квантовых компьютеров?

Квантовые компьютеры считаются главной будущей угрозой для шифрования. Наиболее эффективная квантовая атака на симметричное шифрование называется алгоритм Гровера. Он быстрее классических компьютеров – но его преимущество часто сильно преувеличивают.

Алгоритм Гровера уменьшает показатель вдвое – количество нулей. Это звучит драматично. Но взгляните на числа:

// Алгоритм Гровера: уменьшает пространство ключей вдвое (квадратный корень из K) Эффективное квантовое пространство ключей = √K ≈ 2 × 10^71 943 // Предполагаемая квантовая скорость: 10^18 операций в секунду (крайне оптимистично) Время квантовой атаки ≈ 2 × 10^71 943 ÷ 10^18 = 2 × 10^71 925 секунд Время квантовой атаки ≈ 6 × 10^71 917 лет // Возраст Вселенной ≈ 10^10 лет → атака всё равно в 10^71 907 раз длиннее.
Прямой вывод: Показатель уменьшается с 143 886 до 71 943. Оба числа астрономически велики, так что уменьшение вдвое на практике не имеет значения. Идеализированному квантовому компьютеру всё равно потребовалось бы в 1071 907 раз больше времени, чем возраст Вселенной. RotorCrypt X защищён от квантовых компьютеров на все обозримые сроки.
Почему комбинация уровней является решающей: Квантовый компьютер мог бы атаковать один уровень быстрее. Но затем ему всё равно придётся преодолеть роторный уровень Enigma – с собственным независимым пространством ключей 10143 886. Четыре уровня вместе делают любую мыслимую атаку, классическую или квантовую, практически невозможной.

## 12Новые функции безопасности

### Защита инициализации – K_current никогда в открытом виде

Сеансовый ключ K_current никогда не передаётся незащищённым при первом обмене сообщениями. Его защищает математически элегантная круговая зависимость HMAC:

Как это работает: K_current шифруется XOR с маской (HKDF блочного HMAC). Поскольку сам HMAC зависит от K_current, создаётся круговая зависимость – злоумышленнику нужен K_current для вычисления HMAC, и HMAC для демаскировки K_current. Этот круг математически неразрешим.

После завершения рукопожатия (зелёный баннер) дополнительно защищает K_PERM – постоянный локальный ключ, который никогда не покидает ваше устройство.

### Защита от повтора – каждое сообщение только один раз

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

🔒 ЭТО СООБЩЕНИЕ УЖЕ БЫЛО РАСШИФРОВАНО 🔒 По соображениям безопасности каждое сообщение можно расшифровать только один раз.

### Больше ёмкости – 5 951 символ вместо 1 947

Благодаря оптимизации внутренней структуры блока сообщение теперь вмещает 5 951 символ – значительно больше, чем раньше. Размер блока 13 600 байт остаётся идентичным.

Это соответствует: примерно 2–3 страницам плотного текста – достаточно для большинства сценариев общения.

### Дополнительные улучшения

Функция | Описание
--- | ---
Алфавитный список контактов | Контакты теперь всегда отображаются в алфавитном порядке – даже после перезапуска программы.
Пустой контакт вверху | Пустая запись в верхней части списка гарантирует, что имя контакта не видно посторонним.
Сброс количества роторов | После расшифровки количество роторов автоматически сбрасывается – чтобы вы осознанно выбирали новое количество для каждого ответа.
Улучшенная синхронизация | При проблемах с синхронизацией процесс сброса теперь выполняется полностью автоматически на обеих сторонах.

## 13Регистрация и полная версия

RotorCrypt X распространяется в виде shareware. Бесплатная версия позволяет использовать до 3 роторов. Полная версия открывает доступ ко всем 50 роторам.

### Shareware-версия

При первом запуске в папке `Key/` автоматически создаётся файл `license.key`. Этот файл идентифицирует shareware-версию. Пока не активирована полная лицензия, при выборе более 3 роторов появляется информационное окно.

### Покупка полной версии

Полная версия доступна через встроенную опцию покупки. Перейдите в меню Справка → Регистрация и нажмите «Купить». После покупки вы получите лицензионный ключ по электронной почте.

### Активация лицензии

Откройте Справка → Регистрация.
Введите своё имя в поле «Зарегистрировано на:».
Введите лицензионный ключ из письма.
Нажмите «Активировать». Программа проверит ключ и разблокирует полную версию.
Автономная работа: Активация требует однократного подключения к интернету для проверки ключа. После успешной активации программа работает полностью в автономном режиме.
Переустановка: При переустановке просто введите сохранённый лицензионный ключ повторно. Полная версия восстанавливается немедленно — без обращения к производителю.

### Окно регистрации

Статус | Отображение в окне
--- | ---
Shareware | ⚠ Не активировано – поля ввода видны, кнопка «Купить» активна
Полная версия | ✔ Полная версия активирована – имя и ключ отображены, поля заблокированы