KR20180009753A - 네트워크에서 비밀 또는 키 생성 방법 - Google Patents

네트워크에서 비밀 또는 키 생성 방법 Download PDF

Info

Publication number
KR20180009753A
KR20180009753A KR1020177033600A KR20177033600A KR20180009753A KR 20180009753 A KR20180009753 A KR 20180009753A KR 1020177033600 A KR1020177033600 A KR 1020177033600A KR 20177033600 A KR20177033600 A KR 20177033600A KR 20180009753 A KR20180009753 A KR 20180009753A
Authority
KR
South Korea
Prior art keywords
subscriber
value
sequence
values
transmission
Prior art date
Application number
KR1020177033600A
Other languages
English (en)
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
Application filed by 로베르트 보쉬 게엠베하 filed Critical 로베르트 보쉬 게엠베하
Publication of KR20180009753A publication Critical patent/KR20180009753A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Abstract

본 발명은 네트워크에서 비밀 또는 키를 생성하기 위한 방법에 관한 것이다. 본 발명의 방법에 따라서, 네트워크는 적어도 하나의 제 1 가입자 및 제 2 가입자 그리고 적어도 제 1 가입자와 제 2 가입자 사이의 공통 전송 채널을 포함한다. 제 1 가입자는 전송 채널로 적어도 제 1 값 및 제 2 값을 제공할 수 있고 제 2 가입자는 전송 채널로 적어도 제 1 값 및 제 2 값을 제공할 수 있으며; 전송 채널 상에서 상호 간의 실질적인 동기식 전송을 위해 제 1 가입자는 제 1 가입자 값 시퀀스를 생성하고 제 2 가입자는 제 2 가입자 값 시퀀스를 생성하며; 제 1 가입자 및 제 2 가입자는 각각 하나의 공통 비밀 또는 하나의 공통 키를 생성하되, 제 1 가입자는 제 1 가입자 값 시퀀스에 대한 정보들뿐 아니라 전송 채널 상에서 제 2 가입자 값 시퀀스와 제 1 가입자 값 시퀀스의 중첩의 결과로 발생하는 중첩 값 시퀀스도 기반으로 하여 생성하고, 제 2 가입자는 제 2 가입자 값 시퀀스에 대한 정보들뿐 아니라 전송 채널 상에서 제 2 가입자 값 시퀀스와 제 1 가입자 값 시퀀스의 중첩의 결과로 발생하는 중첩 값 시퀀스도 기반으로 하여 생성한다. 특정한 간격들로 또는 검출된 중첩 값 시퀀스에 따라서, 적어도 제 1 가입자는 제 1 가입자 값 시퀀스의 외부에서 적어도 하나의 채움 값을 전송 채널로 제공하거나, 또는 제 2 가입자는 제 2 가입자 값 시퀀스의 외부에서 적어도 하나의 채움 값을 전송 채널로 제공하며, 그럼으로써 전송 채널 상에서 에지 변경 또는 값 변경이 수행된다.

Description

