KR20240000161A - Method, device and system for dds communication - Google Patents
Method, device and system for dds communication Download PDFInfo
- Publication number
- KR20240000161A KR20240000161A KR1020220076755A KR20220076755A KR20240000161A KR 20240000161 A KR20240000161 A KR 20240000161A KR 1020220076755 A KR1020220076755 A KR 1020220076755A KR 20220076755 A KR20220076755 A KR 20220076755A KR 20240000161 A KR20240000161 A KR 20240000161A
- Authority
- KR
- South Korea
- Prior art keywords
- node
- domain
- nodes
- authentication
- information
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 113
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000010586 diagram Methods 0.000 description 12
- 230000008901 benefit Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 230000009977 dual effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000007123 defense Effects 0.000 description 2
- 239000003814 drug Substances 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/065—Network architectures or network communication protocols for network security for supporting key management in a packet data network for group communications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0263—Rule management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/029—Firewall traversal, e.g. tunnelling or, creating pinholes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- 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/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/121—Timestamp
Abstract
DDS 통신 방법이 개시된다. 본 발명에 따른 DDS 통신 방법은, 게이트웨이에 접속하여 DDS 통신에 참여하려는 복수의 노드로부터, 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신하는 단계, 상기 복수의 노드 중 동일한 도메인 ID를 가지는 노드들에, 상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 단계, 상기 게이트웨이가, 상기 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하는 단계, 및, 상기 게이트웨이가, 상기 도메인 ID를 가지는 특정 노드로부터 상기 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 상기 인증 정보를 이용하여 인증을 수행하고, 상기 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는 단계를 포함한다.A DDS communication method is disclosed. The DDS communication method according to the present invention includes receiving node information including identification information and domain ID from a plurality of nodes that want to connect to a gateway and participate in DDS communication, and nodes having the same domain ID among the plurality of nodes. transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID; configuring, by the gateway, a network for nodes having the domain ID to exchange packets; and, The gateway receives authentication information generated using the group key from a specific node having the domain ID, performs authentication using the authentication information, and, if the authentication is successful, sends the packet received from the specific node to the It includes transmitting to another node having a domain ID.
Description
본 발명은, 5G, LTE 등의 대규모 네트워크 환경에서 DDS 통신을 제공하기 위한, DDS 통신 방법, 장치 및 시스템에 관한 것이다.The present invention relates to a DDS communication method, device, and system for providing DDS communication in a large-scale network environment such as 5G and LTE.
데이터 분산 서비스(Data Distribution Service, DDS)(이하, DDS라 함)는 분산 환경에서 실시간 통신을 위한 발간(publish) - 구독(subscribe) 방식의 통신 프로토콜을 제공한다. 발간 - 구독 방식은 성능, 확장성 그리고 가용성 측면에서 강점을 가지며, 국방, 교통, 의료, 로봇 등 다양한 분야에서 사용되고 있다. 일 예로, 로봇의 운영체제로 많이 쓰이는 ROS2에서는 기본 통신 미들웨어로 DDS를 사용한다.Data Distribution Service (DDS) (hereinafter referred to as DDS) provides a publish-subscribe communication protocol for real-time communication in a distributed environment. The publication-subscription method has strengths in terms of performance, scalability, and availability, and is used in various fields such as defense, transportation, medicine, and robotics. For example, ROS2, which is widely used as an operating system for robots, uses DDS as the basic communication middleware.
일반적인 DDS 통신 방법에서는, 분산 환경에서 실시간으로 데이터를 배포하기 위해, 자동으로 참여자(Participant)를 찾아내는 오토 디스커버리(Auto-Discovery) 기능을 사용한다. 오토 디스커버리(Auto-Discovery) 기능은, 참여자가 멀티캐스트(Multicast)로 PDP(Participant Discovery Protocol)라는 메시지를 주기적으로 전송함으로써 데이터를 배포할 다른 참여자를 찾아내는 기능이다.In a typical DDS communication method, an auto-discovery function is used to automatically find participants to distribute data in real time in a distributed environment. The Auto-Discovery function is a function where participants find other participants to distribute data to by periodically transmitting a PDP (Participant Discovery Protocol) message through multicast.
오토 디스커버리(Auto-Discovery) 기능은, 멀티캐스트(Multicast)로 자동으로 다른 참여자들을 찾아 연결할 수 있는 장점을 제공한다. 다만 참여자가 추가되면 될수록 패킷 수가 크게 증가하므로 효율적으로 확장하기 어려운, 즉 가용성에 대한 문제가 있으며, 또한 멀티캐스트가 지원되지 않은 환경에서 사용이 불가능하다는 문제점이 있다The Auto-Discovery function provides the advantage of automatically finding and connecting to other participants through multicast. However, as more participants are added, the number of packets increases significantly, so it is difficult to expand efficiently, that is, there is a problem with availability, and there is also a problem that it cannot be used in an environment where multicast is not supported.
또한 참여자들이 자동으로 데이터 배포에 참여하도록 하는 오토 디스커버리(Auto-Discovery) 기능은, 조작된 디스커버리 패킷을 이용한 Network Flooding 공격, Network Reflection Attack(반사공격) 등의 DDoS 공격이 가능하다는 문제가 있다.Additionally, the Auto-Discovery function, which allows participants to automatically participate in data distribution, has the problem that DDoS attacks such as Network Flooding attacks and Network Reflection Attacks using manipulated discovery packets are possible.
따라서 현재의 DDS 통신은, 국방, 교통, 의료, 로봇 등의 한정적이고 폐쇄적인 시스템에서만 사용되고 있을 뿐, 5G, LTE 등의 개방적이고 큰 규모를 가지는 네트워크 환경에서는 적용하기가 어렵다는 문제가 있다.Therefore, the current DDS communication is only used in limited and closed systems such as national defense, transportation, medicine, and robots, but there is a problem that it is difficult to apply in open and large-scale network environments such as 5G and LTE.
본 발명은 상술한 문제점을 해결하기 위한 것으로, 본 발명의 목적은, 5G, LTE 등의 대규모 네트워크 환경에서 DDS 통신을 제공하기 위한, DDS 통신 방법, 장치 및 시스템을 제공하기 위함이다.The present invention is intended to solve the above-mentioned problems, and the purpose of the present invention is to provide a DDS communication method, device, and system for providing DDS communication in a large-scale network environment such as 5G and LTE.
본 발명에 따른 DDS 통신 방법은, 게이트웨이에 접속하여 DDS 통신에 참여하려는 복수의 노드로부터, 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신하는 단계, 상기 복수의 노드 중 동일한 도메인 ID를 가지는 노드들에, 상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 단계, 상기 게이트웨이가, 상기 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하는 단계, 및, 상기 게이트웨이가, 상기 도메인 ID를 가지는 특정 노드로부터 상기 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 상기 인증 정보를 이용하여 인증을 수행하고, 상기 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는 단계를 포함한다.The DDS communication method according to the present invention includes receiving node information including identification information and domain ID from a plurality of nodes that want to connect to a gateway and participate in DDS communication, and nodes having the same domain ID among the plurality of nodes. transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID; configuring, by the gateway, a network for nodes having the domain ID to exchange packets; and, The gateway receives authentication information generated using the group key from a specific node having the domain ID, performs authentication using the authentication information, and, if the authentication is successful, sends the packet received from the specific node to the It includes transmitting to another node having a domain ID.
이 경우 상기 식별 정보는, 상기 참여자 단말의 식별 정보를 포함하고, 상기 참여자 단말의 식별 정보는, 단말기 고유 식별 번호(IMEI)일 수 있다.In this case, the identification information includes identification information of the participant terminal, and the identification information of the participant terminal may be a terminal unique identification number (IMEI).
한편 상기 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신하는 단계는, 상기 식별 정보 및 상기 참여자 단말에서 생성되는 노드들에 순차적으로 부여되는 인스턴스 ID를 이용하여 상기 노드 정보를 전송한 노드를 인증하는 단계를 포함할 수 있다.Meanwhile, the step of receiving node information including the identification information and domain ID includes authenticating the node that transmitted the node information using the identification information and instance IDs sequentially assigned to nodes generated in the participant terminal. May include steps.
한편 상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 단계는, 상기 도메인 ID와 상응하는 도메인에 새로운 노드가 참여하면, 상기 그룹 키를 갱신하고 상기 갱신된 그룹 키를 상기 도메인 ID를 가지는 노드들에 전송하는 단계를 포함할 수 있다.Meanwhile, the step of transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID includes updating the group key when a new node participates in the domain corresponding to the domain ID, and updating the group key with the updated group key. It may include transmitting to nodes having the domain ID.
한편 상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 단계는, 상기 도메인 ID와 상응하는 도메인에 새로운 노드가 참여하면, 상기 새로운 노드의 노드 정보를 상기 도메인 ID를 가지는 노드들에 전송하는 단계를 포함할 수 있다.Meanwhile, in the step of transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID, when a new node joins the domain corresponding to the domain ID, the node information of the new node is transmitted to the domain ID. Branching may include transmitting to nodes.
한편 상기 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하는 단계는, 상기 동일한 도메인 ID를 가지는 노드들만 패킷을 교환하고 다른 도메인 ID를 가지는 노드들과의 패킷 교환이 차단되도록 상기 네트워크를 구성하는 단계를 포함할 수 있다.Meanwhile, the step of configuring a network for nodes having the same domain ID to exchange packets involves configuring the network so that only nodes having the same domain ID exchange packets and packet exchange with nodes having different domain IDs is blocked. It may include steps.
이 경우 상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 단계는, 인증에 성공한 노드에 해당 노드가 접속할 인터페이스 정보를 전송하는 단계를 포함하고, 상기 동일한 도메인 ID를 가지는 노드들만 패킷을 교환하고 다른 도메인 ID를 가지는 노드들과의 패킷 교환이 차단되도록 상기 네트워크를 구성하는 단계는, 상기 동일한 도메인 ID를 가지는 노드들이 접속할 인터페이스들을 가상으로 연결하는 터널을 생성하는 단계를 포함할 수 있다.In this case, the step of transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID includes transmitting interface information for the node to connect to the node that has successfully authenticated, and transmitting the same domain ID to the node. The step of configuring the network so that only nodes with the same domain ID exchange packets and packet exchange with nodes with different domain IDs is blocked includes the step of creating a tunnel that virtually connects interfaces to which nodes with the same domain ID will connect. It can be included.
한편 상기 인증 정보는, 상기 특정 노드가 상기 게이트웨이에 접속할 때 상기 특정 노드로부터 수신하는 인증 코드를 포함할 수 있다.Meanwhile, the authentication information may include an authentication code received from the specific node when the specific node connects to the gateway.
이 경우 상기 인증 코드는, 상기 특정 노드의 노드 정보 및 상기 특정 노드가 보유하는 그룹 키를 이용하여 생성되고, 상기 인증을 수행하는 단계는, 상기 게이트웨이가 보유한, 상기 도메인 ID에 상응하는 그룹 키 및 상기 특정 노드의 노드 정보를 이용하여, 상기 특정 노드로부터 수신된 상기 인증 코드를 인증하는 단계를 포함할 수 있다.In this case, the authentication code is generated using node information of the specific node and a group key held by the specific node, and the step of performing the authentication includes a group key corresponding to the domain ID held by the gateway and It may include authenticating the authentication code received from the specific node using node information of the specific node.
한편 상기 인증 정보는, 상기 특정 노드가 상기 도메인 ID를 가지는 노드들에 패킷을 전송할 때, 상기 패킷과 함께 상기 특정 노드로부터 수신되는 인증 토큰을 포함할 수 있다.Meanwhile, the authentication information may include an authentication token received from the specific node along with the packet when the specific node transmits a packet to nodes having the domain ID.
이 경우 상기 인증 토큰은, 상기 특정 노드의 노드 정보 및 상기 특정 노드가 보유하는 그룹 키를 이용하여 생성되고, 상기 인증을 수행하는 단계는, 상기 게이트웨이가 보유한, 상기 도메인 ID에 상응하는 그룹 키 및 상기 특정 노드의 노드 정보를 이용하여, 상기 특정 노드로부터 수신된 상기 인증 토큰을 인증하는 단계를 포함할 수 있다.In this case, the authentication token is generated using node information of the specific node and a group key held by the specific node, and the step of performing the authentication includes a group key corresponding to the domain ID held by the gateway and It may include authenticating the authentication token received from the specific node using node information of the specific node.
이 경우 상기 인증 토큰은, 타임 스탬프 및 시퀀스 넘버 중 적어도 하나를 더 포함할 수 있다.In this case, the authentication token may further include at least one of a time stamp and a sequence number.
한편 상기 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는 단계는, 상기 도메인 ID를 가지는 노드들에 상기 게이트웨이의 공개 키를 전송하는 단계, 및, 상기 인증 토큰에 대한 인증이 성공하면, 상기 인증 토큰을 상기 게이트웨이의 개인 키로 암호화한 이중 암호화 토큰을 생성하는 단계를 포함할 수 있다.Meanwhile, if the authentication is successful, transmitting the packet received from the specific node to another node having the domain ID includes transmitting the public key of the gateway to the nodes having the domain ID, and, the authentication token. If authentication is successful, it may include generating a double encryption token by encrypting the authentication token with the private key of the gateway.
이 경우 상기 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는 단계는, 상기 인증 토큰과 함께 수신된 상기 패킷에 상기 이중 암호화 토큰을 삽입하여 상기 도메인 ID를 가지는 다른 노드에 전송하는 단계를 포함할 수 있다.In this case, if the authentication is successful, the step of transmitting the packet received from the specific node to another node having the domain ID includes inserting the double encryption token into the packet received with the authentication token and having the domain ID. It may include transmitting to another node.
한편 DDS 통신 시스템은, 게이트웨이에 접속하여 DDS 통신에 참여하려는 복수의 노드로부터 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신하고, 상기 복수의 노드 중 동일한 도메인 ID를 가지는 노드들에, 상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 제어 서버, 및, 상기 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하고, 상기 도메인 ID를 가지는 특정 노드로부터 상기 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 상기 인증 정보를 이용하여 인증을 수행하고, 상기 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는 게이트웨이를 포함한다.Meanwhile, the DDS communication system receives node information including identification information and domain ID from a plurality of nodes that want to connect to the gateway and participate in DDS communication, and sends the domain ID to nodes having the same domain ID among the plurality of nodes. A control server that transmits node information of nodes having and a group key corresponding to the domain ID, and nodes having the domain ID configure a network for exchanging packets, and the group is transferred from a specific node having the domain ID. It includes a gateway that receives authentication information generated using a key, performs authentication using the authentication information, and, when the authentication is successful, transmits a packet received from the specific node to another node having the domain ID. .
이 경우 상기 식별 정보는, 상기 참여자 단말의 식별 정보를 포함하고, 상기 참여자 단말의 식별 정보는, 단말기 고유 식별 번호(IMEI)일 수 있다.In this case, the identification information includes identification information of the participant terminal, and the identification information of the participant terminal may be a terminal unique identification number (IMEI).
한편 상기 제어 서버는, 상기 식별 정보 및 상기 참여자 단말에서 생성되는 노드들에 순차적으로 부여되는 인스턴스 ID를 이용하여 상기 노드 정보를 전송한 노드를 인증할 수 있다.Meanwhile, the control server can authenticate the node that transmitted the node information using the identification information and an instance ID sequentially assigned to nodes generated in the participant terminal.
한편 상기 제어 서버는, 상기 도메인 ID와 상응하는 도메인에 새로운 노드가 참여하면, 상기 그룹 키를 갱신하고 상기 갱신된 그룹 키를 상기 도메인 ID를 가지는 노드들에 전송할 수 있다.Meanwhile, when a new node joins the domain corresponding to the domain ID, the control server may update the group key and transmit the updated group key to nodes having the domain ID.
한편 상기 제어 서버는, 상기 도메인 ID와 상응하는 도메인에 새로운 노드가 참여하면, 상기 새로운 노드의 노드 정보를 상기 도메인 ID를 가지는 노드들에 전송할 수 있다.Meanwhile, when a new node joins the domain corresponding to the domain ID, the control server may transmit node information of the new node to nodes having the domain ID.
한편 DDS 통신 장치는, 복수의 노드가 접속 가능한 복수의 인터페이스를 제공하는 게이트웨이, 상기 게이트웨이에 접속하여 DDS 통신에 참여하려는 복수의 노드로부터, 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신하는 통신부, 및, 상기 복수의 노드 중 동일한 도메인 ID를 가지는 노드들에, 상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 상기 통신부를 통하여 전송하는 제어부를 포함하고, 상기 게이트웨이는, 상기 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하고, 상기 도메인 ID를 가지는 특정 노드로부터 상기 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 상기 인증 정보를 이용하여 인증을 수행하고, 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송할 수 있다.Meanwhile, the DDS communication device includes a gateway that provides a plurality of interfaces to which a plurality of nodes can connect, a communication unit that receives node information including identification information and domain ID from a plurality of nodes that want to connect to the gateway and participate in DDS communication; and a control unit that transmits node information of nodes having the domain ID and a group key corresponding to the domain ID to nodes having the same domain ID among the plurality of nodes through the communication unit, and the gateway is, Nodes having the domain ID configure a network for exchanging packets, receive authentication information generated using the group key from a specific node having the domain ID, and perform authentication using the authentication information, If authentication is successful, the packet received from the specific node can be transmitted to another node with the domain ID.
본 발명에 따르면, DDS 통신 시스템에서 생성하는 정책을 기반으로 동일 도메인에 참여한 노드들 간의 데이터 교환을 지원함으로써, 오토 디스커버리(Auto-Discovery) 기능을 이용하지 않고도 그리고 멀티캐스트가 지원되지 않은 환경에서도 DDS 통신을 가능하게 할 수 있으며, 참여자 단말이나 노드의 수가 증가하더라도 패킷의 수가 기하급수적으로 증가하는 것을 방지할 수 있다. 이에 따라 종래의 DDS 통신 방식에 비해 가용성 및 확장성에서 확연한 장점을 나타내며, 특히 5G, LTE 등의 개방적이고 큰 규모를 가지는 네트워크 환경에서도 DDS 통신을 가능하게 하는 장점이 있다. According to the present invention, by supporting data exchange between nodes participating in the same domain based on the policy created in the DDS communication system, DDS can be implemented without using the Auto-Discovery function and even in an environment where multicast is not supported. It can enable communication and prevent the number of packets from increasing exponentially even if the number of participant terminals or nodes increases. Accordingly, it has clear advantages in availability and scalability compared to conventional DDS communication methods, and has the advantage of enabling DDS communication even in open and large-scale network environments such as 5G and LTE.
도 1은 본 발명에 따른 DDS 통신 시스템을 설명하기 위한 블록도이다.
도 2는 본 발명에 따른, DDS 통신 시스템의 DDS 통신 방법을 설명하기 위한 순서도이다.
도 3은 DDS 통신 시스템 및 노드들의 전체적인 동작을 설명하기 위한 순서도이다. 도 2 및 도 3을 함께 참고하여 설명한다.
도 4는 본 발명에 따른, 노드를 인증하는 방법을 설명하기 위한 도면이다.
도 5는 게이트웨이가 네트워크를 구성하는 방법을 설명하기 위한 도면이다.
도 6은 본 발명에 따른, 노드가 게이트웨이에 최초에 접속할 때 수행되는 1차 인증 과정을 설명하기 위한 도면이다.
도 7은 본 발명에 따른, 노드가 다른 노드에 패킷을 전송할 때 수행되는 2차 인증 과정을 설명하기 위한 도면이다.
도 8은 본 발명의 또 다른 실시 예에 따른 DDS 통신 장치를 설명하기 위한 도면이다.Figure 1 is a block diagram for explaining a DDS communication system according to the present invention.
Figure 2 is a flowchart for explaining the DDS communication method of the DDS communication system according to the present invention.
Figure 3 is a flowchart for explaining the overall operation of the DDS communication system and nodes. The description will be made with reference to FIGS. 2 and 3 together.
Figure 4 is a diagram for explaining a method for authenticating a node according to the present invention.
Figure 5 is a diagram to explain how a gateway configures a network.
Figure 6 is a diagram illustrating the primary authentication process performed when a node first connects to a gateway according to the present invention.
Figure 7 is a diagram illustrating a secondary authentication process performed when a node transmits a packet to another node according to the present invention.
Figure 8 is a diagram for explaining a DDS communication device according to another embodiment of the present invention.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Hereinafter, embodiments disclosed in the present specification will be described in detail with reference to the attached drawings. However, identical or similar components will be assigned the same reference numbers regardless of reference numerals, and duplicate descriptions thereof will be omitted. The suffixes “module” and “part” for components used in the following description are given or used interchangeably only for the ease of preparing the specification, and do not have distinct meanings or roles in themselves. Additionally, in describing the embodiments disclosed in this specification, if it is determined that detailed descriptions of related known technologies may obscure the gist of the embodiments disclosed in this specification, the detailed descriptions will be omitted. In addition, the attached drawings are only for easy understanding of the embodiments disclosed in this specification, and the technical idea disclosed in this specification is not limited by the attached drawings, and all changes included in the spirit and technical scope of the present invention are not limited. , should be understood to include equivalents or substitutes.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms containing ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is said to be "connected" or "connected" to another component, it is understood that it may be directly connected to or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as “comprise” or “have” are intended to designate the presence of features, numbers, steps, operations, components, parts, or combinations thereof described in the specification, but are not intended to indicate the presence of one or more other features. It should be understood that this does not exclude in advance the possibility of the existence or addition of elements, numbers, steps, operations, components, parts, or combinations thereof.
본 발명을 구현함에 있어서 설명의 편의를 위하여 구성요소를 세분화하여 설명할 수 있으나, 이들 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다. In implementing the present invention, the components may be subdivided for convenience of explanation, but these components may be implemented in one device or module, or one component may be divided into multiple devices or modules. It can also be implemented.
DDS통신은 복잡한 네트워크를 단순화한 네트워크 미들웨어로서, 참여자들 상호간의 응답을 다루기 위해 설계된다. 그리고 본 발명에서는, 단순화한 DDS 미들웨어 설계를 소프트웨어 정의 경계 기반으로 확장 설계하여, 5G 또는 LTE를 포함하는 대규모 네트워크 환경에서 DDS 통신을 지원하는 DDS 통신 시스템을 제공한다.DDS communication is network middleware that simplifies complex networks and is designed to handle responses between participants. In addition, the present invention provides a DDS communication system that supports DDS communication in a large-scale network environment including 5G or LTE by expanding the simplified DDS middleware design based on a software-defined boundary.
도 1은 본 발명에 따른 DDS 통신 시스템을 설명하기 위한 블록도이다.Figure 1 is a block diagram for explaining a DDS communication system according to the present invention.
본 발명에 따른 DDS 통신 시스템은, 게이트웨이(100) 및 제어 서버(200)를 포함하고, 다수의 노드 간 통신을 지원할 수 있다.The DDS communication system according to the present invention includes a
게이트웨이(100)는 다수의 참여자 단말(1110, 1120, 1130)과 연결되어, 참여자 단말과 데이터를 송/수신할 수 있다. 여기서 참여자 단말은 통신 사업자가 제공하는 통신 서비스(5G 또는 LTE 등의 이동 통신 서비스, 인터넷 서비스 등)에 가입된 단말(또는 서버)일 수 있다.The
다수의 참여자 단말(1110, 1120, 1130)에서는 노드가 구동될 수 있으며, 하나의 참여자 단말에서는 하나 또는 복수의 노드가 구동될 수 있다. 일 예로, 참여자 단말은 스마트폰, PC 등의 장치(하드웨어)를 의미한다면, 노드는 장치(하드웨어)에서 구동되는 운영체제, 애플리케이션, 프로세스, 프로그램 등을 의미할 수 있다. DDS 통신 시스템에서 데이터를 송신 및 수신하는 주체는 노드로써, 게이트웨이(100)는 참여자 단말에서 구동되는 노드와 데이터를 송/수신할 수 있다.Nodes may be driven in a plurality of
제어 서버(200)는 게이트웨이(100)에 연결된 다수의 노드들 및 게이트웨이(100)와 통신할 수 있다. 또한 제어 서버(200)는, 오토 디스커버리(Auto-Discovery) 없이도, 동일한 도메인에 참여하는 노드들 간의 통신을 지원하고, 보안성을 향상시키기 위한 정책을 생성할 수 있다. 이러한 정책은 DDS 통신 시스템에 연결되는 다수의 노드 및 게이트웨이(100)에 배포되고, 다수의 노드 각각은 제어 서버(200)에서 생성된 정책에 기반하여 동일한 도메인에 참여하는 다른 노드와 데이터를 송/수신 할 수 있다.The
한편 제어 서버(200)는 외부 장치와 통신하기 위한 통신부, 제어 서버의 전반적인 동작을 제어하는 제어부, 및, 제어 서버의 동작을 위한 프로그램 또는 명령어를 저장하는 메모리를 포함할 수 있다.Meanwhile, the
게이트웨이(100)는, 게이트웨이(100)에 연결된 다수의 노드들의 통신 경로를 설정할 수 있다. 구체적으로 게이트웨이(100)는, 제어 서버(200)에서 생성된 정책에 기반하여, 동일한 도메인에 속하는 노드들이 패킷을 교환하기 위한 네트워크를 구성할 수 있다. 즉 게이트웨이(100)는 게이트웨이(100)에 연결된 다수의 노드들 중 동일한 도메인에 속하는 노드들끼리 패킷을 교환할 수 있는 터널을 생성할 수 있다. 그리고 이러한 터널은, 포트간의 물리적인 연결에 의해서가 아닌, 제어 서버(200)에서 생성된 정책에 기반하여 게이트웨이(100)가 논리적으로 생성하는 것으로, 가상 터널이라 명칭될 수 있다.The
도 2는 본 발명에 따른, DDS 통신 시스템의 DDS 통신 방법을 설명하기 위한 순서도이다.Figure 2 is a flowchart for explaining the DDS communication method of the DDS communication system according to the present invention.
본 발명에 따른 DDS 통신 시스템의 DDS 통신 방법은, 게이트웨이에 접속하여 DDS 통신에 참여하려는 복수의 노드로부터, 노드의 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신하는 단계(S210), 복수의 노드 중 동일한 도메인 ID를 가지는 노드들에, 도메인 ID를 가지는 노드들의 노드 정보 및 도메인 ID에 상응하는 그룹 키를 전송하는 단계(S220), 게이트웨이가, 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하는 단계(S230), 및, 게이트웨이가, 도메인 ID를 가지는 특정 노드로부터 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 인증 정보를 이용하여 인증을 수행하고, 인증에 성공하면 특정 노드로부터 수신되는 패킷을 도메인 ID를 가지는 다른 노드에 전송하는 단계(S240)를 포함할 수 있다.The DDS communication method of the DDS communication system according to the present invention includes receiving node information including identification information and domain ID of the node from a plurality of nodes that want to connect to the gateway and participate in DDS communication (S210), a plurality of nodes A step of transmitting node information of nodes having domain IDs and a group key corresponding to the domain ID to nodes having the same domain ID (S220), where the gateway establishes a network for nodes having domain IDs to exchange packets. Configuring step (S230), and the gateway receives authentication information generated using a group key from a specific node having a domain ID, performs authentication using the authentication information, and receives the authentication information from the specific node when authentication is successful. It may include transmitting the packet to another node having the domain ID (S240).
도 3은 DDS 통신 시스템 및 노드들의 전체적인 동작을 설명하기 위한 순서도이다. 도 2 및 도 3을 함께 참고하여 설명한다.Figure 3 is a flowchart for explaining the overall operation of the DDS communication system and nodes. The description will be made with reference to FIGS. 2 and 3 together.
인증을 위해, 노드(1210)는 제어 서버(200)에 노드 정보를 전송할 수 있다(S305). 여기서 노드 정보는 참여자 단말의 식별 정보 및 참여자 단말에서 구동하는 노드의 식별 정보를 포함하는 식별 정보를 포함할 수 있다.For authentication,
구체적으로 참여자 단말의 식별 정보는, 통신 서비스를 이용하는 참여자 단말에 고유하게 부여되는 것으로, 예를 들어 참여자 단말의 식별 정보는 참여자 단말의 범용 고유 식별자(universally unique identifier , UUID)일 수 있다. 한편 앞서 설명한 바와 같이, DDS 통신 시스템은 5G 또는 LTE를 포함하는 대규모 네트워크 환경에서 DDS 통신을 지원할 수 있으며, 이 경우 참여자 단말의 범용 고유 식별자(universally unique identifier , UUID)에는 단말기 고유 식별 번호(International Mobile Equipment Identity , IMEI)가 사용될 수 있다.Specifically, the identification information of the participant terminal is uniquely assigned to the participant terminal using the communication service. For example, the identification information of the participant terminal may be a universally unique identifier (UUID) of the participant terminal. Meanwhile, as previously explained, the DDS communication system can support DDS communication in a large-scale network environment including 5G or LTE. In this case, the universally unique identifier (UUID) of the participant terminal includes the terminal unique identification number (International Mobile Equipment Identity (IMEI) may be used.
한편 노드의 식별 정보는, 호스트 ID 및 앱 ID 중 적어도 하나를 포함할 수 있다. 여기서 호스트 ID는 노드가 구동 중인 참여자 단말에 고유하게 부여되는 것으로, 예를 들어 MAC주소, IPv4주소, 범용 고유 식별자(universally unique identifier , UUID) 등을 포함할 수 있다. 또한 앱 ID는, 참여자 단말에서 구동하는 노드를 식별하기 위한 것으로, 예를 들어 운영 체제(리눅스, 유닉스, 윈도우 등)에서 관리하는 프로세스 ID인 앱 ID(App ID)일 수 있다.Meanwhile, the identification information of the node may include at least one of a host ID and an app ID. Here, the host ID is uniquely assigned to the participant terminal on which the node is running, and may include, for example, a MAC address, IPv4 address, universally unique identifier (UUID), etc. Additionally, the App ID is used to identify a node running on a participant terminal, and may be, for example, an App ID, which is a process ID managed by an operating system (Linux, Unix, Windows, etc.).
한편 노드 정보는 도메인 ID를 더 포함할 수 있다. 여기서 도메인 ID는 노드가 참여할 도메인의 식별 정보로써, 제어 서버(200)는 도메인 ID를 기준으로 노드 간 통신을 지원하게 된다.Meanwhile, node information may further include a domain ID. Here, the domain ID is identification information of the domain in which the node will participate, and the
한편 노드 정보는 인스턴스 ID를 더 포함할 수 있다. 여기서 인스턴스 ID(Instance ID)는 참여자 단말에서 생성되는(구동을 시작하는) 노드들에 순차적으로 부여되는 것이다. 예를 들어 참여자 단말은 처음 노드를 생성하는 경우 해당 노드에 0x01의 인스턴스 ID를 부여하고, 두번째 노드를 생성하는 경우 해당 노드에 0x02의 인스턴스 ID를 부여할 수 있다.Meanwhile, node information may further include an instance ID. Here, the instance ID is sequentially assigned to nodes that are created (starting operation) in the participant terminal. For example, when a participant terminal creates a node for the first time, it may give that node an instance ID of 0x01, and when it creates a second node, it may grant an instance ID of 0x02 to that node.
다음으로, 제어 서버(200)는 게이트웨이(100)에 접속하여 DDS 통신에 참여하려는 복수의 노드로부터, 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신할 수 있다(S210). Next, the
구체적으로, 제어 서버(200)는 노드 및 참여자 단말을 신뢰하지 않으므로 엄격한 인증을 수행한다. 따라서 제어 서버(200)는, IP나 포트(Port)를 이용하는 대신, 식별 정보를 이용하여 인증을 수행할 수 있다.Specifically, the
이 경우 제어부(120)는 참여자 단말의 식별 정보 및 노드의 식별 정보를 이용하여 노드 정보를 전송한 노드를 인증할 수 있다(S310). 이와 관련해서는 도 4를 참고하여 설명한다.In this case, the control unit 120 can authenticate the node that transmitted the node information using the identification information of the participant terminal and the identification information of the node (S310). This will be explained with reference to Figure 4.
도 4는 본 발명에 따른, 노드를 인증하는 방법을 설명하기 위한 도면이다.Figure 4 is a diagram for explaining a method for authenticating a node according to the present invention.
제어 서버(200)는 참여자 단말의 식별 정보를 제어 서버(200)에 미리 등록된 참여자 단말의 식별 정보와 비교하고, 일치하는 경우 참여자 단말의 식별 정보가 인증된 것으로 결정할 수 있다(S410). 또한 제어 서버(200)는 수신된 노드의 식별 정보를 제어 서버(200)에 미리 등록된 복수의 노드들의 식별 정보와 비교하고, 일치하는 경우 노드의 식별 정보가 인증된 것으로 결정할 수 있다(S420). 그리고 노드의 식별 정보와 참여자 단말의 식별 정보가 인증되면, 제어 서버(200)는 해당 노드 정보를 전송한 노드에 대한 인증이 성공한 것으로 결정할 수 있다.The
또한, 노드 정보에 인스턴스 ID가 더 포함되는 경우, 제어 서버(200)는 참여자 단말의 식별 정보, 노드의 식별 정보 및 참여자 단말에서 생성되는 노드들에 순차적으로 부여되는 인스턴스 ID를 이용하여 노드 정보를 전송한 노드를 인증할 수 있다(S430). In addition, when the node information further includes an instance ID, the
구체적으로 제어 서버(200)는, 인스턴스 ID의 증감을 확인하여 노드를 인증할 수 있다. 더욱 구체적으로, 제어 서버(200)는 하나의 참여자 단말로부터 수신되는 노드들의 노드 정보(앱 ID 및 인스턴스 ID)를 메모리에 저장하고, 먼저 수신된 노드 정보 내 인스턴스 ID 및 현재 수신된 노드 정보 내 인스턴스 ID를 이용하여 해당 노드를 인증할 수 있다. Specifically, the
예를 들어 도 4를 참고하면, 제어 서버(200)는, 특정 참여자 단말(참여자 단말 #1)에서 첫번째로 구동된 노드(노드 #1)로부터 1이라는 인스턴스 ID를 포함하는 제1 노드 정보를 수신하고, 수신된 제1 노드 정보를 메모리에 저장할 수 있다. 다음으로 제어 서버(200)는 동일한 참여자 단말(참여자 단말 #1)에서 새롭게 구동된 노드(노드 #2)로부터 2라는 인스턴스 ID를 포함하는 제2 노드 정보를 수신할 수 있다. 또한 인스턴스 ID는 1씩 증가하도록 미리 설정되어 있으며, 제어 서버(200)는 미리 설정된 증감량(1씩 증가)를 알고 있다. 이 경우 제어 서버(200)는 제1 노드 정보가 1이라는 인스턴스 ID를 포함하고, 제2 노드 정보가 2라는 인스턴스 ID를 포함하며, 인스턴스 ID가 1이 증가했다는 것을 이용하여, 새롭게 구동된 노드(노드 #2)에 대한 인증이 성공한 것으로 결정할 수 있다.For example, referring to FIG. 4, the
반면에 미리 설정된 증감량(예를 들어 1씩 증가)과 상이한 노드 정보가 수신되는 경우, 제어 서버(200)는 해당 노드에 대한 인증이 실패한 것으로 결정할 수 있다.On the other hand, if node information that is different from the preset increase/decrease amount (for example, increases by 1) is received, the
한편 특정 참여자 단말(참여자 단말 #1)의 식별 정보나 호스트 ID를 탈취한 해커(해커 #1)가, 탈취한 정보를 포함하는 제3 노드 정보를 제어 서버(200)에 전송한다고 가정한다. 다만 해커(해커 #1)는 특정 참여자 단말(참여자 단말 #1)에서의 인스턴스 ID는 알 수 없기 때문에 정확한 인스턴스 ID를 노드 정보에 포함시키지 못하며, 제어 서버(200)는 제3 노드 정보를 이용하여 해커에 대한 인증이 실패한 것으로 결정할 수 있다. 또한 제어 서버(200) 제3 노드 정보를 블랙리스트로써 메모리에 저장할 수 있다.Meanwhile, assume that a hacker (hacker #1) who has stolen the identification information or host ID of a specific participant terminal (participant terminal #1) transmits third node information including the stolen information to the
도 2 및 도 3으로 다시 돌아가서, 노드 정보를 전송한 노드에 대한 인증이 성공하면, 제어 서버(200)는 해당 노드가 참여하는 도메인의 그룹 키를 갱신할 수 있다(S310). 구체적으로 제어 서버(200)는, 노드(1210)가 전송한 노드 정보에 특정 도메인 ID가 포함되면, 특정 도메인 ID와 상응하는 도메인에 새로운 노드(1210)가 참여한 것으로 판단하고, 특정 도메인 ID에 상응하는 그룹 키를 갱신할 수 있다. 즉 도메인에서 사용되는 그룹 키는 해당 도메인에 노드가 새롭게 참여할 때마다 갱신될 수 있다.Returning to FIGS. 2 and 3, if authentication of the node transmitting node information is successful, the
다만 이에 한정되지 않으며, 도메인 ID에 상응하는 그룹키는 주기적으로 갱신되는 방식으로 구현될 수도 있다. 또한 노드(1210)가 특정 도메인에 처음으로 참여하는 경우, 제어 서버(200)는 해당 도메인 ID에 상응하는 그룹 키를 새롭게 생성할 수 있다.However, it is not limited to this, and the group key corresponding to the domain ID may be implemented in such a way that it is periodically updated. Additionally, when the
한편 노드에 대한 인증이 성공하면, 제어 서버(200)는 인증에 성공한 노드(1210)에게 제1 정책 정보를 전송할 수 있다(S315). 여기서 제1 정책 정보는 해당 노드가 접속 가능한, 게이트웨이의 인터페이스 정보를 포함할 수 있다. 또한 인터페이스 정보는 게이트웨이의 IP 및 포트를 포함할 수 있다.Meanwhile, if authentication of the node is successful, the
한편 제어 서버(200)는 게이트웨이(100)에 제2 정책 정보를 전송할 수 있다(S320). 여기서 제2 정책 정보는, 갱신된(또는 새롭게 생성된) 그룹 키와, 인증에 성공한 노드(1210)의 노드 정보를 포함할 수 있다. 제어 서버(200)가 게이트웨이(100)에 전송하는 노드 정보는, 인증에 성공한 노드의 참여자 단말의 식별 정보, 노드의 식별 정보, 도메인 ID를 포함할 수 있으며, 추가적으로 인증에 성공한 노드의 IP를 더 포함할 수 있다.Meanwhile, the
한편 제어 서버(200)는 인증에 성공한 노드(1210)에게 제3 정책 정보를 전송할 수 있다. 구체적으로 제어 서버(200)는, 게이트웨이에 접속하여 DDS 통신에 참여하려는 복수의 노드 중 동일한 도메인 ID를 가지는 노드들에, 동일한 도메인 ID를 가지는 노드들의 노드 정보 및 동일한 도메인 ID에 상응하는 그룹 키를 전송할 수 있다(S220, S325, S330). 예를 들어 제1 노드 내지 제100 노드가 존재하며, 제1 노드 내지 제30 노드가 제1 도메인 ID를 가지고 제1 도메인에 참여하려 하는 경우, 제어 서버(200)는 제1 노드에 제2 내지 제29 노드의 노드 정보 및 제1 도메인에 상응하는 그룹 키를 전송하고, 제30 노드에 제1 내지 제29 노드의 노드 정보 및 제1 도메인에 상응하는 그룹 키를 전송할 수 있다.Meanwhile, the
한편 제어 서버(200)가 전송하는 다른 노드의 노드 정보는, 인증에 성공한 노드의 참여자 단말의 식별 정보, 노드의 식별 정보, 도메인 ID를 포함할 수 있으며, 추가적으로 인증에 성공한 노드의 IP를 더 포함할 수 있다.Meanwhile, the node information of other nodes transmitted by the
한편 제어 서버(200)는 새롭게 갱신되는 정보만을 게이트웨이(100) 또는 노드에 전송할 수도 있다. 예를 들어 특정 도메인에 새로운 노드가 참여하는 경우, 제어 서버(200)는 새로운 노드의 노드 정보를, 새로운 노드와 동일한 도메인 ID를 가지는 노드들에 전송할 수 있다. 또한 앞서 설명한 바와 같이, 그룹 키는 새로운 노드가 도메인에 참여할 때 갱신될 수 있으며, 제어 서버(200)는 도메인에 새로운 노드가 참여한 경우에 갱신된 그룹 키를 해당 도메인 ID를 가지는 노드들에 전송할 수 있다. 예를 들어 제1 노드 내지 제29 노드가 속해있는 제1 도메인에 제30 노드가 새롭게 참여하는 경우, 제어 서버(200)는 제1 도메인의 그룹 키를 갱신하고, 게이트웨이(100) 및 제1 노드 내지 제29 노드에 제30 노드의 노드 정보 및 갱신된 그룹 키를 전송할 수 있다. 다만 새롭게 참여한 제30 노드에는, 제1 내지 29 노드의 노드 정보 및 갱신된 그룹 키가 전송되어야 한다.Meanwhile, the
한편 게이트웨이(100)에 연결되어 통신에 참여하는 복수의 노드 및 제어 서버(200)는 앞서 설명한 동작을 수행할 수 있다. 이에 따라 제어 서버(200)는 복수의 노드로부터 노드 정보를 수신하여 노드에 대한 인증을 수행하고, 인증에 성공한 노드에게 해당 노드가 접속 가능한 인터페이스 정보 및 생성된(갱신된) 그룹 키를 전송하며, 게이트웨이(100)에 인증에 성공한 노드의 노드 정보 및 생성된(갱신된) 그룹 키를 전송할 수 있다. 이에 따라 게이트웨이(100)에는 게이트웨이(100)에 연결되어 통신에 참여하는 복수의 노드의 노드 정보 및 도메인 별 그룹 키가 저장될 수 있으며, 새로운 노드가 참여할 때마다 저장된 정보가 갱신될 수 있다. 또한 인증에 성공한 노드들에는, 동일한 도메인 ID를 가지는 다른 노드들의 노드 정보 및 도메인 ID에 상응하는 그룹 키가 저장될 수 있으며, 새로운 노드가 참여할 때마다 저장된 정보가 갱신될 수 있다.Meanwhile, a plurality of nodes and
한편 인증에 성공한 노드의 노드 정보 및 그룹 키가 수신되면, 게이트웨이(100)는 동일한 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성할 수 있다(S230). 이와 관련해서는 도 5를 참고하여 설명한다.Meanwhile, when the node information and group key of the successfully authenticated node are received, the
도 5는 게이트웨이가 네트워크를 구성하는 방법을 설명하기 위한 도면이다.Figure 5 is a diagram to explain how a gateway configures a network.
게이트웨이(100)는 도메인 ID를 기준으로 네트워크 정책을 갱신할 수 있다. 네트워크 패킷 정책은 라우팅 및 스위칭 중 적어도 하나에 대한 정책과 방화벽 정책을 포함할 수 있다. 또한 네트워크 정책을 갱신한다는 것은, 새롭게 참여한 노드의 노드 정보에 기반하여, 동일한 도메인 ID를 가지는 노드들만 패킷을 교환하고 다른 도메인 ID를 가지는 노드들과의 패킷 교환이 차단되도록 네트워크를 구성하는 것을 의미할 수 있다.The
더욱 구체적으로 게이트웨이(100)는 5 tuple(출발지 IP, 출발지 포트, 목적지 IP, 목적지 포트, 프로토콜) 및 도메인 ID를 이용하여 네트워크 정책을 설정할 수 있다. 도 5a에서는 게이트웨이(100)의 물리적인 구성도를 도시하였으며, 게이트웨이(100)는 게이트웨이에 접속하여 DDS 통신에 참여하려는 복수의 노드(510, 520, 530, 540)가 각각 접속할 수 있는 복수의 인터페이스(111, 112, 113, 114)를 포함할 수 있다. 이 경우 게이트웨이(100)는, 도 5b에서 도시한 바와 같이, 동일한 도메인(560)에 참여한 노드들(510, 520, 540)(즉, 동일한 도메인 ID를 가지는 노드들)이 패킷을 교환하기 위한 네트워크를 구성할 수 있다. 여기서 구성되는 네트워크는 가상 네트워크로써, 네트워크는 IPSec VPN, SSL VPN, Open vSwitch등의 가상 네트워크를 생성할 수 있는 표준 기술이 사용될 수 있다.More specifically, the
즉 게이트웨이(100)는, 동일한 도메인 ID를 가지는 노드들(510, 520, 540)에 전송된 인터페이스 정보에 기초하여, 동일한 도메인 ID를 가지는 노드들(510, 520, 540)이 접속한 인터페이스들(111, 112, 114)을 가상으로 연결하는 터널을 생성할 수 있다. 이와 같은 터널은 동일한 도메인 ID를 가지는 노드들(510, 520, 540)이 접속한 인터페이스들(111, 112, 114) 간의 통신을 지원하며, 다른 도메인 ID를 가지는 노드가 접속한 인터페이스(113)와의 통신을 차단한다. 즉 도메인 ID를 기반으로 동일한 도메인 ID를 가지는 노드들이 가상 터널링으로 맺어지기 때문에, 동일한 도메인 ID를 가지는 노드들이 동일한 네트워크로 구성됨으로써 효율적인 DDS 통신이 가능하다.That is, the
다시 도 2 및 도 3으로 돌아가서, 게이트웨이(100)는, 동일한 도메인 ID를 가지는 특정 노드로부터 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 인증 정보를 이용하여 인증을 수행하고, 인증에 성공하면 특정 노드로부터 수신되는 패킷을 동일한 도메인 ID를 가지는 다른 노드에 전송할 수 있다(S240).Returning to FIGS. 2 and 3, the
S240에서 수행되는 인증은, 노드가 게이트웨이에 최초에 접속할 때 수행되는 1차 인증 및 노드가 게이트웨이를 통하여 다른 노드에 패킷을 전송할 때 수행되는 2차 인증을 포함할 수 있다. 먼저 도 2 및 도 3과 함께 도 6을 참고하여 1차 인증 과정을 설명한다.Authentication performed in S240 may include primary authentication performed when the node first connects to the gateway and secondary authentication performed when the node transmits a packet to another node through the gateway. First, the first authentication process will be described with reference to FIG. 6 along with FIGS. 2 and 3.
도 6은 본 발명에 따른, 노드가 게이트웨이에 최초에 접속할 때 수행되는 1차 인증 과정을 설명하기 위한 도면이다. Figure 6 is a diagram illustrating the primary authentication process performed when a node first connects to a gateway according to the present invention.
현재 게이트웨이(100)에는, 제1 노드(510)의 노드 정보, 제1 노드가 속하는 도메인의 그룹 키가 전송되어 있는 상태이다(S610). 또한 게이트웨이(100)에는, 제1 노드와 동일한 도메인에 참여한 노드들의 노드 정보가 전송되어 있는 상태이다.Currently, the node information of the
또한 제1 노드(510)에는, 제1 노드(510)가 접속 가능한 게이트웨이의 인터페이스 정보, 제1 노드(510)와 동일한 도메인 ID를 가지는 다른 노드의 노드 정보, 동일한 도메인 ID에 대응하는 그룹 키(제1 노드가 속하는 도메인의 그룹 키)가 전송되어 있는 상태이다(S620).In addition, the
한편 제1 노드(510)는 게이트웨이(100)에 인증 코드를 전송할 수 있다(S335, S630). 구체적으로 제1 노드(510)는 제1 노드의 노드 정보 및 제1 노드가 보유하는 그룹 키(제1 노드가 속하는 도메인의 그룹 키)를 이용하여 인증 코드를 생성할 수 있다. 예를 들어 인증 코드는, 호스트 ID, 앱 ID, 도메인 ID 및 그룹 키를 이용하여 생성될 수 있다. 이 경우 제1 노드(510)는 제어 서버(200)로부터 수신한 인터페이스 정보(IP 및 포트)를 이용하여 해당 인터페이스에 접속하고, 접속한 인터페이스를 통하여 게이트웨이에 인증 코드를 전송할 수 있다.Meanwhile, the
여기서 인증 코드는 제1 노드(510)의 노드 정보 및 제1 노드가 보유하는 그룹 키를 조합하여 생성되는 메시지 인증 코드(MAC : Message Authentication Code)로써, 예를 들어 HMAC(Hashed MAC)일 수 있다. 이 경우 제1 노드(510)는 제1 노드(510)의 노드 정보를 제1 노드가 보유하는 그룹 키로 암호화 하여 인증 코드를 생성할 수 있다.Here, the authentication code is a message authentication code (MAC) generated by combining node information of the
또한 제1 노드(510)는 노드 정보 및 그룹 키와 함께, 현재 시간을 나타내는 타임 스탬프를 추가적으로 이용하여 인증 코드를 생성할 수 있다. 타임 스탬프는 리플레이 어택(Replay Attack)을 방지하는데 사용될 수 있다.Additionally, the
한편 게이트웨이(100)는 제1 노드(510)로부터 인증 코드를 수신할 수 있다. 현재 1차 인증 과정을 설명하고 있는 중으로, 게이트웨이(100)는 제1 노드(510)가 게이트웨이(100)에 접속할 때 제1 노드(510)로부터 인증 코드를 수신할 수 있다.Meanwhile, the
또한 게이트웨이(100)는 제1 노드(510)로부터 수신한 인증 정보(인증 코드)를 이용하여 제1 노드(510)에 대한 인증을 수행할 수 있다(S340, S640). 구체적으로 게이트웨이(100)는, 게이트웨이가 보유한, 도메인 ID(제1 노드가 속하는 도메인의 도메인 ID)에 상응하는 그룹키 및 제1 노드의 노드 정보를 이용하여, 제1 노드(510)로부터 수신된 인증 코드를 인증할 수 있다.Additionally, the
구체적으로 게이트웨이(100)는, 특정 도메인 ID(제1 노드가 속하는 도메인의 도메인 ID)을 가지는 노드들의 노드 정보를 저장할 수 있다. 그리고 게이트웨이(100)는, 제1 노드(510)로부터 수신된 인증 코드를 게이트웨이가 보유한 그룹 키(제1 노드가 속하는 도메인의 그룹 키)를 이용하여 복호화하여 제1 노드(510)의 노드 정보를 추출할 수 있다. 또한 게이트웨이(100)는 추출된 노드 정보를 게이트웨이가 보유한 제1 노드의 노드 정보와 비교하고, 일치하는 경우 제1 노드(510)에 대한 인증이 성공한 것으로 결정할 수 있다.Specifically, the
반면에 게이트웨이가 보유한 그룹 키를 이용한 복호화가 불가능하거나, 제1 노드(510)가 전송한 노드 정보가 게이트웨이가 보유한 노드 정보와 일치하지 않거나, 인증 코드에 포함되는 타임 스탬프로부터 기 설정된 시간 이상이 경과한 경우, 게이트웨이는 제1 노드(510)에 대한 인증이 실패한 것으로 결정할 수 있다. 인증이 실패한 경우, 제1 노드(510)는 DDS 통신에 참여할 수 없다.On the other hand, decryption using the group key held by the gateway is not possible, the node information transmitted by the
한편 제1 노드(510)에 대한 인증에 성공하면, 게이트웨이(100)는 제1 노드(510)에 게이트웨이의 공개 키를 전송할 수 있다(S345, S650). 게이트웨이(100)는, 제1 노드(510) 뿐만 아니라 인증에 성공하는 다른 노드에도, 게이트웨이의 공개 키를 전송할 수 있다. Meanwhile, if authentication with the
다음은 노드가 게이트웨이를 통하여 다른 노드에 패킷을 전송할 때 수행되는 2차 인증 과정을 도 2 및 도 3과 함께 도 7을 참고하여 설명한다.Next, the secondary authentication process performed when a node transmits a packet to another node through a gateway will be described with reference to FIG. 7 along with FIGS. 2 and 3.
도 7은 본 발명에 따른, 노드가 다른 노드에 패킷을 전송할 때 수행되는 2차 인증 과정을 설명하기 위한 도면이다. Figure 7 is a diagram illustrating a secondary authentication process performed when a node transmits a packet to another node according to the present invention.
제1 노드(510)는 제1 노드의 노드 정보 및 제1 노드가 보유하는 그룹 키(제1 노드가 속하는 도메인의 그룹 키)를 이용하여 인증 토큰을 생성할 수 있다. 예를 들어 인증 토큰은, 호스트 ID, 앱 ID, 도메인 ID 및 그룹 키를 이용하여 생성될 수 있다. The
여기서 인증 토큰은 제1 노드(510)의 노드 정보 및 제1 노드가 보유하는 그룹 키를 조합하여 생성되는 메시지 인증 코드(MAC : Message Authentication Code)로써, 예를 들어 HMAC(Hashed MAC)일 수 있다. 이 경우 제1 노드(510)는 제1 노드(510)의 노드 정보를 제1 노드가 보유하는 그룹 키로 암호화 하여 인증 토큰을 생성할 수 있다.Here, the authentication token is a message authentication code (MAC) generated by combining node information of the
또한 제1 노드(510)는 노드 정보 및 그룹 키와 함께, 시퀀스 넘버(Sequence Number)를 추가적으로 이용하여 인증 토큰을 생성할 수 있다. 시퀀스 넘버는 리플레이 어택(Replay Attack)을 방지하는데 사용될 수 있다. 다만 이에 한정되지 않으며, 인증 토큰은 타임 스탬프 및 시퀀스 넘버 중 적어도 하나를 포함할 수 있다.Additionally, the
한편 제1 노드(510)는 동일한 도메인 ID를 가지는 노드들에 전송할 데이터를 포함하는 패킷을 생성할 수 있다. 또한 제1 노드(510)는 생성된 인증 토큰을, 데이터를 포함하는 패킷에 삽입하여 게이트웨이(100)에 전송할 수 있다. 즉 제1 노드(510)는 DDS 통신을 위한 패킷과 함께 인증 토큰을 전송할 수 있으며(S350, S710), 이 경우 인증 토큰은 패킷에 삽입될 수 있다.Meanwhile, the
한편 게이트웨이(100)는 제1 노드(510)로부터 인증 토큰을 수신할 수 있다. 구체적으로 게이트웨이(100)는, 제1 노드(510)가 동일한 도메인 ID를 가지는 노드들에 패킷을 전송할 때, 제1 노드로부터 패킷과 함께 인증 토큰을 수신할 수 있다.Meanwhile, the
또한 게이트웨이(100)는 제1 노드(510)로부터 수신한 인증 정보(인증 토큰)를 이용하여 제1 노드(510)에 대한 인증을 수행할 수 있다. 구체적으로 게이트웨이(100)는, 게이트웨이가 보유한, 도메인 ID(제1 노드가 속하는 도메인의 도메인 ID)에 상응하는 그룹키 및 제1 노드의 노드 정보를 이용하여, 제1 노드(510)로부터 수신된 인증 토큰을 인증할 수 있다.Additionally, the
구체적으로 게이트웨이(100)는, 제1 노드(510)로부터 수신된 인증 토큰을 게이트웨이가 보유한 그룹 키(제1 노드가 속하는 도메인의 그룹 키)로 복호화하여 제1 노드(510)의 노드 정보를 추출할 수 있다. 또한 게이트웨이(100)는 추출된 노드 정보를 게이트웨이가 보유한 제1 노드의 노드 정보와 비교하고, 일치하는 경우 제1 노드(510)에 대한 인증이 성공한 것으로 결정할 수 있다.Specifically, the
반면에 게이트웨이가 보유한 그룹 키를 이용한 복호화가 불가능하거나, 제1 노드(510)가 전송한 노드 정보가 게이트웨이가 보유한 노드 정보와 일치하지 않거나, 인증 토큰에 포함되는 타임 스탬프로부터 기 설정된 시간 이상이 경과하거나, 시퀀스 넘버에 오류가 발생하는 경우, 게이트웨이(100)는 인증 토큰과 함께 수신된 패킷에 대한 인증이 실패한 것으로 결정할 수 있다. 인증이 실패한 경우, 게이트웨이(100)는 해당 패킷을 전송하지 않고, 제어 서버(200)에 제1 노드(510)가 참여하는 도메인의 그룹 키를 갱신할 것을 요청할 수 있다.On the other hand, decryption using the group key held by the gateway is not possible, the node information transmitted by the
한편 인증 토큰에 대한 인증이 성공하면, 게이트웨이(100)는 인증 토큰을 게이트웨이의 개인 키로 암호화한 이중 암호화 토큰을 생성할 수 있다(S355, S720). 또한 게이트웨이(100)는 이중 암호화 토큰을 제1 노드(510)가 전송한 패킷과 함께, 제1 노드(510)와 동일한 도메인 ID를 가지는 다른 노드들에 전송할 수 있다(S360, S730). 이 경우 게이트웨이(100)는 인증 토큰과 함께 수신된 패킷에 이중 암호화 토큰을 삽입하여, 제1 노드(510)와 동일한 도메인 ID를 가지는 다른 노드에 전송할 수 있다.Meanwhile, if authentication of the authentication token is successful, the
한편 인증에 성공한 노드들에는 게이트웨이의 공개 키가 배포된 상태이며, 따라서 제1 노드가 참여한 도메인의 도메인 ID를 가지는 다른 노드(1220, 520)에도 게이트웨이의 공개 키가 전송된 상태이다. Meanwhile, the gateway's public key is distributed to nodes that have successfully authenticated, and accordingly, the gateway's public key is also transmitted to other nodes (1220, 520) that have the domain ID of the domain in which the first node participated.
그리고 다른 노드(1220, 520)는 게이트웨이(100)로부터 패킷 및 이중 암호화 토큰을 수신할 수 있다. 또한 다른 노드(1220, 520)는 게이트웨이의 공개 키, 자신이 속한 도메인의 그룹 키, 자신과 동일한 도메인 ID를 가지는 노드의 노드 정보를 이용하여 이중 암호화 토큰을 인증할 수 있다(S365, S740).And
구체적으로 다른 노드(1220, 520)는 게이트웨이의 공개 키를 이용하여 이중 암호화 토큰을 복호화함으로써 이중 암호화 토큰을 인증하고 인증 토큰을 추출할 수 있다. 다음으로 다른 노드(1220, 520)는 자신이 보유한, 도메인 ID에 상응하는 그룹 키 및 제1 노드의 노드 정보를 이용하여 인증 토큰을 인증할 수 있다. 또한 인증 토큰 내 제1 노드의 노드 정보가 다른 노드(1220, 520)가 보유한 제1 노드의 노드 정보와 일치하는 경우, 다른 노드(1220, 520)는 이중 암호화 토큰과 함께 수신된 데이터를 읽거나 저장할 수 있다.Specifically,
반면에 다른 노드(1220, 520)가 보유한 게이트웨이의 공개 키를 이용한 복호화가 불가능하거나, 다른 노드(1220, 520)가 보유한 그룹 키를 이용한 복호화가 불가능하거나, 제1 노드(510)가 전송한 노드 정보가 다른 노드(1220, 520)가 보유한 노드 정보와 일치하지 않거나, 인증 토큰에 포함되는 타임 스탬프로부터 기 설정된 시간 이상이 경과하거나. 인증 토큰에 포함되는 시퀀스 넘버에 오류가 발생하는 경우, 다른 노드(1220, 520)는 이중 암호화 토큰에 대한 인증이 실패한 것으로 결정할 수 있다. 인증이 실패한 경우, 제1 노드(510)는 이중 암호화 토큰과 함께 수신된 데이터를 읽거나 저장할 수 없으며, 제어 서버(200)에 다른 노드(1220, 520)가 참여하는 도메인의 그룹 키를 갱신할 것을 요청할 수 있다.On the other hand, decryption using the public key of the gateway held by other nodes (1220, 520) is impossible, decryption is impossible using the group key held by other nodes (1220, 520), or the node transmitted by the first node (510) The information does not match the node information held by other nodes (1220, 520), or more than a preset time has elapsed from the time stamp included in the authentication token. If an error occurs in the sequence number included in the authentication token, the
한편 다른 노드(1220)도 제1 노드(1210)에 패킷을 전송할 수 있다. 즉 다른 노드(1220)는 다른 노드(1220)의 노드 정보 및 다른 노드(1220)가 보유한 그룹 키를 이용하여 인증 토큰을 생성하고, DDS 통신을 위한 패킷과 함께 인증 토큰을 전송할 수 있다(S370).Meanwhile, another
이 경우 게이트웨이(100)는 다른 노드(1220)로부터 인증 토큰을 수신하고, 인증 토큰을 인증한 후 자신의 개인 키를 이용하여 이중 암호화 토큰을 생성할 수 있다(S375). 또한 게이트웨이(100)는 생성된 이중 암호화 토큰을 다른 노드(1220)와 동일한 도메인 ID를 가지는 제1 노드(1210)에 전송할 수 있다(S380). 제1 노드(1210)는 게이트웨이(100)로부터 패킷 및 이중 암호화 토큰을 수신할 수 있다. 또한 제1 노드(1210)는, 제1 노드(1210)가 보유한. 게이트웨이의 공개 키, 제1 노드(1210)가 속하는 도메인의 그룹 키 및 다른 노드(1220)의 노드 정보를 이용하여 이중 암호화 토큰을 인증할 수 있다(S385).In this case, the
한편 앞선 실시 예에서는 게이트웨이(100)가 자신의 개인 키를 이용하여 이중 암호화 토큰을 생성하고, 노드는 게이트웨이(100)로부터 수신한 공개 키를 이용하여 이중 암호화 토큰을 복호화 하는 것으로 설명하였으나 이에 한정되지 않으며, 노드는 게이트웨이(100)로부터 수신한 공유 키를 이용하여 이중 암호화 토큰을 복호화할 수도 있다. 구체적으로 게이트웨이(100)는 사전에 게이트웨이(100)의 공개 키를 노드들에 배포한 상태에서, 자신의 개인 키로 암호화한 공유 키를 노드들에 배포할 수 있다. 이 경우 노드들은 미리 배포된 공개 키를 이용하여 암호화한 공유 키를 복호화 함으로써 공유 키를 획득할 수 있다. 그리고 노드들은 공유키를 이용하여 이중 암호화 토큰을 복호화 할 수 있다. 이와 같이 공유 키를 이용하는 경우, 공개 키 기반 암호화/복호화에서 발생할 수 있는 성능 저하를 방지할 수 있다,Meanwhile, in the previous embodiment, it was explained that the
도 8은 본 발명의 또 다른 실시 예에 따른 DDS 통신 장치를 설명하기 위한 도면이다.Figure 8 is a diagram for explaining a DDS communication device according to another embodiment of the present invention.
도 1 내지 도 7에서는, 제어 서버(200) 및 게이트웨이(100)를 포함하는 DDS 통신 시스템을 설명하였다. 다만 이에 한정되지 않으며, DDS 통신 시스템은 하나의 장치로 구현될 수 있다. 따라서 DDS 통신 장치(800)는 앞서 설명한 DDS 통신 시스템의 동작을 수행할 수 있다.1 to 7 illustrate a DDS communication system including a
구체적으로 DDS 통신 장치(800)는 통신부(810), 제어부(820), 메모리(830) 및 게이트웨이(840)를 포함할 수 있다.Specifically, the
통신부(810)는 외부 장치와 통신하기 위한 통신 회로를 포함하고, 게이트웨이(840)에 접속하여 DDS 통신에 참여하려는 복수의 노드와 데이터를 송/수신할 수 있다. 통신부(810)는, 게이트웨이에 접속하여 DDS 통신에 참여하려는 복수의 노드로부터, 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신할 수 있다. 또한 통신부(810)는, 제어부(820)의 제어 하에, 복수의 노드 중 동일한 도메인 ID를 가지는 노드들에, 동일한 도메인 ID를 가지는 노드들의 노드 정보 및 동일한 도메인 ID에 상응하는 그룹 키를 전송할 수 있다.The
제어부(820)는 DDS 통신 장치(800)의 전반적인 동작을 제어할 수 있다. 또한 제어부(820)는 정책을 생성하여 복수의 노드에 배포하고, 노드로부터 수신되는 인증 정보(인증 코드, 인증 토큰)를 인증하고, 인증 토큰을 DDS 통신 장치(800)의 개인 키로 암호화 하여 이중 암호화 토큰을 생성하고, 생성된 이중 암호화 토큰을 패킷과 함께 노드에 전송할 수 있다.The
메모리(830)는 DDS 통신 장치(800)의 동작을 위한 프로그램 또는 명령어를 저장할 수 있다. 또한 메모리(830)는 복수의 노드의 노드 정보, 도메인 별 그룹 키, 도메인 별 노드 정보, 게이트웨이(840)의 개인 키 등을 저장할 수 있다.The
한편 게이트웨이(840)는 게이트웨이(840)의 동작을 제어하는 게이트웨이 제어부 및 게이트웨이(840)의 동작을 위한 프로그램 또는 명령어를 저장하는 게이트웨이 메모리를 포함할 수 있다. 한편 게이트웨이 제어부 및 게이트웨이 메모리는 별도로 구비되지 않을 수 있으며, 이 경우 앞서 설명한 제어부(820) 및 메모리(830)가 각각 게이트웨이 제어부 및 게이트웨이 메모리로 사용될 수 있다.Meanwhile, the
한편 게이트웨이(840)는 복수의 노드가 접속 가능한 복수의 인터페이스를 더 포함할 수 있다. 또한 게이트웨이(840)는 동일한 도메인 ID를 가지는 노드들이 접속한 인터페이스들을 가상으로 연결하는 터널을 생성함으로써, 동일한 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성할 수 있다. 또한 게이트웨이(840)는 동일한 도메인 ID를 가지는 특정 노드로부터 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 인증 정보를 이용하여 인증을 수행하고, 인증에 성공하면 특정 노드로부터 수신되는 패킷을 동일한 도메인 ID를 가지는 다른 노드에 전송할 수 있다.Meanwhile, the
이와 같이 본 발명에 따르면, DDS 통신 시스템에서 생성하는 정책을 기반으로 동일 도메인에 참여한 노드들 간의 데이터 교환을 지원함으로써, 오토 디스커버리(Auto-Discovery) 기능을 이용하지 않고도 그리고 멀티캐스트가 지원되지 않은 환경에서도 DDS 통신을 가능하게 할 수 있으며, 참여자 단말이나 노드의 수가 증가하더라도 패킷의 수가 기하급수적으로 증가하는 것을 방지할 수 있다. 이에 따라 종래의 DDS 통신 방식에 비해 가용성 및 확장성에서 확연한 장점을 나타내며, 특히 5G, LTE 등의 개방적이고 큰 규모를 가지는 네트워크 환경에서도 DDS 통신을 가능하게 하는 장점이 있다. 이에 따라 대규모 통신망에 적용할 때 문제점이 발생하는 DDS 표준을 소프트웨어 정의 경계 기반으로 확장 설계하여, 5G, LTE 등의 대규모 무선 네트워크 환경에서 DDS 통신을 사용하는 단말 중심의 개방 네트워크 통신 시스템을 제공할 수 있다.According to the present invention, by supporting data exchange between nodes participating in the same domain based on the policy created in the DDS communication system, an environment in which multicast is not supported and without using the auto-discovery function DDS communication can also be enabled, and the number of packets can be prevented from increasing exponentially even if the number of participant terminals or nodes increases. Accordingly, it has clear advantages in availability and scalability compared to conventional DDS communication methods, and has the advantage of enabling DDS communication even in open and large-scale network environments such as 5G and LTE. Accordingly, by designing the DDS standard, which causes problems when applied to large-scale communication networks, to be expanded based on software-defined boundaries, it is possible to provide a terminal-centered open network communication system using DDS communication in large-scale wireless network environments such as 5G and LTE. there is.
또한 본 발명에 따르면, 제어 서버와 게이트웨이의 동작이 기존의 오토 디스커버리(Auto-Discovery) 기능을 대체하기 때문에 조작된 디스커버리(Discovery) 패킷 전송이 불가능하다는 장점이 있으며, 참여자를 찾는 행위가 없기 때문에 Network Flooding 공격도 방지 할 수 있는 장점이 있다. In addition, according to the present invention, since the operation of the control server and gateway replaces the existing auto-discovery function, it has the advantage that it is impossible to transmit a manipulated discovery packet, and since there is no act of searching for a participant, the network It has the advantage of preventing flooding attacks.
또한 본 발명에 따르면, 다수의 노드들을, IP 및 포트 기반으로 인증하는 대신, ID 기반의 신원 확인과 고차원의 인증 기술을 적용함으로써, 대규모 무선 네트워크 환경에 연결된 다수의 단말들을 유연하고 효과적으로 인증할 수 있는 장점이 있다.Additionally, according to the present invention, by applying ID-based identity verification and high-level authentication technology instead of authenticating multiple nodes based on IP and port, multiple terminals connected to a large-scale wireless network environment can be flexibly and effectively authenticated. There is an advantage.
또한 본 발명에 따르면, 동일한 도메인 ID를 가지는 노드들의 데이터 교환을 지원하는 게이트웨이가 노드로부터 수신된 인증 정보를 인증함으로써, 노드가 해킹을 당하였는지, 동일한 도메인 ID 별로 패킷을 송/수신하고 있는지, 리플레이 공격(Replay Attack)이 있는지 등을 검증하여 무결성 있는 DDS 통신을 지원할 수 있는 장점이 있다.Additionally, according to the present invention, a gateway that supports data exchange between nodes with the same domain ID authenticates the authentication information received from the node, thereby determining whether the node has been hacked and whether packets are being transmitted/received by the same domain ID. It has the advantage of being able to support integrity DDS communication by verifying whether there is a replay attack.
또한 본 발명에 따르면 게이트웨이의 개인키로 인증 토큰을 암호화 하는 이중 암호화 과정을 거침으로써, 게이트웨이를 통과하였고, 게이트웨이에 의해 무결성을 검증 받은 패킷임을 인증할 수 있다. 이중 암호화 토큰으로 패킷 송신자(노드)의 신원 확인과 패킷 전달자(게이트웨이)의 신원 확인을 동시에 할 수 있기 때문에, 해커나 다른 침입자의 공격을 효과적으로 방지할 수 있는 장점이 있다.Additionally, according to the present invention, by going through a double encryption process of encrypting the authentication token with the gateway's private key, it is possible to authenticate that the packet has passed through the gateway and whose integrity has been verified by the gateway. Since the double encryption token can simultaneously verify the identity of the packet sender (node) and the packet forwarder (gateway), it has the advantage of effectively preventing attacks by hackers or other intruders.
전술한 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 상기 컴퓨터는 제어부를 포함할 수도 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.The above-described present invention can be implemented as computer-readable code on a program-recorded medium. Computer-readable media includes all types of recording devices that store data that can be read by a computer system. Examples of computer-readable media include HDD (Hard Disk Drive), SSD (Solid State Disk), SDD (Silicon Disk Drive), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. There is. Additionally, the computer may include a control unit. Accordingly, the above detailed description should not be construed as restrictive in all respects and should be considered illustrative. The scope of the present invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the present invention are included in the scope of the present invention.
Claims (20)
상기 복수의 노드 중 동일한 도메인 ID를 가지는 노드들에, 상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 단계;
상기 게이트웨이가, 상기 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하는 단계; 및
상기 게이트웨이가, 상기 도메인 ID를 가지는 특정 노드로부터 상기 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 상기 인증 정보를 이용하여 인증을 수행하고, 상기 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는 단계;를 포함하는
DDS 통신 방법.Receiving node information including identification information and domain ID from a plurality of nodes that want to connect to the gateway and participate in DDS communication;
transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID to nodes having the same domain ID among the plurality of nodes;
Configuring, by the gateway, a network for nodes having the domain ID to exchange packets; and
The gateway receives authentication information generated using the group key from a specific node having the domain ID, performs authentication using the authentication information, and, if the authentication is successful, sends a packet received from the specific node. Transmitting to another node having the domain ID; including
DDS communication method.
상기 식별 정보는, 상기 참여자 단말의 식별 정보를 포함하고,
상기 참여자 단말의 식별 정보는, 단말기 고유 식별 번호(IMEI)인
DDS 통신 방법.According to clause 1,
The identification information includes identification information of the participant terminal,
The identification information of the participant terminal is the terminal unique identification number (IMEI).
DDS communication method.
상기 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신하는 단계는,
상기 식별 정보 및 상기 참여자 단말에서 생성되는 노드들에 순차적으로 부여되는 인스턴스 ID를 이용하여 상기 노드 정보를 전송한 노드를 인증하는 단계;를 포함하는
DDS 통신 방법.According to clause 1,
The step of receiving node information including the identification information and domain ID,
Authenticating the node that transmitted the node information using the identification information and an instance ID sequentially assigned to nodes generated in the participant terminal; comprising;
DDS communication method.
상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 단계는,
상기 도메인 ID와 상응하는 도메인에 새로운 노드가 참여하면, 상기 그룹 키를 갱신하고 상기 갱신된 그룹 키를 상기 도메인 ID를 가지는 노드들에 전송하는 단계;를 포함하는
DDS 통신 방법.According to clause 1,
The step of transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID is,
When a new node participates in the domain corresponding to the domain ID, updating the group key and transmitting the updated group key to nodes having the domain ID; comprising
DDS communication method.
상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 단계는,
상기 도메인 ID와 상응하는 도메인에 새로운 노드가 참여하면, 상기 새로운 노드의 노드 정보를 상기 도메인 ID를 가지는 노드들에 전송하는 단계;를 포함하는
DDS 통신 방법.According to clause 1,
The step of transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID is,
When a new node participates in the domain corresponding to the domain ID, transmitting node information of the new node to nodes having the domain ID; comprising
DDS communication method.
상기 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하는 단계는,
상기 동일한 도메인 ID를 가지는 노드들만 패킷을 교환하고 다른 도메인 ID를 가지는 노드들과의 패킷 교환이 차단되도록 상기 네트워크를 구성하는 단계;를 포함하는
DDS 통신 방법.According to clause 1,
The step of configuring a network for nodes having the domain ID to exchange packets is,
Configuring the network so that only nodes having the same domain ID exchange packets and packet exchange with nodes having different domain IDs is blocked;
DDS communication method.
상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 전송하는 단계는,
인증에 성공한 노드에 해당 노드가 접속할 인터페이스 정보를 전송하는 단계;를 포함하고,
상기 동일한 도메인 ID를 가지는 노드들만 패킷을 교환하고 다른 도메인 ID를 가지는 노드들과의 패킷 교환이 차단되도록 상기 네트워크를 구성하는 단계는,
상기 동일한 도메인 ID를 가지는 노드들이 접속할 인터페이스들을 가상으로 연결하는 터널을 생성하는 단계;를 포함하는
DDS 통신 방법.According to clause 6,
The step of transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID is,
Transmitting information about the interface to which the node will connect to the node that has successfully authenticated,
The step of configuring the network so that only nodes with the same domain ID exchange packets and packet exchange with nodes with different domain IDs is blocked,
Comprising: creating a tunnel virtually connecting interfaces to which nodes having the same domain ID will connect;
DDS communication method.
상기 인증 정보는,
상기 특정 노드가 상기 게이트웨이에 접속할 때 상기 특정 노드로부터 수신하는 인증 코드를 포함하는
DDS 통신 방법.According to clause 1,
The authentication information is,
Containing an authentication code received from the specific node when the specific node connects to the gateway
DDS communication method.
상기 인증 코드는,
상기 특정 노드의 노드 정보 및 상기 특정 노드가 보유하는 그룹 키를 이용하여 생성되고,
상기 인증을 수행하는 단계는,
상기 게이트웨이가 보유한, 상기 도메인 ID에 상응하는 그룹 키 및 상기 특정 노드의 노드 정보를 이용하여, 상기 특정 노드로부터 수신된 상기 인증 코드를 인증하는 단계;를 포함하는
DDS 통신 방법.According to clause 8,
The authentication code is,
Generated using node information of the specific node and a group key held by the specific node,
The steps for performing the authentication are:
Authenticating the authentication code received from the specific node using a group key corresponding to the domain ID and node information of the specific node held by the gateway, comprising:
DDS communication method.
상기 인증 정보는,
상기 특정 노드가 상기 도메인 ID를 가지는 노드들에 패킷을 전송할 때, 상기 패킷과 함께 상기 특정 노드로부터 수신되는 인증 토큰을 포함하는
DDS 통신 방법.According to clause 1,
The authentication information is,
When the specific node transmits a packet to nodes having the domain ID, it includes an authentication token received from the specific node along with the packet.
DDS communication method.
상기 인증 토큰은,
상기 특정 노드의 노드 정보 및 상기 특정 노드가 보유하는 그룹 키를 이용하여 생성되고,
상기 인증을 수행하는 단계는,
상기 게이트웨이가 보유한, 상기 도메인 ID에 상응하는 그룹 키 및 상기 특정 노드의 노드 정보를 이용하여, 상기 특정 노드로부터 수신된 상기 인증 토큰을 인증하는 단계;를 포함하는
DDS 통신 방법.According to clause 10,
The authentication token is,
Generated using node information of the specific node and a group key held by the specific node,
The steps for performing the authentication are:
Authenticating the authentication token received from the specific node using the group key corresponding to the domain ID and node information of the specific node held by the gateway; comprising:
DDS communication method.
상기 인증 토큰은, 타임 스탬프 및 시퀀스 넘버 중 적어도 하나를 더 포함하는
DDS 통신 방법.According to clause 11,
The authentication token further includes at least one of a timestamp and a sequence number.
DDS communication method.
상기 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는 단계는,
상기 도메인 ID를 가지는 노드들에 상기 게이트웨이의 공개 키를 전송하는 단계; 및
상기 인증 토큰에 대한 인증이 성공하면, 상기 인증 토큰을 상기 게이트웨이의 개인 키로 암호화한 이중 암호화 토큰을 생성하는 단계;를 포함하는
DDS 통신 방법.According to clause 11,
If the authentication is successful, the step of transmitting the packet received from the specific node to another node having the domain ID is,
transmitting the public key of the gateway to nodes having the domain ID; and
If authentication of the authentication token is successful, generating a double encryption token by encrypting the authentication token with the private key of the gateway; comprising:
DDS communication method.
상기 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는 단계는,
상기 인증 토큰과 함께 수신된 상기 패킷에 상기 이중 암호화 토큰을 삽입하여 상기 도메인 ID를 가지는 다른 노드에 전송하는 단계;를 포함하는
DDS 통신 방법.According to clause 13,
If the authentication is successful, the step of transmitting the packet received from the specific node to another node having the domain ID is,
Inserting the double encryption token into the packet received together with the authentication token and transmitting it to another node having the domain ID; comprising
DDS communication method.
상기 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하고, 상기 도메인 ID를 가지는 특정 노드로부터 상기 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 상기 인증 정보를 이용하여 인증을 수행하고, 상기 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는 게이트웨이;를 포함하는
DDS 통신 시스템.Receive node information including identification information and domain ID from a plurality of nodes that want to connect to the gateway and participate in DDS communication, and send node information of nodes having the domain ID to nodes having the same domain ID among the plurality of nodes. and a control server transmitting a group key corresponding to the domain ID. and
Nodes having the domain ID configure a network for exchanging packets, receive authentication information generated using the group key from a specific node having the domain ID, and perform authentication using the authentication information, A gateway that transmits the packet received from the specific node to another node having the domain ID if the authentication is successful;
DDS communication system.
상기 식별 정보는, 상기 참여자 단말의 식별 정보를 포함하고,
상기 참여자 단말의 식별 정보는, 단말기 고유 식별 번호(IMEI)인
DDS 통신 시스템.According to clause 15,
The identification information includes identification information of the participant terminal,
The identification information of the participant terminal is the terminal unique identification number (IMEI).
DDS communication system.
상기 제어 서버는,
상기 식별 정보 및 상기 참여자 단말에서 생성되는 노드들에 순차적으로 부여되는 인스턴스 ID를 이용하여 상기 노드 정보를 전송한 노드를 인증하는
DDS 통신 시스템.According to claim 15,
The control server is,
Authenticating the node that transmitted the node information using the identification information and the instance ID sequentially assigned to the nodes generated in the participant terminal
DDS communication system.
상기 제어 서버는,
상기 도메인 ID와 상응하는 도메인에 새로운 노드가 참여하면, 상기 그룹 키를 갱신하고 상기 갱신된 그룹 키를 상기 도메인 ID를 가지는 노드들에 전송하는
DDS 통신 시스템.According to clause 15,
The control server is,
When a new node participates in the domain corresponding to the domain ID, the group key is updated and the updated group key is transmitted to nodes having the domain ID.
DDS communication system.
상기 제어 서버는,
상기 도메인 ID와 상응하는 도메인에 새로운 노드가 참여하면, 상기 새로운 노드의 노드 정보를 상기 도메인 ID를 가지는 노드들에 전송하는
DDS 통신 시스템.According to clause 15,
The control server is,
When a new node joins the domain corresponding to the domain ID, the node information of the new node is transmitted to nodes having the domain ID.
DDS communication system.
상기 게이트웨이에 접속하여 DDS 통신에 참여하려는 복수의 노드로부터, 식별 정보 및 도메인 ID를 포함하는 노드 정보를 수신하는 통신부; 및
상기 복수의 노드 중 동일한 도메인 ID를 가지는 노드들에, 상기 도메인 ID를 가지는 노드들의 노드 정보 및 상기 도메인 ID에 상응하는 그룹 키를 상기 통신부를 통하여 전송하는 제어부;를 포함하고,
상기 게이트웨이는,
상기 도메인 ID를 가지는 노드들이 패킷을 교환하기 위한 네트워크를 구성하고,
상기 도메인 ID를 가지는 특정 노드로부터 상기 그룹 키를 이용하여 생성된 인증 정보를 수신하고, 상기 인증 정보를 이용하여 인증을 수행하고, 인증에 성공하면 상기 특정 노드로부터 수신되는 패킷을 상기 도메인 ID를 가지는 다른 노드에 전송하는
DDS 통신 장치.A gateway providing a plurality of interfaces to which a plurality of nodes can connect;
a communication unit that receives node information including identification information and domain ID from a plurality of nodes that want to connect to the gateway and participate in DDS communication; and
A control unit transmitting node information of nodes having the domain ID and a group key corresponding to the domain ID to nodes having the same domain ID among the plurality of nodes through the communication unit,
The gateway is,
Nodes with the domain ID configure a network to exchange packets,
Authentication information generated using the group key is received from a specific node having the domain ID, authentication is performed using the authentication information, and if authentication is successful, a packet received from the specific node is sent to the node having the domain ID. transmitting to other nodes
DDS communication device.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220076755A KR20240000161A (en) | 2022-06-23 | 2022-06-23 | Method, device and system for dds communication |
PCT/KR2023/008241 WO2023249320A1 (en) | 2022-06-23 | 2023-06-15 | Dds communication method, device and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220076755A KR20240000161A (en) | 2022-06-23 | 2022-06-23 | Method, device and system for dds communication |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240000161A true KR20240000161A (en) | 2024-01-02 |
Family
ID=89380187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220076755A KR20240000161A (en) | 2022-06-23 | 2022-06-23 | Method, device and system for dds communication |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20240000161A (en) |
WO (1) | WO2023249320A1 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5014608B2 (en) * | 2005-09-30 | 2012-08-29 | 富士通株式会社 | Group communication method, utilization device and management device |
KR101999291B1 (en) * | 2017-07-26 | 2019-07-11 | 한전케이디엔주식회사 | Electric vehicle charging infrastructure system using data distribution service |
KR102021117B1 (en) * | 2017-08-25 | 2019-09-11 | 한전케이디엔 주식회사 | Dds communication middleware platform in power system field |
KR20210064530A (en) * | 2019-11-26 | 2021-06-03 | 한국전자통신연구원 | Method for sharing information using group key based on attribute and apparatus using the same |
IL275954A (en) * | 2020-07-09 | 2022-02-01 | Google Llc | Anonymous event attestation with group signatures |
-
2022
- 2022-06-23 KR KR1020220076755A patent/KR20240000161A/en unknown
-
2023
- 2023-06-15 WO PCT/KR2023/008241 patent/WO2023249320A1/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023249320A1 (en) | 2023-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2779589B1 (en) | Changing dynamic group VPN member reachability information | |
US7234063B1 (en) | Method and apparatus for generating pairwise cryptographic transforms based on group keys | |
US9461975B2 (en) | Method and system for traffic engineering in secured networks | |
EP2716003B1 (en) | System and method for authenticating components in a network | |
US7809354B2 (en) | Detecting address spoofing in wireless network environments | |
US8510812B2 (en) | Computerized system and method for deployment of management tunnels | |
US20230119242A1 (en) | Dynamic establishment and termination of vpn tunnels between spokes | |
US11799844B2 (en) | Secure communication network | |
US20160036794A1 (en) | Determining whether to use a local authentication server | |
JP2016051921A (en) | Communication system | |
JP2016063233A (en) | Communication control device | |
US9118588B2 (en) | Virtual console-port management | |
US20210218581A1 (en) | Computing device and method for performing a secure neighbor discovery | |
US11368325B2 (en) | System for communication on a network | |
Liyanage et al. | Secure hierarchical virtual private LAN services for provider provisioned networks | |
CN111031012B (en) | Method for realizing security authentication of DDS domain participant | |
US20230179582A1 (en) | Centralized management of private networks | |
JP2018174550A (en) | Communication system | |
KR20240000161A (en) | Method, device and system for dds communication | |
US11671451B1 (en) | Server/client resolution for link level security protocol | |
Hauser et al. | P4sec: Automated Deployment of 802.1 X, IPsec, and MACsec Network Protection in P4-Based SDN | |
CN112887968B (en) | Network equipment management method, device, network management equipment and medium | |
CN116915486A (en) | Cloud service communication system | |
Niazi et al. | Group Encrypted Transport VPN (Get VPN) Design and Implementation Guide | |
JP2017201832A (en) | Communication control device and communication device |