DE112018007296B4 - Informationsverarbeitungseinrichtung, Informationsverarbeitungsverfahren und Informationsverarbeitungsprogramm - Google Patents

Informationsverarbeitungseinrichtung, Informationsverarbeitungsverfahren und Informationsverarbeitungsprogramm Download PDF

Info

Publication number
DE112018007296B4
DE112018007296B4 DE112018007296.7T DE112018007296T DE112018007296B4 DE 112018007296 B4 DE112018007296 B4 DE 112018007296B4 DE 112018007296 T DE112018007296 T DE 112018007296T DE 112018007296 B4 DE112018007296 B4 DE 112018007296B4
Authority
DE
Germany
Prior art keywords
polynomial
safety
security
calculation
master device
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.)
Active
Application number
DE112018007296.7T
Other languages
English (en)
Other versions
DE112018007296T5 (de
Inventor
Kiyohito Miyazaki
Naoki Ito
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112018007296T5 publication Critical patent/DE112018007296T5/de
Application granted granted Critical
Publication of DE112018007296B4 publication Critical patent/DE112018007296B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6516Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

Informationsverarbeitungseinrichtung (10, 20, 50), umfassend:
eine Auswahleinheit (10005, 5001), um als Kandidatenpolynom aus einer Vielzahl von Polynomen einen Kandidaten für ein Generatorpolynom auszuwählen, das bei einer Kommunikation zwischen einer Master-Einrichtung (10) und einer Slave-Einrichtung (20) verwendet werden soll;
eine Bestimmungseinheit (10005, 10008, 20008, 5002), um zu bestimmen, ob eine Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung zu einer vorgegebenen Frist abgeschlossen ist oder nicht; und
eine Kennzeichnungseinheit (10005, 5003), um das Kandidatenpolynom als das Generatorpolynom zu kennzeichnen, wenn von der Bestimmungseinheit bestimmt wird, dass die Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung fristgerecht abgeschlossen ist.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung bezieht sich auf die Kennzeichnung eines Generatorpolynoms.
  • Hintergrund zum Stand der Technik
  • In der Sicherheitskommunikation basierend auf IEC (International Electrotechnical Commission) 61784-3 muss die Integrität einer Sicherheits-PDU (Englisch: „Protocol Data Unit“, Deutsch: „Protokolldateneinheit“) gegen einen Bitfehler, der in einem Übertragungspfad auftritt, kleiner sein als ein erforderlicher Wert, der auf einem Sicherheitsgradniveau basiert. Als typische Sicherheitsmaßnahme zur Sicherstellung der Integrität ist eine Prüfsumme wie CRC (Cyclic Redundancy Check) o.ä. weit verbreitet.
  • Da eine CRC-Berechnung in der allgemeinen Kommunikation in der Regel eine große Verarbeitungsmenge benötigt, wird die CRC-Berechnung von Hardware durchgeführt. In der Sicherheitskommunikation wird sie jedoch in vielen Fällen durch Software durchgeführt. In einem Fall, in dem die CRC-Berechnung von Hardware durchgeführt wird, da eine Diagnose der Hardware auf der Grundlage von IEC61508 notwendig ist, erhöht sich eine Prozesslast. Um diese Erhöhung in der Prozesslast zu vermeiden, wird in der Sicherheitskommunikation die CRC-Berechnung häufig durch Software durchgeführt.
  • CRC hat eine Vielzahl von Varianten mit unterschiedlichen Graden, wie z.B. CRC-16 und CRC-32. Im Allgemeinen hat ein CRC-Polynom mit einem größeren Grad eine höhere Fehlererfassungsfähigkeit und kann eine niedrige Restfehlerrate erreichen, andererseits wird aber ein Berechnungsaufwand (Zeit oder Raum) groß.
  • Es ist unwahrscheinlich, dass ein solches Problem der Berechnungsmenge in einer Einrichtung mit reichlich Berechnungsressourcen ein Problem darstellt, aber es ist ein Problem in einer eingebetteten Einrichtung mit begrenzten Berechnungsressourcen, in der ein Prozess innerhalb einer vorgegebenen Zeit abgeschlossen werden muss.
  • In einer Technik der Patentliteratur 1 wird für eine gegebene Datenlänge und einen gegebenen Datentyp ein CRC-Generatorpolynom ausgewählt, das eine Minimierung der Nicht-Erfassungsfehlerrate ermöglicht.
  • Daher gibt es in der Technik der Patentliteratur 1 einen Schritt des Erhaltens maximaler und minimaler Hamming-Distanzen des Generatorpolynoms für alle Codelängen, und einen Schritt des Auswählens des Generatorpolynoms, das es ermöglicht, die minimale Hamming-Distanz zu maximieren, gemäß einer Datenlänge und einem Datentyp der zu übertragenden und zu empfangenden Daten.
  • Dokument DE 10 2005 029 515 A1 offenbart ein Verfahren zur Berechnung von CRC-Prüfwerten für Datenblöcke bei einer Datenübertragung, bei dem eine dedizierte Logikschaltung für die Berechnung verwendet wird.
  • Dokument JP 6 073 006 B1 offenbart eine Datenverarbeitungsvorrichtung, umfassend: eine Regionenspezifiziereinheit zum Spezifizieren einer ersten Region, in der eine reguläre Bitkette erscheint in einem Übertragungsrahmen, einer zweiten Region, in der eine Bitkette, die einer definierten Bitkette ähnlich ist, erscheint in dem Übertragungsrahmen, und einer dritten Region, in der eine nichtreguläre Bitkette erscheint in dem Übertragungsrahmen, und Extrahieren einer Differenz zwischen einer Bitkette in der zweiten Region und der definierten Bitkette; eine erste CRC-Beschaffungseinheit zum Beschaffen eines ersten CRC, das ein CRC (Cyclic Redundancy Check) entsprechend der regulären Bitkette ist, aus einer CRC-Tabelle, in der mehrere CRCs gespeichert sind, für die erste Region; eine zweite CRC-Beschaffungseinheit zum Beschaffen eines zweiten CRC, das ein CRC entsprechend der definierten Bitkette ist, aus der CRC-Tabelle für die zweite Region; eine Differenz-CRC-Beschaffungseinheit zum Beschaffen eines Differenz-CRC, das ein CRC entsprechend der durch die Regionenspezifiziereinheit extrahierten Differenz ist, aus der CRC-Tabelle; eine dritte CRC-Erzeugungseinheit zum Erzeugen eines dritten CRC, das ein CRC entsprechend einer Bitkette in der dritten Region ist; und eine Rahmen-CRC-Erzeugungseinheit zum Erzeugen eines CRC des Übertragungsrahmens durch Verwendung des ersten CRC, des zweiten CRC, des Differenz-CRC und des dritten CRC.
  • Liste der Entgegenhaltungen
  • Patentliteratur
  • Patentliteratur 1: JP 2009-171539 A
  • Kurzfassung der Erfindung
  • Technisches Problem
  • In der Technik von Patentliteratur 1, wird nur eine Minimierung der Nicht-Erfassungsfehlerrate in Betracht gezogen. Es besteht daher das Problem, dass unter einer Bedingung, bei der die Berechnungsressourcen begrenzt sind, ein notwendiger Prozess nicht innerhalb einer für die Sicherheitskommunikation erforderlichen Sicherheitsreaktionszeit abgeschlossen werden kann. Außerdem ist die Sicherheitsreaktionszeit z.B. eine Zeit von einem Auftreten einer Erfassung durch einen Sicherheitssensor o.ä. bis zur Verschiebung eines Steuerzielaktuators o.ä. in einen Sicherheitszustand. Ein erforderlicher Wert für die Sicherheitsreaktionszeit wird auf Grundlage einer Systemkonfiguration festgelegt. Ferner ist eine der Komponenten der Sicherheitsreaktionszeit ein Sicherheitskommunikationszyklus.
  • Im Allgemeinen ist ein Polynom mit hohem Grad erforderlich, um die Nicht-Erfassungsfehlerrate des CRC-Polynoms zu senken. Wenn das Polynom mit dem großen Grad verwendet wird, wird die für die CRC-Berechnung erforderliche Berechnungsmenge groß, und es wird schwierig, eine Beschränkung des Sicherheitskommunikationszyklus zu erfüllen. Daher wird angenommen, dass der Sicherheitskommunikationszyklus, der mit einer Marge klein eingestellt ist, innerhalb eines Bereichs der Marge groß eingestellt wird. Diese Methode erhöht jedoch die Wahrscheinlichkeit, dass die Sicherheits-PDU aufgrund eines Kommunikationsfehlers nicht innerhalb der vorgegebenen Zeit übertragen und empfangen wird. Daher tritt ein Problem auf, dass ein System mehr als nötig in den Sicherheitszustand übergeht und eine Verfügbarkeit des Systems verschlechtert wird.
  • Unter Berücksichtigung solcher Umstände zielt die vorliegende Erfindung hauptsächlich darauf ab, eine Konfiguration zu erhalten, die in der Lage ist, ein Polynom zu kennzeichnen, das es ermöglicht, eine Berechnung innerhalb einer vorgegebenen Frist auch unter einer Bedingung abzuschließen, unter der die Berechnungsressourcen begrenzt sind.
  • Lösung des Problems
  • Eine Informationsverarbeitungseinrichtung gemäß der vorliegenden Erfindung umfasst:
    • eine Auswahleinheit, um als Kandidatenpolynom aus einer Vielzahl von Polynomen einen Kandidaten für ein Generatorpolynom auszuwählen, das bei einer Kommunikation zwischen einer Master-Einrichtung und einer Slave-Einrichtung verwendet werden soll;
    • eine Bestimmungseinheit, um zu bestimmen, ob eine Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung zu einer vorgegebenen Frist abgeschlossen ist oder nicht; und
    • eine Kennzeichnungseinheit, um das Kandidatenpolynom als das Generatorpolynom zu kennzeichnen, wenn von der Bestimmungseinheit bestimmt wird, dass die Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung fristgerecht abgeschlossen ist.
  • Vorteilhafte Wirkungen der Erfindung
  • Gemäß der vorliegenden Erfindung ist es möglich, ein Polynom zu kennzeichnen, das es ermöglicht, eine Berechnung innerhalb einer vorgegebenen Frist auch unter einer Bedingung abzuschließen, unter der die Berechnungsressourcen begrenzt sind.
  • Figurenliste
    • 1 ist ein Diagramm zur Darstellung eines Konfigurationsbeispiels eines Sicherheitskommunikationssystems gemäß einer ersten Ausführungsform;
    • 2 ist ein Diagramm, das ein Beispiel einer Hardware-Konfiguration einer Sicherheits-Master-Einrichtung gemäß der ersten Ausführungsform darstellt;
    • 3 ist ein Diagramm, das ein Beispiel einer Hardware-Konfiguration einer Sicherheits-Slave-Einrichtung gemäß der ersten Ausführungsform darstellt;
    • 4 ist ein Diagramm, das ein funktionales Konfigurationsbeispiel der Sicherheits-Master-Einrichtung gemäß der ersten Ausführungsform darstellt;
    • 5 ist ein Diagramm, das ein funktionales Konfigurationsbeispiel der Sicherheits-Slave-Einrichtung gemäß der ersten Ausführungsform darstellt;
    • 6 ist ein Flussdiagramm, das einen Prozess des Aufbauens einer Sicherheitsverbindung gemäß der ersten Ausführungsform darstellt;
    • 7 ist ein Flussdiagramm, das den Prozess des Aufbauens der Sicherheitsverbindung gemäß der ersten Ausführungsform darstellt;
    • 8 ist ein Flussdiagramm, das den Prozess des Aufbauens der Sicherheitsverbindung gemäß der ersten Ausführungsform darstellt;
    • 9 ist ein Diagramm, das ein Beispiel eines CRC-Polynoms gemäß der ersten Ausführungsform darstellt;
    • 10 ist ein Flussdiagramm, das einen Prozess des Aufbauens einer Sicherheitsverbindung gemäß einer zweiten Ausführungsform darstellt;
    • 11 ist ein Diagramm, das ein Beispiel für Berechnungsfähigkeitsinformationen gemäß der zweiten Ausführungsform darstellt;
    • 12 ist ein Diagramm, das ein Beispiel einer CRC-Polynom-Tabelle gemäß einer dritten Ausführungsform darstellt;
    • 13 ist ein Diagramm, das ein Beispiel für eine Hardware-Konfiguration einer Informationsverarbeitungseinrichtung gemäß einer vierten Ausführungsform darstellt;
    • 14 ist ein Diagramm, das ein funktionales Konfigurationsbeispiel der Informationsverarbeitungseinrichtung gemäß der vierten Ausführungsform darstellt; und
    • 15 ist ein Flussdiagramm, das ein Betriebsbeispiel der Informationsverarbeitungseinrichtung gemäß der vierten Ausführungsform darstellt.
  • Beschreibung von Ausführungsformen
  • Im Folgenden werden Ausführungsformen der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen erläutert. In der folgenden Beschreibung der Ausführungsformen und der Zeichnungen sind gleiche Referenzzeichen gleichen oder entsprechenden Teilen zugewiesen.
  • Erste Ausführungsform
  • ***Überblick***
  • In der vorliegenden Ausführungsform wird eine Konfiguration beschrieben, die eine Reduzierung des für eine Sicherheitskommunikation notwendigen Verarbeitungsumfangs einer CRC-Berechnung unter Verwendung einer kostengünstigen eingebetteten Einrichtung umsetzen kann. Konkret wird in der vorliegenden Ausführungsform eine Konfiguration beschrieben, die eine Auswahl eines optimalen CRC-Polynoms umsetzen kann, das sowohl eine für einen Standard erforderliche Restfehlerrate als auch einen für ein System erforderlichen Sicherheitskommunikationszyklus unter Verwendung eines Mikrocomputers mit begrenzten Berechnungsressourcen erreichen kann.
  • In Bezug auf die für eine Sicherheitsnorm erforderliche Restfehlerrate wird in der internationalen Norm IEC 61784-3 verlangt, dass die durch die folgenden Punkte festgelegte Restfehlerrate unter einem für jeden angestrebten Sicherheitsgradlevel festgelegten Anforderungswert liegt (eine Beziehung zwischen jedem Wert und der Restfehlerrate ist in Klammern angegeben).
    • - Eine Größe n einer Sicherheits-PDU (je kleiner die Größe n ist, desto niedriger ist die Restfehlerrate)
    • - Eine Übertragungsrate v der Sicherheits-PDU pro Stunde (je kleiner die Übertragungsrate v ist, desto niedriger ist die Restfehlerrate)
    • - Ein minimaler Hamming-Abstand hd eines Prüfsummen-Generatorpolynoms, das zur Bitfehlererkennung verwendet wird (je größer der minimale Hamming-Abstand hd ist, desto niedriger ist die Restfehlerrate)
    • - Eine Bitfehlerrate Pe in einem angenommenen Übertragungspfad, (je kleiner die Bitfehlerrate Pe ist, desto niedriger ist die Restfehlerrate)
  • Der Sicherheitskommunikationszyklus basiert auf einer akzeptablen Reaktionszeit. Die akzeptable Reaktionszeit wird auf Grundlage einer Sicherheitsreaktionszeit für das System festgelegt. Dann stellt ein Benutzer den Sicherheitskommunikationszyklus auf Grundlage der akzeptablen Reaktionszeit ein. Wenn in der Sicherheitskommunikation eine normale Sicherheits-PDU ohne Schaden innerhalb einer vorgegebenen Zeit (im Folgenden als tr bezeichnet) nicht empfangen wird, wird ein Übergang in einen Sicherheitszustand, so dass eine Einrichtung angehalten wird, ausgeführt. Um häufige Übergänge in den Sicherheitszustand aufgrund eines Bitfehlers o.ä. zu vermeiden, wird in vielen Fällen ein Sicherheitskommunikationszyklus Tsafety mit einer Marge versehen, so dass eine Vielzahl von Sicherheits-PDUs innerhalb von tr empfangen werden, und ein Wert, der um ein Vielfaches kleiner als tr ist, als der Sicherheitskommunikationszyklus Tsafety eingestellt wird.
  • In der vorliegenden Ausführungsform wird der Sicherheitskommunikationszyklus gemäß der Leistung des Übertragungspfads verlängert, solange eine Verfügbarkeit des Systems nicht beeinträchtigt wird. Beispiele einer Gleichung, die als Kriterium dafür dient, ob der Sicherheitskommunikationszyklus verlängert werden soll oder nicht, sind im Folgenden angegeben.
  • Die folgenden Gleichungen stellen dar, dass eine oder mehrere Sicherheits-PDUs innerhalb der vorgegebenen Zeit tr (Gleichung 1) übertragen werden und dass eine Rate des Auftretens eines Sicherheitsstopps aufgrund einer Anomalie der Sicherheits-PDU nicht unter einem erforderlichen Wert liegt (Gleichung 2).
  • In der vorliegenden Ausführungsform wird der Sicherheitskommunikationszyklus entspannt (erweitert), solange beide der folgenden zwei Gleichungen erfüllt sind.
  • [Formel 1] T s a f e t y < t r
    Figure DE112018007296B4_0001
    P f a u l t | T s a f e t y t r | × v < R f a u l t
    Figure DE112018007296B4_0002
    • - Tsafety: der Sicherheitskommunikationszyklus
    • - tr: ein erforderlicher Wert für ein Empfangsintervall der normalen Sicherheits-PDU
    • - Pfault: eine Wahrscheinlichkeit des Vorkommens der Anomalie der Sicherheits-PDU
    • - v: eine Sicherheits-PDU-Übertragungsrate
    • - Rfault: ein erforderlicher Wert einer Rate eines Auftretens eines Sicherheitsstopps aufgrund der Anomalie der Sicherheits-PDU
  • *** Beschreibung der Konfiguration ***
  • 1 stellt ein Beispiel für eine Konfiguration eines Sicherheitskommunikationssystems gemäß der vorliegenden Ausführungsform dar.
  • Das Sicherheitskommunikationssystem gemäß der vorliegenden Ausführungsform umfasst eine oder eine Vielzahl von Sicherheits-Master-Einrichtungen 10, eine oder eine Vielzahl von Sicherheits-Slave-Einrichtungen 20 und ein Netzwerk 30, das die Sicherheits-Master-Einrichtungen 10 und die Sicherheits-Slave-Einrichtungen 20 verbindet.
  • Die Sicherheits-Master-Einrichtung 10 und die Sicherheits-Slave-Einrichtung 20 erzeugen eine Eins-zu-Eins-Sicherheitsverbindung (eine logische Verbindung, die für die Sicherheitskommunikation verwendet wird) und führen die Sicherheitskommunikation durch. Die Sicherheits-Master-Einrichtung 10 und die Sicherheits-Slave-Einrichtung 20 sind jeweils z. B. eingebettete Einrichtungen.
  • Die Sicherheits-Master-Einrichtung 10 verwaltet die Sicherheits-Slave-Einrichtung 20.
  • Die Sicherheits-Slave-Einrichtung 20 ist z. B. mit einem Sicherheitssensor verbunden. Ferner steuert die Sicherheits-Slave-Einrichtung 20 z. B. einen Aktuator.
  • Die Sicherheits-Slave-Einrichtung 20 benachrichtigt die Sicherheits-Master-Einrichtung 10 in der Sicherheitskommunikation über einen Sensorwert des Sicherheitssensors. Ferner benachrichtigt die Sicherheits-Master-Einrichtung 10 z. B. die Sicherheits-Slave-Einrichtung 20 in der Sicherheitskommunikation über einen Steuerwert des Aktuators auf Grundlage des Sensorwertes des Sicherheitssensors. Dann steuert die Sicherheits-Slave-Einrichtung 20 den Aktuator unter Verwendung des von der Sicherheits-Master-Einrichtung 10 gemeldeten Steuerwerts. Das vorstehende Prozessverfahren muss innerhalb der Sicherheitsreaktionszeit abgeschlossen werden.
  • Obwohl in 1, wie oben beschrieben, ein Paar aus der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 dargestellt ist, ist jede der Anzahl von Sicherheits-Master-Einrichtungen 10 und der Anzahl von Sicherheits-Slave-Einrichtungen 20, die in das Sicherheitskommunikationssystem eingebunden sind, nicht auf ein Beispiel in 1 beschränkt.
  • Die Sicherheits-Master-Einrichtung 10 entspricht einer Master-Einrichtung. Die Sicherheits-Slave-Einrichtung 20 entspricht einer Slave-Einrichtung.
  • 2 stellt ein Beispiel für eine Hardwarekonfiguration für die Sicherheits-Master-Einrichtung 10 dar.
  • Die Sicherheits-Master-Einrichtung 10 umfasst einen Prozessor 101, einen Speicher 102, eine Feldkommunikationsschnittstelle 104 und einen Bus 105, der diese verbindet.
  • Die Sicherheits-Master-Einrichtung 10 ist ein Computer.
  • Der Prozessor 101 führt eine Sicherheitskommunikationsschicht aus, bei der es sich um ein Kommunikationsverarbeitungsprogramm handelt, das auf den Speicher 102 erweitert ist, um die Sicherheitskommunikation mit einer gegenüberliegenden Sicherheits-Slave-Einrichtung 20 über den Bus 105 und die Feldkommunikationsschnittstelle 104 durchzuführen.
  • 3 stellt ein Beispiel für eine Hardwarekonfiguration für die Sicherheits-Slave-Einrichtung 20 dar.
  • Die Sicherheits-Slave-Einrichtung 20 umfasst einen Prozessor 201, einen Speicher 202, eine Eingabe/Ausgabe-Schnittstelle 203, eine Feldkommunikationsschnittstelle 204 und einen Bus 205, der diese verbindet.
  • Die Sicherheits-Slave-Einrichtung 20 ist ein Computer.
  • Der Prozessor 201 führt eine Sicherheitskommunikationsschicht aus, bei der es sich um ein Kommunikationsverarbeitungsprogramm handelt, das auf den Speicher 202 erweitert ist, um die Sicherheitskommunikation mit einer gegenüberliegenden Sicherheits-Master-Einrichtung 10 über den Bus 205 und die Feldkommunikationsschnittstelle 204 durchzuführen.
  • Wie in 3 dargestellt, umfasst die Sicherheits-Slave-Einrichtung 20 die Eingabe/Ausgabe-Schnittstelle 203 zum Durchführen von Einrichtungssteuerung. Beispielsweise steuert die Sicherheits-Slave-Einrichtung 20 den Aktuator über die Eingabe/Ausgabe-Schnittstelle 203.
  • 4 stellt ein funktionales Konfigurationsbeispiel der Sicherheits-Master-Einrichtung 10 dar.
  • Die Sicherheits-Master-Einrichtung 10 umfasst eine Sicherheitskommunikationsschicht 1000 und eine Feldbusanwendungsschicht 1001.
  • Die Sicherheitskommunikationsschicht 1000 und die Feldbusanwendungsschicht 1001 werden durch ein Programm implementiert.
  • Die Sicherheitskommunikationsschicht 1000 steht mit einer im Folgenden beschriebenen Sicherheitskommunikationsschicht 2000 der gegenüberliegenden Sicherheits-Slave-Einrichtung 20 über die Feldbusanwendungsschicht 1001 in Verbindung.
  • Die Sicherheitskommunikationsschicht 1000 umfasst eine Sicherheitsanwendungsschnittstelleneinheit 10001, eine Sicherheitsverbindungsaufbauverarbeitungseinheit 10002, eine Sicherheits-PDU-Erzeugungseinheit 10003, eine Sicherheits-PDU-Inspektionseinheit 10004, eine Prüfsummenverhandlungseinheit 10005, eine Sicherheitsparameterverwaltungseinheit 10007 und eine Kommunikationszyklusverifizierungseinheit 10008.
  • Elemente, außer die Prüfsummenverhandlungseinheit 10005 und die Kommunikationszyklusverifizierungseinheit 10008, sind die gleichen wie Elemente, die in einer allgemeinen Sicherheitskommunikation verwendet werden.
  • Genauer gesagt, erzeugt die Sicherheits-PDU-Erzeugungseinheit 10003 die Sicherheits-PDU als Reaktion auf eine Anforderung von der Sicherheitsanwendungsschnittstelleneinheit 10001 oder der Sicherheitsverbindungsaufbauverarbeitungseinheit 10002.
  • Die Sicherheits-PDU-Inspektionseinheit 10004 empfängt über die Feldbusanwendungsschicht 1001 die an die Sicherheitsanwendungsschnittstelleneinheit 10001 oder die Sicherheitsverbindungsaufbauverarbeitungseinheit 10002 adressierte PDU und untersucht die empfangene Sicherheits-PDU.
  • Die Sicherheitsanwendungsschnittstelleneinheit 10001 empfängt und liefert eine übertragene und empfangene Sicherheits-PDU an die Benutzeranwendung.
  • Die Sicherheitsverbindungsaufbauverarbeitungseinheit 10002 führt einen Prozess zum Aufbauen der Sicherheitsverbindung mit der im Folgenden beschriebenen Sicherheitskommunikationsschicht 2000 der Sicherheits-Slave-Einrichtung 20 in einer vorgegebenen Kommunikationssequenz von einem Zustand aus, in dem Sicherheitsverbindung unterbrochen ist, durch.
  • Die Sicherheitsparameterverwaltungseinheit 10007 speichert einen Sicherheitsparameter der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20, der für die Sicherheitskommunikation verwendet wird. Als Sicherheitsparameter der Sicherheits-Master-Einrichtung 10 ist zumindest Folgendes nötig.
    • (1) Ein erforderlicher Wert des Sicherheitsgradlevels als ein System
    • (2) Folgende Werte für jede der Sicherheits-Slave-Einrichtungen 20:
      1. (A) Der Sicherheitskommunikationszyklus (kann von der Sicherheits-PDU-Übertragungsrate zurück gerechnet werden)
      2. (B) Eine Sicherheitsdatengröße
      3. (C) Identifikationsinformationen eines zu verwendenden Polynoms
      4. (D) Die Bitfehlerrate des Übertragungspfads (nur in einem Fall, in dem es einen nachgewiesenen Wert gibt)
  • Im Prozess des Aufbauens der Sicherheitsverbindung zwischen der Prüfsummenverhandlungseinheit 10005 und der Sicherheitskommunikationsschicht 2000 der gegenüberliegenden Sicherheits-Slave-Einrichtung 20 passt die Prüfsummenverhandlungseinheit 10005 ein CRC-Polynom, ein Übertragungsintervall, die Struktur der Sicherheits-PDU und Ähnliches, das für die Sicherheitskommunikation verwendet wird, an und entscheidet es.
  • Ferner wählt die Prüfsummenverhandlungseinheit 10005 aus einer Vielzahl von CRC-Polynomen einen Kandidaten für das Generatorpolynom aus, das bei einer Kommunikation zwischen der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 verwendet werden soll. Genauer gesagt, wählt die Prüfsummenverhandlungseinheit 10005 das CRC-Polynom mit einem maximalen Grad aus der Vielzahl von CRC-Polynomen aus. Im Folgenden wird das durch die Prüfsummenverhandlungseinheit 10005 ausgewählte CRC-Polynom als ein vorläufig ausgewähltes Polynom bezeichnet. Das vorläufig ausgewählte Polynom entspricht einem Kandidatenpolynom.
  • Wenn ferner bestimmt wird, dass eine Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 abgeschlossen ist, bezeichnet die Prüfsummenverhandlungseinheit 10005 das vorläufig ausgewählte Polynom als das Generatorpolynom, das in der Kommunikation zwischen der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 verwendet wird.
  • Die Prüfsummenverhandlungseinheit 10005 entspricht einer Auswahleinheit, einer Bestimmungseinheit und einer Kennzeichnungseinheit. Außerdem entspricht ein durch die Prüfsummenverhandlungseinheit 10005 durchgeführter Prozess einem Auswahlprozess, einem Bestimmungsprozess und einem Kennzeichnungsprozess.
  • Die Details des Betriebs der Prüfsummenverhandlungseinheit 10005 werden später beschrieben.
  • Die Kommunikationszyklusverifizierungseinheit 10008 verifiziert gemäß einer Anweisung von der Prüfsummenverhandlungseinheit 10005, ob ein Erzeugungsprozess und ein Inspektionsprozess der Sicherheits-PDU unter Verwendung des vorläufig ausgewählten Polynoms, das durch die Prüfsummenverhandlungseinheit 10005 ausgewählt wird, innerhalb des Sicherheitskommunikationszyklus durch die Sicherheitsparameter abgeschlossen sind oder nicht. Das heißt, dass die Kommunikationszyklusverifizierungseinheit 10008 bestimmt, ob die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Master-Einrichtung 10 zu einer vorgegebenen Frist (eine Endzeit des Sicherheitskommunikationszyklus) abgeschlossen ist oder nicht. Der vorstehend erwähnte Erzeugungsprozess der Sicherheits-PDU ist ein Prozess zum Erzeugen der zur Sicherheits-Slave-Einrichtung 20 zu übertragenden Sicherheits-PDU, wobei der Prozess die Erzeugung der CRC umfasst. Der vorstehend erwähnte Inspektionsprozess der Sicherheits-PDU ist ein Prozess zum Durchführen einer Inspektion unter Verwendung des CRC an der Sicherheits-PDU, die von der Sicherheits-Slave-Einrichtung 20 empfangen wurde.
  • Die Kommunikationszyklusverifizierungseinheit 10008 kann eine Prozesszeit messen, durch Emulieren des tatsächlichen Prozessbetriebs, und Verifizierung durchführen, ob der Erzeugungsprozess und der Inspektionsprozess der Sicherheits-PDU unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus abgeschlossen sind oder nicht. Ferner kann die Kommunikationszyklusverifizierungseinheit 10008 unter Verwendung einer vorläufig quantifizierten Berechnungsgleichung die Verifizierung durchführen, ob der Erzeugungsprozess und der Inspektionsprozess der Sicherheits-PDU unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus abgeschlossen sind oder nicht.
  • Obwohl verschiedene Verfahren als Verifizierungsverfahren betrachtet werden, soll die Kommunikationszyklusverifizierungseinheit 10008 in der vorliegenden Ausführungsform die Verifizierung durch Anwenden einer bestehenden Technik durchführen, und Einzelheiten des Verifizierungsverfahrens werden nicht beschrieben.
  • Darüber hinaus entspricht die Kommunikationszyklusverifizierungseinheit 10008 zusammen mit der Prüfsummenverhandlungseinheit 10005 und einer im Folgenden beschriebenen Kommunikationszyklusverifizierungseinheit 20008 der Sicherheits-Slave-Einrichtung 20, einer Bestimmungseinheit. Darüber hinaus entspricht ein durch die Kommunikationszyklusverifizierungseinheit 10008 durchgeführter Prozess zusammen mit dem durch die Prüfsummenverhandlungseinheit 10005 durchgeführten Prozess und einem später beschriebenen durch die Kommunikationszyklusverifizierungseinheit 20008 durchgeführten Prozess der Sicherheits-Slave-Einrichtung 20, einem Bestimmungsprozess.
  • 4 stellt einen Zustand schematisch dar, in dem der Prozessor 101 ein Programm ausführt, das Funktionen der Sicherheitskommunikationsschicht 1000 und der Feldbusanwendungsschicht 1001 implementiert.
  • Darüber hinaus bilden in der vorliegenden Ausführungsform die Prüfsummenverhandlungseinheit 10005, die Kommunikationszyklusverifizierungseinheit 10008 und die Kommunikationszyklusverifizierungseinheit 20008 der Sicherheits-Slave-Einrichtung 20 eine Informationsverarbeitungseinrichtung der vorliegenden Anmeldung.
  • 5 stellt ein funktionales Konfigurationsbeispiel der Sicherheits-Slave-Einrichtung 20 dar.
  • Die Sicherheits-Slave-Einrichtung 20 umfasst die Sicherheitskommunikationsschicht 2000 und eine Feldbusanwendungsschicht 2001.
  • Die Sicherheitskommunikationsschicht 2000 und die Feldbusanwendungsschicht 2001 werden durch ein Programm implementiert.
  • Die Sicherheitskommunikationsschicht 2000 steht mit der Sicherheitskommunikationsschicht 1000 der gegenüberliegenden Sicherheits-Master-Einrichtung 10 über die Feldbusanwendungsschicht 2001 in Verbindung.
  • Die Sicherheitskommunikationsschicht 2000 umfasst eine Sicherheitsanwendungsschnittstelleneinheit 20001, eine Sicherheitsverbindungsaufbauverarbeitungseinheit 20002, eine Sicherheits-PDU-Erzeugungseinheit 20003, eine Sicherheits-PDU-Inspektionseinheit 20004, eine Prüfsummenverhandlungseinheit 20005, eine Sicherheitsparameterverwaltungseinheit 20007 und die Kommunikationszyklusverifizierungseinheit 20008.
  • Eine Konfiguration der Sicherheitskommunikationsschicht 2000 ist die gleiche wie die der Sicherheitskommunikationsschicht 1000.
  • Da die Sicherheitsverbindungsaufbauverarbeitungseinheit 20002 und die Prüfsummenverhandlungseinheit 20005 gegenüber der Sicherheits-Master-Einrichtung 10 kommunizieren, unterscheidet sich ein Prozessablauf von dem der Sicherheitsverbindungsaufbauverarbeitungseinheit 10002 und der Prüfsummenverhandlungseinheit 10005.
  • Zwischen der Sicherheitskommunikationsschicht 2000 und der Sicherheitskommunikationsschicht 1000 werden im Folgenden andere Unterschiede beschrieben.
  • Die Sicherheitsparameterverwaltungseinheit 20007 enthält Sicherheitsparameter, die für die Sicherheits-Slave-Einrichtung 20 nötig sind.
  • Die in der Sicherheitsparameterverwaltungseinheit 20007 enthaltenen Sicherheitsparameter sind die Folgenden.
    • (1) Folgende Werte für die Sicherheits-Master-Einrichtung 10:
      1. (A) Der Sicherheitskommunikationszyklus (kann von der Sicherheits-PDU-Übertragungsrate zurück gerechnet werden)
      2. (B) Eine Sicherheitsdatengröße
      3. (C) Identifikationsinformationen des zu verwendenden Polynoms
  • Die Kommunikationszyklusverifizierungseinheit 20008 verifiziert gemäß einer Anweisung von der Prüfsummenverhandlungseinheit 20005, ob ein Erzeugungsprozess und ein Inspektionsprozess der Sicherheits-PDU unter Verwendung des vorläufig ausgewählten Polynoms, das durch die Prüfsummenverhandlungseinheit 10005 ausgewählt wird, innerhalb des Sicherheitskommunikationszyklus, vorgegeben durch die Sicherheitsparameter, abgeschlossen sind oder nicht. Das heißt, dass die Kommunikationszyklusverifizierungseinheit 20008 bestimmt, ob die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Slave-Einrichtung 20 zu der vorgegebenen Frist (eine Endzeit des Sicherheitskommunikationszyklus) abgeschlossen ist oder nicht. Außerdem ist der vorstehend erwähnte Erzeugungsprozess der Sicherheits-PDU ein Prozess zum Erzeugen der zur Sicherheits-Master-Einrichtung 10 zu übertragenden Sicherheits-PDU, wobei der Prozess eine Erzeugung der CRC umfasst. Der vorstehend erwähnte Inspektionsprozess der Sicherheits-PDU ist ein Prozess zum Durchführen von Inspektion unter Verwendung des CRC an der Sicherheits-PDU, die von der Sicherheits-Master-Einrichtung 10 empfangen wurde.
  • Im Allgemeinen ist die Anzahl der von der Sicherheits-Slave-Einrichtung 20 zu erzeugenden Sicherheitsverbindungen gering, so dass eine durch die Sicherheitskommunikation verursachte Belastung der Sicherheits-Slave-Einrichtung 20 gering ist. Da jedoch die Sicherheits-Slave-Einrichtung 20 auch über begrenzte Berechnungsressourcen verfügt, ist die oben erwähnte Verifizierung notwendig.
  • Darüber hinaus besteht eine Möglichkeit, dass die Sicherheits-Slave-Einrichtung 20 für das vorläufig ausgewählte Polynom, das von der Prüfsummenverhandlungseinheit 10005 ausgewählt wurde, nicht unterstützt wird. Somit verifiziert die Kommunikationszyklusverifizierungseinheit 20008 vor der Verifizierung am Sicherheitskommunikationszyklus, ob die Sicherheits-Slave-Einrichtung 20 für das vorläufig ausgewählte Polynom unterstützt wird oder nicht.
  • Für ein Verfahren zur Verifizierung des Sicherheitskommunikationszyklus werden keine Details beschrieben, da ein bestehendes Verfahren angewendet wird, wie bei der Kommunikationszyklusverifizierungseinheit 10008 der Sicherheits-Master-Einrichtung 10.
  • Wie vorstehend beschrieben, entspricht die Kommunikationszyklusverifizierungseinheit 20008 zusammen mit der Prüfsummenverhandlungseinheit 10005 und der Kommunikationszyklusverifizierungseinheit 10008 der Bestimmungseinheit. Außerdem entspricht der durch die Kommunikationszyklusverifizierungseinheit 20008 durchgeführte Prozess zusammen mit dem durch die Prüfsummenverhandlungseinheit 10005 durchgeführten Prozess und dem durch die Kommunikationszyklusverifizierungseinheit 10008 durchgeführten Prozess dem Bestimmungsprozess.
  • *** Beschreibung des Betriebs ***
  • 6, 7 und 8 sind Flussdiagramme, die Prozesse des Aufbauens der Sicherheitsverbindung gemäß der vorliegenden Ausführungsform darstellen.
  • In den 6, 7 und 8 dargestellte Prozesse entsprechen einem Informationsverarbeitungsverfahren und Prozessen eines Informationsverarbeitungsprogramms der vorliegenden Anmeldung.
  • In Schritt S001 wählt die Prüfsummenverhandlungseinheit 10005 der Sicherheits-Master-Einrichtung 10, die einen Aufbau der Sicherheitsverbindung leitet, vorläufig einen CRC-Polynom-Kandidaten auf Grundlage der Sicherheitsparameter aus.
  • Die Sicherheits-Master-Einrichtung 10 verwaltet eine Vielzahl von CRC-Polynomen, z. B. in einer in 9 dargestellten CRC-Polynom-Tabelle. In der CRC-Polynom-Tabelle von 9 sind ein Grad, ein minimaler Hamming-Abstand und ein Verteilungskoeffizient für jedes CRC-Polynom dargestellt. Durch Verwendung der CRC-Polynom-Tabelle von 9 kann die Restfehlerrate unter Bedingungen einer spezifischen Rahmenlänge und einer spezifischen Bitfehlerrate berechnet werden.
  • Es wird angenommen, dass in Schritt 5001 z.B. die Prüfsummenverhandlungseinheit 10005 das CRC-Polynom mit einem maximalen Grad auswählt, um der Restfehlerrate eine Marge zu geben.
  • In Schritt 5002 verifiziert die Kommunikationszyklusverifizierungseinheit 10008, ob die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Master-Einrichtung 10 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Zu diesem Zeitpunkt verifiziert die Kommunikationszyklusverifizierungseinheit 10008 unter Annahme eines gesamten als Sicherheits-Master-Einrichtung 10 auszuführenden Prozesses, ob der Erzeugungsprozess und der Inspektionsprozess der Sicherheits-PDU der Sicherheitsverbindung innerhalb eines eingestellten Sicherheitskommunikationszyklus abgeschlossen sind oder nicht, wobei der Erzeugungsprozess die Erzeugung einer Prüfsumme umfasst.
  • Wie vorstehend beschrieben, kann die Kommunikationszyklusverifizierungseinheit 10008 die Verifizierung durch Verwendung der unter Berücksichtigung des gesamten Prozesses der Sicherheits-Master-Einrichtung 10 erzeugten Berechnungsgleichung durchführen. Die Kommunikationszyklusverifizierungseinheit 10008 kann die Verifizierung auch durch Durchführung einer Simulation durchführen. Weiterhin kann die Kommunikationszyklusverifizierungseinheit 10008 auch den tatsächlichen Prozessbetrieb emulieren, eine Prozesszeit messen und die Verifizierung durchführen. Die Kommunikationszyklusverifizierungseinheit 10008 kann die Verifizierung unter Verwendung jeglicher bestehender Verifizierungsverfahren durchführen.
  • Wenn die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist (JA in Schritt S003), geht der Prozess weiter zu Schritt S004. Wenn andererseits die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus nicht abgeschlossen ist (NEIN in Schritt S003), geht der Prozess weiter zu Schritt S008.
  • In Schritt S004 verhandelt die Prüfsummenverhandlungseinheit 10005 mit der gegenüberliegenden Sicherheits-Slave-Einrichtung 20, die die Sicherheitsverbindung erzeugt, unabhängig davon, ob das vorläufig ausgewählte Polynom verwendbar ist oder nicht.
  • Konkret sendet die Prüfsummenverhandlungseinheit 10005 an die Sicherheits-Slave-Einrichtung 20 eine Nachricht, die die Identifikationsinformationen des vorläufig ausgewählten Polynoms enthält.
  • Schritt S004 ist für alle Sicherheits-Slave-Einrichtungen 20 implementiert, die die Sicherheitsverbindungen mit der Sicherheits-Master-Einrichtung 10 aufbauen.
  • In der Sicherheits-Slave-Einrichtung 20 empfängt die Prüfsummenverhandlungseinheit 20005 die Nachricht. Dann weist die Prüfsummenverhandlungseinheit 20005 die Kommunikationszyklusverifizierungseinheit 20008 an, das vorläufig ausgewählte Polynom zu verifizieren.
  • Die Kommunikationszyklusverifizierungseinheit 20008 verifiziert das vorläufig ausgewählte Polynom gemäß der Anweisung von der Prüfsummenverhandlungseinheit 20005. Konkret verifiziert die Kommunikationszyklusverifizierungseinheit 20008, ob die Sicherheits-Slave-Einrichtung 20 für die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms unterstützt wird oder nicht.
  • Wenn die Sicherheits-Slave-Einrichtung 20 für die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms unterstützt wird, prüft die Kommunikationszyklusverifizierungseinheit 20008 unter Berücksichtigung des Einflusses auf andere Prozesse, ob der Erzeugungsprozess und der Inspektionsprozess der Sicherheits-PDU unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen sind oder nicht.
  • Wenn bei den beiden oben genannten Verifizierungen kein Problem auftritt, überträgt die Prüfsummenverhandlungseinheit 20005 eine Antwortnachricht mit dem Hinweis „Zustimmung“ an die Sicherheits-Master-Einrichtung 10. Wenn andererseits bei mindestens einer der beiden oben genannten Verifizierungen ein Problem auftritt, überträgt die Prüfsummenverhandlungseinheit 20005 die Antwortnachricht mit dem Hinweis „Zustimmungsfehler“ an die Sicherheits-Master-Einrichtung 10.
  • In Schritt S005 prüft die Prüfsummenverhandlungseinheit 10005 die Antwortnachricht von der Sicherheits-Slave-Einrichtung 20, und wenn die Prüfsummenverhandlungseinheit 10005 die Antwortnachricht mit der Angabe „Zustimmung“ für alle Sicherheitsverbindungen empfängt (JA in Schritt S005), geht der Prozess weiter zu Schritt S006. Wenn die Prüfsummenverhandlungseinheit 10005 andererseits die Antwortnachricht mit der Angabe „Zustimmungsfehler“ empfängt (NEIN in Schritt S005), geht der Prozess weiter zu Schritt S008.
  • In Schritt S006 kennzeichnet die Prüfsummenverhandlungseinheit 10005 das vorläufig ausgewählte Polynom als das Generatorpolynom, das für die Kommunikation zwischen der Sicherheits-Master-Einrichtung 10 und allen Sicherheits-Slave-Einrichtungen 20 verwendet wird.
  • Dann überträgt die Prüfsummenverhandlungseinheit 10005 an die Prüfsummenverhandlungseinheiten 20005 aller Sicherheits-Slave-Einrichtungen 20 eine Nachricht, um mitzuteilen, dass das vorläufig ausgewählte Polynom, das als Generatorpolynom gekennzeichnet ist, für die Sicherheitskommunikation verwendet wird.
  • In Schritt S007 bauen die Sicherheitsverbindungsaufbauverarbeitungseinheit 1002 der Sicherheits-Master-Einrichtung 10 und die Sicherheitsverbindungsaufbauverarbeitungseinheit 2002 der Sicherheits-Slave-Einrichtung 20 die Sicherheitsverbindung auf, und dann wird die Sicherheitskommunikation unter Verwendung des in Schritt S006 gekennzeichneten Generatorpolynoms durchgeführt.
  • Die folgenden Schritte S008 bis S010 sind Phasen, in denen eine Änderung des vorläufig ausgewählten Polynoms in Betracht gezogen wird, wenn sich herausstellt, dass die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus nicht abgeschlossen werden kann.
  • In Schritt 5008 berechnet die Prüfsummenverhandlungseinheit 10005 die Restfehlerrate Asc (Pe) für jede Sicherheitsverbindung, wenn ein CRC-Polynom mit einem Grad kleiner als das vorläufig ausgewählte Polynom angewendet wird. Die Prüfsummenverhandlungseinheit 10005 berechnet die Restfehlerrate Asc (Pe) unter Verwendung des Berechnungsverfahrens, das durch die internationale Norm für die Sicherheitskommunikation definiert ist. In der vorliegenden Ausführungsform entfallen Beschreibungen eines spezifischen Verfahrens zur Berechnung der Restfehlerrate ΛSC (Pe). Die Prüfsummenverhandlungseinheit 10005 verwendet die Werte der Sicherheitsparameter für die für die Berechnung erforderlichen Werte wie den Sicherheitskommunikationszyklus, die Bitfehlerrate und dergleichen.
  • Außerdem müssen in Schritt S008 und nachfolgenden Schritten ein neues vorläufig ausgewähltes Polynom und ein formales Generatorpolynom nicht für alle Sicherheitsverbindungen das gleiche sein.
  • In Schritt S009 bestimmt die Prüfsummenverhandlungseinheit 10005, ob die in Schritt S008 erhaltene Restfehlerrate ΛSC (Pe), wie oben beschrieben, den erforderlichen Wert erfüllt oder nicht. In der vorliegenden Ausführungsform ist dieser erforderliche Wert ein durch die internationale Norm für die Sicherheitskommunikation definierter erforderlicher Wert. Somit wird in der vorliegenden Ausführungsform ein spezifischer Wert des erforderlichen Wertes nicht erwähnt.
  • In einem Fall, in dem die Restfehlerrate ΛSC (Pe) den erforderlichen Wert (JA in Schritt S009) erfüllt, d.h. in einem Fall, in dem selbst dann, wenn das CRC-Polynom in ein CRC-Polynom mit einem geringen Grad geändert wird, die Restfehlerrate Asc (Pe) den erforderlichen Wert des Sicherheitsgradlevels erfüllt, geht der Prozess weiter zu Schritt S010. Wenn andererseits die Restfehlerrate ΛSC (Pe) nicht den erforderlichen Wert (NEIN in Schritt S009) erfüllt, geht der Prozess weiter zu S011.
  • In Schritt S010 wählt die Prüfsummenverhandlungseinheit 10005 als das neue vorläufig ausgewählte Polynom ein CRC-Polynom mit einem Grad aus, der kleiner ist als der des aktuellen vorläufig ausgewählten Polynoms und mit einem Wert der Restfehlerrate ΛSC (Pe), der den erforderlichen Wert erfüllt.
  • Danach werden der Prozess von Schritt 5002 und die Prozesse nach Schritt 5002 für das neue vorläufig ausgewählte Polynom durchgeführt. Das heißt, es wird verifiziert, ob die Berechnung unter Verwendung des neuen vorläufig ausgewählten Polynoms in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Die folgenden Schritte S011 bis S013 sind Phasen zur Berücksichtigung einer Erweiterung des Sicherheitskommunikationszyklus.
  • Insbesondere wird in den Schritten S011 bis S013 die Erweiterung des Sicherheitskommunikationszyklus in Betracht gezogen, wenn die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms nicht innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist (NEIN in Schritt S003) oder wenn die Antwortnachricht, die „Zustimmungsfehler“ anzeigt, von einer der Sicherheits-Slave-Einrichtungen 20 empfangen wird (NEIN in Schritt S005), und ferner, wenn kein CRC-Polynom mit einem geringen Grad und mit der Restfehlerrate ΛSC (Pe), die den erforderlichen Wert erfüllt (NEIN in Schritt S009), vorhanden ist.
  • In Schritt S011 bestimmt die Prüfsummenverhandlungseinheit 10005, ob der Sicherheitskommunikationszyklus für jede der Sicherheitsverbindungen erweitert werden kann oder nicht. Das heißt, die Prüfsummenverhandlungseinheit 10005 bestimmt, ob eine notwendige Sicherheitsreaktionszeit und Verfügbarkeit auch dann aufrechterhalten werden kann, wenn der Sicherheitskommunikationszyklus der Sicherheitsverbindung erweitert wird.
  • Konkret bestimmt die Prüfsummenverhandlungseinheit 10005, ob der Sicherheitskommunikationszyklus durch Anwenden der vorstehend beschriebenen (Gleichung 1) und (Gleichung 2) erweitert werden kann oder nicht.
  • Wenn es die Sicherheitsverbindung gibt, für die der Sicherheitskommunikationszyklus erweitert werden kann (JA in Schritt S011), geht der Prozess weiter zu S012. Wenn es andererseits keine Sicherheitsverbindung gibt, für die der Sicherheitskommunikationszyklus nicht erweitert werden kann (NEIN in Schritt S011), geht der Prozess weiter zu S014.
  • In Schritt S012 wählt die Prüfsummenverhandlungseinheit 10005 die Sicherheitsverbindung mit einer maximalen Marge in einem Verhältnis aus, das eine Erweiterung des Sicherheitskommunikationszyklus erlaubt.
  • In Schritt S013 führt die Prüfsummenverhandlungseinheit 10005 die Erweiterung des Sicherheitskommunikationszyklus oder Teilung eines Datenrahmens für die in Schritt S012 ausgewählte Sicherheitsverbindung durch.
  • Die Prüfsummenverhandlungseinheit 10005 kann den Sicherheitskommunikationszyklus erweitern, solange die vorstehend beschriebene (Gleichung 1) und (Gleichung 2) erfüllt sind.
  • Die Prüfsummenverhandlungseinheit 10005 wählt als das neue vorläufig ausgewählte Polynom das aktuelle vorläufig ausgewählte Polynom der in Schritt S012 ausgewählten Sicherheitsverbindung aus. Und der Prozess von Schritt 5002 und Prozesse nach Schritt 5002 werden unter Verwendung eines Sicherheitskommunikationszyklus durchgeführt, der in Bezug auf das neue vorläufig ausgewählte Polynom erweitert ist. Das heißt, es wird verifiziert, ob die Berechnung unter Verwendung des neuen vorläufig ausgewählten Polynoms in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des erweiterten Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Ferner wird die Berechnungszeit durch Teilung des Datenrahmens verkürzt. Das heißt, die Prüfsummenverhandlungseinheit 10005 verkürzt eine Rahmenlänge jedes Datenrahmens durch Teilung des Datenrahmens und verlängert ein wesentliches Intervall, bis alle durch die Teilung erhaltenen geteilten Datenrahmen an einem Kommunikationsziel ankommen. Als Folge wird es möglich, das CRC-Polynom mit einem kleinen Grad zu verwenden und die Berechnungszeit kann verkürzt werden.
  • Die Prüfsummenverhandlungseinheit 10005 wählt als ein neues vorläufig ausgewähltes Polynom das aktuelle vorläufig ausgewählte Polynom der in Schritt S012 ausgewählten Sicherheitsverbindung aus. Danach werden der Prozess von Schritt S002 und die Prozesse nach Schritt 5002 unter Verwendung des neuen vorläufig ausgewählten Polynoms für die geteilten Datenrahmen durchgeführt. Das heißt, es wird verifiziert, ob die Berechnung unter Verwendung des neuen vorläufig ausgewählten Polynoms für die geteilten Datenrahmen in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • In Schritt S014 wird festgestellt, dass eine Sicherheitskommunikationseinstellung eingestellt ist, die aus Gründen der Prozessleistung der Sicherheits-Master-Einrichtung 10 oder der Sicherheits-Slave-Einrichtung 20 nicht implementierbar ist. Daher bestimmt die Prüfsummenverhandlungseinheit 10005, dass die Sicherheitsverbindung nicht aufgebaut werden kann, und benachrichtigt einen Benutzer der Sicherheits-Master-Einrichtung 10 über diese Tatsache.
  • *** Beschreibung der Wirkungen der Ausführungsform ***
  • Wie vorstehend beschrieben, wird in der vorliegenden Ausführungsform bestimmt, ob die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht. Dann, wenn die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist, wird das vorläufig ausgewählte Polynom als das Generatorpolynom gekennzeichnet. Somit ist es gemäß der vorliegenden Erfindung möglich, das Generatorpolynom zu kennzeichnen, das es ermöglicht, dass die CRC-Berechnung innerhalb des Sicherheitskommunikationszyklus auch unter einer Bedingung abgeschlossen wird, bei der die Berechnungsressourcen begrenzt sind.
  • Zweite Ausführungsform
  • In der ersten Ausführungsform veranlasst die Sicherheits-Master-Einrichtung 10 die Sicherheits-Slave-Einrichtung 20 zu bestimmen, ob die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht und kennzeichnet das Generatorpolynom.
  • In der vorliegenden Ausführungsform wird ein Beispiel beschrieben, in dem die Sicherheits-Master-Einrichtung 10 bestimmt, ob die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht. Genauer gesagt, in der vorliegenden Ausführungsform erwirbt die Sicherheits-Master-Einrichtung 10 von der Sicherheits-Slave-Einrichtung 20 Informationen (im Folgenden Berechnungsfähigkeitsinformationen) über die Berechnungsfähigkeit der Sicherheits-Slave-Einrichtung 20. Dann bestimmt die Sicherheits-Master-Einrichtung 10 auf Grundlage der Berechnungsfähigkeitsinformationen der Sicherheits-Slave-Einrichtung 20, ob die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • *** Beschreibung der Konfiguration ***
  • Ein Beispiel für eine Konfiguration des Sicherheitskommunikationssystems gemäß der vorliegenden Ausführungsform ist wie in 1 dargestellt.
  • Auch ein Beispiel für eine Hardware-Konfiguration der Sicherheits-Master-Einrichtung 10 gemäß der vorliegenden Ausführungsform ist wie in 2 dargestellt.
  • Außerdem ist ein Beispiel für eine Hardware-Konfiguration der Sicherheits-Slave-Einrichtung 20 gemäß der vorliegenden Ausführungsform wie in 3 dargestellt.
  • Außerdem ist ein funktionales Konfigurationsbeispiel der Sicherheits-Master-Einrichtung 10 gemäß der vorliegenden Ausführungsform wie in 4 dargestellt.
  • Außerdem ist ein funktionales Konfigurationsbeispiel der Sicherheits-Slave-Einrichtung 20 gemäß der vorliegenden Ausführungsform wie in 5 dargestellt.
  • Zudem, obwohl in der ersten Ausführungsform die Prüfsummenverhandlungseinheit 10005, die Kommunikationszyklusverifizierungseinheit 10008 und die Kommunikationszyklusverifizierungseinheit 20008 der Bestimmungseinheit entsprechen, entsprechen in der vorliegenden Ausführungsform nur die Prüfsummenverhandlungseinheit 10005 und die Kommunikationszyklusverifizierungseinheit 10008 der Bestimmungseinheit. Weiterhin, obwohl in der ersten Ausführungsform die Prüfsummenverhandlungseinheit 10005, die Kommunikationszyklusverifizierungseinheit 10008 und die Kommunikationszyklusverifizierungseinheit 20008 die Informationsverarbeitungseinrichtung konfigurieren, konfiguriert in der vorliegenden Ausführungsform die Prüfsummenverhandlungseinheit 10005 und die Kommunikationszyklusverifizierungseinheit 10008 die Informationsverarbeitungseinrichtung.
  • *** Beschreibung des Betriebs ***
  • Der Prozess des Aufbauens der Sicherheitsverbindung gemäß der vorliegenden Ausführungsform ist wie in 10 dargestellt. In 10 sind Prozesse mit den gleichen Bezugszeichen wie in 6 die gleichen wie die in 6 dargestellten. Im Folgenden werden im Wesentlichen Unterschiede zur ersten Ausführungsform beschrieben. Dinge, die im Folgenden nicht beschrieben werden, sind denen der ersten Ausführungsform gleich.
  • Die in 10 dargestellten Prozesse entsprechen einem Informationsverarbeitungsverfahren und Prozessen des Informationsverarbeitungsprogramms der vorliegenden Anmeldung.
  • In Schritt S021 fordert die Prüfsummenverhandlungseinheit 10005 der Sicherheits-Master-Einrichtung 10 alle Sicherheits-Slave-Einrichtungen 20 an, die die Sicherheitskommunikation durchführen, um die Berechnungsfähigkeitsinformationen für jedes CRC-Polynom zu übertragen.
  • Die Prüfsummenverhandlungseinheit 20005 jeder Sicherheits-Slave-Einrichtung 20 weist die Kommunikationszyklusverifizierungseinheit 20008 an, die Berechnungsfähigkeitsinformationen zu erzeugen. Die Kommunikationszyklusverifizierungseinheit 20008 erzeugt die Berechnungsfähigkeitsinformationen und überträgt die erzeugten Berechnungsfähigkeitsinformationen an die Sicherheits-Master-Einrichtung 10. Die Berechnungsfähigkeitsinformationen sind Informationen, die den Kommunikationszyklus anzeigen, der die Sicherheits-Slave-Einrichtung 20 umsetzt, wenn jedes CRC-Polynom angewendet wird. 11 stellt ein Beispiel der Berechnungsfähigkeitsinformationen dar. Da die Berechnungsfähigkeit je nach dem Prozess, der durch die Sicherheits-Slave-Einrichtung 20 im Sicherheitskommunikationssystem ausgeführt werden soll, variiert, ist der in 11 dargestellte „realisierbare Kommunikationszyklus“ nicht immer ein fester Wert.
  • In Schritt S022 empfängt die Prüfsummenverhandlungseinheit 10005 der Sicherheits-Master-Einrichtung 10 die Berechnungsfähigkeitsinformationen von der Sicherheits-Slave-Einrichtung 20.
  • In Schritt S001 wählt die Prüfsummenverhandlungseinheit 10005 vorläufig einen CRC-Polynom-Kandidaten aus. Die Prüfsummenverhandlungseinheit 10005 wählt z. B. wie bei der ersten Ausführungsform ein CRC-Polynom mit einem maximalen Grad aus.
  • In Schritt 5002 verifiziert die Kommunikationszyklusverifizierungseinheit 10008 wie bei der ersten Ausführungsform, ob die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Master-Einrichtung 10 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Wenn die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist (JA in Schritt S003), geht der Prozess weiter zu Schritt S023. Wenn andererseits die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus nicht abgeschlossen ist (NEIN in Schritt S003), geht der Prozess weiter zu Schritt S008. Da der Prozess von Schritt S008 und die Prozesse nach Schritt S008 in der ersten Ausführungsform beschrieben sind, entfallen Erklärungen derselben.
  • In Schritt S023 verifiziert die Kommunikationszyklusverifizierungseinheit 10008 auf Grundlage der in Schritt S022 empfangenen Berechnungsfähigkeitsinformationen, ob die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Schritt S023 ist für alle Sicherheits-Slave-Einrichtungen 20 implementiert, die die Sicherheitsverbindungen mit der Sicherheits-Master-Einrichtung 10 aufbauen.
  • Wenn die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist (JA in Schritt S024), geht der Prozess weiter zu Schritt S006. Wenn andererseits die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus nicht abgeschlossen ist (NEIN in Schritt S024), geht der Prozess weiter zu Schritt S008. Da der Prozess von Schritt S006 und die Prozesse nach Schritt S006 im Prozess von Schritt S008 und den Prozessen nach Schritt S008 in der ersten Ausführungsform beschrieben sind, entfallen Erklärungen derselben.
  • *** Beschreibung der Wirkung der Ausführungsform ***
  • In der vorliegenden Ausführungsform verifiziert die Sicherheits-Master-Einrichtung 10, ob die CRC-Berechnung in der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht. Das heißt, es wird verifiziert, ob die CRC-Berechnung in der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus ohne Verwendung der Berechnungsressourcen der Sicherheits-Slave-Einrichtung 20 abgeschlossen ist oder nicht. Somit ist es gemäß der vorliegenden Ausführungsform möglich, selbst wenn die Berechnungsressourcen der Sicherheits-Slave-Einrichtung 20 begrenzt sind, das Generatorpolynom zu kennzeichnen, das es ermöglicht, dass die CRC-Berechnung innerhalb des Sicherheitskommunikationszyklus abgeschlossen wird.
  • Dritte Ausführungsform
  • In der ersten und zweiten Ausführungsform wird in der Sicherheits-Master-Einrichtung 10, wie in der CRC-Polynom-Tabelle von 9 dargestellt, ein einzelnes CRC-Polynom als Auswahl des vorläufig ausgewählten Polynoms verwaltet.
  • In der vorliegenden Ausführungsform wird, wie in einer CRC-Polynom-Tabelle von 12 dargestellt, eine Kombination aus einer Vielzahl von CRC-Polynomen als Auswahl des vorläufig ausgewählten Polynoms verwaltet. Das heißt, in der vorliegenden Ausführungsform werden eine Vielzahl von verschiedenen Prüfsummen zu einer Sicherheits-PDU hinzugefügt.
  • Wenn Hardware, auf der die Sicherheitskommunikationsschicht 1000 arbeitet, und Hardware, auf der die Sicherheitskommunikationsschicht 2000 arbeitet, gemultiplext werden, können die Prüfsummen parallel berechnet werden. Daher wird das Hinzufügen einer Vielzahl von Prüfsummen, die unter Verwendung von CRC-Polynomen mit einem geringen Grad erzeugt werden, zur Sicherheits-PDU als wünschenswerter erachtet als das Hinzufügen einer einzelnen Prüfsumme, die unter Verwendung eines CRC-Polynoms mit einem hohen Grad erzeugt wird, zur Sicherheits-PDU. Das heißt, wenn die Vielzahl von Prüfsummen, die unter Verwendung der CRC-Polynome mit dem kleinen Grad erzeugt werden, zur Sicherheits-PDU hinzugefügt werden, kann die Berechnungszeit verkürzt werden, während eine gleiche Restfehlerrate als eine Restfehlerrate in einem Fall gewährleistet wird, in dem die unter Verwendung des CRC-Polynoms erzeugte einzelne Prüfsumme mit dem großen Grad zur Sicherheits-PDU hinzugefügt wird. Daher wird in Betracht gezogen, die Auswahlmöglichkeiten des vorläufig ausgewählten Polynoms durch eine Erweiterung der CRC-Polynom-Tabelle zu erhöhen, wie in 12 dargestellt.
  • Vierte Ausführungsform
  • In der ersten Ausführungsform führt die Sicherheits-Master-Einrichtung 10 zum Zeitpunkt des Aufbaus der Sicherheitsverbindung die in den 6 bis 8 dargestellten Prozesse zur Kennzeichnung des Generatorpolynoms durch.
  • Ein Ergebnis der in den 6 bis 8 dargestellten Prozesse ist jedoch jedes Mal das gleiche Ergebnis, wenn sich an einer Konfiguration des Sicherheitskommunikationssystems, den Sicherheitsparametern und einem Zustand des Netzwerks 30 nichts ändert. Wenn also die in den 6 bis 8 dargestellten Prozesse durchgeführt werden und das Generatorpolynom für jede Sicherheitsverbindung entsprechend der Konfiguration des Sicherheitskommunikationssystems, des Sicherheitsparameters und des Zustands des Netzwerks 30 im Voraus gekennzeichnet wird, ist es nicht notwendig, die in den 6 bis 8 dargestellten Prozesse jedes Mal zu wiederholen, wenn die Sicherheitsverbindung aufgebaut werden soll.
  • In der vorliegenden Ausführungsform wird ein Beispiel beschrieben, in dem eine Informationsverarbeitungseinrichtung, die sich von der Sicherheits-Master-Einrichtung 10 unterscheidet, die in den 6 bis 8 dargestellten Prozesse durchführt, um das Generatorpolynom im Vorhinein zu kennzeichnen.
  • Dann benachrichtigt die Informationsverarbeitungseinrichtung die Sicherheits-Master-Einrichtung 10 über das gekennzeichnete Generatorpolynom. Die Sicherheits-Master-Einrichtung 10 wendet das von der Informationsverarbeitungseinrichtung mitgeteilte Generatorpolynom auf die Sicherheitskommunikation an.
  • *** Beschreibung der Konfiguration ***
  • 13 stellt ein Beispiel für eine Hardwarekonfiguration einer Informationsverarbeitungseinrichtung 50 gemäß der vorliegenden Ausführungsform dar.
  • Die Informationsverarbeitungseinrichtung 50 umfasst einen Prozessor 501, einen Speicher 502, eine Kommunikationsschnittstelle 503 und einen Bus 504, der diese verbindet.
  • Die Informationsverarbeitungseinrichtung 50 ist ein Computer.
  • Der Prozessor 501 führt eine Auswahleinheit 5001, eine Bestimmungseinheit 5002 und eine auf den Speicher 102 erweiterte Kennzeichnungseinheit 5003 aus, die im Folgenden beschrieben werden.
  • Die Auswahleinheit 5001, die Bestimmungseinheit 5002 und die Kennzeichnungseinheit 5003 werden z.B. durch ein Programm implementiert.
  • Die Kommunikationsschnittstelle 503 benachrichtigt die Sicherheits-Master-Einrichtung 10 über das gekennzeichnete Generatorpolynom.
  • 14 stellt ein funktionales Konfigurationsbeispiel der Informationsverarbeitungseinrichtung 50 dar.
  • Die Informationsverarbeitungseinrichtung 50 umfasst die Auswahleinheit 5001, die Bestimmungseinheit 5002 und die Kennzeichnungseinheit 5003.
  • 14 stellt einen Zustand schematisch dar, in dem der Prozessor 501 das Programm ausführt, das Funktionen der Auswahleinheit 5001, der Bestimmungseinheit 5002 und der Kennzeichnungseinheit 5003 implementiert.
  • Die Auswahleinheit 5001 wählt aus einer Vielzahl von CRC-Polynomen einen Kandidaten für ein Generatorpolynom aus, das bei einer Kommunikation zwischen der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 verwendet werden soll. Auch wird in der vorliegenden Ausführungsform das von der Auswahleinheit 5001 ausgewählte CRC-Polynom als vorläufig ausgewähltes Polynom bezeichnet.
  • Ein durch die Auswahleinheit 5001 durchgeführter Prozess entspricht dem Auswahlprozess.
  • Die Bestimmungseinheit 5002 bestimmt, ob eine Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Master-Einrichtung 10 und in der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Die Bestimmungseinheit 5002 enthält z.B. die in 11 dargestellten Berechnungsfähigkeitsinformationen für die Sicherheits-Master-Einrichtung10 und jede Sicherheits-Slave-Einrichtung 20. Dann bestimmt die Bestimmungseinheit 5002 unter Verwendung der Berechnungsfähigkeitsinformationen, ob die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Ein durch die Bestimmungseinheit 5002 durchgeführter Prozess entspricht dem Bestimmungsprozess.
  • Wenn durch die Bestimmungseinheit 5002 bestimmt wird, dass die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 abgeschlossen ist, kennzeichnet die Kennzeichnungseinheit 5003 das vorläufig ausgewählte Polynom als Generatorpolynom.
  • Ferner benachrichtigt die Kennzeichnungseinheit 5003 die Sicherheits-Master-Einrichtung 10 über das gekennzeichnete Generatorpolynom über die Kommunikationsschnittstelle 503.
  • Ein durch die Kennzeichnungseinheit 5003 durchgeführter Prozess entspricht dem Kennzeichnungsprozess.
  • *** Beschreibung des Betriebs ***
  • 15 stellt ein Betriebsbeispiel der Informationsverarbeitungseinrichtung 500 gemäß der vorliegenden Ausführungsform dar.
  • In 15 dargestellte Prozesse entsprechen dem Informationsverarbeitungsverfahren und Prozessen des Informationsverarbeitungsprogramms der vorliegenden Anmeldung.
  • In Schritt S041 wählt die Auswahleinheit 5001 vorläufig einen CRC-Polynom-Kandidaten aus. Die Auswahleinheit 5001 wählt z. B. wie in Schritt S001 der ersten Ausführungsform ein CRC-Polynom mit einem maximalen Grad aus.
  • In Schritt S042 verifiziert die Bestimmungseinheit 5002 auf Grundlage der Berechnungsfähigkeitsinformationen auf der Sicherheits-Master-Einrichtung 10, ob die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Master-Einrichtung 10 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Wenn die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Master-Einrichtung 10 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist (JA in Schritt S043), geht der Prozess weiter zu Schritt S044. Wenn andererseits die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms innerhalb des Sicherheitskommunikationszyklus nicht abgeschlossen ist (NEIN in Schritt S043), geht der Prozess weiter zu Schritt 5008 in 7.
  • In Schritt S044 verifiziert die Bestimmungseinheit 5002 auf Grundlage der Berechnungsfähigkeitsinformationen auf der Sicherheits-Slave-Einrichtung 20, ob die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Schritt S044 ist für alle Sicherheits-Slave-Einrichtungen 20 implementiert, die die Sicherheitsverbindungen mit der Sicherheits-Master-Einrichtung 10 aufbauen.
  • Wenn die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in allen Sicherheits-Slave-Einrichtungen 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist (JA in Schritt S045), geht der Prozess weiter zu Schritt S046. Wenn andererseits die CRC-Berechnung unter Verwendung des vorläufig ausgewählten Polynoms in einer Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus nicht abgeschlossen ist (NEIN in Schritt S045), geht der Prozess weiter zu Schritt S008 in 7.
  • In Schritt S046 kennzeichnet die Kennzeichnungseinheit 5003 das vorläufig ausgewählte Polynom als das Generatorpolynom, das für die Kommunikation zwischen der Sicherheits-Master-Einrichtung 10 und allen Sicherheits-Slave-Einrichtungen 20 verwendet wird.
  • Dann überträgt die Kennzeichnungseinheit 5003 eine Nachricht, die das gekennzeichnete Generatorpolynom in Schritt S047 an die Sicherheits-Master-Einrichtung 10 meldet.
  • In der vorliegenden Ausführungsform berechnet die Bestimmungseinheit 5002 in Schritt S008 von 7 die Restfehlerrate Asc (Pe) für jede der Sicherheitsverbindungen, wenn ein CRC-Polynom mit einem Grad kleiner als das vorläufig ausgewählte Polynom angewendet wird. Die Kennzeichnungseinheit 5003 berechnet die Restfehlerrate Asc (Pe) unter Verwendung des Berechnungsverfahrens, das durch die internationale Norm für die Sicherheitskommunikation definiert ist. In der vorliegenden Ausführungsform entfallen Beschreibungen eines spezifischen Verfahrens zur Berechnung der Restfehlerrate Asc (Pe). Die Kennzeichnungseinheit 5003 verwendet die Werte der Sicherheitsparameter für die Werte wie den Sicherheitskommunikationszyklus, die Bitfehlerrate und dergleichen für die Berechnung.
  • Außerdem müssen in Schritt S008 und nachfolgenden Schritten das neue vorläufig ausgewählte Polynom und ein formales Generatorpolynom nicht für alle Sicherheitsverbindungen das gleiche sein.
  • In Schritt S009 bestimmt die Bestimmungseinheit 5002, ob die in Schritt S008 erhaltene Restfehlerrate ΛSC (Pe), wie oben beschrieben, den erforderlichen Wert erfüllt oder nicht. In der vorliegenden Ausführungsform ist dieser erforderliche Wert ein durch die internationale Norm für die Sicherheitskommunikation definierter erforderlicher Wert. Somit wird in der vorliegenden Ausführungsform ein spezifischer Wert des erforderlichen Wertes nicht erwähnt.
  • In einem Fall, in dem die Restfehlerrate ΛSC (Pe) den erforderlichen Wert (JA in Schritt S009) erfüllt, d.h. in einem Fall, in dem selbst dann, wenn das CRC-Polynom in ein CRC-Polynom mit einem geringeren Grad geändert wird, die Restfehlerrate Asc (Pe) den erforderlichen Wert des Sicherheitsgradlevels erfüllt, geht der Prozess weiter zu Schritt S010. Wenn andererseits die Restfehlerrate ΛSC (Pe) nicht den erforderlichen Wert (NEIN in Schritt S009) erfüllt, geht der Prozess weiter zu S011.
  • In Schritt S010 wählt die Bestimmungseinheit 5002 als das neue vorläufig ausgewählte Polynom ein CRC-Polynom mit einem Grad aus, der kleiner ist als der des aktuellen vorläufig ausgewählten Polynoms und mit dem Wert der Restfehlerrate ΛSC (Pe), die den erforderlichen Wert erfüllt.
  • Danach werden der Prozess von Schritt S042 und die Prozesse nach Schritt S042 für das neue vorläufig ausgewählte Polynom durchgeführt. Das heißt, es wird verifiziert, ob die Berechnung unter Verwendung des neuen vorläufig ausgewählten Polynoms in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • In den Schritten S011 bis S013 wird eine Erweiterung des Sicherheitskommunikationszyklus in Betracht gezogen, wenn die Berechnung unter Verwendung des vorläufig ausgewählten Polynoms nicht innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist (NEIN in Schritt S043) oder wenn die Antwortnachricht, die „Zustimmungsfehler“ anzeigt, von einer der Sicherheits-Slave-Einrichtungen 20 empfangen wird (NEIN in Schritt S045), und ferner, wenn kein CRC-Polynom mit der Restfehlerrate Asc (Pe), die den erforderlichen Wert erfüllt (NEIN in Schritt S009), vorhanden ist.
  • In Schritt S011 bestimmt die Bestimmungseinheit 5002, ob der Sicherheitskommunikationszyklus für jede der Sicherheitsverbindungen erweitert werden kann oder nicht. Das heißt, die Bestimmungseinheit 5002 bestimmt, ob eine notwendige Sicherheitsreaktionszeit und Verfügbarkeit auch dann aufrechterhalten werden kann, wenn der Sicherheitskommunikationszyklus der Sicherheitsverbindung erweitert ist.
  • Konkret bestimmt die Bestimmungseinheit 5002, ob der Sicherheitskommunikationszyklus durch Anwenden der vorstehend beschriebenen (Gleichung 1) und (Gleichung 2) erweitert werden kann oder nicht.
  • Wenn es eine Sicherheitsverbindung gibt, für die der Sicherheitskommunikationszyklus erweitert werden kann (JA in Schritt S011), geht der Prozess weiter zu S012. Wenn es andererseits keine Sicherheitsverbindung gibt, für die der Sicherheitskommunikationszyklus erweitert werden kann (NEIN in Schritt S011), geht der Prozess weiter zu S014.
  • In Schritt S012 wählt die Bestimmungseinheit 5002 die Sicherheitsverbindung mit einer maximalen Marge in einem Verhältnis aus, das eine Erweiterung des Sicherheitskommunikationszyklus erlaubt.
  • In Schritt S013 führt die Bestimmungseinheit 5002 die Erweiterung des Sicherheitskommunikationszyklus oder Teilung eines Datenrahmens für die in Schritt S012 ausgewählte Sicherheitsverbindung durch.
  • Die Bestimmungseinheit 5002 kann den Sicherheitskommunikationszyklus erweitern, solange die vorstehend beschriebene (Gleichung 1) und (Gleichung 2) erfüllt sind.
  • Die Bestimmungseinheit 5002 wählt als ein neues vorläufig ausgewähltes Polynom das aktuelle vorläufig ausgewählte Polynom der in Schritt S012 ausgewählten Sicherheitsverbindung aus. Dann werden der Prozess von Schritt 5002 und die Prozesse nach Schritt 5002 unter Verwendung eines Sicherheitskommunikationszyklus durchgeführt, der in Bezug auf das neue vorläufig ausgewählte Polynom erweitert ist. Das heißt, es wird verifiziert, ob die Berechnung unter Verwendung des neuen vorläufig ausgewählten Polynoms in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des erweiterten Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • Ferner wird die Berechnungszeit durch Teilung des Datenrahmens verkürzt. Das heißt, die Bestimmungseinheit 5002 verkürzt eine Rahmenlänge jedes Datenrahmens durch Teilung des Datenrahmens und verlängert ein wesentliches Intervall, bis alle durch die Teilung erhaltenen geteilten Datenrahmen an einem Kommunikationsziel ankommen. Als Folge wird es möglich, das CRC-Polynom mit einem kleinen Grad zu verwenden und die Berechnungszeit kann verkürzt werden.
  • Die Bestimmungseinheit 5002 wählt als das neue vorläufig ausgewählte Polynom das aktuelle vorläufig ausgewählte Polynom der in Schritt S012 ausgewählten Sicherheitsverbindung aus. Danach werden der Prozess von Schritt S002 und die Prozesse nach Schritt S002 unter Verwendung des neuen vorläufig ausgewählten Polynoms für die geteilten Datenrahmen durchgeführt. Das heißt, es wird verifiziert, ob die Berechnung unter Verwendung des neuen vorläufig ausgewählten Polynoms für die geteilten Datenrahmen in jeder der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist oder nicht.
  • In Schritt S014 wird festgestellt, dass eine Sicherheitskommunikationseinstellung eingestellt ist, die aus Gründen der Prozessleistung der Sicherheits-Master-Einrichtung 10 oder der Sicherheits-Slave-Einrichtung 20 nicht implementierbar ist. Daher bestimmt die Bestimmungseinheit 5002, dass die Sicherheitsverbindung nicht aufgebaut werden kann, und benachrichtigt die Sicherheits-Master-Einrichtung 10 über diese Tatsache.
  • *** Beschreibung der Wirkung der Ausführungsform ***
  • In der vorliegenden Ausführungsform verifiziert die Informationsverarbeitungseinrichtung 50, ob die CRC-Berechnungen in der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus abgeschlossen sind oder nicht. Das heißt, es wird verifiziert, ob die CRC-Berechnungen in der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 innerhalb des Sicherheitskommunikationszyklus ohne Verwendung der Berechnungsressourcen der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 abgeschlossen sind oder nicht. Somit ist es gemäß der vorliegenden Ausführungsform möglich, selbst wenn die Berechnungsressourcen der Sicherheits-Master-Einrichtung 10 und der Sicherheits-Slave-Einrichtung 20 begrenzt sind, das Generatorpolynom zu kennzeichnen, das es ermöglicht, dass die CRC-Berechnung innerhalb des Sicherheitskommunikationszyklus abgeschlossen wird.
  • Obwohl die Ausführungsformen der vorliegenden Erfindung vorstehend beschrieben wurden, können zwei oder mehr dieser Ausführungsformen zur Implementierung kombiniert werden.
  • Alternativ kann eine dieser Ausführungsformen teilweise implementiert werden.
  • Alternativ können zwei oder mehr dieser Ausführungsformen zur Implementierung kombiniert werden.
  • Außerdem ist die vorliegende Erfindung nicht auf diese Ausführungsformen beschränkt und im Bedarfsfall können verschiedene Modifikationen vorgenommen werden.
  • *** Beschreibung der Hardwarekonfiguration ***
  • Schließlich werden ergänzende Beschreibungen der Hardware-Konfigurationen der Sicherheits-Master-Einrichtung 10, der Sicherheits-Slave-Einrichtung 20 und der Informationsverarbeitungseinrichtung 50 gegeben.
  • Der Prozessor 101, der Prozessor 201 und der Prozessor 501 sind ICs (Integrated Circuits - Integrierte Schaltungen), die eine Verarbeitung durchführen.
  • Der Prozessor 101, der Prozessor 201 und der Prozessor 501 sind CPUs (Central Processing Units - Zentrale Verarbeitungseinheiten), DSPs (Digital Signal Processors - Digitalsignalprozessoren) oder dergleichen.
  • Der Speicher 102, der Speicher 202 und der Speicher 502 sind RAMs (Random Access Memories), ROMs (Read Only Memories), Flash-Speicher, HDDs (Hard Disk Drives) oder dergleichen.
  • Die Feldkommunikationsschnittstelle 104, die Feldkommunikationsschnittstelle 204, und die Kommunikationsschnittstelle 503 sind elektronische Schaltungen, die Kommunikationsprozesse von Daten ausführen.
  • Die Feldkommunikationsschnittstelle 104, die Feldkommunikationsschnittstelle 204, und die Kommunikationsschnittstelle 503 sind z. B. Kommunikationschips oder NICs (Network Interface Cards).
  • Ferner ist im Speicher 102 auch ein OS (Operating System - Betriebssystem) gespeichert.
  • Dann wird zumindest ein Teil des OS durch den Prozessor 101 ausgeführt.
  • Während zumindest der Teil des OS ausgeführt wird, führt der Prozessor 101 ein Programm aus, das Funktionen der Sicherheitskommunikationsschicht 1000 und der Feldbusanwendungsschicht 1001 implementiert.
  • Der Prozessor 101 führt das OS so aus, dass Aufgabenverwaltung, Speicherverwaltung, Dateiverwaltung, Kommunikationssteuerung und dergleichen durchgeführt werden.
  • Außerdem wird zumindest eines von Informationen, Daten, eines Signalwertes und eines variablen Wertes, das die Verarbeitungsergebnisse der Sicherheitskommunikationsschicht 1000 und der Feldbusanwendungsschicht 1001 anzeigt, in zumindest einem des Speichers 102, eines Registers im Prozessor 101 und eines Cache-Speichers im Prozessor 101 gespeichert.
  • Außerdem kann das Programm, das die Funktionen der Sicherheitskommunikationsschicht 1000 und der Feldbusanwendungsschicht 1001 implementiert, in einem tragbaren Speichermedium wie einer Magnetplatte, einer flexiblen Platte, einer optischen Platte, einer Compact Disk, einer Blu-ray-Disk (eingetragenes Warenzeichen), einer DVD oder ähnlichem gespeichert werden.
  • Ferner ist im Speicher 202 auch ein OS gespeichert.
  • Dann wird zumindest ein Teil des OS wird durch den Prozessor 201 ausgeführt.
  • Während zumindest der Teil des OS ausgeführt wird, führt der Prozessor 201 ein Programm aus, das Funktionen der Sicherheitskommunikationsschicht 2000 und der Feldbusanwendungsschicht 2001 implementiert.
  • Der Prozessor 201 führt das OS so aus, dass Aufgabenverwaltung, Speicherverwaltung, Dateiverwaltung, Kommunikationssteuerung und dergleichen durchgeführt werden.
  • Außerdem wird zumindest eine von Informationen, Daten, eines Signalwertes und eines variablen Wertes, das die Verarbeitungsergebnisse der Sicherheitskommunikationsschicht 2000 und der Feldbusanwendungsschicht 2001 anzeigt, in zumindest einem des Speichers 202, eines Registers im Prozessor 201 und eines Cache-Speichers im Prozessor 201 gespeichert.
  • Außerdem kann das Programm, das die Funktionen der Sicherheitskommunikationsschicht 2000 und der Feldbusanwendungsschicht 2001 implementiert, in einem tragbaren Speichermedium wie einer Magnetplatte, einer flexiblen Platte, einer optischen Platte, einer Compact Disk, einer Blu-ray-Disk (eingetragenes Warenzeichen), einer DVD oder ähnlichem gespeichert werden.
  • Ferner ist im Speicher 502 auch ein OS gespeichert.
  • Dann wird zumindest ein Teil des OS wird vom Prozessor 501 ausgeführt.
  • Während zumindest der Teil des OS ausgeführt wird, führt der Prozessor 501 ein Programm aus, das Funktionen der Auswahleinheit 5001, der Bestimmungseinheit 5002 und der Kennzeichnungseinheit 5003 implementiert.
  • Der Prozessor 501 führt das OS so aus, dass Aufgabenverwaltung, Speicherverwaltung, Dateiverwaltung, Kommunikationssteuerung und dergleichen durchgeführt werden.
  • Außerdem wird zumindest eine von Informationen, Daten, eines Signalwertes und eines variablen Wertes, das die Verarbeitungsergebnisse der Auswahleinheit 5001, der Bestimmungseinheit 5002 und der Kennzeichnungseinheit 5003 anzeigt, in zumindest einem des Speichers 502, eines Registers im Prozessor 501 und eines Cache-Speichers im Prozessor 501 gespeichert.
  • Außerdem kann das Programm, das die Funktionen der Auswahleinheit 5001, der Bestimmungseinheit 5002 und der Kennzeichnungseinheit 5003 implementiert, in einem tragbaren Speichermedium wie einer Magnetplatte, einer flexiblen Platte, einer optischen Platte, einer Compact Disk, einer Blu-ray-Disk (eingetragenes Warenzeichen), einer DVD oder ähnlichem gespeichert werden.
  • Außerdem können die Sicherheits-Master-Einrichtung 10, die Sicherheits-Slave-Einrichtung 20 und die Informationsverarbeitungseinrichtung 50 durch Verarbeitungsschaltkreise implementiert sein. Die Verarbeitungsschaltkreise sind beispielsweise Logik-ICs (Integrated Circuits - Integrierte Schaltungen), GAs (Gate Arrays - anwendungsspezifische integrierte Schaltungen), ASICs (Application Specific Integrated Circuits - anwendungsspezifische Integrierte Schaltungen) oder FPGAs (Field-Programmable Gate Arrays - feldprogrammierbare Gate-Arrays).
  • Außerdem wird in der vorliegenden Patentanmeldung ein übergeordnetes Konzept eines Prozessors, eines Speichers, einer Kombination aus dem Prozessor und dem Speicher und eines Verarbeitungsschaltkreises als „Verarbeitungsschaltung“ bezeichnet.
  • Das heißt, jeder des Prozessors, des Speichers, der Kombination aus dem Prozessor und dem Speicher, und des Verarbeitungsschaltkreises ist ein spezifisches Beispiel für die „Verarbeitungsschaltung“.
  • Bezugszeichenliste
  • 10
    Sicherheits-Master-Einrichtung,
    20
    Sicherheits-Slave-Einrichtung,
    30
    Netzwerk,
    50
    Informationsverarbeitungseinrichtung,
    101
    Prozessor,
    102
    Speicher,
    104
    Feldkommunikationsschnittstelle,
    105
    Bus,
    201
    Prozessor,
    202
    Speicher,
    203
    Eingabe/Ausgabe-Schnittstelle,
    204
    Feldkommunikationsschnittstelle,
    205
    Bus,
    501
    Prozessor,
    502
    Speicher,
    503
    Kommunikationsschnittstelle,
    504
    Bus,
    1000
    Sicherheitskommunikationsschicht,
    1001
    Feldbusanwendungsschicht,
    10001
    Sicherheitsanwendungsschnittstelleneinheit,
    10002
    Sicherheitsverbindungsaufbauverarbeitungseinheit,
    10003
    Sicherheits-PDU-Erzeugungseinheit,
    10004
    Sicherheits-PDU-Inspektionseinheit,
    10005
    Prüfsummenverhandlungseinheit,
    10007
    Sicherheitsparameterverwaltungseinheit,
    10008
    Kommunikationszyklusverifizierungseinheit,
    2000
    Sicherheitskommunikationsschicht,
    2001
    Feldbusanwendungsschicht,
    20001
    Sicherheitsanwendungsschnittstelleneinheit,
    20002
    Sicherheitsverbindungsaufbauverarbeitungseinheit,
    20003
    Sicherheits-PDU-Erzeugungseinheit,
    20004
    Sicherheits-PDU-Inspektionseinheit,
    20005
    Prüfsummenverhandlungseinheit,
    20007
    Sicherheitsparameterverwaltungseinheit,
    20008
    Kommunikationszyklusverifizierungseinheit,
    5001
    Auswahleinheit,
    5002
    Bestimmungseinheit,
    5003
    Kennzeichnungseinheit.

Claims (12)

  1. Informationsverarbeitungseinrichtung (10, 20, 50), umfassend: eine Auswahleinheit (10005, 5001), um als Kandidatenpolynom aus einer Vielzahl von Polynomen einen Kandidaten für ein Generatorpolynom auszuwählen, das bei einer Kommunikation zwischen einer Master-Einrichtung (10) und einer Slave-Einrichtung (20) verwendet werden soll; eine Bestimmungseinheit (10005, 10008, 20008, 5002), um zu bestimmen, ob eine Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung zu einer vorgegebenen Frist abgeschlossen ist oder nicht; und eine Kennzeichnungseinheit (10005, 5003), um das Kandidatenpolynom als das Generatorpolynom zu kennzeichnen, wenn von der Bestimmungseinheit bestimmt wird, dass die Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung fristgerecht abgeschlossen ist.
  2. Informationsverarbeitungseinrichtung nach Anspruch 1, wobei die Auswahleinheit als das Kandidatenpolynom ein Polynom mit einem maximalen Grad aus der Vielzahl von Polynomen auswählt, und als ein neues Kandidatenpolynom ein Polynom mit einem kleineren Grad als das Kandidatenpolynom auswählt, wenn von der Bestimmungseinheit bestimmt wird, dass die Berechnung unter Verwendung des Kandidatenpolynoms weder in der Master-Einrichtung noch in der Slave-Einrichtung fristgerecht abgeschlossen ist, und wobei die Bestimmungseinheit bestimmt, ob eine Berechnung unter Verwendung des neuen Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung fristgerecht abgeschlossen ist oder nicht.
  3. Informationsverarbeitungseinrichtung nach Anspruch 2, wobei die Auswahleinheit als das neue Kandidatenpolynom ein Polynom mit einem kleineren Grad als das Kandidatenpolynom und mit einer Restfehlerrate, die einen erforderlichen Wert erfüllt, auswählt.
  4. Informationsverarbeitungseinrichtung nach Anspruch 2, wobei, wenn von der Bestimmungseinheit bestimmt wird, dass eine Berechnung unter Verwendung eines Polynoms in der Master-Einrichtung und in der Slave-Einrichtung nicht fristgerecht abgeschlossen ist, die Auswahleinheit als ein neues Kandidatenpolynom aus der Vielzahl von Polynomen ein Polynom auswählt, für das eine erweiterte Frist, die eine längere Frist als die Frist ist, verwendet werden kann, und wobei die Bestimmungseinheit bestimmt, ob eine Berechnung unter Verwendung des neuen Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung bis zur erweiterten Frist abgeschlossen ist oder nicht.
  5. Informationsverarbeitungseinrichtung nach Anspruch 2, wobei, wenn von der Bestimmungseinheit bestimmt wird, dass eine Berechnung unter Verwendung eines Polynoms nicht in jeder der Master-Einrichtung und der Slave-Einrichtung fristgerecht abgeschlossen ist, die Auswahleinheit als ein neues Kandidatenpolynom aus der Vielzahl von Polynomen ein Polynom auswählt, für das eine erweiterte Frist, die eine längere Frist als die Frist ist, verwendet werden kann, und wobei die Bestimmungseinheit bestimmt, ob eine Berechnung unter Verwendung des neuen Kandidatenpolynoms für geteilte Datenrahmen, die durch Teilen eines vorgegebenen Datenrahmens erhalten werden, in jeder der Master-Einrichtung und der Slave-Einrichtung fristgerecht abgeschlossen ist oder nicht.
  6. Informationsverarbeitungseinrichtung nach Anspruch 1, wobei die Bestimmungseinheit bestimmt, ob die Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung innerhalb eines Sicherheitskommunikationszyklus einer zwischen der Master-Einrichtung und der Slave-Einrichtung durchgeführten Sicherheitskommunikation abgeschlossen ist oder nicht, und wobei die Kennzeichnungseinheit das Kandidatenpolynom als das Generatorpolynom kennzeichnet, wenn von der Bestimmungseinheit bestimmt wird, dass die Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung innerhalb des Sicherheitskommunikationszyklus abgeschlossen ist.
  7. Informationsverarbeitungseinrichtung nach Anspruch 1, wobei eine Kombination von zwei oder mehr Polynomen in der Vielzahl von Polynomen enthalten ist.
  8. Informationsverarbeitungseinrichtung nach Anspruch 1, wobei die Informationsverarbeitungseinrichtung die Master-Einrichtung ist.
  9. Informationsverarbeitungseinrichtung nach Anspruch 1, wobei die Informationsverarbeitungseinrichtung die Master-Einrichtung und die Slave-Einrichtung ist.
  10. Informationsverarbeitungseinrichtung nach Anspruch 1, wobei die Informationsverarbeitungseinrichtung ein Computer ist, der sich von der Master-Einrichtung und der Slave-Einrichtung unterscheidet.
  11. Informationsverarbeitungsverfahren, umfassend: Auswählen, durch einen Computer, als Kandidatenpolynom aus einer Vielzahl von Polynomen einen Kandidaten für ein Generatorpolynom, das bei einer Kommunikation zwischen einer Master-Einrichtung (10) und einer Slave-Einrichtung (20) verwendet werden soll; Bestimmen, durch den Computer, ob eine Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung zu einer vorgegebenen Frist abgeschlossen ist oder nicht; und Kennzeichnen, durch den Computer, des Kandidatenpolynoms als das Generatorpolynom, wenn bestimmt wird, dass die Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung fristgerecht abgeschlossen ist.
  12. Informationsverarbeitungsprogramm, das einen Computer veranlasst, auszuführen: einen Auswahlprozess des Auswählens, als Kandidatenpolynom aus einer Vielzahl von Polynomen, eines Kandidaten für ein Generatorpolynom, das bei einer Kommunikation zwischen einer Master-Einrichtung (10) und einer Slave-Einrichtung (20) verwendet werden soll; einen Bestimmungsprozess des Bestimmens, ob eine Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung zu einer vorgegebenen Frist abgeschlossen ist oder nicht; und einen Kennzeichnungsprozess des Kennzeichnens des Kandidatenpolynoms als das Generatorpolynom, wenn von dem Bestimmungsprozess bestimmt wird, dass die Berechnung unter Verwendung des Kandidatenpolynoms in jeder der Master-Einrichtung und der Slave-Einrichtung fristgerecht abgeschlossen ist.
DE112018007296.7T 2018-04-25 2018-04-25 Informationsverarbeitungseinrichtung, Informationsverarbeitungsverfahren und Informationsverarbeitungsprogramm Active DE112018007296B4 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/016884 WO2019207697A1 (ja) 2018-04-25 2018-04-25 情報処理装置、情報処理方法及び情報処理プログラム

Publications (2)

Publication Number Publication Date
DE112018007296T5 DE112018007296T5 (de) 2020-12-31
DE112018007296B4 true DE112018007296B4 (de) 2022-01-27

Family

ID=68293841

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018007296.7T Active DE112018007296B4 (de) 2018-04-25 2018-04-25 Informationsverarbeitungseinrichtung, Informationsverarbeitungsverfahren und Informationsverarbeitungsprogramm

Country Status (6)

Country Link
US (1) US11228320B2 (de)
JP (1) JP6727476B2 (de)
CN (1) CN112005508B (de)
DE (1) DE112018007296B4 (de)
TW (1) TW201946425A (de)
WO (1) WO2019207697A1 (de)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005029515A1 (de) 2005-06-25 2006-12-28 Bosch Rexroth Aktiengesellschaft Verfahren zur Berechnung von CRC-Prüfwerten und Logikschaltung
JP2009171539A (ja) 2007-12-21 2009-07-30 Sony Corp 送信装置および方法、受信装置および方法、並びにプログラム
JP6073006B1 (ja) 2016-06-07 2017-02-01 三菱電機株式会社 データ処理装置、データ処理方法及びデータ処理プログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09275391A (ja) 1996-04-04 1997-10-21 Oki Electric Ind Co Ltd 情報符号化装置及び情報復号装置
JP3653026B2 (ja) 2001-09-13 2005-05-25 日本電気株式会社 音声多重化方法、音声分離方法及び通信装置
JP2004104250A (ja) 2002-09-05 2004-04-02 Fujitsu Ten Ltd 受信制御装置、送信制御装置、通信システム、デ−タ構造及び通信制御方法
ATE504446T1 (de) 2002-12-02 2011-04-15 Silverbrook Res Pty Ltd Totdüsenausgleich
WO2005094191A2 (en) * 2004-03-31 2005-10-13 Lg Electronics, Inc. Data processing method for network layer
JP2010124260A (ja) * 2008-11-20 2010-06-03 Nec Engineering Ltd Crc誤判定検出方法およびcrc誤判定検出装置
JP2010206394A (ja) * 2009-03-02 2010-09-16 Mitsubishi Electric Corp 安全ネットワーク装置および安全ネットワーク
EP2408139A1 (de) * 2009-03-12 2012-01-18 Fujitsu Limited Kommunikationseinrichtung und paketsynchronisierungsverfahren
CN101841388B (zh) * 2009-03-18 2012-07-04 中国科学院沈阳计算技术研究所有限公司 一种用于数控总线的消息安全传输方法
JP2012124615A (ja) * 2010-12-06 2012-06-28 Sony Corp 符号生成装置及び符号生成方法、符号検査装置及び符号検査方法、コンピューター・プログラム、並びに通信装置
KR101224383B1 (ko) * 2011-04-18 2013-01-21 (주) 유파인스 디바이스들 사이에서의 보안 통신 방법
US9071549B2 (en) * 2011-04-22 2015-06-30 Mitsubishi Electric Corporation Communication device using plurality of communication paths
BR112014015981A2 (pt) * 2012-01-11 2021-05-25 Shenzhen Hac Telecom Technology Co., Ltd. sistema e método para comunicação sem fio
JP2013225761A (ja) 2012-04-20 2013-10-31 Hitachi Ltd 符号化装置、復号装置、通信システム及び通信制御方法
US8787506B2 (en) 2012-05-04 2014-07-22 Qualcomm Incorporated Decoders and methods for decoding convolutional coded data
JP6274153B2 (ja) * 2015-05-22 2018-02-07 株式会社安川電機 エンコーダ、コントローラ、モータ制御システム、ロボット制御システム、ロボット、データ送信方法、及び情報処理方法
JP6829024B2 (ja) * 2016-08-03 2021-02-10 ルネサスエレクトロニクス株式会社 Crc演算回路、半導体装置及びレーダーシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005029515A1 (de) 2005-06-25 2006-12-28 Bosch Rexroth Aktiengesellschaft Verfahren zur Berechnung von CRC-Prüfwerten und Logikschaltung
JP2009171539A (ja) 2007-12-21 2009-07-30 Sony Corp 送信装置および方法、受信装置および方法、並びにプログラム
JP6073006B1 (ja) 2016-06-07 2017-02-01 三菱電機株式会社 データ処理装置、データ処理方法及びデータ処理プログラム

Also Published As

Publication number Publication date
US20200403730A1 (en) 2020-12-24
TW201946425A (zh) 2019-12-01
WO2019207697A1 (ja) 2019-10-31
DE112018007296T5 (de) 2020-12-31
CN112005508A (zh) 2020-11-27
US11228320B2 (en) 2022-01-18
JPWO2019207697A1 (ja) 2020-07-30
JP6727476B2 (ja) 2020-07-22
CN112005508B (zh) 2023-02-17

Similar Documents

Publication Publication Date Title
DE19747396C2 (de) Verfahren und Anordnung zur Schaffung einer Ferndiagnose für ein elektronisches System über ein Netz
DE112016006003T5 (de) Vertrauenswürdiger Start sicherer Enklaven in virtuellen Umgebungen
DE102019104531A1 (de) Anomalieerkennung in einem netzswerksbereichskontroller
DE112005000932T5 (de) Netzwerkschnittstellen-Controllerschaltung
EP3379351B1 (de) Verfahren zum betreiben einer automatisierungseinrichtung sowie automatisierungseinrichtung
EP0976221B1 (de) Verfahren und anordnung zur bildung und überprüfung einer prüfsumme für digitale daten, die in mehrere datensegmente gruppiert sind
DE102015115287A1 (de) Verfahren und vorrichtung zum prüfen eines identifikators
CN109144625A (zh) 防重复提交方法、装置和系统
DE102020121075A1 (de) Einrichtung und Verfahren zur Authentifizierung von Software
EP3811261B1 (de) Kryptografiemodul und betriebsverfahren hierfür
EP3695337B1 (de) Verfahren und bestätigungsvorrichtung zur integritätsbestätigung eines systems
DE102015115295A1 (de) Verfahren und vorrichtung zur verarbeitung von daten
DE112018007296B4 (de) Informationsverarbeitungseinrichtung, Informationsverarbeitungsverfahren und Informationsverarbeitungsprogramm
EP3284193A1 (de) Ubertragungsverfahren und vorrichtungen zur übertragung
DE112019007018T5 (de) Sicherheitskommunikationsvorrichtung, sicherheitskommunikationssystem, sicherheitskommunikationsverfahren und sicherheitskommunikationsprogramm
EP3314768A1 (de) Vorrichtung und verfahren zum erstellen einer asymmetrischen prüfsumme
DE102017201621A1 (de) Integrierte Schaltung für ein Steuergerät eines Kraftfahrzeugs, Verfahren zur Herstellung einer integrierten Schaltung
DE112016006791B4 (de) Datenverarbeitungsvorrichtung, Datenverarbeitungsverfahren und Datenverarbeitungsprogramm
DE3422287A1 (de) Pruefanordnung fuer digitalschaltungen
WO2014191178A1 (de) Bereitstellung von zufallsbitfolgen in einer virtuellen ausführungsumgebung
DE102016203270B3 (de) Mikrocontroller und Verfahren zum Testen eines Mikrocontrollers
DE102018210733A1 (de) Verfahren zum Überwachen wenigstens einer Recheneinheit
DE102016208869A1 (de) Verfahren zum Betreiben einer Datenverarbeitungsvorrichtung für ein Fahrzeug
DE102021207212A1 (de) Verfahren und Vorrichtung zum Verarbeiten von mit einem Hardware-Sicherheitsmodul einer Recheneinrichtung assoziierten Daten
EP3002652B1 (de) Verfahren zur Zustandsüberwachung innerhalb eines industriellen Automatisierungssystems und Steuerungsprogramm

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final