Открытый исходный код — начало долгосрочного доверия.

SingLinkVPN официально запустил программу открытого исходного кода и технических исследований и создал на GitHub официальный репозиторий SingLinkVPN Open Source and Technical Research («Открытый исходный код и технические исследования SingLinkVPN»).

Это не разовая публикация и не страница документов только для просмотра. Это долгосрочная инженерная работа, которая будет постоянно обновляться и со временем расширяться.

Материалы, доступные сегодня, — первый этап более широкой программы.

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

На следующих этапах SingLinkVPN планирует поэтапно публиковать дополнительные технические материалы, исследовательские отчёты и исходный код продуктов — после проверки безопасности, конфиденциальности, лицензирования и стабильности продукта. В планах — протокол VPN, VPN-клиенты и другие ключевые технологии VPN, которые после проверки окажутся пригодными для публикации.

Поэтому текущий выпуск — не завершение программы, а первый шаг в непрерывном процессе открытия исходного кода.

Официальный репозиторий уже содержит каталоги docs, data, reports, tools, tests и каталоги автоматизации GitHub для сопровождения открытой документации, исследовательских данных, материалов по безопасности, тестов производительности и открытых инструментов проверки. Репозиторий прямо описан как активно сопровождаемый проект.

Официальный репозиторий: SingLinkLabs / singlink-vpn-open-source Текущий статус: первый этап опубликован. Дополнительные технические материалы, исследовательские отчёты и исходный код продуктов будут публиковаться поэтапно.

Зачем SingLinkVPN запускает программу открытого исходного кода?

VPN тесно связан с сетевой передачей данных, безопасностью, конфиденциальностью и обработкой данных.

Большая часть VPN-сервиса работает внутри систем, которые пользователи не могут наблюдать напрямую. Пользователи видят интерфейс приложения, список серверов, скорость подключения и описание продукта, но им непросто проверить:

  • как были измерены опубликованные результаты скорости;

  • какие версия программы и сетевая среда использовались;

  • были ли неудачные тесты записаны полностью;

  • является ли заявление о безопасности обязательством в рамках политики, внутренним тестом или независимой оценкой;

  • содержит ли отчёт даты, версии, методы и историю исправлений;

  • может ли другой исследователь воспроизвести результат;

  • можно ли отслеживать технические изменения и изменения безопасности от версии к версии.

Одни лишь заявления бренда не могут полностью ответить на эти вопросы.

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

Для этого нужна постоянная система публикации, а не просто размещение файлов в интернете:

  1. у важных технических материалов должна быть определённая версия;

  2. для измеримых заявлений должны быть указаны дата и среда тестирования;

  3. результаты производительности должны подкрепляться соответствующими данными;

  4. внутренние тесты и сторонние оценки должны чётко различаться;

  5. существенные исправления должны оставлять публичный след;

  6. исходный код продуктов должен публиковаться поэтапно после проверки безопасности;

  7. сообщество должно иметь возможность проверять структуру и полноту данных с помощью открытых инструментов.

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

Что доступно на первом этапе?

Первый этап задаёт восемь открытых направлений работы:

  1. архитектура разработки VPN и открытая техническая документация;

  2. записи о продуктах и версиях SingLinkVPN;

  3. модель безопасности и конфиденциальности;

  4. воспроизводимые методы тестирования производительности;

  5. форматы тестовых данных и структура открытых наборов данных;

  6. каталоги отчётов о безопасности, производительности и прозрачности;

  7. открытые инструменты проверки данных и исследований;

  8. сообщения об уязвимостях и ответственное раскрытие.

Вместе они создают основу, необходимую для последующей публикации исходного кода, открытых данных и независимых исследований.

1. Открытая архитектура разработки VPN и техническая документация

Первый этап включает архитектуру кроссплатформенного VPN-клиента.

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

1. Уровень интерфейса

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

Состояние подключения, показанное в интерфейсе, должно определяться фактической машиной состояний подключения, а не просто тем, нажал ли пользователь кнопку подключения.

2. Уровень оркестрации сеансов

Этот уровень отвечает за:

  • подключение;

  • отключение;

  • автоматические повторные попытки;

  • смену сети;

  • переход устройства в сон и выход из него;

  • перезапуск приложения;

  • восстановление после аварийного прерывания.

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

3. Уровень адаптера туннеля

