KR102147750B1 - 컴퓨터, 상기 컴퓨터를 포함하는 통신 유닛, 상기 유닛을 포함하는 철도 관리 시스템, 및 컴퓨터 내에서 데이터 신뢰도를 개선하는 방법 - Google Patents

컴퓨터, 상기 컴퓨터를 포함하는 통신 유닛, 상기 유닛을 포함하는 철도 관리 시스템, 및 컴퓨터 내에서 데이터 신뢰도를 개선하는 방법 Download PDF

Info

Publication number
KR102147750B1
KR102147750B1 KR1020130070343A KR20130070343A KR102147750B1 KR 102147750 B1 KR102147750 B1 KR 102147750B1 KR 1020130070343 A KR1020130070343 A KR 1020130070343A KR 20130070343 A KR20130070343 A KR 20130070343A KR 102147750 B1 KR102147750 B1 KR 102147750B1
Authority
KR
South Korea
Prior art keywords
data
security code
computer
calculation
processing hardware
Prior art date
Application number
KR1020130070343A
Other languages
English (en)
Other versions
KR20130142960A (ko
Inventor
사비에르 갈루아
기욤 비베르트
Original Assignee
알스톰 트랜스포트 테크놀로지스
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=47294924&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR102147750(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 알스톰 트랜스포트 테크놀로지스 filed Critical 알스톰 트랜스포트 테크놀로지스
Publication of KR20130142960A publication Critical patent/KR20130142960A/ko
Application granted granted Critical
Publication of KR102147750B1 publication Critical patent/KR102147750B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B61RAILWAYS
    • B61LGUIDING RAILWAY TRAFFIC; ENSURING THE SAFETY OF RAILWAY TRAFFIC
    • B61L19/00Arrangements for interlocking between points and signals by means of a single interlocking device, e.g. central control
    • B61L19/06Interlocking devices having electrical operation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B61RAILWAYS
    • B61LGUIDING RAILWAY TRAFFIC; ENSURING THE SAFETY OF RAILWAY TRAFFIC
    • B61L27/00Central railway traffic control systems; Trackside control; Communication systems specially adapted therefor
    • B61L27/30Trackside multiple control systems, e.g. switch-over between different systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0796Safety measures, i.e. ensuring safe condition in the event of error, e.g. for controlling element
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1633Error detection by comparing the output of redundant processing systems using mutual exchange of the output between the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B61RAILWAYS
    • B61LGUIDING RAILWAY TRAFFIC; ENSURING THE SAFETY OF RAILWAY TRAFFIC
    • B61L21/00Station blocking between signal boxes in one yard
    • B61L21/04Electrical locking and release of the route; Electrical repeat locks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Mechanical Engineering (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Hardware Redundancy (AREA)
  • Storage Device Security (AREA)
  • Train Traffic Observation, Control, And Security (AREA)

Abstract

본 발명은 컴퓨터(6)에서 데이터의 신뢰도를 개선하는 방법에 관한 것으로, 상기 컴퓨터(6)는 입력 데이터(De)로부터의 출력 데이터(Ds)를 제공할 수 있고, 둘 이상의 데이터 처리 모듈(12A, 12B), 및 각 데이터 처리 모듈(12A, 12B)에 접속된 산출 멤버(14)을 포함한다. 이 방법은 다음의 단계를 포함한다;
- 각 데이터 처리 모듈(12A, 12B)을 이용해, 대응하는 중간 데이터(DIA, DIB)로부터 중간 보안 코드(CSIA, CSIB)를 산출하는 단계;
- 각 데이터 처리 모듈(12A, 12B)을 이용해, 중간 보안 코드(CSIA, CSIB) 및 상기 중간 데이터(DIA, DIB)를 산출 멤버(14)에 전송하는 단계;
- 상기 산출 멤버(14)를 이용해, 상기 중간 보안 코드(CSIA, CSIB)로부터 보안 코드(CS)를 산출하는 단계;
- 상기 산출 멤버(14)를 이용해, 수신받은 중간 데이터(DIA, DIB)로부터 하나의 중간 데이터를 선택하는 단계로서, 상기 컴퓨터(6)의 출력 데이터(Ds)는 선택된 중간 데이터를 포함하는, 단계; 및
- 상기 산출 멤버(14)를 이용해, 상기 보안 코드(CS) 및 상기 출력 데이터(Ds)를 수신 디바이스(8)로 전송하는 단계

Description

컴퓨터, 상기 컴퓨터를 포함하는 통신 유닛, 상기 유닛을 포함하는 철도 관리 시스템, 및 컴퓨터 내에서 데이터 신뢰도를 개선하는 방법{COMPUTER, COMMUNICATION UNIT INCLUDING SUCH A COMPUTER, RAILWAY MANAGEMENT SYSTEM INCLUDING SUCH A UNIT, AND METHOD FOR ENHANCING DATA RELIABILITY IN A COMPUTER}
본 발명은 컴퓨터 내에서 데이터 신뢰도를 개선하는 방법에 관한 것으로, 이러한 컴퓨터는 입력 데이터로부터 출력 데이터를 제공할 수 있고, 두 개의 데이터 처리 모듈, 및 각 처리 모듈에 연결된 산출 멤버(computing member)을 포함한다. 상기 방법은 각 처리 모듈에 의해 산출하는 단계를 포함하며, 이러한 산출 단계는 입력 데이터로 모든 처리 모듈에 대해 동일한 산출 함수(computing function)를 적용하는 단계를 포함한다.
본 발명은 입력 데이터로부터 출력 데이터를 제공할 수 있는 컴퓨터에 관한 것으로 다음을 포함한다:
- 둘 이상의 데이터 처리 모듈로서, 각 처리 모듈은 입력 데이터로부터 중간 데이터를 산출하는 제1 산출 수단(computing means)을 포함하고, 제1 산출 수단은 입력 데이터로 산출 함수를 적용할 수 있고, 산출 함수는 모든 처리 모듈에 대해 동일함.
- 각 처리 모듈과 연결되는 산출 멤버.
본 발명은 또한 그러한 컴퓨터를 포함하는 통신 유닛에 관한 것이다.
본 발명은 또한 그러한 통신 유닛을 포함하는 철도 관리 시스템에 관한 것이다.
전술한 형태의 컴퓨터는 알려져 있다. 이러한 컴퓨터는 통신 네트워크에서 순환하는 데이터 및/또는 정보 단편을 처리할 수 있고, 일반적으로 보안 통신 시스템, 예컨대 철도 관리 시스템에 사용된다. 철도 관리 시스템이 요구하는 중대한 보안 기능을 보장하기 위해서는, 컴퓨터의 출력시 잘못된 데이터 및 감지할 수 없는 데이터가 일어날 확률이 최대한 감소되어야 한다. 예를 들어, 유럽 철도 안전 기준 EN 50 128(the European Railway Safety standard EN 50 128)는, 요구에 대한 실패의 확률이 10-9 내지 10-7가 되도록 기차의 안전에 관한 장비를 설계할 것을 시행한다. 안전 보장의 통상의 기술을 <<합성형 정보 보안(composite security)>>이라 하며, 이는 동일한 컴퓨터의 몇몇의 데이터 처리 모듈에 의해 수행되는 동일한 처리 동작, 그리고 <<다수결(majority vote)>>을 실행하는 것을 포함한다. 이러한 목적으로, 각 모듈은 동일한 입력 데이터로부터 출력 데이터를 산출한다. 게다가, 이러한 컴퓨터는 일반적으로 산출된 출력 데이터 중에서 <<다수결>> 기능을 보장할 수 있는 중재 수단을 포함한다.
그러나, 컴퓨터의 중재 기능은 최소의 하드웨어 계층을 포함하고, 소프트웨어 계층으로 완료되기도 한다. 현재, 이 하드웨어 계층의 오류로 보안상 결함이 발생하여, 보안 통신 시스템의 중대한 실수가 유발되고 있는 실정이다.
본 발명의 목적은 컴퓨터의 다수결 기능을 보장하기 위해 전용 하드웨어 수단의 사용 없이 컴퓨터에서 데이터의 신뢰도를 개선하는 방법을 제안하는 것이다.
이 목적을 위해, 본 발명은 전술한 형태의 컴퓨터에서 데이터의 신뢰도를 강화하는 방법에 있어서, 다음의 단계를 포함하는 방법을 제안한다:
- 각 처리 모듈을 이용해, 중간 보안 코드를 대응하는 중간 데이터로부터 각 처리 모듈로 산출하는 단계,
- 각 처리 모듈을 이용해, 중간 보안 코드 및 중간 데이터를 산출 멤버에 전송하는 단계,
- 산출 멤버를 이용해, 중간 보안 코드로부터 보안 코드를 산출하는 단계,
- 산출 멤버를 이용해, 수신된 중간 데이터 중에서 하나의 중간 데이터를 선택하는 단계로서, 컴퓨터의 출력 데이터는 상기 선택된 중간 데이터를 포함하는, 단계, 및
- 산출 멤버를 이용해, 보안 코드 및 출력 데이터를 수신 디바이스로 전송하는 단계.
본 발명의 다른 장점에 따르면, 상기 방법은, 개별적으로 수행되거나 기술적으로 가능한 조합에 따라 수행되는, 다음의 특징 중 하나 이상을 포함한다.
- 각 처리 모듈은 하나 이상의 암호화 변수 및 암호화 함수를 메모리에 저장하는 제1 수단을 포함하고, 이러한 암호화 수단은 모든 처리 모듈에 대해 동일하며, 중간 보안 코드를 대응하는 중간 데이터로부터 산출하는 단계 동안, 상기 산출 단계는 각 처리 모듈을 이용해 암호화 함수를 적어도 중간 데이터 및 암호화 변수에 적용하는 단계를 포함한다;
- 산출 멤버는 하나 이상의 복호와 상수 및 통합(consolidation) 함수를 메모리에 저장하는 제2 수단을 포함하고, 상기 중간 보안 코드로부터 보안 코드를 산출하는 단계 동안, 상기 산출 단계는 산출 멤버를 이용해 상기 통합 함수를 수신한 중간 보안 코드 각각 및 복호화 상수에 적용하는 단계를 포함한다;
- 상기 방법은, 중간 데이터를 산출하는 단계와 중간 보안 코드를 산출하는 단계 사이에, 각 처리 모듈로 그 중간 데이터의 값을 다른 처리 모듈에 전송하는 단계, 및 각 처리 모듈을 이용해 중간 데이터의 값의 전체로부터 다수값의 존재를 테스트하는 단계를 포함하며, 중간 데이터의 값들 중에 가장 빈번한 값이 존재한다면, 상기 다수값은 가장 빈번한 값이 된다;
- 대응하는 테스트 단계 동안, 다수값 존재 여부에 대한 테스트가 네거티브인 경우, 상기 방법은 처리 모듈 중 하나를 이용해 그것의 암호화 변수를 숨기는 단계를 포함한다;
- 상기 방법은 중간 보안 코드를 산출하는 단계 이전에, 처리 모듈을 이용해 그것의 암호화 변수를 재설정하는 단계를 더 포함하고, 상기 재설정하는 단계는 모든 처리 모듈 가운데 동기화 방식으로 수행된다;
- 상기 선택 단계 동안 산출 멤버에 의해 선택된 중간 데이터가 출력 데이터이다;
- 상기 방법은 수신 디바이스를 이용해 보안 코드 및 출력 데이터를 수신하는 단계, 및 수신 디바이스로 보안 코드와 출력 데이터 간의 일치 여부를 검사하는 단계를 더 포함한다.
본 발명의 대상은 또한 제1 산출 수단이 중간 보안 코드를 대응하는 중간 데이터로부터 산출할 수 있고, 각 처리 모듈은 중간 보안 코드 및 대응하는 중간 데이터를 산출 멤버로 전송할 수 있는 것을 특징으로 하고, 산출 멤버가 중간 보안 코드로부터 보안 코드를 산출하는 제2 수단을 포함하고, 수신된 중간 데이터로부터 중간 데이터를 선택할 수 있고, 보안 코드 및 출력 데이터를 수신 디바이스로 전송할 수 있으며, 출력 데이터를 선택된 중간 데이터를 포함하는 것을 특징으로 하는, 전술한 형태의 컴퓨터이다.
본 발명의 대상은 또한 컴퓨터 및 데이터를 수신하는 디바이스를 포함하는 통신 유닛으로, 상기 컴퓨터는 보안 코드 및 데이터를 제공할 수 있고, 상기 수신 디바이스는 제어 알고리즘을 메모리에 저장하는 수단을 포함하고, 보안 코드 및 출력 데이터를 수신할 수 있고, 제어 알고리즘을 적용하여 보안 코드 및 출력 데이터간의 일치 여부를 검사할 수 있으며, 상기 컴퓨터는 위에서 정의되어 있다.
본 발명의 대상은 또한 하나 이상의 통신 유닛을 포함하는 철도 관리 시스템으로, 상기 통신 유닛은 위에서 정의되어 있다.
본 발명은 컴퓨터의 다수결 기능을 보장하기 위해 전용 하드웨어 수단의 사용 없이 컴퓨터에서 데이터의 신뢰도를 개선하기 위한 것이다.
본 발명의 특징 및 장점은 다음의 발명의 상세한 설명에 의해 명백해질 것이며, 이러한 기재는 제한되지 않는 예시로서 주어지고, 다음의 도면에 의해 참고된다.
- 도 1은 본 발명에 따른 컴퓨터를 포함하는 철도 관리 시스템으로서, 상기 컴퓨터가 두 개의 데이터 처리 모듈을 포함하는, 철도 관리 시스템의 개략도이다;
- 도 2는 도 1의 컴퓨터의 데이터 처리 모듈 중 하나의 개략도이다; 및
- 도 3은 도 1의 컴퓨터에 의해 적용된 본 발명에 따른 데이터의 신뢰도를 강화하는 방법에 대한 흐름도이다.
본 명세서에서, 통신 네트워크 상에서 순환되는 논리 데이터 또는 정보를 <<보안 데이터(security data)>>라 한다. 통신 네트워크는 전형적으로 보안이 되지 않는 네트워크이며, 각 보안 데이터는 보안 코드에 의해 수반되는 네트워크 상에서 순환한다. 네트워크를 통해 전송 디바이스에 의해 전송된 보안 데이터는 미리 결정된 제어 알고리즘에 의해, 수신 디바이스가 수신된 보안 데이터 및 그것을 수반하는 보안 코드가 일치한다고 결정할 경우, 수신 디바이스에 의해서만 받아들여진다.
도 1은 통신 유닛(2)을 포함하는 철도 관리 시스템(1)을 도시하고 있다. 철도 관리 시스템(1)은, 예를 들어, 철도 스테이션에서 실행된다. 예를 들어, 제어 명령을 결정하고, 기차들에 대해 순환하도록 하거나 스위치 포인트로서 트랙 보안 시스템을 운영하도록 할 수 있다.
상기 유닛(2)은 컴퓨터(6) 및 데이터를 수신하고, 상기 컴퓨터(6)에 데이터 링크(10)를 통해 연결되는 디바이스(8)를 포함한다.
컴퓨터(6)는 데이터 수신 수단(11), 제1 데이터 처리 모듈(12A)과 제2 데이터 처리 모듈(12B)을 포함하고, 각 처리 모듈(12A, 12B)은 수신 수단(11)에 연결된다. 컴퓨터(6)는 각 처리 모듈(12A, 12B)에 연결되는 산출 멤버(14), 및 수신 디바이스(8)에 데이터를 전송하는 전송 수단(18)을 더 포함하며, 전송 수단(18)은 상기 멤버(14)에 연결된다.
컴퓨터(6)는 보안 컴퓨터이며, 철도 관리 시스템(1) 내에 영구적으로 고정된다. 컴퓨터(6)는 철도 관리 시스템(1)의 통신 네트워크 상에 순환되는 보안 데이터의 산출을 수행할 수 있다. 보다 구체적으로, 컴퓨터(6)는 수신 디바이스(8)에 입력 데이터(De)로부터 출력 데이터(Ds)를 제공하고, 통신 디바이스, 예컨대 또다른 컴퓨터로부터의 흐름을 막을 수 있다. 기재된 실시예에서, 입력 데이터(De) 및 출력 데이터(Ds)는 비트의 조합, 예컨대 16 비트 조합으로 이루어진 변수이다. 수신 디바이스(8)는 제어 알고리즘을 저장하는 메모리(도시되지 않음)를 포함한다. 수신 디바이스(8)는 보안 컴퓨터의 예시로서, 보안 코드 (CS) 및 출력 데이터(Ds)를 수신하고, 제어 알고리즘을 적용하여, 보안 코드 (CS) 및 출력 데이터(Ds) 간의 일치 여부를 검사할 수 있다.
데이터 링크(10)는 일반적으로 Wi-FiTM 링크인 IEEE-802-11 표준을 따르는 무선주파수 링크의 예시이다.
수신 수단(11)은 입력 데이터(De)을 수신하고, 각 처리 모듈(12A, 12B)의 입력단에 입력 데이터(De)를 전달할 수 있다.
제1 처리 모듈(12A) 및 제2 처리 모듈(12B)은 각각 동일한 구조를 가진다. 이하, 제1 처리 모듈(12A)의 구조만 기재하겠다.
도 2에 도시된 바와 같이, 제1 처리 모듈(12A)은 제1 메모리 저장 수단(20A), 메모리 저장 수단(20A)에 연결된 제1 산출 수단(22A), 및 제1 산출 수단(22A)에 연결된 통신 수단(24A)을 포함한다. 제1 처리 모듈(12A)은 제1 메모리 저장 수단(20A)에 연결된 삭제 수단(26A), 및 통신 수단(24A)에 연결된 동기화 수단(28A)을 더 포함한다.
제1 처리 모듈(12A)은 또한 제1 메모리 저장 수단(20A) 및 동기화 수단(28A)에 연결된 변경 수단(30A)을 포함한다.
일실시예에서, 제1 메모리 저장 수단(20A)은 그 자체로 알려진 플래쉬 메모리로 형성된다. 대안으로, 제1 메모리 저장 수단(20A)은 재기록가능한 비휘발성 메모리로 형성된다. 대안으로, 제1 메모리 저장 수단(20A) 재기록가능한 휘발성 메모리로 형성된다.
제1 메모리 저장 수단(20A)은 제1 모듈(12A)에 특정한 암호화 변수(VCA)를 저장할 수 있다. 일실시예에서, 암호화 변수 (VCA)는 16 비트의 조합으로 형성된다. 제1 메모리 저장 수단(20A)은 또한 산출 함수(σ), 암호화 함수(Fc), 및 재설정 함수(Freset)를 저장할 수 있다. 일실시예에서, 산출 함수(σ)는 통상의 표준 <<NOT>> 논리 함수이다. 게다가, 일실시예에서 암호화 함수(Fc)는 통상의 표준 <<exclusive OR>> 논리 함수이다. 예를 들어, 재설정 함수(Freset)는 통상의 표준 <<exclusive OR>> 논리 함수이다.
도 2의 일실시예에서, 제1 산출 수단(22A)은 그 자체로 알려진 데이터 프로세서로 형성된다. 제1 산출 수단(22A)는 한편으로는 수신 수단(11)에 연결되고, 다른 한편으로는 멤버(14)에 연결된다. 제1 산출 수단(22A)은 입력 데이터(De)를 수신하고, 멤버(14)의 입력단에 중간 출력 데이터(DIA)와 중간 보안 코드(CSIA)를 제공한다. 제1 산출 수단(22A)은 입력 데이터(De)의 값으로부터 중간 출력 데이터(DIA)의 값을 산출할 수 있다. 그러면, 데이터(DIA)는 예를 들어 아래와 같이 수식화된다:
Figure 112013054643358-pat00001
일실시예에서, 중간 출력 데이터(DIA)는 16 비트의 조합으로 형성된 변수이다.
제1 산출 수단(22A)은 중간 출력 데이터(DIA)의 값으로부터, 그리고 암호화 변수(VCA)의 값으로부터 중간 보안 코드(CSIA)의 값을 산출할 수 있다. 중간 보안 코드(CSIA)는 아래와 같이 수식화된다:
Figure 112013054643358-pat00002
MA와 F1은 각각 상수 및 함수이며, 제1 메모리 저장 수단(20A)에 저장된다. 예를 들어, F1은 <<AND>> 논리 함수이다. 일실시예에서, MA는 16 비트의 조합으로 형성되는 상수이다. 예를 들어, MA는 8의 첫 번째 비트의 조합으로 형성되며, 그 값은 1과 동일하고, 0과 동일한 값인, 8의 마지막 비트의 조합으로 형성된다.
제1 산출 수단(22A) 몇몇 중간 출력 데이터 값 중에서 다수값의 존재에 대한 테스트를 추가로 할 수 있다. 몇몇 중간 출력 데이터 값들 중에 가장 빈번한 값이 존재한다면, 다수값은 중간 출력 데이터 값 중에서 가장 빈번한 값이다.
통신 수단(24A)은 전송 수단(31A) 및 수신 수단(32A)을 포함한다. 전송 수단(31A)은 데이터 링크(34)를 통해 제2 모듈(12B)의 수신 수단(32B)에 연결될 수 있다. 수신 수단(32A) 데이터 링크(35)를 통해 제2 모듈(12B)의 수신 수단(31B)에 연결될 수 있다.
예를 들어, 데이터 링크(34, 35)는 Wi-FiTM 링크인 IEEE-802-11 표준을 따르는 무선주파수 링크이다.
예를 들어, 삭제 수단(26A)은 데이터 프로세서로 형성되며, 메모리(20A)에 저장된 암호화 변수(VCA)의 현재 값을 삭제할 수 있다.
예를 들어, 동기화 수단(28A)은 정기적인 시각(i)에서 펄스 신호를 전달할 수 있는 클록을 포함한다. 동기화 수단(28A)은 동기화 신호를 통신 수단(24A) 및 변경 수단(30A)으로 전송할 수 있다. 동기화 수단(28A)은 또한 통신 수단(24A)에 의해 전송된 동기화 신호를 통해 제2 처리 모듈(12B)의 동기화 수단(28B)으로 동기화할 수 있다.
예를 들어, 변경 수단(30A)은 의사 랜덤 수열(pseudo-random sequence)의 발생기(38A) 및 프로세서(40A)를 포함한다. 의사 랜덤 수열의 발생기(38A)는 동기화 수단(28A) 및 프로세서(40A)에 연결된다. 발생기(38A)는 동기화 수단(28A)에 의해 전달된 동기화 신호의 수신에 뒤따라, 프로세서(40A)에 의사 랜덤 신호 Spa를 제공할 수 있다. 좀더 구체적으로, 각 시각(i)에서, 발생기(38A)는 프로세서(40A)에 의사 랜덤 신호 Spa(i)를 제공할 수 있다.
프로세서(40A)는 제1 메모리 저장 수단(20A) 및 동기화 수단(28A)에 더 연결된다. 프로세서(40A)는 동기화 수단(28A)에 의해 전달된 동기화 신호의 수신에 뒤따라, 제1 메모리 저장 수단(20A) 내에 저장된 암호화 변수(VCA)의 현재 값을 변경할 수 있다. 더욱 자세하게는, 각 시각(i)에서, 프로세서(40A)는 특히 암호화 변수 VCA의 이전 값 VCA(i-1)으로부터 암호화 변수 VCA의 현재 값 VCA(i)을 결정할 수 있다. 시각(i)에의 암호화 변수 VCA의 현재 값은 다음과 같이 수식화된다:
Figure 112013054643358-pat00003
따라서, 변경 수단(30A)은 제1 메모리 저장 수단(20A) 내에서 저장된 암호화 변수 VCA의 현재 값을 변경할 수 있다.
따라서, 제1 처리 모듈(12A)은 산출하여, 멤버(14)의 입력단에 중간 출력 데이터(DIA) 및 중간 보안 코드(CSIA)을 제공한다
제2 처리 모듈(12B)의 제1 메모리 저장 수단(20B)은 모듈(12B)에 특정한 암호화 변수 VCB와 제1 처리 모듈(12A)의 산출 함수(σ)와 동일한 산출 함수(σ)를 저장할 수 있다. 일실시예에서, 암호화 변수 VCB는 16 비트의 조합에 의해 형성된다. 제1 메모리 저장 수단(20B)은 또한 제1 처리 모듈(12A)의 암호화 함수(Fc)와 동일한 암호화 함수(Fc), 및 재설정 함수(Freset)를 저장할 수 있다.
제2 처리 모듈(12B)의 변경 수단(30B)은 제1 메모리 저장 수단(20B) 내에 저장된 암호화 변수 VCB의 현재 값을 변경할 수 있다. 시각(i)에서 암호화 변수 VCB 의 현재 값은 다음과 같이 수식화된다:
Figure 112013054643358-pat00004
따라서, 제2 처리 모듈(12B)은 산출하여, 산출 멤버(14)의 입력단에 중간 출력 데이터(DIB) 및 중간 보안 코드(CSIB)를 제공할 수 있다. 중간 출력 데이터(DIB) 및 중간 보안 코드(CSIB)는 다음과 같이 수식화된다.
Figure 112013054643358-pat00005
Figure 112013054643358-pat00006
MA와 F1는 각각 제1 메모리 저장 수단(20B)에 저장된 상수와 함수이다. 함수 F1은 제1 처리 모듈(12A)의 함수 F1와 동일하다. 일실시예에서, MB은 16 비트의 조합으로 형성되는 상수이다. 예를 들어, MB는 8개의 첫 번째 비트의 조합으로 형성되며, 그 값은 0과 동일하고, 1과 동일한 값인, 8개의 마지막 비트의 조합으로 형성된다.
일실시예에서, 중간 출력 데이터(DIB)는 16 비트의 조합으로 형성되는 변수이다.
각 시각(i)에서, 각각의 처리 모듈(12A, 12B)의 각각의 암호화 변수 VCA , VCB의 값은 동일한 수학적 관계, 예컨대 다음의 수학적 관계와 함께 입증된다:
Figure 112013054643358-pat00007
이때, F2는 <<exclusive OR>> 논리 함수이고, K는 상수이다. 일실시예에서, K는 16 비트의 조합으로 형성된 상수이다.
처리 모듈(12A, 12B)은 그들의 통신 수단 및 그들 각각의 동기화 수단을 통해, 동기화된 통신 프로토콜에 따라 데이터를 교환할 수 있다..
산출 멤버(14)는 전송 수단(18)의 입력단에서 출력 데이터(D s) 뿐만 아니라 보안 코드 (CS)를 제공한다. 멤버(14)는 제2 메모리 저장 수단(42), 및 상기 제2 메모리 저장 수단(42)에 연결되는 제2 산출 수단(44)을 포함한다.
예를 들어, 제2 메모리 저장 수단(42)은 플래쉬 메모리로 형성된다. 제2 메모리 저장 수단(42)은 복호화 상수 KD 및 통합 함수 Fconso를 저장할 수 있다. 일실시예에서, 통합 함수 Fconso는 <<exclusive OR>>논리 함수이며, 복호화 상수 KD는 16 비트의 조합으로 형성되는 상수이다.
일실시예에서, 제2 산출 수단(44)은 데이터 프로세서로 형성된다. 제2 산출 수단(44)은 한편으로는 제1 산출 수단(22A, 22B)의 각각에 연결되고, 다른 한편으로는 전송 수단(18)에 연결된다. 제2 산출 수단(44)은 전송 수단(18)의 입력단에서, 출력 데이터(Ds) 및 보안 코드(CS)를 제공한다. 제2 산출 수단(44)은 중간 출력 데이터(DIA, DIB)의 값으로부터 출력 데이터(Ds)의 값을 산출할 수 있다. 일실시예에서, 출력 데이터(Ds)의 값의 값은 중간 출력 데이터(DIA)의 값과 동일하게 취급된다. 대안으로, 출력 데이터(D s)의 값은 중간 데이터(DIB)의 값과 동일하게 취급된다.
제2 산출 수단(44)은 또한 각각의 중간 보안 코드(CSIA, CSIB)의 값으로부터 그리고, 복호화 상수 KD의 값으로부터 보안 코드(CS)의 값을 산출할 수 있다. 보안 코드(CS)는 다음과 같이 수식화된다:
Figure 112013054643358-pat00008
전송 수단(18)은 출력 데이터(D s) 및 보안 코드(CS)를 수신 디바이스(8)로 전송할 수 있다.
도 3은 본 발명의 일실시예의 컴퓨터(6)에 의해 적용된 데이터의 신뢰도를 강화시키는 방법의 단계를 도시하고 있다.
다음의 본 명세서에서는, 처리 모듈(12A, 12B)의 동시오류의 발생의 확률이 0일 것이 고려된다.
현재 시작(i-1)에서, 각각의 제1 메모리 저장 수단(20A, 20B)은 각각의 암호화 변수(VCA, VCB)의 각각의 현재 값(VCA(i-1), VCB(i-1))을 저장한다.
시작 단계 60에서, 수신 수단(11)은 입력 데이터(De)를 포함하는 메시지를 수신한다.
다음 단계 62에서, 수신 수단(11)은 입력 데이터(De)를 각각의 제1 산출 수단(22A, 22B)에 제공한다.
다음 단계 64에서, 각각의 제1 산출 수단(22A, 22B)은, 입력 데이터(De)의 현재 값으로부터 중간 출력 데이터(DIA, DIB)의 현재 값을 산출한다. 중간 출력 데이터(DIA, DIB)는 각각 공식 (1), 공식 (5)로 수식화된다.
추가로, 다음 단계 66에서, 제1 산출 수단(22A, 22B)은 중간 출력 데이터(DIA, DIB)의 현재 값을 전송 수단(31A, 31B)으로 전송한다. 그리고 나서, 각각의 전송 수단(31A, 31B)은 각각의 중간 출력 데이터(DIA, DIB)의 현재 값을 각각의 수신 수단(32B, 32A)으로 각각의 데이터 링크(34, 35)를 통해 전송한다. 각각의 수신 수단(32B, 32A)은 각각의 중간 출력 데이터(DIA, DIB)의 현재 값을 각각의 제1 산출 수단(22B, 22A)으로 전송한다.
추가로, 다음 단계 68에서, 제1 산출 수단(22A, 22B)의 각각은 중간 출력 데이터(DIA, DIB)의 현재 값들 중으로부터 다수값이 존재하는지를 결정한다.
단계 68의 결말에서, 제1 산출 수단(22A, 22B)의 각각이 중간 출력 데이터(DIA, DIB)의 현재 값들 중으로부터 다수값이 존재한다고 결정된 경우, 단계 70에서 삭제 수단(26A)이 제1 메모리 저장 수단(20A)에 있는 암호화 변수(VCA)의 현재 값을 삭제한다. 대안으로, 단계 70에서 삭제 수단(26B)이 제1 메모리 저장 수단(20B)에 있는 암호화 변수(VCb)의 현재 값을 삭제한다. 추가로, 다음 단계 72는 이후 기술되는 것으로서, 프로세서(40A, 40B)에 의해 적용된다.
단계 68의 결말에서, 제1 산출 수단(22A, 22B)의 각각이 중간 출력 데이터(DIA, DIB)의 현재 값 중으로부터 다수값이 존재한다고 결정하는 경우, 단계 72가 수행된다.
단계 72는 단계 68 또는 단계 70 다음에 즉각적으로 시각(i)에서 트리거링된다. 시각(i)에서, 암호화 변수(VCA, VCB)의 현재 값(VCA(i-1), VCB(i-1))은 이전 값이 된다. 동일한 시각(i)에서, 각각의 프로세서(40A, 40B)는 암호화 변수의 각각의 이전 값(VCA(i-1), VCB(i-1))으로부터 각각의 암호화 변수(VCA , VCB)의 각각의 현재 값(VCA(i), VCB(i))을 결정한다. 따라서, 단계 72는 처리 모듈(12A, 12B) 중에서 동기화 방법으로 수행된다. 시각(i)에서의 암호화 변수(VCA , VCB)의 현재 값은 각각 공식 (3) 및 공식 (4)로 수식화된다.
다음 단계 74에서, 각각의 프로세서(22A, 22B)는 각각의 중간 출력 데이터(DIA, DIB)의 현재 값으로부터, 그리고 각각의 암호화 변수(VCA , VCB)의 현재 값으로부터 각각의 중간 보안(CSIA, CSIB)의 현재 값을 산출한다. 각각의 중간 보안 코드(CSIA , CSIB)는 공식 (2) 및 공식 (6)으로 각각 수식화된다.
다음 단계 76에서, 각각의 제1 산출 수단(22A, 22B)은 각각의 중간 출력 데이터(DIA, DIB) 및 각각의 중간 보안 코드(CSIA, CSIB)를 제2 산출 수단(44)으로 전송한다.
다음 단계 78에서, 제2 산출 수단(44)은 각 중간 보안 코드(CSIA, CSIB)의 현재 값으로부터, 그리고 복호화 상수 KD의 값으로부터 보안 코드(CS)의 현재 값을 산출한다. 보안 코드(CS)의 수식은 공식 (8)로 주어진다.
다음 단계(80)에서, 제2 산출 수단(44)은 중간 출력 데이터(DIA, DIB)의 값 중으로부터 하나의 값을 선택하며, 선택된 값은 예컨대 중간 출력 데이터(DIA)의 현재 값이다.
출력 데이터(D s)의 현재 값은 상기 선택된 값과 동일하며, 다시 말하면, 중간 출력 데이터(DIA)의 현재 값과 동일하다.
다음 단계 82에서, 제2 산출 수단(44) 출력 데이터(Ds) 및 보안 코드(CS)를 전송 수단(18)으로 전송한다. 그리고 나서, 전송 수단(18)은 출력 데이터(D s)와 보안 코드(CS)를 수신 디바이스(8)로 전송한다.
다음 단계 83에서, 수신 디바이스(8)는 출력 데이터(D s) 및 보안 코드(CS)를 수신한다.
다음 단계 84에서, 수신 디바이스(8)는 제어 알고리즘 적용하여, 출력 데이터(D s) 및 보안 코드(CS) 간의 일치에 대해 검사한다.
본 발명의 제1 양상에 따르면, 본 발명에 따른 데이터의 신뢰도를 개선하는 방법은 컴퓨터의 <<다수결>> 기능의 보장에 대한 가능성이 주어진다. 사실상, 중간 출력 데이터(DIA, DIB)의 값이 동일하면, 출력 데이터(D s)가 단일의 가능한 값인 경우에, 값, 다수값으로 추정된다. 게다가, 중간 출력 데이터(DIA, DIB)의 값이 다르면, 보안 코드(CS)가, 중간 출력 데이터(DIA, DIB)의 값이 동일할때 추정되는 값과는 다른 특정 값으로 추정된다.
따라서, 중간 출력 데이터(DIA, DIB)의 값이 다르면, 수신 디바이스(8)는 전송된 출력 데이터(Ds) 및 보안 코드(CS) 간의 불일치라고 결정한다. 그러면, 수신 디바이스(8)는 출력 데이터(D s)를 거부한다. 따라서, 본 발명에 따른 방법을 적용한 컴퓨터(6)에는 올바른 출력 데이터(D s), 또는 잘못되었으나 탐지 가능한 출력 데이터(D s)의 모든 경우에 제공되는 확률이 주어진다 .
제1 양상과는 별개로 그리고 추가로, 본 발명의 제2 양상에 따르면, 데이터의 신뢰도를 개선하는 방법은 컴퓨터(6)의 <<패시베이션(passivation)>> 기능을 보장하는 가능성을 제공한다. 좀더 구체적으로, 단계 66, 68 및 70가 이러한 <<패시베이션>> 기능에 대응한다.
재설정 단계 72에서, 컴퓨터(6)가 <<패시베이션>> 기능을 주기적으로 자가-테스트하여, 삭제 수단(26A, 16B)가 실패할 위험을 예방할 수 있는 장점이 있다. 이 위험은 각각의 제1 메모리 저장 수단(20A, 20B)에 있는 각각의 암호화 변수(VCA , VCB)를 삭제하는 삭제 수단에 대한 불가능성에 대응한다. 또한, 재설정 단계 72에서 처리 모듈 중 하나에 일어나는 오류의 경우에, 각 시각(i)에서 암호화 변수(VCA, VCB)에 의해 이론적으로 입증되는 공식 (7)의 수학적 관계는 더이상 입증되지 않는다. 이러한 특징에 의해, 컴퓨터(6)의 <<패시베이션>> 기능은 단계 72 동안 처리 모듈 중 하나의 오류의 경우라 할지라도, 영구적으로 보장되도록 지속된다.
따라서, 본 발명의 이러한 실시예에 따른 데이터의 신뢰도를 개선하는 방법은 컴퓨터의 다수결 기능을 보장하기 위해 전용 하드웨어 수단을 사용하지 않고도 가능하다.
이 구현예는 본 발명의 우선적인 구현예이다.
본 발명의 통상의 기술자는 단계 66, 68, 70 및 72를 포함하지 않고, 데이터의 신뢰도를 개선하는 방법에 동일하게 적용되는 것으로 이해할 수 있다.
도시되지 않은 대안으로, 컴퓨터는 데이터 처리 모듈(12)의 N1개 포함할 수 있고, N1는 3과 이상의 정수이다. 각 처리 모듈(12)은 제1 메모리 저장 수단(20) 및 제1 산출 수단(22)을 포함한다. 처리 모듈(12)의 제1 메모리 저장 수단(20)은 상기 모듈에 특정한 임의의 암호화 변수(VC)를 저장한다. 제1 산출 수단(22)의 각각은 입력 데이터(De)를 수신하고, 멤버(14)의 입력단에서 중간 데이터(DI) 및 중간 보안 코드(CSI)를 제공한다. 본 발명의 우선적인 구현예와 유사하게, 처리 모듈(12)은 그들의 통신 수단 및 그들 각각의 동기화 수단을 통해 암호화된 통신 프로토콜에 따라 데이터를 교환할 수 있다. 또한, 처리 모듈 각각의 산출 함수(σ), 암호화 함수(Fc), 및 재설정 함수(Freset)가 동일하다.
대안의 구현예에 따르면, 제1 산출 수단(22)의 각각은 또한 대응하는 중간 출력 데이터(DI) 및 가능한 다수값 사이의 매치(match)을 검사할 수 있다. 추가로, 상기 방법은 두 추가 단계 86, 88를 포함한다. 단계 68의 결말에서, 제1 산출 수단(22)의 각각이 중간 출력 데이터(DI)의 값 중으로부터 다수값이 존재한다고 결정하는 경우, 단계 86, 88은 단계 68과 72 사이에 수행된다.
단계 86에서, 제1 산출 수단(22)의 각각은 그것의 중간 출력 데이터(DI)의 값이 다수값과 동일한지를 검사한다.
단계 86의 결말에 제1 산출 수단(22)의 각각이 그것의 중간 출력 데이터(DI)의 값이 다수값과 동일하다고 검사하는 경우, 단계 72가 수행된다.
단계 86의 결말에, 하나 이상의 제1 산출 수단(22)이 그들의 중간 출력(DI)으로부터의 데이터의 값이 다수값과 동일하다고 검사하는 경우, 대응하는 처리 모듈의 삭제 수단이 단계 88동안 제1 메모리 저장 수단(20)에 있는 암호화 변수(VC)의 현재 값을 삭제한다.
통상의 기술자는 단계 76에서, 각 처리 모듈(12)의 제1 산출 수단(22)이 산출 멤버(14)의 제2 산출 수단(44)으로 대응하는 중간 출력 데이터(DI) 및 대응하는 중간 보안 코드(CSI)를 전송한다.
다음 단계 78에서, 제2 산출 수단(44)은 단계 76에서 전송된 각 중간 보안 코드(CSI)의 현재 값으로부터 보안 코드(CS)의 현재 값을 산출한다.
다음 단계 80에서, 제2 산출 수단(44)은 단계 76에서 전송된 중간 출력 데이터(DI)의 값 중으로부터 하나의 값을 선택한다. 그리고 나서, 출력 데이터(D s)의 현재 값은 선택된 값과 동일하게 취급된다.
다음 단계 82에서, 제2 산출 수단(44)은 출력 데이터(Ds) 및 보안 코드(CS)를 전송 수단(18)으로 전송한다. 전송 수단(18)은 그리고 나서 출력 데이터(D s) 및 보안 코드(CS)를 수신 디바이스(8)로 전송한다.
다음 단계 83에서, 수신 디바이스(8)는 출력 데이터(D s) 및 보안 코드(CS)를 수신한다.
다음 단계 84에서, 수신 디바이스(8)는 제어 알고리즘을 적용하여, 출력 데이터(D s)와 보안 코드(CS) 간의 일치 여부를 검사한다.
또다른 특정 대안 구현예에 따르면, 도시되지는 않았으나, 컴퓨터는 세개의 데이터 처리 모듈(12A, 12B, 12C)을 포함한다. 세개의 모듈 중 둘 이상의 모듈이 동일한 입력 데이터로부터 일치하는 출력 데이터를 생산할 때, <<다수결>> 조건에 해당된다.
이러한 컴퓨터는 두 쌍에 속하는 각각의 처리 모듈(12A, 12B, 12C)의 세 쌍인 (2A; 12B), (12B; 12C) 및 (12C; 12A)를 포함한다.
각 처리 모듈(12A, 12B, 12C)에서, 중간 보안 코드를 생성하는 과정은 중복된다. 특히, 두 개의 중간 보안 코드(CSI - AB, CSI - AC, CSI - BA, CSI-BC, CSI - CA, CSI - CB)가 각 모듈(12A, 12B, 12C)에 대해 생성된다. 더욱 구체적으로, 각 모듈(12A, 12B, 12C)은 그것이 속하는 각 쌍 (12A; 12B), (12B; 12C), (12C; 12A)에 대한 코드를 생성한다.
각 모듈(12A, 12B, 12C)의 제1 메모리 저장 수단(20)은 각 모듈에 관해, 두 암호화 변수(Vc1 및 Vc2)를 저장할 수 있다.
제1 산출 수단(22)의 각각은 입력 데이터(De)를 수신하고, 멤버(14)의 입력단에서 중간 데이터(DI) 및 두 중간 보안 코드(CSI)를 제공한다. 모듈(12A)은 두 코드(CSI - AB 및 CSI - AC)을 산출하고, 모듈(12B)은 두 코드(CSI - BA 및 CSI - BC)을 산출하고, 모듈(12C)은 두 코드(CSI - CA 및 CSI - CB)를 산출한다.
멤버(14)는 수신된 데이터(DI)를 기초로 하여, 세 개의 가능한 쌍인 (12A; 12B), (12B; 12C), (12C; 12A)으로부터 모듈의 쌍을 선택한다.
멤버(14)는 그리고 나서 선택된 쌍과 연관된 중간 보안 코드로부터 보안 코드(CS)를 산출한다. 따라서, 쌍 (12A; 12B)가 선택되었다면, 보안 코드(CS)가 중간 코드(CSI - AB 및 CSI - BA)로부터 산출된다.
따라서, 본 발명에 따른 데이터의 신뢰도를 강화하는 방법은 컴퓨터의 다수결 및 패시베이션 기능을 보장하기 위해 전용의 하드웨어 수단의 사용 없이도 가능할 수 있다.
1: 철도 관리 시스템
2: 통신 유닛
6: 컴퓨터
8: 수신 디바이스

Claims (12)

  1. 컴퓨터(6)에서 데이터의 신뢰도를 개선하는 방법으로서,
    상기 컴퓨터(6)는 입력 데이터(De)로부터 출력 데이터(Ds)를 제공할 수 있고, 둘 이상의 데이터 처리 하드웨어 모듈(12A, 12B) 및 산출 하드웨어(14)를 포함하며, 상기 산출 하드웨어는 각 데이터 처리 하드웨어 모듈(12A, 12B)에 연결되고,
    상기 방법은,
    각 데이터 처리 하드웨어 모듈(12A, 12B)을 이용해, 입력 데이터(De)로부터 중간 데이터(DIA, DIB)를 산출하는 단계(64)로서, 산출은 산출 함수(σ)를 입력 데이터(De)에 적용하여 이루어지며, 상기 산출 함수(σ)는 모든 데이터 처리 하드웨어 모듈(12A, 12B)에 대해 동일한, 단계를 포함하고,
    상기 방법은,
    - 각 데이터 처리 하드웨어 모듈(12A, 12B)을 이용해, 중간 보안 코드(CSIA, CSIB)를 대응하는 중간 데이터(DIA, DIB)로부터 산출하는 단계(74);
    - 각 데이터 처리 하드웨어 모듈(12A, 12B)을 이용해, 상기 중간 보안 코드(CSIA, CSIB) 및 상기 중간 데이터(DIA, DIB)를 상기 산출 하드웨어(14)에 전송하는 단계(76);
    - 상기 산출 하드웨어(14)를 이용해, 상기 중간 보안 코드(CSIA, CSIB)로부터 보안 코드(CS)를 산출하는 단계(78);
    - 상기 산출 하드웨어(14)를 이용해, 수신받은 중간 데이터(DIA, DIB)로부터 하나의 중간 데이터를 선택하는 단계(80)로서, 상기 컴퓨터(6)의 출력 데이터(Ds)는 선택된 중간 데이터를 포함하는, 단계; 및
    - 상기 산출 하드웨어(14)를 이용해, 상기 보안 코드(CS) 및 상기 출력 데이터(Ds)를 수신 디바이스(8)로 전송하는 단계(82)로서, 상기 수신 디바이스는 컴퓨터의 다수결 및 패시베이션 기능을 보장할 가능성을 주기 위해 상기 보안 코드 및 상기 출력 데이터 간의 일치 여부를 검사할 수 있는, 단계
    를 포함하는,
    데이터의 신뢰도 개선 방법.
  2. 제1항에 있어서,
    각 데이터 처리 하드웨어 모듈(12A, 12B)은 하나 이상의 암호화 변수(VCA, VCB) 및 암호화 함수(Fc)를 메모리에 저장하는 제1 수단(20A, 20B)를 포함하고, 상기 암호화 함수(Fc)는 모든 데이터 처리 하드웨어 모듈(12A, 12B)에 대해 동일하며,
    상기 중간 보안 코드(CSIA, CSIB)를 대응하는 중간 데이터(DIA, DIB)로부터 산출하는 단계(74) 동안, 각 데이터 처리 하드웨어 모듈(12A, 12B)을 이용하여, 암호화 함수(Fc)를, 적어도 상기 중간 데이터(DIA, DIB)에 적용하고 상기 암호화 변수(VCA, VCB)에 적용하여, 산출이 이루어지는, 데이터의 신뢰도 개선 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 산출 하드웨어(14)는 하나 이상의 복호화 상수(KD) 및 통합 함수(consolidation function, Fconso)를 메모리에 저장하는 제2 수단(42)을 포함하고,
    상기 중간 보안 코드(CSIA, CSIB)로부터 보안 코드(CS)를 산출하는 단계(78) 동안, 상기 산출 하드웨어(14)를 이용하여, 통합 함수(Fconso)를, 각각의 수신받은 중간 보안 코드(CSIA, CSIB)에 적용하고 상기 복호화 상수(KD)에 적용하여, 산출이 이루어지는, 데이터의 신뢰도 개선 방법.
  4. 제2항에 있어서,
    상기 중간 데이터를 산출하는 단계(64)와 상기 중간 보안 코드를 산출하는 단계(74) 사이에,
    각 데이터 처리 하드웨어 모듈(12A, 12B)을 이용해, 그것의 중간 데이터(DIA, DIB)의 값을 다른 데이터 처리 하드웨어 모듈(12A, 12B)로 전송하는 단계(66), 및
    각 데이터 처리 하드웨어 모듈(12A, 12B)을 이용해, 상기 중간 데이터(DIA, DIB)의 값의 전부로부터 다수값의 존재 여부를 테스트하는 단계(68)로서, 중간 데이터(DIA, DIB)의 값 가운데 가장 빈번한 값이 존재한다면, 상기 다수값은 상기 가장 빈번한 값인, 단계를 더 포함하는, 데이터의 신뢰도 개선 방법.
  5. 제4항에 있어서,
    상기 테스트하는 단계(68)에서 다수값의 존재 여부에 대한 테스트 결과가 네거티브인 경우, 상기 데이터 처리 하드웨어 모듈(12A, 12B) 중 하나를 이용해, 그것의 암호화 변수(VCA, VCB)를 숨기는 단계(70)를 포함하는, 데이터의 신뢰도 개선 방법.
  6. 제2항에 있어서,
    중간 보안 코드를 산출하는 단계(74) 전에, 각 데이터 처리 하드웨어 모듈(12A, 12B)을 이용해, 그것의 암호화 변수(VCA, VCB)를 재설정하는 단계(72)를 더 포함하고,
    상기 재설정하는 단계(72)는 모든 데이터 처리 하드웨어 모듈(12A, 12B) 간에 동기화 방식으로 수행되는, 데이터의 신뢰도 개선 방법.
  7. 제1항 또는 제2항에 있어서,
    상기 출력 데이터(Ds)는 상기 선택하는 단계(80) 동안 상기 산출 하드웨어(14)에 의해 선택된 중간 데이터인, 데이터의 신뢰도 개선 방법.
  8. 제1항 또는 제2항에 있어서,
    상기 수신 디바이스(8)를 이용해 상기 보안 코드(CS) 및 상기 출력 데이터(Ds)를 수신하는 단계(83), 및 상기 수신 디바이스(8)를 이용해 상기 보안 코드(CS)와 상기 출력 데이터(Ds) 간의 일치 여부를 검사하는 단계(84)를 더 포함하는, 데이터의 신뢰도 개선 방법.
  9. 제1항 또는 제2항에 있어서,
    상기 컴퓨터는 세 개의 데이터 처리 하드웨어 모듈을 포함하고, 상기 세 개의 데이터 처리 하드웨어 모듈은 세 쌍의 모듈에서 분배된 것이고, 각 모듈은 개별의 두 쌍에 속하고,
    각각의 데이터 처리 하드웨어 모듈은 두 개의 중간 보안 코드를 대응하는 중간 데이터로부터 산출하고, 각각의 중간 보안 코드는 상기 모듈이 속하는 두 쌍 중 한 쌍과 연관되고,
    각 데이터 처리 하드웨어 모듈은 상기 중간 데이터 및 연관된 두 개의 중간 보안 코드를 상기 산출 하드웨어(14)에 전송하고,
    상기 산출 하드웨어(14)는, 상기 데이터 처리 하드웨어 모듈 중 하나에 의해 전송되고 제1 쌍의 모듈과 연관되는 제1 중간 보안 코드로부터 상기 보안 코드(Cs)를 산출하고, 또 다른 데이터 처리 하드웨어 모듈에 의해 전송되고 제1 쌍의 모듈과 연관되는 제2 중간 보안 코드로부터 상기 보안 코드(Cs)를 산출하고,
    상기 산출 하드웨어(14)에 의해 선택된 중간 데이터는 제1 쌍의 모듈과 연관되는 중간 데이터 중 하나인, 데이터의 신뢰도 개선 방법.
  10. 입력 데이터(De)로부터 출력 데이터(Ds)를 제공할 수 있는 컴퓨터(6)로서,
    - 각 데이터 처리 하드웨어 모듈(12A, 12B)이 입력 데이터(De)로부터 중간 데이터(DIA, DIB)를 산출하는 제1 산출 수단(22A, 22B)을 포함하는 둘 이상의 데이터 처리 하드웨어 모듈(12A, 12B)로서, 상기 제1 산출 수단은 모든 데이터 처리 하드웨어 모듈(12A, 12B)에 대해 동일한 산출 함수(σ)을 입력 데이터(De)에 적용할 수 있는, 둘 이상의 데이터 처리 하드웨어 모듈(12A, 12B), 및
    - 각 데이터 처리 하드웨어 모듈(12A, 12B)에 연결된 산출 하드웨어(14)
    를 포함하고,
    상기 제1 산출 수단(22A, 22B)은 중간 보안 코드(CSIA, CSIB)를 대응하는 중간 데이터(DIA, DIB)로부터 산출할 수 있고, 각 데이터 처리 하드웨어 모듈(12A, 12B)은 상기 중간 보안 코드(CSIA, CSIB) 및 상기 대응하는 중간 데이터(DIA, DIB)를 상기 산출 하드웨어(14)로 전송할 수 있고,
    상기 산출 하드웨어(14)는, 중간 보안 코드(CSIA, CSIB)로부터 보안 코드(Cs)를 산출하는 제2 산출 수단(44)을 포함하고, 수신받은 중간 데이터(DIA, DIB) 중에서 하나의 중간 데이터를 선택할 수 있고, 상기 보안 코드(CS), 및 선택된 중간 데이터를 포함하는 상기 출력 데이터(Ds)를 수신 디바이스(8)로 전송할 수 있으며,
    상기 수신 디바이스는 컴퓨터의 다수결 및 패시베이션 기능을 보장할 가능성을 주기 위해 상기 보안 코드 및 상기 출력 데이터 간의 일치 여부를 검사할 수 있는,
    컴퓨터.
  11. 통신 유닛으로서,
    컴퓨터(6) 및 데이터 수신 디바이스(8)를 포함하고,
    상기 컴퓨터(6)는 보안 코드(CS) 및 데이터(Ds)를 제공할 수 있고,
    수신 디바이스(8)는, 메모리에 제어 알고리즘을 저장하는 수단을 포함하고, 상기 보안 코드(CS) 및 상기 출력 데이터(Ds)를 수신할 수 있고, 상기 제어 알고리즘을 적용하여 상기 보안 코드(CS)와 상기 출력 데이터(Ds) 간의 일치 여부를 검사할 수 있고,
    상기 컴퓨터(6)는 청구항 10에 따른 컴퓨터인,
    통신 유닛.
  12. 철도 관리 시스템(1)에 적어도 하나의 통신 유닛(2)을 사용하는 방법으로서,
    통신 유닛(2)은 데이터 수신 디바이스(8) 및 제10항을 따르는 컴퓨터(6)를 포함하고, 상기 컴퓨터(6)는 철도 관리 시스템(1) 내에 고정되고,
    상기 데이터 수신 디바이스(8)는 제어 알고리즘을 저장하기 위한 수단을 포함하며, 상기 방법은,
    상기 컴퓨터(6)가, 보안 코드(CS) 및 출력 데이터(Ds)를 데이터 수신 디바이스(8)에 제공하는 단계;
    상기 수신 디바이스(8)가, 상기 보안 코드(CS)와 상기 출력 데이터(Ds)를 수신하는 단계; 및
    상기 수신 디바이스(8)가, 상기 보안 코드(CS)와 상기 출력 데이터(Ds) 간의 일치 여부를 검사하는 단계를 포함하는,
    철도 관리 시스템(1)에 적어도 하나의 통신 유닛(2)을 사용하는 방법.
KR1020130070343A 2012-06-19 2013-06-19 컴퓨터, 상기 컴퓨터를 포함하는 통신 유닛, 상기 유닛을 포함하는 철도 관리 시스템, 및 컴퓨터 내에서 데이터 신뢰도를 개선하는 방법 KR102147750B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1255728A FR2992083B1 (fr) 2012-06-19 2012-06-19 Calculateur, ensemble de communication comportant un tel calculateur, systeme de gestion ferroviaire comportant un tel ensemble, et procede de fiabilisation de donnees dans un calculateur
FR1255728 2012-06-19

Publications (2)

Publication Number Publication Date
KR20130142960A KR20130142960A (ko) 2013-12-30
KR102147750B1 true KR102147750B1 (ko) 2020-08-25

Family

ID=47294924

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130070343A KR102147750B1 (ko) 2012-06-19 2013-06-19 컴퓨터, 상기 컴퓨터를 포함하는 통신 유닛, 상기 유닛을 포함하는 철도 관리 시스템, 및 컴퓨터 내에서 데이터 신뢰도를 개선하는 방법

Country Status (8)

Country Link
US (1) US9087217B2 (ko)
EP (1) EP2677454B1 (ko)
KR (1) KR102147750B1 (ko)
CN (1) CN103577760B (ko)
BR (1) BR102013015403B1 (ko)
CA (1) CA2819517C (ko)
ES (1) ES2585111T3 (ko)
FR (1) FR2992083B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8714494B2 (en) * 2012-09-10 2014-05-06 Siemens Industry, Inc. Railway train critical systems having control system redundancy and asymmetric communications capability
US9233698B2 (en) * 2012-09-10 2016-01-12 Siemens Industry, Inc. Railway safety critical systems with task redundancy and asymmetric communications capability
CN105184171B (zh) * 2015-09-22 2018-06-22 湖南中车时代通信信号有限公司 安全计算机平台文件系统的组件、运行方法及信息处理装置
CN109842603A (zh) * 2017-11-29 2019-06-04 北京通号国铁城市轨道技术有限公司 一种时间同步方法及装置
CN111142367B (zh) * 2018-11-02 2022-01-28 株洲中车时代电气股份有限公司 一种针对铁路安全应用的控制系统
CN112286715A (zh) * 2020-09-23 2021-01-29 卡斯柯信号有限公司 基于编码技术的安全输出方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070192824A1 (en) 2006-02-14 2007-08-16 Microsoft Corporation Computer hosting multiple secure execution environments
US20080196037A1 (en) * 2007-02-13 2008-08-14 Thales Process for maintaining execution synchronization between several asynchronous processors working in parallel and in a redundant manner
US20080301461A1 (en) * 2007-05-31 2008-12-04 Vasco Data Security International, Inc. Remote authentication and transaction signatures

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2017853C3 (de) 1970-04-14 1975-12-11 Standard Elektrik Lorenz Ag, 7000 Stuttgart Steuerverfahren zur Sicherung der Informationsverarbeitung und -Übertragung
US4326291A (en) 1979-04-11 1982-04-20 Sperry Rand Corporation Error detection system
DE3040080C1 (de) 1980-10-24 1987-11-12 Standard Elektrik Lorenz Ag, 7000 Stuttgart Einrichtung zur signaltechnisch sicheren Datenuebertragung zwischen einer Trasse und auf dieser gefuehrten Fahrzeugen
US4843608A (en) 1987-04-16 1989-06-27 Tandem Computers Incorporated Cross-coupled checking circuit
DE3924266A1 (de) 1989-07-22 1991-01-31 Standard Elektrik Lorenz Ag Verfahren zum betrieb einer signaltechnisch sicheren schnittstelle
FR2704329B1 (fr) * 1993-04-21 1995-07-13 Csee Transport Système de sécurité à microprocesseur, applicable notamment au domaine des transports ferroviaires.
DE19532639C2 (de) 1995-08-23 2000-11-30 Siemens Ag Einrichtung zur einkanaligen Übertragung von aus zwei Datenquellen stammenden Daten
DE19532640C2 (de) 1995-08-23 2000-11-30 Siemens Ag Einrichtung zur einkanaligen Übertragung von aus zwei Datenquellen stammenden Daten
US5757915A (en) * 1995-08-25 1998-05-26 Intel Corporation Parameterized hash functions for access control
DE19833867C5 (de) 1998-07-28 2006-10-12 Alcatel Verfahren zur sicheren einkanaligen Übertragung von Daten zwischen den Rechnerknoten eines Rechnerverbundes sowie Rechnerverbund und Rechnerknoten
DE10011887B4 (de) 2000-03-07 2004-09-02 Siemens Ag Verfahren zur signaltechnisch sicheren Übermittlung von Daten zwischen signaltechnisch sicheren Rechnern sowie Einrichtung hierzu
DE10040866A1 (de) 2000-08-21 2002-03-07 Alcatel Sa Rechnersystem
GB2368233B (en) * 2000-08-31 2002-10-16 F Secure Oyj Maintaining virus detection software
DE10053023C1 (de) 2000-10-13 2002-09-05 Siemens Ag Verfahren zum Steuern eines sicherheitskritischen Bahnbetriebsprozesses und Einrichtung zur Durchführung dieses Verfahrens
US6910128B1 (en) * 2000-11-21 2005-06-21 International Business Machines Corporation Method and computer program product for processing signed applets
DE10065907A1 (de) 2000-11-29 2002-09-26 Heinz Gall Verfahren zum gesicherten Datentransport
CA2450601C (en) * 2001-06-12 2012-10-16 Research In Motion Limited System and method for compressing secure e-mail for exchange with a mobile data communication device
US6948067B2 (en) * 2002-07-24 2005-09-20 Qualcomm, Inc. Efficient encryption and authentication for data processing systems
US7660998B2 (en) * 2002-12-02 2010-02-09 Silverbrook Research Pty Ltd Relatively unique ID in integrated circuit
GB0304663D0 (en) * 2003-02-28 2003-04-02 Ncipher Corp Ltd A method and system of securely enforcing a computer policy
US7730518B2 (en) * 2003-07-31 2010-06-01 Emc Corporation Method and apparatus for graph-based partition of cryptographic functionality
KR100915768B1 (ko) * 2003-10-17 2009-09-04 인터내셔널 비지네스 머신즈 코포레이션 컴퓨터 프로그램 소자, 컴퓨터 프로그램 매체, 사용자입증-서명 값 생성용 입증 값 발행 방법 및 시스템
DE102004039932A1 (de) 2004-08-17 2006-03-09 Phoenix Contact Gmbh & Co. Kg Verfahren und Vorrichtung zur Busankopplung sicherheitsrelevanter Prozesse
US8020001B2 (en) * 2006-02-23 2011-09-13 Qualcomm Incorporated Trusted code groups
EP2044546B1 (en) * 2006-07-18 2012-12-26 Certicom Corp. System and method for authenticating a gaming device
US8156082B2 (en) * 2006-10-06 2012-04-10 Sybase, Inc. System and methods for temporary data management in shared disk cluster
DE102007032805A1 (de) 2007-07-10 2009-01-15 Siemens Ag Verfahren und Systemarchitektur zur sicheren einkanaligen Kommunikation zum Steuern eines sicherheitskritischen Bahnbetriebsprozesses
US8295486B2 (en) * 2007-09-28 2012-10-23 Research In Motion Limited Systems, devices, and methods for outputting alerts to indicate the use of a weak hash function
US8566929B2 (en) * 2008-01-14 2013-10-22 Telefonaktiebolaget Lm Ericsson (Publ) Integrity check failure detection and recovery in radio communications system
KR101639587B1 (ko) * 2008-03-05 2016-07-14 이르데토 비.브이. 암호 시스템
US8150039B2 (en) * 2008-04-15 2012-04-03 Apple Inc. Single security model in booting a computing device
JP5236352B2 (ja) * 2008-05-15 2013-07-17 株式会社日立製作所 アプリケーション配信制御システム、アプリケーション配信制御方法、情報処理装置、およびクライアント端末
CN102106135A (zh) * 2008-06-16 2011-06-22 艾利森电话股份有限公司 经由中间节点发送媒体数据
CN101739298B (zh) * 2008-11-27 2013-07-31 国际商业机器公司 共享缓存管理方法和系统
US8713688B2 (en) * 2010-03-24 2014-04-29 Microsoft Corporation Automated security analysis for federated relationship
TW201201041A (en) * 2010-06-21 2012-01-01 Zhe-Yang Zhou Data security method and system
US8605905B2 (en) * 2010-08-30 2013-12-10 Futurewei Technologies, Inc. System and method for securing wireless transmissions
US8972746B2 (en) * 2010-12-17 2015-03-03 Intel Corporation Technique for supporting multiple secure enclaves

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070192824A1 (en) 2006-02-14 2007-08-16 Microsoft Corporation Computer hosting multiple secure execution environments
US20080196037A1 (en) * 2007-02-13 2008-08-14 Thales Process for maintaining execution synchronization between several asynchronous processors working in parallel and in a redundant manner
US20080301461A1 (en) * 2007-05-31 2008-12-04 Vasco Data Security International, Inc. Remote authentication and transaction signatures

Also Published As

Publication number Publication date
BR102013015403A8 (pt) 2016-05-31
US9087217B2 (en) 2015-07-21
CA2819517A1 (fr) 2013-12-19
FR2992083A1 (fr) 2013-12-20
EP2677454B1 (fr) 2016-05-18
BR102013015403B1 (pt) 2021-07-20
CN103577760B (zh) 2017-12-26
FR2992083B1 (fr) 2014-07-04
EP2677454A1 (fr) 2013-12-25
CN103577760A (zh) 2014-02-12
ES2585111T3 (es) 2016-10-03
KR20130142960A (ko) 2013-12-30
BR102013015403A2 (pt) 2015-08-11
CA2819517C (fr) 2021-04-27
US20130339755A1 (en) 2013-12-19

Similar Documents

Publication Publication Date Title
KR102147750B1 (ko) 컴퓨터, 상기 컴퓨터를 포함하는 통신 유닛, 상기 유닛을 포함하는 철도 관리 시스템, 및 컴퓨터 내에서 데이터 신뢰도를 개선하는 방법
US10530793B2 (en) System and method for detection and prevention of attacks on in-vehicle networks
CN109361740B (zh) 一种区块链的区块生成方法、装置、设备和介质
EP3647955A1 (en) Consensus-forming method in network, and node for configuring network
US9081969B2 (en) Apparatus and method for remotely deleting critical information
US10404717B2 (en) Method and device for the protection of data integrity through an embedded system having a main processor core and a security hardware module
US8762788B2 (en) Redundancy control system and method of transmitting computational data thereof for detection of transmission errors and failure diagnosis
CN102684999B (zh) 数据包处理方法及装置
US20170324557A1 (en) Information processing apparatus and method for authenticating message
US11171776B2 (en) Encryption key distribution system, key distribution ECU and key reception ECU
CN104714517A (zh) 用于安全关键系统的可靠、低延迟的硬件和软件进程间通信通道
CN109254956B (zh) 一种数据下载的方法、装置及电子设备
KR101596753B1 (ko) 메시지 인증 코드 분할을 통한 순차적 can 패킷 인증 방법 및 그 장치
CN104714862A (zh) 用于安全和任务关键系统的表决架构
EP3825889A1 (en) Vehicle communication device, method of determining communication abnormality, and storage medium storing program
CN108352991A (zh) 信息处理装置以及不正当消息检测方法
CN109088729A (zh) 一种密钥存储方法及装置
CN111010258B (zh) 一种基于编码的计算机联锁系统通信方法
CN104253667A (zh) 一种应用于手机平台的串行同步总线校验反馈系统和方法
US20150220755A1 (en) Solution for security, safe and time integrity communications in automotive environments
CN114363094B (zh) 一种数据分享方法、装置、设备及存储介质
JP7082084B2 (ja) 情報送受信システム、情報送受信方法、および、プログラム、ならびに、連動論理処理装置、および、電子端末
KR20130100762A (ko) 통신 장치 및 통신 방법
CN115941184B (zh) 加密模块故障处理方法、装置、电子设备、系统及芯片
US9641287B2 (en) Methods and apparatus for high-integrity data transfer with preemptive blocking

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant