Verschlüsselung im Prozessor Sichere Embedded-Systeme

Zu jeder Zeit müssen Daten in der vernetzten Welt vor unberechtigten Zugriffen geschützt sein. Doch die Verschlüsselung geht meist zu Lasten der Rechenleistung. Ein Beispiel anhand der Prozessor-Familie von Atmel zeigt, dass Embedded-Systeme auch ohne massive CPU-Belastung gesichert werden können.

Vernetzte Anwendungen übertragen vertrauliche Daten über öffentliche oder private Netzwerke. Ein hoher Schutz vor unberechtigten Zugriffen ist somit unverzichtbar, denn bei Sicherheitslücken sind die Nutzer meist direkt betroffen – z.B. bei einem Diebstahl von Zugangsdaten für Internet-Banking oder Kreditkartennummern oder von urheberrechtlich geschützten Daten wie digitalen Fotos, Video- oder Audioaufnahmen. Für die verschiedenen Typen vertraulicher Daten gelten unterschiedliche Sicherheitsanforderungen. Bei Metering-Anwendungen muss z.B. die Sicherheit der Daten gewährleistet sein, die beim jeweiligen Nutzer gesammelt und über das Gateway übertragen werden. Dagegen steht bei Geräten im medizinischen Bereich eher der Schutz vor nicht autorisierten Zugriffen im Vordergrund. Bei IoT-Anwendungen müssen nicht nur die Daten, sondern vor allem die Kommunikationsverbindungen geschützt werden.

Besonders während Speicherung und Übertragung in einem Embedded-System müssen die Daten geschützt sein. Eine Schwachstelle, die z.B. einen einfachen Zugriff auf geheime Schlüssel zur Ver- und Entschlüsselung von Daten erlaubt, kann die Sicherheit des gesamten Systems gefährden. Werden Informationen über ein öffentliches Netzwerk ausgetauscht, durchlaufen sie mehrere Vermittlungsknoten, deren Zuverlässigkeit fragwürdig ist. Dementsprechend müssen die Daten während der Übertragung vollständig verschlüsselt sein. Das kann mittels Ad-hoc-Funktion und kryptografischer Funktionseinheit, aber auch mit einer speziellen Hardware zur Erkennung physischer Angriffe erfolgen, die in den Mikrocontroller des Sicherheits-Host integriert sind. Eine Krypto-Funktionseinheit kann ver- und entschlüsseln sowie Signaturen und digitale Zertifikate verarbeiten. Sie bildet die Grundlage für

  • Protokolle wie WEP (Wired Equivalent Privacy) und WPA (WiFi Protected Access) zur Verschlüsselung der Kommunikation in Funknetzwerken und
  • hybride Verschlüsselungsprotokolle wie TLS (Transport Layer Security) – auch bekannt unter der Vorgängerbezeichnung SSL (Secure Sockets Layer) – und die Protokoll-Suite IPsec (Internet Protocol Security) zum Schutz von Daten bei Internetverbindungen über TCP/IP-Netzwerke.

Grundlagen der Verschlüsselung

Die unterschiedlichen Verfahren und Algorithmen, für die der Begriff „Verschlüsselung“ verwendet wird, haben alle ein gemeinsames Ziel: Den Schutz von Informationen. Die Verschlüsselungsalgorithmen sind entweder symmetrisch, wie DES (Data Encryption Standard), Triple-DES (3DES) oder AES (Advanced Encryption Standard), oder asymmetrisch, wie RSA – benannt nach den Mathematikern Rivest, Shamir und Adelman. Beim symmetrischen Verschlüsselungsalgorithmus verwenden Sender und Empfänger denselben Schlüssel. Dagegen erzeugt ein asymmetrisches Verschlüsselungssystem einen öffentlichen Schlüssel zum Verschlüsseln und zusätzlich einen geheimen zum Entschlüsseln der Daten. Ein erzeugter Schlüssel – egal ob öffentlich oder geheim – besteht dabei meist aus einer Folge von mehreren hundert Bit, wobei heute mindestens 128 bit empfohlen sind. Außerdem können Algorithmen wie EAS (Exchange ActiveSync), SHA (sicherer Hash-Algorithmus) oder ECC (Elliptische-Kurven-Kryptografie) gewährleisten, dass nur die Geräte authentifiziert werden, die tatsächlich untereinander verbunden sind. Für eine sichere Übertragung von Daten muss ein Embedded-Gerät sowohl Methode als auch Protokoll beinhalten. Im Allgemeinen erfordert die Verschlüsselung eine hohe Rechenleistung und kann daher die CPU in Embedded-Systemen massiv belasten, wenn diese nicht richtig aufgesetzt wurde.