DE102016107644A1 - Verfahren zur erzwungenen Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur, Computernetz-Infrastruktur sowie Computerprogramm-Produkt - Google Patents

Verfahren zur erzwungenen Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur, Computernetz-Infrastruktur sowie Computerprogramm-Produkt Download PDF

Info

Publication number
DE102016107644A1
DE102016107644A1 DE102016107644.9A DE102016107644A DE102016107644A1 DE 102016107644 A1 DE102016107644 A1 DE 102016107644A1 DE 102016107644 A DE102016107644 A DE 102016107644A DE 102016107644 A1 DE102016107644 A1 DE 102016107644A1
Authority
DE
Germany
Prior art keywords
computer system
record
key
cipher
processing computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102016107644.9A
Other languages
English (en)
Inventor
Heinz-Josef Claes
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Technology Solutions Intellectual Property GmbH
Original Assignee
Fujitsu Technology Solutions Intellectual Property GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Technology Solutions Intellectual Property GmbH filed Critical Fujitsu Technology Solutions Intellectual Property GmbH
Publication of DE102016107644A1 publication Critical patent/DE102016107644A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • G06F21/645Protecting data integrity, e.g. using checksums, certificates or signatures using a third party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Storage Device Security (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zur erzwungenen Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur, aufweisend die Schritte: – iteratives Verschlüsseln eines Klar-Datensatzes in einem Key-Computersystem der Computernetz-Infrastruktur vermittels einer Mehrzahl unterschiedlicher Schlüssel in einen ersten verschachtelten Chiffrat-Datensatz, – schrittweises Übertragen des ersten verschachtelten Chiffrat-Datensatzes vom Key-Computersystem entlang eines vorbestimmten Kommunikationspfades, umfassend eine Mehrzahl von Bearbeitungs-Computersystemen, an ein vorbestimmtes Ziel-Bearbeitungs-Computersystem, wobei die vom ersten verschachtelten Chiffrat-Datensatz durchlaufene Reihenfolge der Bearbeitungs-Computersysteme innerhalb des Kommunikationspfades durch eine inverse Reihenfolge der Iterationen der Verschlüsselung des Klar-Datensatzes in den ersten verschachtelten Chiffrat-Datensatz festgelegt ist, – Entschlüsseln jeweils einer Iteration des ersten verschachtelten Chiffrat-Datensatzes in jeweils einem Bearbeitungs-Computersystem entlang des Kommunikationspfades derart, dass nach der Entschlüsselung der letzten Iteration im Ziel-Bearbeitungs-Computersystem wieder der lesbare Klar-Datensatz vorliegt.

Description

  • Die Erfindung betrifft ein Verfahren zur erzwungenen Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur sowie eine Computernetz-Infrastruktur mit einem Key-Computersystem, einer Mehrzahl von Bearbeitungs-Computersystemen sowie einem Ziel-Bearbeitungs-Computersystem aus der Mehrzahl der Bearbeitungs-Computersysteme.
  • Eine Anforderung an einen Prozess zur Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur ist die Sichtbarkeit von Datenfeldern oder allgemein von Daten für die Prozessbeteiligten (Computersysteme der Computernetz-Infrastruktur und/oder Benutzer der Computersysteme). Dabei ist aus Sicherheitsgründen oftmals eine Unterscheidung bestimmter Rechte oder eine Steuerung bestimmter Handlungsmöglichkeiten der verschiedenen Prozessbeteiligten erwünscht.
  • Dies kann sowohl Möglichkeiten innerhalb eines Prozesses (Prozessbeteiligter B sieht Eingabe von Prozessbeteiligten A, Prozessbeteiligter C sieht diese Informationen aber nicht) als auch das Resultat eines Prozesses (z.B. einen Datenimport in ein Ziel-Computersystem) betreffen. Ein Datenimport kann beispielsweise ein Datenimport auf einen Server sein, bei dem die Prozessbeteiligten die Daten einsehen können („normaler Import") oder nicht einsehen dürfen (z.B. Import eines Passwords, bei dem nur der Import als solcher genehmigt werden soll, das Password aber vertraulich bleibt). Gemäß üblicherweise implementierten Prozessen werden die Daten von einer zentralen Instanz innerhalb einer Computernetz-Infrastruktur verwaltet, z.B. in einer zentralen Datenbank gespeichert, auf die die Teilnehmer an dem Prozess dann direkt oder indirekt Zugriff erhalten. Die Berechtigungen der Teilnehmer werden dann auch von dieser zentralen Instanz verwaltet. Ein gravierender Nachteil derartiger Lösungen besteht darin, dass die zentrale Instanz einen Angriffspunkt für Angreifer der Computernetz-Infrastruktur darstellt. Ein Zugriff auf oder eine Manipulation von Prozessen innerhalb der zentralen Instanz durch Angreifer kann dabei eine vollständige Kontrolle bzw. Manipulation der Computernetz-Infrastruktur sowie gegebenenfalls Zugriff auf vertrauliche Informationen zur Folge haben.
  • Es ist Aufgabe der vorliegenden Erfindung, die Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur sicherer gegen Manipulationen zu gestalten und dennoch einen zufriedenstellenden sowie verlässlichen Prozess zu gewährleisten.
  • Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1 sowie durch eine Computernetz-Infrastruktur gemäß Anspruch 11 gelöst. Weitere vorteilhafte Aspekte, Maßnahmen und Verfahrensschritte sind in den Unteransprüchen offenbart.
  • Das Verfahren nach Anspruch 1 umfasst die nachfolgend erläuterten Maßnahmen bzw. Schritte.
  • Zunächst erfolgt ein iteratives Verschlüsseln eines Klar-Datensatzes in einem Key-Computersystem der Computernetz-Infrastruktur vermittels einer Mehrzahl unterschiedlicher Schlüssel in einen ersten verschachtelten Chiffrat-Datensatz. Dabei erfolgt in jeder Iteration zumindest eine Verschlüsselung vermittels eines anderen Schlüssels aus der Mehrzahl der unterschiedlichen Schlüssel, wobei einer oder mehrere Schlüssel aus der Mehrzahl der unterschiedlichen Schlüssel einem bestimmten Bearbeitungs-Computersystem aus einer Mehrzahl von Bearbeitungs-Computersystemen der Computernetz-Infrastruktur zuordenbar ist.
  • Anschließend erfolgt ein schrittweises Übertragen des ersten verschachtelten Chiffrat-Datensatzes vom Key-Computersystem entlang eines vorbestimmten Kommunikationspfades, umfassend die Mehrzahl der Bearbeitungs-Computersysteme, an ein vorbestimmtes Ziel-Bearbeitungs-Computersystem aus der Mehrzahl der Bearbeitungs-Computersysteme. Die vom ersten verschachtelten Chiffrat-Datensatz durchlaufene Reihenfolge der Bearbeitungs-Computersysteme innerhalb des Kommunikationspfades ist durch die inverse Reihenfolge der Iterationen der Verschlüsselung des Klar-Datensatzes in den ersten verschachtelten Chiffrat-Datensatz festgelegt.
  • Schließlich erfolgt ein Entschlüsseln jeweils einer Iteration des ersten verschachtelten Chiffrat-Datensatzes in jeweils einem Bearbeitungs-Computersystem entlang des Kommunikationspfades vermittels eines dem jeweiligen Bearbeitungs-Computersystem zuordenbaren Schlüssels derart, dass nach der Entschlüsselung der letzten Iteration im Ziel-Bearbeitungs-Computersystem wieder der lesbare Klar-Datensatz vorliegt.
  • Eine entsprechende Computernetz-Infrastruktur weist zumindest auf:
    • – ein Key-Computersystem,
    • – eine Mehrzahl von Bearbeitungs-Computersystemen sowie
    • – ein Ziel-Bearbeitungs-Computersystem aus der Mehrzahl der Bearbeitungs-Computersysteme. Die Computernetz-Infrastruktur ist eingerichtet, ein entsprechendes Verfahren der erläuterten Art durchzuführen.
  • Der generelle Vorteil eines derartigen Verfahrens bzw. einer derartigen Computernetz-Infrastruktur besteht darin, dass für einen bestimmten Prozess, z.B. für einen Import von Daten in ein Ziel-Bearbeitungs-Computersystem, eine kaskadierte Verschlüsselung eines anfänglich vorliegenden Klar-Datensatzes gewählt werden kann. Die kaskadierte Verschlüsselung erzwingt dabei einen Kommunikationspfad (Routing-Weg) innerhalb der Computernetz-Infrastruktur und ist robust gegen (versuchte) Manipulationen einzelner Prozessschritte. Ferner können durch diese Prozesserzwingung kombiniert mit einer mehrfachen Verschlüsselung der ausgetauschten Datensätze sowohl eine Unterscheidung bestimmter Rechte als auch eine Steuerung bestimmter Handlungsmöglichkeiten der verschiedenen Prozessbeteiligten erzielt werden. So ist vermittels des Verfahrens z.B. denkbar, eine Einsicht in die Daten bzw. Datensätze durch Prozessteilnehmer unmöglich zu machen und lediglich deren „Zustimmung“ zum Prozessablauf abzufragen bzw. zu erzwingen, sodass ein Ziel-Bearbeitungs-Computersystem schließlich die Daten erhält und prozessieren kann. Die mehrfache Verschlüsselung gewährt zudem ein sehr hohes Maß an Sicherheit gegen unerlaubtes Abgreifen oder eine unerlaubte Manipulation ausgetauschter Daten.
  • Das hier beschriebene Verfahren sowie die hier dargestellte Computernetz-Infrastruktur basieren auf einer dezentral organisierten Computernetz-Infrastruktur, die weiter unten mit einigen vorteilhaften Aspekten näher erläutert wird und als eine Art sichere Middleware ausgestaltet ist. Im Unterschied zu herkömmlichen Lösungen ist dabei keine zentrale Instanz (die einen Angriffspunkt darstellen könnte) vorgesehen. Die Zugriffsmöglichkeiten von Prozessteilnehmern auf Daten sind daher bei dem hier dargestellten Vorgehen dezentral organisiert. Dies geschieht mittels kryptografischer Methoden, die eine hohe Sicherheit bieten.
  • Die hier dargestellte kaskadierte Verschlüsselung dient dazu, die Verwendbarkeit von Daten am Ziel des Prozesses, z.B. durch Prozessteilnehmer C, nur dann zu ermöglichen, wenn andere Prozessteilnehmer, z.B. Prozessteilnehmer A und Prozessteilnehmer B zuvor „zugestimmt" haben. Technisch kann diese „Zustimmung“ auf kryptografischer Ebene mit Hilfe von asymmetrischen Verschlüsselungsverfahren (sogenannte public key/private key Verschlüsselung) umgesetzt werden.
  • Denkbar wäre z.B. das folgende Vorgehen. Das Routing eines Datensatzes x soll (für die relevanten Prozessteilnehmer) von A zu B zu C gehen. Hierzu wird x (durch Prozessteilnehmer A, welcher z.B. ein Computersystem, speziell ein sogenanntes Key-Computersystem mit der Möglichkeit der Verschlüsselung von Datensätzen, sein kann) mit dem öffentlichen Schlüssel von C verschlüsselt. Dies wird im Folgenden dadurch veranschaulicht, dass x zu x(C) wird. Anschließend wird dieser Datensatz mit dem öffentlichen Schlüssel von B verschlüsselt. Das heißt wiederum, dass x(C) zu x(B(C)) wird. Eine weitere Verschlüsselung mit dem öffentlichen Schlüssel von A führt dazu, dass x(B(C)) zu x(A(B(C))) wird.
  • Der so erhaltene verschachtelte Chiffrat-Datensatz x(A(B(C))) kann am Ende des Prozesses nur gelesen werden, wenn er zuerst von A entschlüsselt, das Ergebnis von B entschlüsselt und dieses Ergebnis anschließend wiederum von C entschlüsselt wird. Ein Abgreifen des Datensatzes am Beginn des Prozesses (oder ggf. schon vor Beginn des Prozesses, aber nach der Verschlüsselung) und ein direkter Transport zu C sind dann nicht mehr zielführend, da C die Daten nicht allein entschlüsseln kann.
  • Dieses wäre bei einer einfachen Verschlüsselung des Datensatzes mit dem öffentlichen Schlüssel von C möglich. Die hier genannten „Prozessteilnehmer“ können (und werden in der Regel) keine einzelnen Prozessteilnehmer (natürliche Personen oder Software-Automaten) sein, sondern Computersysteme, wie Server, auf die einzelne oder Gruppen von Berechtigten Zugriff haben.
  • Die Vorteile des Verfahrens können folgendermaßen zusammengefasst werden:
    • – Mittels kryptographischer Verfahren werden Einsicht- und/oder Bearbeitungsmöglichkeiten für Prozessteilnehmer auf der Basis des dargestellten Vorgehens erlaubt oder verwehrt bzw. generell steuerbar;
    • – Es existiert kein zentraler Angriffspunkt für ein Hacking sowie keine Möglichkeit der zentralen Einsehbarkeit/Verwendung von Datensätzen; eine Unterscheidung von verschiedenen Datensätzen innerhalb eines Prozesses ist möglich;
    • – Transportierte Datensätze können wahlweise für bestimmte Prozessteilnehmer einsehbar (z.B. „Kommentar eines Prozessteilnehmers" oder „inhaltliche Überprüfung bei einem Import") oder für alle oder einige Prozessteilnehmer verborgen sein (z.B. „Transport eines zu setzenden Passworts"). Dieses kann so realisiert werden, dass die Möglichkeit der Verwendung der Daten am Ziel aufgrund kryptografischer Verfahren davon abhängt, dass die Prozessschritte durchgeführt wurden (und Daten nicht durch z.B. einen Cracker) abgegriffen wurden;
    • – Der Overhead für den Transport großer Dateien innerhalb von Datensätzen oder ganzen Task-Dateien (die mehrere Datensätze enthalten können und z.B. bestimmte Aktionen oder Prozesse in einem Ziel-Bearbeitungs-Computersystem definieren) wird deutlich reduziert; Manipulationen der Daten können über, ggf. verkettete, Signaturen, deren Ursprung bis zum Klar-Datensatz zurückgeht, erkannt werden; ein derartiges Vorgehen wird weiter unten näher erläutert.
  • Das Verfahren der hier erläuterten Art, insbesondere der in den Ansprüchen dargestellten Aspekte, wird anhand der nachfolgenden Fallkonstellationen näher erläutert.
  • Insbesondere können die nachfolgend dargestellten Konstellationen durch das hier beschriebene Verfahren kryptografisch abgesichert werden. „Kryptographische Absicherung“ bedeutet, dass die Lesbarkeit (Entschlüsselung) von Daten bzw. von Datensätzen durch kryptographische Methoden vorgegeben bzw. ein vordefinierter einzuhaltender Prozess erzwungen wird.
  • Konstellation 1:
  • Einsehbarkeit eines (verschlüsselten) Datensatzes für alle oder einige Beteiligten ohne kryptografische Prozesserzwingung. Diese Konstellation entspricht im Wesentlichen einer herkömmlichen Vorgehensweise.
  • Konstellation 2:
  • Einsehbarkeit und Prozesserzwingung eines (verschlüsselten) Datensatzes für den Ziel-Prozessteilnehmer (z.B. Ziel-Bearbeitungs-Computersystem), nicht aber für die restlichen Prozessteilnehmer.
  • Konstellation 3:
  • Einsehbarkeit und Prozesserzwingung eines (verschlüsselten) Datensatzes für einige Prozessteilnehmer sowie ggf. für den Ziel-Prozessteilnehmer.
  • Konstellation 4:
  • Einsehbarkeit und Prozesserzwingung eines (verschlüsselten) Datensatzes für einige Prozessteilnehmer sowie ggf. für den Ziel-Prozessteilnehmer, dabei Berücksichtigung der Lesbarkeit der Daten aus vorherigen Prozessschritten für sonstige Prozessteilnehmer. Beispiel: Prozessteilnehmer B kann nur lesen, wenn Prozessteilnehmer A „zugestimmt“ hat (dies erfolgt z.B. durch Signieren des Datensatzes vermittels einer qualifizierten Signatur von A).
  • Konstellation 5:
  • Einsehbarkeit und Prozesserzwingung eines (verschlüsselten) Datensatzes für einige Prozessteilnehmer sowie ggf. für den Ziel-Prozessteilnehmer unter Berücksichtigung von Prozessschritten für diese Daten. Beispiel: Prozessteilnehmer A generiert Daten, die Prozessteilnehmer C nur lesen darf, wenn Prozessteilnehmer B signiert hat, d.h. wenn B „zugestimmt“ hat (dies erfolgt z.B. durch Signieren des Datensatzes vermittels einer qualifizierten Signatur von B). Einsehbarkeit und Prozesserzwingung eines (verschlüsselten) Datensatzes, der während des Prozesses erzeugt wird. Beispiel: Prozessteilnehmer A erzeugt Daten, die Prozessteilnehmer B und Prozessteilnehmer D lesen dürfen, aber nicht Prozessteilnehmer C.
  • Konstellation 6:
  • Berücksichtigung von (Benutzer-)Gruppen (anstelle von Einzel-Instanzen).
  • Konstellation 7:
  • Berücksichtigung von Anforderungen für Audits.
  • Nachfolgend wird die exemplarische Umsetzung der oben beschriebenen Konstellationen 1 bis 7 näher erläutert.
  • Im Folgenden wird immer ein mehrstufiger Prozess mit den für eine ggf. mehrstufige bzw. iterative oder kaskadierte Verschlüsselung relevanten Prozessschritten in mehreren oder allen der Prozessteilnehmer S, A, B, C, D, E vorausgesetzt. Hierbei ist S der Startpunkt des Verfahrens, der in einem speziell für das Verfahren eingerichteten Key-Computersystem einer Computernetz-Infrastruktur oder in einem sonstigen beteiligten Bearbeitungs-Computersystem der Computernetz-Infrastruktur eingerichtet oder implementiert sein kann. E ist der Endpunkt, der in einem speziell für das Verfahren eingerichteten Ziel-Bearbeitungs-Computersystem der Computernetz-Infrastruktur oder einem sonstigen beteiligten Bearbeitungs-Computersystem der Computernetz-Infrastruktur eingerichtet ist. A, B, C und D repräsentieren Prozessteilnehmer (hier eine Mehrzahl von Bearbeitungs-Computersystemen), die in einem vorbestimmten Kommunikationspfad zwischen dem Startpunkt S und dem Endpunkt E in der Computernetz-Infrastruktur eingerichtet sind und entlang derer ein Datensatz gemäß einem vorbestimmten Prozess mit bestimmten Prozessschritten durch die Computernetz-Infrastruktur transportiert bzw. schrittweise übertragen wird.
  • In allen Fällen wird ein Datensatz x verschlüsselt. Je nach Anwendungsfall sind beliebige Kombinationen der oben genannten Konstellationen 1 bis 7, ggf. für weitere oder unterschiedliche Datensätze möglich. Die Signierung der Daten bzw. von Datensätzen wird als automatisch angenommen. Dies wird weiter unten noch näher erläutert.
  • Die Nummerierung der nachfolgenden Ausführungen bezieht sich auf die oben dargestellten Konstellationen:
  • Konstellation 1:
  • Der Datensatz x wird spätestens am Startpunkt S mit dem öffentlichen Schlüssel derjenigen verschlüsselt, die die Daten lesen können sollen, z.B. A, D und E. In diesem Fall können A, D und E die Daten entschlüsseln.
  • Eine Abhängigkeit zwischen den Berechtigten besteht nicht. Die Daten könnten auch (z.B. von A selbst) abgegriffen werden und direkt auf einen (u.U. gehackten) Ziel-Server E eingespielt werden. Dieses würde jedoch unter Berücksichtigung der unten näher erläuterten Maßnahmen auffallen, wäre aber grundsätzlich möglich.
  • Konstellation 2:
  • Der Datensatz x soll von Prozessteilnehmern A, B und D „bestätigt" werden, damit E ihn verwenden kann. Prozessteilnehmer C kann beispielweise ein reiner Durchlaufpunkt in einem Kommunikationspfad für den Transport des Datensatzes x hin zum Ziel-Bearbeitungs-Computersystem E sein. Das heißt, in C erfolgt kein spezieller Prozess-Schritt. C kann beispielsweise ein Router sein, der den Datensatz x lediglich weiterschickt.
  • Zur Durchführung dieser Konstellation wird in S (oder vorher, ggf. in einem speziellen Key-Computersystem) der Datensatz x mit dem öffentlichen Schlüssel von E verschlüsselt, d.h. x wird zu x(E). Dann erfolgt eine weitere Iteration der Verschlüsselung von x(E) mit dem öffentlichen Schlüssel von D, d.h. x(E) wird zu x(D(E)). Ferner erfolgt eine weitere Iteration der Verschlüsselung von x(D(E)) mit dem öffentlichen Schlüssel von B, d.h. x(D(E)) wird zu x(B(D(E))). Schließlich erfolgt in einer letzten Iteration noch die Verschlüsselung von x(B(D(E))) mit dem öffentlichen Schlüssel von A, so dass aus x(B(D(E))) x(A(B(D(E)))) wird. Somit liegt schließlich der verschachtelte Chiffrat-Datensatz x(A(B(D(E)))) vor, der in mehreren Iterationen der Verschlüsselung aus dem ursprünglichen Klar-Datensatz x erstellt wurde. In jeder Iteration erfolgte zumindest eine Verschlüsselung vermittels eines anderen Schlüssels aus der Mehrzahl von unterschiedlichen öffentlichen Schlüsseln, wobei einer oder mehrere Schlüssel aus der Mehrzahl der unterschiedlichen Schlüssel einem bestimmten Bearbeitungs-Computersystem aus einer Mehrzahl von Bearbeitungs-Computersystemen der Computernetz-Infrastruktur zuordenbar ist.
  • Damit die Daten für E lesbar sind (also in E mit dessen lokal vorliegendem privatem Schlüssel entschlüsselt werden können), muss der entstandene verschachtelte Chiffrat-Datensatz x(A(B(D(E))))) von A, B und D in genau dieser Reihenfolge, jeweils mit dem im jeweiligen Prozessteilnehmer lokal vorliegenden privaten Schlüssel, entschlüsselt werden. Hierzu wird der verschachtelte Chiffrat-Datensatz x(A(B(D(E))))) schrittweise von S entlang eines vorbestimmten Kommunikationspfades, umfassend die Mehrzahl der Bearbeitungs-Computersysteme A, B, D, (und ggf. C) an das vorbestimmte Ziel-Bearbeitungs-Computersystem E übertragen. Jede Iteration des ersten verschachtelten Chiffrat-Datensatzes x(A(B(D(E))))) wird dabei in jeweils einem Bearbeitungs-Computersystem entlang des Kommunikationspfades vermittels des jeweils zuordenbaren privaten Schlüssels derart entschlüsselt, dass nach der Entschlüsselung der letzten Iteration im Ziel-Bearbeitungs-Computersystem E wieder der lesbare Klar-Datensatz x vorliegt.
  • Die vom ersten verschachtelten Chiffrat-Datensatz x(A(B(D(E))))) durchlaufene Reihenfolge der Bearbeitungs-Computersysteme A, B, D und E innerhalb des Kommunikationspfades ist durch die inverse Reihenfolge der Iterationen der Verschlüsselung des Klar-Datensatzes x in den ersten verschachtelten Chiffrat-Datensatz x(A(B(D(E))))) wie oben erläutert festgelegt.
  • Eine Umgehung der vorgesehenen Prozessreihenfolge (d.h. unter anderem des Routings entlang des vorbestimmten Kommunikationspfades) ist nicht möglich, auch nicht, wenn einer der Prozessschritte oder Prozessteilnehmer manipuliert wird.
  • Alle am Prozess beteiligten Bearbeitungs-Computersysteme A, B, D (und ggf. C) können die Daten nicht final entschlüsseln (C ist sowieso nicht an der Entschlüsselung beteiligt) und haben keinen Zugriff auf den erst in E final entschlüsselten Datensatz x.
  • Dieses Verfahren kann z.B. bei der Übertragung eines Passwortes sinnvoll sein. Hierbei wird der Prozess an sich für die Übertragung garantiert, eine Einsichtnahme der Daten durch A, B, C, oder D ist dabei weder gewünscht noch zugelassen.
  • Konstellation 3:
  • Sämtliche allgemeinen Erläuterungen der obigen Art gelten auch für diesen Fall.
  • Der Datensatz x soll von den Prozessteilnehmern A, B und D „bestätigt" werden, damit E ihn verwenden kann. Dabei sollen A und D den Datensatz einsehen können, B soll nur den Prozess als solchen bestätigen.
  • Wie im vorhergehenden Fall beschrieben, wird aus x durch iterative Mehrfachverschlüsselung ein erster verschachtelter Chiffrat-Datensatz x(A(B(D(E))))) generiert, damit eine Prozesserzwingung von S über A, B und D nach E gegeben ist.
  • Da (nur) die Prozessteilnehmer A und D (außer S) die Daten lesen können sollen, wird der Datensatz x nochmals, d.h. in einer nochmaligen separaten Verschlüsselung, mit den öffentlichen Schlüsseln von A und D einfach zu einem zweiten Chiffrat-Datensatz x(A, D) verschlüsselt. A und D können den so verschlüsselten zweiten Chiffrat-Datensatz x(A, D) jetzt durch ihre jeweiligen privaten Schlüssel entschlüsseln und lesen. Allerdings ist nicht sichergestellt, dass im Prozessschritt S (oder schon davor) wirklich dieselbe Datei für S oder E (mehrfach) und A bzw. D (also x(A, D) einfach) verschlüsselt wurde. Die für A und D einsehbaren Daten könnten sich von denen unterscheiden, die S oder E durch die finale Entschlüsselung bekommt.
  • Das Verfahren wird daher um eine sichere Prüfsumme (z.B. sha512) erweitert. Im Schritt S (oder davor) werden drei Datensätze erzeugt: der genannte erste verschachtelte Chiffrat-Datensatz x(A(B(D(E))))), geschachtelt für E, sowie der zweite Chiffrat-Datensatz x(A, D) jeweils für A und D. Zusätzlich wird eine Prüfsumme p(x) von den unverschlüsselten Originaldaten x errechnet. Diese Datensätze werden in eine Task-Datei eingebracht und mit einem hierzu vorgesehenen Verfahren, wie unten näher erläutert, signiert. Es gibt also eine signierte Datenmenge zumindest umfassend x(A(B(D(E))))), x(A, D) sowie p(x).
  • Nach den jeweiligen (finalen) Entschlüsselungen durch E, A und D können diese anschließend eine entsprechende Gegen-Prüfsumme (hier im Beispiel sha512) als zweite Prüfsumme des wieder entschlüsselten Klar-Datensatzes x berechnen und diese mit der in S in die Task-Datei eingepackten und signierten ersten Prüfsumme p(x) vergleichen. Falls keine Manipulationen vorliegen, müssen die verglichenen Prüfsummen immer identisch sein.
  • Dieses Verfahren ist z.B. sinnvoll bei Datensätzen, die für nur wenige Gruppen oder Prozessbeteiligte sichtbar sein sollen (z.B. Richter oder Staatsanwalt), aber in einem größeren Prozess abgesichert werden sollen. Hierbei ist zu berücksichtigen, dass hier für unterschiedliche Datensätze unterschiedliche Berechtigungen vergeben werden können, um z.B. nur Teile der Datensätze für einige Prozessteilnehmer nicht lesbar, aber für andere Prozessteilnehmer lesbar zu machen.
  • Konstellation 4:
  • Der Datensatz x soll von den Prozessteilnehmer A, B, C und D „bestätigt" werden, damit E ihn verwenden kann. B soll den Datensatz nur lesen können, wenn A in „bestätigt" hat. Außerdem soll C den Datensatz nur lesen können, wenn A und B ihn „bestätigt" haben. D soll den Datensatz x nicht lesen dürfen.
  • Hierzu werden zu Beginn des Prozesses (bei S oder vorher) die mehrfach (iterativ) verschlüsselten, verschachtelten Chiffrat-Datensätze x(A(B(C(D(E))))) sowie x(A(B)) und x(A(B(C))) angelegt und in den entsprechenden Schritten entschlüsselt, wie oben mehrfach erläutert.
  • Zur Sicherstellung der Identität bzw. Integrität der einzelnen Datensätze wird ebenfalls eine Prüfsumme p(x) hinterlegt und an entsprechende Prozessteilnehmer übertragen.
  • Aus den einzeln wieder in den Klardatensatz entschlüsselten Chiffrat-Datensätzen x(A(B(C(D(E))))) sowie x(A(B)) und x(A(B(C))) können dann die einzelnen Prozessteilnehmer eine Gegen-Prüfsumme p(x) bilden und mit der ersten Prüfsumme p(x) vergleichen. E berechnet aus dem aus x(A(B(C(D(E))))) entschlüsselten Klardatensatz x eine Prüfsumme p(x) und B bzw. C berechnen aus den aus x(A(B)) bzw. x(A(B(C))) entschlüsselten Klardatensätzen x weitere Prüfsummen p(x).
  • Dieses Verfahren ist z.B. sinnvoll bei Daten, bei denen die Daten nicht automatisch von allen Beteiligten gelesen/entschlüsselt werden dürfen. Betroffen ist hierbei immer der Letzte in einer Verschlüsselungskette. Diesem ist ein finales Entschlüsseln in den Klar-Datensatz x möglich.
  • Auf diese Art und Weise kann die Entscheidung, ob ein Prozessteilnehmer einen Datensatz lesen darf, als Teil des Prozesses und ggf. abhängig von der Entscheidung eines oder mehrerer Prozessteilnehmer im Kommunikationspfad gestaltet werden.
  • Konstellation 5:
  • Während des Prozesses erzeugt Teilnehmer A einen Datensatz a, den nur B und D lesen/entschlüsseln dürfen. Der Datensatz a kann beispielsweise neben dem Datensatz x existieren und parallel zum Datensatz x durch den Prozess geschleust werden. Der Datensatz a kann beispielsweise vorbestimmte Prozessdaten, Kommentare, Aktionsanweisungen, usw. enthalten.
  • Um dieses zu erreichen, verschlüsselt Teilnehmer A den Datensatz a mit den öffentlichen Schlüsseln von B und D und erzeugt damit einen Chiffrat-Datensatz a(B, D). Bei diesem Verfahren sollte (optional) bereits bei S festgelegt werden, dass A einen Datensatz a(B, D) anlegen darf. Vorteilhaft sollte dabei unterbunden werden, dass A einen unverschlüsselten Datensatz a in den Kommunikationspfad an die weiteren Prozessteilnehmer übergibt, um eine Manipulation von A aufgrund unverschlüsselter Daten a zu verhindern. Eine Manipulation könnte gegeben sein, wenn die Daten a nicht verschlüsselt würden. Diese waren dann z.B. auf einem ungesicherten Vermittlungs-Computersystem von Dritten (mit Zugriff auf das Vermittlungs-Computersystem) lesbar. Auch könnte C die Daten a (ggf. nach missbräuchlicher Erlangung von weiteren Rechten) auf seinem eigenen Rechner lesen. Die Identität des den Datensatz a Übermittelnden (hier A) kann über dessen Signatur des Datensatzes a sichergestellt werden.
  • Dieses Verfahren ist z.B. sinnvoll, wenn A innerhalb eines Prozesses etwas Vertrauliches mitteilen will, dass nur B und D lesen/entschlüsseln sollen.
  • Bei sämtlichen oben genannten Konstellationen (insbesondere Konstellationen 3 und 4), bei denen mehrere Chiffrat-Datensätze aus dem ursprünglichen Datensatz x gebildet werden und bei denen zur Sicherstellung der Identität bzw. Integrität der einzelnen Datensätze eine Prüfsumme p(x) hinterlegt wird, wäre alternativ folgendes denkbar. Der Datensatz x wird über einen (zufälligen oder definiert erstellten) Schlüssel verschlüsselt. Dieser Schlüssel selbst wird wiederum separat ggf. iterativ mit den öffentlichen Schlüsseln der beteiligten Prozessteilnehmer (z.B. A, B, C, D, E, usw.) verschlüsselt. Hierbei kann für jeden Prozessteilnehmer, der den Schlüssel lesen können soll, eine separate Verschlüsselung des Schlüssels erfolgen.
  • Anschließend wird der verschlüsselte Datensatz zusammen mit dem (ggf. iterativ bzw. mehrmals) verschlüsselten Schlüssel durch den Prozess geschleust. Alle beteiligten Prozessteilnehmer können dann mit ihren privaten Schlüsseln den (ggf. iterativ bzw. mehrmals) verschlüsselten Schlüssel (teil-)entschlüsseln. Diejenigen Prozessteilnehmer, welche den Schlüssel (nach dem letzten Entschlüsselungsschritt) im Klartext lesen können, können dann mit diesem Schlüssel auch den verschlüsselten Datensatz x in den Klartext entschlüsseln und lesen.
  • Dies hat den Vorteil, dass der Datensatz x nur einmalig im Prozess auftritt und die Sicherstellung der Identität bzw. Integrität mehrerer einzelner Datensätze x über eine Prüfsumme p(x) entfallen kann. Die genannte Alternative kann derart betrachtet werden, dass der Datensatz x lediglich einen Schlüssel bildet, mittels dessen weitere verschlüsselte Daten entschlüsselt werden können.
  • Konstellation 6:
  • Sämtliche der oben erläuterten Prozessabläufe der Konstellationen 1 bis 5 (und auch etwaige Kombinationen davon) sollten optional nicht nur jeweils einen einzelnen Prozessteilnehmer (z.B. „B“ als logische Einheit) unterstützen, sondern eine Gruppe von Teilnehmern (Rollenmodell), die eine Benutzergruppe bilden und z.B. auf ein oder mehrere Bearbeitungs-Computersysteme (z.B. „B“) zugreifen können. Dies kann kryptographisch z.B. dadurch erreicht werden, dass Datensätze nicht nur mit einem einzelnen öffentlichen Schlüssel, der z.B. „B“ zuordenbar ist, verschlüsselt werden, sondern z.B. mit den öffentlichen Schlüsseln von „B1“, „B2“ und „B3“, wobei „B1“, „B2“ und „B3“ als Mitglieder der Gruppe „B“ mit Zugriff auf das oder die Bearbeitungs-Computersysteme „B“ zu verstehen sind. „B1", „B2" und „B3" können den betreffenden Datensatz dann mit ihrem jeweiligen privaten Schlüssel entschlüsseln.
  • Das Vorgehen, Gruppen statt Einzelinstanzen verwenden zu können, sollte ebenfalls für eine Signierung der Datensätze zu Verifikationszwecken unterstützt werden. Technisch erfolgt die Umsetzung der Verschlüsselung für Gruppen über eine Mehrfachverschlüsselung oder typischerweise über eine symmetrische Verschlüsselung des Datensatzes mit einer zufällig generierten Passphrase, wobei diese Passphrase dann mittels der öffentlichen Schlüssel von „B1", „B2" und „B3" asymmetrisch verschlüsselt wird.
  • Diese Erweiterung des Verfahrens ist immer dann sinnvoll anwendbar, wenn die Zustimmung durch mehr als eine Person erfolgen soll. Da für Prozesse meist Ersatzszenarien für die Genehmigung durch Personen existieren (müssen), ist die Sinnhaftigkeit fast immer gegeben.
  • Konstellation 7:
  • Üblicherweise wird bei einem Audit die Nachvollziehbarkeit der Prozesse gefordert. Je nach Anforderung kann jedoch auch – in einem erweiterten Audit – die Nachvollziehbarkeit der Entscheidungsfindung gefordert sein. Dieses erfordert dann ggf. die Möglichkeit der Einsicht in die Daten.
  • Je nach Anforderung sind hier unterschiedliche Vorgehensweisen möglich. Diese sind im Folgenden exemplarisch aufgelistet und können optional oder zusätzlich (mehrfach) miteinander oder auch mit sich selbst kombiniert werden. Bei der dargestellten zusätzlichen Verschlüsselung handelt es sich um ein asymmetrisches Verfahren:
    • a) Die Daten werden (ggf. teilweise) für die Prozessteilnehmer verschlüsselt und können von einem Auditor nicht eingesehen werden. Der Auditor überprüft anhand von Monitoring-Daten (z.B. Log-Files), dass die Prozesse eingehalten wurden. Hierzu sind die Monitoring-Daten manipulationssicher aufzubewahren. Optional kann in einem Monitoring-Prozess ein Marker (Flag) mitgeschickt werden, was diesen Vorgang bei den einzelnen Prozessen initiiert. Auch andere Kriterien (z.B. Größe der Datensätze, beteiligte Systeme, Prozesstypen) können als (Teil der) Kriterien herangezogen werden.
    • b) Die im Prozess verschlüsselten Daten werden zusätzlich mit einem separaten „Auditor-Schlüssel" verschlüsselt, sodass die Informationen über diesen Weg zugänglich sind. Diese Möglichkeit ist jedoch analog zu einer Art „Backdoor“ zu sehen und daher mit Vorsicht zu genießen, da sie die anderweitige Prozess-Realisierung, die schließlich ein n-Augen-Prinzip umsetzt, unterminieren könnte.
    • c) Für jeden Prozessteilnehmer wird ein zweiter, asymmetrischer „Schattenschlüssel" zur weiteren Verschlüsselung der Datensätze in Schatten-Chiffrat-Datensätze gemäß dem oben erläuterten Vorgehen verwendet. Dieser „Schattenschlüssel" wird unabhängig vom Schlüssel des Prozessteilnehmers erzeugt und dessen privater Schlüssel gesondert (sicher) verwahrt. Diese verschiedenen „Schattenschlüssel" können dann optional unterschiedlichen Teilnehmern einer Auditoren-Gruppe zugänglich gemacht werden, so dass auch ein Auditor nicht Zugang zu sämtlichen Daten erhalten kann. Optional können diese „Schattenschlüssel" nur bei speziell ausgewählten Teilnehmern verwendet werden, oder optional nur auf reale Personen. Hier sind je nach fachlicher Vorgabe beliebige Möglichkeiten umsetzbar. Die Schatten-Chiffrat-Datensätze können von Teilnehmern einer Auditoren-Gruppe vermittels der „Schattenschlüssel“ durch Zugriff auf die Computersysteme der einzelnen Prozessteilnehmer entschlüsselt werden. Alternativ ist denkbar die Schatten-Chiffrat-Datensätze zunächst auf ein oder mehrere Auditor-Computersysteme zu übertragen und nach Übertragung dort zu entschlüsseln. In jedem Fall kann ein Audit-Prozess anhand des oder der entschlüsselten Schatten-Chiffrat-Datensätze durchgeführt werden.
    • d) Anstelle einen „Schattenschlüssel“ für einzelne Prozessteilnehmer können „Schattenschlüssel" für Gruppen von Prozessteilnehmern oder für Benutzergruppen verwendet werden. Wird z.B. die Zustimmung zu einem Prozessschritt von einem aus einer Gruppe von Benutzern vergeben, dann könnte für die gesamte Gruppe ein „Schattenschlüssel" verwendet werden. Die Information, wer konkret agiert hat, sollte auch verfügbar sein, z.B. über das erwähnte Monitoring. Dieser gruppenbezogene „Schattenschlüssel" wäre dann einem (oder mehreren) Auditoren zuzuordnen. Gruppen können auch nach beliebigen anderen Kriterien gebildet werden. Ein Kriterium für derartige Gruppen oder einzelne „Schattenschlüssel" könnte auch aus Sicht des gewünschten Informationszugangs durch die Auditoren gebildet werden. Optional können/sollten nach einem Audit die „Schattenschlüssel" neu generiert werden.
  • Die oben erläuterten Konstellationen 1 bis 7 können auch beliebig miteinander kombiniert werden. Dabei ist es auch möglich und ggf. wünschenswert, einzelne Aspekte, Merkmale und Maßnahmen einzelner Konstellationen für sich genommen herauszugreifen und in einer oder mehreren anderen Konstellationen einzusetzen.
  • Nachfolgend werden vorteilhafte Aspekte einer Implementierung einer dezentral organisierten Computernetz-Infrastruktur zum Routing der verschiedenen Datensätze (insbesondere der erläuterten Chiffrat-Datensätze bzw. der Prüfsummen p(x)), z.B. innerhalb von sogenannten Task-Dateien, näher erläutert.
  • Bei der dezentral organisierten Computernetz-Infrastruktur werden Prozesse dezentral organisiert, d. h. es gibt keine zentrale Stelle, die diese koordinieren könnte oder andererseits als Angriffspunkt für ein typisches Hacking dienen könnte. Aus diesem Grund werden sämtliche gewünschten und möglichen Aktionen vorher definiert und anhand dieser Definitionen nach ihrer Durchführung überprüft. Über dieses Verfahren lassen sich die Prozessschritte (Routing), die Prozessbeteiligten (beschriebene Computersysteme) sowie die Aktionen (z.B. Eingaben oder Bestätigungen oder auch ein Entschlüsseln einzelner Iterationen von verschachtelten Chiffrat-Datensätzen) der Prozessbeteiligten definieren und die vorangegangenen Prozessschritte jeweils kontrollieren.
  • In einer möglichen Ausgestaltung umfasst ein entsprechendes Routing-Verfahren zur Durchführung der erläuterten Prozesse vorteilhaft einen oder mehrere der folgenden Schritte:
    • – Aufrufen von Routing-Informationen, die im Key-Computersystem hinterlegt sind, wobei die Routing-Informationen zumindest ein Routing zu einem oder mehreren zwingend einzubindenden Computersystemen entlang des Kommunikationspfades zwischen dem Key-Computersystem, einer Gruppe aus einem oder mehreren Vermittlungs-Computersystemen, der Mehrzahl der Bearbeitungs-Computersysteme und dem Ziel-Bearbeitungs-Computersystem innerhalb der Computernetz-Infrastruktur definieren,
    • – Erstellen einer Task-Datei im Key-Computersystem, wobei die Task-Datei zumindest die Routing-Informationen sowie eine Task-Beschreibung wenigstens eines Tasks für das Ziel-Bearbeitungs-Computersystem und ggf. einen oder mehrere der erläuterten verschachtelten Chiffrat-Datensätze umfasst,
    • – Übertragen der Task-Datei anhand der Routing-Informationen entlang des definierten Kommunikationspfades vom Key-Computersystems vermittels der Gruppe der Vermittlungs-Computersysteme und der Mehrzahl der Bearbeitungs-Computersysteme auf das Ziel-Bearbeitungs-Computersystem,
    • – Überprüfen der Gültigkeit der Task-Datei durch das Ziel-Bearbeitungs-Computersystem,
    • – Ausführen wenigstens eines Tasks im Ziel-Bearbeitungs-Computersystem anhand der Task-Datei, falls das Überprüfen der Gültigkeit der Task-Datei erfolgreich war.
  • Vorteilhaft halten in einer Ausgestaltung des Verfahrens sowohl das Key-Computersystem als auch das Ziel-Bearbeitungs-Computersystem (kurz: Ziel-Computersystem) vorbestimmte, für dieses Verfahren verwendete Netzwerk-Ports derart geschlossen, dass kein Verbindungsaufbau zum Key-Computersystem oder zum Ziel-Computersystem von außen zugelassen wird und somit ein Zugriff über ein Netzwerk vermittels dieser Netzwerk-Ports verhindert wird.
  • Vorteilhaft können in einer Ausgestaltung des Verfahrens das Key-Computersystem und das Ziel-Computersystem eine Verbindung zu einem Vermittlungs-Computersystem aufbauen, um eine Task-Datei in dem Vermittlungs-Computersystem abzulegen oder von dort abzuholen.
  • Bei einem derartigen Routing-Verfahren sind notwendige Instanzen bzw. Kommunikationsknoten (Computersysteme) auf einem Kommunikationspfad (von ggf. mehreren möglichen Kommunikationspfaden) zwischen einem Key-Computersystem, einer Gruppe aus einem oder mehreren Vermittlungs-Computersystemen, einer Mehrzahl von Bearbeitungs-Computersystemen und einem Ziel-Computersystem zur Weiterleitung und Verarbeitung einer Task-Anweisung zwingend vorbestimmt. Das bedeutet, dass die Übermittlung einer Task-Anweisung an ein Ziel-Computersystem einer Route gehorcht, auf der bestimmte Instanzen bzw. Kommunikationsknoten durch das Key-Computersystem vorab festgelegt sind. Auf diese Weise wird innerhalb des Key-Computersystems ein Weg (Routing) entlang notwendiger Instanzen mit gegebenenfalls zu erfolgenden Aktionen vorab festgelegt. Eine Kommunikation zwischen verteilten Computersystemen in einer Computernetz-Infrastruktur zur Weiterleitung von Task-Anweisungen an ein Ziel-Computersystem ist somit auf vorab festgelegte beteiligte Computersysteme entlang eines Kommunikationspfades eingeschränkt.
  • Die Routing-Informationen können z.B. in Abhängigkeit von der iterativen Verschlüsselung eines Klar-Datensatzes der erläuterten Art, die vorteilhaft der Reihenfolge der beteiligten Computersysteme im Kommunikationspfad gehorcht, festgelegt werden. Es kann aber auch die Reihenfolge einer iterativen Verschlüsselung durch zuvor festgelegte Routing-Informationen bestimmt werden. Auf jeden Fall wird durch die genannten Maßnahmen vorteilhaft ein erzwungenes Routing zum Ziel-Computersystem erreicht.
  • Es ist denkbar, bei dem vorliegenden Verfahren zwischen einem sogenannten „statischen“ Routing und einem sogenannten „dynamischen“ Routing zu unterscheiden.
  • Bei einem statischen Routing ist der gesamte Kommunikationspfad bis hin zu einem Ziel-Computersystem im Key-Computersystem vorab festgelegt. Das statische Routing kann aus Sicherheitsgründen verwendet werden, so dass Manipulationen des Weges keine Angriffsmöglichkeiten für potentielle Angreifer (Cracker) bilden.
  • Beim dynamischen Routing sind lediglich notwendig zu beteiligende Computersysteme entlang eines möglichen Kommunikationspfades für eine Akzeptierung einer Task-Datei in einem Ziel-Computersystem vorab durch das Key-Computersystem festgelegt. Ein konkreter Kommunikationspfad, ggf. inklusive eines konkreten Ziel-Computersystems, wird dann erst „auf dem Weg“, ggf. abschnittsweise, von den beteiligten Computersystemen ermittelt. Dies hat den Vorteil, dass für ein Routing unter Umständen flexibel reagiert werden kann, und dennoch die notwendige Sicherheit gegen Manipulationen erhalten bleibt. Im Key-Computersystem müssen dann lediglich Routing-Informationen definiert werden, die für mehrere Routings zu diversen Ziel-Computersystemen verwendet werden können, ohne für jedes Ziel-Computersystem ein eigenes Routing vordefinieren zu müssen. Ferner erlaubt das dynamische Routing eine gewisse Freiheit für beteiligte Computersysteme, selbst ein Ziel-Computersystem festzulegen.
  • Es ist auch denkbar, verschiedene alternative Kommunikationspfade zu einem Ziel-Computersystem durch das Key-Computersystem zu definieren, wobei durch im Prozess beteiligte Computersysteme eine Auswahl eines oder mehrerer dieser alternativen Kommunikationspfade erfolgt. Es ist ferner denkbar, dass im Prozess beteiligte Computersysteme mehrere Ziel-Computersysteme aus einer durch das Key-Computersystem vordefinierten Gruppe von Ziel-Computersystemen auswählen. Kommunikationspfade zu diesen Ziel-Computersystemen können unterschiedlich sein und anhand der oben erläuterten Vorgehensweisen (statisch, dynamisch, alternativ) definiert sein.
  • Ein gegebenenfalls manipulatives Abweichen von vermittels des Key-Computersystems vordefinierten, im Kommunikationspfad beteiligten Computersystemen und ein damit einhergehendes Umleiten sicherheitskritischer Informationen und Daten auf unter Umständen nicht autorisierte Computersysteme von Angreifern (Cracker) wird somit gegenüber herkömmlichen Lösungen deutlich erschwert. Auf diese Weise kann durch das vorliegende Verfahren die Sicherheit innerhalb einer Computernetz-Infrastruktur erhöht werden.
  • In einer vorteilhaften Ausgestaltung des hier erläuterten Verfahrens verhalten sich Key-Computersystem und Ziel-Computersystem zudem als eingekapselte Systeme. Ein Zugriff auf diese Computersysteme für einen Verbindungsaufbau über ein Netzwerk ist zumindest unter bestimmten Betriebsbedingungen (vorteilhaft dauerhaft während der Durchführung des hier erläuterten Verfahrens beziehungsweise der obigen Verfahrensschritte) nicht bzw. nur deutlich erschwert möglich.
  • Der Begriff „vorbestimmte Netzwerk-Ports“ bedeutet, dass im Key- beziehungsweise Ziel-Computersystem alle oder nur ausgewählte sicherheitskritische Netzwerk-Ports, z.B. die für dieses Verfahren verwendeten Netzwerk-Ports, dauerhaft oder vorübergehend geschlossen sind.
  • Dies hat den Vorteil, dass sowohl auf dem Key- als auch auf dem Ziel-Computersystem keine Programme eingerichtet, gestartet bzw. notwendig sind, die zum Zweck der Ansprechbarkeit beziehungsweise des Verbindungsaufbaus von außen die entsprechenden Netzwerk-Ports abhören (sogenanntes „listening“) und eine potenzielle Sicherheitslücke (zum Beispiel durch Buffer-Overflow) bilden. Somit bedeutet der Begriff „geschlossene Netzwerk-Ports“ in diesem Kontext, dass diese keine „listening ports“ sind, d.h. kein Verbindungsaufbau von außen zugelassen wird. Ein dritter ist in diesem Falle nicht in der Lage, sich von außen über Netzwerk am Key-Computersystem oder am Ziel-Computersystem zu authentifizieren oder einzuloggen, zum Beispiel bei Unix- basierten Systemen über einen Secure-Shell-(SSH-)Deamon, oder spezielle Aktionen auf dem Key- beziehungsweise Ziel-Computersystem durchzuführen.
  • Allerdings kann für eine erste Benutzergruppe ein lokaler Zugriff auf das Key-Computersystem eingerichtet sein (z.B. für ein Sicherheitspersonal). Für eine zweite Benutzergruppe kann ein lokaler Zugriff auf das Ziel-Computersystem eingerichtet sein. Vorteilhaft wird jedoch ein lokaler Zugriff der jeweiligen Benutzergruppe auf das jeweils andere Computersystem verhindert. Vorteilhaft wird ein lokaler Zugriff auf ein entsprechendes Computersystem für eine jeweilige Benutzergruppe erst über das hier beschriebene Verfahren als Teil eines Prozesses temporär freigeschaltet.
  • Im Unterschied zu dem Key- und dem Ziel-Computersystem erlaubt das Verfahren jedoch einen Zugriff auf ein Vermittlungs-Computersystem aus der Gruppe der Vermittlungs-Computersysteme von außen. Ein jedes aus der Gruppe der Vermittlungs-Computersysteme ist dabei als „offenes“ System mit wenigstens einem ansprechbaren offenen („listening“) Netzwerk-Port über Netzwerk zugänglich. Das bedeutet, dass auf einem Vermittlungs-Computersystem beispielsweise Programme laufen und/oder Applikationen vorbereitet sind, so dass das Key-Computersystem oder das Ziel-Computersystem auf ein Vermittlungs-Computersystem zugreifen können und eine Verbindung zum Vermittlungs-Computersystem aufbauen können, um eine Task-Datei gemäß dem vorgestellten Verfahren (über eine dann aufgebaute Verbindung, „established“) in einem Vermittlungs-Computersystem abzulegen oder von dort abzuholen. Unter Sicherheitsaspekten ist ein solches „offenes“ Vermittlungs-Computersystem ähnlich zu bewerten wie ein traditionelles, speziell abgesichertes Computersystem.
  • Somit dient ein jedes Vermittlungs-Computersystem als (abgesicherter, aber ansprechbarer) Vermittler für eine Kommunikation zwischen dem Key-Computersystem und dem Ziel-Computersystem, welche jedoch selbst eingekapselt sind. Auf diese Weise ist ein vordefiniertes Routing-Verfahren zur Informationsweitergabe und Weiterleitung von Task-Anweisungen vermittels der Gruppe der Vermittlungs-Computersysteme trotz eingekapselter Key- und Ziel-Computersysteme möglich.
  • In einer Ausgestaltung des Verfahrens kann eine Task-Datei im Key-Computersystem mit wenigstens einem privaten Schlüssel signiert werden. Das Key-Computersystem selbst kann somit der Task-Datei Informationen hinzufügen, die (vertrauliche) Angaben zu Quelle, Ziel oder einem entsprechenden Routing ermöglichen.
  • In einer Ausgestaltung des Verfahrens sind Task-Dateien vorbereitet zur Ausführung vorbestimmter Prozesse (Tasks) in einem Ziel-Computersystem. Derartige Prozesse können z.B. sein:
    • – das Speichern und/oder Verarbeiten von übertragenen Daten,
    • – der Neustart eines Programms im Ziel-Computersystem,
    • – die Anweisung zu einem physischen Zugang zum Ziel-Computersystem,
    • – das Wiederherstellen von Backup-Daten oder
    • – ein SSH-Zugriff auf das Ziel-Computersystem.
  • Entsprechende Kombinationen derartiger Aktionen und Anweisungen ist natürlich denkbar. Task-Dateien können gegebenenfalls um bestimmte Informationen im Key-Computersystem oder in weiteren Computersystemen ergänzt werden. Dadurch sind sowohl eine Event-Steuerung des Ziel-Computersystems beziehungsweise eine Informationsweitergabe zwischen dem Key-Computersystem und dem Ziel-Computersystem sowie ein flexibles Hinzufügen von Informationen während des Prozesses zu dessen Steuerung ermöglicht. Es ist alternativ oder ergänzend denkbar, dass Task-Dateien ein oder mehrere Programme, Skripte o.ä. enthalten, die auf dem Ziel-Computersystem oder auf weiteren im Prozess beteiligten Computersystemen ausgeführt werden können.
  • Eine Task-Datei unterscheidet sich demnach grundlegend von einem reinen Kommando-Befehl des Key-Computersystems an das Ziel-Computersystem, weil ein Kommando-Befehl zu dessen Auswertung auf Seiten des Ziel-Computersystems ein kontinuierlich laufendes, nach außen offenes und damit angreifbares Programm notwendig macht. Ein derartiges Programm entfällt jedoch, wie bereits erläutert, beim vorliegenden Verfahren mangels eines Zugriffs über Netzwerk auf das Ziel-Computersystem.
  • In einer Ausgestaltung des Verfahrens kann zum Übertragen einer Task-Datei auf das Ziel-Computersystem ein Prozess angestoßen werden, welcher die ausgewählte Task-Datei im entsprechenden Vermittlungs-Computersystem aufruft und automatisiert vom Vermittlungs-Computersystem auf das Ziel-Computersystem überträgt. Vorteilhaft ist das automatisierte Übertragen der Task-Datei vom Vermittlungs-Computersystem auf das Ziel-Computersystem so ausgestaltet, dass ein Dritter von außen darauf keine Einflussmöglichkeiten hat und somit eine Gefahr für Manipulationen des Ziel-Computersystems über die Task-Datei ausgeschlossen ist. Im Ziel-Computersystem kann dann die Gültigkeit der Task-Datei überprüft werden und ein entsprechender Task ausgeführt werden.
  • In einer Ausgestaltung des Verfahrens kann eine Task-Datei im Kommunikationspfad von einem ersten Vermittlungs-Computersystem zumindest an ein zweites Vermittlungs-Computersystem aus der Gruppe der Vermittlungs-Computersysteme weitergeleitet werden. Ferner kann auch eine Gruppe von mehreren Ziel-Computersystemen eingerichtet sein, die durch das Verfahren angesprochen werden.
  • Der generelle Vorteil des hier erläuterten Verfahrens zum Prozessieren von Datensätzen in einer dezentral organisierten Computernetz-Infrastruktur besteht darin, dass durch Festlegen (z.B. über eine iterative Verschlüsselung von Datensätzen der erläuterten Art) und gegebenenfalls Signieren von Vorgaben über einen notwendigen Weg bzw. auf einem Weg notwendige Instanzen (Routing) innerhalb des Key-Computersystems ein Rahmen vorgegeben wird, was wann durch welches Computersystem durchgeführt werden kann, darf und muss. Eine Überprüfung der beteiligten Computersysteme kann dabei vorteilhaft über kryptographische Verfahren erfolgen, wie z.B. über die mehrfache, iterative Verschlüsselung, ggf. in Verbindung mit der (mehrfachen) Signatur, einzelner Datensätze bzw. von Task-Dateien. Nicht-autorisierte Computersysteme und/oder Benutzer entsprechender Computersysteme, welche nicht innerhalb des vorgegebenen Kommunikationspfades liegen sind ausgeschlossen. Ferner sind die Computersysteme, in denen Daten verarbeitet werden, durch (dauerhaft) geschlossene Netzwerk-Ports gegen Angriffe von außen gesichert. Auf diese Weise ist eine erhöhte Sicherheit vertraulicher Daten in der Computernetz-Infrastruktur gewährleistet.
  • In einer Ausgestaltung umfasst das Verfahren zusätzlich die folgenden Schritte:
    • – Übertragen einer Anfrage-Datei von einem oder mehreren der Bearbeitungs-Computersysteme auf eines aus der Gruppe der Vermittlungs-Computersysteme, wobei die Anfrage-Datei vorbestimmte Informationen zur Durchführung eines Tasks auf dem Ziel-Computersystems enthält,
    • – Übertragen der Anfrage-Datei vom Vermittlungs-Computersystem auf das Key-Computersystem, wobei das Key-Computersystem eine Verbindung zum Vermittlungs-Computersystem aufbaut, um die Anfrage-Datei vom Vermittlungs-Computersystem abzuholen,
    • – Erstellen der Task-Beschreibung durch das Key-Computersystem, wobei anhand der vorbestimmten Informationen der Anfrage-Datei eine vorbestimmte Grundfunktionalität eines Tasks durch das Key-Computersystem ausgewählt und gegebenenfalls Durchführungsparameter zur Durchführung des Tasks im Ziel-Computersystem durch das Key-Computersystem festgelegt werden.
  • Durch das anfragende Bearbeitungs-Computersystem kann somit ein vorbestimmter Task auf dem Ziel-Computersystem initiiert und angewiesen werden. Durch vorbestimmte Informationen der Anfrage-Datei erfolgt im Key-Computersystem eine Auswahl einer vordefinierten Grundfunktionalität eines entsprechenden Tasks in Ziel-Computersystemen. Eine entsprechende Grundfunktionalität kann beispielsweise ein Prozess, eine Anweisung und/oder Aktion der oben erläuterten Art sein. Die Anfrage-Datei kann z.B. Bestandteil eines zu prozessierenden Klar-Datensatzes der erläuterten Art oder der Klar-Datensatz selbst sein.
  • In einer Ausgestaltung des Verfahrens kann eine Grundfunktionalität beispielsweise durch ein vorbereitetes „Formular“ im Key-Computersystem hinterlegt sein. Dieses Formular kann beispielsweise von einem Benutzer einer Benutzergruppe vorgegeben sein, die einen lokalen Zugriff auf das Key-Computersystem hat. Unter Umständen können (und sollen) entsprechende Formulare durch private Schlüssel signiert sein, welche jedoch nicht im Key-Computersystem hinterlegt sind. Auf diese Weise sind mögliche Grundfunktionalitäten möglicher Ziel-Computersysteme durch vordefinierte Formulare im Key-Computersystem vorgegeben. Nicht-vordefinierte Formulare können dabei nicht erstellt werden, da private Schlüssel für die Signierung von Formularen im Key-Computersystem nicht verfügbar sind. Auf diese Weise ist eine Manipulation durch Vergabe manipulierter Formulare und damit manipulierter Grundfunktionalitäten stark erschwert.
  • Somit ist es für einen Benutzer eines Bearbeitungs-Computersystems ausschließlich möglich, vermittels einer Anfrage-Datei aus vordefinierten Grundfunktionalitäten für einen Task im Ziel-Computersystem auszuwählen und gegebenenfalls Parameter zur Durchführung des entsprechenden Tasks zu bestimmen. Somit sind Anweisungen innerhalb der Computernetz-Infrastruktur auf die Auswahl an Funktionalitäten beschränkt, welche durch das Key-Computersystem bereitgestellt ist. Aus den vordefinierten Grundfunktionalitäten für einen Task und den entsprechend bestimmten Parametern zur Durchführung des Tasks kann die Task-Beschreibung erstellt werden. Diese enthält also notwendige Informationen, welcher Task unter welchen Bedingungen auf dem Ziel-Computersystem durchzuführen ist. Die Task-Beschreibung kann auch eine Kennung bzw. ID enthalten, welche auf dem Ziel-Computersystem einem oder mehreren Skripten zur Durchführung des Tasks zugeordnet werden kann.
  • In einer Ausgestaltung des Verfahrens umfassen die vorbestimmten Informationen der Anfrage-Datei solche des anfragenden Bearbeitungs-Computersystems als Anweisungsgeber und/oder solche des Ziel-Computersystems als Anweisungsempfänger und/oder eine digitale Signatur des anfragenden Bearbeitungs-Computersystems und/oder weitere, z.B. vertrauliche Daten oder Inhalte.
  • Das bedeutet, dass eine Anfrage-Datei vermittels der vorbestimmten Informationen Quelle und Ziel einer Kommunikation spezifizieren kann. Ferner kann eine qualifizierte Signatur (zum Beispiel bei Unix-basierten Systemen via GPG) erstellt werden, um die Quelle als vertraulich verifizieren zu können. Dies verhindert eine Manipulation der Anfrage-Datei und schließlich der im Key-Computersystem erstellten Task-Datei durch eine nicht-autorisierte Quelle.
  • Beispielsweise kann eine Signatur dadurch erstellt werden, dass über vorbestimmte Daten eine Hash-Funktion (z.B. via MD5 oder SHA) gebildet wird, welche anschließend mit einem privaten Schlüssel eines Unterzeichners (beispielsweise innerhalb des anfragenden Bearbeitungs-Computersystems oder des Key-Computersystems) verschlüsselt wird. Diese verschlüsselte Signatur wird gemeinsam mit einem Sicherheitszertifikat mit den entsprechenden Daten innerhalb einer digital signierten Datei (Anfrage-Datei bzw. Task-Datei) zusammengefasst. Auf Empfängerseite (zum Beispiel lokal im Ziel-Computersystem) wird dann wiederum der Hash-Wert über die übermittelten Daten gebildet und mit dem Hash-Wert der digitalen Signatur verglichen, welche zuvor mit einem öffentlichen Schlüssel des Unterzeichners entschlüsselt wurde. Falls die beiden Hash-Werte übereinstimmen, ist die Signatur gültig und kennzeichnet eine vertrauenswürdige Quelle. Eine Manipulation dieses Systems erfordert die Berechnung oder Ermittlung der asymmetrischen Schlüssel (privater Schlüssel und öffentlicher Schlüssel). Ein weiterer genereller Vorteil des erläuterten Verfahrens besteht also darin, dass Signaturen (sowohl im anfragenden Bearbeitungs-Computersystem als auch im Key-Computersystem) mit Hilfe eines privaten Schlüssels nur lokal (und nicht über Netzwerk) und ggf. kaskadiert dezentral vorgenommen werden können.
  • Zudem können vermittels der ergänzten Informationen vertrauliche Inhalte in der Task-Datei übertragen werden, zum Beispiel vorbestimmte Informationen für einen Ziel-Benutzer des Ziel-Computersystems. Die Task-Datei kann sämtliche Informationen zum Beispiel als .tar-File zusammenfassen.
  • In einer Ausgestaltung des Verfahrens hält auch ein jedes aus der Gruppe der Bearbeitungs-Computersysteme zumindest vorübergehend oder dauerhaft vorbestimmte, für dieses Verfahren verwendete Netzwerk-Ports derart geschlossen, dass kein Verbindungsaufbau zu dem jeweiligen Bearbeitungs-Computersystem von außen zugelassen wird und somit ein Zugriff über ein Netzwerk vermittels dieser Netzwerk-Ports verhindert wird, wobei jedoch ein jedes aus der Gruppe der Bearbeitungs-Computersysteme eine Verbindung zu einem Vermittlungs-Computersystem aufbauen kann, um eine Task-Datei oder eine Anfrage-Datei in dem Vermittlungs-Computersystem abzulegen oder von dort abzuholen. Somit verhält sich auch die Gruppe der Bearbeitungs-Computersysteme als eingekapselte Systeme, wie oben erläutert. Für eine dritte Benutzergruppe, die sich von der ersten und zweiten Benutzergruppe (siehe oben für Key- sowie Ziel-Computersysteme) unterscheidet, kann ein lokaler Zugriff auf ein jeweiliges Bearbeitungs-Computersystem eingerichtet sein, wobei jedoch ein lokaler Zugriff der jeweiligen Benutzergruppe auf die jeweils anderen Computersysteme verhindert wird bzw. stark erschwert wird.
  • Somit ist auch ein Zugriff auf die Gruppe der Bearbeitungs-Computersysteme von außen über Netzwerk nicht möglich bzw. stark erschwert. Ein laufendes Programm (für einen Dienst) an einem Netzwerk-Port zur Ansprechbarkeit von außen ist in keinem der Bearbeitungs-Computersysteme vorgesehen und notwendig. Dies erhöht die Sicherheit der Computernetz-Infrastruktur. Dennoch sind die Bearbeitungs-Computersysteme in den Kommunikationsprozess zur Weiterleitung von Task-Anweisungen eingebunden und können Anfrage-Dateien (wie oben erläutert) zur Anweisung eines vorbestimmten Tasks in einem Ziel-Computersystem gemäß dem oben erläuterten Verfahren initiieren und eine Event-Steuerung einer Aktion in einem Ziel-Computersystem auslösen.
  • Durch die vorgenannten Maßnahmen wird die Task-Datei auf ihrem Weg entlang des Kommunikationspfades zwangsläufig an wenigstens ein (weiteres) Bearbeitungs-Computersystem übertragen. Dies löst im Bearbeitungs-Computersystem das (ggf. automatisierte) Durchführen einer vorbestimmten Aktion aus. Diese Aktion kann beispielsweise, das Überprüfen der Gültigkeit der Task-Datei, das Einfügen weiterer Daten in die Task-Datei und/oder ein weiteres Signieren der Task-Datei mit wenigstens einem privaten Schlüssel und/oder das Entschlüsseln einer Iteration eines verschachtelten Chiffrat-Datensatzes der Task-Datei mit einem privaten Schlüssel des Ziel-Computersystems (oder auch eines anderen Bearbeitungs-Computersystems im Routing) umfassen.
  • Zusätzliche oben genannte Aktionen in beteiligten Bearbeitungs-Computersystemen können vermittels des Key-Computersystems fest vorgegeben sein. Alternativ oder ergänzend kann lediglich das Routing zu einem Bearbeitungs-Computersystem durch das Key-Computersystem vorgegeben sein, wobei ein Bearbeitungs-Computersystem entscheiden kann, ob es eine Aktion an der Task-Datei durchführt oder nicht. Es ist auch denkbar, eine Aktion lediglich darauf zu reduzieren, dass die Task-Datei im Bearbeitungs-Computersystem bestätigt wird, bevor sie vermittels des Verfahrens an ein weiteres Computersystem übertragen wird. Entscheidend bei sämtlichen Aktionen gemäß dem hier erläuterten Verfahren ist, dass diese lokal in einem beteiligten Computersystem (Key-Computersystem oder Bearbeitungs-Computersystem) ausgeführt werden, so dass sicherheitsrelevante Passphrasen oder Schlüssel nur lokal (d.h. dezentral) auf den Computersystemen vorliegen oder verwendet werden müssen und nicht innerhalb der Computernetz-Infrastruktur ausgetauscht werden. Auch diese Tatsache erhöht die Sicherheit gegen Angriffe eines Eindringlings sowohl von außen als auch von innen. Ergänzend zu den genannten Maßnahmen können auch (räumliche) Sicherheitszonen gebildet werden, die einen physischen Zugriff (ggf. abgesichert durch Hochsicherheits-Racks) und damit die Manipulation von Computersystemen anderer Interner verhindern.
  • Durch einen oben erläuterten mehrstufigen sowie verketteten Prozess der Bearbeitung und/oder Signierung der Task-Datei durch mehrere beteiligte Computersysteme innerhalb der Computernetz-Infrastruktur sind mehrere Instanzen notwendig, um eine gültige und zulässige Task-Anweisung für ein Ziel-Computersystem zu generieren. Die Task-Datei muss daher mehrere Instanzen durchlaufen, um zum Ziel-Computersystem zu gelangen. Der Rahmen, welches Computersystem was wann vermittels der Task-Datei tun muss, ist vorab durch die Routing-Informationen im Key-Computersystem festgelegt.
  • Ein kumulatives Bearbeiten der Task-Datei (zum Beispiel ein mehrfaches Signieren) durch mehrere Bearbeitungs-Computersysteme neben dem Key-Computersystem bei dezentraler Topologie einer auf diese Weise eingerichteten Computernetz-Infrastruktur führt zu erhöhter Sicherheit gegen Angriffe. Dabei wird ein n-Augen-Prinzip erzwungen und eine Nachvollziehbarkeit, welches Computersystem was wann gemacht hat, realisiert. Die einzige Möglichkeit für einen Angreifer (Cracker), die Task-Datei auf ihrem Weg vom Key-Computersystem zum Ziel-Computersystem zu manipulieren, wäre das Eindringen in sämtliche beteiligten Computersysteme, um dort die geforderten Signaturen zum Beispiel durch Abgreifen einer Passphrase eines Bearbeiters zu manipulieren. Nachdem die Computernetz-Infrastruktur jedoch keine zentrale Angriffsmöglichkeit bietet, weil sämtliche Computersysteme dezentral verteilt sind und jedes Computersystem „bruchstückhaft“ eine Teilaufgabe übernimmt, ist eine Manipulation des gesamten Verfahrens nur sehr schwer denkbar bzw. wäre nur sehr aufwändig realisierbar.
  • Eine weitreichende Möglichkeit der Manipulation der über das erläuterte Verfahren übertragenen Task-Dateien ergäbe sich lediglich durch Eindringen in das Ziel-Computersystem (das Computersystem, das einen Task gemäß der Task-Datei ausführen soll) gegebenenfalls in Verbindung mit der Erlangung von Administrationsrechten auf dem Ziel-Computersystem. Dann könnte dort die Überprüfung der Signaturen (inklusive der Signatur einer vorbestimmten Grundfunktionalität der Task-Datei durch das Key-Computersystem) manipuliert werden. Dies ist jedoch aufgrund einer verketteten Signierung der Task-Dateien sehr aufwändig. Allerdings hält das Ziel-Computersystem – wie oben erläutert – sämtliche für die hier beschriebenen Zwecke maßgeblichen Netzwerk-Ports geschlossen, so dass eine Ansprechbarkeit von Diensten des Ziel-Computersystems von außen über Netzwerk nicht möglich ist. Somit ist auch eine Manipulation eines durch eine verfahrensgemäß übertragene Task-Datei angewiesenen Tasks im Ziel-Computersystem nur mit erheblichem Aufwand denkbar.
  • In einer Ausgestaltung des Verfahrens umfasst das Übertragen der Task-Datei von einem aus der Gruppe der Vermittlungs-Computersysteme auf das Ziel-Computersystem oder auf eines aus der Gruppe der Bearbeitungs-Computersysteme die folgenden Schritte:
    • – Senden einer vorbestimmten Sequenz an Paket-Daten vom Vermittlungs-Computersystem an das Ziel-Computersystem oder das Bearbeitungs-Computersystem, wobei die vorbestimmten Netzwerk-Ports des Ziel-Computersystems oder des Bearbeitungs-Computersystems geschlossen sind und wobei die Sequenz in einer vorbestimmten Reihenfolge einen oder mehrere Netzwerk-Ports des Ziel-Computersystems oder des Bearbeitungs-Computersystems anspricht,
    • – Überprüfen der gesendeten Sequenz auf Übereinstimmung mit einer vordefinierten Sequenz im Ziel-Computersystem oder im Bearbeitungs-Computersystem, sowie
    • – Veranlassen des Übertragens der Task-Datei durch das Ziel-Computersystem oder das Bearbeitungs-Computersystem, falls die Überprüfung der gesendeten Sequenz positiv ist, wobei das Ziel-Computersystem bzw. das Bearbeitungs-Computersystem seinerseits eine Verbindung zum Vermittlungs-Computersystem aufbaut und die Task-Datei abholt.
  • Eine Übertragung einer Anfrage-Datei eines Bearbeitungs-Computersystems von einem Vermittlungs-Computersystem auf das Key-Computersystem gemäß den weiter oben erläuterten Maßnahmen kann entsprechend den an dieser Stelle aufgeführten Verfahrensschritten erfolgen.
  • Die hier aufgeführten zusätzlichen Verfahrensschritte haben den Vorteil, dass grundsätzlich die (für das Verfahren maßgeblichen) Netzwerk-Ports des Ziel-Computersystems oder eines beteiligten Bearbeitungs-Computersystems – in oben erläutertem Sinne – geschlossen sind und einen Verbindungsaufbau zum Ziel-Computersystem oder zu weiteren Bearbeitungs-Computersystemen von außen blockieren bzw. einen manipulativen Zugriff deutlich erschweren. Das Veranlassen des Übertragens der Task-Datei vermittels des Ziel-Computersystems oder eines Bearbeitungs-Computersystems kann ein automatisierter Prozess zum Übertragen der jeweiligen Task-Datei auf das Ziel-Computersystem oder ein Bearbeitungs-Computersystem (zum Beispiel über den Unix-basierten Befehl „Secure Copy“, scp) sein. Gemäß dem Prozess baut das Ziel-Computersystem oder ein Bearbeitungs-Computersystem seinerseits eine Verbindung zum Vermittlungs-Computersystem auf und holt die Task-Datei ab. Dieser Prozess kann gestartet werden, nachdem eine vorbestimmte Sequenz an Paket-Daten (in Form eines oder mehrerer Daten-Pakete) an das Ziel-Computersystem gesendet wurde, falls diese Sequenz mit einer vordefinierten Sequenz übereinstimmt. Die IP-Adresse des Sequenz-sendenden Computersystems kann dabei statisch im Ziel-Computersystem vorgegeben oder dynamisch aus den dem Kernel des Ziel-Computersystems bekannten Quell-IP-Adressen möglicher Sequenz-sendender Computersysteme entnommen werden.
  • Ein derartiges Verfahren ist unter dem Begriff „Port-Knocking“ (englisch: to knock-anklopfen) bekannt. Die vorgenannten Schritte können beispielsweise über einen sogenannten Knock-Daemon, also ein Programm, welches Port-Knocking ermöglicht, durchgeführt werden. Der Knock-Daemon horcht an den Netzwerk-Ports des Ziel-Computersystems, überprüft die an das Ziel-Computersystem gesendeten Informationen und veranlasst gegebenenfalls (z.B. durch Starten eines Skriptes/Programmes) ein gesteuertes Übertragen der entsprechenden Task-Datei von einem Vermittlungs-Computersystem an das Ziel-Computersystem, wenn die gesendete Sequenz mit einer vordefinierten Sequenz übereinstimmt. Der oben beschriebene Ablauf ermöglicht somit das Übertragen/Kopieren der Task-Datei von einem Vermittlungs-Computersystem auf das Ziel-Computersystem oder ein entsprechendes Bearbeitungs-Computersystem, ohne dass das Ziel-Computersystem oder das entsprechende Bearbeitungs-Computersystem hierfür einen offenen Port mit einem ansprechbaren Programm vorhalten muss.
  • Alternativ oder ergänzend zum oben erläuterten Port-Knocking ist auch denkbar, dass das Ziel-Computersystem oder ein beteiligtes Bearbeitungs-Computersystem von sich aus in regelmäßigen Abständen beim Vermittlungs-Computersystem anfragt (Polling), ob eine oder mehrere auszutauschende Task-Dateien vorliegen. Ist dies der Fall, kann eine entsprechende Übertragung der Task-Datei vom Vermittlungs-Computersystem an das Ziel-Computersystem oder das entsprechende Bearbeitungs-Computersystem initiiert werden. Es ist auch denkbar, dass das Ziel-Computersystem oder das entsprechende Bearbeitungs-Computersystem ein Polling durchführt, wenn zum Beispiel eine bestimmte Zeitspanne überschritten wird, in der kein Port-Knocking durchgeführt worden ist. Probleme beim Port-Knocking können so erkannt werden und die Funktionalität bleibt erhalten.
  • Durch die erläuterten Maßnahmen ist eine Kommunikation zwischen abgesicherten Computersystemen innerhalb der Computernetz-Infrastruktur via der Gruppe der Vermittlungs-Computersysteme möglich, wobei gleichzeitig durch das Key-Computersystem vermittels der Routing-Informationen ein fester Rahmen der Kommunikationsstruktur zur Weiterleitung von Task-Anweisungen vermittels entsprechender Task-Dateien vorgegeben ist. Auf diese Weise bilden das Key-Computersystem, die Gruppe der Vermittlungs-Computersysteme sowie die Gruppe der Bearbeitungs-Computersysteme gemäß dem hier erläuterten Verfahren eine Art sichere „Kommunikations-Middleware“ zwischen einem einen Task initiierenden Bearbeitungs-Computersystem und dem Ziel-Computersystem, auf dem ein entsprechender Task ausgeführt werden soll.
  • In einer Ausgestaltung des Verfahrens wird die Task-Datei in wenigstens einem entlang des Kommunikationspfades beteiligten Computersystem mit einer innerhalb der Computernetz-Infrastruktur eindeutigen Kennung versehen oder eine bereits bestehende Kennung der Task-Datei ergänzt.
  • Eine entsprechende Kennung der Task-Datei ermöglicht eine Nachverfolgbarkeit auch über mehrere Instanzen des Kommunikationspfades hinweg. Ein Ergänzen der Kennung kann beispielsweise ein Versehen mit einem eindeutigen Zusatz sein. Dabei wird eine originäre Kennung einer ersten Instanz vorteilhaft derart ergänzt, dass die originäre Information unterscheidbar vom Zusatz erhalten bleibt und somit die Kennung auch über mehrere Stufen des Ergänzens hinweg eindeutig auf den Ursprung zurückführbar ist.
  • In einer Ausgestaltung des Verfahrens wird der Verlauf der Task-Datei entlang des Kommunikationspfades über ein Monitoring anhand der Kennung überwacht und/oder eine Verweildauer der Task-Datei auf einem entlang des Kommunikationspfades beteiligten Computersystem überwacht und/oder sämtliche Verfahrensschritte durch das Monitoring protokolliert.
  • Anhand der Kennung der Task-Datei in Verbindung mit den hinterlegten Routing-Informationen kann festgestellt werden, ob der Kommunikationspfad eingehalten wird und welche Computersysteme im Routing (erfolgreich) erreicht werden können und dürfen. Eine Verweildauer der Task-Datei auf einem vorbestimmten Computersystem kann zum Beispiel durch das Key-Computersystem bei Erstellen der Task-Datei definiert werden. Ferner kann definiert werden, dass nach Ablauf der Verweildauer die Task-Datei nicht weitertransportiert werden darf oder kann oder gegebenenfalls unbrauchbar wird. Gegebenenfalls können Alarmmeldungen erzeugt oder sonstige Maßnahmen ergriffen werden, welche über das Routing protokolliert werden.

