[0001] Die Erfindung betrifft ein Verfahren zum sicheren Bedienen einer eisenbahntechnischen
Anlage, bei dem ein Zustand von wenigstens einem Streckenelement der eisenbahntechnischen
Anlage oder ein für den Zustand repräsentativer Wert abgespeichert wird.
[0002] Bei einer eisenbahntechnischen Anlage, die beispielsweise eine Stellwerksaußenanlage
aufweist, werden die Zustände von Elementen der Stellwerksaußenanlage erfasst. Diese
Elemente sind beispielsweise Lichtsignale, Weichen, Achszähler und ähnliches. Ein
definierter Zustand dieser Elemente ist beispielsweise der angezeigte Signalbegriff
oder die eingestellte Weichenstellung. Die Zustände der Elemente der Stellwerksaußenanlage
werden erfasst und z. B. für eine sichere Bedienung bzw. sichere Anzeige verifiziert.
Die Zustände der Elemente dienen beispielsweise als Grundlage für eine sichere Fahrstraßeneinstellung
durch die Stellwerksrechner und der sicheren Anzeige in den Stellwerksrechnern. Für
die sichere Bedienung bzw. Anzeige muss sichergestellt sein, dass der Bediener, wie
beispielsweise ein Fahrdienstleiter, nur die Zustände angezeigt bekommt, die auch
wirklich eingestellt sind. Da fehlerhafte Informationen über die Zustände an den Bediener
schwerwiegende Folgen haben könnten, muss bisher unter Umständen ein hoher Aufwand
betrieben werden, um die sichere Bedienung zu gewährleisten.
[0003] Es ist daher die Aufgabe der Erfindung, ein vereinfachtes Verfahren zum sicheren
Bedienen einer eisenbahntechnischen Anlage der eingangs genannten Art bereitzustellen.
[0004] Die Aufgabe wird für das eingangs genannte Verfahren dadurch gelöst, dass der Zustand
oder der repräsentative Wert des Zustands in einer verteilten Datenbank abgespeichert
wird.
[0005] Dies hat den Vorteil, dass die in einer verteilten Datenbank abgelegten Informationen
vertrauenswürdig sind und eine weitere Überprüfung der Informationen entfallen kann.
Dadurch kann der Aufwand für die sichere Bedienung reduziert werden, so dass die angewendeten
Verfahren vereinfacht werden können.
[0006] Unter einer verteilen Datenbank, die auch Distributed Ledger Technologie genannt
wird, ist eine auf mehrere Standorte, Regionen oder Teilnehmer verteilte Datenbank
zu verstehen. Alle Teilnehmer dieser dezentralen Datenbank können alle Datensätze
anzeigen. Die Technologie bietet eine überprüfbare Historie aller Informationen, die
in den bestimmten Datensätzen gespeichert sind. In einer verteilten Datenbank verarbeitet
und verifiziert jeder Teilnehmer eine Transaktion oder Information und erzeugt dadurch
eine Aufzeichnung dieses Elements und schafft einen Konsens über deren Wahrhaftigkeit.
Eine verteilte Datenbank kann in einer von mehreren Möglichkeiten beispielsweise als
Blockchain ausgebildet sein. Unter einer Blockchain, also einer Blockkette, wird üblicherweise
eine kontinuierlich erweiterbare Liste von als Blöcken bezeichneten Datensätzen verstanden,
die mittels kryptographischer Verfahren miteinander verkettet sind. Jeder Block enthält
dabei typischerweise einen kryptographisch sicheren Hashwert des vorhergehenden Blocks
und ggf. einen Zeitstempel und weitere Transaktionsdaten. Die Blockchain wird von
einem sogenannten Miner erzeugt und auf alle Teilnehmer der verteilten Datenbank verteilt.
[0007] Durch die konstruktiv bedingte Sicherheit einer verteilten Datenbank kann ein Misstrauen
gegenüber der Richtigkeit der abgelegten Zustände der Streckenelemente entfallen.
Somit können auch durch das Misstrauen bedingte bisherige Sicherungsverfahren entfallen,
die die eisenbahntechnische Anlage insgesamt vereinfachen. Der Zustand bzw. der repräsentative
Wert des Zustands ist bei jedem Teilnehmer der verteilten Datenbank in im Wesentlichen
gleicher Weise vorhanden.
[0008] Die erfindungsgemäße Lösung kann durch vorteilhafte Ausgestaltungen weiterentwickelt
werden, die im Folgenden beschrieben sind.
[0009] So kann bei einer Veränderung des Zustands des Streckenelements dieser veränderte
Zustand oder der für den veränderten Zustand repräsentative Wert des Streckenelements
in der verteilten Datenbank so abgespeichert werden, dass die Veränderung erkennbar
ist, zumindest in ausreichender Zeit. Jeder neue Datensatz über einen veränderten
Zustand enthält einen aktuellen Zeitstempel, durch den eine Veränderung gegenüber
einem früheren Zeitpunkt leicht erkennbar ist. Wenn als verteilte Datenbank eine Blockchain
verwendet wird, kann der veränderte Zustand in einem neuen Block an die vorhandene
Blockchain angehängt und an alle Teilnehmer verteilt werden. In den vorherigen Blöcken
sind die alten Zustände weiterhin auslesbar.
[0010] Um sicherzustellen, dass während einer Bedienhandlung die Zustände gleich geblieben
sind, kann die Bedienung durch wenigstens eine Eingabe und eine zur ersten Eingabe
spätere zweite Eingabe von wenigstens einem Bediener angefordert werden und die Bedienung
nur ausgeführt werden, wenn sich der in der verteilten Datenbank abgespeicherte Zustand
oder der repräsentative Wert des Zustands des Streckenelements zwischen der ersten
Eingabe und der zweiten Eingabe nicht verändert hat. Beispielsweise erfolgt die erste
Eingabe zu Beginn einer Bedienhandlung und die zweite Eingabe schließt die Bedienhandlung
ab. Durch diese Ausführungsform ist sichergestellt, dass sich die Zustände der Streckenelemente
während der Bedienhandlung nicht verändert haben. Sollte eine Veränderung zwischen
der ersten und der zweiten Eingabe festgestellt werden, kann die Ausführung der Bedienhandlung
blockiert werden und eine erneute Überprüfung durch den Bediener angefordert werden.
[0011] In einer vorteilhaften Ausgestaltung kann der Zustand oder der repräsentative Wert
des Zustands in einer Blockchain abgespeichert werden. Die Blockchain-Technologie
ist eine spezielle Ausführungsform einer verteilten Datenbank, bei der veränderte
Zustände in einem Block der Blockchain abgespeichert und verteilt werden. Eine Blockchain
bietet eine sehr hohe Sicherheit, da die Blöcke mit den Zuständen nachträglich nicht
verändert werden können, und ist dadurch sehr vertrauenswürdig.
[0012] Um den Aufwand bei der Datenspeicherung in der verteilten Datenbank und insbesondere
der Blockchain möglichst gering zu halten, kann der in der verteilten Datenbank abgespeicherte
Zustand oder repräsentative Wert des Zustands mittels eines Proof-of-Authority-Verfahrens,
insbesondere mittels einer PKI - Public Key Infrastructure, verifizierbar sein. Durch
die PKI ist es überprüfbar, ob der abgespeicherte Zustand bzw. die Zustände von einem
vertrauenswürdigen Teilnehmer, nämlich dem Miner, eingestellt wurden. Beispielsweise
kann in einem Bahnnetzwerk ein ganz bestimmter Rechner zur Erstellung neuer Blöcke
berechtigt sein. Dieser Rechner verwendet dabei seine PKI, so dass die übrigen Rechner
in Datennetzwerk erkennen anhand der PKI, dass der berechtigte und vertrauenswürdige
Rechner die Daten erstellt hat.
[0013] Die Erfindung betrifft weiterhin einen Netzwerkknoten eines Datennetzwerkes in einer
eisenbahntechnischen Anlage mit wenigstens einem Speicher. Erfindungsgemäß ist zur
Lösung der eingangs genannten Aufgabe vorgesehen, dass der Netzwerkknoten als Teil
einer verteilten Datenbank ausgebildet ist, in der ein Zustand von wenigstens einem
Streckenelement der eisenbahntechnischen Anlage oder ein für den Zustand repräsentativer
Wert abgespeichert ist.
[0014] In einer vorteilhaften Ausgestaltung des erfindungsgemäßen Netzwerkknotens kann der
Netzwerkknoten ausgebildet sein, einen veränderten Zustand oder einen für den veränderten
Zustand repräsentativen Wert des Streckenelements in der verteilten Datenbank so abzuspeichern,
dass die Veränderung erkennbar ist. Dies hat den oben bereits beschriebenen Vorteil,
dass Zustandsänderungen in der verteilten Datenbank leicht erkennbar sind.
[0015] Ferner kann der Netzwerkknoten zum Bedienen der eisenbahntechnischen Anlage durch
wenigstens eine erste Eingabe und eine zur ersten Eingabe spätere zweite Eingabe von
wenigstens einem Bediener ausgebildet sein, wobei die Bedienung nur ausgeführt wird,
wenn mittels Auslesen aus der ersten verteilten Datenbank keine Veränderung des Zustands
und des repräsentativen Werts des Zustands des Streckenelements zwischen der ersten
Eingabe und der zweiten Eingabe erkannt wurde. Dies hat den Vorteil, dass gleich überprüft
werden kann, dass sich Zustände der Streckenelemente während einer Bedienhandlung
des Bedieners, beispielsweise des Fahrdienstleiters, nicht geändert haben.
[0016] Schließlich betrifft die Erfindung auch eine eisenbahntechnische Anlage mit wenigstens
einem Datennetzwerk. Erfindungsgemäß weist das Datennetzwerk wenigstens einen Netzwerkknoten
nach einer der oben genannten Ausführungsformen auf.
[0017] Im Folgenden wird die Erfindung mit Bezug auf die beigefügten Zeichnungen erläutert.
[0018] Es zeigen:
- Fig. 1
- eine schematische Darstellung einer beispielhaften Ausführungsform der erfindungsgemäßen
eisenbahntechnischen Anlage;
- Fig. 2
- eine schematische Darstellung einer beispielhaften Ausführungsform eines erfindungsgemäßen
Verfahrens zur Bedienung der Anlage aus Fig. 1;
- Fig. 3
- eine weitere schematische Darstellung der beispielhaften Ausführungsform des erfindungsgemäßen
Verfahrens aus Fig. 2.
[0019] Fig. 1 zeigt eine eisenbahntechnische Anlage 1, die ein Datennetzwerk 2 und mehrere
Streckenelemente 3 umfasst. Die Streckenelemente 3 sollen hier beispielsweise Teil
einer Stellwerksaußenanlage sein. Die Streckenelemente 3 können dabei beispielsweise
Lichtsignale, Weichen, Achszähleinrichtungen, Gleisstromkreise oder ähnliches sein.
[0020] Die eisenbahntechnische Anlage 1 umfasst weiterhin verschiedene Netzwerkknoten 4,
die miteinander verbunden sind und das Datennetzwerk 2 ausbilden. Die Netzwerkknoten
4 wiederum werden durch verschiedene Recheneinrichtungen ausgebildet, wie einen Bedien-
und Anzeigerechner 5, einen Stellwerksrechner 6 und mehrere Elementenrechner 7. Der
Bedien- und Anzeigenrechner 5 ist beispielsweise in einer Leitstelle der eisenbahntechnischen
Anlage 1 angeordnet und steuert die Anzeige der eisenbahntechnischen Anlage 1 in dieser
Leitstelle. Der Stellwerksrechner 6 ist für die üblichen Stellwerksaufgaben ausgebildet
und die Elementenrechner 7 sind Teil der Streckenelemente und z. B. auch zur Steuerung
dieser vorgesehen.
[0021] Die Netzwerkknoten 4 bilden zusammen eine verteilte Datenbank 8 aus, die hier beispielsweise
eine Blockchain ist, die an jeden Netzwerkknoten verteilt ist. Die Blockchain ist
also auf allen Netzwerkknoten 4 verfügbar.
[0022] Im Folgenden wird das erfindungsgemäße Verfahren zum Bedienen der Anlage 1 beschrieben:
Im Betrieb der eisenbahntechnischen Anlage 1 ändern sich die Zustände der Streckenelemente
3 kontinuierlich. Bei jeder Zustandsänderung von einem Streckenelement 3 wird der
neue, aktuelle Zustand von den Streckenelementen 3 und insbesondere den Elementenrechnern
7 an den Stellwerksrechner 6 weitergegeben.
[0023] Der Stellwerksrechner 6 ist bei der beispielhaften Ausführungsform in Figur 1 dazu
ausgebildet, für den neuen, geänderten Zustand des Streckenelements 3 einen neuen
Block der Blockchain zu erstellen. Der Stellwerksrechner 6 übernimmt somit die Aufgabe
des sogenannten Miners, der neue Blöcke der Blockchain erstellt bzw. errechnet, an
die bestehende Blockchain anhängt und verteilt. Um den Aufwand beim Erstellen des
neuen Blocks für den Stellwerksrechner 6 gering zu halten und diesen möglichst schnell
zu erstellen, verifiziert der Stellwerksrechner 6 den neuen Block mit Hilfe des Proof-of-Authority-Verfahrens.
Dafür wird insbesondere eine PKI (Public Key Infrastructure) genutzt und der Stellwerksrechner
6 validiert den neuen Block mit seinem persönlichen Schlüssel. Durch Verwendung des
Proof-of-Authority-Verfahrens ist es möglich, dass der Stellwerksrechner 6 den neuen
Block mit dem veränderten Zustand des Streckenelements 3 innerhalb eines relativ kleinen
Zeitfensters von z. B. maximal 5 Sekunden erstellt und verteilt. Dies ist ein Vorteil
gegenüber dem alternativen Proof-of-Work-Verfahren, das mehr Rechnerkapazität und
Zeit benötigen würde. Anschließend wird der aktuelle Stand bzw. die neue Blockchain
an alle Netzwerkknoten 4 verteilt. In der Blockchain sind somit immer die aktuellen
Zustände der Streckenelemente 3 hinterlegt und können von allen Netzwerkknoten 4 ausgelesen
werden. Bei einer Zustandsänderung wird der aktuelle Zustand zusammen mit dem aktuellen
Zeitpunkt in der Blockchain abgespeichert. Das heißt, dass der neue Zustand in einen
neuen Block fließt und als neue oder aktualisierte Blockchain verteilt wird.
[0024] Von dem Bedien- und Anzeigerechner 5 in der Leitstelle der eisenbahntechnischen Anlage
wird der Zustand der Streckenelemente 3 für den Bediener grafisch angezeigt. Der Bediener
ist in diesem Fall beispielsweise ein Fahrdienstleiter.
[0025] Fig. 2 zeigt diese grafische Anzeige mit dem Bezugszeichen 9. Der Zustand der Streckenelemente
3 zum jeweiligen Zeitpunkt ist in Fig. 2 mit Bezugszeichen 10 dargestellt. Dazwischen
ist die Blockchain der verteilten Datenbank 8 mit der darin abgespeicherten Historie
der verschiedenen Zustände der Streckenelemente 3 mit Bezugszeichen 11 dargestellt.
[0026] Die sichere Bedienung der eisenbahntechnischen Anlage 1 durch einen Bediener in der
Leitstelle ist schematisch in Fig. 3 dargestellt. Im ersten Verfahrensschritt 12 in
Fig. 3 startet der Bediener eine sogenannte kommandofreigabepflichtige Bedienung der
eisenbahntechnischen Anlage 1 durch eine erste Eingabe, beispielsweise durch einen
gesonderten Tastendruck. Anschließend gibt der Bediener die Bedienung in den Bedien-
und Anzeigenrechner 5 ein und bestätigt am Ende der Bedienung, also zeitversetzt,
durch eine zweite Eingabe, beispielsweise wiederum einen gesonderten Tastendruck.
Anschließend wird im Schritt 13 in Fig. 3 vom Bedien- und Anzeigerechner 5 und/oder
vom Stellwerksrechner 6 geprüft, ob sich einer der Zustände der Streckenelemente 3
zwischen der ersten und der zweiten Eingabe verändert hat. Der Zeitraum zwischen der
ersten und der zweiten Eingabe ist größer als 5 Sekunden und damit größer als das
Zeitfenster zur Erstellung eines neuen Blocks. Damit ist sichergestellt, dass bei
einer Zustandsänderung ein neuer Block errechnet, angehängt, signiert und verteilt
ist, bevor die zweite Eingabe erfolgt. Eine unbemerkte Zustandsänderung ist daher
nicht möglich.
[0027] Im Schritt 14 in Fig. 3 wird die Bedienung ausgeführt, wenn sich der Zustand zwischen
der ersten und der zweiten Eingabe nicht verändert hat. Im Schritt 14 wird jedoch
die Bedienung abgelehnt, wenn eine Zustandsänderung zwischen der ersten und der zweiten
Eingabe festgestellt wurde. Somit entfallen die bisherig notwendigen Prüfschritte
aus dem Stand der Technik.
[0028] Durch das erfindungsgemäße Verfahren können alle Netzwerkknoten 4 durch deren Zugriff
auf die Blockchain die jeweiligen Zustände der Streckenelemente 3 überprüfen.
[0029] Für Diagnosezwecke können die Zustandsinformationen in der verteilten Datenbank 8
außerdem ebenfalls herangezogen werden. Hierfür kann auch ein Diagnoserechner (nicht
dargestellt) im Datennetzwerk 2 eingebunden sein.
[0030] Durch das erfindungsgemäße Verfahren kann auf einige heute übliche Prüfschritte bei
der Bedienung der eisenbahntechnischen Anlage 1 und der Bedieneingabe verzichtet werden,
wodurch die Umsetzung deutlich unkomplizierter und weniger aufwändig ist. Wie in Fig.
3 dargestellt, sind hierfür nur wenige Prozessschritte nötig.
1. Verfahren zum sicheren Bedienen einer eisenbahntechnischen Anlage (1),
bei dem ein Zustand von wenigstens einem Streckenelement (3) der eisenbahntechnischen
Anlage (1) oder ein für den Zustand repräsentativer Wert abgespeichert wird,
dadurch gekennzeichnet, dass
der Zustand oder der repräsentative Wert des Zustands in einer verteilten Datenbank
(8) abgespeichert wird.
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet, dass
bei einer Veränderung des Zustands des Streckenelements (3) dieser veränderte Zustand
oder der für den veränderten Zustand repräsentative Wert des Streckenelements (3)
in der verteilten Datenbank (8) so abgespeichert wird, dass die Veränderung erkennbar
ist.
3. Verfahren nach Anspruch 2,
dadurch gekennzeichnet, dass
die Bedienung durch wenigstens eine erste Eingabe und eine zur ersten Eingabe spätere
zweite Eingabe von wenigstens einem Bediener angefordert wird und die Bedienung nur
ausgeführt wird, wenn sich der in der verteilten Datenbank (8) abgespeicherte Zustand
oder der repräsentative Wert des Zustands des Streckenelements (3) zwischen der ersten
Eingabe und der zweiten Eingabe nicht verändert hat.
4. Verfahren nach einem der oben genannten Ansprüche,
dadurch gekennzeichnet, dass
der Zustand oder der repräsentative Wert des Zustands in einer Blockchain abgespeichert
wird.
5. Verfahren nach einem der oben genannten Ansprüche,
dadurch gekennzeichnet, dass
der in der verteilten Datenbank (8) abgespeicherte Zustand oder repräsentative Wert
des Zustandes mittels eines Proof-of-Authority Verfahrens, insbesondere mittels einer
PKI - Public-Key-Infrastruktur, verifizierbar ist.
6. Netzwerkknoten (4) eines Datennetzwerks (2) in einer eisenbahntechnischen Anlage (1),
mit wenigstens einem Speicher,
dadurch gekennzeichnet, dass
der Netzwerkknoten (4) als Teil einer verteilten Datenbank (8) ausgebildet ist, in
der ein Zustand von wenigstens einem Streckenelement (3) der eisenbahntechnischen
Anlage (1) oder ein für den Zustand repräsentativer Wert abgespeichert ist.
7. Netzwerkknoten (4) nach Anspruch 6,
dadurch gekennzeichnet, dass
der Netzwerkknoten (4) ausgebildet ist, einen veränderten Zustand oder einen für den
veränderten Zustand repräsentativen Wert des Streckenelements (3) in der verteilten
Datenbank so abgespeichert wird, dass die Veränderung erkennbar ist.
8. Netzwerkknoten (4) nach Anspruch 6 oder 7,
dadurch gekennzeichnet, dass
der Netzwerkknoten (4) zum Bedienen der eisenbahntechnischen Anlage (1) durch wenigstens
eine erste Eingabe und eine zur ersten Eingabe spätere zweite Eingabe von wenigstens
einem Bediener ausgebildet ist, wobei die Bedienung nur ausgeführt wird, wenn mittels
Auslesen aus der verteilten Datenbank keine Veränderung des Zustands oder des repräsentativen
Werts des Zustands des Streckenelements (3) zwischen der ersten Eingabe und der zweiten
Eingabe erkannt wurde.
9. Eisenbahntechnische Anlage (1) mit wenigstens einem Datennetzwerk (2),
dadurch gekennzeichnet, dass
das Datennetzwerk (2) wenigstens einen Netzwerkknoten (4) nach einem der oben genannten
Ansprüche 6 bis 8 aufweist.