Этот уровень интегрируется с нативными VPN API разных операционных систем, включая:

  • ввод и вывод пакетов;

  • жизненный цикл туннеля;

  • настройку MTU;

  • разрешения операционной системы;

  • ограничения на работу в фоне;

  • обратные вызовы при прерывании туннеля.

4. Уровень маршрутизации и DNS

Этот уровень управляет:

  • маршрутами по умолчанию;

  • раздельным туннелированием;

  • исключёнными маршрутами;

  • выбором DNS;

  • политикой IPv4 и IPv6;

  • доступом к локальной сети;

  • защитой от утечек DNS и маршрутов.

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

5. Транспортный уровень

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

6. Уровень конфигурации

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

7. Уровень наблюдаемости

С соблюдением мер защиты конфиденциальности этот уровень предоставляет:

  • локальное состояние работоспособности;

  • диагностику подключения;

  • классификацию ошибок;

  • воспроизводимый вывод тестов;

  • технические данные о состоянии, не содержащие сведений о сетевой активности пользователя.

Текущий выпуск охватывает высокоуровневую архитектуру и принципы безопасной разработки. Более конкретные модули и исходный код будут добавлены только после завершения соответствующих проверок.

2. Версионированная открытая запись о продуктах

SingLinkVPN также создал открытую запись о продуктах, в которой разделены разные виды информации.

Факты о продуктах

К ним относятся:

  • поддерживаемые платформы;

  • публичные версии;

  • даты выпуска;

  • официальные источники загрузки;

  • доступные контрольные суммы;

  • существенные изменения функций и совместимости.

Описания архитектуры

Они дают высокоуровневое описание устройства, не раскрывая чувствительные системы, учётные данные или рабочие среды.

Результаты измерений

Результаты производительности и технические выводы должны содержать дату, метод, среду, выборку и подтверждающие данные.

Заявления о политике

Они охватывают обязательства в области работы продукта, безопасности и конфиденциальности. Заявление о политике не выдаётся за независимую проверку.

Такое разделение помогает не смешивать политику, внутреннее тестирование, детали реализации и независимые исследования. Официальные записи о выпусках будут постепенно включать платформу, версию, дату, источник, доступные контрольные суммы, существенные изменения безопасности и совместимости, известные ограничения, а также неизменяемые теги Git или ссылки на Release.

3. Открытая модель безопасности и конфиденциальности

Безопасность нельзя описать только словами «безопасно» или «зашифровано».

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

Текущий перечень угроз включает:

  • наблюдение за трафиком в локальной сети;

  • утечки DNS;

  • утечки IPv6;

  • утечки WebRTC;

  • прерывание маршрутов при переподключении;

  • защиту трафика при переходе между Wi-Fi и мобильными сетями;

  • злонамеренные изменения удалённой конфигурации;

  • понижение версии конфигурации;

  • раскрытие учётных данных, хранящихся на устройстве;

  • риски сторонних зависимостей;

  • риски цепочки поставок при сборке и выпуске;

  • злоупотребление аккаунтами;

  • несанкционированные сеансы;

  • избыточный сбор диагностических данных или данных поддержки.

Каждый публичный тест безопасности должен указывать:

  • затронутую версию клиента;

  • операционную систему;

  • дату тестирования;

  • сетевые условия;

  • метод;

  • ожидаемое поведение;

  • наблюдаемое поведение;

  • известные ограничения.

Модель также разделяет политику, документацию по архитектуре, внутреннее тестирование и стороннюю оценку.

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

4. Воспроизводимый метод тестирования производительности VPN

На производительность VPN влияет множество внешних факторов:

  • страна или регион тестирующего;

  • провайдер широкополосного или мобильного доступа;

  • качество локальной сети;

  • международный транзит;

  • время суток;

  • производительность устройства;

  • версия клиента;

  • протокол;

  • нагрузка на сервер;

  • тестовый сервер;

  • регион назначения.

Поэтому одна пиковая скорость не отражает впечатления каждого пользователя.

Опубликованный метод требует, чтобы каждая запись включала:

  • время тестирования по UTC;

  • уникальный идентификатор теста;

  • версию клиента;

  • операционную систему;

  • тип устройства;

  • метку протокола;

  • версию методики;

  • страну или регион тестирования;

  • тип сети;

  • число замеров;

  • уровень доказательности.

Основные показатели:

Медианная задержка подключения

Медианная задержка в миллисекундах по нескольким замерам, а не один лучший результат.

Джиттер на 95-м процентиле

