Зачем это нужно
Konstruct создан как противовес общей тенденции крупных цифровых корпораций — отслеживать поведение, накапливать и перепродавать данные пользователей, обучать модели на пользовательском контенте. Одновременно с этим государства всё больше стараются контролировать интернет, прикрываясь благими намерениями. Обычные добросовестные пользователи оказываются заложниками условий этих платформ без какой-либо альтернативы.
Но будем реалистами: Konstruct работает на базе той же коммерческой инфраструктуры, что и гиганты рынка, а значит абсолютной свободы и независимости здесь тоже быть не может. Зато в отношении своих пользователей мы делаем всё возможное: не собираем и не анализируем никакой телеметрии, даже обезличенной. Сервер хранит небольшой фиксированный набор данных, нужных для маршрутизации, а сами сообщения лежат в почтовом ящике получателя только в зашифрованном виде и удаляются по сроку хранения, а не по факту доставки: объём ящика ограничен, и ничего старше примерно 7 дней в нём не остаётся. Единственное, что остаётся видимым в сети, — корреляция по времени и IP-адрес; решение этого вопроса находится в разработке.
Из той же предпосылки вырос и транспорт: Konstruct с самого начала проектировался в расчёте на сеть, которая может быть враждебна к соединению. Устойчивость к блокировкам здесь не надстройка, добавленная после первого запрета, а исходное условие: пока прямой путь работает, используется он, а при доказанном отказе клиент меняет способ выхода в сеть сам — без настроек и без участия пользователя, если у него уже есть точка входа; в сети, заблокированной с самого начала, её нужно получить подписанной ссылкой или QR от другого человека. Гарантии это не даёт: техника блокировок развивается, и это противостояние не заканчивается. Но оно заложено в архитектуру, а не приклеено к ней сверху.
NB: внешнего аудита не было. Всё, что выше, — это наше собственное прочтение нашего же кода. Никто вне проекта его не проверял, и пока это так, считайте эти свойства заявлениями, которые мы готовы защищать, а не результатами проверки.
Открытый исходный код и участие
У каждой части Konstruct своя открытая лицензия: MPL-2.0 (ограниченный копилефт — встраивать можно, правки самих файлов нужно публиковать) для клиентских приложений и слоя защиты от блокировок, AGPL-3.0 (сильный копилефт, в том числе для работы по сети) для сервера, Apache-2.0 для общих библиотек, CC-BY-4.0 для текстов и спецификаций. Технология приватности должна быть прозрачной и проверяемой кем угодно — включая ещё не исправленные проблемы.
Контрибьюторы приветствуются — от улучшений в коде до ревью безопасности и документации.
Поддержать проект
Без рекламы, перепродажи данных и телеметрии — Konstruct живёт на добровольных донатах. Если хотите, чтобы ядро мессенджера оставалось бесплатным и независимым, донат напрямую идёт на разработку и сервер. Если цените приватность — предпочтите Monero: в отличие от биткоина в его публичной цепочке скрыты отправитель, получатель и сумма, так что донат нельзя связать с вами, а баланс не виден.
496i5qvPzRtJPQjiPXnLvEGutjHFth4pWDQaJwbbMreyaTYg4qfbo48MXrTnYH32MHiAn5GcSEN1c48EYBvVkrx9Pi5BWvn
bc1q5cthgu6k9utg9hk2mx2xshdtsrhvu54ysmqhmm
Учтите: фиатные платежи не анонимны — платёжный сервис знает, кто вы. Для приватного доната используйте Monero.
Совет по безопасности: эти адреса также опубликованы и PGP-подписаны в репозитории проекта — сверьте их там перед отправкой на случай, если эту страницу подменят. Отпечаток ключа подписи:
13AC BE18 0D7B 20A2 4D2D D6B0 99DD 3ECE 736F 0672