Criptografia da Web em LAN não controlada

Criptografia da Web em LAN não controlada

Tenho uma situação em que desejo produzir widgets (hardware físico) que se conectem a uma LAN e atuem como um servidor web, servindo conteúdo para clientes web que também estão na LAN.

O tráfego dos widgets para o cliente deve ser criptografado, mas há o problema de não ter controle da LAN ou do cliente, o que significa que é impossível configurar uma CA local ou fazer qualquer alteração no DNS.

É possível arranjar alguma maneira pela qual o widget possa fornecer dados criptografados ao cliente web.

Provavelmente é possível criar e publicar certificados para cada dispositivo se isso criar algum mecanismo para permitir que isso aconteça (vinculado a algum domínio que possuo, digamos widgetN.thedomainiown.com). Suponha que tudo na LAN possa ver as grandes internets.

Considerei algumas estratégias como segue:

  1. Crie um certificado para cada dispositivo conforme acima e envie o widget com esse certificado instalado. Entendo que isso não funcionará porque causará uma discrepância no nome do host do certificado.
  2. Faça com que o widget e o cliente se comuniquem por meio de um servidor de Internet confiável que eu controle.

No segundo caso, num extremo, todos os dados podem ser comunicados através de links seguros e retransmitidos pelo servidor confiável. Suponho que isso resolveria o problema, porém é inviável por motivos de largura de banda e latência.

Em vez disso, é possível usar o servidor confiável para configurar o link criptografado entre o widget e o cliente? Pensei em usar criptografia javascript para isso, mas tudo que li me diz que a criptografia javascript é simplesmente ruim e nunca deve ser usada. Neste caso, não estou totalmente claro qual seria o problema, então ficaria satisfeito em ser esclarecido.

Seria o caso do servidor confiável construir um aplicativo da web que encapsulasse o protocolo de criptografia e os certificados necessários que poderiam então ser usados ​​para lidar com a criptografia na LAN. Ou seja, o servidor confiável fornece a página da web usada para lidar com o tráfego local (isso é possível dada a política de mesma origem?).

informação relacionada