Cynergy3 bei AMS Technologies

<p>AMS Technologies hat sein Vertriebsprogramm um Gleichrichter, Triacs, SCRs, Thyristoren und Power-Module von Cynergy3 erweitert.

Angesichts weltweit steigender Aufmerksamkeit für Sicherheitsmaßnahmen machen sich viele Nutzer Gedanken über die Sicherheit von Designs. Sind ICs einbruchsicher? Kann jemand das Design im Inneren des Chip stehlen? Wie steht es um Cloning oder Reverse-Engineering?

AMS Technologies hat sein Vertriebsprogramm um Gleichrichter, Triacs, SCRs, Thyristoren und Power-Module von Cynergy3 erweitert. Mit einer Sperrspannung von 400 bis 1000 V können die Halbleiterschalter bei allen Schaltungen Ströme von 8 bis 170 A schalten. Bei den Triacs zeichnen sich die Produkte der HT-Reihe durch eine hohe Temperaturbeständigkeit bis +150 °C aus. Aufgrund einer eigenen Wafer-Fertigung ist Cynergy3 in der Lage, schon bei verhältnismäßig geringen Stückzahlen kundenspezifische Produkte zu realisieren.

AMS Technologies
Ansprechpartner: André Geiger, E-Mail: ###electronic@ams.de###, Telefon: (089) 89577-500, Telefax: (089) 89577-199

In einer im Jahre 1991 veröffentlichten Studie [1] definierte IBM drei verschiedene Kategorien von Sicherheitsangriffen:

  • Klasse I: Dieser Angreifer ist ein intelligenter Außenstehender und eine neugierige Person mit vernachlässigbaren Ressourcen. Er steht für die Mehrzahl aller Hacker und hat kein Interesse an Piraterie in großem Umfang.
  • Klasse II: Bei dieser Person handelt es sich um einen kompetenten Insider mit Zugriff auf leistungsfähige Ressourcen. Zu dieser Kategorie gehören zum Beispiel Universitätsstudenten und skrupellose Firmenangestellte mit Zugang zum Internet.
  • Klasse III: Hier handelt es sich um Organisationen mit ausreichend finanziellen Mitteln für ein Reverse-Engineering in großem Maßstab, die über ein Team von professionellen Experten verfügen – also über Leute, die praktisch überall eindringen können. Beispiele für diese Kategorie sind das FBI, die CIA oder die NSA.

Generell gilt: Angriffe der Klassen I und II lassen sich relativ leicht abwehren; mit einem guten IC kann der Entwickler dieses Ziel erreichen. Die FPGAs Virtex-II Pro von Xilinx enthalten eine redundante Schlüsselstruktur, mit der sich sogar die meisten Angriffe der Klasse III abwehren lassen.

Sicherheit bei programmierbaren Bausteinen

Es gibt im Wesentlichen zwei Arten von Diebstahl bei Designs: Cloning und Reverse-Engineering. Beim Cloning wird ein Design ohne Veränderungen kopiert. Reverse-Engineering ist eine raffiniertere Art von Diebstahl. Hier extrahiert der Dieb das in einem Baustein implementierte Design und verbessert, modifiziert und verschleiert es anschließend, sodass es nicht mehr wie die ursprüngliche Implementation aussieht.

ASICs und ASSPs implementieren eine feste Funktion und sind empfindlich gegenüber Angriffen, da jedes Via oder jede Verbindung einer realen Logik entspricht. Ein Angreifer kann das Gehäuse solcher Chips öffnen, die Vias beobachten und daraus das Design ermitteln. Um den Angreifer zu verwirren, enthalten diese Bausteine manchmal sinnlose Logik, die Chips sind aber trotzdem gefährdet. Prinzipiell ist ein IC umso mehr gefährdet, je fester es definiert ist. Bei einem fest definierten IC gilt zudem: Wenn der Verdacht besteht, dass die Sicherheit eines Chips verletzt wurde, dann betrifft dies alle Chips. Bei programmierbaren ICs ist das anders: Wurde ein Chip geknackt, so kann man alle anderen noch umprogrammieren.

Programmierbare Bausteine (FPGAs und CPLDs)

Bei programmierbaren Bausteinen (FPGAs und CPLDs) gibt es je zwei Ausführungen – nicht-flüchtige (Antifuse/Flash) und flüchtige (SRAM) Bauteile. Zwischen beiden Typen gibt es zahlreiche Unterschiede, und jeder hat seine speziellen Vorteile.

Für die Diskussion der Sicherheitsaspekte konzentriert sich dieser Beitrag ausschließlich auf die Sicherheit der Programmierungs-/Konfigurationsbits. Nicht-flüchtige Bausteine speichern die Konfigurationsbits, und der Bitstrom muss nicht bei jedem Hochfahren aus einem externen PROM geladen werden. In der Vergangenheit war dieser externe PROM die Ursache für Sicherheitsprobleme; nicht-flüchtige Bausteine boten daher gewisse Vorteile. Das änderte sich mit der Vorstellung der ersten sicheren SRAM-FPGAs im Jahre 2000 – der Xilinx-Virtex-II-Plattform-FPGAs mit Dreifach-DES-Verschlüsselung.