Claims (12)

  1. Verfahren zur erzwungenen Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur, aufweisend die Schritte: – iteratives Verschlüsseln eines Klar-Datensatzes in einem Key-Computersystem der Computernetz-Infrastruktur vermittels einer Mehrzahl unterschiedlicher Schlüssel in einen ersten verschachtelten Chiffrat-Datensatz, wobei in jeder Iteration zumindest eine Verschlüsselung vermittels eines anderen Schlüssels aus der Mehrzahl der unterschiedlichen Schlüssel erfolgt und wobei einer oder mehrere Schlüssel aus der Mehrzahl der unterschiedlichen Schlüssel einem bestimmten Bearbeitungs-Computersystem aus einer Mehrzahl von Bearbeitungs-Computersystemen der Computernetz-Infrastruktur zuordenbar ist, – schrittweises Übertragen des ersten verschachtelten Chiffrat-Datensatzes vom Key-Computersystem entlang eines vorbestimmten Kommunikationspfades, umfassend die Mehrzahl der Bearbeitungs-Computersysteme, an ein vorbestimmtes Ziel-Bearbeitungs-Computersystem aus der Mehrzahl der Bearbeitungs-Computersysteme, wobei die vom ersten verschachtelten Chiffrat-Datensatz durchlaufene Reihenfolge der Bearbeitungs-Computersysteme innerhalb des Kommunikationspfades durch die inverse Reihenfolge der Iterationen der Verschlüsselung des Klar-Datensatzes in den ersten verschachtelten Chiffrat-Datensatz festgelegt ist, – Entschlüsseln jeweils einer Iteration des ersten verschachtelten Chiffrat-Datensatzes in jeweils einem Bearbeitungs-Computersystem entlang des Kommunikationspfades vermittels eines dem jeweiligen Bearbeitungs-Computersystem zuordenbaren Schlüssels derart, dass nach der Entschlüsselung der letzten Iteration im Ziel-Bearbeitungs-Computersystem wieder der lesbare Klar-Datensatz vorliegt.
  2. Verfahren nach Anspruch 1, wobei die Mehrzahl der Schlüssel für das iterative Verschlüsseln im Key-Computersystem öffentliche Schlüssel sind und wobei die Mehrzahl der Schlüssel für das iterative Entschlüsseln entlang des Kommunikationspfades private Schlüssel sind, die jeweils im Bearbeitungs-Computersystem lokal hinterlegt sind.
  3. Verfahren nach Anspruch 1 oder 2, aufweisend die zusätzlichen Schritte: – nochmaliges Verschlüsseln des Klar-Datensatzes im Key-Computersystem vermittels zumindest eines Schlüssels aus der Mehrzahl der unterschiedlichen Schlüssel in einen zweiten Chiffrat-Datensatz, – schrittweises Übertragen des zweiten Chiffrat-Datensatzes vom Key-Computersystem entlang des vorbestimmten Kommunikationspfades an ein durch das nochmalige Verschlüsseln festgelegtes Bearbeitungs-Computersystem, – Entschlüsseln des zweiten Chiffrat-Datensatzes im durch das nochmalige Verschlüsseln festgelegten Bearbeitungs-Computersystem derart, dass wieder der lesbare Klar-Datensatz vorliegt.
  4. Verfahren nach Anspruch 3, wobei das nochmalige Verschlüsseln des Klar-Datensatzes ein iteratives Verschlüsseln vermittels mehrerer Schlüssel aus der Mehrzahl der unterschiedlichen Schlüssel in einen zweiten verschachtelten Chiffrat-Datensatz ist und wobei die Anzahl der Iterationen des nochmaligen Verschlüsselns kleiner ist als die Anzahl der Iterationen des ersten iterativen Verschlüsselns.
  5. Verfahren nach Anspruch 4, aufweisend die zusätzlichen Schritte: – schrittweises Übertragen des zweiten verschachtelten Chiffrat-Datensatzes vom Key-Computersystem entlang des vorbestimmten Kommunikationspfades an das durch das nochmalige Verschlüsseln festgelegte Bearbeitungs-Computersystem, wobei die vom zweiten verschachtelten Chiffrat-Datensatz durchlaufene Reihenfolge der Bearbeitungs-Computersysteme innerhalb des Kommunikationspfades von der inversen Reihenfolge der Iterationen der Verschlüsselung des Klar-Datensatzes in den zweiten verschachtelten Chiffrat-Datensatz abhängt, – Entschlüsseln jeweils einer Iteration des zweiten verschachtelten Chiffrat-Datensatzes in jeweils einem Bearbeitungs-Computersystem entlang des Kommunikationspfades vermittels eines dem jeweiligen Bearbeitungs-Computersystem zuordenbaren Schlüssels derart, dass nach der Entschlüsselung der letzten Iteration im durch das nochmalige Verschlüsseln festgelegten Bearbeitungs-Computersystem wieder der lesbare Klar-Datensatz vorliegt.
  6. Verfahren nach einem der Ansprüche 1 bis 5, aufweisend die weiteren Schritte: – Berechnen einer ersten Prüfsumme aus dem Klar-Datensatz im Key-Computersystem, – Übertragen der ersten Prüfsumme vom Key-Computersystem an das Ziel-Bearbeitungs-Computersystem, – Berechnen einer zweiten Prüfsumme aus dem entschlüsselten Klar-Datensatz im Ziel-Bearbeitungs-Computersystem, – Vergleich der ersten und der zweiten Prüfsumme auf Übereinstimmung im Ziel-Bearbeitungs-Computersystem.
  7. Verfahren nach einem der Ansprüche 3 bis 5 und 6, aufweisend die weiteren Schritte: – Übertragen der ersten Prüfsumme vom Key-Computersystem an das durch das nochmalige Verschlüsseln festgelegte Bearbeitungs-Computersystem, – Berechnen einer dritten Prüfsumme aus dem entschlüsselten Klar-Datensatz im durch das nochmalige Verschlüsseln festgelegten Bearbeitungs-Computersystem, – Vergleich der ersten und der dritten Prüfsumme auf Übereinstimmung im durch das nochmalige Verschlüsseln festgelegten Bearbeitungs-Computersystem.
  8. Verfahren nach einem der Ansprüche 1 bis 7, aufweisend die weiteren Schritte: – zusätzliches Verschlüsseln des Klar-Datensatzes und/oder eines in einer oder mehreren Iterationen aus dem Klar-Datensatz erzeugten Chiffrat-Datensatzes mit einem oder mehreren separaten Auditor-Schlüsseln in einen oder mehrere separate Auditor-Chiffrat-Datensätze, – Übertragen des oder der Auditor-Chiffrat-Datensätze auf ein oder mehrere Auditor-Computersysteme, – Entschlüsseln des oder der Auditor-Chiffrat-Datensätze vermittels eines oder mehrerer einem jeweiligen Auditor-Computersystem zuordenbaren Auditor-Schlüsseln derart, dass nach der Entschlüsselung im Auditor-Computersystem wieder der lesbare Klar-Datensatz und/oder der in einer oder mehreren Iterationen aus dem Klar-Datensatz erzeugte Chiffrat-Datensatz vorliegt, – Durchführen eines Audit-Prozesses anhand des Klar-Datensatzes und/oder des in einer oder mehreren Iterationen aus dem Klar-Datensatz erzeugten Chiffrat-Datensatzes nach dem Entschlüsseln des oder der Auditor-Chiffrat-Datensätze.
  9. Verfahren nach einem der Ansprüche 1 bis 8, wobei jedem Bearbeitungs-Computersystem aus der Mehrzahl der Bearbeitungs-Computersysteme der Computernetz-Infrastruktur zusätzlich zumindest ein separater Schattenschlüssel zugeordnet ist, der sich von anderen Schlüsseln unterscheidet und wobei die Verfahrensschritte gemäß einem oder mehreren der Ansprüche 1 bis 8 zusätzlich unter Verwendung der Schattenschlüssel der Bearbeitungs-Computersysteme durchgeführt werden, so dass aus dem Klar-Datensatz ein oder mehrere, gegebenenfalls verschachtelte, Schatten-Chiffrat-Datensätze gebildet werden, umfassend die weiteren Schritte: – Zugänglichmachen der verschiedenen Schattenschlüssel zu unterschiedlichen Benutzern oder Benutzergruppen einer Auditoren-Gruppe, – Entschlüsseln des oder der Schatten-Chiffrat-Datensätze vermittels der verschiedenen Schattenschlüssel, die den Benutzern oder Benutzergruppen der Auditoren-Gruppe zugänglich gemacht sind, – Durchführen eines Audit-Prozesses anhand des oder der entschlüsselten Schatten-Chiffrat-Datensätze.
  10. Verfahren nach Anspruch 9, wobei nach Durchführen des Audit-Prozesses sämtliche Schattenschlüssel neu generiert werden.
  11. Computernetz-Infrastruktur, zumindest aufweisend: – ein Key-Computersystem, – eine Mehrzahl von Bearbeitungs-Computersystemen sowie – ein Ziel-Bearbeitungs-Computersystem aus der Mehrzahl der Bearbeitungs-Computersysteme, wobei die Computernetz-Infrastruktur eingerichtet ist, ein Verfahren nach einem der Ansprüche 1 bis 10 durchzuführen.
  12. Computerprogramm-Produkt, welches eingerichtet ist, auf einem oder mehreren Computersystemen ausgeführt zu werden und welches bei dessen Ausführung ein Verfahren nach einem der Ansprüche 1 bis 10 durchführt.
