Назад | Перейти на главную страницу

Веб-шифрование в неконтролируемой локальной сети

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

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

Можно ли каким-то образом организовать виджет для передачи зашифрованных данных веб-клиенту.

Вероятно, можно создавать и публиковать сертификаты для каждого устройства, если это создает какой-то механизм, позволяющий этому случиться (привязанный к некоторому домену, который принадлежит мне, скажем, widgetN.thedomainiown.com). Предположим, все в локальной сети могут видеть большие широкие сети.

Я рассмотрел несколько следующих стратегий:

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

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

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

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