Как сделать шифрованный канал между 2 приложениями? Есть 2 приложения (node.js в моем случае), между которыми я хочу установить шифрованный канал и обмениваться сообщениями.
Это почти полностью решается TLS и клиентской аутентификацией. Например как-то так: https://gist.github.com/pcan/e384fcad2a83e3ce20f9a... .
Однако есть проблема:
Такой подход предполагает создание серверного сертификата, который привязан к доменному имени: Specify server Common Name, like 'localhost' or 'server.localhost'. The client will verify this, so make sure you have a vaild DNS name for this.
А мне хотелось бы избежать привязки, так как условный сервер в данном случае не имеет и не может иметь ни доменного имени, ни статического IP.
Таким образом хочется получить схему, где есть 2 хоста у которых может меняться IP и нет доменного имени. И они должны иметь возможность подключиться друг к другу (инициатором-"клиентом" соединения может выступать любой) как-то так например: connectTo('123.123.123.123:8000');
При этом есть возможность заранее обменяться ключами / сертификатами.
Возможно ли это с помощью TLS?
И насколько адекватно и безопасно использовать обычные сокеты и шифровать контент? (примерно так https://stackoverflow.com/questions/22738754/node-...

21 Авг 2019 в 07:11
257 +1
0
Ответы
1

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

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

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

20 Апр 2024 в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир