Подробная инструкция: Установка P2P-соединения Synapse

Подробная инструкция: Установка P2P-соединения Synapse

Neuron Ecosystem

1. Этап: Создание Offer (Пользователь А)

Пользователь А начинает процесс, открыв приложение. Первым делом необходимо нажать кнопку "1. Создать Offer". После этого приложение начнет сбор сетевых данных, сгенерирует P2P-предложение (SDP Offer) и самое главное — свою пару ключей для E2EE (Diffie-Hellman Key Pair). Дождитесь, пока в статусной строке появится сообщение: "Offer + DH Key готов. Скопируйте." или аналогичное. Далее, Пользователю А необходимо нажать кнопку "Скопировать Offer/Answer" рядом с верхним текстовым полем, чтобы скопировать сгенерированный JSON-текст, который содержит как SDP Offer, так и публичный ключ шифрования. Этот скопированный JSON-текст Пользователь А должен полностью передать Пользователю Б любым внешним способом (например, через почту или СМС).

2. Этап: Создание Answer (Пользователь Б)

Получив JSON-текст от А, Пользователь Б должен полностью вставить его в нижнее поле: "Вставьте Offer или Answer JSON сюда...". Затем необходимо нажать кнопку "2. Готово (Обработать Offer/Answer)". Приложение Пользователя Б проанализирует полученный Offer, сгенерирует свою собственную пару ключей DH, а затем, используя публичный ключ А, вычислит общий секретный ключ E2EE. После этого приложение автоматически сгенерирует Ответ (Answer) в верхнем поле. Дождитесь появления статуса: "Answer + DH Key готов. Скопируйте и отправьте." Пользователь Б нажимает кнопку "Скопировать Offer/Answer", чтобы скопировать новый JSON-текст, и отправляет его обратно Пользователю А.

3. Этап: Завершение Соединения (Пользователь А)

Получив JSON-текст Answer от Б, Пользователь А вставляет его в нижнее поле: "Вставьте Offer или Answer JSON сюда...". Снова нажмите кнопку "2. Готово (Обработать Offer/Answer)". Приложение А импортирует Ответ и публичный DH-ключ Пользователя Б, вычисляет тот же самый общий секретный ключ E2EE, и завершает процесс установки P2P-связи. После успешного обмена ICE-кандидатами и установки канала данных, статус изменится на "E2EE АКТИВНО! Соединение установлено."

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


Примечание:
По одному обмену офферами (Offer/Answer) можно переписываться неограниченное время.

Обмен Offer/Answer (SDP) и ключами шифрования DH — это процесс установления прямого P2P-соединения WebRTC. Как только соединение установлено (статус Connected) и канал данных открыт, оно остается активным до тех пор, пока:

  1. Оба пользователя остаются онлайн и не закрывают вкладку браузера.
  2. Не происходит серьезного сетевого сбоя или изменения (например, один из пользователей переключается с Wi-Fi на мобильные данные, что может привести к смене IP-адреса и разрыву P2P-соединения).

Важные моменты:

  • P2P-соединение — это прямой канал. Оно не зависит от сервера (кроме как для первоначального обмена адресами/сигнализации), поэтому, пока канал открыт, вы можете отправлять любое количество сообщений, фотографий и других данных.
  • Срок действия ключа E2EE. Ключ шифрования, который вы обмениваете по протоколу Diffie-Hellman, действителен на все время существования этого конкретного P2P-соединения. Он не имеет срока годности и позволяет шифровать и расшифровывать сообщения без ограничений по количеству.
  • Необходимость повторного обмена. Если один из пользователей закрыл вкладку или потерял соединение, P2P-связь будет разорвана. Для восстановления связи и обеспечения новой безопасности потребуется повторить весь процесс обмена Offer/Answer и DH-ключами.


Report Page