Первый продукт · Калькулятор

Калькулятор снаружи.
Связь внутри.

Снаружи — обычный калькулятор: считает как любой стандартный. Внутри — зашифрованный мессенджер с голосовыми и видеозвонками. Доступ открывается только известной вам последовательностью действий и PIN-кодом.

Что внутри

Полноценный калькулятор, который реально считает. Внутри — личный мессенджер со сквозным шифрованием, звонками, вложениями и аккуратным механизмом входа.

Обложка

Настоящий калькулятор

Работает как обычный: арифметика, проценты, память, история. Проходит визуальную проверку — снаружи это просто калькулятор, а не иконка «скрытой галереи».

Вход

Секретная последовательность

Очистка истории + код 3826 на экране калькулятора активирует скрытый режим. Далее — ваш персональный PIN из четырёх цифр для открытия чата. Код 444= — полное стирание локальных данных.

Сообщения

Чаты со сквозным шифрованием

Текст, голосовые, фото, видео, документы. Вложения шифруются на устройстве перед отправкой. Превью и миниатюры создаются локально.

Звонки

Голос и видео

P2P-звонки через WebRTC с DTLS-SRTP. Ключи согласуются напрямую между устройствами, сервер помогает только установить соединение.

Аккаунт

Email + код

Регистрация по адресу почты: код приходит письмом. Вход по паролю. Сервер не видит ни PIN, ни содержимое сообщений.

Паника

Мгновенное стирание

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

Приватность

Минимум метаданных

Нет рекламы, нет трекеров, нет аналитики. Нет доступа к контактам «на всякий случай». Приложения из магазинов сверяются с нашей подписью.

Платформы

Все основные

iPhone, iPad, Android, Windows и Linux. Одна учётная запись — одна и та же переписка везде.

Шифрование и приватность

Честно: всё, что стоит знать о том, как устроена безопасность. Никаких «военных уровней шифрования» в маркетинговом смысле — конкретные алгоритмы и где они применяются.

E2E

Сквозное шифрование

Протокол на базе X3DH + Double Ratchet (как в Signal). Forward-secrecy: даже если сервер будет скомпрометирован, прошлые сообщения не раскроются. Ключи никогда не покидают устройство.

Симметрика

AES-256-GCM / ChaCha20-Poly1305

AES-256-GCM для сообщений, вложений и базы. На устройствах без аппаратного AES (некоторые бюджетные Android) — ChaCha20-Poly1305. Каждое сообщение — свой nonce.

Асимметрика

Curve25519 · Ed25519

X25519 для согласования ключей (ECDH), Ed25519 для подписи identity-ключа. Короткие, быстрые, с проверенной стойкостью.

Локальное хранилище

SQLCipher + Keystore

База сообщений зашифрована AES-256 в SQLCipher. Мастер-ключ хранится в Android Keystore / iOS Keychain / Windows DPAPI / Linux libsecret. PIN разблокирует ключ из защищённого хранилища.

Вложения

Шифрованный upload

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

Звонки

DTLS-SRTP + ZRTP-fingerprint

Медиа-поток защищён SRTP, ключи — DTLS. Отпечаток ключа (safety number) можно сверить визуально внутри звонка — защита от MITM.

Сервер

Что видит сервер

Только факт «A отправил что-то B» и размер зашифрованного пакета. Никакого содержимого, никакого списка контактов, никаких групп в открытом виде. Доставка по relay, логи минимальны.

Пароли

Argon2id

Пароль аккаунта растягивается Argon2id (memory-hard) — брутфорс требует гигабайты памяти. На сервер уходит только верификатор, не пароль.

Бэкап

Ключ на устройстве

Автоматических облачных бэкапов нет. Хотите перенести переписку — экспорт шифруется вашим паролем и переносится вручную. Забыли пароль — данные не восстанавливаются никем. Это осознанный компромисс в пользу приватности.

Стирание

Мгновенное self-destruct

Комбинация 444= затирает мастер-ключ в Keystore и удаляет базу. Без ключа зашифрованная база бесполезна даже при физическом извлечении памяти.

Код

Проверяемость

Используются общепринятые криптобиблиотеки: libsodium, OpenSSL (LTS), SQLCipher. Своя криптография не придумывается — это принципиально.

Обновления

Подписанные сборки

APK и desktop-сборки подписаны одним ключом. Приложение проверяет подпись перед обновлением — подменённую сборку вы не установите.

Загрузка

Для iPhone требуется приложение TestFlight от Apple (бесплатно). Прямые APK/Windows/Linux-файлы можно забрать прямо сейчас.

Android

Мобильный APK

Установка вручную из файла. Обновления проверяются внутри приложения. Подпись сборки сверяется при установке обновления.

iOS

iPhone и iPad

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

Desktop

Windows и Linux

Архив установщика для Windows и портативный AppImage для Linux. Запускаются без прав администратора.

Второй продукт · Наблюдатель · v0.2

Наблюдатель.
Контроль трафика, микрофона и камеры.

Показывает, какие приложения отправляют данные в сеть и когда включается микрофон или камера. Локальный движок корреляции с учётом контекста: во время звонка или VoIP алертов нет. Всё на устройстве. Без облака. Android / macOS / Windows / Linux.

Что делает

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

Карта сети

Кто и куда шлёт

Живая лента TCP/UDP соединений с именем приложения, доменом, IP, портом и протоколом. Резолвинг UID процесса в имя пакета через ConnectivityManager и PackageManager.

Устройства

Микрофон и камера

Отслеживание через AudioManager.AudioRecordingCallback и CameraManager.AvailabilityCallback. Отдельные карточки для записи экрана. Реакция в реальном времени.

Контекст

Умный движок алертов

Определяет, идёт ли звонок (TelephonyManager), активен ли VoIP-режим (AudioManager.mode), какое приложение на переднем плане (UsageStats). Не алертит на «микрофон», если вы сами говорите в Telegram или по сотовой связи.

Корреляция

Критические алерты

«Микрофон активен + сеть того же процесса в окне 10 секунд» = CRITICAL. Камера на заблокированном экране — отдельный красный алерт. Журнал с подтверждением и фильтром по severity.

Правила

12 готовых шаблонов

Блок трекеров (GA, Facebook, AppsFlyer, Adjust, Mixpanel, Branch, Amplitude, Kochava), блок рекламы, алерты mic/cam, запрет фоновой передачи, расписание «рабочие часы» и «ночной режим». Плюс свои правила.

Профили

Дом · Работа · Wi-Fi · Путешествие · Максимум

Одним переключением меняется чувствительность, DNS-фильтр, политика незнакомых сетей, лимиты mobile-трафика и строгость корреляции.

DNS

Фильтрация трекеров

Четыре режима: выкл / блок трекеров / строгая (трекеры + реклама) / свой список. Выбор провайдера: Cloudflare 1.1.1.1, Quad9, Google, AdGuard или собственный сервер.

Приватность

Всё локально

Ничего не уходит с устройства. SQLCipher для журнала. PIN на запуск. Телеметрия отключена по умолчанию. На Android — VpnService как локальный наблюдатель, трафик никуда не перенаправляется.

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

Главное отличие от обычных network-мониторов: движок учитывает, что вы делаете прямо сейчас. Ни один параноидальный алерт не сработает, если вы явно сами звоните, записываете голос или пользуетесь камерой.

Сотовый звонок

TelephonyManager.callState

CALL_STATE_OFFHOOK или CALL_STATE_RINGING — микрофон ожидаемо активен. Алерты по микрофону автоматически подавляются. В профиле «Параноик» подавление можно отключить.

VoIP

AudioManager.mode

MODE_IN_COMMUNICATION ловит WhatsApp, Telegram, Zoom, Teams, Skype, Meet, Viber, Discord. Контекст — «активный VoIP-звонок», шум подавлен.

Foreground

UsageStatsManager

Если источник — приложение на переднем плане (камера, диктофон, мессенджер из белого списка), алерт не поднимается. Доверенные приложения выставляются в настройках.

Экран и DND

PowerManager · NotificationManager

Отдельная обработка «экран выключен» (повышает severity для камеры до критического) и «Не беспокоить» (тишина кроме критических). Критические всегда проходят даже в DND.

Настройки — как в iOS

Сгруппированные inset-списки, тумблеры, bottom-sheet пикеры. Полный контроль над алертами, сетью, устройствами и приватностью.

Чувствительность

Низкая · Средняя · Высокая · Параноик

От «только явные утечки» до «алерт на любое исходящее соединение». Выбор отражается в движке корреляции немедленно.

Уведомления

Звук · Вибрация · Push

Три стиля алертов: сдержанный, стандартный, настойчивый. Отдельный тумблер «критические в обход DND». Snooze: 15 минут, 1 час, до утра.

Сеть

Политика трафика