Верхний уровень колебаний задержки, наблюдаемый в большинстве замеров.

Доля потерянных пакетов

Доля пакетов, потерянных во время тестирования.

Медианная скорость загрузки

Медианная пропускная способность при загрузке в Mbps по нескольким замерам.

Медианная скорость отдачи

Медианная пропускная способность при отдаче в Mbps по нескольким замерам.

Доля успешных подключений

Процент успешных попыток в повторяющихся тестах подключения.

Медианное время переподключения

Медианное время, необходимое для восстановления после смены сети или прерывания.

Официальный порядок работы:

  1. зафиксировать базовые показатели сети без VPN;

  2. сохранять неизменными устройство, сеть, адрес назначения и окно замеров;

  3. выполнить прогрев, который не учитывается;

  4. повторять тесты подключения и передачи данных;

  5. сохранять неудачные замеры, а не удалять их без уведомления;

  6. публиковать агрегированные результаты и машиночитаемые данные;

  7. раскрывать известные ограничения, сбои и исключённые замеры.

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

5. Машиночитаемый открытый формат тестовых данных

Наряду с отчётами для людей SingLinkVPN публикует машиночитаемый формат данных о производительности.

JSON Schema требует, чтобы каждая запись о производительности включала:

  • test_id: идентификатор теста;

  • tested_at_utc: время тестирования по UTC;

  • client_version: версия клиента;

  • platform: платформа тестирования;

  • protocol_label: метка протокола;

  • country: страна или регион тестирования;

  • network_type: тип сети;

  • sample_count: число замеров;

  • latency_ms_median: медианная задержка;

  • jitter_ms_p95: джиттер на 95-м процентиле;

  • packet_loss_pct: доля потерянных пакетов;

  • download_mbps_median: медианная скорость загрузки;

  • upload_mbps_median: медианная скорость отдачи;

  • connection_success_pct: доля успешных подключений;

  • reconnect_ms_median: медианное время переподключения;

  • methodology_version: версия метода;

  • evidence_level: уровень доказательности.

Сейчас доказательства можно отметить как:

  • внутреннее тестирование;

  • независимое воспроизведение;

  • сторонняя оценка.

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

6. Отчёты о безопасности, производительности и прозрачности

В репозитории есть отдельный каталог отчётов для постоянной публикации:

  • отчётов о безопасности;

  • отчётов о производительности;

  • исследований конфиденциальности;

  • отчётов о прозрачности;

  • сторонних оценок;

  • независимо воспроизведённых результатов;

  • уведомлений о существенных исправлениях безопасности.

Перед публикацией в каждом официальном отчёте должны быть указаны:

  • дата публикации;

  • автор или сопровождающий;

  • затронутая версия продукта;

  • метод;

  • источник данных;

  • уровень доказательности;

  • известные ограничения;

  • история исправлений.

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

7. Открытые инструменты проверки и исследований

На первом этапе также публикуется несколько исследовательских инструментов и инструментов проверки на Python.

publication_guard.py

Этот инструмент перед публикацией проверяет документы, данные и инструменты на наличие:

  • учётных данных;

  • форматов ключей;

  • частных путей;

  • архивов;

  • двоичных файлов;

  • типов исходного кода, не одобренных для публикации;

  • файлов чрезмерного размера;

  • распространённых форматов действующих секретов;

  • содержимого, которое может описывать чувствительные системы.

validate_benchmark.py

Этот инструмент проверяет CSV-файлы тестов производительности, включая:

  • названия столбцов;

  • обязательные поля;

  • числовые диапазоны;

  • метки доказательности;

  • структуру тестовых данных.

check_relative_links.py

Этот инструмент проверяет относительные ссылки в Markdown и подтверждает, что упомянутые открытые файлы существуют.

check_multilingual_seo.py

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

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

8. Пятиуровневый открытый стандарт доказательности

Уровень первый: заявление о политике

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

Уровень второй: документация по реализации

Версионированное высокоуровневое техническое описание, не содержащее адресов серверов, учётных данных, частных API и другой чувствительной информации.

Уровень третий: внутреннее тестирование

Тест, проведённый SingLinkLabs по открытому методу с указанием даты, версии, среды и данных.

Уровень четвёртый: воспроизведённый результат

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

Уровень пятый: сторонняя оценка

Оценка, проведённая названным независимым исследователем или организацией и подкреплённая проверяемым официальным отчётом.