DE102016107644.9A 2015-11-16 2016-04-25 Verfahren zur erzwungenen Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur, Computernetz-Infrastruktur sowie Computerprogramm-Produkt Withdrawn DE102016107644A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102015119780 2015-11-16
DE102015119780.4 2015-11-16

Publications (1)

Publication Number Publication Date
DE102016107644A1 true DE102016107644A1 (de) 2017-05-18

Family

ID=58640420

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016107644.9A Withdrawn DE102016107644A1 (de) 2015-11-16 2016-04-25 Verfahren zur erzwungenen Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur, Computernetz-Infrastruktur sowie Computerprogramm-Produkt

Country Status (1)

Country Link
DE (1) DE102016107644A1 (de)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5479514A (en) * 1994-02-23 1995-12-26 International Business Machines Corporation Method and apparatus for encrypted communication in data networks
US20020116606A1 (en) * 2001-02-16 2002-08-22 Gehring Stephan W. Encryption and decryption system for multiple node network
US7603554B2 (en) * 2003-06-12 2009-10-13 Panasonic Corporation Encryption communication system
US20110311055A1 (en) * 2010-06-16 2011-12-22 Gilad Parann-Nissany Methods, devices, and media for secure key management in a non-secured, distributed, virtualized environment with applications to cloud-computing security and management

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5479514A (en) * 1994-02-23 1995-12-26 International Business Machines Corporation Method and apparatus for encrypted communication in data networks
US20020116606A1 (en) * 2001-02-16 2002-08-22 Gehring Stephan W. Encryption and decryption system for multiple node network
US7603554B2 (en) * 2003-06-12 2009-10-13 Panasonic Corporation Encryption communication system
US20110311055A1 (en) * 2010-06-16 2011-12-22 Gilad Parann-Nissany Methods, devices, and media for secure key management in a non-secured, distributed, virtualized environment with applications to cloud-computing security and management

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Auditing move content events (maintaining a chain of custody log). IBM FileNet P8, Version 5.2.1. IBM Knowledge Center. Oktober 2015. URL: https://www.ibm.com/support/knowledgecenter/SSNW2F_5.2.1/com.ibm.p8.cfs.admin.doc/auditing_move_content_events.htm [abgerufen am 14. September 2016] *
Auditing move content events (maintaining a chain of custody log). IBM FileNet P8, Version 5.2.1. IBM Knowledge Center. Oktober 2015. URL: https://www.ibm.com/support/knowledgecenter/SSNW2F_5.2.1/com.ibm.p8.cfs.admin.doc/auditing_move_content_events.htm [abgerufen am 14. September 2016]