Незнакомая сеть: разрешать / предупреждать / блокировать. Запрет фоновой передачи. Ограничение на mobile. Предупреждения о серверах в чувствительных юрисдикциях.

Списки

Белые и чёрные

Доверенные приложения (10 предустановок: WhatsApp, Telegram, Zoom, Teams…), блок-лист приложений, доверенные домены, блок-домены (трекеры уже внутри), доверенные Wi-Fi.

Камера и микрофон

Floating-индикатор

Зелёная/оранжевая точка поверх экрана, как в iOS 14+. Отдельный алерт на включение камеры при заблокированном экране.

Журнал

Хранение и экспорт

Выбор срока: 7 дней, 30 дней, 3 месяца, 1 год. Шифрование базы (SQLCipher). PIN при запуске. Автоматическое истечение старых записей.

Скачать «Наблюдатель»

Android — готовый APK, можно ставить прямо сейчас. macOS, Windows и Linux — сборка в работе, ссылки появятся здесь.

Android · v0.2.0

APK для Android 10+

Установка из файла. Приложение запросит разрешения: локальный VPN (для имён процессов в соединениях), READ_PHONE_STATE (контекст звонка), PACKAGE_USAGE_STATS (foreground-приложение), DND. Без обязательного root.

Скачать APK ~143 МБ · debug · Apple UI
macOS

Apple Silicon / Intel

Flutter GUI + lsof для соединений, AudioObject / AVCaptureDevice для микрофона и камеры. Установка в /Applications.

Windows

x64

Flutter Windows + PowerShell-агент: Get-NetTCPConnection, CapabilityAccessManager\ConsentStore для mic/cam.

Linux

x86_64 AppImage

Flutter Linux + ss/fuser для соединений, /dev/snd и /dev/video* для устройств. Один файл, запускается без установки.

Третий продукт · Надежда+ · v0.1 MVP

Надежда+.
Браузер, который не сдаёт.

Приватный браузер со строгим Apple-стилем. Рандомизирует отпечаток устройства и канвас, подмешивает decoy-запросы в поиск, пускает трафик через Tor (Orbot) и WireGuard прямо в настройках. Ядро приватности — на Rust, UI — Jetpack Compose. Android — уже сейчас, Windows — следом.

Что делает

Обычный браузер снаружи — с нормальным видео, аудио и JavaScript. Внутри — набор защит, которые закрывают большинство путей деанонимизации: от fingerprint и canvas до отслеживаемых поисковых запросов. Всё настраивается уровнем приватности: Speed, Balanced, Private, Paranoid.

Fingerprint

Подмена отпечатка

User-Agent, platform, hardwareConcurrency, deviceMemory, разрешение экрана, WebGL vendor/renderer, languages и timezone — выбираются из пула реальных устройств (Chrome на Mac, Edge на Windows, Chrome Mobile на Pixel, Samsung Browser) по session-ID.

Canvas · WebGL

Детерминированный шум

Перехватываются getImageData, toDataURL, WebGL.getParameter и AnalyserNode.getFloatFrequencyData. В пиксели и частоты подмешивается невидимый шум, стабильный в рамках сессии — сайт видит «другое устройство», но рендер не ломается.

Запросы

Decoy-поиск

Вместе с реальным запросом в фоновых WebView отправляется 2–8 правдоподобных ложных запросов с случайными задержками. Реальный запрос гарантированно не первый и не последний в расписании. Провайдер и поисковик видят шум, а не вас.

Tor

Через Orbot

Браузер детектирует установленный Orbot (официальный Tor-клиент от Tor Project), отправляет START-broadcast и подключает WebView к 127.0.0.1:8118 через androidx.webkit.ProxyController. Нет Orbot — кнопка «Установить» ведёт в Google Play.

WireGuard

Свой VPN в браузере

Вставьте .conf от Mullvad / IVPN / любого своего сервера — браузер поднимает туннель через com.wireguard.android:tunnel (это нативный GoBackend от WireGuard Project) и VpnService Android. Статус с endpoint в реальном времени.

Трекеры

Блокировка доменов

Встроенный hosts-лист перехватывает запросы к известным трекерам (Google Analytics, Facebook Pixel, DoubleClick, Hotjar, Segment и др.) прямо в shouldInterceptRequest. Счётчик блокировок виден в углу экрана.

WebRTC

Защита от утечки IP

Конструктор RTCPeerConnection патчится на стороне JavaScript: отбрасываются кандидаты с локальными IP. Реальный адрес не утекает через STUN/ICE даже при включённых звонках.

Уровни