Эти уровни не взаимозаменяемы. Внутренние тесты нельзя называть сторонней оценкой; политику нельзя считать независимой проверкой; а публикация метода не означает, что результат уже воспроизведён.

Каждый отчёт должен отвечать на вопросы: кто пришёл к выводу, когда, с какой версией и каким методом?

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

9. Сообщения об уязвимостях и ответственное раскрытие

Открытая публикация и безопасное раскрытие должны работать вместе.

Неисправленные уязвимости, действующие учётные данные, частные конечные точки, адреса серверов и данные пользователей нельзя публиковать в открытом Issue.

Сообщения об уязвимостях следует отправлять конфиденциально — через адрес электронной почты для вопросов безопасности или GitHub Security Advisories — с явной пометкой, что это раскрытие информации о безопасности. Если адрес электронной почты для вопросов безопасности не опубликован, обратитесь к файлу `SECURITY.md` в репозитории и не пытайтесь угадать адрес.

Сообщение должно включать:

  • затронутую версию;

  • затронутую платформу;

  • условия воспроизведения;

  • влияние на безопасность;

  • безопасный способ связаться с автором сообщения;

  • материалы для воспроизведения, не содержащие реальных данных пользователей.

Сообщения о безопасности проходят следующие этапы:

  1. сортировка и подтверждение;

  2. оценка влияния;

  3. устранение;

  4. выпуск исправленной версии;

  5. разумный срок на обновление;

  6. публикация бюллетеня безопасности.

Публичные бюллетени отделяют подтверждённое влияние от гипотетического риска и указывают затронутые и исправленные версии.

10. Открытые данные — не открытые данные пользователей

Техническая прозрачность не должна достигаться за счёт конфиденциальности пользователей.

Репозиторий запрещает, чтобы Issue, pull request, наборы данных или исследовательские документы содержали:

  • персональные данные;

  • идентификаторы аккаунтов;

  • платёжные данные;

  • переписку с поддержкой;

  • частные IP-адреса;

  • токены доступа;

  • рабочие учётные данные;

  • рабочие журналы;

  • необработанный рабочий трафик;

  • тестовые данные, позволяющие идентифицировать отдельного пользователя.

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

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

11. Как может участвовать сообщество?

Разработчики, исследователи безопасности и участники сообщества могут:

  • улучшать техническую документацию;

  • исправлять ошибки в документации;

  • улучшать переводы на традиционный китайский, упрощённый китайский и английский;

  • повышать воспроизводимость метода тестирования;

  • повышать качество открытых данных;

  • улучшать доступность;

  • добавлять исследовательские инструменты;

  • улучшать проверку форматов;

  • находить битые ссылки;

  • предлагать новые открытые методы исследований;

  • предлагать улучшения в построении тестов;

  • воспроизводить открытые тесты в рамках правил безопасности.

Вклад не должен содержать:

  • неодобренный исходный код продуктов;

  • информацию о частной инфраструктуре;

  • учётные данные или ключи;

  • данные пользователей;

  • частные конечные точки;

  • рабочие журналы;

  • полные инструкции по эксплуатации неисправленной уязвимости.

Каждый измеримый вклад также должен указывать свой источник, метод, дату и ограничения.

Значит ли это, что исходный код SingLinkVPN теперь полностью открыт?

Нет. Это первый этап, а не последний.

На первом этапе приоритет отдаётся:

  • технической документации;

  • архитектуре разработки;

  • моделям безопасности и конфиденциальности;

  • методам тестирования производительности;

  • машиночитаемым форматам данных;

  • инструментам проверки;

  • политике доказательности и публикации;

  • ответственному раскрытию;

  • основе для будущих отчётов и публикаций исходного кода.

В первый этап не входят:

  • полный исходный код VPN-клиента;

  • исходный код серверной части;

  • исходный код платёжной системы;

  • конфигурация рабочих серверов;

  • частные API;

  • учётные данные для аутентификации;

  • чувствительные детали реализации обхода блокировок и противодействия в сети;

  • полный исходный код основного протокола.

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

После завершения проверки следующие выпуски будут включать:

  • чётко определённый каталог открытого исходного кода;

  • соответствующую лицензию;

  • историю версий;

  • границы безопасности;

  • журнал изменений;

  • дату публикации;

  • проверяемый тег Git или Release.

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

Лицензии будут определяться по мере публикации новых материалов

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

Пока явная лицензия не опубликована, пользователи не должны считать, что получили:

  • право на копирование;

  • право на изменение;

  • право на повторное распространение;

  • право на коммерческое использование;

  • право на перелицензирование.

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

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

