IoT-Sicherheit: Kryptografische Grundlagen für robusten Geräteschutz
Hinweis der Redaktion: Die Sicherung des Internet of Things ist essenziell für die Integrität von Datenströmen, Firmware und den damit verbundenen Unternehmensressourcen. IoT-Sicherheit ist eine vielschichtige Herausforderung, die einen systematischen Ansatz zur Bedrohungserkennung und Implementierung effektiver Gegenmaßnahmen erfordert.
Adaptiert aus „Internet of Things for Architects“ von Perry Lea.
Kapitel 12. IoT-Sicherheit
Kryptografie
Verschlüsselung und Vertraulichkeit sind für IoT-Implementierungen unverzichtbar. Sie schützen Kommunikation, Firmware und Authentifizierungsprozesse. In der Praxis arbeiten wir mit drei kryptografischen Kernprimitiven:
- Symmetrische Verschlüsselung – Derselbe Schlüssel verschlüsselt und entschlüsselt Daten. Gängige Algorithmen sind RC5, DES, 3DES und der Industriestandard AES.
- Asymmetrische Verschlüsselung (Public-Key) – Ein öffentlich geteilter Schlüssel verschlüsselt Daten, nur der Inhaber des zugehörigen privaten Schlüssels kann entschlüsseln. Dieses asymmetrische Schema ermöglicht auch Authentifizierung und Non-Repudiation. Weit verbreitete Protokolle wie Elliptic Curve Cryptography, PGP, RSA, TLS und S/MIME basieren auf diesem Modell.
- Kryptografische Hash-Funktionen – Einwegfunktionen, die beliebige Daten auf einen festen Digest abbilden. MD5, SHA-1, SHA-2 und SHA-3 fallen in diese Kategorie. Hashes bilden die Grundlage für digitale Signaturen, Message Authentication Codes (MACs) und sichere Firmware-Validierung. Beim Hashen kleiner Eingaben wie Passwörter wird ein Salt angehängt, um die Entropie zu erhöhen; dies ist eine Form der Key Derivation Function (KDF).

Elemente der Kryptografie. Symmetrische Verschlüsselung erfordert identische Schlüssel für Ver- und Entschlüsselung, asymmetrische verwendet unterschiedliche Public/Private-Key-Paare. Hash-Funktionen bieten Einweg-Integritätsprüfungen.
Symmetrische Kryptografie
Bei symmetrischer Verschlüsselung ist Plaintext der Klartext-Eingang und Ciphertext der verschlüsselte Ausgang. Der Advanced Encryption Standard (AES) ist der globale Benchmark und hat ältere DES-Algorithmen abgelöst. AES entspricht FIPS 197 und ISO/IEC 18033-3 und arbeitet mit 128-Bit-Blöcken bei Schlüssellängen von 128, 192 oder 256 Bit. Längere Schlüssel bieten stärkere Sicherheit auf Kosten zusätzlicher CPU-Zyklen: 128-Bit-Schlüssel benötigen 10 Runden, 192-Bit-Schlüssel 12 Runden und 256-Bit-Schlüssel 14 Runden.
// Pseudo-Code für AES-128-Chiffre
// Eingabe: 128-Bit Plaintext
// Ausgabe: 128-Bit Ciphertext
// w: 44 32-Bit-Wörter (erweiterter Schlüssel)
state = in
w = KeyExpansion(key) // Schlüsselerweiterungsphase
AddRoundKey(state, w[0, Nb-1]) // Initialrunde
for round = 1 to Nr-1
SubBytes(state) // Nicht-lineare Substitution
ShiftRows(state) // Zeilenpermutation
MixColumns(state) // Spaltenmischung
AddRoundKey(state, w[round*Nb, (round+1)*Nb-1])
end for
SubBytes(state) // Finalrunde
ShiftRows(state)
AddRoundKey(state, w[Nr*Nb, (Nr+1)*Nb-1])
out = state
Scrollen oder Ecke ziehen zum Erweitern.
Blockchiffren wie AES verarbeiten Daten in festen Blöcken und benötigen einen Betriebsmodus, um den Algorithmus auf größere Nachrichten zu erweitern. Ein Initialisierungsvektor (IV) stellt sicher, dass identische Plaintext-Blöcke unterschiedliche Ciphertexte erzeugen, was Musteranalysen vereitelt. Gängige Modi:
- Electronic Codebook (ECB) – Einfachster Modus; jeder Block wird unabhängig verschlüsselt. Identische Blöcke ergeben identische Ciphertexte, daher für die meisten Anwendungen ungeeignet.
- Cipher Block Chaining (CBC) – Jeder Plaintext-Block wird vor der Verschlüsselung mit dem vorherigen Ciphertext-Block XOR-verknüpft, was Diffusion bietet.
- Cipher Feedback (CFB) – Ein stream-ähnlicher Modus, der den vorherigen Cipher-Ausgang in den nächsten Verschlüsselungsschritt einspeist. CFB kann nicht parallelisiert werden, erlaubt aber Wiederherstellung bei verlorenen Blöcken.
- Output Feedback (OFB) – Ähnlich wie CFB, erzeugt aber einen Keystream, der mit Plaintext XOR-verknüpft wird, was Fehlerkorrekturcodes ermöglicht.
- Counter (CTR) – Wandelt eine Blockchiffre in einen Stream Cipher mittels Nonce-Counter-Paar um, ermöglicht parallele Verschlüsselung und hohe Performance.
- CBC-MAC – Fügt CBC einen Message Authentication Code hinzu, ermöglicht Integritätsprüfung und Quellauthentifizierung.
Diese Modi stammen aus den späten 1970ern und wurden von NIST in FIPS 81 formalisiert. Sie sichern Vertraulichkeit, verhindern aber keine Manipulation. Die Kombination von Authentifizierung und Verschlüsselung führte zu Authenticated-Encryption-Modi wie AES-CCM (Counter with CBC-MAC). CCM ist integraler Bestandteil von Protokollen wie Zigbee, Bluetooth Low Energy, TLS 1.2 (nach Schlüsselaustausch), IPsec und Wi-Fi WPA2.
AES-CCM kombiniert CTR für effiziente Entschlüsselung des Ciphertext-Streams und CBC zur Generierung eines Authentifizierungs-Tags. Der Tag wird gegen einen erwarteten Wert verglichen, der aus dem entschlüsselten Payload abgeleitet wird; eine Abweichung deutet auf potenzielle Manipulation hin.

AES-CCM Modus.
In einem vollständig vernetzten Mesh aus n Knoten erfordert bidirektionale Kommunikation n(n-1)/2 eindeutige Schlüssel, was quadratisch skaliert (O(n²)). Effiziente Schlüsselmanagement-Strategien sind daher für große IoT-Implementierungen kritisch.
Internet der Dinge-Technologie
- Industrial IoT absichern: Ein praktischer Fahrplan
- Ihr IoT-Ökosystem sichern: Expertenstrategien gegen Ransomware und Cyber-Bedrohungen
- IoT-Sicherheit – Wer trägt die Verantwortung?
- Der Aufstieg des IoT: Warum Security vom ersten Tag an eingebaut sein muss
- IoT-Sicherheit: Deployment-Barrieren überwinden
- IoT-Geräte mit Deception Technology schützen
- Automation & IoT: Revolutionierung von Gesundheitslogistik und Sicherheit
- Sicherheit entfesselt IoTs volles Potenzial
- 12 essenzielle IoT-Sicherheits-Insights aus 2023
- Machine Vision: Treiber von Industry 4.0 und dem Industrial IoT