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:
- 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.
- 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?).