Embedded Security

Manipulationssicher

13. Juni 2012, 10:28 Uhr | von Jean-Louis Dolmeta
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 3

Manipulationssicher

Ein Zufallsgenerator-Beschleunigermodul liefert Zufallsdaten, die erzeugt werden, indem man Schieberegister mit Signalen aus Ringgeneratoren taktet. Die vom Zufallsgenerator erzeugten Zufallswerte eignen sich direkt als geheime Schlüssel, Messagebezogene Geheimwerte oder Zufallsfragen, die in Kryptografie-Algorithmen zum Einsatz kommen.

Ein Problem ist die Trennung von Tasks in einem sicheren System. Dies ist wesentlich, denn die Trennung sorgt dafür, dass vertrauenswürdige Tasks nicht von anderen Tasks gestört werden. Eine MMU (Memory Management Unit) kann solchen Einschränkungen Rechnung tragen. Speziell in Bank-Anwendungen sind Mechanismen zur Sabotageerkennung vorgeschrieben. Deren Sinn besteht darin, ein Entfernen der Geräteabdeckung zweifelsfrei nachweisen zu können.

Der spezielle Mechanismus sorgt dafür, dass ein entsprechender, im integrierten Speicher abgelegter Wert zurückgesetzt wird. Diese Information kann ein geheimer Schlüssel oder auch andere personalisierte Daten sein. Spezielle Marktsegmente wie Zahlungssystem- und Finanzunternehmen setzen eine sehr detaillierte und akkurate Implementierung voraus, wobei der Sabotageschutz alle Anforderungen erfüllen muss, welche die Branche in ihren »PCI PTS«-Spezifikationen (Payment Card Industry PIN Trans-action Security) vorgibt.

Auch der Debug-Zugang birgt Risiken, denn prinzipiell könnte ein Datendieb das auf dem Chip integrierte RAM auslesen, in dem der Code als normaler Text abgelegt ist. Der JTAG-Port repräsentiert den idealen Zugang zum RAM. Der Schutz der JTAG-Schaltung erfordert eine bestimmte Art der Implementierung, aber der Port muss aus verschiedenen Gründen zugänglich bleiben, etwa für die technische Inbetriebnahme, für Tests und Fehlersuche oder für das Debuggen vor Ort. Unterschiedliche Sicherheitsmodi ermöglichen einen bestimmten Grad an Flexibilität, den der Programmierer einstellen kann:

  • kein Debuggen: sorgt für maximale Gerätesicherheit. Alle sicherheitsrelevanten JTAG-Funktionen sind permanent blockiert.
  • sicheres JTAG: hohe Sicherheit. Die Nutzung der JTAG-Funktionen wird durch einen Challenge-Response-basierten Authentifizierungsmechanismus geschützt.
  • JTAG aktiviert: geringe Sicherheit. Der JTAG-Port ist immer aktiv.
  • keine Sicherheit: Der geschützte Zustandsautomat wird während des JTAG-Betriebs zwangsweise in einem sicheren Zustand gehalten.

Sicherheit in Hardware

Schutz des Bootvorgangs, Integritätsprüfung in Echtzeit, geschützte JTAG-Funktionen und Verschlüsselung sind die Schlüsselelemente, die der Hersteller verstehen und entwickeln muss, um das geistige Eigentum seines Unternehmens und somit seine finanziellen Interessen zu schützen. Dies bedeutet aber enorme Investitionen in Ressourcen, Know-how, Zeit und Geld.

In der Vergangenheit haben sich viele Unternehmen vor diesen Investitionen gedrückt. Heute kann ein Aufschub solcher Investitionen in die Sicherheit die Finanzen eines Unternehmens beeinträchtigen und möglicherweise sogar dazu führen, dass die Produkt-Roadmap scheitert. Freescale hat in seinen »i.MX«-Lösungen Sicherheitstechniken implementiert, mit deren Hilfe sich die komplexen Anforderungen sicherheitsrelevanter Applikationen adressieren lassen.

Eine Beispielanwendung ist die hoch optimierte Realisierung einer ePOS-Lösung (electronic Point of Sale), mit der sich die PCI-PTS-Zertifizierung erreichen lässt. Im Prozessor »i.MX258« integriert finden sich sowohl das Applikationsmanagement als auch der Prozessor mit den Funktionen zum Schutz der Schlüssel und anderer sensitiver Daten. Außerdem verfügt der Baustein über einen eigenen Anschluss zur Sabotageerkennung.

Im sicheren Prozessor ist das Sicherheitsmodul »DryIce« eingebettet, das einen vertrauenswürdigen und zertifizierbaren Zeitgeber für DRM (Digital Rights Management) beinhaltet. DryIce sorgt darüber hinaus für die flüchtige Speicherung der Codierschlüssel, verfügt über eine Sabotageerkennung und kann Schlüssel sicher löschen. Diese Implementierung wurde im September 2011 nach PCI PTS 3.0 zertifiziert.

Generell stehen »i.MX Security Reference Manuals« als Hilfestellung bei der Implementierung zur Verfügung. Dank eines speziell geschützten Boot-IP-Blocks können Kunden Hacker daran hindern, Code zu modifizieren, zu klonen, zu ändern oder zu stehlen.

Als Bestandteil der Systemlösung bietet Freescale eine eigene Umgebung für die Erstellung der Codesignaturen an. Mit Hilfe von Tools für die Codesignatur lassen sich CA- und SA-Organisationen emulieren. Für die Codesignatur benötigen Kunden einen Host-Computer. Dieser Host-Computer muss entsprechend geschützt werden, da auf ihm alle Signaturschlüssel landen. Das »i.MX Code-Signing Tools Package« ist kostenlos erhältlich.

Über den Autor:

Jean-Louis Dolmeta ist EMEA Produktmanager bei Freescale.

passend zum Thema


  1. Manipulationssicher
  2. Manipulationssicher
  3. Manipulationssicher
  4. Manipulationssicher

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!