Nicht-flüchtige programmierbare Bausteine
Betrachten wir die gängigen nicht-flüchtigen programmierbaren Logikbausteine (PLDs) mit FPGAs und CPLDs von konkurrierenden Herstellern. Diese Bausteine enthalten einen Testmodus zur Überwachung der internen Schaltungen sowie zur Ausbeutesteigerung und einen Read-Back-Modus, mit dem der Kunde die programmierten Bits inspizieren kann.

Diese beiden Betriebsarten machen die Bausteine für Angriffe verwundbar. Zur Vermeidung von Angriffen enthalten die Bausteine feste, als Antifuse- oder Flash-Gatter realisierte Sicherheitsbits, die ein Auslesen/Beschreiben des Bausteins nach Abschluss der Programmierung verhindern. Dieses Konzept hat einen Schwachpunkt: Ein Angreifer kann in zwei identischen Bausteinen eine einfache Schaltung implementieren – einmal mit und einmal ohne Sicherungsfunktion. Die Sicherheits-bits besitzen feste Adressen und lassen sich erkennen, indem man die beiden Bausteine als Wärmebild (Bild 1) erfasst. Einmal erkannt, lassen sich die Sicherheitsbits durch selektive Bestrahlung mit einer hochintensiven Lichtquelle auf dem Die deaktivieren, sodass ein Auslesen möglich wird. Sämtliche in diesem speziellen Baustein implementierten Schaltungen sind nun für den Dieb zugänglich.

Mit zunehmender Größe der programmierbaren Bausteine wächst auch der Umfang des Konfigurations-Bitstroms. Wenn die Größe des Schlüssels mit der Größe des Bausteins ebenfalls zunimmt, so lässt dies auf ein festes Lagemuster der Sicherheitsbits schließen. Daraus folgt, dass die Sicherheit nach einem erfolgreichen Crack eines Bausteins für alle Bausteingrößen verletzt ist. Das klingt nicht nur bedrohlich, sondern ist es auch.

Zwar nutzen auch die Xilinx-CPLDs „CoolRunner-II“ Flash-Technologie, sie unterscheiden sich aber von anderen nicht-flüchtigen Bausteinen durch eine Reihe zusätzlicher Sicherheitsebenen und schwer auffindbare Lese-/Schreibschutz-Sicherheitsbits. Diese Bits sind tief unter mehreren Metallschichten zwischen den Programmierbits angeordnet.

Die Sicherheitsbits sind außerdem so platziert, dass zum Setzen bzw. Löschen eine spezielle Signalsequenz und Charge-Pumping erforderlich ist. Vier oder fünf Metallschichten machen es darüber hinaus unmöglich, die Oberseite des Die per Laser oder auf elektrischem Wege zu manipulieren.

Zwei CoolRunner-II-CPLD-Technologien – DualEDGE und DataGATE – sind weitere Konzepte, um die Angreifer mit doppeltem Datenbetrieb und der Blockade von Eingangssignalen unter Kontrolle von internen Makrozellen zu verwirren. Darüber hinaus macht es der legendäre Low-Power-Betrieb der CoolRunner-II-CPLDs schwierig, irgendwelche Details bei einer Wärmeaufnahme zu sehen. Weitere Informationen über die Sicherheitsfunktionen von CoolRunner-II finden sich in [2].

Programmierbare Bausteine mit flüchtigem Speicher
FPGAs mit flüchtigem SRAM verlieren beim Abschalten der Versorgungsspannung den Konfigurations-Bitstrom. Sie benötigen daher einen externen Speicher, der den Bitstrom enthält. Eine typische Anwendung enthält einen externen PROM neben dem FPGA. Der Bitstrom zwischen PROM und FPGA stellt für manche Entwickler ein Sicherheitsproblem dar.

Zur Minderung dieses Risikos hat Xilinx seine Virtex-II-FPGAs vor drei Jahren mit Dreifach-DES-Verschlüsselungstechnik (Kasten) ausgestattet. Die zweite Generation dieser Technologie ist jetzt in den neuesten Virtex-II-Pro-FPGAs integriert. Bei diesem Konzept enthält das PROM den verschlüsselten Bitstrom, der erst im Inneren des FPGA entschlüsselt wird. Ein Auslesen wird nicht erlaubt. Jeder Angriff auf das FPGA löscht das Design. Das Beste, was der Angreifer tun kann, ist das Design zwischen dem PROM und dem FPGA abzufangen. Dann allerdings erhält er lediglich den per Dreifach-DES verschlüsselten Bitstrom.