Come verificare in modo crittografico una richiesta proviene da un server attendibile

0

Dire che ho un server centrale il cui compito è quello di dire a un carico dei miei altri server cosa fare. Questi altri server eseguono API che ascoltano le istruzioni dal mio server centrale.

Come posso garantire crittograficamente, sui miei server in ascolto, che una richiesta proviene da un server centrale?

Il server di ascolto deve essere in grado di verificare che la richiesta provenga dal mio server centrale, non deve essere in grado di firmare o crittografare le richieste, solo decrittografare o verificare la firma.

Qualsiasi cosa sul server di ascolto può essere pre-distribuita prima che il server venga distribuito.

Quali sono le mie migliori opzioni in questo caso? Certificati SSL, chiave pubblica / chiave privata, qualcos'altro? Come potrei implementarlo (spiegazione di alto livello)

    
posta cal97g 23.11.2017 - 16:34
fonte

1 risposta

1

Il tuo server centrale genera una coppia di chiavi pubblica / privata. La chiave pubblica viene distribuita a tutti i server di ascolto, la chiave privata viene mantenuta, um, privata.

Qualsiasi comando inviato dal server centrale è firmato con la sua chiave privata. La prima cosa che fa il server di ascolto quando riceve un comando è verificare la firma (usando la chiave pubblica). Se la verifica fallisce, scrivi nel log degli errori e ignora il comando.

    
risposta data 23.11.2017 - 17:41
fonte

Leggi altre domande sui tag