Programmierbare Logikbausteine

Raubkopierern Einhalt gebieten

10. September 2014, 10:06 Uhr | Von Tony Storey
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Funktionen für Bezahldienste absichern

Bild 1. FPGAs von Altera, Lattice und Xilinx verfügen über chipeigene Entschlüsselungs-Hardware für die Konfigurationsdaten. Typischerweise wird der Bitstream unter Verwendung des AES-Algorithmus verschlüsselt.
Bild 1. FPGAs von Altera, Lattice und Xilinx verfügen über chipeigene Entschlüsselungs-Hardware für die Konfigurationsdaten. Typischerweise wird der Bitstream unter Verwendung des AES-Algorithmus verschlüsselt.
© DigiKey

Ein mit der Designsicherheit sehr verwandtes Problem ist der Schutz von Dienstleistungen. Viele elektronische Geräte sind dafür konzipiert, sichere Transaktionen für bezahlte Dienstleistungen durchzuführen. In vielen Fällen sind es die Einnahmen für den Service, der den Großteil des Gewinns des Anbieters ausmacht. Die Hardware selbst kann zu den Herstellkosten oder darunter verkauft werden. Doch der Verkäufer muss, um sich dauerhaft Einnahmequellen zu erschließen, dafür umso sicherer sein, dass dem Benutzer mit der Hardware verbundene Dienstleistungen nur nach Zahlungseingang zur Verfügung stehen. Wenn ein Benutzer die Zahlungsmechanismen umgeht, kommt es zu einem schweren Verlust bei Umsatz und Profitabilität.

Wenn ein Hacker in der Lage ist, detaillierte Informationen über die Implementierung der Verschlüsselung zu erhalten, ist die Chance, den vom System genutzten Chiffrierschlüssel und damit die Schutzmechanismen zu knacken, sehr viel höher. Die Techniken zum Knacken einer Verschlüsselung sind nicht auf herkömmliches Reverse Engineering beschränkt. Die Analyse von „Seitenkanalinformationen“ – sei es der Energiebedarf oder die durch einen Kühlkörper abgeleitete EMI – kann wichtige Hinweise über die Verarbeitungsschritte einer Krypto-Verarbeitungseinheit liefern. Techniken dieser Art sind bereits sehr verbreitet und mündeten in einen Wettbewerb unter Sicherheitsforschern. Dieser Wettbewerb wurde schon dreimal abgehalten, um denjenigen Forscher zu finden, der am schnellsten einen geschützten Schlüssel auf einem Standardsystem entdeckt.

Schutzmaßnahmen der FPGA-Hersteller

Es dürfte also niemanden überraschen, dass die FPGA-Hersteller eine Reihe von gerätespezifischen Sicherheitsmaßnahmen eingeführt haben, um sich gegen verschiedene Formen von Fälschungen zu schützen und dem unbefugten Entsperren von IP und Dienstleistungen Einhalt zu gebieten.

Die erste Verteidigungslinie für FPGAs liegt bei der Bitstream-Verschlüsselung. Sie enthalten – zusätzlich zum obskuren Konfigurations-Bitstream-Format – eine weitere Schutzebene. Die FPGAs von Altera, Lattice und Xilinx verfügen in diesem Sinne über chipeigene Entschlüsselungs-Hardware für die Konfigurationsdaten. Typischerweise wird der Bitstream durch den Hersteller unter Verwendung des AES-Algorithmus verschlüsselt. Der AES-Algorithmus basiert auf dem Rijndael-Algorithmus und enthält nicht nur ein symmetrisches 128-bit-Datenblockchiffre, sondern auch 128-, 192- und 256-bit-Chiffrierschlüssel. Symmetrisch bedeutet, dass der gleiche Schlüssel für Verschlüsselung und Entschlüsselung verwendet wird. Jeder 128-bit-Eingangsblock (ein zweidimensionales 4×4-Array aus Bytes, auch als Status bezeichnet) geht durch eine Folge von vier Byte-orientierten Blocktransformationen. Wie oft, hängt dabei von der Länge des verwendeten Schlüssels ab; zehn Runden für AES-128, zwölf Runden für AES-192 und 14 Runden für AES-256. Die verwendeten Transformationen sind:
- Byte-Substitution
- Zeilen-Byte-Verschiebung mit einer steigenden Anzahl von 0 bis 3
- Mischung der Spalten innerhalb des Status-Array
- Hinzufügen des jeweiligen Rundenschlüssels zum Status

Während der Board-Montage und Programmierung muss der 256-bit-Schlüssel in das Ziel-FPGA geschrieben werden. Während des Startvorgangs wiederum wird der Bitstream vom AES-Block entschlüsselt und die Konfigurationsdaten werden in die Konfigurationslogik übergeben (Bild 1). Da die Klartext-Konfigurationsdaten nicht auf einem der I/O-Ports sichtbar sind, kann ein „Pirat“ den Stream nicht auslesen. Stattdessen muss er erhebliche Ressourcen für die Bitstream-Entschlüsselung mit leistungsfähigen Computern aufwenden.

 


  1. Raubkopierern Einhalt gebieten
  2. Funktionen für Bezahldienste absichern
  3. Alternativen bei der Verschlüsselung
  4. Schutzmaßnahmen bei laufendem Betrieb

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu ALTERA Europe

Weitere Artikel zu Microsemi

Weitere Artikel zu Lattice Semiconductor UK Ltd.

Weitere Artikel zu XILINX GmbH

Weitere Artikel zu ALTERA GmbH

Weitere Artikel zu LATTICE Semiconductor GmbH

Weitere Artikel zu Digi-Key Corporation

Weitere Artikel zu Programmierbare Logik-ICs