Similar Documents

Publication Publication Date Title
US11489876B2 (en) System and apparatus for providing network security
EP2899714B1 (de) Gesichertes Bereitstellen eines Schlüssels
LU93024B1 (de) Verfahren und Anordnung zum Aufbauen einer sicheren Kommunikation zwischen einer ersten Netzwerkeinrichtung (Initiator) und einer zweiten Netzwerkeinrichtung (Responder)
EP3518492B1 (de) Verfahren und system zur offenlegung mindestens eines kryptographischen schlüssels
DE102013221159B3 (de) Verfahren und System zum manipulationssicheren Bereitstellen mehrerer digitaler Zertifikate für mehrere öffentliche Schlüssel eines Geräts
DE102014107783B4 (de) Routing-Verfahren zur Weiterleitung von Task-Anweisungen zwischen Computersystemen, Computernetz-Infrastruktur sowie Computerprogramm-Produkt
DE102016115193A1 (de) Verfahren zur sicheren Datenhaltung in einem Computernetzwerk
EP3105898B1 (de) Verfahren zur kommunikation zwischen abgesicherten computersystemen sowie computernetz-infrastruktur
EP3648430B1 (de) Hardware-sicherheitsmodul
DE102018217431A1 (de) Sicherer Schlüsseltausch auf einem Gerät, insbesondere einem eingebetteten Gerät
EP3318033B1 (de) Anti-cracking verfahren mit hilfe eines vermittlungscomputer
DE102014112478A1 (de) Verfahren zur Verteilung von Tasks zwischen Computersystemen, Computernetz-Infrastruktur sowie Computerprogramm-Produkt
EP3713189A1 (de) Intrusionserkennung bei computersystemen
DE102014213454A1 (de) Verfahren und System zur Erkennung einer Manipulation von Datensätzen
WO2015185507A1 (de) Verfahren zur kommunikation zwischen abgesicherten computersystemen, computernetz-infrastruktur sowie computerprogramm-produkt
DE102016107644A1 (de) Verfahren zur erzwungenen Prozessierung von Datensätzen zwischen Computersystemen in einer Computernetz-Infrastruktur, Computernetz-Infrastruktur sowie Computerprogramm-Produkt
EP3105899B1 (de) Verfahren zum hochfahren eines produktions-computersystems
EP3618348B1 (de) Verfahren zum betreiben eines verteilten datenbanksystems, verteiltes datenbanksystem und industrieautomatisierungssystem
AT520170B1 (de) Verfahren zum sicheren Administrieren eines Schlosses, insbesondere für einen Safe, mittels eines Computers
LU500837B1 (de) Verfahren und zugehörige Computersysteme zur Sicherung der Integrität von Daten
DE102014114222A1 (de) Verfahren zum Verschlüsseln von Quell-Nutzdaten
DE102015001817B4 (de) Verfahren, Vorrichtungen und System zur Online-Datensicherung
WO2021228797A1 (de) Konzept zum austausch von verschlüsselten daten
DE102021129026A1 (de) Verfahren und zugehörige Computersysteme zur Sicherung der Integrität von Daten
DE202022106318U1 (de) Ein robustes Sicherheitsmanagementsystem für das Internet der Dinge (IoT)

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R084 Declaration of willingness to licence
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee