KR101701307B1 - Method for transmitting data - Google Patents
Method for transmitting data Download PDFInfo
- Publication number
- KR101701307B1 KR101701307B1 KR1020150121049A KR20150121049A KR101701307B1 KR 101701307 B1 KR101701307 B1 KR 101701307B1 KR 1020150121049 A KR1020150121049 A KR 1020150121049A KR 20150121049 A KR20150121049 A KR 20150121049A KR 101701307 B1 KR101701307 B1 KR 101701307B1
- Authority
- KR
- South Korea
- Prior art keywords
- node
- network
- group key
- random number
- ecu
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40234—Local Interconnect Network LIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40241—Flexray
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
본 발명의 개념에 따른 실시 예는 차량용 네트워크 시스템에서 데이터를 송신하는 방법에 관한 것으로, 서로 다른 서브 네트워크에 포함된 노드들 사이에서 전송되는 데이터에 대해 게이트웨이 노드에 의한 복호화 과정을 거치지 않고 데이터를 송신할 수 있는 방법에 관한 것이다.An embodiment according to the concept of the present invention relates to a method of transmitting data in a vehicular network system, in which data transmitted between nodes included in different subnetworks are transmitted without being decoded by a gateway node It is about how you can do it.
자동차 산업과 IT 산업의 융합이라 불릴 만큼, 최근 자동차에는 다양한 전자 제어 장치가 장착되어 판매되고 있다. 이와 같은 전자 제어 장치를 전자 제어 유닛(Electronic Control Unit; ECU)이라 한다. ECU는 마이크로프로세서(microprocessor)가 장착된 소형 컴퓨터라 할 수 있다. ECU의 기능 중 엔진 제어 유닛에 의한 엔진의 연료 분사 제어가 가장 대표적이나, 최근에는 변속기, 자세 제어, 에어백 제어, 타이어 공기압 관리 등 차량의 주행이나 관리에 필요한 거의 모든 기능들이 ECU를 통하여 제어되고 있다. 즉, 기존 차량 내부 기기는 기계식 장치가 주를 이루었던 반면, 최근에는 ECU를 포함한 전자식 장치들이 주를 이루고 있다.Recently, automobiles have been equipped with various electronic control devices, which is called a fusion of automobile industry and IT industry. Such an electronic control unit is referred to as an electronic control unit (ECU). The ECU can be a small computer with a microprocessor. Fuel injection control of the engine by the engine control unit is one of the functions of the ECU. Almost all functions necessary for running and managing the vehicle such as the transmission, attitude control, airbag control, tire air pressure control, etc., . In other words, while the conventional vehicle internal devices are mainly composed of mechanical devices, recently, electronic devices including ECUs are predominant.
이로 인해 자동차 산업에서도 해킹이라는 용어가 사용되게 되었다. 2010년 미국의 워싱턴 대학 연구팀을 최초로 하여 차량용 ECU에 악의적인 제어 패킷을 전송하여 차량을 제어하는 사례들이 발표되기 시작하였다. 예를 들어, 차량의 가속페달이 움직이지 않은 상태에서 엔진을 담당하는 ECU에게 연료 분사 제어 패킷을 악의적으로 전송하여 차량이 가속되는 경우가 있었다.As a result, the term hacking has come to be used in the automobile industry. In 2010, a team of researchers from the University of Washington in the United States first introduced cases of controlling vehicles by sending malicious control packets to vehicle ECUs. For example, in a state where the accelerator pedal of the vehicle is not moving, the fuel injection control packet is maliciously transmitted to the ECU responsible for the engine, so that the vehicle is accelerated.
정보 탈취를 목표로 하는 기존 해킹과 달리 차량 해킹에 의한 영향은 운전자의 생명과 연관되어 있어 더욱 큰 문제가 되고 있다. 따라서 이러한 차량 해킹을 방어하기 위한 다양한 방법들이 연구되고 있으며, 본 발명은 이러한 차량 해킹을 근본적으로 막을 수 있는 차량 ECU들 간의 안전한 그룹 키 교환 기술에 관한 것이다. 안전하게 교환된 그룹 키를 통하여, 암호화, 메시지 인증 등과 같은 암호 프리미티브를 적용할 수 있을 것이다.Unlike conventional hacking, which is aimed at information capture, the influence of vehicle hacking is becoming a bigger problem because it is related to driver 's life. Accordingly, various methods for preventing such vehicle hacking have been researched, and the present invention relates to a secure group key exchange technique between vehicle ECUs capable of fundamentally preventing such vehicle hacking. Cryptographic primitives such as encryption, message authentication, etc. may be applied through a securely exchanged group key.
자동차 해킹의 근본적인 원인은 차량 내부 네트워크의 각 노드들이 어떠한 암호학적 방법이 적용되지 않은 상태로 상호 통신을 하고 있다는 점에 있다. 각 ECU들은 자신의 데이터를 전송할 때, 데이터를 암호화하고 암호화된 데이터를 전송함으로써 이러한 문제를 해결할 수 있다.The root cause of car hacking is that each node in the vehicle's internal network communicates without any cryptographic method applied. When each ECU transmits its own data, it can solve this problem by encrypting the data and transmitting the encrypted data.
이러한 암호화 기법을 적용하기 위해서 각 ECU들이 사전에 안전하게 비밀 키를 공유하고 있어야 하며, 비밀키를 기반으로 암호화 또는 복호화를 수행할 수 있다.In order to apply this encryption scheme, each ECU must securely share a secret key in advance, and can perform encryption or decryption based on the secret key.
따라서, 본 발명은 차량 내부 네트워크에 속해 있는 정당한 ECU들 간에 동일한 그룹 키를 안전하게 교환할 수 있는 그룹 키 교환 프로토콜을 제안한다. 또한, 게이트웨이 ECU(gateway ECU)가 암호문을 복호화하는 과정을 거치지 아니하고 암호문의 암호화키를 변경할 수 있는 재암호화(Re-encryption) 기법을 제안한다.Therefore, the present invention proposes a group key exchange protocol capable of securely exchanging the same group key among legitimate ECUs belonging to a vehicle internal network. Also, a re-encryption scheme is proposed in which a gateway ECU (gateway ECU) can change the encryption key of the ciphertext without going through the process of decrypting the ciphertext.
본 발명이 이루고자 하는 기술적인 과제는 서로 다른 서브 네트워크에 포함된 노드들 사이에서 암호화된 메시지를 전송할 때에, 게이트웨이 노드가 데이터를 복호화하지 않고 제1 암호화키로 암호화된 암호문을 제2 암호화키로 암호화된 암호문으로 변경하여 제공할 수 있는 데이터 전송 방법에 관한 것이다.SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and it is an object of the present invention to provide a method and system for transmitting encrypted messages between nodes included in different subnetworks, in which a gateway node decrypts ciphertexts encrypted with a first encryption key, To a data transmission method that can be provided.
본 발명이 실시 예에 따른 데이터를 송신하는 방법은, 네트워크 시스템에 포함된 제1 서브 네트워크에 포함된 송신 노드가 상기 네트워크 시스템에 포함된 제2 서브 네트워크에 포함된 수신 노드로 데이터를 송신하는 방법으로서, 상기 송신 노드가 상기 제1 서브 네트워크의 그룹키인 제1 그룹키를 이용하여 메시지를 암호화한 제1 암호문을 게이트웨이 노드로 송신하는 단계, 상기 게이트웨이 노드가 상기 제1 암호문을 상기 제2 서브 네트워크의 그룹키인 제2 그룹키로 암호화된 제2 암호문으로 변경하는 단계, 및 상기 게이트웨이 노드가 상기 제2 암호문을 상기 수신 노드로 송신하는 단계를 포함한다.A method of transmitting data according to an embodiment of the present invention is a method in which a transmitting node included in a first sub network included in a network system transmits data to a receiving node included in a second sub network included in the network system Wherein the transmitting node transmits to the gateway node a first cipher text in which the message is encrypted using a first group key that is a group key of the first subnetwork, the gateway node transmits the first cipher text to the second sub- To a second cipher text encrypted with a second group key which is a group key of the network, and the gateway node transmitting the second cipher text to the receiving node.
본 발명의 실시 예에 따른 데이터를 송신하는 방법에 의할 경우, 네트워크 시스템에 포함된 복수의 서브 네트워크들 각각에 포함된 노드들은 안전한 그룹키를 공유할 수 있는 효과가 있다.According to the method of transmitting data according to the embodiment of the present invention, nodes included in each of a plurality of subnetworks included in a network system can share a secure group key.
또한, 본 발명의 실시 예에 따른 데이터를 송신하는 방법에 의할 경우, 게이트웨이 ECU에게 암호문에 대응하는 평문을 노출시키지 않고 다른 서브 네트워크에 포함된 수신 노드로 메시지를 송신할 수 있는 효과가 있다.In addition, according to the method of transmitting data according to the embodiment of the present invention, a message can be transmitted to a receiving node included in another subnetwork without exposing a plaintext corresponding to a cipher text to a gateway ECU.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 의한 네트워크 시스템을 도시한다.
도 2는 도 1에 도시된 네트워크 시스템에서 데이터 통신 방법을 설명하기 위한 흐름도이다.
도 3은 도 2에 도시된 재암호화키 생성 단계를 구체적으로 설명하기 위한 흐름도이다.
도 4a 내지 도 4e는 도 2에 도시된 그룹키 공유 단계를 설명하기 위한 도면이다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In order to more fully understand the drawings recited in the detailed description of the present invention, a detailed description of each drawing is provided.
1 shows a network system according to an embodiment of the present invention.
2 is a flowchart illustrating a data communication method in the network system shown in FIG.
FIG. 3 is a flowchart specifically illustrating the re-encryption key generation step shown in FIG.
4A to 4E are views for explaining the group key sharing step shown in FIG.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.It is to be understood that the specific structural or functional description of embodiments of the present invention disclosed herein is for illustrative purposes only and is not intended to limit the scope of the inventive concept But may be embodied in many different forms and is not limited to the embodiments set forth herein.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.The embodiments according to the concept of the present invention can make various changes and can take various forms, so that the embodiments are illustrated in the drawings and described in detail herein. It should be understood, however, that it is not intended to limit the embodiments according to the concepts of the present invention to the particular forms disclosed, but includes all modifications, equivalents, or alternatives falling within the spirit and scope of the invention.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1 구성 요소는 제2 구성 요소로 명명될 수 있고 유사하게 제2 구성 요소는 제1 구성 요소로도 명명될 수 있다.The terms first, second, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms may be named for the purpose of distinguishing one element from another, for example, without departing from the scope of the right according to the concept of the present invention, the first element may be referred to as a second element, The component may also be referred to as a first component.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between. Other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms "comprises" or "having" and the like are used to specify that there are features, numbers, steps, operations, elements, parts or combinations thereof described herein, But do not preclude the presence or addition of one or more other features, integers, steps, operations, components, parts, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the meaning of the context in the relevant art and, unless explicitly defined herein, are to be interpreted as ideal or overly formal Do not.
우선, 본 명세서에서 사용되는 용어를 표로 정리하면 다음과 같고, 이하에서는 본 명세서에서 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다.Hereinafter, terms used in the present specification will be summarized below. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일 실시 예에 의한 네트워크 시스템을 도시한다.1 shows a network system according to an embodiment of the present invention.
차량용 네트워크 시스템일 수 있는 네트워크 시스템(10)은 적어도 하나 이상의 서브 네트워크를 포함할 수 있다. 상기 서브 네트워크는 CAN(Controller Area Network), LIN(Local Interconnect Network), CAN FD(CAN with Flexible Data Rate), 및 Flexlay 네트워크 중 어느 하나일 수 있고, 도 1에는 제1 서브 네트워크(Network A), 제2 서브 네트워크(Network B), 및 제3 서브 네트워크(Network C)만이 도시되어 있으나, 본 발명이 네트워크 시스템(10)에 포함되는 서브 네트워크의 개수에 제한되는 것은 아니다.The
제1 서브 네트워크(Network A)는 CAN일 수 있고, 제2 서브 네트워크(Network B)는 Flexlay 네트워크일 수 있고, 제3 서브 네트워크(Network C)는 CAN FD일 수 있다.The first subnetwork (Network A) may be a CAN, the second subnetwork (Network B) may be a Flexlay network, and the third subnetwork (Network C) may be a CAN FD.
각각의 서브 네트워크는 복수의 노드들을 포함하고, 서로 다른 서브 네트워크에 포함된 노드 사이에서의 통신은 게이트웨이 노드를 통하여 수행된다. 구체적으로 제1 서브 네트워크(Network A)는 n(n은 1 이상의 자연수) 개의 노드들을 포함하고, 제2 서브 네트워크(Network B)는 x(x는 1 이상의 자연수) 개의 노드들을 포함하고, 제3 서브 네트워크(Network C)는 y(y는 1 이상의 자연수) 개의 노드들을 포함할 수 있다.Each subnetwork includes a plurality of nodes, and communication between nodes included in different subnetworks is performed through a gateway node. Specifically, the first subnetwork (Network A) includes n nodes (n is a natural number of 1 or more), the second subnetwork (Network B) includes x (x is a natural number of 1 or more) The subnetwork (Network C) may include y (y is a natural number of 1 or more) nodes.
또한, 본 명세서의 노드는 각각의 전자 장치를 제어하는 ECU를 의미할 수 있고, 게이트웨이 노드는 게이트웨이 ECU를 의미할 수 있다. 또한, 상기 ECU와 상기 게이트웨이 ECU는 정보를 송수신하기 위한 송수신기를 포함하는 개념일 수 있고, 실시 예에 따라 상기 송수신기는 상기 ECU 또는 상기 게이트웨이 ECU와는 별도로 구현될 수도 있다.In addition, the node herein may mean an ECU that controls each electronic device, and the gateway node may mean a gateway ECU. In addition, the ECU and the gateway ECU may be a concept including a transceiver for transmitting and receiving information, and the transceiver may be implemented separately from the ECU or the gateway ECU according to an embodiment.
도 2는 도 1에 도시된 네트워크 시스템에서 데이터 통신 방법을 설명하기 위한 흐름도이다. 구체적으로 도 2에서는 제1 서브 네트워크(Network A)에 포함된 송신 노드가 제2 서브 네트워크(Network B)에 포함된 수신 노드로 데이터를 전송하는 과정을 일 예로 설명한다.2 is a flowchart illustrating a data communication method in the network system shown in FIG. Specifically, FIG. 2 illustrates a process in which a transmitting node included in a first sub-network A transmits data to a receiving node included in a second sub-network B as an example.
도 1과 도 2를 참조하면, 서브 네트워크에 포함된 복수의 노드들은 상기 서브 네트워크의 그룹키를 공유한다(S100). 즉, 제1 서브 네트워크(Nwtwork A)에 포함된 복수의 노드들이 제1 서브 네트워크(Network A)의 그룹키인 제1 그룹키(GKA)를 공유하고, 제2 서브 네트워크(Network B)에 포함된 복수의 노드들이 제2 서브 네트워크(Network B)의 그룹키인 제2 그룹키(GKB)를 공유한다. 그룹키 공유 과정에 대한 구체적인 설명은 후술하기로 한다. 단계 S100에서 공유된 그룹키는 메시지를 암호화하거나 복호화하는 과정에서 이용되는 암호화키를 의미할 수 있다.Referring to FIGS. 1 and 2, a plurality of nodes included in a sub network share a group key of the sub network (S100). That is, a plurality of nodes included in the first sub-network Nwtwork A share a first group key GK A , which is a group key of the first sub-network A, A plurality of included nodes share a second group key (GK B ) which is a group key of the second subnetwork (Network B). A detailed description of the group key sharing process will be given later. The group key shared in step S100 may mean an encryption key used in encrypting or decrypting a message.
S200 단계에서, 게이트웨이 ECU는 재암호화키를 생성한다(S200). 재암호화키 생성 과정에 대한 구체적인 설명은 후술하기로 한다.In step S200, the gateway ECU generates a re-encryption key (S200). A detailed description of the re-encryption key generation process will be given later.
제1 서브 네트워크(Network A)에 포함된 송신 노드는 수신 노드로 송신하고자 하는 메시지(m)를 암호화한다(S300). 상기 송신 노드는 제1 서브 네트워크(Network A)의 그룹키(GKA)를 이용하여 메시지(m)을 암호화할 수 있다. 구체적으로 암호문(c)은 아래의 수학식 1를 이용하여 생성될 수 있다.The transmitting node included in the first sub-network A encrypts the message m to be transmitted to the receiving node (S300). The transmitting node may encrypt the message m using the group key GK A of the first subnetwork (Network A). Specifically, the cipher text (c) can be generated using the following equation (1).
상기 수학식 1에서, "r"은 임의의 난수이다. In Equation (1), "r" is an arbitrary random number.
송신 노드는 생성된 암호문(c)을 게이트웨이 ECU로 송신한다(S400). 암호문(c)을 수신한 게이트웨이 ECU는 제1 그룹키(GKA)로 암호화된 암호문(c)을 제2 그룹키(GKB)로 암호화된 암호문(c')으로 재암호화한다(S600). 즉, 상기 게이트웨이 ECU는, 송신 노드가 암호문(c)을 복호화할 수 있도록, 암호문(c)을 상기 송신 노드가 속한 서브 네트워크인 제2 서브 네트워크(Network B)의 그룹키(GKB)로 암호화한 암호문(c')으로 변환할 수 있다. 재암화는 아래의 수학식 2를 이용하여 수행될 수 있다.The transmitting node transmits the generated cipher text c to the gateway ECU (S400). The gateway ECU having received the cipher text c re-encrypts the cipher text c encrypted with the first group key GK A with the cipher text c 'encrypted with the second group key GK B in operation S600. That is, the gateway ECU encrypts the cipher text (c) with the group key (GK B ) of the second subnetwork (Network B), which is a subnetwork to which the transmitting node belongs, so that the transmitting node can decrypt the cipher text Can be converted into a cipher text (c '). Re-encoding may be performed using Equation (2) below.
단계 S800 에서, 게이트웨이 ECU는 재암호화된 암호문(c')을 수신 노드로 송신한다.In step S800, the gateway ECU transmits the re-encrypted cipher text c 'to the receiving node.
단계 S900에서, 제2 서브 네트워크(Network B)에 포함된 수신 노드는 게이트웨이 ECU로부터 암호문(c')을 수신하고, 수신된 암호문(c')을 복호화하여 메시지(m)을 얻을 수 있다. In step S900, the receiving node included in the second subnetwork (Network B) can receive the cipher text c 'from the gateway ECU and decrypt the received cipher text c' to obtain the message m.
우선, 아래의 수학식 3과 같이 수신 노드는 제2 그룹키(GKB), 보다 구체적으로는 제2 그룹키(GKB)의 역수(GKB - 1)를 이용하여 암호문(c')으로부터 gr을 계산할 수 있다.First, the receiving node extracts the ciphertext (c ') from the ciphertext c' using the second group key GK B , more specifically, the inverse number GK B - 1 of the second group key GK B , g r can be calculated.
다음으로, 아래의 수학식 4과 같이 수신 노드는 수학식 3을 통하여 얻은 gr의 역원을 계산하고, 이를 이용하여 메시지(m)을 획득할 수 있다.Next, as shown in Equation (4), the receiving node can calculate the inverse of g r obtained through Equation (3), and use it to acquire the message (m).
도 3은 도 2에 도시된 재암호화키 생성 단계를 구체적으로 설명하기 위한 흐름도이다.FIG. 3 is a flowchart specifically illustrating the re-encryption key generation step shown in FIG.
재암호화키(KAB)는 제1 서브 네트워크(Network A)의 그룹키(GKA)로 암호화되어 있는 암호문(c)을 제2 서브 네트워크(Network B)의 그룹키(GKB)로 암호화되어 있는 암호문(c')으로 변환할 수 있는 키로서, 실시 예에 따라 변화키로 불릴 수도 있다.The re-encryption key K AB is encrypted with the group key GK B of the second subnetwork B as the cipher text c encrypted with the group key GK A of the first subnetwork A (C '), which may be referred to as a change key according to an embodiment.
제1 서브 네트워크(Network A)의 대표 노드인 제1 대표 노드와 제2 서브 네트워크(Network B)의 대표 노드인 제2 대표 노드 각각이 임의의 난수를 선택한다(S210). 즉, 상기 제1 대표 노드는 제1 난수(RA)를 선택하고 상기 제2 대표 노드는 제2 난수(RB)를 선택할 수 있다. 상기 제1 대표 노드는 제1 서브 네트워크(Network A)에 포함된 복수의 노드들 중 미리 정해진 노드일 수 있으며, 실시 예에 따라 그룹키 공유 단계에서의 제1 노드일 수도 있다. 또한, 상기 제2 대표 노드는 제2 서브 네트워크(Network B)에 포함된 복수의 노드들 중 미리 정해진 노드일 수 있으며, 실시 예에 따라 그룹키 공유 단계에서의 제1 노드일 수도 있다.The first representative node, which is the representative node of the first sub-network (Network A), and the second representative node, which is the representative node of the second sub-network (Network B), select random numbers (S210). That is, the first representative node may select the first random number R A and the second representative node may select the second random number R B. The first representative node may be a predetermined node among a plurality of nodes included in the first subnetwork (Network A), and may be the first node in the group key sharing step according to an embodiment. Also, the second representative node may be a predetermined node among a plurality of nodes included in the second sub-network (Network B), and may be the first node in the group key sharing step according to an embodiment.
단계 S230에서, 상기 제1 대표 노드와 상기 제2 대표 노드 각각은 유한 그룹의 생성원(g)에 선택된 난수를 지수승하여 계산된 계산값을 서로 교환한다. 즉, 상기 제1 대표 노드는 제1 난수(RA)를 유한 그룹의 생성원(g)에 지수승하여 제1 계산값()을 생성하고, 제1 계산값()을 게이트웨이 ECU를 경유하여 제2 대표 노드로 송신한다. 또한, 상기 제2 대표 노드는 제2 난수(RB)를 유한 그룹의 생성원(g)에 지수승하여 제2 계산값()을 생성하고, 제2 계산값()을 게이트웨이 ECU를 경유하여 제1 대표 노드로 송신한다.In step S230, each of the first representative node and the second representative node exponentially multiplies the selected random number in the source (g) of the finite group to exchange calculated values calculated. That is, the first representative node exponentially multiplies the first random number R A with the generation source g of the finite group to generate a first calculation value ), And generates a first calculation value ( To the second representative node via the gateway ECU. Also, the second representative node exponentially multiplies the second random number (R B ) with the generation source (g) of the finite group to generate a second calculation value ), And generates a second calculated value ( To the first representative node via the gateway ECU.
단계 S250에서, 상기 제1 대표 노드와 상기 제2 대표 노드는 상대방으로부터 수신된 계산값과 자신이 선택한 난수를 이용하여 공유값(h)을 생성할 수 있다. 즉, 상기 제1 대표 노드는 제1 난수(RA)를 상기 제2 대표 노드로부터 수신한 제2 계산값()에 지수승하여 공유값()을 생성하고, 상기 제2 대표 노드는 제2 난수(RB)를 상기 제1 대표 노드로부터 수신한 제1 계산값()에 지수승하여 공유값()을 생성할 수 있다.In step S250, the first representative node and the second representative node can generate the shared value h using the calculated value received from the other party and the random number selected by the first representative node and the second representative node. That is, the first representative node receives the first random number R A from the second representative node ) To exponentiate to a shared value ( ), And the second representative node generates a second calculated value (R B ) from the first representative node ) To exponentiate to a shared value ( Can be generated.
단계 S270에서, 상기 제1 대표 노드와 상기 제2 대표 노드는 자신의 그룹키의 역수와 공유값을 곱하거나 공유값의 역수와 자신의 그룹키의 곱하여 계산값을 생성하고, 생성된 계산값을 게이트웨이 ECU로 송신한다. 즉, 상기 제1 대표 노드는 공유값(h)과 제1 그룹키(GKA)를 이용하여 제3 계산값(h*GKA -1 또는 h-1*GKA)을 생성하고 생성된 제3 계산값을 게이트웨이 ECU로 송신할 수 있다. 또한, 상기 제2 대표 노드는 고유값(h)과 제2 그룹키(GKB)를 이용하여 제4 계산값(h-1*GKB 또는 h*GKB -1)을 생성하고 생성된 제4 계산값을 게이트웨이 ECU로 송신할 수 있다.In step S270, the first representative node and the second representative node multiply the reciprocal number of their group key by the shared value, or multiply the reciprocal of the shared value by the own group key, and generate the calculated value And transmits it to the gateway ECU. That is, the first representative node generates a third calculated value h * GK A -1 or h -1 * GK A using the shared value h and the first group key GK A , 3 The calculated value can be sent to the gateway ECU. Also, the second representative node generates a fourth calculated value h -1 * GK B or h * GK B -1 using the eigenvalue h and the second group key GK B , 4 The calculated value can be transmitted to the gateway ECU.
단계 S290에서, 게이트웨이 ECU는 상기 제1 대표 노드와 상기 제2 대표 노드로부터 수신된 제3 계산값과 제4 계산값을 이용하여 재암호화키(GKA -1*GKB)를 생성할 수 있다. In step S290, the gateway ECU may generate the re-encryption key (GK A -1 * GK B ) using the third calculation value and the fourth calculation value received from the first representative node and the second representative node .
도 4a 내지 도 4e는 도 2에 도시된 그룹키 공유 단계를 설명하기 위한 도면이다. 도 4를 통하여 제1 서브 네트워크(Network A)에 포함된 노드들이 제1 그룹키(GKA)를 공유하는 과정을 설명한다.4A to 4E are views for explaining the group key sharing step shown in FIG. A process of sharing the first group key GK A by the nodes included in the first subnetwork A will be described with reference to FIG.
우선, 제1 서브 네트워크(Network A)에 포함된 n 개(n은 2 이상의 자연수)의 노드들 각각은 자신의 난수를 선택한다. 즉, 제1 노드(ECU 1A)는 제1 난수(r1A)를 선택하고 제k 노드(ECU kA, k는 1보다 크거나 같고 n보다 작거나 같은 자연수)는 제k 난수(rkA)를 선택한다.First, each of n nodes (n is a natural number of 2 or more) included in the first subnetwork (Network A) selects its own random number. That is, the first node (
도 4a를 참조하면, 제1 ECU(ECU 1A)는 제1 난수(r1A)를 공개 파라미터인 유한 그룹의 생성원(g)에 지수승하여 연산값()을 계산한다. 또한, 제1 ECU(ECU 1A)는 연산값()을 제2 ECU(ECU 2A)에게 송신한다.Referring to FIG. 4A, the first ECU (
도 4b를 참조하면, 제2 ECU(ECU 2A)는 제2 난수(r2A)를 연산값()에 지수승하여 연산값()을 생성한다. 또한, 제2 ECU(ECU 2A)는 를 제3 ECU(ECU 3A)로 송신한다.Referring to FIG. 4B, the second ECU (
도 4c를 참조하면, 제3 ECU(ECU 3A)는 제3 난수(r3A)와 제2 ECU(ECU 2A)로부터 수신된 값을 이용하여 연산을 수행하고, 를 제4 ECU(ECU 4A)로 송신한다.Referring to FIG. 4C, the third ECU (
도 4d를 참조하면, 제4 ECU(ECU 4A)는 제4 난수(r4A)와 제3 ECU(ECU 3A)로부터 수신된 값을 이용하여 연산을 수행하고, 를 제5 ECU(ECU 5A)로 송신한다. Referring to FIG. 4D, the fourth ECU (
이후에 이전 노드로부터 연산 결과를 수신한 노드(ECU kA)는 자신이 선택한 난수(rkA)를 상기 이전 노드로부터 수신한 연산 결과에 지수승한 연산값을 다음 노드(ECU (k+1)A)로 송신할 수 있다. 마찬가지로 도 4e를 참조하면, 제n 노드는 제(n-1) 노드로부터 를 수신하고, 수신된 값에 제n 난수(rnA)를 지수승하여 를 연산한다.Since their is a node (ECU kA) receives the operation result from the previous node to select a random number (r kA) the operation result to the index seunghan calculating a value, and the node (ECU (k + 1) A ) received from the previous node, As shown in FIG. Similarly, referring to FIG. 4E, the n-th node is connected to the (n-1) , And the n-th random number r nA is exponentially multiplied with the received value .
또한, 제n ECU(ECU nA)는 연산하고, 연산값을 제i ECU(ECU iA)로 송신한다. 즉, 제n ECU(ECU nA)는 제1 ECU(ECU 1A)로 를 전송하고, 제2 ECU(ECU 2A)로 를 전송하고, 제3 ECU(ECU 3A)로 를 전송할 수 있다.Further, the n-th ECU (ECU nA) And transmits the calculated value to the i-th ECU (ECU iA). That is, the n-th ECU (ECU nA) is connected to the first ECU (
제n 노드(ECU nA)를 제외한 노드들 각각은 자신이 선택한 난수를 제n 노드(ECU nA)로부터 수신된 값에 지수승함으로써 그룹키(GKA)를 생성할 수 있다. 즉, 제1 서브 네트워크(Network A)의 그룹키()는 제1 서브 네트워크(Network A)에 포함된 모든 노드들 각각이 선택한 난수들의 곱을 유한 그룹의 생성원(g)에 지수승한 값이 될 수 있다. Each of the nodes other than the n-th node (ECU nA) can generate the group key (GK A ) by exponentially increasing the value received from the n-th node (ECU nA). That is, the group key of the first sub-network (Network A) May be a value obtained by multiplying the product of the random numbers selected by each of all the nodes included in the first subnetwork A by the exponentiation factor g of the finite group.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.
10 : 네트워크 시스템
Network A : 제1 서브 네트워크
Network B : 제2 서브 네트워크
Network C : 제3 서브 네트워크10: Network system
Network A: first sub-network
Network B: Second sub-network
Network C: Third subnetwork
Claims (6)
상기 송신 노드가 상기 제1 서브 네트워크의 그룹키인 제1 그룹키를 이용하여 메시지를 암호화한 제1 암호문을 게이트웨이 노드로 송신하는 단계;
상기 게이트웨이 노드가 상기 제1 암호문을 상기 제2 서브 네트워크의 그룹키인 제2 그룹키로 암호화된 제2 암호문으로 변경하는 단계; 및
상기 게이트웨이 노드가 상기 제2 암호문을 상기 수신 노드로 송신하는 단계를 포함하고,
상기 게이트웨이 노드는 재암호화키를 이용하여 상기 제1 암호문을 상기 제2 암호문으로 변경하고,
상기 재암호화키는,
상기 제1 서브 네트워크에 포함된 제1 대표 노드와 상기 제2 서브 네트워크에 포함된 제2 대표 노드 각각이 제1 난수와 제2 난수를 선택하는 단계;
상기 제1 대표 노드와 상기 제2 대표 노드가, 상기 제1 대표 노드가 상기 제1 난수를 유한 그룹의 생성원에 지수승하여 연산한 제1 계산값과 상기 제2 대표 노드가 상기 제2 난수를 상기 유한 그룹의 생성원에 지수승하여 연산한 제2 계산값을 교환하는 단계;
상기 제1 대표 노드와 상기 제2 대표 노드가, 상기 제1 난수와 상기 제2 난수의 곱을 상기 유한 그룹의 생성원에 지수승한 값인 공유값을 연산하는 단계;
상기 게이트웨이 노드가 상기 제1 대표 노드로부터 상기 공유값에 상기 제1 그룹키의 역수를 곱한 값인 제3 계산값을 수신하고, 상기 제2 대표 노드로부터 상기 공유값의 역수에 상기 제2 그룹키를 곱한 값인 제4 계산값을 수신하는 단계; 및
상기 게이트웨이 노드가 상기 제3 계산값과 상기 제4 계산값의 곱인 상기 재암호화키를 생성하는 단계를 통하여 생성되는,
데이터를 송신하는 방법.A method for transmitting data to a receiving node included in a first sub-network included in a network system, the receiving node including a second sub-network included in the network system,
Transmitting to the gateway node a first cipher text in which the transmitting node has encrypted a message using a first group key which is a group key of the first subnetwork;
The gateway node changing the first ciphertext to a second ciphertext encrypted with a second group key that is a group key of the second subnetwork; And
The gateway node sending the second ciphertext to the recipient node,
The gateway node uses the re-encryption key to change the first ciphertext to the second ciphertext,
Wherein the re-
Selecting a first random number and a second random number by a first representative node included in the first sub network and a second representative node included in the second sub network;
Wherein the first representative node and the second representative node determine whether or not the first representative value is a first calculated value calculated by exponentially multiplying the first random number by the generation source of the finite group, Exchanging a second calculated value calculated by performing an exponential multiplication on the generation source of the finite group;
The first representative node and the second representative node calculating a product of the first random number and the second random number as a shared value which is a value obtained by multiplying the product of the generation of the finite group by the product of the first random number and the second random number;
The gateway node receiving from the first representative node a third calculated value which is a value obtained by multiplying the shared value by the reciprocal of the first group key and receiving the second group key from the second representative node in an inverse number of the shared value Receiving a fourth computed value that is a multiplied value; And
Wherein the gateway node generates the re-encryption key, which is a product of the third calculated value and the fourth calculated value,
A method for transmitting data.
상기 네트워크 시스템은 차량용 네트워크 시스템이고,
상기 제1 서브 네트워크 또는 상기 제2 서브 네트워크는 CAN(Controller Area Network), CAN FD(CAN with Flexible Data Rate), LIN(Local Interconnect Network) 또는 Flexlay 네트워크인, 데이터를 송신하는 방법.The method according to claim 1,
Wherein the network system is a vehicular network system,
Wherein the first subnetwork or the second subnetwork is a CAN (Controller Area Network), a CAN FD (CAN with Flexible Data Rate), a LIN (Local Interconnect Network) or a Flexlay network.
상기 송신 노드와 상기 수신 노드 각각은 대응되는 전자 장치의 동작을 제어하는 ECU(Electronic Control Unit)이고,
상기 게이트웨이 노드는 게이트웨이 ECU인, 데이터를 송신하는 방법.The method according to claim 1,
Each of the transmitting node and the receiving node is an electronic control unit (ECU) for controlling the operation of the corresponding electronic device,
Wherein the gateway node is a gateway ECU.
상기 데이터를 송신하는 방법은,
상기 수신 노드가 상기 제2 그룹키를 이용하여 상기 제2 암호문을 복호화하는 단계를 더 포함하는, 데이터를 송신하는 방법.The method according to claim 1,
The method of transmitting data includes:
And the receiving node decrypting the second cipher text using the second group key.
상기 제1 그룹키는 상기 제1 서브 네트워크에 포함된 복수의 노드들 각각이 선택한 난수의 곱을 유한 그룹의 생성원(g)에 지수승한 값이고,
상기 제2 그룹키는 상기 제2 서브 네트워크에 포함된 복수의 노드들 각각이 선택한 난수의 곱을 유한 그룹의 생성원(g)에 지수승한 값인,
데이터를 송신하는 방법.The method according to claim 1,
Wherein the first group key is a value obtained by multiplying a product of a random number selected by each of a plurality of nodes included in the first sub network by an exponentiation factor g of a finite group,
Wherein the second group key is a value obtained by multiplying a product of a random number selected by each of a plurality of nodes included in the second sub-
A method for transmitting data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150121049A KR101701307B1 (en) | 2015-08-27 | 2015-08-27 | Method for transmitting data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150121049A KR101701307B1 (en) | 2015-08-27 | 2015-08-27 | Method for transmitting data |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101701307B1 true KR101701307B1 (en) | 2017-02-02 |
Family
ID=58151611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150121049A KR101701307B1 (en) | 2015-08-27 | 2015-08-27 | Method for transmitting data |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101701307B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050032477A (en) * | 2003-10-01 | 2005-04-07 | 가부시키가이샤 히타치세이사쿠쇼 | Server including an encoded data converter apparatus |
KR101249394B1 (en) * | 2011-08-30 | 2013-04-03 | 고려대학교 산학협력단 | Proxy re-encryption method from lattices and apparatus therefor |
KR20140078917A (en) | 2012-12-18 | 2014-06-26 | 주식회사 유라코퍼레이션 | Apparatas and method for security message transmission and reception of vehicle network |
KR20150024117A (en) * | 2013-08-26 | 2015-03-06 | 고려대학교 산학협력단 | Data certification and acquisition method for vehicle |
-
2015
- 2015-08-27 KR KR1020150121049A patent/KR101701307B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050032477A (en) * | 2003-10-01 | 2005-04-07 | 가부시키가이샤 히타치세이사쿠쇼 | Server including an encoded data converter apparatus |
KR101249394B1 (en) * | 2011-08-30 | 2013-04-03 | 고려대학교 산학협력단 | Proxy re-encryption method from lattices and apparatus therefor |
KR20140078917A (en) | 2012-12-18 | 2014-06-26 | 주식회사 유라코퍼레이션 | Apparatas and method for security message transmission and reception of vehicle network |
KR20150024117A (en) * | 2013-08-26 | 2015-03-06 | 고려대학교 산학협력단 | Data certification and acquisition method for vehicle |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101740957B1 (en) | Data certification and acquisition method for vehicle | |
Hazem et al. | Lcap-a lightweight can authentication protocol for securing in-vehicle networks | |
CN105049401B (en) | A kind of safety communicating method based on intelligent vehicle | |
CN106685985B (en) | A kind of vehicle remote diagnosis system and method based on information security technology | |
US10862670B2 (en) | Automotive nonce-misuse-resistant authenticated encryption | |
CN111541678A (en) | Block chain-based proxy re-encryption method, system and storage medium | |
CN107086911B (en) | CCA (clear channel assessment) safe proxy re-encryption method capable of delegating verification | |
CN104113408A (en) | Method for realizing timely user attribute cancel based on ciphertext-policy attribute-based encryption | |
CN113078997B (en) | Terminal protection method based on lightweight cryptographic algorithm | |
CN113132098B (en) | Large-scale in-vehicle network-oriented extensible CAN bus safety communication method and device | |
CN110099367A (en) | Car networking secure data sharing method based on edge calculations | |
Doan et al. | CAN crypto FPGA chip to secure data transmitted through CAN FD bus using AES-128 and SHA-1 algorithms with a symmetric key | |
CN113852632A (en) | Vehicle identity authentication method, system, device and storage medium based on SM9 algorithm | |
CN113542428A (en) | Vehicle data uploading method and device, vehicle, system and storage medium | |
CN109543439A (en) | A kind of service request method and device of car networking | |
KR101620954B1 (en) | Method for group key agreement | |
CN113595717B (en) | ECB mode packet encryption method and decryption method, control device and vehicle | |
Siddiqui et al. | A secure communication framework for ecus | |
CN118337367B (en) | Intelligent networking vehicle track prediction method and related device based on federal learning | |
US12010247B2 (en) | Implementation of a butterfly key expansion scheme | |
KR101701307B1 (en) | Method for transmitting data | |
CN116961893A (en) | End-to-end secure encryption communication management method, system and storable medium | |
CN106973061B (en) | AES outgoing file encryption method based on reversible logic circuit | |
US20020196945A1 (en) | Key sharing system, public key cryptosystem, signature system, key sharing apparatus, encryption apparatus, decryption apparatus, signature apparatus, authentication apparatus, key sharing method, encryption method, decryption method, signature method, authentication method, and programs | |
CN110234093B (en) | Internet of things equipment encryption method based on IBE (Internet of things) in Internet of vehicles environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20200120 Year of fee payment: 4 |