Долгосрочное направление программы

Направление ясно: постоянно увеличивать объём технических материалов, которые открыты, проверяемы и воспроизводимы.

1. Дальнейшее расширение открытой технической документации

Сюда входят жизненные циклы соединений, маршрутизация, DNS, смена сети, безопасная конфигурация и тестирование на разных платформах.

2. Дальнейшая публикация версионированных записей о продуктах

В записи будут добавляться платформы, версии, даты, контрольные суммы, существенные изменения, известные ограничения и стабильные ссылки для цитирования.

3. Дальнейшее добавление реальных наборов данных о производительности

Датированные, версионированные, привязанные к среде машиночитаемые данные будут публиковаться по открытому методу.

4. Дальнейшая публикация отчётов о безопасности, производительности и прозрачности

В отчётах будут разделяться политика, внутреннее тестирование, независимое воспроизведение и сторонняя оценка.

5. Поощрение независимого воспроизведения

Исследователи могут использовать те же методы и форматы, чтобы сравнивать разные сети, устройства и регионы.

6. Дальнейшее улучшение инструментов публикации и работы с данными

Автоматизация будет расширяться в части форматирования, безопасности, документации и процесса тестирования.

7. Поэтапная публикация исходного кода продуктов VPN

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

8. Более полная история раскрытий и исправлений

У существенных проблем безопасности, затронутых и исправленных версий, а также последующих обновлений будет понятная история.

Репозиторий содержит метаданные для цитирования. Исследователям следует ссылаться на помеченные тегами выпуски Release, неизменяемые коммиты и фактически использованные датированные отчёты или наборы данных, а не на недатированные рекламные материалы.

От публичных заявлений к устойчивой проверке

Открытый исходный код не должен быть лишь событием запуска.

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

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

Во-первых, создать открытую точку входа

Технические материалы, а также материалы о безопасности, конфиденциальности и производительности, которые раньше были разрознены, собраны в сопровождаемом репозитории на GitHub.

Во-вторых, установить стандарты публикации

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

В-третьих, заложить основу для дальнейшего открытия кода

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

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

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

SingLinkVPN официально запустил программу открытого исходного кода?

Да. Официальный репозиторий открытого исходного кода и технических исследований SingLinkVPN работает, а документация, исследовательские методы, форматы данных и инструменты проверки первого этапа опубликованы.

Весь исходный код VPN уже открыт?

Нет. Исходный код протокола, клиентов и других продуктов SingLinkVPN будет публиковаться помодульно после проверки безопасности, конфиденциальности, зависимостей и лицензирования.

Почему бы не опубликовать всё сразу?

VPN-продукт может содержать информацию о рабочих серверах, учётные данные, частные API, чувствительные защитные механизмы, сторонние зависимости и код под разными лицензиями.

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

Будут ли опубликованы реальные данные о производительности?

Да. Метод и машиночитаемый формат — первый шаг. Затем последуют датированные, версионированные данные и отчёты с указанием среды, размера выборки и ограничений.

Будут ли отчёты о безопасности и прозрачности публичными?

Да. В репозитории SingLinkVPN есть отдельный каталог отчётов и правила публикации. Отчёты будут добавляться, когда будут готовы их доказательства, методы, версии и ограничения.

Означает ли публикация модели безопасности, что сторонний аудит завершён?

Нет. Модель безопасности — открытая основа для последующего тестирования и оценки.

В сторонней оценке будет указан оценщик и дана ссылка на проверяемый отчёт. Она не будет выдаваться за внутреннее тестирование.

Что могут внести разработчики?

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

Об уязвимостях безопасности нужно сообщать конфиденциально, а не публиковать их в открытом Issue.

Будут ли открытые данные содержать данные пользователей?

Нет. Открытые данные должны быть агрегированы или обезличены и не могут содержать данные аккаунтов, платёжные данные, частные IP-адреса, токены доступа, рабочие журналы или необработанный рабочий трафик.

Заключение: открытый исходный код — начало долгосрочного доверия

Программа открытого исходного кода SingLinkVPN уже идёт.

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

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

Это не разовое объявление бренда и не последний шаг. Это непрерывная инженерная работа.

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

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

Открытый исходный код — начало долгосрочного доверия.

И это только первый шаг.

Открыть официальный репозиторий открытого исходного кода SingLinkVPN