Speed · Balanced · Private · Paranoid

Паранойя регулируется одним тумблером: от минимальной защиты с блокировкой трекеров до агрессивного шума, 8 decoy-запросов и ротации exit-нод Tor на каждый поиск.

UI

Строгий Apple-стиль

Jetpack Compose, принудительный dark-режим, SF-метрики шрифта, AppleBlue #0A84FF, edge-to-edge, прозрачные system bars, сгруппированные карточки с inset-бордерами — как в настройках iOS.

Что внутри технически

Без магии. Приватность собирается из пяти независимых крейтов на Rust, подключённых через FFI/JNI. Kotlin-сторона — только UI и интеграция с системой.

nadezhda-fingerprint

Rust · пул устройств

Детерминированный генератор профиля из session-ID. Пул из 20+ реальных шаблонов устройств разных классов (DesktopMac / DesktopWin / MobileAndroid / MobileIOS / Tablet). Отдаёт JS-инъекцию для WebView.

nadezhda-canvas-noise

Rust · детерминированный шум

ChaCha20-seeded PRNG. Перехват Canvas/WebGL/AudioContext на JS-уровне: ±1 бит по каждому каналу пикселя, шум масштабируется уровнем защиты. WebRTC leak-guard в том же payload.

nadezhda-query-obfuscator

Rust · расписание decoy

Планировщик гарантирует: реальный запрос не первый и не последний. Задержки в диапазоне 400 мс – 4 с, реальный запрос попадает между двумя соседними decoy. Пул из 200+ правдоподобных шаблонов поиска (погода, рецепты, навигация).

nadezhda-core

Rust · фасад

Единая структура Session, объединяющая три крейта выше. Маппит PrivacyLevel в конкретные параметры шума и обфускации. Отдаёт user-agent, accept-language, injected-JS и расписание поиска.

nadezhda-ffi

C ABI + JNI

cdylib + staticlib + rlib. Stable C-интерфейс для Windows (WebView2 / Tauri) и полноценный JNI-модуль для Android. Mutex-защищённая таблица хендлов сессий. cargo-ndk собирает под arm64-v8a, armeabi-v7a, x86_64.

nadezhda-tor-bridge

Rust · будущий arti

В v0.1 — стабильный контракт состояний (TorStatus: Off / NotInstalled / Bootstrapping / Connected / Failed) между хостом и UI. В v0.2 сюда придёт полноценный arti — Rust-реализация Tor от Tor Project, без внешних зависимостей.

Kotlin-fallback

Работает без Rust

Если .so не загрузился (старое устройство, редкий ABI) — включается чистый Kotlin-слой с упрощённым UA, ограниченным canvas-шумом и 2–4 decoy. Статус «Kotlin fallback» виден в настройках.

WebView

System WebView (Chromium)

Никакого собственного форка Chromium — используется системный WebView Android. Медиа, HTML5, JavaScript, cookies, WebGL — из коробки. Форсированный mixed-content NEVER_ALLOW, отключённый third-party cookies, форс dark-режим.

Открытый код

MIT / Apache-2.0

Все крейты и Android-проект — под двойной MIT / Apache-2.0 лицензией. Встроенная криптография не изобретается: libsodium на Rust-стороне, стандартный ChaCha20 из RustCrypto, ProxyController и WireGuard — из официальных AOSP-библиотек.

Скачать «Надежда+»

Android — MVP-сборка прямо сейчас. Windows-клиент (Tauri 2 + WebView2) и macOS-версия — в сборке, появятся здесь.

Android · v0.1.0

APK для Android 8+

Установка из файла. Разрешения: INTERNET (очевидно), FOREGROUND_SERVICE (для WireGuard-туннеля), запрос на VPN — только если вы вручную включите WireGuard. Без root и без автозапуска.

Скачать APK Apple UI · Tor · WireGuard
Windows

Tauri 2 · WebView2

Rust-ядро + React UI в Apple-стиле, нативный WebView2 (Edge Chromium). Встроенный arti вместо Orbot. Инсталлятор NSIS / MSI.

macOS

Apple Silicon

Тот же Rust-ядро, нативное SwiftUI-обёртка поверх WKWebView. Идёт следом за Windows.

Исходники

Cargo workspace

Rust-воркспейс из шести крейтов + Android-проект (Kotlin, Compose, Gradle 8.9, Kotlin 2.0). Сборка APK — одной командой ./gradlew :app:assembleDebug. Репозиторий откроем после v0.2.

Связь: zheniy314@icloud.com