Sto creando un sistema che permetterà all'utente di controllare un certo numero di dispositivi hardware remoti. Ogni dispositivo (il client) è connesso a un server Web micro, che risponde alle richieste HTTP (S).
Il client deve inviare dati al server (contenente lo stato corrente dell'hardware). Il server deve inviare dati al client (per dire al cliente cosa fare). Client e server possono inviare dati alla controparte quando vogliono.
Ora, sono preoccupato per la sicurezza ... Che ne dici di utilizzare HTTPS con certificato SSL autofirmato per il client?
Supponiamo che io acquisti un certificato per il mio server di dominio (fornito da una CA esterna affidabile) e creo un certificato autofirmato diverso per ogni cliente. Posso beneficiare della sicurezza HTTPS nelle due direzioni di comunicazione (da client a server e da server a client)?
In questo caso il server memorizzerà i diversi certificati client, in modo che possa stabilire una connessione sicura quando desidera inviare un comando al client. È giusto?
Modifica 1
Il "client" (il dispositivo hardware) funge da server quando riceve un comando dall'utente remoto. Funziona come client quando invia il suo stato hardware al server. Questi casi avvengono in due momenti diversi. Quindi, entrambe le parti dovrebbero essere in grado di connettersi con la controparte come client o server a seconda dei casi.