Unterschiedliche Sicherheitsstufen Kommunikation und Embedded-Systeme sichern

Der Einsatz von Zufallszahlen zur Verschlüsselung erschwert den Hackern ihre Aktivitäten deutlich und sichert so die Kommunikation besser ab.
Der Einsatz von Zufallszahlen zur Verschlüsselung erschwert den Hackern ihre Aktivitäten deutlich und sichert so die Kommunikation besser ab.

Jede Kette ist bekanntlich nur so stark wie ihr schwächstes Glied – deshalb will Atmel die Sicherheit von Kommunikationsketten verbessern und adressiert unterschiedliche Security-Stufen in Embedded-Systemen.

Sicherheit ist heutzutage in aller Munde, und gerade in Verbindung mit den Schlagworten Internet der Dinge (IoT) und Industrie 4.0 fallen auch Begriffe wie Security, Encryption, Hacking und viele mehr. Dazu ist zunächst eine grundsätzliche Unterscheidung nötig: Das deutsche Wort "Sicherheit" unterscheidet nicht zwischen "Security" und "Safety": Während "Safety"  den Schutz der Umgebung vor einer bestimmten Anwendung beschreibt, bezeichnet "Security" den Schutz einer Anwendung vor äußeren Einflüssen. Im Grunde gibt es im Bereich der Security drei Begriffe, die deren Anforderungen gut beschreiben und die auch kombiniert werden können:

  • Confidentiality - durch die Ver- und Entschlüsselung  von Daten wird sichergestellt, dass Nachrichten nicht von Dritten gelesen werden können.
  • Integrity - es wird sichergestellt, dass Daten und Nachricht nicht verändert wurden.
  • Authenticity - Prüfung und Sicherstellung, dass der Sender real und gültig ist.


Bei allen modernen Verschlüsselungen liegt die Sicherheit nicht in der Geheimhaltung des Verschlüsselungsalgorithmus, sondern in der Geheimhaltung des Schlüssels. Deswegen finden sich beispielsweise C-Programme für die AES-Verschlüsselung im Internet, weil es keinerlei Schwächung der Sicherheit bedeutet. Im Umkehrschluss bedeutet das natürlich, dass der Schlüssel auf jeden Fall immer geheim bleiben muss. Das gilt für die Verschlüsselung von Daten genauso wie bei einem MAC (Message Authentification Code). Deswegen ist es wichtig, eine sichere Aufbewahrung des Schlüssels zu garantieren, und dazu eignen sich Authentifizierungs-ICs, beispielsweise von Atmel.

In vielen Fällen bestehen Embedded-Systeme aus einem Mikrocontroller, der sein Programm in seinem Flash-Memory gespeichert hat. Eine Reihe von Mikrocontrollern, wie Modelle der Atmel-SAM-Reihe, aber auch Varianten der AVR-XMega-Reihe, enthalten inzwischen schon eine eigene Encryption-Hardware, so dass die Verschlüsselung nicht mehr in Software geschrieben werden muss, sondern einfach aufgerufen und danach ausgeführt wird. So kann man schnell Daten ver- und entschlüsseln. Wenn dann in jedem Gerät ein eigener Schlüssel verwendet wird, besteht schon ein gewisses Maß an Sicherheit, und wenn der Mikrocontroller in einer Applikation so eingebettet ist, dass das Produkt zerstört werden muss (z.B. mit Harz vergossen), um Zugang zum Mikrocontroller zu erlangen, dann ist das für diesen Fall meistens ausreichend sicher.

Anders sieht es aus, wenn für eine Produktreihe immer der gleiche Encryption-Schlüssel verwendet wird: Es gibt die Möglichkeit, via Microprobing nach dem Freiätzen auf das Silizium eines Mikrocontrollers zuzugreifen, er kann also "gehackt" werden. Wenn man durch diese Prozedur nicht nur den Schüssel für ein einzelnes Gerät, sondern für viele Modelle erhält, lohnt sich der Aufwand.

Bei Mikrocontrollern mit hohen Sicherheitsstandards ist dieses "Hacken" mit viel größerem Aufwand verbunden, allerdings sind die Kosten für solche Mikrocontroller auch sehr viel höher. An dieser Stelle setzen die Authentifizierungsbausteine an, denn sie bieten die gleiche sehr hohe Sicherheit wie Secure-Mikrocontroller, sind aufgrund der kleineren benutzten Siliziumfläche jedoch preislich wesentlich attraktiver.

Man kann sich diese Produkte als sicheren Speicher vorstellen, in dem der Encryption-Schlüssel sicher verwahrt wird. Neben einem Metal Shield ist auch der eigentliche Speicher verschlüsselt und nicht so leicht auffindbar wie bei einem Mikrocontroller. Atmel bietet solche Produkte mit unterschiedlichen Verschlüsselungen, wie ATSHA204A mit dem SHA-Algorithmus für eine MAC-Berechnung, mit AES (ATAES108) oder mit ECC (ATECC108 und ATECC508 mit einer asymmetrischen Verschlüsselung) an.