Beschreibung
Verfahren und System zur Vergabe von öffentlich getrusteten Zertifikaten, Engineering- oder Leitsystem und technische An lage
Die Erfindung betrifft ein Verfahren zur Vergabe von öffent lich getrusteten Zertifikaten für Anlagenkomponenten einer technischen Anlage. Darüber hinaus betrifft die Erfindung ein System zur Vergabe von öffentlich getrusteten Zertifikaten für Anlagenkomponenten einer technischen Anlage, ein Enginee ring- oder Leitsystem für eine technisch Anlage und eine technische Anlage.
Im Kontext technischer Anlagen kommen digitale Zertifikate zum Einsatz. Insbesondere für den Fall, dass es sich um Zer tifikate handelt, die zur Laufzeit verwendet werden, spricht man auch von operativen Zertifikaten. Über Zertifikate kann eine sichere, nicht-kompromittierte und vertrauenswürdige Kommunikation zwischen unterschiedlichen Anlagenkomponenten, etwa Geräten und/oder Applikationen, ermöglicht werden. Durch die Verwendung von Zertifikaten kann beispielsweise eine Au- thentifikation und eine Kommunikationsintegrität von Kommuni kationsteilnehmern durch kryptographische Mittel erreicht werden .
Im Rahmen einer Public Key Infrastruktur einer technischen Anlage werden sogenannte Registrierungsstellen (englisch: re- gistration authorities oder kurz: RA) verwendet, um Zertifi katsanträge (sogenannte certificate signing requests oder kurz: CSR) entgegenzunehmen und sie - im Falle der Genehmi gung/Validierung - an eine Zertifizierungsstelle (englisch: certificate authority oder kurz: CA) weiterzuleiten. Dabei ist die RA die Instanz, die entscheidet, welche Zertifikats anfragen genehmigt/validiert werden und die CA die Instanz, welche die Zertifikate erstellt.
Anlagenkomponenten können die Zertifikate, die sie beispiels weise für die Nutzung verschiedener sicherer Protokolle wie z.B. TLS oder OPC UA benötigen, selbst beantragen. Eine Anla genkomponente in der Rolle eines Clients bzw. eines Antrag stellers richtet ihren Zertifikatsantrag an die Registrie rungsstelle (RA) , welche den Antrag im Falle der Genehmi gung/Validierung an die Zertifizierungsstelle (CA) , die sich beispielsweise in der Anlage („Onsite-CA" ) oder einem Trust Center („Offsite-CA" oder „CA as a Service") befindet, wei terleitet .
Gesicherte Verbindungen bei Webseiten (z.B. HTTPS oder Secure Web Sockets) sind aus Anforderungssicht oftmals unabdingbar. Hierfür werden Zertifikate benötigt.
Gerade im industriellen Umfeld liegen oftmals abgetrennte, private Netzwerke vor und ist es vielfach so, dass Geräte (bzw. darauf befindliche Webserver) nicht vom öffentlichen Internet aus erreichbar sind.
Dennoch liegt gerade im Web-Umfeld ein sehr heterogenes Um feld vor, bei dem nicht alle Teilnehmer (insbesondere Cli ents) vollständig oder mit wenig Aufwand kontrolliert bzw. in eine verwaltete Infrastruktur aufgenommen werden können. Ins besondere mobile Endgeräte beispielsweise sind häufig nicht Teil der Infrastruktur (Stichwort BYOD, „Bring your own de- vice") .
Nach Auffassung der Anmelderin ist es erstrebenswert, dass sich sämtliche Geräte (Clients wie Server) in die öffentliche Infrastruktur integrieren lassen. Zertifikate sollten nicht ausschließlich von kontrollierten Endgeräten akzeptiert wer den, bei denen diese als vertrauenswürdig hinterlegt wurden, sondern sollten auch von beliebigen anderen Endgeräten, etwa mobilen Endgeräten, jederzeit verifiziert werden können. Da durch würde es beispielsweise möglich, dass sich ein Betrei ber/Benutzer Daten etwa einer Steuerung einer technischen An lage auf einem mobilen Endgerät (BYOD) anzeigen lässt.
Im Fall von Browsern auf Client-Endgeräten müssen dafür Zer tifikate in der gesamten Zertifikatskette bis hin zu allge mein anerkannten Trusted Root Certificates (TRC) verifizier bar sein (siehe beispielsweise die "Root CA Policy" von
Google Chrome) . Bei diesen handelt es sich um eine Handvoll von Zertifikaten, die browser- und betriebssystemübergreifend als vertrauenswürdig eingestuft werden und nicht individuell installiert werden müssen.
Ist eine Überprüfbarkeit bis hin zu einem solchen TRC nicht gegeben, können Funktionen aufgrund der mangelnden Überprüf barkeit eingeschränkt bis hin zu nicht gegeben sein. Dies be deutet, der Anwender bekommt im besten Fall eine Fehlermel dung, welche zumindest umgangen werden kann (wobei ein Bestä tigen, dass man trotz fehlgeschlagener Überprüfung fortfahren möchte ein eklatantes Sicherheitsrisiko darstellt und nicht zu empfehlen ist) , oder aber die Funktion wird stillschwei gend einfach unterdrückt (etwa AJAX-Calls aus der Seite her aus werden vom Browser abgelehnt oder eingebettete iframes werden nicht dargestellt) .
Der Aufwand für die Beschaffung öffentlich getrusteter Zerti fikate für geschlossene Anlagen ist nach Kenntnisstand der Anmelderin derzeit immens bzw. dies ist gar nicht möglich.
Zertifikate sind an Trust (Vertrauen) gebunden. Der Ausstel ler muss also verifizieren und nachfolgend attestieren kön nen, dass ein Antragsteller die Kontrolle über eine Domäne besitzt .
Eine Möglichkeit, ein öffentlich getrustetes Zertifikat zu erhalten, besteht nach Kenntnis der Anmelderin darin, sich ein solches manuell zu beschaffen. Dazu muss sich der Antrag steller eines Zertifikats ausweisen und diverse Dokumente vorlegen, die ihn eindeutig identifizieren und sicherstellen, dass er berechtigt/legitimiert ist, für die gewünschte Domäne Zertifikate zu erhalten. Danach bekommt er ein Zertifikat
übermittelt und kann dieses zusammen mit seinem Schlüsselma terial - meist ebenfalls hündisch - in seiner Domäne instal lieren .
Eine weitere Möglichkeit besteht in der Verwendung von Lets- Encrypt (siehe beispielsweise https://letsencrypt.org/). Hier wird Vertrauen erzeugt, indem der Eigentümer eines Servers darlegen muss, dass er die Kontrolle über den Server und die damit verbundene Domäne hat. Hier setzt die Zertifizierungs stelle (CA) jedoch eine direkte Erreichbarkeit des Webservers voraus, wodurch dieser Ansatz für geschlossene Netze und Be reiche nicht anwendbar ist (LetsEncrypt basiert auf dem ACME Protokoll) . Für eine Steuerung, etwa SPS einer technischen Anlage mit geschlossenem Netz beispielsweise wäre dies nicht erfüllt .
Zertifizierungsmanagement-Protokolle, etwa das Certificate Management Protocol (CMP, siehe beispielsweise
https : //de . wikipedia . org/wiki/Certificate_Management_Protocol ) erlauben zwar eine automatisierte Ausführung von Zertifi katsanforderung, -erstellung und -Zuweisung. Hierzu ist je doch eine komplette Infrastruktur erforderlich, die von dem Betreiber einer technischen Anlage erst errichtet werden muss. Selbst wenn dieser Aufwand für ein geschlossenes Netz betrieben würde, könnten auf diesem Wege keine öffentlich ge- trusteten Zertifikate ausgestellt werden, da eine externe CA nicht attestieren kann, was in einem abgeschlossenen System von ihr selbst gar nicht verifiziert werden kann.
Daher greifen nach Kenntnisstand der Anmelderin in der Reali tät derzeit viele Anwender nur auf self-signed Zertifikate mit all den vorgenannten Nachteilen zurück, da sie entweder den Aufwand bzw. die Kosten der manuellen Beschaffung von öf fentlich getrusteten Zertifikaten scheuen, oder aber weil der Einsatz in einer industriellen Anlage unter Umständen bisher gar nicht anders zu bewerkstelligen ist.
Ausgehend davon ist es eine Aufgabe der vorliegenden Erfin dung, eine Möglichkeit zu schaffen, mit vertretbarem Aufwand öffentlich getrustete Zertifikate für Komponenten technischer Anlagen mit abgetrennten, privaten Netzwerken vergeben zu können .
Diese Aufgabe wird gelöst durch ein Verfahren zur Vergabe von öffentlich getrusteten Zertifikaten für Anlagenkomponenten einer technischen Anlage, bei dem
a) ein Zertifizierungsmodul von wenigstens einer Komponente einer technischen Anlage, die ein öffentlich getrustetes Zertifikat erhalten soll, wenigstens eine bevorzugt ein deutige Komponentenkennung abfragt und/oder für wenigstens eine Komponente einer technischen Anlage, die ein öffent lich getrustetes Zertifikat erhalten soll, wenigstens eine bevorzugt eindeutige Komponentenkennung generiert, b) das Zertifizierungsmodul die wenigstens eine abgebfragte und/oder wenigstens eine generierte Komponentenkennung zu sammen mit einem Zertifikatsantrag für ein öffentlich ge trustetes Zertifikat für die wenigstens Komponente an eine Registrierungsstelle (RA) übermittelt,
c) die Registrierungsstelle (RA) anhand der wenigstens einen Komponentenkennung überprüft, ob die wenigstens eine zu der Komponentenkennung gehörige Komponente wenigstens ei ner berechtigten Person oder wenigstens einem berechtigten Unternehmen, in deren oder dessen Verantwortung die we nigstens eine Komponente steht, zugeordnet ist,
d) die Registrierungsstelle (RA) für den Fall, dass dem so ist, ein öffentlich getrustetes Zertifikat für die wenigs tens eine Komponente anfordert, und
e) das angeforderte öffentlich getrustete Zertifikat erstellt und an das Zertifizierungsmodul übermittelt und bevorzugt in einem geschützten Bereich insbesondere des Zertifizie rungsmodul gespeichert wird.
Die Erfindung sieht mit anderen Worten vor, ein Zertifizie rungsmodul bereitzustellen, mit dem Komponenten, die ein öf fentlich getrustetes Zertifikat erhalten sollen, eindeutig
identifiziert werden können, bzw. mit dem insbesondere für den Fall, dass Komponenten noch nicht in Betrieb genommen wurden und daher (noch) keine Kennung von diesen abgerufen werden kann, wenigstens eine bevorzugt eindeutige und/oder vorübergehende Kennung für die zu zertifizierenden Komponen ten generiert werden kann.
Anstelle der Komponenten kontaktiert dann das Zertifizie rungsmodul einen zentralen Dienst und übermittelt diesem den (jeweiligen) Zertifikatsantrag für ein öffentlich getrustetes Zertifikat für die bevorzugterweise eindeutig identifizier tein) bzw. aufgrund der generierten Kennung (en) eindeutig identifizierbare (n) Komponente zusammen mit der (den) Ken nung ( en) .
Unter Verwendung der zur Verfügung gestellten abgefragten bzw. generierten bevorzugt eindeutigen Kennung (en) kann die Registrierungsstelle dann prüfen, ob die (jeweilige) identi fizierte/identifizierbare Komponente einer Person bzw. einem Unternehmen zugeordnet werden kann, in deren/dessen Verant wortung die Komponente steht, insbesondere deren/dessen Ei gentum die Komponente ist. Bei der Person bzw. dem Unterneh men handelt es sich bevorzugt um einen Kunden, welcher die Komponente erworben hat. Dass eine Komponente in der Verant wortung der Person bzw. des Unternehmens steht, bedeutet ins besondere, dass die Person bzw. das Unternehmen die Kontrolle über die Komponente hat, was bevorzugt vertraglich zugesi chert ist, und/oder dass vertraglich geregelt ist, welche Konsequenzen es hat, wenn ein etwaiger Missbrauch des bean tragten Zertifikates stattfände.
Bei der wenigstens einen Komponentenkennung kann es sich bei spielswese um eine Seriennummer und/oder ein Maschinen-/Gerä- tezertifikat und/oder einen Fingerprint und/oder eine Typen bezeichnung handeln. Entsprechend wird in Weiterbildung in Schritt a) eine Seriennummer und/oder ein Geräte- bzw. Ma schinenzertifikat und/oder ein Fingerprint und/oder eine Ty-
penbezeichnung als Komponentenkennung abgefragt und/oder ge neriert .
Es kann sein, dass eine Person bzw. ein Unternehmen (manuell) vertraglich zusichert, dass die Anforderung der Kontrolle über die Komponente erfüllt ist. Das Bestehen einer solchen vertraglichen Zusicherung kann dann von der Registrierungs stelle im Rahmen der Überprüfung erfasst bzw. erkannt bzw. abgefragt werden.
Auch ist es möglich, dass auf eine Datenbank, etwa eine Kun dendatenbank zugegriffen wird, um zu prüfen, ob eine Zuord nung einer zu zertifizierenden Komponente zu einer/einem die Verantwortung tragendenden Person/Unternehmen gegeben ist.
Entsprechend kann in Weiterbildung vorgesehen sein, dass die Überprüfung in Schritt c) einschließt, dass die Registrie rungsstelle in einer Datenbank, in der Komponentenkennungen zusammen mit zugehörigen berechtigten Personen und/oder Un ternehmen, die bevorzugt Eigentümer zugehöriger Komponenten darstellen, gespeichert sind, nach wenigstens einem Eintrag für die zusammen mit dem Zertifikatsantrag übermittelte Kom ponentenkennung sucht. Unter zugehörigen Komponenten sind da bei zu den hinterlegten Komponentenkennungen gehörige Kompo nenten zu verstehen. Bevorzugt gilt, dass Komponenten, für die eine Kennung in der Datenbank hinterlegt ist, in der Ver antwortung der berechtigten Person/des berechtigten Unterneh mens stehen, was besonders bevorzugt vertraglich zugesichert ist .
Sofern ein solcher Eintrag in der Datenbank gefunden wird, wird die Zertifikatsanfrage (der Zertifikatsantrag) für die betreffende Komponente bevorzugt genehmigt/validiert . Wird kein solcher Eintrag gefunden, wird sie hingegen zweckmäßiger Weise abgelehnt und ein beantragtes Zertifikat daher nicht erstellt .
Die Datenbank kann beispielsweise durch eine sogenannte „In dustrial Mall" von Siemens gegeben sein.
Kommt eine Datenbank zum Einsatz, ist es möglich, dass diese sowohl eigene Kundendaten als auch Daten von Drittanbietern, etwa OEMs umfasst.
In Schritt e) kann dem Zertifizierungsmodul zusammen mit dem öffentlich getrusteten Zertifikat Schlüsselmaterial übermit telt werden. Das Zertifizierungsmodul kann bevorzugterweise Zertifikate auf einem vor Mitlesen und Änderung geschützten Weg in einen geschützten Speicher der Anlagen-/ Industrie komponente übertragen. Die Anlagen-/ Industriekomponente selbst kann dann bevorzugt mittels des Zertifikats einen Webserver oder andere Aspekte absichern.
Im Gegensatz beispielsweise zu einem manuellen Zertifikatser werb sind durch die erfindungsgemäße Vorgehensweise folgende Aspekte erfüllt:
- Eine Person/Unternehmen bestätigt rechtlich verbindlich der Eigentümer der Komponente zu sein, beispielsweise, indem sie/es einwilligt, dass dies auf alle gekauften und insbe sondere in einer Datenbank hinterlegten Komponenten zu trifft, bzw. es ist (gesichert) bekannt, wer der Eigentü mer/Verantwortliche ist (eine rechtliche Zusicherung kann auch im Rahmen des Zertifikatserwerbs, beispielsweise in einem Engineering System erfolgen) .
- Die (jeweilige) Komponente, für welche ein beantragtes Zer tifikat gelten soll, ist durch das Zertifizierungsmodul eindeutig identifizierbar.
- Durch das Zertifizierungsmodul wird weiterhin sicherge stellt, dass das Zertifikat und etwaiges Schlüsselmaterial niemals direkt für die Person/das Unternehmen, insbesondere den Kunden zugreifbar wird, sondern auf sichere Weise aus schließlich in die vorbestimmte und zugeordnete Zielkompo nente installiert werden kann.
Damit ist sichergestellt, dass ein Zertifikat ausschließlich auf einer Komponente installiert werden kann, für die es ei nen rechtlich zuständigen Besitzer gibt. Dies ohne, dass es erforderlich ist, dass die Registrierungsstelle und/oder die Zertifizierungsstelle Zugriff auf die Komponente bzw. einen Webserver einer solchen haben muss.
Es sei angemerkt, dass sich das erfindungsgemäße Verfah ren sowohl für die initiale (erstmalige) Vergabe eines öffentlich getrusteten Zertifikates als auch die Zerti fikat serneuerung (erneute Vergabe) eignet. Das erfin dungsgemäße Verfahren zur Vergabe von Zertifikaten ist somit ein Verfahren zur initialen Vergabe und/oder Er neuerung von öffentlich getrusteten Zertifikaten.
Bei Zertifikatsanträgen kann es sich entsprechend sowohl um Anträge zwecks der initialen Beantragung (Bootstrapping) als auch der Erneuerung (Update) von Zertifikaten handeln.
Das Zertifizierungsmodul befindet sich bevorzugt vor Ort bei der technischen Anlage, insbesondere im gleichen Netzwerk wie die technische Anlage. Es ist insbesondere auf Hardware im plementiert, die einen Bestandteil der technischen Anlage und/oder des Netzwerks einer solchen bildet.
Das Zertifizierungsmodul ist in ganz besonders bevorzugter Ausgestaltung Bestandteil eines Engineering Systems der tech nischen Anlage oder mit einem Engineering System der techni schen Anlage funktional verbunden.
Industrial Engineering Systeme, auch bekannt als Project En gineering Tools für industrielle Anwendungen, können für das Lösungs-Design und die Implementierung sowie für spätere Be triebs- und/oder Managementprozesse eingesetzt werden. Lösun gen sind hier als industrielle Lösungen insbesondere für die Prozess- und/oder diskrete Industrie zu verstehen.
Das Engineering eines Automatisierungsprojekts (z.B. für eine Anlage) umfasst in der Regel einen oder mehrere der folgenden Schritte: Bestimmen der erforderlichen Funktionalität im Pro jekt, Bestimmen, welche Komponenten benötigt werden, um diese Funktionalität anzubieten, Zuordnen von Funktionalität und einer tatsächlichen physikalischen Position zu den Komponen ten in der Anlage, Zuweisen von Kommunikationsstrukturen zu den Komponenten (z.B. welche Komponenten mit welchen anderen Komponenten kommunizieren dürfen und wie sie kommunizieren, was der eigentliche Zweck der Komponente ist), etc.
Ein Automatisierungsprojekt korreliert mit einem realen Pro jekt, z.B. dem Aufbau einer neuen Produktions-/Fertigungs- linie in einer neuen oder bestehenden Industrieanlage oder einer neuen oder bestehenden Prozessanlage. Einige von vielen Beispielen, in denen solche Automatisierungsprojekte reali siert werden, sind die Herstellung von Fahrzeugen in der Au tomobilindustrie, die Herstellung von Elektronik, die Her stellung von Lebensmittel- und Getränkeprodukten und vieles mehr .
In diesen Anwendungen wird das Engineering System in der Re gel verwendet, um eine oder mehrere Konfigurationen von Anla- gen-/Automatisierungskomponenten im Rahmen eines Projekts zur industriellen Automatisierung zu erzeugen. Die Industrie- Au tomatisierungsprojekte können beispielsweise Fabrikautomati onsprojekte, Projekte zur Automatisierung der Prozessindust rie und alle weitere Automatisierungsprojekte im industriel len Kontext sein.
Eine Anlagen- bzw. Automatisierungskomponente kann eine Hard warekomponente und/oder eine Softwarekomponente oder eine Kombination aus beidem insbesondere für den Einsatz im oben genannten Automatisierungsprojekt sein. Anlagen- bzw. Automa tisierungskomponenten umfassen unter anderem: speicherpro grammierbare Steuerungen (SPS), E/A-Module, industrielle Kom munikationsgeräte, industrielle Netzwerkkomponenten, Senso ren, Aktoren, Antriebe und andere industrielle Geräte, die
häufig in der Prozess- oder Automatisierungsindustrie verwen det werden. Softwarekomponenten, die Hardware mit anderen Komponenten teilen, sind ebenfalls über ein Engineering Sys tem konfigurierbar.
Ein Engineering System (teilweise auch als Engineering Tool bezeichnet) hat eine sehr genaue Kenntnis über die Automati sierungs-Produkte in der Anlage. So kennt es die exakte Hard ware (z.B. anhand der Seriennummer) oder das konkrete Produkt (z.B. anhand der MLFB, also der maschinenlesbaren Fabrikate bezeichnung) , ist aber auch in der Lage, eine Komponente, et wa ein Gerät eindeutig zu identifizieren oder identifizierbar zu machen (z.B. über ein fest eingebranntes oder sicher auf gespieltes Maschinen- oder Geräte-Zertifikat ) . Ebenso besitzt ein Engineering System in der Regel bereits Möglichkeiten, Daten sicher auf die entsprechenden Automatisierungs-Geräte zu übertragen (im Sinne von fälschungssicher sowie nicht durch Dritte einseh- bzw. mitlesbar) .
Es sei angemerkt, dass auch wenn es sehr vorteilhaft ist, wenn das Zertifizierungsmodul in ein Engineering System der Anlage integriert ist, auch nicht ausgeschlossen ist, dass dieses ein Stand-Alone-Tool bzw. Stand-Alone-Modul darstellt bzw. Teil eines anderen Tools bildet. Dann bestehet bevorzugt eine funktional Verbindung mi dem Engineering System. Dadurch kann das Tool auch das Netzwerk wechseln, etwa wenn die Anla gen-/ Industriekomponente in einem Netzwerk agiert, welches nicht nur von außen erreichbar ist, sondern auch selbst nicht mit weiteren Netzwerken nach außen Kontakt aufnehmen kann.
Man spricht in diesem Fall von vollständig abgeschlossenen Netzwerken .
Die Erfindung bietet mehrere Vorteile. Für Anlagen kann ein in das Engineering integrierter und insbesondere an Kunden- Vertragsbeziehung gebundener Zertifikats-Erstellungs- und -Deployment-Prozess erhalten werden.
Insbesondere die Integration in das Engineering bietet eine erweiterte, einfachere und sicherere Handhabung, beispiels weise eine deutlich kleinere Hürde als bei Integration eines standardisierten Protokolls in jede Anlagenkomponente/ j edes Produkt. Das Engineering System kennt gerätespezifische Zu gangs- und Verteilungswege von Natur aus.
Es wird eine Unterstützung des Offline-Engineerings möglich, was Systeme wie beispielsweise LetsEncrypt nicht beherrschen, aber für das Engineering einer technischen Anlage elementar ist .
Es wird eine CSR-Erzeugung und/oder -Übermittlung durch das bevorzugt in das Engineering System integrierte Zertifizie rungsmodul, ggf. auch bevor das tatsächliche Gerät vorhanden ist und installiert wird, möglich.
Es kann ein Deployment eines Zertifikats und ggf. etwaigen Schlüsselmaterials im Zuge des Downloads bzw. der Inbetrieb nahme, wiederum bevorzugt unterstützt durch das Engineering erfolgen .
Es werden auch indirekte Offline-Szenarios möglich (z.B. auf spezielle SD-Karten für SIMATIC PLCs oder HW Dongle SiPlug)
Es kann eine technische Vertrauensstellung zwischen einer Zertifizierungsstelle (CA) und Anlagenkomponenten, etwa End geräten erhalten werden, da aufgrund der einen Komponenten kennung (also eines oder mehrerer eindeutiger Merkmale) ein Kunde und dessen tatsächlich erworbenen Geräte identifiziert werden können.
Die erforderlichen Schritte können dabei automatisch ablau fen, ohne dass ein Benutzer bzw. Kunde manuell eingreifen muss .
Es wird keine Infrastruktur für das Zertifikats-Management in den Komponenten, insbesondere beim Kunden vorausgesetzt,
stattdessen bezieht das Zertifizierungsmodul, welches bevor zugt Bestandteil eines Engineering Systems der Anlage oder mit einem solchen funktional verbunden ist, die Zertifikate von einer bevorzugte externen CA.
Die Zertifikatsbeschaffung kann als Service (Certificate as a Service, CaaS) erbracht werden, beispielsweise für Kunden, welche zu zertifizierende Anlagenkomponente erworben haben.
Die Zertifizierungsmodul kann eine funktionale Einheit dar stellen, die beispielsweise durch eine Software-Komponente auf geeigneter Hardware implementiert sein kann. Es kann sein, dass das Zertifizierungsmodul durch Software implemen tiert ist, die sich auf Hardware eines/des Engineering Sys tems der technischen Anlage befindet. Selbstverständlich ist es auch möglich, dass das Zertifizierungsmodul separate „ei gene" Hardware umfasst. Dann ist das Zertifizierungsmodul bzw. dessen Hardware in bevorzugter Ausgestaltung mit ei nem/dem Engineering System der technischen Anlage funktional verbunden .
Unter einer Registrierungsstelle einer technischen Anla ge wird eine funktionelle Instanz verstanden, die Re gistrierungsanfragen wie Zertifikatsanträge von Kompo nenten der technischen Anlage entgegennimmt, diese prüft und im Erfolgsfall insbesondere an eine Zertifizierungs stelle der technischen Anlage weiterleitet. Im vorlie genden Fall ist die Registrierungsstelle vor allem dafür vorgesehen, Z erti fi kats anträge von Anlagenkomponenten der technischen Anlage zu behandeln. Die Registrierungs stelle kann eine lokale Registrierungsstelle sein, die mit einer übergeordneten globalen Registrierungsstelle kommuni zieren kann, welche beispielsweise wiederum direkt in Verbin dung mit einer Zertifizierungsstelle der technischen Anlage stehen kann. Die Registrierungsstelle kann einen Registrie rungsservice umfassen oder durch einen solchen gegeben sein.
Die Registrierungsstelle, welcher das Zertifizierungsmodul erfindungsgemäß die wenigstens eine Komponentenkennung zusam men mit dem Zertifikatsantrag übermittelt, ist ausgebildet und/oder eingerichtet, anhand der wenigstens einen Komponen tenkennung, mit anderen Worten anhand eines oder mehrere ein deutiger Merkmale zu ermitteln/überprüfen/validieren, ob die (jeweilige) Komponente einer Person/einem Unternehmen zuge ordnet ist und in deren/dessen Verantwortung steht, insbeson dere, ob eine rechtlich bindende Kundenbeziehung für die (je weilige) Komponente besteht.
Es kann auch sein, dass von der Registrierungsstelle ermit telt/überprüft/ alidiert wird, für welche Anwendung auf der wenigstens einen Komponente das beantragte öffentlich getrus- tete Zertifikat vorgesehen ist. Dann ist die Registrierungs stelle entsprechend ausgebildet und/oder eingerichtet.
Bei der technischen Anlage handelt es sich insbesondere um eine Fertigungs- oder Prozessanlage. Es kann sich etwa um ei ne Anlage aus der Prozessindustrie, wie beispielsweise eine chemische, pharmazeutische, petrochemische oder eine Anlage aus der Nahrungs- und Genussmittelindustrie handeln. Hiermit umfasst sind auch jegliche Anlagen aus der Produktionsindust rie, Werke, in denen z.B. Autos oder Güter aller Art produ ziert werden. Technische Anlagen, die zur Durchführung des erfindungsgemäßen Verfahrens geeignet sind, können auch aus dem Bereich der Energieerzeugung kommen. Windräder, Solaran lagen oder Kraftwerke zur Energieerzeugung sind ebenso von dem Begriff der technischen Anlage umfasst.
Diese Anlagen verfügen in der Regel jeweils über ein Leitsys tem oder zumindest ein computerunterstütztes Modul zur Steue rung und Regelung des ablaufenden Prozesses oder der Produk tion .
Mit dem Begriff „Public-Key Infrastruktur" (kurz: PKI) wird eine Sicherheitsinfrastruktur für eine technische Anlage ver bunden, die Services für einen sicheren Austausch von Daten
zwischen Kommunikationspartnern der technischen Anlage be reitstellt. Mit Hilfe der Public-Key Infrastruktur lassen sich Zertifikate ausstellen, verteilen und prüfen.
Unter einem Zertifikat wird ein digitaler Datensatz verstan den, der bestimmte Eigenschaften (in diesem Fall von Maschi nen, Geräten, Applikationen und dergleichen) bestätigt. Eine Authentizität und Integrität des Zertifikats können mittels kryptografischer Verfahren verifiziert werden. Unter öffent lich getrusteten Zertifikaten sind insbesondere solche zu verstehen, die in der gesamten Zertifikatskette bis hin zu allgemein anerkannten Trusted Root Certificates (TRC) verifi zierbar sind. Man kann öffentlich getrustete Zertifikate auch als öffentlich anerkannte Zertifikate bezeichnen. Öffentlich getrustete/anerkannte Zertifikate sind insbesondere solche, die von Mitgliedern des CA/Browser Forums herausgegeben wer den (siehe https://cabforum.org/) . Besonders bevorzugt han delt es sich bei öffentlich getrusteten/anerkannten Zertifi katen, die im Rahmen des erfindungsgemäßen Verfahrens bean tragt/vergeben werden, um SSL (Secure Sockets Layer) oder TLS (Transport Layer Security) Zertifikate.
Bei einer Anlagenkomponente kann es sich beispielsweise um eine Steuerungsvorrichtung, etwa SPS (speicherprogrammierbare Steuerung, englisch: Programmable Logic Controller, PLC), ein Gerät, insbesondere Feldgerät, eine Applikation oder derglei chen handeln. Es handelt sich insbesondere um eine Automati sierungskomponente bzw. ein Automatisierungsgerät.
Die wenigstens eine Anlagenkomponente weist bevorzugt wenigs tens einen Webserver auf bzw. stellt einen Webserver dar.
Für die Übermittlung des wenigstens einen Zertifikatsantrages von dem Zertifizierungsmodul an die Registrierungsstelle kann ein Zertifikatsmanagementprotokoll zum Einsatz kommen. Es kann sich um ein gängiges, im Kontext eines Zertifikatsmana gements für eine technische Anlage, insbesondere ein Leitsys tem einer solchen üblicherweise verwendetes Protokoll, bei-
spielsweise das Certificate Management Protocol (kurz: CMP, siehe beispielsweise RFC 4210/4211 der Internet Engineering Task Force (IETF)) handeln. CMP kann insbesondere über https realisiert sein bzw. werden. Es sei betont, dass ein Stan dardprotokoll zum Einsatz kommen kann, jedoch nicht muss. Das Zertifizierungsmodul und die RA können auch rein proprietär miteinander kommunizieren.
Im Rahmen des erfindungsgemäßen Verfahrens können mehrere Va rianten unterstützt werden, insbesondere:
Online Engineering: Die Komponenten (bzw. Server) sind in der Anlage bereits installiert. Das Zertifizierungsmodul kann hier Merkmale auslesen, eine Komponente eindeutig identifi zieren (und sicherstellen, dass es keine weitere Instanz gibt, welche dieselben Merkmale aufweist) und Daten sowie Zertifikate auf die Komponente sicher transferieren.
Offline Engineering: Die Komponenten (Server) sind noch nicht in der Anlage installiert, sondern diese wird ggf. erst noch projektiert. Hierbei muss das Zertifizierungsmodul die für die Zielkomponente notwendige wenigstens eine Komponentenken nung (mit anderen Worten eines oder mehrere eindeutige Merk male, z.B. ein Maschinenzertifikat) eventuell erst erzeugen. Öffentlich getrustete Zertifikate können nun jedoch bereits vorab angefordert und erzeugt werden und im Zertifizierungs modul intern für das projektierte Gerät vorgehalten werden. Später bei einer Inbetriebnahme stellt das Zertifizierungsmo dul dann bevorzugt sicher, dass die wenigstens eine bevorzugt eindeutige Komponentenkennung (mit anderen Worten eindeutige Merkmale) tatsächlich vorliegt bzw. fälschungssicher einge bracht werden kann und dann bevorzugt eingebracht wird. Wenn dies sichergestellt wurde, kann auch das öffentlich getruste te Zertifikat dorthin transferiert werden.
Eine weitere vorteilhafte Ausführungsform zeichnet sich daher dadurch aus, dass für den Fall, dass von dem Zertifizierungs modul in Schritt a) keine Komponentenkennung abgefragt wurde
(insbesondere, weil die wenigstens eine Komponente noch nicht in Betrieb war - Offline-Szenario) , das Zertifizierungsmodul vor der Übermittlung des öffentlich getrusteten Zertifikats an die wenigstens eine Komponente und/oder die mit der we nigstens einen Komponente verbundene oder verbindbare Spei chereinrichtung wenigstens eine Komponentenkennung von der wenigstens einen Komponente abfragt und die abgefragte Kompo nentenkennung bevorzugt an die Registrierungsstelle übermit telt. Die (dann) abgefragte Komponentenkennung kann an die Registrierungsstelle übermittelt werden. Die Registrierungs stelle kann diese in einer Datenbank ablegen.
Alternativ oder zusätzlich kann vorgesehen sein, dass das Zertifizierungsmodul vor der Übermittlung des öffentlich ge trusteten Zertifikats an die wenigstens eine Komponente und/oder die mit der wenigstens einen Komponente verbundene oder verbindbare Speichereinrichtung prüft, ob eine von ihm in Schritt b) generierte wenigstens eine Komponentenkennung fälschungssicher in der Komponente gespeichert/abgelegt wer den kann.
Indirekter Offline-Fall: Insbesondere in der Automatisierung existiert der Sonderfall, dass teils gar nicht die tatsächli che Komponente, sondern ein Stellvertreter mit der Konfigura tion versehen wird. So kann z.B. eine SD-Karte oder ein (USB- ) Dongle beim Download die komplette Konfiguration für eine Steuerung (etwa SPS) erhalten, die tatsächliche Komponente im Ersatzteilfall jedoch sofort ausgewechselt werden. Der Down load erfolgt dabei also nur indirekt auf die tatsächliche Komponente. In diesem Fall muss jedoch der Stellvertreter, beispielsweise die Karte oder der (USB- ) Dongle, eindeutig zu identifizieren sein und muss vor unerlaubtem Zugriff ge schützt sein - die Daten im geschützten Bereich dürfen also nicht ohne Weiteres auslesbar sein. Dann kann die betreffen de/jeweilige Komponente dem Stellvertreter, etwa der SD-Karte oder dem Dongle, die Konfiguration entnehmen. Das Zertifikat sollte bevorzugt verschlüsselt sein und es sollte bevorzugt nur die betreffende/j eweilige Komponente beim Einlesen der
Konfiguration dazu in der Lage sein, das Zertifikat zu ent schlüsseln .
Das Zertifizierungsmodul hat zweckmäßiger Weise (zumindest zu irgendeinem Zeitpunkt) Zugriff auf die zu validierende Kompo nente bzw. eine einen Stellvertreter darstellende Speicher einrichtung, etwa eine SD-Karte oder einen Dongle. Dies gilt insbesondere, wenn das Zertifizierungsmodul Bestandteil eines Engineering Systems oder mit einem solchen funktional verbun den ist.
Insbesondere im Online-Fall kann das öffentlich getrustete Zertifikat (ggf. mit Begleitmaterial) bevorzugt direkt für die Zielkomponente verschlüsselt werden. So ist gewährleis tet, dass das Zertifikat durchgängig abgesichert ist und aus schließlich dort entschlüsselt werden kann. Darüber hinaus kann jedes Projekt im Engineering System mit einem kundenspe zifischen Schlüssel versehen werden, so dass im Offline-Fall die Zertifizierungsstelle (CA) den Transport zumindest bis zum Zertifizierungsmodul absichern kann. Im jeweiligen Pro jekt kann wiederum das Material für die konkrete Komponente, etwa das konkrete Endgerät verschlüsselt werden. Somit ist ebenfalls eine durchgängige Absicherung möglich.
Es kann vorgesehen sein, dass für den Fall, dass die Überprü fung in Schritt c) ergibt, dass mehrere zu der wenigstens ei nen Komponentenkennung gehörige Komponenten wenigstens einer berechtigten Person oder wenigstens einem berechtigten Unter nehmen zugeordnet sind, insbesondere Eigentum wenigstens ei ner berechtigten Person oder wenigstens eines berechtigten Unternehmens darstellen, die insbesondere in einer Datenbank hinterlegte verfügbare Anzahl potentieller Treffer um eins reduziert wird. Beispielsweise kann insbesondere eine Daten bank einen Eintrag umfassen, gemäß dem ein Benutzer/eine Per son /ein Unternehmen eine bestimmte Anzahl von Automatisie rungskomponenten eines gegebenen Typs besitzt. Nach Genehmi gung eines Zertifikatsantrages bzw. nach Ausstellung eines Zertifikats für eine solche Komponente würde die Anzahl um
eins reduziert. Wenn das Zertifikat dann aufgespielt wird, wird bevorzugt eine insbesondere eindeutige Komponentenken nung zurückgespielt, also der Datenbank übermittelt und dort gespeichert. Zertifikatsupdates sollten dann möglichst nicht mehr für solche „allgemeinen Treffer" sondern die konkrete Kennung durchgeführt werden.
Eine weitere vorteilhafte Ausführungsform des erfindungsgemä ßen Verfahrens zeichnet sich dadurch aus, dass die Registrie rungsstelle das öffentlich getrustete Zertifikat in Schritt d) bei einer Zertifizierungsstelle anfordert, insbesondere, indem sie den Zertifikatsantrag validiert und/oder an die Zertifizierungsstelle weiterleitet. Die Zertifizierungsstelle kann dann das angeforderte öffentlich getrustete Zertifikat für die wenigstens eine Komponente erstellen oder beschaffen.
Das Zertifizierungsmodul übermittelt das ihm in Schritt e) übermittelte öffentlich getrustete Zertifikat weiterhin be vorzugt an die wenigstens eine Komponente und/oder an eine mit der wenigstens einen Komponente verbundenen oder verbind bare Speichereinrichtung. Bei einer Speichereinrichtung han delt es sich bevorzugt um einen „Stellvertreter", etwa eine SD-Karte, einen (USB-)Dongle oder ein anderes Speichermedium, auf den eine Konfiguration für die Komponente aufgespielt werden kann/wird.
Zusammen mit dem öffentlich getrusteten Zertifikat kann
Schlüsselmaterial übermittelt werden. Bei dem Schlüsselmate rial handelt es sich insbesondere um solches, welches dem Zertifizierungsmodul zusammen mit dem Zertifikat übermittelt wurde, insbesondere von einer Zertifizierungsstelle.
Das öffentlich getrustete Zertifikat wird bevorzugt in einem fälschungssicheren Zertifikatsspeicher der wenigstens einen Komponente und/oder der mit der wenigstens einen Komponente verbundenen oder verbindbaren Speichereinrichtung abgelegt.
Für die Übermittlung des öffentlich getrusteten Zertifikats von dem Zertifizierungsmodul an die wenigstens eine Komponen te und/oder an die mit der wenigstens einen Komponente ver bundene oder verbindbare Speichereinrichtung kann eine direk te Verbindung zwischen dem Zertifizierungsmodul bzw. zwischen Hardware, auf welcher das Zertifizierungsmodul implementiert ist, und der wenigstens einen Komponente und/oder der mit der wenigstens einen Komponente verbundenen oder verbindbaren Speichereinrichtung bestehen bzw. hergestellt werden. Unter „direkt" ist dabei insbesondere zu verstehen, dass das Zerti fizierungsmodul mit der Komponente „direkt" kommunizieren kann. Es bedeutet bevorzugt, dass sich das Zertifizierungsmo dul im selben Netzwerk befindet, von dem aus die Komponente erreichbar ist und kein Vermittler notwendig ist. Eventuell liegt eine Punkt-zu-Punkt Verbindung zwischen dem Zertifizie rungsmodul (bzw. Hardware, auf welcher dieses implementiert ist) und der wenigstes einen Komponente vor (etwa Serial- kalbel-Verbindung, USB-Kabel, usw.) . Es kann insbesondere ei ne direkte kabelgebundene oder kabellose Verbindung bestehen bzw. hergestellt werden.
Analoges kann für das Abfragen der wenigstens einen Komponen tenkennung gelten. So kann vorgesehen sein, dass das Zertifi zierungsmodul in Schritt b) die wenigstens eine Komponenten kennung von der wenigstens einen Komponente abfragt, wobei hierfür eine direkte Verbindung zwischen dem Zertifizierungs modul bzw. zwischen Hardware, auf welcher das Zertifizie rungsmodul implementiert ist, und der wenigstens einen Kompo nente besteht bzw. hergestellt wird.
Ein weiterer Gegenstand der Erfindung ist ein System zur Vergabe von öffentlich getrusteten Zertifikaten für Anlagen komponenten einer technischen Anlage, umfassend ein Zertifi zierungsmodul und eine Registrierungsstelle,
wobei das Zertifizierungsmodul dazu ausgebildet und/oder ein gerichtet ist, von wenigstens einer Anlagenkomponente, die ein öffentlich getrustetes Zertifikat erhalten soll, wenigs tens eine bevorzugt eindeutige Komponentenkennung abzufragen
und/oder für wenigstens eine Anlagenkomponente, die ein öf fentlich getrustetes Zertifikat erhalten soll, wenigstens ei ne bevorzugt eindeutige Komponentenkennung zu generieren, und die Registrierungsstelle dazu ausgebildet und/oder einge richtet ist, anhand der wenigstens einen Komponentenkennung zu überprüfen, ob die wenigstens eine zu der Komponentenken nung gehörige Komponente wenigstens einer berechtigten Person oder wenigstens einem berechtigten Unternehmen zugeordnet ist, insbesondere Eigentum wenigstens einer berechtigten Per son oder wenigstens eines berechtigten Unternehmens dar stellt, und für den Fall, dass dem so ist, ein öffentlich ge trustetes Zertifikat für die wenigstens eine Komponente anzu fordern,
und das Zertifizierungsmodul dazu ausgebildet und/oder einge richtet ist, das angeforderte öffentlich getrustete Zertifi kat zu empfangen und bevorzugt in einem geschützten Bereich zu speichern.
Das erfindungsgemäße System ist für die Durchführung des er findungsgemäßen Verfahrens besonders geeignet.
In Weiterbildung umfasst das erfindungsgemäße System eine Da tenbank, in der Komponentenkennungen zusammen mit zugehörigen berechtigten Personen und/oder Unternehmen, die bevorzugt Ei gentümer zugehöriger Komponenten darstellen, gespeichert sind, und ist die Registrierungsstelle dazu ausgebildet und/oder eingerichtet, für die oder im Rahmen der Überprü fung, ob die wenigstens eine zu der Komponentenkennung gehö rige Komponente wenigstens einer berechtigten Person oder we nigstens einem berechtigten Unternehmen zugeordnet ist, in der Datenbank nach wenigstens einem Eintrag für die zusammen mit dem Zertifikatsantrag übermittelte wenigstens eine Kompo nentenkennung zu suchen.
Das Zertifizierungsmodul bildet bevorzugt ein (lokales) „Frontend" bzw. eine (lokale) „Frontend"-Einheit des Systems bzw. ist Bestandteil eines bzw. einer solchen. Die Registrie rungsstelle ist - ggf. zusammen mit einer Datenbank und einer
Zertifizierungsstelle - bevorzugt Teil eines (zentralen) „Ba- ckends" bzw. einer zentralen „Backend"-Einheit des Systems. Das Zertifizierungsmodul befindet sich bevorzugt vor Ort bei oder in der technischen Anlage, während der Registrierungs dienst sich bevorzugt entfernt von dieser, etwa in einem Re chenzentrum befindet. Der Registrierungsdienst kann insbeson dere von mehreren Zertifizierungsmodulen, die sich bei/in verschiedenen Anlagen befinden können, kontaktiert werden und Zertifikatsanträge zusammen mit Komponentenkennungen erhal ten .
Neben der Registrierungsstelle - und ggf. einer Datenbank - kann eine Zertifizierungsstelle weiterer Bestandteil eines „Backends" / einer „Backend"-Einheit des Systems sein. Alter nativ oder zusätzlich kann eine separate/externe Zertifizie rungsstelle existieren, die der Registrierungsstelle des er findungsgemäßen Systems vertraut. Eine separate/externe Zer tifizierungsstelle kann durch eine Zertifizierungsstelle wie VeriSign oder eine andere bekannte Zertifizierungsstelle ge geben sein, die bevorzugt ein Trusted Root Certificate (TRC) besitzt .
Die Erfindung betrifft darüber hinaus ein Engineering- oder Leitsystem für eine technisch Anlage umfassend ein Zertifi zierungsmodul, das dazu ausgebildet und/oder eingerichtet ist,
- von wenigstens einer Anlagenkomponente, die ein öffentlich getrustetes Zertifikat erhalten soll, wenigstens eine be vorzugt eindeutige Komponentenkennung abzufragen und/oder für wenigstens eine Anlagenkomponente, die ein öffentlich getrustetes Zertifikat erhalten soll, wenigstens eine be vorzugt eindeutige Komponentenkennung zu generieren,
- die wenigstens eine abgefragte und/oder wenigstens eine ge nerierte Komponentenkennung zusammen mit einem Zertifikats antrag für ein öffentlich getrustetes Zertifikat für die wenigstens eine Komponente an eine Registrierungsstelle (RA) zu übermitteln,
- ein öffentlich gefrustetes Zertifikat für die Anlagenkompo nente zu empfangen und bevorzugt in einem geschützten Be reich zu speichern.
Das Zertifizierungsmodul kann eine Inspektionseinheit
und/oder eine Deployment-Einheit umfassen.
Ist eine Inspektionseinheit vorhanden, ist diese bevorzugt dazu ausgebildet und/oder eingerichtet, von der wenigstens einen Komponente, die das öffentlich gefrustete Zertifikat erhalten soll, wenigstens eine bevorzugt eindeutige Komponen tenkennung abzufragen (mit anderen Worten auszulesen) und/oder für die wenigstens eine Komponente, die das öffent lich gefrustete Zertifikat erhalten soll, wenigstens eine be vorzugt eindeutige Komponentenkennung zu generieren.
Ist eine Deployment-Einheit vorhanden, ist diese bevorzugt dazu ausgebildet und/oder eingerichtet, ein erstelltes öf fentlich gefrustetes Zertifikat an die (jeweilige) Komponente zu übermitteln, also auf diese aufzuspielen. Sie ist bevor zugt dazu ausgebildet und/oder eingerichtet, von einer Zerti fizierungsstelle erstellte öffentlich gefrustete Zertifikate zu empfangen, um diese dann an die (jeweilige) Komponente weitergeben zu können.
Schließlich betrifft die Erfindung eine technische Anlage, insbesondere Fertigungs- oder Prozessanlage. Die erfindungs gemäße technische Anlage umfasst bevorzugt wenigstens ein er findungsgemäßes Engineering- oder Leitsystem.
Im Rahmen der erfindungsgemäßen Vorgehensweise kann alterna tiv oder zusätzlich auch ein Gateway- und/oder Edge-Gerät ge nutzt werden. Es kann insbesondere vorgesehen sein, dass das Zertifizierungsmodul auf einem Edge-Gerät vorgesehen/imple- mentiert ist. Das Zertifizierungsmodul kann zum Beispiel als App auf einem Edge-Gerät/-Device ausgeführt werden. Kommt ein Edge-Gerät zum Einsatz, kann die Anforderung (Zertifikatsan träge) , Erneuerung und das sichere Einspielen von öffentlich
getrusteten Zertifikaten auf den Komponenten, etwa Geräten im lokalen Netzwerk einer technischen Anlage voll-automatisch erfolgen, während das Gateway-/Edge-Gerät auch einen Zugang zum Internet und der öffentlichen Infrastruktur erlaubt. Ein Edge-Gerät liegt zweckmäßiger Weise (wie der Name sagt) an der Außenkante des geschlossenen Netzwerkes und hat zwei Netzzugänge/Netzwerkadapter. Das Edge-Gerät befindet sich da mit dann insbesondere sowohl im geschlossenen internen Netz als auch im öffentlichen Internet. Die Geräte bzw. Komponen ten im geschlossenen Netzwerk haben hingegen meist keinen Zu gang zum Internet. Das ist insbesondere im Betrieb zum auto matischen Erneuern praktisch, da das Engineering-System nicht benötigt wird und man auch nicht das Zertifizierungsmodul erst intern verwendet, um die Kennung zu erhalten, um dann manuell damit in das öffentliche Internet zu wechseln.
Weitere Merkmale und Vorteile der vorliegenden Erfindung wer den anhand der nachfolgenden Beschreibung erfindungsgemäßer Ausführungsformen unter Bezugnahme auf die beiliegende Zeich nung deutlich.
Die Figur zeigt eine Anlagenkomponente G und ein Ausführungs beispiel eines erfindungsgemäßen Systems zur Vergabe von öf fentlich getrusteten Zertifikaten in rein schematischer Dar stellung .
Die Anlagenkomponente G ist bei dem hier beschriebenen Bei spiel durch eine speicherprogrammierbare Steuerung, kurz SPS, gegeben und Bestandteil einer nicht weiter dargestellten technischen Anlage, insbesondere Fertigungs- oder Prozessan lage. Die Anlage umfasst in an sich bekannter Weise u.a. noch eine Mehrzahl von Sensoren, welche Messwerte für die Steue rung G liefern, sowie Aktoren, welche Stellwerte von der Steuerung G empfangen. So kann ein in der Anlage ablaufender Prozess überwacht und auf diesen eingewirkt werden.
Die Steuerung G ist mit den Sensoren und Aktoren sowie weite ren Anlagenkomponenten in an sich bekannter Weise über ein
Anlagennetzwerk verbunden. Das Anlagennetzwerk ist ein loka les, geschlossenes Netzwerk und die Steuerung G ist nicht von außen via Internet erreichbar.
Die Steuerung G zeichnet sich durch eine eindeutige Komponen tenkennung K aus, die bei dem hier beschriebenen Ausführungs beispiel durch ein Gerätezertifikat K gegeben ist.
Insbesondere, damit es möglich wird, dass sich Benutzer Daten der Steuerung G auch auf mobilen Endgeräten ansehen können, soll die Steuerung G ein Zertifikat erhalten.
Im Fall von Browsern auf Client-Endgeräten müssen dafür Zer tifikate in der gesamten Zertifikatskette bis hin zu allge mein anerkannten Trusted Root Certificates TRC verifizierbar sein (siehe beispielsweise die "Root CA Policy" von Google Chrome) . Bei diesen handelt es sich um eine Handvoll von Zer tifikaten, die browser- und
betriebssystemübergreifend als vertrauenswürdig eingestuft werden und nicht individuell installiert
werden müssen.
Die Steuerung G bzw. ein Webserver auf dieser soll ein sol ches, bis hin zu einem Trusted Root Zertifikat TRC verifi zierbares Zertifikat erhalten, welches auch als öffentlich getrustetes Zertifikat C bezeichnet wird.
Die Steuerung G weist einen fälschungssicheren Certificate Store CS, der in an sich bekannter Weise dazu dient, ein di gitales Zertifikat sicher zu verwahren bzw. zu speichern. In dem Certifcate Store CS kann ein solches öffentlich getruste tes Zertifikat C abgelegt werden.
Um öffentlich anerkannte (getrustete) Zertifikate C ausstel len zu können, muss eine CA in der Lage sein
sicherzustellen, dass die Zertifikat-anfordernde Person bzw. das Zertifikat-anfordernde Unternehmen tatsächlich die Kon trolle und/oder Verantwortung über die Komponente bzw. einen
darauf implementierten Server und die darauf zeigende Domäne hat. Dies kann gemäß dem Stand der Technik über die Erreich barkeit der entsprechenden Komponente/des entsprechenden Ser vers gewährleistet werden - was jedoch in der industriellen Anlage nicht gegeben ist.
Es ist daher ein erfindungsgemäßes System S zur Vergabe von öffentlich getrusteten Zertifikaten C für Anlagenkomponenten G einer technischen Anlage vorgesehen, welches dafür verwen det werden kann, ein solches Zertifikat C für die Steuerung G zu beschaffen und in dieser abzulegen (auch als „Deployment" bezeichnet) .
Das in der Figur dargestellte Ausführungsbeispiel eines sol chen erfindungsgemäßen Systems S umfasst ein Zertifizierungs modul ZM, welches eine „Frontend"-Einheit bzw. „Frontend"- Komponente des Systems 1 darstellt und sich vor Ort bei bzw. in der technischen Anlage befindet. Das Zertifizierungsmodul ZM ist vorliegend in ein Engineering System ES der techni schen Anlage integriert. Es ist konkret eine funktionale Ein heit bzw. ein funktionales Modul, welches durch Software im plementiert ist, die sich auf Hardware des Engineering Sys tems ES befindet. Das Engineering System bildet einen Be standteil des dargestellten Ausführungsbeispiels eines erfin dungsgemäßen Systems S zur Vergabe von öffentlich getrusteten Zertifikaten. Das Engineering System ES kann auf Standard- Hardware, etwa einem üblichen PC oder Industrie-PC laufen.
Es sei angemerkt, dass es alternativ dazu, dass das Zertifi zierungsmodul ZM - wie bei dem dargestellten Beispiel - in ein Engineering System S der Anlage integriert ist, dieses auch ein Stand-Alone-Tool bzw. Stand-Alone-Modul darstellen bzw. Teil eines anderen Tools sein kann. Dann besteht zweck mäßiger Weise eine funktionale Verbindung zwischen dem Engi neering System ES und dem Zertifizierungsmodul ZM. Das Zerti fizierungsmodul ZM kann auch auf einem Edge-Gerät implemen tiert sein, welches an der Außenkante des geschlossenen Anla gennetzwerkes liegt und zwei Netzzugänge/Netzwerkadapter hat,
so dass es sich sowohl im geschlossenen internen Anlagennetz als auch im öffentlichen Internet befindet.
Das Engineering System ES hat eine sehr genaue Kenntnis über die Automatisierungs-Produkte in einer technischen Anlage. So kennt es die exakte Hardware (z.B. anhand der Seriennummer) oder das konkrete Produkt (z.B. anhand der MLFB) , ist aber auch in der Lage eine Komponente, wie die Steuerung G, ein deutig zu identifizieren oder identifizierbar zu machen (z.B. über ein fest eingebranntes oder sicher aufspielbares Maschi nen- oder Geräte-Zertifikat ) . Ebenso besitzt das Engineering System ES in der Regel ohnehin Möglichkeiten, Daten sicher auf die entsprechenden Komponenten, etwa Automatisierungs- Geräte zu übertragen (im Sinne von fälschungssicher sowie nicht durch Dritte einseh- bzw. mitlesbar) .
Das erfindungsgemäße System S umfasst neben dem Engineering System ES mit dem Zertifizierungsmodul ZM weiterhin ein Ba ckend bzw. eine Backend-Einheit BE mit einer Registrierungs stelle RA, einer Datenbank D und einer Zertifizierungsstelle CA. Das Backend bzw. die Backend-Einheit BE ist nicht vor Ort bei der Anlage angeordnet, sondern befindet sich in einem Re chenzentrum, welches beispielsweise einige bzw. viele Kilome ter von der Anlage entfernt ist. Eine Kommunikation zwischen dem Zertifizierungsmodul ZM und dem Backend BE ist über das öffentliche Internet möglich.
Dass sich das Engineering System ES mit dem Zertifizierungs modul ZM und die Steuerung G im Gegensatz zu dem Backend BE vor Ort bei bzw. in der technischen Anlage befinden, konkret einen Bestandteil dieser bilden, ist in der Figur durch eine geschwungene Klammer am Rand angedeutet, welche die Komponen ten vor Ort zusammenfasst.
Das Zertifizierungsmodul ZM ist dazu ausgebildet, mit Kompo nenten G der Anlage zu kommunizieren.
Das Zertifizierungsmodul ZM umfasst eine Inspektionseinheit IE, die dazu ausgebildet ist, von Komponenten G, die ein öf fentlich getrustetes Zertifikat C erhalten sollen, bevorzugt eindeutige Komponentenkennungen K abzufragen (mit anderen Worten auszulesen) sowie für Komponenten G, die ein öffent lich getrustetes Zertifikat C erhalten sollen, bevorzugt ein deutige Komponentenkennungen K zu generieren. Die Abfrage bzw. das „Probing" ist in der Figur durch einen von der In spektionseinheit IE zu dem die Komponentenkennung K bildenden Gerätezertifikat weisenden Pfeil angedeutet.
Die Inspektionseinheit IE ist ferner dazu ausgebildet, abge fragte und/oder generierte Komponentenkennungen K jeweils zu sammen mit einem Zertifikatsantrag CSR für ein öffentlich ge trustetes Zertifikat C für die jeweilige Komponente G an die Registrierungsstelle RA zu übermitteln. Die Übermittlung ist in der Figur durch einen von der Inspektionseinheit IE zu der Registrierungsstelle RA weisenden Pfeil angedeutet, neben dem beispielhaft eine Zertifikatsanfrage CSR für die Steuerung G zusammen mit dem Gerätezertifikat K der Steuerung G rein schematisch dargestellt ist.
Das Zertifizierungsmodul ZM weist darüber hinaus eine Deploy- ment-Einheit DE auf, die dazu ausgebildet ist, öffentlich ge- trustete Zertifikate C an die (jeweilige) Komponente G zu übermitteln, also auf diese aufzuspielen. Sie ist dazu ausge bildet, von der Zertifizierungsstelle CA erstellte bzw. be schaffte öffentlich getrustete Zertifikate C zu empfangen und diese dann an die (jeweilige) Komponente G weiterzugeben.
Dies ist in der Figur durch Pfeile angedeutet, von der Zerti fizierungsstelle CA zu der Deployment-Einheit DE und von die ser zu dem Certificate Store CS der Steuerung G weisen und neben denen jeweils ein Zertifikat C rein schematisch darge stellt ist.
Die Registrierungsstelle RA ist dazu ausgebildet, anhand der wenigstens einen Komponentenkennung K zu überprüfen, ob die wenigstens eine zu der Komponentenkennung K gehörige Kompo-
nente, vorliegend die Steuerung G wenigstens einer berech tigten Person oder wenigstens einem berechtigten Unternehmen zugeordnet ist, insbesondere Eigentum wenigstens einer be rechtigten Person oder wenigstens eines berechtigten Unter nehmens darstellt, und für den Fall, dass dem so ist, ein öf fentlich getrustetes Zertifikat C für die wenigstens eine Komponente G anzufordern. Die Registrierungsstelle RA ist in der Lage, anhand übermittelter eindeutigen Komponentenmerkma le K eine rechtlich bindende Kundenzuordnung zu validieren.
Unter Verwendung des dargestellten Ausführungsbeispiels eines erfindungsgemäßen Systems S kann ein Ausführungsbeispiel des erfindungsgemäßen Verfahrens zur Vergabe von öffentlich ge- trusteten Zertifikaten C für Anlagenkomponenten G einer tech nischen Anlage durchgeführt werden.
Dabei fragt in einem ersten Schritt das Zertifizierungsmodul ZM von der Steuerung G, die ein öffentlich getrustetes Zerti fikat erhalten soll, wenigstens eine bevorzugt eindeutige Komponentenkennung, vorliegend das Gerätezertifikat K ab. Das Zertifizierungsmodul ZM, welches vorliegend in das Enginee ring System der Anlage integriert ist, hat direkten Zugriff auf die Steuerung G, so dass diese Abfrage problemlos möglich ist. Das Engineering System G ist Teilnehmer des geschlosse nen Anlagennetzes, so dass es - und somit das integrierte Zertifizierungsmodul ZM - auf die Steuerung G Zugriff hat.
Alternativ oder zusätzlich zu dem Abfragen/Auslesen der we nigstens einen Komponentenkennung K kann das Zertifizierungs modul ZM für die Steuerung G, die ein öffentlich getrustetes Zertifikat erhalten soll, auch wenigstens eine bevorzugt ein deutige Komponentenkennung, vorliegend ein (ggf. vorüberge hendes) Gerätezertifikat generieren.
Dies ist vor allem dann vorteilhaft, wenn wenigstens eine Komponente, etwa die Steuerung G noch nicht in Betrieb genom men wurde, sondern dies ggf. erst noch projektiert wird. Mit anderen Worten wird auch ein Offline- bzw. Vorab-Engineering
unterstützt. Dies macht es auch möglich, dass sich das Engi neering Systems ES (noch) nicht im Anlagennetz befinden muss. Durch die Generierung wenigstens einer eindeutigen Kennung K durch das Zertifizierungsmodul ZM werden die Komponenten ein deutig identifizierbar. Öffentlich getrustete Zertifikate C können dann bereits vorab angefordert und erzeugt werden und im Zertifizierungsmodul ZM intern für die projektierte Kompo nente G vorgehalten werden. Später bei einer Inbetriebnahme stellt das Zertifizierungsmodul ZM dann bevorzugt sicher, dass die wenigstens eine Komponentenkennung K tatsächlich vorliegt bzw. fälschungssicher eingebracht werden kann. Wenn dies sichergestellt wurde, kann auch das öffentlich getruste te Zertifikat C dorthin transferiert werden.
Im Anschluss an das Abfragen und/oder Generieren der wenigs tens einen Komponentenkennung, vorliegend des abgefragten Ge rätezertifikates K übermittelt das Zertifizierungsmodul ZM dieses zusammen mit einem Zertifikatsantrag CSR für ein öf fentlich getrustetes Zertifikat C für die Steuerung G an eine Registrierungsstelle RA.
Der Zertifikatsantrag CSR, den das Zertifizierungsmodul ZM an die Registrierungsstelle RA übermittelt, kann dabei von dem Zertifizierungsmodul ZM oder auch von der Steuerung G er stellt werden bzw. worden sein.
Die Registrierungsstelle RA überprüft dann anhand des Geräte zertifikates K, ob die wenigstens eine zu der Komponentenken nung K gehörige Steuerung G wenigstens einer berechtigten Person oder wenigstens einem berechtigten Unternehmen, in de ren oder dessen Verantwortung die Steuerung steht, zugeordnet ist. Diese Überprüfung erfolgt bei dem dargestellten Ausfüh rungsbeispiel, indem die Registrierungsstelle RA die Daten bank D, in der Komponentenkennungen K, u.a. Gerätezertifikate K, zusammen mit zugehörigen berechtigten Personen und/oder Unternehmen, die Eigentümer von zu den Komponentenkennungen K gehörigen Komponenten G darstellen, gespeichert sind, nach wenigstens einem Eintrag für die zusammen mit dem Zertifi-
katsantrag CSR übermittelte Komponentenkennung, vorliegend dem Gerätezertifikat K der Steuerung G, sucht.
Wird ein Eintrag für die mit dem Zertifikatsantrag CSR über mittelte Komponentenkennung K in der Datenbank gefunden, wird der Zertifikatsantrag CSR von der Registrierungsstelle RA ge nehmigt/validiert .
Es sei angemerkt, dass ein solcher Eintrag in der Datenbank bevorzugt erstellt wurde, nachdem ein Kunde die Steuerung G gekauft hat und somit der Eigentümer wurde. Über den Abruf bzw. die Suche in der Datenbank D kann somit geprüft werden, ob die Steuerung G im Besitz eines berechtigten Kunden steht oder nicht.
Weiterhin sei angemerkt, dass es natürlich möglich ist, dass gemäß der Datenbank D mehrere baugleiche Komponenten, etwa Steuerungen G existieren, die einer Person bzw. einem Unter nehmen zugeordnet sind, insbesondere einer Person bzw. einem Unternehmen gehören. Ist dies der Fall, wird der Zertifikats antrag CSR genehmigt und die Anzahl potentieller Treffer also baugleicher Komponenten G in der Datenbank um eins reduziert.
Die Registrierungsstelle RA fordert in einem nächsten Schritt das öffentlich getrustete Zertifikat C bei der Zertifizie rungsstelle CA an, insbesondere, indem sie den Zertifikatsan trag CSR an die Zertifizierungsstelle CA weiterleitet.
Die Zertifizierungsstelle CA erstellt oder beschafft dann das angeforderte öffentlich getrustete Zertifikat C für die Steu erung G. Dabei kontaktiert die einen Teil des Backends BE darstellende Zertifizierungsstelle CA bei dem hier beschrie benen Beispiel eine weitere, zentrale Zertifizierungsstelle zCA, die über ein Trusted Root Zertifikat TRC verfügt. Da die zCA eine Vertrauensstellung mit der CA besitzt, führt diese den CSR direkt aus.
Von bzw. in der Registrierungsstelle CA oder zCA des Backends BE wird ein Zertifikat C erstellt.
Das Zertifikat C wird zusammen mit zugehörigem Schlüsselmate rial an die Deployment-Einheit DE des Zertifizierungsmoduls ZM weitergeleitet, dort oder an einer anderen Stelle in dem Engineering System Es in einem geschützten Bereich, der nicht von außen gelesen oder verändert werden kann, gespeichert.
Das Zertifikat C und zugehörige Schlüsselmaterial werden fer ner von der Deployment-Einheit „deployed", also in die Steue rung G eingebracht, konkret in dem Certificate Store CS si cher abgelegt. Dies ist in der Figur 1 erneut durch entspre chende Pfeile angedeutet.
Das Zertifikat C (kann auch als Kundenzertifikat bzw. eng lisch customer certificat bezeichnet werden) weist bei dem dargestellten Ausführungsbeispiel auf ein Zwischenzertifikat zC der CA, das wiederum auf das Trusted Root Certificate TRC der zCA verweist. In der Figur ist diese Zertifikatskette durch Pfeile mit gestrichelter Linie angedeutet. Man kann auch sagen, dass diese Pfeile den „Trust", also das Vertrauen zwischen den Stellen bzw. Zertifikaten andeuten. Das TRC ist, wie man sieht, das Ende der Zertifikatkette. Das (Kunden- ) Zertifikat C in der Komponente G muss über die ganze Kette bis zum TRC der zCA gültig sein.
Es sei angemerkt, dass eine zentrale Zertifizierungsstelle zCA vorgesehen und con den CA kontaktiert werden kann jedoch nicht muss. Alternativ zu dem in der Figur dargestellten Aus führungsbeispiel ist es auch möglich, dass die CA direkt Zer tifikate C ausstellt, ohne auf externes Mitwirken einer wei teren CA angewiesen zu sein. Dies vor allem, wenn die CA gül tiges Schlüsselmaterial besitzt.
Falls das ES eine vorläufige, nicht abgerufene, sondern gene rierte Kennung K verwendet hat, wird die nun die eindeutige Kennung K aus der Komponente G abgefragt und an das Backend
BE zurück übermittelt. Dort kann die vorläufige Kennung nun mit der tatsächlichen ersetzt werden. (Falls das ES vorab ei ne eindeutige Kennung K erzeugt hat und diese in die Kompo nente G eingebracht werden konnte, entfällt die Rückübermitt lung, oder aber es werden weitere Kennzeichen, wie die Se riennummer zur korrekten Zuordnung in der Datenbank D über tragen . )
Weiterhin sei angemerkt, dass für den Fall, dass die RA in der Datenbank keinen Eintrag für die mit dem CSR übermittelte Komponentenkennung K finden könnte, der Antrag CSR abgelehnt und kein Zertifikat C erstellt würde.
Das Engineering System ES mit dem Zertifizierungsmodul ZM kann folgende drei Varianten unterstützen:
- Online Engineering: Die Komponenten/Server sind in der An lage bereits installiert. Das ES kann hier Merkmale ausle- sen, eine Komponente G eindeutig identifizieren (und si cherstellen, dass es keine weitere Instanz gibt, welche dieselben Merkmale aufweist) und Daten sowie Zertifikate C auf die Komponente G sicher transferieren.
- Offline Engineering: Die Komponenten/Server sind noch nicht in der Anlage installiert, sondern diese wird ggf. erst noch projektiert. Hierbei wird das Engineering System ES die für die Zielkomponente G notwendigen eindeutigen Merk male (wenigstens eine Komponentenkennung K) eventuell erst erzeugen (z.B. ein Maschinenzertifikat) . Zertifikate C kön nen dann jedoch bereits vorab angefordert und erzeugt wer den aber im Engineering System ES, konkret dem Zertifizie rungsmodul ZM intern für die projektierte Komponente G vor gehalten werden. Später bei einer Inbetriebnahme stellt das ES sicher, dass die eindeutigen Merkmale tatsächlich vor liegen bzw. fälschungssicher eingebracht werden können.
Wenn dies sichergestellt wurde, kann auch das bereits vor gehaltene Zertifikat C dorthin transferiert werden.
- Indirekter Offline-Fall: In der Automatisierung existiert der Sonderfall, dass teils gar nicht die tatsächliche Kom-
ponente G, sondern ein Stellvertreter, etwa eine SD-Karte oder ein (USB-)Dongle mit der Konfiguration versehen wird. So kann z.B. eine SD-Karte/ein Dongle beim Download die komplette Konfiguration für eine SPS G erhalten, die tat sächlich Steuerung G im Ersatzteilfall jedoch sofort ausge wechselt werden. Der Download erfolgt dabei also nur indi rekt auf das tatsächliche Gerät G. In diesem Fall muss je doch der Stellvertreter, also die Karte/der Dongle, eindeu tig zu identifizieren sein und muss vor unerlaubtem Zugriff geschützt sein - die Daten in einem geschützten Bereich dieser bzw. dieses dürfen also nicht ohne Weiteres ausles bar sein.
In allen drei Fällen hat das Engineering System ES zumindest zu irgendeinem Zeitpunkt Zugriff auf die zu validierenden Komponenten G.
Im Online-Fall kann das Zertifikat C mit Begleitmaterial di rekt für die Zielkomponente G verschlüsselt werden. So ist gewährleistet, dass das Zertifikat C durchgängig abgesichert ist und ausschließlich dort entschlüsselt werden kann. Dar über hinaus kann jedes Projekt im Engineering System ES mit einem ( künden) spezifischen Schlüssel versehen werden, so dass im Offline-Fall die CA den Transport zumindest bis zum ES ab sichern kann. Im jeweiligen Projekt kann wiederum das Materi al für das konkrete Endgerät G verschlüsselt werden. Somit ist ebenfalls eine durchgängige Absicherung möglich.
Es sei angemerkt, dass das Engineering System ES, in welches das Zertifizierungsmodul ZM integriert ist, bzw. von dem das Zertifizierungsmodul ZM einen Bestandteil bildet, ein Ausfüh rungsbeispiel eines erfindungsgemäßen Engineering Systems ei ner technischen Anlage bzw. für eine Technische Anlage dar stellt .
Die technische Anlage, von der die Steuerung G und das Engi neering Systems ES einen Bestandteil bilden, ist ferner ein
Ausführungsbeispiel einer erfindungsgemäßen technischen Anla ge .
Obwohl die Erfindung im Detail durch das bevorzugte Ausfüh- rungsbeispiel näher illustriert und beschrieben wurde, so ist die Erfindung nicht durch die offenbarten Beispiele einge schränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen .
Es versteht sich beispielsweise, dass auch wenn die erfin dungsgemäßen Ausführungsformen vorstehend beispielshaft an hand einer Komponente einer technischen Anlage, konkret einer Steuerung G erläutert wurden, selbstverständlich für beliebig viele weitere Komponenten auf entsprechende Weise öffentlich getrustete Zertifikate C beantragt und ggf. erstellt und an diese übermittelt werden können. Dabei kann für mehrere Kom ponenten einer technischen Anlage (oder auch mehrerer techni scher Anlagen) ein Zertifizierungsmodul ZM bzw. ein erfin- dungsgemäßes System S genutzt werden.
Insbesondere das Backend BE eines erfindungsgemäßen Systems kann auch eine Zentrale darstellen, die mit mehreren Zertifi zierungsmodulen ZM kommuniziert und auf die Anfragen mehrere Zertifizierungsmodule ZM, ggf. verschiedener Anlagen, öffent lich getrustete Zertifikate C erstellt und an die mehreren Zertifizierungsmodule ZM übermittelt.