네트워크에서 비밀 또는 키 생성 방법
본 발명은 네트워크에서 비밀, 또는 비밀 암호 키의 생성을 위한 방법, 특히 네트워크의 2개의 가입자에서 하나의 공통 비밀 키를 생성하기 위한 방법에 관한 것이다. 점대점 링크들 역시도 통상적인 방식으로 네트워크들에 속하며, 그리고 여기서는 상기 개념으로 마찬가지로 어드레싱(addressing)되어야 한다. 이 경우, 두 가입자는 공통으로 이용되는 전송 매체를 통해 통신한다. 이런 경우에, 논리 비트 시퀀스들(또는 더 일반적으로는: 값 시퀀스들)은 상응하는 전송 방법들을 통해 신호들 또는 신호 시퀀스들로서 물리적으로 전송된다. 기초가 되는 통신 시스템은 예컨대 CAN 버스일 수 있다. 상기 CAN 버스는 우성 및 열성 비트들, 또는 그에 상응하게 우성 및 열성 신호들의 전송을 제공하며, 네트워크의 일측 가입자의 우성 신호 또는 비트는 열성 신호들 또는 비트들보다 우세하다. 열성 신호에 상응하는 상태는, 모든 참여 가입자가 전송을 위해 열성 신호를 제공할 때에만, 또는 동시에 송신하는 모든 가입자가 열성 신호 레벨을 전송할 때에만, 전송 매체에서 설정된다.
세계가 점점 더 많은 네트워크 연결되고 있는 환경에서 다양한 장치들 간의 보안 통신은 점점 더 중요해지고 있고, 많은 적용 분야에서 상응하는 애플리케이션들의 승인 및 그에 따른 경제적인 성공을 위한 실질적인 전제조건이 되고 있다. 이는 (각각의 애플리케이션에 따라) 예컨대 전송할 데이터의 기밀 보장, 참여 노드들(node) 상호 간의 인증 또는 데이터 무결성의 보장과 같은 다양한 보호 목적들을 포함한다.
상기 보호 목적들의 달성을 위해, 통상 적합한 암호화 기법들(cryptographic method)이 사용되며, 이런 암호화 기법들은 일반적으로 2가지 카테고리로 세분화될 수 있다. 요컨대 한편으로 송신기와 수신기가 동일한 암호 키를 갖는 대칭 기법(symmetric method)과, 다른 한편으로는 송신기가 수신기의 공개 키(public key)(즉, 잠재적 공격자도 알 수 있는 키)로 전송할 데이터를 암호화하긴 하나, 복호화는 이상적으로 수신기에만 알려진 관련 개인 키(private key)로만 수행될 수 있는 비대칭 기법이 있다.
비대칭 기법들에는, 특히 일반적으로 계산 복잡도가 매우 높다는 단점이 있다. 그에 따라, 비대칭 기법들은, 통상 상대적으로 적은 계산 처리 능력 및 적은 메모리만을 가지면서 예컨대 배터리 모드 또는 에너지 하베스팅(Energy Harvesting)의 이용을 기반으로 에너지 효율적으로 작동해야 하는 예컨대 센서들, 액추에이터들 등과 같은 자원 제한형 노드들을 위해 조건부로만 적합하다. 그 밖에도, 보통 데이터 전송을 위한 제한된 대역폭만이 가용하며, 이는 2048비트 또는 더 큰 비트의 길이를 갖는 비대칭 키들의 교환을 덜 매력적이게 한다.
이와 반대로, 대칭 기법들의 경우, 수신기뿐만 아니라 송신기도 동일한 키를 갖는 것이 보장되어야 한다. 이 경우, 관련된 키 관리는 일반적으로 매우 까다로운 과제이다. 이동 무선 통신의 분야에서 키들은 예컨대 SIM 카드들에 의해 이동 전화기 내에 통합되며, 그 다음 관련 네트워크는, SIM 카드의 고유 식별자에, 상응하는 키를 할당할 수 있다. 이와 반대로 무선 LAN의 경우에는 통상 네트워크의 설정 시 (일반적으로 비밀번호의 입력을 통해) 사용할 키의 수동 입력이 수행된다. 그러나 상기 키 관리는, 일반적으로 예컨대 센서 네트워크 또는 다른 기계 대 기계 통신 시스템들에서, 예컨대 CAN 기반 차량 네트워크들에서도, 노드 수가 너무 많으면, 급속도로 너무 복잡해져서 실행될 수 없게 된다. 그 밖에도, 사용할 키의 변경은 보통 전혀 불가능하거나, 또는 매우 높은 비용으로만 변경이 가능하다.
통상의 암호화 방법들을 이용하여 예컨대 자동차 네트워크에서 조작으로부터 센서 데이터의 보호를 위한 방법 및 거래 인증의 보장이 예컨대 DE 102009002396 A1호 및 DE 102009045133 A1호에 공개되어 있다.
또한, 얼마 전부터, "물리 계층 보안(Physical Layer Security)"이란 키워드 하에, 관련된 노드들 간의 전송 채널들의 물리적 특성들을 기반으로 대칭 기법들을 위한 키들이 자동으로 생성될 수 있게 하는 새로운 유형의 접근법들이 연구 및 개발되고 있다. 이 경우, 대개는, 전송 채널들의 상호관계(reciprocity) 및 고유의 임의성(inherent randomness)을 활용한다. 그러나 특히 유선 또는 광학 시스템들의 경우, 상기 접근법은, 보통 조건부로만 적합한데, 그 이유는 상응하는 채널들이 통상 매우 제한된 시간에 따른 가변성만을 가질 뿐이고 공격자는 예컨대 모델링을 이용하여 송신기와 수신기 간의 채널 파라미터들에 대해 상대적으로 양호한 추론을 수행할 수 있기 때문이다. 연결된 유닛들의 채널 특성들을 기반으로 분포된 시스템 내에서 보안된 통신을 위한 상기 유형의 방법들은 예컨대 종래에 공개되지 않은 출원들 DE 10 2014 208975 A1호 및 DE 10 2014 209042 A1호에 기재되어 있다.
컨트롤러 영역 네트워크(CAN)에서, 그리고 CAN-FD에서 비트 스터핑(bit stuffing)을 위한 방법들은 예컨대 DE 10 2011 080476 A1호에 나타난다.
종래에 공개되지 않은 DE 10 2015 207220 A1호는 2개의 통신 가입자 간의 공개 논의(public discussion)를 이용하여 공통 비밀, 또는 비밀 대칭 키의 생성을 위한 방법을 개시하고 있다.
본 발명의 과제는 네트워크에서 비밀, 또는 비밀 암호 키의 생성을 위한 방법, 특히 네트워크의 2개의 가입자에서 하나의 공통 비밀 키를 생성하기 위한 방법을 제공하는 것이다.
독립 청구항들에 따른, 비밀, 또는 암호 키의 생성을 위한 방법들은 어떠한 수동 개입도 요구하지 않으며, 그에 따라 2개의 노드 간의 보안 통신 관계 또는 보안 통신 링크의 자동화된 구성을 가능하게 한다. 또한, 본원의 방법들은, 특히 예컨대 필요한 메모리 자원 및 계산 처리 능력과 같은 필요한 하드웨어 설계와 관련하여, 복잡도가 매우 낮으며, 에너지 수요 및 시간 수요도 적다. 그 밖에도, 본원의 방법들은 매우 높은 키 생성률을 제공하는 동시에 에러 확률은 매우 낮다.
본원의 방법들은, 하나의 네트워크에서 가입자들이 하나의 통신 채널을 통해 서로 통신한다는 것을 전제로 한다. 이 경우, 가입자들은 전송 채널 상에서 물리적 신호들을 이용하여 특히 논리 값 시퀀스들(2진 논리가 다루어지는 경우, 비트 시퀀스들)을 전송한다. 비록 신호들을 통해 전송 채널 상에서, 다시 말하면 물리적 계층 상에서 가능한 중첩들이 발생한다고 하더라도, 본원의 명세서에서 하기에는 논리적 계층이 우선적으로 고려된다. 그에 따라, 전송되는 논리 값 시퀀스들 및 이 논리 값 시퀀스들의 논리적 중첩이 고려된다.
따라서 네트워크의 가입자들은 (예컨대 논리 비트 "1"에 할당되는) 제 1 신호들과 (예컨대 논리 비트 "0"에 할당되는) 제 2 신호들을 통신 채널로 제공할 수 있고, 통신 채널 상에서 결과에 따른 신호들을 검출할 수 있다. 2개의 가입자가 (실질적으로) 동시에 각각의 신호 시퀀스를 전송한다면, 가입자들은 통신 채널 상에서 그에 따른 중첩을 검출할 수 있다. 그런 다음, 통신 채널 상에서 2개의 (독립된) 신호의 (실질적으로) 동시 전송의 결과에 따른 유효 신호는 재차 하나(또는 다수)의 정해진 논리 값(또는 값들)에 할당된다.
이 경우, 전송은, 하나의 신호 시퀀스의 개별 신호들의 전송이 전송 매체 상에서 수행되는 점에 한해, 특히 제 1 가입자의 n번째 논리 값 또는 비트에 상응하는 신호가 제 2 가입자의 n번째 논리 값 또는 비트에 상응하는 신호와 적어도 부분적으로 중첩되는 점에 한해, 실질적으로 동기식이어야 한다. 상기 중첩은, 각각 가입자들이 중첩을 검출하거나 상응하는 중첩 값을 결정할 수 있도록 하기 위해, 충분히 길어야 한다.
이 경우, 중첩은, 중재 메커니즘들을 통해, 또는 물리적 신호 중첩을 통해 결정될 수 있다. 중재 메커니즘은 예컨대 노드가 열성 레벨을 인가하고자 하지만, 버스 상에서 우성 레벨을 검출함에 따라 전송을 중단하게 되는 경우를 의미한다. 이런 경우에, 2개의 신호의 물리적 중첩이 발생하는 것이 아니라, 전송 채널 상에서 우성 신호만이 확인된다.
그런 다음, 가입자들은, 중첩의 결과에 따른 값 시퀀스 및 자신의 값 시퀀스로부터, 외부에 있는 공격자에게 알려지지 않은 키를 생성할 수 있다. 이에 대한 근거는, 예컨대 공통으로 사용되는 전송 매체 상에 인가된 유효한 전체 신호를 도청할 수 있는 외부에 있는 공격자가 값 시퀀스들의 중첩만을 확인할 뿐, 가입자들의 개별 값 시퀀스들에 대한 정보들은 갖지 못한다는 데 있다. 그에 따라, 가입자들은 공격자에 대해 비밀 키의 생성을 위해 사용할 수 있는 더 많은 정보를 갖게 된다.
설명된 방법들이 예컨대 CAN과 같은 특정한 시스템들에서 추가 조치 없이 사용된다면, 동일한 비트들 또는 신호 레벨들의 상대적으로 긴 시퀀스들이 공통으로 사용되는 전송 매체(예: CAN 버스) 상에 인가되는 것이 발생할 수 있다. 그런 다음, 이는 다시 비트 스터핑 에러들 및/또는 동기화 손실들을 야기할 수 있으며, 이는 다른 노드들이 필요한 경우 특별한 에러 메시지들("에러 프레임(Error Frames)")을 송신하여 프로세스를 중단하게 한다. 이를 방지하기 위해, 그러나 그럼에도 이미 오늘날 가용한 트랜시버들 및 컨트롤러들과 가능한 한 호환되도록 하기 위해, 비트 스터핑 에러들 및/또는 동기화 손실들이 방지될 수 있고 그에 따라 이미 오늘날 가용한 표준 컴포넌트들에 대해 상기 키 설정 방법(key establishment method)의 호환성이 증가되는 방식으로, 설명된 키 생성 방법들을 확장하는 것이 제안된다.
이를 위해, 키 생성에 참여하는 가입자들이 자신들의 가입자 값 시퀀스들 외부에서, 다시 말하면 자신들의 가입자 값 시퀀스들에 추가로 적어도 하나의 채움 값(fill value)을 공통의 전송 채널로 제공함으로써 결과적으로 에지 변경 또는 값 변경(예컨대 2진 시스템에서 0이 1로, 또는 1이 0으로 비트 변경)이 이루어진다. 이는 가입자들 중 단지 일측 가입자만에 의해 수행될 수 있다. 그러나 바람직한 구현예에서 두 가입자에 의해 실질적으로 동기 방식으로 채움 값들이 전송 채널로 제공되며, 그럼으로써 채움 값들의 중첩 신호로부터 에지 변경 또는 값 변경이 나타난다.
이 경우, 채움 값들은 특정한 간격들로(다시 말해 특히 값 시퀀스들의 개별 값들의 특정한 개수에 따라서), 또는 검출된 중첩 값 시퀀스에 따라서 전송 채널로 제공된다.
바람직한 실시예에서, 가입자들은, 자신들이 사전 결정된 개수의 동일한 값을 갖는 중첩 값 시퀀스를 각각 검출하는 경우, 전송 채널로 채움 값들을 제공한다. 이 경우, 채움 값들은 바람직하게는 검출되는 동일한 값들에 대해 반대이다. 스터프 비트들 또는 채움 값들은 일반적으로 통신 프로토콜의 오버헤드를 증가시키고 그에 따라 키 설정의 효율성을 감소시키기 때문에, 바람직하게는 실제로 값 반복들의 특정한 횟수가 초과될 때에만 상기 채움 값들을 제공하며, 이는 본원에서는 중첩 시퀀스에 따라서 검출된다.
가입자들이 이를 수행할 능력이 있는 경우, 채움 값들은 중첩 값 시퀀스 내에서 동일한 값의 검출된 개수에 직접적으로 인접하여 전송 채널로 제공될 수 있다. 본 변형예에서, 검출된 개수는 정확히 동일한 값들의 허용 최대 개수로 설정될 수 있으며, 그럼으로써 채움 값들은 실제로 자신들이 필요한 경우들에서만 삽입된다. 그렇지 않으면, 채움 값들은 사전 결정된 간격으로도 값 반복의 횟수의 검출을 위해 삽입될 수 있으며, 이런 경우 상기 횟수는 그에 상응하게 최대 개수보다 더 낮게 선택되어야 한다. 이로써, 비록 상대적으로 높은 오버헤드가 생성되기는 하지만, 본원의 방법은 (특히 가입자들을 위한 하드웨어 요건들과 관련하여) 요구하는 바가 상대적으로 더 적으며, 상대적으로 더 신뢰성이 있을 수 있다.
한편, 동일한 값들일 필요 없이, 특히 전송 채널 상에서 검출된 값들의 사전 결정된 개수에 따라, 채움 값들이 가입자들에 의해 항상 고정되고 사전 결정된 간격들로 삽입되는 대안의 실시형태들은 더 간단하게 실시되고 그로 인해 기존 통신 시스템들 및 가입자 하드웨어들에 대해 특히 호환적이다. 이 경우, 바람직하게는 이미 값 변경 또는 에지 변경을 내포하는 2개의 채움 값이 삽입된다(예컨대 두 가입자에 의해 비트 시퀀스 01이 삽입되거나, 또는 두 가입자에 의해 비트 시퀀스 10이 삽입된다).
특히 바람직하게는, 본원의 방법은, 단 하나의 가입자만이 우성 값을 전송 채널에 인가할 때 우세해지는 우성 값(물리적: 우성 신호)과, 두 가입자 또는 모든 가입자가 열성 값을 전송할 때에만 전송 채널 상에서 나타나는 열성 값(물리적: 열성 신호)이 존재하는 네트워크에 사용될 수 있다. 이로써 명료하게 사전 설정된 전송 규칙을 기반으로, 상기 네트워크의 가입자들은 결과에 따른 중첩 시퀀스들로부터 특히 간단하게 키 생성을 위한 정보들을 도출할 수 있다. 대안으로서, 가입자들 중 적어도 일측 가입자의 열성 값의 전송은, 이 때 값 시퀀스가 전송되거나, 또는 2개 이상의 가능한 값 중 하나의 값으로서 어떠한 것도 전송되지 않는 것으로도 대체될 수 있다.
가입자들에 의해 실질적으로 동시에 전송 채널로 제공되는 가입자 값 시퀀스들은 사전에 난수 발생기 또는 의사 난수 발생기(pseudo-random generator)에 의해 각각의 가입자들 자체 내에서 생성된다. 나타나는 중첩 시퀀스는 전송 채널 상에서 잠재적인 공격자에 접근될 수 있기 때문에, 차후 통신의 보안을 위해 특히 바람직하게는, 공격자에게는 가입자들의 개별 값 시퀀스들을 추론하는 것이 최대한 어려워지며, 다시 말하면 상기 개별 값 시퀀스들은 가입자들 내에서 국지적으로, 그리고 임의로, 또는 적어도 의사 임의적으로(pseudo-randomly) 생성된다.
설명된 방법들은 CAN, TTCAN 또는 CAN-FD 버스 시스템에서 특히 적합하게 실시된다. 여기서 열성 버스 레벨은 우성 버스 레벨로 대체된다. 그에 따라, 가입자들의 값들 또는 신호들의 중첩은, 가입자들이 중첩된 값 또는 신호, 및 가입자들에 의해 전송된 값 또는 신호로부터 정보들의 도출을 위해 이용할 수 있는 확정된 규칙에 따른다. LIN 및 I2C와 같은 다른 통신 시스템들도 상기 방법들이 매우 적합하다.
대안으로서, 본원의 방법은 예컨대 온-오프 키잉 진폭 편이 변조 방식을 이용하는 네트워크에서도 사용될 수 있다. 여기서는 마찬가지로, 가입자들이 신호들로서 "전송" 및 "비전송"을 선택하며, 그리고 가입자들 중 일측 또는 양측이 전송한다면 전송 신호는 "전송"의 신호에 상응하고, 양측 가입자 모두 전송하지 않는다면 "비전송"의 신호에 상응하게 함으로써 중첩이 확정된다.
본원의 방법은 하나의 네트워크 내 2개의 가입자에 대해 설명되었지만, 네트워크의 일측 가입자에 의해서도 자신의 신호 시퀀스로부터, 그리고 제 2 가입자의 신호 시퀀스와 상기 자신의 신호 시퀀스의 중첩으로부터 비밀 키가 도출될 수 있다. 이를 위해, 네트워크 또는 네트워크의 가입자는, 전자 메모리 자원 및 계산 자원들을 가짐으로써 상응하는 방법의 단계들을 수행하도록 설계된다. 상기 가입자의 메모리 매체에, 또는 네트워크의 분포된 메모리 자원들에는, 가입자 측에서 또는 네트워크 내에서 실행될 경우 상응하는 방법의 모든 단계를 실시하도록 설계된 컴퓨터 프로그램도 저장될 수 있다.
하기에서 본 발명은 첨부한 도면들을 참조하여 그리고 실시예들에 따라서 더 상세하게 설명된다.
도 1은 기초가 되는 예시의 통신 시스템의 구성을 도시한 개략도이다.
도 2는 기초가 되는 통신 시스템의 예시로서 선형 버스를 도시한 개략도이다.
도 3은 네트워크의 2개의 가입자의 예시적인 신호 시퀀스들, 및 가입자들 간의 전송 채널 상에 나타나는 중첩 값 시퀀스를 각각 개략적으로 나타낸 그래프이다.
도 4는 네트워크의 2개의 가입자 간에 키 생성을 위한 예시적인 방법을 개략적으로 나타낸 흐름도이다.
본 발명은, 공통으로 사용되는 매체(네트워크의 전송 채널)를 통해 서로 통신하는 통신 시스템의 2개의 노드(네트워크의 가입자) 간에 공통 비밀 또는 (비밀) 대칭 암호 키의 생성을 위한 방법에 관한 것이다. 이 경우, 암호 키의 생성 또는 협상은 2개의 가입자 간의 공개 데이터 교환을 기반으로 하지만, 그럼에도 공격자로서 도청 가능한 제 3자는 생성된 키에 대한 추론을 수행하기가 불가능하거나 어려워야 한다. 그에 따라, 본 발명에 의해, 네트워크의 상이한 두 가입자 간에, 결과적으로 그를 기반으로 예컨대 데이터 암호화와 같은 정해진 보안 기능들을 실현하기 위해, 완전히 자동화되어 그리고 확실하게 상응하는 대칭 암호 키를 확정할 수 있다. 상세하게 설명되는 바와 같이, 이를 위해, 맨 먼저 키 생성을 위해 고려될 수 있는 공통 비밀이 확정된다. 그러나 상기 공통 비밀은 원칙상 암호 키를 위한 것과는 다른 목적들을 위해서도 상대적으로 더 좁은 의미에서 예컨대 원타임 패드(One-Time Pad)로서 사용될 수 있다.
본 발명은, 다수의 유선 또는 무선 및 광학 네트워크 또는 통신 시스템에, 특히 다양한 가입자들이 하나의 선형 버스를 통해 서로 통신하고 상기 버스에 대한 매체 액세스는 비트 단위의 버스 중재에 의해 수행되는 네트워크들 또는 통신 시스템들에 적합하다. 이런 원리는 예컨대 널리 보급된 CAN 버스의 토대이다. 본 발명의 가능한 사용 분야들은 특히 CAN 기반 차량 네트워크들 및 자동화 기술에서의 CAN 기반 네트워크들도 포함한다.
본 발명은, 자동화 방식으로 대칭 암호 키가 네트워크 내에서, 또는 특히 네트워크의 2개의 노드 간에 생성될 수 있게 하는 접근법을 기재한다. 상기 생성은 상응하는 전송 계층의 특성들의 이용해서 수행된다. "물리적 계층 보안"의 통상의 접근법들에서와는 달리, 이를 위해 전송 전력(transmission power) 등과 같은 전송 채널의 물리적 파라미터들이 평가되지 않는다. 오히려, 이를 위해, 통신 시스템 및/또는 사용되는 변조 방법의 특성들로 인해 가능한 도청 공격자가 협상된 키에 대한 어떠한 추론도 또는 충분한 추론을 하지 못하게 하는 참여 노드들 간의 공개 데이터 교환이 사용된다.
하기에서는, 도 1에 추상적으로 도시된 것과 같은, 배열구조가 고려된다. 이 경우, 다양한 가입자들 2, 3 및 4은 이른바 공유 전송 매체("공유 매체")(10)를 통해 서로 통신할 수 있다. 본 발명의 바람직한 특징에서, 상기 공유 전송 매체는 도 2에 예시적으로 도시된 것과 같은 선형 버스(유선 또는 광학)(30)에 상응한다. 도 2에서의 네트워크(20)는 바로 공유 전송 매체(예: 유선 전송 채널)로서의 상기 선형 버스(30)와, 가입자들 또는 노드들(21, 22 및 23)과, (선택적인) 버스 종단들(31 및 32)로 구성된다.
하기에서는, 다양한 노드들(21, 22 및 23) 간의 통신을 위해, 이 통신이 우성 값들과 열성 값들의 구별을 특징으로 한다는 것이 가정된다. 이 실시 예에서, 가능한 값으로서 비트 "0" 및 "1"이 가정된다. 이 경우, 우성 비트(예: 논리 비트 '0')는 동시에 전송되는 열성 비트(예: 논리 비트 '1')를 거의 대체하거나, 또는 덮어쓰기 한다.
상기 전송 방법에 대한 예는 이른바 온-오프 키잉(온-오프 키잉 진폭 편이 변조)이며, 이 경우 정확히 2개의 전송 상태가 구별된다. 제 1 경우(값, 'On' 또는 "0")에서, 신호는 예컨대 단순한 반송파 신호의 형태로 전송되며, 다른 경우(값, 'Off', 또는 "1")에서는 신호가 전송되지 않는다. 이 경우, 상태 'On'은 우성이고, 상태 'Off'는 열성이다.
우성 비트 및 열성 비트의 상기 구별을 보조하는 상응하는 통신 시스템에 대한 추가 예시는, 예컨대 CAN 버스에서 사용되는 것과 같은 비트 단위의 버스 중재를 기반으로 하는 (유선 또는 광학) 시스템이다. 여기서 기본 사상은, 마찬가지로, 예컨대 2개의 노드가 동시에 신호를 전송하고자 하고 일측 노드는 '1'을 전송하고 제 2 노드는 '0'을 송신한다면, '0'(다시 말해 우성 비트)이 "획득되고", 다시 말하면 버스 상에서 측정될 수 있는 신호 레벨은 논리 '0'에 상응한다는 것이다. CAN의 경우 이런 메커니즘은 특히 가능한 충돌의 분해(resolution)를 위해 사용된다. 이 경우, 각각의 노드가 자신의 CAN 식별자의 전송 동안 비트 단위로 동시에 버스 상의 신호 레벨을 모니터링함으로써, 상위의 이전 메시지들(higher-prior message)(즉, 이전의 우성 신호 레벨을 갖는 메시지들)이 우선적으로 전송된다. 노드 자체가 열성 비트를 전송하지만, 버스 상에서는 우성 비트가 검출되는 한, 상응하는 노드는 (이전의 우성 비트를 포함한) 상위의 이전 메시지를 위해 자신의 전송 시도를 중단한다.
우성 및 열성 비트들의 구별은, 공유 전송 매체를, 논리곱 함수를 이용하여 다양한 입력 비트들(= 동시에 전송되는 모든 비트)을 서로 연산하는 일종의 2진 연산자로서 해석하도록 허용한다.
도 3에는, 예컨대 가입자 1(T1)가 전송 채널을 통해 시점들(t0 및 t5) 사이에서 송신을 위한 비트 시퀀스 0, 1, 1, 0, 1을 어떻게 준비해 놓고 있는지가 도시되어 있다. 가입자 2(T2)는 전송 채널을 통해 시점들(t0 및 t5) 사이에서 송신을 위한 비트 시퀀스 0, 1, 0, 1, 1을 준비해 놓고 있다. 통신 시스템의 앞에서 설명한 특성들에 의해, 그리고 본 예시에서 비트 레벨 "0"은 우성 비트라는 가정 하에, 버스(B) 상에 비트 시퀀스 0, 1, 0, 0, 1이 나타난다. 시점들(t1 및 t2) 사이에서만, 그리고 시점들(t4 및 t5) 사이에서만, 가입자 1(T1)뿐만 아니라 가입자 2(T2)도 열성 비트 "1"을 제공하며, 그럼으로써 여기에서만 버스(B) 상에서 "1"의 비트 레벨로 논리곱 연산이 이루어지게 된다.
통신 시스템의 전송 방법의 상기 특성들을 이용해서, 이제 상응하는 네트워크의 2개의 가입자 간의 키 생성은, 가입자들이 전송 매체 상에서 두 가입자의 비트 시퀀스들의 중첩을 검출하고 자체에서 송신된 비트 시퀀스에 대한 정보들과 함께 상기 정보로부터 공통 (대칭) 비밀 키를 생성함으로써 수행될 수 있다.
특히 바람직한 예시적인 실현은 하기에서 도 4를 참고로 설명된다.
대칭 키 쌍의 생성을 위한 프로세스는 단계 41에서 이 실시 예에서는 2개인 참여 노드(가입자 1 및 가입자 2) 중 일측 노드에 의해 시작된다. 이는 예컨대 특별 메시지 또는 특별 메시지 헤더를 송신하는 것을 통해 수행될 수 있다.
단계 42에서는 가입자 1뿐만 아니라 가입자 2 역시도 맨 먼저 국지적으로(즉 내부적으로, 그리고 서로 독립적으로) 비트 시퀀스를 생성한다. 바람직하게는 상기 비트 시퀀스는 본원의 방법의 결과로서 원하는 공통 키보다 2배 이상, 특히 3배 이상 길다. 비트 시퀀스는 바람직하게는 각각 임의 또는 의사 임의 비트 시퀀스로서, 예컨대 적합한 난수 발생기 또는 의사 난수 발생기에 의해 생성된다.
20비트 길이의 로컬 비트 시퀀스들에 대한 예시:
■ 가입자 1의 생성된 비트 시퀀스:
Figure pct00001
■ 가입자 2의 생성된 비트 시퀀스:
Figure pct00002
단계 43에서, 가입자 1 및 가입자 2는 (앞에서 이미 설명한 것처럼 우성 및 열성 비트를 포함한 전송 방법을 사용해서) 서로 (실질적으로) 동기식으로 자신들의 각각 생성된 비트 시퀀스들을 공유 전송 매체를 통해 전송한다. 이 경우, 상응하는 전송들의 동기화를 위한 다양한 가능성들이 가능하다. 따라서 예컨대 가입자 1 또는 가입자 2는 맨 먼저 적합한 동기화 메시지를 각각의 타측 노드로 송신하고 정해진 기간 후에 상기 메시지의 완전한 전송에 이어서 실질적인 비트 시퀀스들의 전송을 시작할 수도 있다. 또한, 두 노드 중 일측 노드로부터 단지 하나의 적합한 메시지 헤더(예: 중재 필드와 제어 필드로 구성된 CAN 헤더)만이 전송되고, 그 다음 관련된 페이로드 단계(payload phase) 동안 두 노드가 동시에 자신들의 생성된 비트 시퀀스들을 (실질적으로) 동기식으로 전송하는 것도 가능하다. 본원의 방법의 한 변형예에서, 단계 42에서 생성된 일측 가입자의 시트 시퀀스들은 단계 43에서, 예컨대 상응하는 메시지의 (최대) 크기가 필요하게 된다면, 복수의 메시지로 분할되어 전송될 수 있다. 이 변형예에서도, 상응하게 많고 상응하게 큰 메시지로 분할된 타측 가입자의 비트 시퀀스들의 전송이 재차 (실질적으로) 동기식으로 수행된다.
그 다음, 공유 전송 매체 상에서 두 비트 시퀀스가 중첩되며, 우성 및 열성 비트들의 구별을 포함한 시스템의 이전에 요구된 특성을 기반으로 가입자 1 및 가입자 2의 개별 비트들은 중첩되며, 상기 실시 예에서 실제로 논리곱 연산된다. 그에 따라, 전송 채널 상에서는 예컨대 도청하는 제 3 가입자가 검출할 수 있는 상응하는 중첩이 나타난다.
상기 로컬 비트 시퀀스들에 대한 중첩 비트 시퀀스의 예시:
● 전송 채널 상에서 유효 비트 시퀀스:
Figure pct00003
가입자 1뿐만 아니라 가입자 2 역시도, 단계 43에서의 자신들의 비트 시퀀스들의 전송 동안, 병행 단계 44에서는 공유 전송 매체 상에서 유효한 (중첩된) 비트 시퀀스들(Seff)을 검출한다. 이는, CAN 버스의 예의 경우, 종래 시스템들에서도 중재 단계 동안 대개 상관없어진다.
이는, '온-오프 키잉'(무선, 유선 또는 광학)을 이용한 시스템들의 경우, 마찬가지로 가능하다. 이런 경우에, 특히 (앞에서 이미 설명한 것처럼) 상기 시스템의 경우 'On' 상태가 우성이고 'Off' 상태는 열성인 것이 실제적 실현성에 유용하다. 따라서 일측 노드는, 측정 없이도, 노드 자체가 우성 비트를 송신했다면, "공유 매체" 상에서 유효 상태는 우성인 점을 알게 된다. 이와 반대로, 노드가 열성 비트를 송신했다면, 상기 노드는 공유 전송 매체 상에서 상태를 우선 어렵게 알게 되지만, 상기 노드는 이런 경우에 적합한 측정에 의해 상기 상태가 어떻게 보이는지를 결정할 수 있다. 이런 경우에, 노드 자체는 아무런 것도 송신하지 않기 때문에, 요컨대 특별히 무선 시스템들에서 여타의 경우 복잡한 에코 보상을 필요하게 할 수도 있는 이른바 자기 간섭(self-interference)과 관련한 문제도 존재하지 않는다.
다음 단계 45에서는, 가입자 1뿐만 아니라 가입자 2도 마찬가지로 다시 (실질적으로) 동기식으로 자신들의 초기 비트 시퀀스들(ST1 및 ST2)을 전송하지만, 이번에는 반전하여 전송한다. 이 경우, 상응하는 전송들의 동기화는 다시 정확히 전술한 바와 동일한 유형 및 방식으로 실현될 수 있다. 그 다음 공유 통신 매체 상에서 두 시퀀스는 다시 서로 논리곱 연산된다. 가입자들 1 및 2는 재차 공유 전송 매체 상에서 전송된 유효 비트 시퀀스들(Seff)을 결정한다.
상술한 비트 시퀀스들에 대한 예시:
■ 가입자 1의 반전 비트 시퀀스:
Figure pct00004
■ 가입자 2의 반전 비트 시퀀스:
Figure pct00005
■ 채널 상에서 중첩된 유효 비트 시퀀스:
Figure pct00006
그 다음, 가입자 1뿐만 아니라 가입자 2 역시도, 이제 반전된 자신들의 비트 시퀀스들의 전송 동안, 다시 공유 전송 매체 상에서 전송된 유효 비트 시퀀스들을 결정한다. 그에 따라, 이 시점에, 두 노드(가입자 1 및 가입자 2), 및 공유 전송 매체 상에서의 통신을 도청하는 가능한 공격자(예: 가입자 3)도 전송된 유효 비트 시퀀스들(Seff 및 Seff')을 알게 된다. 그러나 공격자 또는 제 3 가입자와는 달리, 가입자 1은 여전히 초기에 생성된 자신의 로컬 비트 시퀀스(ST1)를 알고 있고, 가입자 2는 초기에 생성된 자신의 로컬 비트 시퀀스(ST2)를 알고 있다. 그러나 가입자 1은 재차 가입자 2의 초기에 생성된 로컬 비트 시퀀스를 알지 못하고, 가입자 2는 가입자 1의 초기에 생성된 로컬 비트 시퀀스를 알지 못한다. 중첩 비트 시퀀스의 검출은 재차 단계 46에서의 전송 동안 수행된다.
상기 예시적인 실시 변형예에 대한 대안으로, 가입자 1 및 가입자 2는 자신들의 반전된 로컬 비트 시퀀스를 직접 자신들의 원래의 로컬 비트 시퀀스와 함께, 또는 그 직후에 송신할 수 있으며, 다시 말하면 단계들 45 및 46은 단계들 43 및 44와 함께 수행된다. 이 경우, 원래 비트 시퀀스 및 반전 비트 시퀀스는 하나의 메시지로 전송될 수 있으며, 그 밖에도 별도의 메시지로도 부분 비트 시퀀스들로서 전송될 수 있다.
단계 47에서, 가입자 1 및 가입자 2는 이제 각각 국지적으로(다시 말해 내부적으로) 특히 논리합 함수로 전송된 유효 비트 시퀀스들(Seff 및 Seff')을 연산한다.
상기 비트 시퀀스들에 대한 예시:
Figure pct00007
논리합 연산의 결과에 따른 비트 시퀀스(Sges)에서 개별 비트들은 이제 ST1 및 ST2의 상응하는 비트들이 동일한지 또는 서로 상이한지의 여부를 지시한다. Sges의 내부에서 n번째 비트가 예컨대 '0'이라면, 이는 ST1 내부에서 n번째 비트가 ST2 내부의 상응하는 비트에 반대된다는 것을 의미한다. 이와 동일하게, Sges 내부에서 n번째 비트가 '1'이라면, SAlice 및 SBob 내부의 상응하는 비트들이 동일한 것으로 적용된다.
그에 이어서, 가입자 1 및 가입자 2는 단계 48에서 논리합 연산으로부터 수득한 비트 시퀀스(Sges)를 기반으로 자신들의 원래의 초기 비트 시퀀스들(ST1 및 ST2)에서 두 시퀀스 내에서 동일한 모든 비트를 삭제한다. 따라서, 이는 상응하게 단축된 비트 시퀀스들로 이어진다.
상기 비트 시퀀스들에 대한 예시:
■ 가입자 1의 단축된 비트 시퀀스:
Figure pct00008
■ 가입자 2의 단축된 비트 시퀀스:
Figure pct00009
단축된 비트 시퀀스들(ST1,V 및 ST2,V)은 이제 서로 반대된다. 그에 따라 두 가입자 중 일측 가입자는 자신의 단축된 비트 시퀀스의 반전에 의해 정확하게 타측 가입자에서 이미 존재하는 것과 같은 단축된 비트 시퀀스를 결정할 수 있다.
이와 같이 공통으로 주어지는 단축된 비트 시퀀스는, 이제 가입자 1 및 가입자 2에 의해, 단계 49에서, 원하는 길이(N)의 실질적으로 원하는 키를 생성하기 위해, 각각 국지적으로 적합한 유형 및 방식으로 처리된다. 여기서도 상기 처리가 수행될 수 있게 하는 다수의 가능성이 있다. 한 가능성은, 공통으로 주어지는 단축된 비트 시퀀스로부터 N개 비트의 선택이며, 이때 예컨대 간단하게 항상 시퀀스의 제 1 N개 비트가 선택됨으로써 어떠한 N개의 비트가 선택되어야 하는지가 분명하게 정의되어야 한다. 마찬가지로, 길이(N)의 해시 값(hash value)을 공급하는, 공통으로 주어지는 단축된 비트 시퀀스를 통한 해시 함수(hash function)의 계산도 가능하다. 매우 일반적으로는, 공통으로 주어지는 단축된 비트 시퀀스에 적용될 때 N개 비트의 길이의 비트 시퀀스를 피드백하는, 각각 임의의 선형 및 비선형 함수를 이용한 처리가 수행될 수 있다. 공통으로 주어지는 단축된 비트 시퀀스로부터의 키 생성의 메커니즘은 바람직하게는 두 가입자 1 및 2에서 동일하게 존재하며, 상응하게 동일한 방식으로 실행된다.
키 생성에 이어서, 경우에 따라 여전히 가입자들 1 및 2에 의해 생성된 키들이 실제로 동일한지가 검증될 수 있다. 이를 위해, 예컨대 생성된 키들을 통한 체크섬이 계산되어 가입자 1과 가입자 2 간에 교환될 수 있다. 두 체크섬이 동일하지 않다면, 분명하게 무언가가 실패한 것이다. 이런 경우에는, 키 생성을 위한 전술한 방법이 반복될 수도 있다.
키 생성을 위한 본원 방법의 바람직한 변형예에서, 여러 진행 중에, 맨 먼저, 가입자들 1 및 2에서 각각 주어지는 하나의 완전한 열의 단축된 비트 시퀀스들도 생성될 수 있으며, 이런 비트 시퀀스들은 조합되어 단일의 큰 시퀀스를 형성하고, 그 후에 이 큰 시퀀스로부터 실질적인 키가 도출된다. 이는 경우에 따라 적응 방식으로도 수행될 수 있다. 설명된 절차의 1회 진행 후에 예컨대 공통의 단축된 비트 시퀀스의 길이가 예컨대 원하는 키 길이(N)보다 더 짧다면, 새로운 진행을 통해 실질적인 키 도출 전에 예컨대 추가 비트들을 생성할 수도 있다.
생성된 대칭 키 쌍은, 이제 끝으로, 가입자 1 및 가입자 2에 의해, 예컨대 데이터 암호화를 위한 암호들(cipher)과 같은 확정된 (대칭) 암호화 기법과 함께 사용될 수 있다.
특히 논리합 함수를 이용한 두 중첩 부분 값 시퀀스의 연산의 목적은, 통신을 관찰하는 수동적인 공격자도 자신의 관찰을 기반으로 결정할 수 있는 비트들의 삭제를 실행할 수 있도록 하는 것이다. 이에 대한 대안은, 상기 비트들을 유지하지만, 이를 위해 맨 먼저 원하는 것보다 훨씬 더 많은 비트를 생성하며(다시 말해, 예컨대 128비트의 비밀 또는 키가 바람직하다면, 맨 먼저 300비트를 생성하며), 그 다음 상기 비트들을 종료 시에 예컨대 해시 함수 등을 이용하여 소정 길이로 감소시킬 수 있다.
가능한 공격자(예: 가입자 3)는 가입자 1과 가입자 2 간의 공개 데이터 전송을 도청할 수 있고, 그에 따라 설명한 것처럼 중첩된 유효 비트 시퀀스들(Seff 및 Seff')을 알 수 있다. 그러나 그에 따라, 공격자는 단지 가입자들 1 및 2의 국지적으로 생성된 비트 시퀀스들에서 어떤 비트들이 동일하고 어떤 비트들이 동일하지 않는지만을 안다. 또한, 비트들이 동일한 경우, 공격자는 심지어 그 비트들이 '1' 또는 '0'인지의 여부도 여전히 확인할 수 있다. 그러나 결과하는 단축된 비트 시퀀스(및 그에 따른 키 생성을 위한 기초)를 완전히 아는 경우, 공격자에게는 동일하지 않은 비트들에 대한 정보가 없다. 공격자가 가능한 공격에 있어 방해를 받도록 하기 위해, 바람직한 변형예에서, 추가로 가입자들 1 및 2의 국지적으로 생성된 원래의 비트 시퀀스들 내에서 동일한 비트 값들은 삭제된다. 그에 따라, 가입자 3은, 단지 키 생성을 위해 전혀 사용되지 않는 정보만을 갖게 된다. 비록, 가입자 3은, 상응하게 단축된 비트 시퀀스들이 가입자 1 및 가입자 2의 로컬 비트 시퀀스들 사이에서 상이한 비트들로부터 유추된다는 것을 알고 있기는 하다. 그러나 가입자 3은 가입자 1 및 가입자 2가 각각 어떠한 비트들을 송신했는지는 알지 못한다.
가입자 1 및 가입자 2는, 중첩된 전체 비트 시퀀스에 대한 정보에 추가해서, 국지적으로 생성되어 자신들에 의해 각각 송신된 비트 시퀀스에 대한 정보도 여전히 갖는다. 오직 공개 데이터 전송만을 따르는 가입자 3에 비한 상기 정보 이점(information advantage)으로부터, 가입자들 1 및 2 내에서 생성된 키들은 기초로서의 공개 데이터 전송에도 불구하고 비밀로 유지된다는 사실이 유래된다.
키 생성을 위한 설명된 방법들에 의해, 동일한 비트들 또는 신호 레벨들의 상대적으로 긴 시퀀스들이 가입자들 1 및 2를 통한 동시 전송 동안 전송 채널에 유효하게 인가될 수 있다. 이에 대한 근거는, 두 가입자가 맨 먼저 서로 독립적으로 임의의 비트 시퀀스들을 생성하지만, 채널에는 각각 상기 비트 시퀀스들의 중첩만을 유효하게 인가한다는 것이다. 이는 예컨대 우성 비트가 0이고 열성 비트는 1이라는 가정하에 논리곱 연산과 결합된 비트 시퀀스일 수 있다. 두 가입자는 각각 타측의 가입자의 임의로 생성된 비트 시퀀스를 알지 못하기 때문에, 맨 먼저 항상 유효 비트 시퀀스가 동일하고 연속적인 비트들을 갖는 거의 임의로 긴 하위 시퀀스들(sub-sequence)을 포함할 수 있다. 이는 다시 특정한 통신 시스템들에서 표준 하드웨어 및 표준 소프트웨어의 사용 동안 문제가 될 수 있으며, 이는 하기에서 CAN의 예시에서 더 상세하게 설명된다.
CAN 프로토콜은, N = 5개의 연속하는 등가 비트(equivalent bit) 후에 상보 값(complementary value)을 가지면서 수신기에서 자동으로 다시 제거되는 이른바 '스터프 비트'는 실질적으로 전송될 비트 시퀀스 내에 삽입되어야 한다고 규정하고 있다. 다시 말해, 상기 '스터프 비트들'은 정보 비트들이 아니라, 하기 배경을 갖는다:
1) N = 5개보다 많은 연속하는 등가 비트를 갖는 비트 시퀀스들은 제어 목적을 위해 (예컨대 "프레임 종료(End-of-Frame)" 지시(indication)로서, 또는 "에러 프레임"으로서) 사용되며, 그로 인해 상기 시퀀스들이 실질적인 정보 부분에서 발생하지 않는 점이 보장되어야 한다.
2) CAN은 CAN 메시지들의 전송을 위해 비제로 복귀 암호화(Non-Return-to-Zero-Coding)를 사용한다. 그러나 이는 다양한 노드들에서 완벽하게 동기화되지 않은 시각(hour)으로 인한 동기화 손실을 촉진하며, 그로 인해 CAN 메시지의 전송 또는 수신 동안, 하드웨어에 대한 요건들(예: 로컬 오실레이터에 대한 요건들)을 적게 유지할 수 있도록 하기 위해, 시간에 따른 재동기화가 실행되어야만 한다. '스터프 비트'의 삽입에 의해, 늦어도 N = 5개의 연속하는 비트 후에 에지 변경이 수행되고, 그런 다음 에지 변경은 재동기화를 위해 사용될 수 있다.
CAN에서 '비트-스터핑 규칙'이 위반되면, 상기 위반을 발견한 가입자들 모두는 즉시 '에러 플래그(Error Flag)'(=6개 또는 그 이상의 연속하는 우성 비트)를 전송하고 그에 따라 프로세스를 중단하려고 시도한다. 그 다음, 이는, 다시금, 앞에서 간단히 설명한 방법을 이용한 대칭 암호 키의 성공적인 확정을 방지한다.
그러므로 하기에서는 비트-스터핑 에러가 방지될 수 있음으로써 예컨대 CAN의 경우 상기 에러로 인한 '에러 플래그'가 또 다른 노드들에 의해 송신되지 않게 하는 설명된 방법들의 확장들이 제안된다. 이와 동시에, 통신 시스템의 가입자에 의한 규칙적이고 시간에 따른 재동기화가 가능하고 그에 따라 동기화 에러의 확률이 감소될 수 있는 것이 보장될 수 있다. 통신 시스템의 유형 및 형식에 따라서, 두 양태 모두가 중요할 수 있거나, 또는 그 중 하나의 양태만이 중요할 수 있다.
적합한 '스터프 비트들'의 삽입을 통해, N개보다 많은 연속하는 비트가 동일한 값을 갖는 점이 방지된다. 그러나 이는 개별 가입자들을 위한 전송 규칙들에 의해 나머지 가입자들과 독립적으로 수행될 수 있는데, 그 이유는 이런 점이 설명된 방법들의 경우 전송 값 시퀀스의 상응하는 에지 변경 또는 값 변경에 좌우되기 때문이다. 이를 위해 다양한 가능성이 제안된다.
제 1 바람직한 구현예에서는, 제 1 가입자 및 제 2 가입자가 키 생성을 위한 설명된 방법들에서 단계 43에서 임의의 비트 시퀀스들의 동기 전송 동안 병행 단계 44에서 공통으로 사용되는 전송 매체 상에서 항상 유효 신호 레벨(또는 유효 비트 시퀀스)을 검출한다는 점이 이용된다. 이 경우에, 노드들이, 유효 비트 값이 전송 매체 상에서 N회 동안 연이어 항상 동일한 것으로 확인한다면, 두 노드는 다음 비트로서 N회 연이어 인가된 유효 비트에 반대되는 스터프 비트를 송신한다. 그에 따라 종래 비트 스터핑에 대한 실질적인 차이는, 스터프 비트가 삽입되어야 하는지의 여부의 판단이 일차적으로 고유의 메시지 또는 비트 시퀀스에 따라 결정되는 것이 아니라, 오직 공통으로 사용되는 전송 매체 상의 유효 비트 시퀀스에 따라 결정된다는 것이다. 이와 동일한 것이 송신되어야 하는 스터프 비트의 값에도 적용된다.
예시:
가입자 1의 임의의 초기 (국지적으로 생성된) 비트 시퀀스:
0 1 1 0 1 0 1 1 0 1 1 0 1 0 1
가입자 2의 임의의 초기 (국지적으로 생성된) 비트 시퀀스:
0 1 0 1 0 0 0 0 1 1 1 1 0 1 1
스터프 비트들을 포함하지 않은 개별 시퀀스들의 논리곱 연산 동안 전송 매체 상에서 유효 비트 시퀀스:
0 1 0 0 0 0 0 0 0 1 1 0 0 0 1
그에 따라, (예컨대 CAN에서처럼) N = 5인 경우, 스터핑 에러가 존재할 수도 있는데, 그 이유는 7회 연이어서 유효 비트값 '0'이 전송 매체 상에 인가되기 때문이다.
이와 반대로, 제 1 실시예에 따르는 앞에서 제안한 접근법에 의해, 하기 비트 시퀀스가 실제로 전송 매체 상에 인가될 수도 있다.
0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 1
이 경우, 밑줄 친 비트는 추가로 삽입된 스터프 비트이며, 이 스터프 비트는, 가입자들이 공통 전송 매체 상에서 비트 '0'을 5회 검출한 후에, 가입자 1뿐 아니라 가입자 2에 의해서도 삽입되어 송신된다. 실제로 송신되는 Alice 및 Bob의 비트 시퀀스들은 상기 예시의 경우 하기와 같이 나타난다:
가입자 1의 실제로 송신되는 비트 시퀀스:
0 1 1 0 1 0 1 1 1 0 1 1 0 1 0 1
가입자 2의 실제로 송신되는 비트 시퀀스:
0 1 0 1 0 0 0 1 0 1 1 1 1 0 1 1
다시 말해, 임의로, 그리고 국지적으로 생성되는 가입자들 1 및 2의 초기 비트 시퀀스들에 비해, 상응하는 스터프 비트(여기서는 1)는 위치 8에서 삽입되었다.
제 2 바람직한 구현예에서는, 전송 매체 상에서 N개의 동일하고 연속하는 비트의 시퀀스의 검출 직후에 (앞에서 설명한 것처럼) 스터프 비트를 삽입하는 것은 많은 통신 시스템에서 가입자들에게는 경우에 따라 (예컨대 경제적이고 간단한 하드웨어의 사용 때문에) 어려워질 수 있다는 점이 고려되는데, 그 이유는 비트의 검출뿐 아니라 다음 비트의 전송의 준비도 각각의 구현에 따라서 약간의 시간을 요구하고 그에 따라 충분히 신속한 반응은 상황에 따라서 가능하지 않기 때문이다. 이런 경우에, 이미 N - M(1 ≤ M ≤ N-2)개의 동일하고 연속하는 유효 비트의 검출 후에, 공통으로 사용되는 전송 매체 상에서 스터프 비트의 삽입이 준비되지만, 상기 스터프 비트는 (적어도) N - M개의 동일하고 연속하는 비트의 시퀀스의 제 1 비트의 검출부터 계산하여 N개의 비트의 전송 후에야 비로소 실제로 송신되는 방식으로 제 1 실시예의 접근법이 조정될 수 있다.
특히 견고한 변형예에서, 상기 준비된 스터프 비트 자체는, N - M개의 동일한 비트 후에, 그리고 스터프 비트의 전송 전에 공통 전송 매체 상에서 (유효) 비트 변경이 수행되고 그에 따라 실질적으로 스터핑 에러가 존재하지 않을 때, 송신된다(그 이유는 이런 경우에 스터프 비트가 없을 때에도 N개보다 많은 동일한 비트가 전송 매체 상에 인가되지 않을 수 있기 때문이다). 또한, 이는 (스터핑 에러가 없는) 유효한 비트 시퀀스를 달성하기 하지만, 이런 경우에 (여기서 실질적으로 불필요한) 스터프 비트로 인해 오버헤드는 상대적으로 더 커진다.
예시(N = 5, M = 2):
맨 먼저, 가입자들 1 및 2의 생성된 초기 비트 시퀀스들이 제 1 실시 변형예에 대한 예시와 동일하다는 것이 가정된다. 다시 말하면, 하기와 같다.
가입자 1의 임의의 초기 (국지적으로 생성된) 비트 시퀀스:
0 1 1 0 1 0 1 1 0 1 1 0 1 0 1
가입자 2의 임의의 초기 (국지적으로 생성된) 비트 시퀀스:
0 1 0 1 0 0 0 0 1 1 1 1 0 1 1
스터프 비트를 포함하지 않은 개별 시퀀스들의 논리곱 연산 동안 전송 매체 상에서 유효 비트 시퀀스:
0 1 0 0 0 0 0 0 0 1 1 0 0 0 1
그러나 전송 동안, Alice뿐 아니라 Bob 역시도, 비트 5의 전송 후에, N - M = 3개의 연속하는 동일한 비트가 공통으로 사용되는 전송 매체 상에 형성되었고 그 다음에 위치 8에서 (값 '1'로) 스터프 비트의 삽입을 준비한다는 것을 검출할 수 있다.
그에 따라, 실제로 Alice 및 Bob에 의해 전송된 비트 시퀀스들은 (앞에서와 유사하게) 하기에 상응한다.
가입자 1의 실제로 송신되는 비트 시퀀스:
0 1 1 0 1 0 1 1 1 0 1 1 0 1 0 1
가입자 2의 실제로 송신되는 비트 시퀀스:
0 1 0 1 0 0 0 1 0 1 1 1 1 0 1 1
그 결과로, 전송 매체 상에서 실제로 인가되는 비트 시퀀스는 하기와 같다:
0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 1
이 경우, 밑줄 친 비트는 다시 추가로 삽입된 스터프 비트이며, 이 스터프 비트는, 가입자들이 비트 5 후에 공통 전송 매체 상에서 비트 '0'을 3회 검출한 후에, 가입자 1뿐 아니라 가입자 2에 의해서도 삽입되어 송신된다. 그에 따라, 여기서도, 비트 스터핑 에러가 더 이상 발생하지 않을 수 있으며(N = 5임), 상기 예시에서와 정확히 동일한 결과를 얻게 될 수도 있다. 그러나 가입자 1뿐 아니라 가입자 2 역시도 스터프 비트의 삽입 또는 전송을 준비하는데 더 많은 시간을 사용할 수 있다.
제 3 바람직한 실시예에 따라서 스터핑 에러들 및/또는 동기화 손실들의 방지를 위한 방법은, 실질적인 정보 비트와 무관하게, 다시 말해 가입자 시퀀스들과 무관하면서도 검출된 중첩 시퀀스와 무관하게 비트 변경 또는 에지 변경을 강제로 주기적으로 실행하는 것이다. 이는, 가입자 1뿐 아니라 가입자 2 역시도 항상 K개(K < N)의 정보 비트(=원래 임의로 생성된 비트)의 전송 후에, 중첩 동안 비트 변경 또는 에지 변경을 야기하는 2개의 스터프 비트를 삽입하는 방식으로 형성될 수 있다. 이를 위해, CAN과 같은 특정한 통신 시스템들의 경우, 2개의 스터프 비트는 이미 비트 변경을 포함할 수 있으며, 예컨대 비트 시퀀스 '01' 또는 '10'을 포함할 수 있으며, 그럼으로써 중첩의 결과로 마찬가지로 비트 시퀀스 '01' 또는 '10'이 제공된다. 상기 2개의 가능한 경우 중 어느 경우가 삽입되는지는, 본 예시에서, 가입자 1뿐 아니라 가입자 2 역시도 항상 동일한 시퀀스를 삽입하는 것이 보장되는 한, 중요하지 않다.
상기 실시 변형예는 상대적으로 높은 오버헤드를 야기하지만, 매우 견고하면서도 복잡하지 않게 실현될 수 있으며, 또한 존재하는 표준 컴포넌트들로 특히 적합하게 실행될 수 있다.
예시(N = 5, K = 4):
맨 먼저, 가입자들 1 및 2의 생성된 초기 비트 시퀀스들이 제 1 및 제 2 실시 변형예에 대한 예시에서와 동일하다는 것이 가정된다. 다시 말하면,
가입자 1의 임의의 초기 (국지적으로 생성된) 비트 시퀀스:
0 1 1 0 1 0 1 1 0 1 1 0 1 0 1
가입자 2의 임의의 초기 (국지적으로 생성된) 비트 시퀀스:
0 1 0 1 0 0 0 0 1 1 1 1 0 1 1
스터프 비트를 포함하지 않은 개별 시퀀스들의 논리곱 연산 동안 전송 매체 상에서 유효 비트 시퀀스:
0 1 0 0 0 0 0 0 0 1 1 0 0 0 1
그러나 이제는 항상 K = 4개의 비트 후에, 정보 비트들과 무관하게, 가입자 1에 의해서뿐 아니라 가입자 2에 의해서도 비트 시퀀스 '01'이 삽입된다. 그에 따라, 가입자 1 및 가입자 2의 실제로 전송될 비트 시퀀스들은 하기와 같이 생성된다:
가입자 1의 실제로 전송될 비트 시퀀스:
0 1 1 0 0 1 1 0 1 1 0 1 0 1 1 0 0 1 1 0 1
가입자 2의 실제로 전송될 비트 시퀀스:
0 1 0 1 0 1 0 0 0 0 0 1 1 1 1 1 0 1 0 1 1
그에 따라, 공통 전송 매체 상에서는 하기와 같은 유효 비트 시퀀스가 생성된다:
0 1 0 0 0 1 0 0 0 0 0 1 0 1 1 0 0 1 0 0 1
그에 따라, 이런 경우에서도, 스터핑 에러는 발생하지 않는다(N = 5임).
설명된 접근법들 중 어느 접근법이 사용되는지와는 무관하게, 스터프 비트들 자체는 바람직하게는 수신기 측에서 제거된다. 상기 스터프 비트들은, 키 생성 동안 비-임의의 구조들(non-random structure)의 고려에 의해 키의 보안 약화를 방지하기 위해, 대칭 암호 키의 생성을 위한 기초로서 사용되지 않는다.
본원 방법의 설명된 실시형태들은, 대안적 구현예에서, 채움 값들(스터프 비트들)이 두 가입자에 의해 공통 전송 매체로 제공되는 것이 아니라, 두 가입자 중 일측 가입자만이 채움 값들을 생성하여 출력하는 방식으로도 변형될 수 있다. 이런 방법에서는, 가입자들이 상기 값 시퀀스를 통해 서로 재동기화될 수 있다는 장점이 있다. 상기 대안에서, 바람직하게는 가입자들 중 일측 가입자가 채움 값들을 전송하기 위해 결정된다. 상기 일측 가입자는 예컨대 키 생성을 초기화하는 가입자일 수 있거나, 또는 (예컨대 구성에 의해) 사전 결정된 가입자일 수 있다. 타측 가입자는 채움 값들을 검출하고 이 채움 값들에 따라서 예컨대 동기화 정보들을 얻을 수 있다. 특히 적어도 하나의 채움 값에 따라서 그 시각과 타측 가입자의 시각의 가능한 시간 편이(time shift)가 검출될 수 있으며, 상기 검출된 편이를 기반으로 그 시각의 재동기화가 실행될 수 있다.
제안되는 방법들은, 비트 전송 계층의 특성들을 이용해서 2개의 노드 간에 대칭 암호 키의 생성을 위한 접근법이다. 이 접근법은 특히, 해당 통신 시스템들이 '온-오프 키잉' 또는 비트 단위의 버스 중재를 보조하는 점에 한해 유선 및 광학 통신 시스템들(예: CAN, TTCAN, CAN-FD, LIN, I2C)을 위해 적합하다. 그러나 바람직하게는 송신기와 수신기 간에 매우 짧은 거리와 가능한 직접적인 시각적 접촉(visual contact)을 갖는 무선 (무선 기반) 통신 시스템들에서도 상기 접근법이 사용될 수 있다.
원칙상, (앞에서 설명한 것처럼) 우성 비트 및 열성 비트의 구별을 가능하게 하는 모든 통신 시스템이 사용된다. 그에 따라, 본원에서 설명된 방법들은 다수의 무선, 유선 및 광학 통신 시스템에서 사용될 수 있다. 이 경우, 설명된 접근법은, 기계 대 기계 통신을 위해, 다시 말해 일반적으로 매우 제한된 자원만을 가용하고 경우에 따라 적당한 노력으로는 수작업으로 현장에서 구성될 수 없는 다양한 센서들, 액추에이터들 등 간의 데이터 전송을 위해, 특히 중요하다.
또 다른 사용 가능성으로는 예컨대 가정 및 건물 자동화, 원격 의료, 차량 대 X 시스템 또는 산업 자동화 기술 등이 있다. 또한, 무선 인터페이스를 구비한 미래형 초소형 센서들에서, 그리고 CAN 버스의 모든 적용 분야에서, 즉 특히 차량 네트워킹 또는 자동화 기술에서의 사용도 특히 중요하다.
2: 가입자
3: 가입자
4: 가입자
10: 공유 전송 매체
20: 네트워크
21: 노드
22: 노드
23: 노드
30: 선형 버스, 공통 전송 채널
31: 버스 종단
32: 버스 종단
41: 단계
42: 단계
43: 단계
44: 단계
45: 단계
46: 단계
47: 단계
48: 단계
49: 단계

Claims (21)

  1. 네트워크(20)에서 비밀 또는 키를 생성하기 위한 방법으로서, 상기 네트워크(30)는 적어도 제 1 가입자(21)와 제 2 가입자(22) 사이에 하나의 공통 전송 채널(30)을 갖는 적어도 하나의 제 1 가입자(21) 및 제 2 가입자(22)를 포함하고, 상기 제 1 가입자(21)는 상기 전송 채널(30)로 적어도 제 1 값(1) 및 제 2 값(0)을 제공할 수 있고 상기 제 2 가입자(22)는 상기 전송 채널(30)로 적어도 상기 제 1 값(1) 및 상기 제 2 값(0)을 제공할 수 있으며, 상기 전송 채널(30) 상에서 서로 실질적인 동기식 전송을 위해 상기 제 1 가입자(21)는 제 1 가입자 값 시퀀스를 생성하고 상기 제 2 가입자(22)는 제 2 가입자 값 시퀀스를 생성하며, 상기 제 1 가입자(21)는 제 1 가입자 값 시퀀스에 대한 정보들뿐 아니라 상기 전송 채널(30) 상에서 상기 제 2 가입자 값 시퀀스와 상기 제 1 가입자 값 시퀀스의 중첩의 결과로 발생하는 중첩 값 시퀀스도 기반으로 하여 하나의 공통 비밀 또는 하나의 공통 키를 생성하고, 상기 제 2 가입자(22)는 제 2 가입자 값 시퀀스에 대한 정보들뿐 아니라 상기 전송 채널(30) 상에서 상기 제 2 가입자 값 시퀀스와 상기 제 1 가입자 값 시퀀스의 중첩의 결과로 발생하는 중첩 값 시퀀스도 기반으로 하여 하나의 공통 비밀 또는 하나의 공통 키를 생성하는, 상기 비밀 또는 키 생성 방법에 있어서,
    특정한 간격들로 또는 검출된 중첩 값 시퀀스에 따라서, 적어도 상기 제 1 가입자(21)는 상기 제 1 가입자 값 시퀀스의 외부에서 적어도 하나의 채움 값을 상기 전송 채널(30)로 제공하거나, 또는 상기 제 2 가입자(22)는 상기 제 2 가입자 값 시퀀스의 외부에서 적어도 하나의 채움 값을 상기 전송 채널(30)로 제공하며, 그럼으로써 상기 전송 채널(30) 상에서 에지 변경 또는 값 변경이 수행되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  2. 제 1 항에 있어서, 상기 제 1 가입자(21) 및 상기 제 2 가입자(22) 중 단지 일측 가입자만이 상기 채움 값을 상기 전송 채널(30)로 제공하며, 상기 제 1 가입자(21) 및 상기 제 2 가입자(22) 중 타측 가입자는 상기 채움 값을 검출하는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  3. 제 2 항에 있어서, 상기 타측 가입자는 상기 검출된 채움 값에 따라서 동기화 정보들을 검출하는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  4. 제 1 항에 있어서, 상기 제 1 가입자(21)는 상기 제 1 가입자 값 시퀀스의 외부에서 적어도 하나의 제 1 채움 값을 상기 전송 채널로 제공하고, 상기 제 2 가입자는 이것에 대해 실질적으로 동기식으로 상기 제 2 가입자 값 시퀀스의 외부에서 적어도 하나의 제 2 채움 값을 상기 전송 채널로 제공하며, 그럼으로써 상기 적어도 하나의 제 1 채움 값 및 상기 적어도 하나의 제 2 채움 값의 중첩에 의해 상기 전송 채널 상에서 에지 변경 또는 값 변경이 수행되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서, 적어도 상기 제 1 가입자(21) 또는 상기 제 2 가입자(22)에 의해 사전 결정된 개수의 동일한 값을 갖는 중첩 값 시퀀스가 검출되는 경우, 적어도 상기 제 1 가입자(21) 또는 상기 제 2 가입자(22)는 상기 채움 값을 상기 전송 채널(33)로 제공하는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  6. 제 5 항에 있어서, 사전 결정된 개수의 동일한 값을 갖는 중첩 값 시퀀스가 검출되는 즉시, 상기 채움 값은 직접적으로 바로 다음 값으로서 상기 전송 채널(30)로 제공되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  7. 제 5 항에 있어서, 사전 결정된 개수의 동일한 값을 갖는 중첩 값 시퀀스가 검출된 후에, 상기 채움 값은 특정한 개수의 값만큼 지연되어 상기 전송 채널(30)로 제공되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  8. 제 5 항 내지 제 7 항 중 어느 한 항에 있어서, 상기 채움 값은 상기 검출된 동일한 값들에 반대되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  9. 제 7 항에 있어서, 상기 채움 값은, 고정되고 사전 설정된 간격들로, 특히 각각 채널로 제공된 가입자 값 시퀀스의 값들의 사전 결정된 개수 후에 상기 전송 채널(30)로 제공되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  10. 제 1 항 내지 제 9 항 중 어느 한 항에 있어서, 적어도 2개의 채움 값이 상기 전송 채널(30)로 제공되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  11. 제 10 항에 있어서, 상기 2개의 채움 값은 값 변경을 내포하는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  12. 제 1 항 내지 제 11 항 중 어느 한 항에 있어서, 상기 전송 채널(30) 상에서, 상기 제 1 가입자(21)뿐 아니라 상기 제 2 가입자(22) 역시도 상기 전송 채널(30)을 통한 제 1 값(0)의 전송을 야기한다면 상기 제 1 값(0)에 상응하는 상태가 설정되며, 상기 제 1 가입자(21)가, 또는 상기 제 2 가입자(22)가, 또는 상기 두 가입자(21, 22) 모두가 상기 전송 채널(30)을 통한 제 2 값의 전송을 야기한다면 상기 제 2 값(1)에 상응하는 상태가 설정되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  13. 제 1 항 내지 제 12 항 중 어느 한 항에 있어서, 상기 제 1 가입자 값 시퀀스는 상기 제 1 가입자(21) 내에서, 그리고 상기 제 2 가입자 값 시퀀스는 상기 제 2 가입자(22) 내에서 국지적으로, 특히 난수 발생기 또는 의사 난수 발생기에 의해 생성되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  14. 제 1 항 내지 제 13 항 중 어느 한 항에 있어서, 상기 적어도 하나의 제 1 채움 값 및 상기 적어도 하나의 제 2 채움 값은 상기 공통 비밀 또는 상기 공통 키의 생성을 위해 사용되지 않는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  15. 네트워크(20)의 제 1 가입자(21)에서 비밀 또는 키의 생성을 위한 방법으로서, 상기 제 1 가입자(21)는, 상기 네트워크(20)의 적어도 하나의 제 2 가입자(22)로부터 전송 채널(30)을 통해 정보들을 수신할 뿐 아니라 제 2 가입자(22)로 정보들을 전송하도록 설계되고, 상기 제 1 가입자(21)는, 적어도 제 1 값 및 제 2 값을 상기 전송 채널(30)로 제공하고 상기 전송 채널 상에서 검출할 수 있도록 설계되고, 상기 제 1 가입자(21)는 상기 전송 채널(30) 상에서 상기 제 2 가입자(22)에 의한 제 2 가입자 값 시퀀스의 전송에 대해 실질적으로 동기 방식으로 전송을 위한 제 1 가입자 값 시퀀스를 생성하며, 상기 제 1 가입자(21)는 상기 제 1 가입자 값 시퀀스에 대한 정보들뿐 아니라, 상기 전송 채널(30) 상에서 상기 제 2 가입자 값 시퀀스와 상기 제 1 가입자 값 시퀀스의 중첩의 결과로 발생하는 중첩 값 시퀀스도 기반으로 하여 비밀 또는 키를 생성하는, 상기 비밀 또는 키 생성 방법에 있어서,
    특정한 간격들로 또는 검출된 중첩 값 시퀀스에 따라서, 상기 제 1 가입자(21)는 상기 제 1 가입자 값 시퀀스의 외부에서 적어도 하나의 제 1 채움 값을 상기 전송 채널(30)로 제공하며, 그럼으로써 상기 전송 채널 상에서 에지 변경 또는 값 변경이 수행되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  16. 제 1 항 내지 제 15 항 중 어느 한 항에 있어서, 상기 네트워크(20)는 CAN-, TTCAN-, CAN-FD, LIN- 또는 I2C-버스 시스템이고, 상기 제 1 값(1)은 열성 버스 레벨이며, 상기 제 2 값(0)은 우성 버스 레벨인 것을 특징으로 하는 비밀 또는 키 생성 방법.
  17. 제 1 항 내지 제 15 항 중 어느 한 항에 있어서, 상기 네트워크(20) 내에 데이터 전송을 위한 온-오프 키잉 진폭 편이 변조가 제공되는 것을 특징으로 하는 비밀 또는 키 생성 방법.
  18. 적어도 하나의 제 1 가입자(21) 및 하나의 제 2 가입자(22), 그리고 상기 제 1 가입자(21)가 상기 제 2 가입자(22)와 통신할 수 있게 하는 전송 채널(30)을 포함하는 네트워크(20)에 있어서,
    상기 네트워크(20)는 제 1 항 내지 제 17 항 중 어느 한 항에 따른 방법의 모든 단계를 실시하는 수단을 포함하는 것을 특징으로 하는 네트워크(20).
  19. 네트워크(20) 상의 가입자(21)로서 제 15 항에 따른 방법의 모든 단계를 실시하도록 설계된 장치.
  20. 제 1 항 내지 제 17 항 중 어느 한 항에 따른 방법의 모든 단계를 실시하도록 설계된 컴퓨터 프로그램.
  21. 제 20 항에 따른 컴퓨터 프로그램이 저장된 기계 판독 가능 메모리 매체.
KR1020177033600A 2015-05-22 2016-04-13 네트워크에서 비밀 또는 키 생성 방법 KR20180009753A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102015209496.0A DE102015209496A1 (de) 2015-05-22 2015-05-22 Verfahren zur Erzeugung eines Geheimnisses oder Schlüssels in einem Netzwerk
DE102015209496.0 2015-05-22
PCT/EP2016/058103 WO2016188667A1 (de) 2015-05-22 2016-04-13 Verfahren zur erzeugung eines geheimnisses oder schlüssels in einem netzwerk

Publications (1)

Publication Number Publication Date
KR20180009753A true KR20180009753A (ko) 2018-01-29

Family

ID=55754267

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177033600A KR20180009753A (ko) 2015-05-22 2016-04-13 네트워크에서 비밀 또는 키 생성 방법

Country Status (7)

Country Link
US (1) US10841085B2 (ko)
EP (1) EP3298721A1 (ko)
JP (1) JP2018516019A (ko)
KR (1) KR20180009753A (ko)
CN (1) CN107624229B (ko)
DE (1) DE102015209496A1 (ko)
WO (1) WO2016188667A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111247769B (zh) * 2017-08-29 2023-04-28 罗伯特·博世有限公司 用于使用不安全共享通信介质的具有前向保密性的线性密钥协定的方法和系统
CN110730067B (zh) * 2019-09-06 2021-10-19 深圳开源互联网安全技术有限公司 密钥生成方法、装置、计算机可读存储介质及终端设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050195975A1 (en) * 2003-01-21 2005-09-08 Kevin Kawakita Digital media distribution cryptography using media ticket smart cards
KR20070101097A (ko) * 2006-04-10 2007-10-16 삼성전자주식회사 전송 프레임을 생성하는 방법 및 장치 및 전송 프레임을처리하는 방법 및 장치
CN101287277B (zh) * 2007-04-13 2012-07-25 华为技术有限公司 一种为无线个域网中的用户终端提供业务的方法及系统
US20090103726A1 (en) * 2007-10-18 2009-04-23 Nabeel Ahmed Dual-mode variable key length cryptography system
DE102009002396A1 (de) 2009-04-15 2010-10-21 Robert Bosch Gmbh Verfahren zum Manipulationsschutz eines Sensors und von Sensordaten des Sensors und einen Sensor hierzu
DE102009045133A1 (de) 2009-09-29 2011-03-31 Robert Bosch Gmbh Verfahren zum Manipulationsschutz von Sensordaten und Sensor hierzu
CN101873212B (zh) * 2010-06-09 2012-04-18 中国农业大学 门限秘密信息分配、还原装置及方法
FR2970130B1 (fr) * 2011-01-03 2013-08-30 Centre Nat Etd Spatiales Procede de decodage et decodeur
DE102011080476A1 (de) 2011-08-05 2013-02-07 Robert Bosch Gmbh Verfahren und Vorrichtung zur Verbesserung der Datenübertragungssicherheit in einer seriellen Datenübertragung mit flexibler Nachrichtengröße
DE102012215326A1 (de) * 2012-08-29 2014-03-06 Robert Bosch Gmbh Verfahren und Vorrichtung zur Ermittlung eines kryptografischen Schlüssels in einem Netzwerk
DE102015207220A1 (de) 2014-04-28 2015-10-29 Robert Bosch Gmbh Verfahren zur Erzeugung eines Geheimnisses oder eines Schlüssels in einem Netzwerk
DE102014209042A1 (de) 2014-05-13 2015-11-19 Robert Bosch Gmbh Verfahren und Vorrichtung zum Erzeugen eines geheimen Schlüssels
DE102014208975A1 (de) * 2014-05-13 2015-11-19 Robert Bosch Gmbh Verfahren zur Generierung eines Schlüssels in einem Netzwerk sowie Teilnehmer an einem Netzwerk und Netzwerk
DE102015207763A1 (de) * 2015-04-28 2016-11-03 Robert Bosch Gmbh Verfahren und Vorrichtung zum Erzeugen eines einem ersten Knoten und einem zweiten Knoten gemeinsamen geheimen kryptografischen Schlüssels mittels mindestens eines Helferknotens

Also Published As

Publication number Publication date
JP2018516019A (ja) 2018-06-14
CN107624229A (zh) 2018-01-23
US20180123786A1 (en) 2018-05-03
CN107624229B (zh) 2021-03-30
WO2016188667A1 (de) 2016-12-01
US10841085B2 (en) 2020-11-17
EP3298721A1 (de) 2018-03-28
DE102015209496A1 (de) 2016-11-24

Similar Documents

Publication Publication Date Title
KR102312565B1 (ko) 네트워크에서 비밀 또는 키 생성 방법
US11606341B2 (en) Apparatus for use in a can system
CN105187200B (zh) 用于在网络中生成密钥的方法以及在网络上的用户和网络
CN104104510B (zh) 用于识别对传感器和/或传感器的传感器数据的操纵的方法
EP3038318B1 (en) Communication control apparatus, communication control method and communication control program
KR101704569B1 (ko) 시동 기반 동적 차량 보안 통신 제어 방법 및 그를 위한 장치 및 시스템
CN107836095B (zh) 用于在网络中产生秘密或密钥的方法
KR101740957B1 (ko) 차량용 데이터의 인증 및 획득 방법
JP5712995B2 (ja) 通信システム、通信装置及び通信方法
JP2013121070A (ja) 中継システム及び、当該中継システムを構成する中継装置、通信装置
KR20180009753A (ko) 네트워크에서 비밀 또는 키 생성 방법
CN106604342A (zh) 一种点对点通信方法及其装置
CN107453863A (zh) 用于在网络中生成秘密或密钥的方法
CN108141359B (zh) 用于产生共同的秘密的方法和设备
KR101602497B1 (ko) 무선 네트워크 통신 시스템에서 데이터 통신 보안을 위한 맥 프로토콜 제공 방법
CN108141358B (zh) 用于在电路装置中产生密钥的方法
CN107395339A (zh) 用于在网络中生成秘密或密钥的方法
US20190052459A1 (en) Method for generating a secret in a network having at least two transmission channels
CN108141357B (zh) 用于在网络中生成秘密的电路装置
JP2005348064A (ja) 通信システム、暗号化/復号中継装置、及び通信制御装置
CN109150882B (zh) 一种基于利用路由加密的数据防泄漏方法
CN108462702B (zh) 用于运行总线上的控制设备的方法和装置
JP6615721B2 (ja) 通信システム、受信装置、受信方法およびプログラム

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right