Wie finden individuelle Sicherheitszertifikate ihren Weg in Massenprodukte?

Amazon und Microsoft verfügen beide über IoT-Dienste, die Nachrichten- und Zustandsvermittlung verwalten. Diese Art von Diensten erfordert im Allgemeinen, dass Maschinen über eindeutige Sicherheitszertifikate verfügen, die in die Firmware eingebettet sind, damit sie sich sicher bei dem Dienst authentifizieren können.

Wie finden solche Sicherheitszertifikate ihren Weg in die Firmware von Massenprodukten? Ist es die Aufgabe des Herstellers, die Firmware mit einem eindeutigen Sicherheitszertifikat, das pro Maschine installiert ist, auf den Mikrocontroller zu brennen? Oder stellt ein Unternehmen seine eigenen Mitarbeiter ein, um den Versand von Mikrocontrollern anzunehmen, die Firmware zu laden und sie vorinstalliert an die Hersteller zu schicken?

Neugierig, wie das in der Praxis umgesetzt wird.

Antworten (1)

In vielen Fällen wird der private Schlüssel in solchen Geräten von der Firmware generiert, basierend auf einigen zufälligen Eingaben (wie thermischem Rauschen). In diesem Fall existiert der Schlüssel niemals außerhalb des Geräts und es gibt keine einfache Möglichkeit, ihn zu extrahieren. Der Vorteil dieser Methode besteht darin, dass die Massenproduktion von einem externen Unternehmen durchgeführt werden kann, dem Sie nicht vollständig vertrauen.

Auch eine Off-Device-Schlüsselgenerierung ist möglich und wird genutzt. In diesem Fall müssen Sie der Fabrik vertrauen, die die Firmware in die Chips brennt.

Die Dokumentation der WolfSSL-Bibliothek gibt Entwicklern, die sie verwenden, die folgenden Ratschläge:

1. Jedes Gerät, das als Server fungiert, sollte einen eindeutigen privaten Schlüssel haben, genau wie in der nicht eingebetteten Welt.

2.Wenn der Schlüssel vor der Auslieferung nicht auf dem Gerät platziert werden kann, lassen Sie ihn während der Einrichtung generieren.

3. Wenn das Gerät während der Einrichtung nicht genügend Leistung hat, um seinen eigenen Schlüssel zu generieren, lassen Sie den Client, der das Gerät einrichtet, den Schlüssel generieren und an das Gerät senden.

4. Wenn der Client nicht in der Lage ist, einen privaten Schlüssel zu generieren, lassen Sie den Client einen eindeutigen privaten Schlüssel über eine SSL-Verbindung von der bekannten Website des Geräts (z. B.) abrufen.