Perché i sistemi incorporati memorizzano il certificato pubblico del server nella ROM?

8

Nello scenario domotico, il gateway intelligente può collegare molti dispositivi intelligenti a Internet. In molti casi, il certificato pubblico di un server viene memorizzato nella ROM del sistema incorporato durante la produzione.

Ad esempio, in caso di AlertMe gateway, ogni dispositivo gateway viene prodotto con un ID univoco. Inoltre, contiene anche il certificato pubblico dei server AlertMe nella ROM. Al primo avvio, il dispositivo gateway genera una coppia di chiavi RSA casuale, si connette ai server AlertMe, verifica l'identità del server (utilizzando il certificato pubblico ROM) e fornisce al server la sua chiave pubblica casuale.

La mia domanda è, dato che nella connessione SSL / TLS il server invierà il suo certificato al gateway, perché il gateway deve memorizzare un certificato pubblico nella ROM, prima del suo primo avvio. Se, come quello che dice, è a scopo di verifica, in che modo il gateway verifica l'identità del server? Confronta solo il certificato del gateway nella ROM con il certificato del server inviato all'handshake SSL? Il sistema incorporato non può contattare la CA per verificare l'identità del server?

Inoltre, al primo avvio, il gateway genererà una coppia di chiavi RSA e quindi il certificato. Dove è il posto più sicuro nel gateway / sistema basato su Linux per memorizzare la chiave?

    
posta user824624 21.06.2013 - 06:01
fonte

2 risposte

7

Per la tua domanda sul perché il certificato del server è stato salvato nella ROM:

Il certificato salvato viene confrontato con il certificato inviato dal server. Questa è una supposizione corretta da parte tua. Pertanto, al momento è disponibile solo un server.

Chiedete perché il dispositivo non si connette facilmente a una CA. Questo sarebbe un altro modo di lavorare. Ma anche in questo caso il certificato radice CA deve essere incorporato nella ROM. Questo è necessario perché altrimenti come ti connetteresti alla CA? È necessario anche SSL / TLS per connettersi alla CA, altrimenti tutto il PKI sarebbe privo di senso. Quindi almeno un certificato deve essere incorporato nella ROM.

    
risposta data 21.06.2013 - 08:11
fonte
3

Tutta l'attività sui certificati riguarda un unico obiettivo: assicurarsi che la chiave pubblica del peer sia quella giusta. Se un dispositivo può conoscere "innatamente" (cioè dalla ROM) la chiave pubblica del server, tanto meglio; il dispositivo non ha nemmeno bisogno di guardare il certificato inviato dal server. Un modello più generico ma più complesso è quando il dispositivo conosce una chiave pubblica CA "root" ed esegue la convalida del certificato X.509 . Questo è ciò che accade con il PC di base: il sistema operativo e / o il browser sono dotati di una serie di chiavi pubbliche CA conosciute a priori e ogni certificato è convalidato da questa CA radice.

Comunque lo metti, il dispositivo deve avviare da qualche parte . La fiducia non si materializza dal nulla; è transported attraverso le firme, dalla conoscenza della chiave pubblica del firmatario a quella che è stata firmata. Ci deve essere un po 'di fiducia iniziale, che, per un dispositivo, è la sua ROM. Questa è chiamata, appropriatamente, un'ancora trust . Rendendo la chiave pubblica del server previsto l'ancoraggio sicuro è il modello meno flessibile (perché questo impedisce al server di cambiare la sua chiave pubblica, per evitare che la nuova chiave venga accettata dai dispositivi esistenti), ma anche il più semplice (il codice di decodifica del certificato del cliente vinto Non ci sono errori se il client non tenta nemmeno di decodificare alcun certificato).

Come per archiviazione della chiave privata , il dispositivo lo metterà dove può . La maggior parte dei dispositivi non ha molta scelta: quella chiave deve essere generata a bordo (quindi non può andare in ROM) e deve resistere allo spegnimento (quindi non può rimanere solo nella RAM). Questo punta ad alcuni chip EEPROM o Flash. Indipendentemente da dove è memorizzato, deve essere leggibile dal software del dispositivo, quindi se quel software viene hackerato, la chiave è toast.

I dispositivi con forti requisiti di sicurezza (ad esempio terminali di pagamento ) spesso incorporano un chip anti-manomissione che commetterà un suicidio digitale se viene rilevato un break-in (un piccolo chip RAM statico con una batteria al litio, sempre acceso). Questo tipo di archiviazione non fa nulla contro le intrusioni logiche , ma almeno previene il furto di chiavi da attacchi fisici.

    
risposta data 23.07.2013 - 19:05
fonte

Leggi altre domande sui tag