WO2020009369A1 - 종단 간 통신에 보안을 제공하기 위한 장치 및 방법 - Google Patents

종단 간 통신에 보안을 제공하기 위한 장치 및 방법 Download PDF

Info

Publication number
WO2020009369A1
WO2020009369A1 PCT/KR2019/007744 KR2019007744W WO2020009369A1 WO 2020009369 A1 WO2020009369 A1 WO 2020009369A1 KR 2019007744 W KR2019007744 W KR 2019007744W WO 2020009369 A1 WO2020009369 A1 WO 2020009369A1
Authority
WO
WIPO (PCT)
Prior art keywords
identifier
policy
token
communication device
packet
Prior art date
Application number
PCT/KR2019/007744
Other languages
English (en)
French (fr)
Inventor
김형주
김경남
박경원
강혜진
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Publication of WO2020009369A1 publication Critical patent/WO2020009369A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint

Definitions

  • the present invention relates to Internet of Things (IoT) technology, and more particularly, to an apparatus and a method for providing security for communication between an end terminal communication device such as an IoT terminal and an IoT service server.
  • IoT Internet of Things
  • the Internet is evolving from a human-oriented network in which humans create and consume information, and an Internet of Things (IoT) network that exchanges and processes information among distributed components such as things.
  • the Internet of Things (IoT) refers to a concept that can communicate with each other by connecting all communicable things to a network. Things, which can be recognized systemically, are equipped with near-field and long-distance communication functions and can produce data through sensors.
  • To implement the IoT technical elements such as sensing technology, wired and wireless communication and network infrastructure, service interface technology, and security technology are required.
  • technologies such as a sensor network, a machine to machine (M2M), a machine type communication (MTC), and the like for connection between objects have been studied.
  • M2M machine to machine
  • MTC machine type communication
  • IoT services are provided in a public network environment.
  • anyone can access the IoT network at any time.
  • the IoT device IoT terminal or IoT service server
  • the IoT device may be exposed to the public network and thus may be vulnerable to security.
  • the present invention has been proposed to solve the above problems, and provides an apparatus and method for providing security based on an identifier (ID) based policy in communication between an IoT terminal and an end communication device such as an IoT service server.
  • ID identifier
  • a security device communicatively coupled to an end-to-end communication device provides security for end-to-end communication, comprising: communication circuitry; A processor; And a memory including at least one instruction executable by the processor, wherein the processor is configured to receive a packet including a destination IP address and to store matching information between the IP address and the first identifier.
  • the processor may request and receive a token seed from the policy management device, generate a token using the received token seed, and insert the token into the packet to transmit the token seed.
  • the processor may transmit the first identifier, the second identifier and the third identifier when requesting a token seed.
  • the processor may generate a token using a nonce, a payload of the packet, a timestamp, the second identifier, and the token seed.
  • the processor may be configured to generate a policy inquiry result according to a comparison result between the first identifier, the second identifier, and the third identifier, and identifier-based bidirectional connection information based on the security device stored in the policy management device. Can receive from the management device.
  • the first identifier may be an identifier of another security device communicatively coupled to the other end communication device.
  • the identifier-based bidirectional connection information based on the security device stored in the policy management device includes an identifier of the security device, an identifier of a lower end communication device on a communication layer communicatively connected to the security device, and It may consist of an identifier of another upper security device on the communication layer communicatively connected to the lower end communication device and another end communication device allowed for end communication.
  • the processor may request an identifier-based policy setting by transmitting an identifier of the security device and unique information of the terminal communication device to the policy management device when the security device is initially communicatively connected to the terminal communication device. .
  • the matching information between the IP address and the first identifier stored in the IP address management apparatus may be received and stored from the policy management apparatus when an identifier based policy is set in the policy management apparatus.
  • a security device communicatively coupled to an end-to-end communication device for providing security for end-to-end communication comprises: communication circuits; A processor; And a memory including at least one instruction executable by the processor, wherein the processor receives a packet including a source IP address and stores matching information between the IP address and the first identifier.
  • the packet includes a token inserted by the sender of the packet, and the processor requests and receives a token seed used by the sender of the packet to the policy management apparatus, and uses the received token seed.
  • the token may be verified, and upon successful token validation, the token inserted in the packet may be removed.
  • the processor may transmit an identifier of the terminal communication device, the first identifier, and the third identifier to the policy management apparatus that have transmitted the packet included in the token in plain text when the token seed is requested.
  • the processor may be configured to generate a policy inquiry result according to a comparison result between the first identifier, the second identifier, and the third identifier, and identifier-based bidirectional connection information based on the security device stored in the policy management device. Can receive from the management device.
  • the first identifier may be an identifier of another security device communicatively connected to the terminal communication device that transmitted the packet.
  • a method for providing security for end-to-end communication in a security device communicatively connected to an end-to-end communication device comprises: receiving a packet comprising a destination IP address; Requesting and receiving a first identifier corresponding to the destination IP address to an IP address management apparatus that stores matching information between the IP address and the first identifier; Identifying a second identifier of the terminating communication device in a table storing matching information between the unique information of the terminating communication device and a second identifier; Transmitting the first identifier, the second identifier, and the third identifier of the security device to a policy management device to query an identifier-based policy and receive a policy inquiry result from the policy management device; And transmitting the packet to another end communication device based on the policy inquiry result.
  • a method for providing security for end-to-end communication in a security device communicatively coupled to an end-to-end communication device comprises: receiving a packet comprising a source IP address; Requesting and receiving a first identifier corresponding to the source IP address to an IP address management apparatus that stores matching information between the IP address and the first identifier; Identifying a second identifier of the terminating communication device in a table storing matching information between the unique information of the terminating communication device and a second identifier; Transmitting the first identifier, the second identifier, and the third identifier of the security device to a policy management device to query an identifier-based policy and receive a policy inquiry result from the policy management device; And transmitting the packet to the end communication device based on the policy inquiry result.
  • the security of the IoT service through the public network is improved by using an identifier (ID) -based policy by escaping an IP address-based policy that is highly volatile according to the network structure.
  • ID identifier
  • the security module of each end in an end-to-end communication over the public network, by recording identifier-based bidirectional connection information based on the security module as a policy, the security module of each end is connected with its underlying end-device. Only the security module at the other end needs to be identified. This enhances security by minimizing exposure through the public network of end-to-end communications devices.
  • securely connecting a security module to an end communication device provides security to all IoT services without changing the legacy system by assigning an identifier (ID) to the end communication device and automatically setting an identifier-based policy. can do.
  • ID an identifier
  • FIG. 1 is a diagram illustrating an end-to-end communication system according to an embodiment of the present invention.
  • FIG. 2 is a block diagram of the first security module of FIG. 1.
  • FIG. 3 is a block diagram of the second security module of FIG. 1.
  • FIG. 4 is a flowchart of a method for transmitting a packet from a first end communication device to a second end communication device in the communication system of FIG. 1.
  • FIG. 5 is a flowchart of a method of receiving, at a second end communication device, a packet transmitted from a first end communication device in the communication system of FIG.
  • FIG. 6 is a block diagram of the policy management apparatus of FIG. 1 according to an embodiment of the present invention.
  • FIG. 7 is a flowchart illustrating an operation of a policy management apparatus in an end-to-end communication system of FIG. 1.
  • FIG. 8 is a diagram illustrating communication between an IoT terminal and an IoT service server as an embodiment of the end-to-end communication system of FIG. 1.
  • FIG. 9 is a flowchart illustrating a method of generating ID connection relationship information between an IoT service server and a second security module in the system of FIG. 8.
  • FIG. 10 is a flowchart illustrating a method of setting a connection policy between an IoT terminal and an IoT service server in the system of FIG. 8.
  • the end-to-end communication system includes end-to-end communication devices 110 and 130, security modules 120 and 140, a policy management device 150, a policy storage device 160, and IP address management device 170 and they are connected via communication network 180.
  • the terminal communication devices 110 and 130 are communication devices that exist at the end of the communication path, for example, an IoT terminal such as a gas sensor, a fire detection sensor, a camera, an artificial intelligence speaker, or an IoT service by communicating with such an IoT terminal. It includes an IoT service server to provide.
  • the IoT terminal may include a memory, a processor, a communication circuit, and the like, to communicate with an IoT service server, or may perform P2P communication with another IoT terminal.
  • the IoT service server may be connected to the IoT terminal to periodically receive status information from the IoT terminal, update firmware of the IoT terminal, and provide services such as content streaming to the IoT terminal.
  • the security modules 120 and 140 are communicatively connected to the end communication devices 110 and 130 to protect the end communication devices 110 and 130 from external attacks through the communication network 180.
  • the security modules 120, 140 are located in an upper layer of the end communication devices 110, 130 on the communication layer.
  • the security modules 120 and 140 may be manufactured in the form of physical adapters and physically connected to the end communication devices 110 and 130.
  • the security modules 120 and 140 may include a memory, a processor, and communication circuits.
  • the security modules 120 and 140 may be manufactured in software, stored in a memory of the end communication devices 110 and 130, and executed.
  • the security modules 120 and 140 are stored in their own storage with an identifier (ID: Identifier, hereinafter referred to as ID) that can be distinguished from other security modules.
  • ID an identifier
  • the security modules 120 and 140 When the security modules 120 and 140 transmit a packet received from the end communication devices 110 and 130 to the outside, the security modules 120 and 140 query the policy storage device 160 for the policy, and out of the packet according to the policy inquiry result. Determine whether to send.
  • the policy is an identifier (ID) -based policy, and is bidirectional connection information based on the security modules 120 and 140.
  • the security modules 120 and 140 similarly query the policy storage device 160 when a packet destined for the end communication devices 110 and 130 is received from the outside, and then, according to the policy inquiry result, Determines whether to transmit to the inside.
  • the security modules 120, 140 when first communicatively connected to the end communication devices 110, 130, their own ID and unique information of the end communication devices 110, 130, for example, IP.
  • the connection policy between the end communication devices 110 and 130 is set by transmitting an address or a MAC address to the policy management device 150.
  • the security module 120, 140 requests the token seed from the policy storage device 160 and sends the token seed received from the policy storage device 160 when externally transmitting a packet received from the end communication device 110, 130. Insert the token generated by using the packet and send it.
  • the security modules 120 and 140 request a token seed used by the side that sent the packet to the policy storage device 160 when a packet destined for the terminal communication devices 110 and 130 from the outside is received. The token included in the packet is verified using the token seed received from the policy storage device 160.
  • the security modules 120 and 140 remove the token from the packet received from the outside upon successful verification of the token and transmit the token to the internal terminal communication device 110 or 130.
  • the policy management device 150 stores the ID-based end communication connection policy in the policy storage device 160.
  • the ID-based end communication connection policy includes ID-based bidirectional connection information based on the security modules 120 and 140.
  • the ID-based bidirectional connection information based on the first security module 120 may include an ID of the first end communication device 110, an ID of the first security module 120, and a second security module ( Connection information consisting of an ID of 140).
  • the ID-based bidirectional connection information based on the second security module 140 may include an ID of the second end communication device 130, an ID of the second security module 140, and an ID of the first security module 120. Connection information consisting of.
  • the policy management apparatus 150 may receive the ID-based end communication connection policy from an administrator and store it in the policy storage device 160.
  • the policy management device 150 may set the ID-based end communication connection policy by itself and store it in the policy storage device 160.
  • the policy management device 150 may operate when the security modules 120 and 140 are communicatively connected to the terminal communication devices 110 and 130, and operate from the security modules 120 and 140. Receive the unique information, for example, an IP address or a MAC address, of the terminal communication devices 110 and 130 connected to the server 140.
  • the policy management device 150 generates an ID connection relationship information between the terminal communication devices 110 and 130 and the security modules 120 and 140 after assigning an ID to the terminal communication devices 110 and 130 having no ID.
  • the policy management device 150 identifies the end communication devices 110 and 130 belonging to the same service group and combines the ID connection relationship information with the security modules 120 and 140 to connect the end communication devices. Combining the ID-based full path between (110, 130).
  • the policy management apparatus 150 generates bidirectional connection information based on the security modules 120 and 140 in the entire path and stores the bidirectional connection information in the policy storage device 160.
  • the policy management apparatus 150 sets the ID-based end communication connection policy, and matches matching information between the IP addresses of the end communication apparatuses 110 and 130 and the IDs of the security modules 120 and 140. 170 can be sent and stored.
  • the policy management device 150 may include matching information between an IP address of the first end communication device 110 and an ID of the first security module 120, an IP address of the second end communication device 130, and the like.
  • the matching information between IDs of the second security module 140 is stored in the IP address management apparatus 170.
  • the policy management device 150 transmits an ID assigned to the lower end communication devices 110 and 130 to the security module 120 and 140 while setting the ID-based end communication connection policy.
  • the modules 120 and 140 may store and manage matching information of IDs and unique information (eg, MAC addresses and IP addresses) of the lower end communication devices 110 and 130.
  • the MAC table is taken as the matching information.
  • the policy storage device 160 receives and stores an ID-based end communication connection policy generated by the policy management device 150.
  • the ID-based end communication connection policy includes ID-based bidirectional connection information based on the security modules 120 and 140.
  • the policy storage device 160 includes nodes constituting the blockchain network. Nodes constituting the blockchain network periodically generate a block to record and store a transaction. In an embodiment of the present invention, a transaction includes the ID-based end communication connection policy.
  • the blocks created by the nodes that make up the blockchain network are created as chains, and each node shares the same block, so many of the nodes have to be hacked to forge the transactions stored in the block.
  • the policy storage device 160 matches and stores a pair of IDs received from the sender side of the packet, the token seed, and the public key of the sender side, and receives a token seed request from the receiver side when the packet side is received.
  • a pair of received IDs is compared with a pair of previously stored IDs and matched, a matched token seed and a public key are returned corresponding to the pair of previously stored IDs.
  • the IP address management apparatus 170 stores matching information between the IP addresses of the terminal communication devices 110 and 130 and the IDs of the security modules 120 and 140. It may be received from the administrator and stored, and as described above, may be received and stored from the policy management device 150.
  • the IP address management device 170 may include nodes constituting the blockchain network, similar to the policy storage device 160.
  • the IP address management apparatus 170 receives an IP address from the security module 120 or 140, the IP address management apparatus 170 returns an ID corresponding to the received IP address.
  • the IP address management apparatus 170 and the policy management apparatus 150 have been described separately.
  • the present invention is not limited thereto, and the IP address management apparatus 170 is a module of the policy management apparatus 150. It can be implemented and integrated as.
  • the first security module 120 includes a receiver 210, an identifier checker 220, a MAC table 230, a policy inquiry unit 240, a token generator 250, and a transmitter 260. ). These may be implemented in software and stored in a memory of the first security module 120 and executed by a processor, or may be stored in a memory of the first end communication device 110 and executed by a processor of the first end communication device 110. May be implemented.
  • the receiver 210 receives a packet destined for the second terminal communication device 130 from the first terminal communication device 110. This packet contains the public IP address of the second end communication device 130 as the destination IP address.
  • the identifier checker 220 transmits the destination IP address included in the packet to the IP address management apparatus 170 and requests an ID of the second security module 140 corresponding to the destination IP address. Since the IP address of the second terminal communication device 130 and the ID of the second security module 140 is matched and stored in the IP address management device 170, the identifier check unit 220 is the second security module 140 Receive the ID of. In addition, the identifier confirming unit 220 confirms the ID corresponding to the unique information of the first terminal communication device 110, for example, the MAC address, in the MAC table 230. Therefore, the identifier confirming unit 220 may secure the ID of the first terminal communication device 110 as the source and the ID of the second security module 140 as the destination. Meanwhile, the identifier checker 220 may check the ID of the first security module 120 in its own memory.
  • the policy inquiry unit 240 may include an ID of the first terminal communication device 110 confirmed by the identifier confirmation unit 220, an ID of the first security module 120, and an ID of the second security module 140. The pair is transmitted to the policy management apparatus 150 to query the policy, and receive a policy inquiry result for the policy query from the policy management apparatus 150.
  • the policy storage device 160 stores bidirectional connection information based on the security modules 120 and 140.
  • the bidirectional connection information based on the first security module 120 may include an ID of the first end communication device 110, an ID of the first security module 120, and a second security module 140. Since it is a pair of IDs, the policy inquiry unit 240 receives a policy inquiry result of the communication connection possible.
  • the token generator 250 generates a token to be inserted into the packet. First, the token generator 250 transmits a pair of IDs identical to the pair of IDs used when the policy inquiry unit 240 makes a policy query to the policy management device 150 to the policy management device 150. Request a seed and receive a token seed from the policy management device 150. The token generation unit 250 generates a nonce and a timestamp, which are random values for preventing reuse of the token, and then generates a token as follows. The token may be set to be valid within a certain period or only within a certain number of times of use.
  • Token sign (hmac (seed xor Nonce, Payload) ⁇ Nonce ⁇ Timestamp ⁇ ID)
  • hmac seed xor Nonce, Payload
  • ID is the ID of the first end communication device 110
  • sign means to sign with the private key of the first security module 120.
  • the transmitter 260 inserts the token generated by the token generator 250 into a packet and transmits the token to the second end communication device 130 through the communication network 180.
  • the second security module 140 includes a receiver 310, an identifier checker 320, a MAC table 330, a token verifier 340, a policy queryer 350, and a transmitter 360. ). These may be implemented in software and stored in a memory of the second security module 140 and executed by a processor, or may be stored in a memory of the second end communication device 130 and executed by a processor of the second end communication device 130. May be implemented.
  • the receiver 310 receives a packet in which a token is inserted from the first security module 120 on the side of the first end communication device 110.
  • the packet includes the IP address of the first end communication device 110 as the source IP address and the IP address of the second end communication device 130 as the destination IP address.
  • the identifier checker 320 transmits the source IP address included in the packet to the IP address management apparatus 170 and requests the ID of the first security module 120 corresponding to the source IP address. Since the IP address management apparatus 170 matches and stores the IP address of the first end communication device 110 with the ID of the first security module 120, the identifier check unit 320 may include the first security module 120. Receive the ID of.
  • the identifier confirming unit 320 confirms, in the MAC table 330, the ID corresponding to the unique information of the second end communication device 130 as the destination, for example, the MAC address. Therefore, the identifier check unit 320 may secure the ID of the second end communication device 130 as the destination and the ID of the first security module 120 as the source. Meanwhile, the identifier check unit 320 may check the ID of the second security module 140 in its own memory.
  • the token verification unit 340 verifies the token inserted in the packet received by the reception unit 310. First, the token verification unit 340 requests the token seed used by the transmitter from the policy management apparatus 150. The token verification unit 340 extracts the ID of the first end communication device 110 inserted in the plain text from the token inserted in the received packet, the ID of the first end communication device 110, and the identifier. The ID of the first security module 120 and the ID of the second security module 140 confirmed by the verification unit 320 are transmitted to the policy management device 150 to request a token seed. Since the token seed is requested by the pair of IDs used by the transmitter, the token verification unit 340 receives the same token seed used by the transmitter from the policy management apparatus 150.
  • the token verification unit 340 also receives the public key of the first security module 120 from the policy management device 150.
  • the token verification unit 340 generates a token using a nonce, a timestamp, and an ID of the first end communication device 110 inserted into the token in plain text, and the received token seed to generate the packet. Check if it is the same as the token inserted in.
  • the token verification unit 340 verifies the signature of the token with the received public key of the first security module 120. The token verification unit 340 discards the packet when the token verification fails.
  • the policy inquiry unit 350 identifies the ID of the first security module 120 and the second security module 140 of the identifier verification unit 320.
  • the ID and the pair of IDs of the second end communication device 130 are transmitted to the policy management device 150 to query the policy, and receive a policy inquiry result for the policy query from the policy management device 150.
  • the policy storage device 160 stores bidirectional connection information based on the security modules 120 and 140.
  • the bidirectional connection information based on the second security module 140 may include an ID of the first security module 120, an ID of the second security module 140, and a second end communication device 130. Since it is a pair of IDs, the policy inquiry unit 350 receives a policy inquiry result capable of communication connection.
  • the transmitter 360 removes the token inserted in the packet and transmits the token to the second end communication device 130.
  • first and second security modules 120 and 140 are separately described in FIGS. 2 and 3, it should be understood that the functions described with reference to FIGS. 2 and 3 are included in one security module.
  • FIG. 4 is a flowchart of a method for transmitting a packet from a first end communication device 110 to a second end communication device 130 in the communication system of FIG. 1.
  • the first security module 120 receives a packet destined for the second end communication device 130 from the first end communication device 110.
  • This packet contains the public IP address of the second end communication device 130 as the destination IP address.
  • the first security module 120 transmits the destination IP address included in the packet to the IP address management apparatus 170 and requests an ID of the second security module 140 corresponding to the destination IP address. do.
  • step S403 since the IP address of the second end communication device 130 and the ID of the second security module 140 are matched and stored in the IP address management device 170, the first security module 120 includes the first security module 120. 2 The ID of the security module 140 is received.
  • the first security module 120 also checks, in the MAC table 230, an ID corresponding to the unique information of the first terminal communication device 110 as the origin, for example, a MAC address. Accordingly, the first security module 120 may secure the ID of the first terminal communication device 110 as the source and the ID of the second security module 140 as the destination. Meanwhile, the first security module 120 may check its ID in its own memory.
  • the first security module 120 may pair the identified ID of the first terminal communication device 110, the ID of the first security module 120, and the ID of the second security module 140.
  • the query is transmitted to the policy management device 150 to query the policy.
  • the first security module 120 receives a policy inquiry result for a policy query from the policy management device 150.
  • the policy storage device 160 stores bidirectional connection information based on the security modules 120 and 140.
  • the bidirectional connection information based on the first security module 120 may include an ID of the first end communication device 110, an ID of the first security module 120, and a second security module 140. ), The first security module 120 receives the policy inquiry result of the communication connection possible.
  • the first security module 120 may include a pair of IDs identical to a pair of IDs used when a policy query is made to the policy management apparatus 150 to generate a token to be inserted into a packet. To request the token seed.
  • the first security module 120 receives a token seed from the policy management apparatus 150.
  • the first security module 120 In operation S409, the first security module 120 generates a nonce and a timestamp that are random values for preventing reuse of the token, and then generates a token as follows.
  • Token sign (hmac (seed xor Nonce, Payload) ⁇ Nonce ⁇ Timestamp ⁇ ID)
  • hmac seed xor Nonce, Payload
  • ID is the ID of the first end communication device 110
  • sign means to sign with the private key of the first security module 120.
  • the first security module 120 inserts the generated token into a packet and transmits the generated token to the second end communication device 130 through the communication network 180.
  • FIG. 5 is a flowchart of a method of receiving, at the second end communication device 130, a packet transmitted from the first end communication device 110 in the communication system of FIG. 1.
  • the second security module 140 receives a packet in which a token is inserted.
  • the packet includes the IP address of the first end communication device 110 as the source IP address and the IP address of the second end communication device 130 as the destination IP address.
  • the second security module 140 transmits the source IP address included in the packet to the IP address management device 170 and requests the ID of the first security module 120 corresponding to the source IP address. . Since the IP address of the first terminal communication device 110 and the ID of the first security module 120 are matched and stored in the IP address management device 170, the second security module 140 may include the first security module 120. ) ID.
  • the second security module 140 checks, in the MAC table 330, the ID corresponding to the unique information, for example, the MAC address, of the second terminal communication device 130 as the destination. Accordingly, the second security module 140 may secure the ID of the second end communication device 130 as the destination and the ID of the first security module 120 as the source side. Meanwhile, the second security module 140 may check the ID of the second security module 140 in its own memory.
  • the second security module 140 requests the token seed used by the sender to the policy management apparatus 150 to verify the token inserted in the packet. Specifically, the second security module 140 extracts the ID of the first end communication device 110 inserted in the plain text from the token inserted in the received packet, and the ID of the first end communication device 110. The ID of the first security module 120 and the pair of IDs of the second security module 140 are transmitted to the policy management device 150 to request a token seed.
  • step S506 since the token seed is requested by the pair of IDs used at the transmitting side, the second security module 140 receives the same token seed used at the transmitting side from the policy management apparatus 150. At the same time, the token verification unit 340 also receives the public key of the first security module 120 from the policy management device 150.
  • the second security module 140 uses the nonce, timestamp, and ID of the first end communication device 110 inserted into the token in plain text and the received token seed. Generates and checks whether it is the same as the token inserted in the packet. In addition, the token verification unit 340 verifies the signature of the token with the received public key of the first security module 120. The token verification unit 340 discards the packet when the token verification fails.
  • the second security module 140 may verify the ID of the first security module 120, the ID of the second security module 140, and the second terminal communication device 130. The pair of IDs are sent to the policy management device 150 to query the policy.
  • the second security module 140 receives a policy inquiry result for the policy query from the policy management apparatus 150.
  • the policy storage device 160 stores bidirectional connection information based on the security modules 120 and 140.
  • the bidirectional connection information based on the second security module 140 may include an ID of the first security module 120, an ID of the second security module 140, and a second end communication device 130. ), The second security module 140 receives the policy inquiry result of the communication connection possible.
  • the second security module 140 removes the token inserted in the packet when the policy inquiry result of the communication connection is received. In operation S511, the second security module 140 transmits the packet from which the token is removed to the second end communication device 130.
  • the policy management device 150 may include a memory, a memory controller, one or more processors (CPUs), peripheral interfaces, input / output (I / O) subsystems, display devices, input devices, and communication circuits. These components communicate via one or more communication buses or signal lines. These various components may be implemented in hardware, software or a combination of both hardware and software, including one or more signal processing and / or application specific integrated circuits.
  • the memory may include fast random access memory, and may also include one or more magnetic disk storage devices, nonvolatile memory such as flash memory devices, or other nonvolatile semiconductor memory devices.
  • the memory is a storage device located remote from one or more processors, such as RF circuitry, the Internet, an intranet, a local area network (LAN), a wide area network (WLAN), a storage area network (SAN), etc. Or network attached storage that is accessed through a communication network (not shown), such as a suitable combination thereof. Access to memory by other components of the device, such as processors and peripheral interfaces, may be controlled by a memory controller.
  • the peripheral interface connects the device's input and output peripherals with the processor and memory.
  • One or more processors execute a set of instructions stored in various software programs and / or memories to perform various functions for the system and process the data.
  • peripheral interfaces, processors and memory controllers may be implemented on a single chip such as a chip. In some other embodiments, they may be implemented in separate chips.
  • the I / O subsystem provides an interface between the input and output peripherals of peripheral devices such as display devices and input devices.
  • the display device may use a liquid crystal display (LCD) technology or a light emitting polymer display (LPD) technology, and the display device may be a touch display such as a capacitive type, a resistive type, or an infrared type.
  • LCD liquid crystal display
  • LPD light emitting polymer display
  • a processor is a processor configured to perform operations associated with a system and to perform instructions, for example, using instructions retrieved from memory to control the reception and manipulation of input and output data between components of the system.
  • the software component may be loaded (installed) with an operating system, a graphics module (instruction set), and a program for performing an operation for the present invention.
  • the operating system may be, for example, a built-in operating system such as Darwin, RTXC, LINUX, UNIX, OSX, WINDOWS or VxWorks, Android, iOS, etc., and may be a general system task (e.g., memory management, Storage devices control, power management, etc.), and various software components and / or devices that control and manage and facilitate communication between the various hardware and software components.
  • a built-in operating system such as Darwin, RTXC, LINUX, UNIX, OSX, WINDOWS or VxWorks, Android, iOS, etc.
  • a general system task e.g., memory management, Storage devices control, power management, etc.
  • various software components and / or devices that control and manage and facilitate communication between the various hardware and software components.
  • the communication circuit may include an Ethernet communication circuit and an RF circuit.
  • the Ethernet communication circuit performs wired communication, and the RF circuit transmits and receives electromagnetic waves.
  • RF circuitry converts electrical signals into electromagnetic waves and vice versa and communicates with communications networks, other mobile gateways, and communications devices through the electromagnetic waves.
  • RF circuitry may include, for example, well-known circuits for performing these functions, including but not limited to antenna systems, RF transceivers, one or more amplifiers, tuners, one or more oscillators, digital signal processors, CODEC chipsets, memories, and the like. Can be.
  • the RF circuitry may communicate with other devices by cellular telephone networks, wireless LANs and / or wireless networks such as metropolitan area networks (MAN), and near field communications.
  • MAN metropolitan area networks
  • the receiver 610, the identifier manager 620, the connection relationship information DB 630, the service group identifier 640, the service group information DB 650, the terminal device manager 660, The policy manager 670 is included.
  • the receiver 610, the identifier manager 620, the service group identifier 640, the terminal device manager 660, and the policy manager 670 may be implemented as a program, stored in a memory, and executed by a processor, or may be executed by hardware. It may be implemented in a combination of software.
  • Receiving unit 610 when the security module (120, 140) is communicably connected to the end communication device (110, 130) to operate, their ID and security module (120, 140) from the security module (120, 140) Unique information of the terminal communication device (110, 130) connected to, for example, IP address or MAC address. For example, it receives its ID and the MAC address of the first end communication device 110 from the first security module 120.
  • the second security module 140 receives its ID and the IP address of the second end communication device 130.
  • the identifier manager 620 assigns an ID to the terminal communication apparatuses 110 and 130 without an ID, and generates ID connection relationship information between the terminal communication apparatuses 110 and 130 and the security modules 120 and 140, thereby connecting the connection relation information.
  • the identifier manager 620 receives the second terminal communication device 130.
  • a temporary ID is assigned to the connection relationship information and the connection relationship information obtained by matching the ID of the second security module 140 with the ID of the second terminal communication device 130 is stored in the connection relationship information DB 630.
  • the identifier manager 620 matches a pair of IDs of the terminal communication apparatuses 110 and 130 and unique information (MAC address or IP address, etc.) of the terminal communication apparatuses 110 and 130. It transmits to the security module (120, 140) connected to 130. Therefore, the first security module 120 stores a pair of ID and unique information of the first end communication device 110, and the second security module 120 stores the ID and unique information of the second end communication device 130. The pair is stored.
  • the identifier manager 620 transmits a pair of IP addresses, which are unique information of the terminal communication devices 110 and 130, and IDs of the security modules 120 and 140, to the IP address management device 170. That is, the pair of the IP address of the first terminal communication device 110 and the ID of the first security module 120, and the pair of the IP address of the second terminal communication device 130 and the ID of the second security module 140 It is transmitted to the IP address management device 170 and stored.
  • the service group identification unit 640 identifies the service group of the terminal communication devices 110 and 130 connected to the security modules 120 and 140 with reference to the information stored in the service group information DB 650.
  • the service group identification unit 640 receives the unique information of the terminal communication devices 110 and 130 from the receiving unit 610, for example, an IP address or a MAC address, and uses the received unique information to provide service group information.
  • the service group information DB 650 stores a corresponding service group name for each service group, a list of MAC addresses or IP addresses of end communication devices 110 and 130 belonging to the service group. For example, if Samsung provides IoT service, the IP address of the platform server providing the IoT service and the MAC address of IoT terminals manufactured and sold by Samsung providing the IoT service are service group information DB 650. Are stored in.
  • the end device manager 660 checks the correspondence of the end communication devices 110 and 130 using the service group information of the end communication devices 110 and 130 checked by the service group identification unit 640.
  • the terminal device manager 660 receives IDs of the terminal communication devices 110 and 130 having the corresponding relationship from the identifier manager 620 and generates connection relationship information matching the received IDs.
  • the terminal device manager 660 may store ID connection relationship information of the generated terminal communication devices 110 and 130 in the connection relationship information DB 630.
  • the terminal device management unit 660 if the service group information of any one of the terminal communication device (110, 130) (eg, 110) is received from the service group identification unit 640, the identifier management unit The ID of the corresponding terminal communication device 110 received from 620 is matched with the corresponding service group of the service group information DB 650 and stored.
  • the terminal device management unit 660 receives the service group information of the other terminal communication device 130 from the service group identification unit 640, the terminal device manager 660 terminates the service group information DB 650 using the received service group information.
  • the terminal communication device 110 is matched with the ID of the received end communication device 110 and the ID of the end communication device 130 received from the identifier manager 620. 130 may obtain ID connection relationship information.
  • the policy manager 670 confirms ID connection relationship information between the terminal communication devices 110 and 130 and the security modules 120 and 140 stored in the connection relationship information DB 630 and the terminal device manager 660. ID-based bidirectional based on the security modules 120 and 140 by using correspondence relations of the terminated communication devices 110 and 130, specifically, ID connection relationship information between the end communication devices 110 and 130. The connection information is generated and transmitted to the policy storage device 160 to be stored. In detail, the policy manager 670 may use the ID connection relationship information between the end communication devices 110 and 130, and the end communication devices 110 and 130 and the security modules in the connection relationship information DB 630.
  • the ID-based end communication device 110. 130 combine the full path between them.
  • the policy manager 670 may store, for example, bidirectional connection information based on the first security module 120 and bidirectional connection information based on the second security module 140 in the entire path. 160) to save.
  • the ID-based bidirectional connection information based on the first security module 120 may include an ID of the first end communication device 110, an ID of the first security module 120, and a second security module ( Connection information consisting of an ID of 140).
  • the ID-based bidirectional connection information based on the second security module 140 may include an ID of the second end communication device 130, an ID of the second security module 140, and an ID of the first security module 120. Connection information consisting of.
  • FIG. 7 is a flowchart illustrating an operation of the policy management apparatus 150 in the end-to-end communication system of FIG. 1.
  • the policy management device 150 In operation 701, the policy management device 150 generates connection relationship information in which the ID of the first end communication device 110 matches the ID of the first security module 120.
  • the policy management device 150 is a temporary ID for the first end communication device 110 when its ID and IP address or MAC address of the first end communication device 110 are received from the first security module 120. And stores the connection relationship information, which matches the ID of the first security module 120 and the ID of the first end communication device 110, in the connection relationship information DB 630.
  • the policy management apparatus 150 In operation 702, the policy management apparatus 150 generates connection relationship information in which the ID of the second end communication device 130 matches the ID of the second security module 140.
  • the policy management device 150 when its ID and IP address or MAC address of the second end communication device 130 are received from the second security module 140, the temporary management ID to the second end communication device 130. And stores the connection relationship information in which the ID of the second security module 140 matches the ID of the second terminal communication device 130 in the connection relationship information DB 630.
  • the policy management device 150 may include service group information of the end communication devices including the first and second end communication devices 110 and 130, and the service group information of the first and second end communication devices 110 and 130.
  • the corresponding relationship between the first end communication device 110 and the second end communication device 130 is checked based on the unique information, for example, an IP address or a MAC address.
  • the policy management apparatus 150 may use the service group information DB 650 by using unique information of the terminal communication apparatuses 110 and 130 received from the security modules 120 and 140, for example, an IP address or a MAC address. Check the corresponding service group information in to make sure it is the same.
  • the policy management device 150 generates ID connection relationship information between the terminal communication devices 110 and 130 for which the corresponding relationship is confirmed.
  • the policy management apparatus 150 checks the service group information using the IP address or the MAC address of the first end communication device 110, and then checks the service group information of the first end communication device 110. Match ID and save. Further, the policy management device 150 inquires the ID of the first end communication device 110 matched to the service group information by using the IP address or the MAC address of the second end communication device 130, and then the end communication devices. Generate ID connection relationship information between (110, 130).
  • the policy management device 150 includes ID connection relationship information between the terminal communication devices 110 and 130 and the security modules 120 and 140 stored in steps S701 and S702, and the terminal checked in step S703.
  • ID-based bidirectional connection information based on each security module 120 and 140 is generated and stored in the policy storage device 160, for example, a blockchain. do.
  • the policy management apparatus 150 combines the entire paths between the end communication devices 110 and 130, and then connects the bidirectional connection information and the second security module 140 based on the first security module 120 in the entire path.
  • the bidirectional connection information based on the reference is transmitted to the policy storage device 160 and stored.
  • the ID-based bidirectional connection information based on the first security module 120 may include an ID of the first end communication device 110, an ID of the first security module 120, and a second security module ( Connection information consisting of an ID of 140).
  • the ID-based bidirectional connection information based on the second security module 140 may include an ID of the second end communication device 130, an ID of the second security module 140, and an ID of the first security module 120. Connection information consisting of.
  • FIG. 8 is a diagram illustrating communication between an IoT terminal and an IoT service server as an embodiment of the end-to-end communication system of FIG. 1.
  • an IoT terminal is a so-called AI speaker having a microphone and a speaker, which receives a voice request from a user, transmits it to an IoT service server, and receives and outputs a response received from the IoT service server.
  • the IoT service server is a device that provides an artificial voice assistant service and recognizes and analyzes voice to provide a service.
  • the IoT terminal 810 may be the first end communication device 110 in the embodiment referring to FIG. 1, and the IoT service server 830 may be a second embodiment in the embodiment referring to FIG. 1.
  • the first security module 120 may be connected to the IoT terminal 810 in the form of a physical adapter, or may be implemented in software and installed and operated in the IoT terminal 810.
  • the gateway 820 may be a router, for example.
  • the gateway 820 is assigned a public IP address and assigns a private IP address to the plurality of IoT terminals 810.
  • the IoT terminal 810 communicates with the IoT service server 830 via the gateway 820 and the internet 840.
  • the policy management device 150 assigns a temporary ID to the IoT service server 830 to provide a second security module.
  • the connection relationship with the ID of 140 is set.
  • the policy management device 150 assigns a temporary ID to the IoT terminal 810 to establish a connection relationship with the ID of the first security module 120. Set it.
  • the policy management apparatus 150 determines that they belong to the same service group by using the MAC address of the IoT terminal 810 and the IP address of the IoT service server 830, and then the IoT service server 830 and the second security module ( Using the ID connection relationship information between the 140 and the ID connection relationship information between the IoT terminal 810 and the first security module 120, generate bidirectional connection information based on the security modules 120 and 140 to store the policy. Stored in device 160.
  • FIG. 9 is a flowchart illustrating a method of generating ID connection relationship information between an IoT service server and a second security module in the system of FIG. 8.
  • the second security module 140 is communicatively connected to the IoT service server 830.
  • the communicable connection includes a physical connection or a software connection.
  • the second security module 140 collects the public IP address of the IoT service server 830 and transmits the collected public IP address and its ID 1 to the policy management device 150.
  • step S903 the policy management device 150 gives the IoT service server 830 a temporary ID 2 .
  • the policy management apparatus 150 stores an ID connection relationship between the second security module 140 and the IoT service server 830, that is, (ID 1 , ID 2 ).
  • the policy management apparatus 150 checks the service group using the public IP address of the IoT service server 830. For example, it confirms that it is an IoT service of Samsung Electronics.
  • the policy management apparatus 150 matches and stores ID 2 of the IoT service server 830 in the corresponding service group.
  • FIG. 10 is a flowchart illustrating a method of setting a connection policy between an IoT terminal and an IoT service server in the system of FIG. 8, and is a flowchart that operates after the procedure described with reference to FIG. 9.
  • the first security module 120 is communicatively connected to the IoT terminal 810.
  • the communicable connection includes a physical connection or a software connection.
  • the first security module 120 collects the MAC address of the IoT terminal 810 and transmits the collected MAC address and its ID 3 to the policy management device 150.
  • step S1003 the policy management device 150 assigns a temporary ID 4 to the IoT terminal 810.
  • the policy management apparatus 150 stores an ID connection relationship between the first security module 120 and the IoT terminal 810, that is, (ID 3 , ID 4 ).
  • the policy management apparatus 150 checks the service group using the MAC address of the IoT terminal 810. For example, confirm that it is an IoT terminal of Samsung Electronics.
  • the policy management apparatus 150 may identify an ID between the IoT terminal 810 and the IoT service server 830. Generates connection relationship information ID2: ID 4 .
  • the policy management apparatus 150 may use the ID connection relationship information ID2: ID 4 between the IoT terminal 810 and the IoT service server 830 to form the IoT service server 830 and the second security module.
  • the ID connection relationship information between the 140 and the ID connection relationship information between the IoT terminal 810 and the first security module 120 are checked, and based on the ID connection between the IoT terminal 810 and the IoT service server 830. Combine the full path.
  • the ID based full path is (ID 2 : ID 1 : ID 3 : ID 4 ).
  • the policy management apparatus 150 In operation S1008, the policy management apparatus 150 generates bidirectional connection information based on the security modules 120 and 140 based on the ID-based full path and stores the bidirectional connection information in the policy storage device 160.
  • the ID-based bidirectional connection information based on the first security module 120 is (ID 4 , ID 3 , ID 1 ).
  • the ID-based bidirectional connection information based on the second security module 140 is (ID 3 , ID 1 , ID 2 ).
  • the method of the present invention as described above may be implemented as a program and stored in a recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.) in a computer-readable form. Since this process can be easily implemented by those skilled in the art will not be described in more detail.
  • a recording medium CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.

Abstract

일 측면에 따른 종단 통신 장치에 통신 가능하게 연결되어 종단 간 통신에 보안을 제공하는 보안 장치는, 목적지 IP 주소를 포함하는 패킷을 수신하고, IP 주소와 제 1 식별자 간의 매칭 정보를 저장하는 IP 주소 관리 장치로 상기 목적지 IP 주소에 대응하는 제 1 식별자를 요청하여 수신하며, 상기 종단 통신 장치의 고유 정보와 제 2 식별자의 매칭 정보를 저장하는 테이블에서, 상기 종단 통신 장치의 제 2 식별자를 확인하고, 상기 제 1 식별자, 상기 제 2 식별자 및 상기 보안 장치의 제 3 식별자를 정책 관리 장치로 전송하여 식별자 기반의 정책을 질의하고 상기 정책 관리 장치로부터 정책 조회 결과를 수신하며, 상기 정책 조회 결과에 기초하여 상기 패킷을 다른 종단 통신 장치로 전송한다.

Description

종단 간 통신에 보안을 제공하기 위한 장치 및 방법
본 출원은 2018년 07월 03일에 출원된 한국 특허 출원번호 제10-2018-0077305호에 대한 우선권주장출원으로서, 해당 출원의 명세서 및 도면에 개시된 모든 내용은 인용에 의해 본 출원에 원용된다.
본 발명은 IoT(Internet of Things) 기술에 관한 것으로서, 보다 구체적으로 IoT 단말과 IoT 서비스 서버 등과 같은 종단 통신 장치 간의 통신에 보안을 제공하기 위한 장치 및 방법에 관한 것이다.
인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 네트워크에서, 사물 등 분산된 구성 요소들 간에 정보를 주고받아 처리하는 IoT(Internet of Things, 사물인터넷) 네트워크로 진화하고 있다. IoT(Internet of Things)란, 통신 가능한 모든 사물들을 네트워크에 연결하여 상호 통신 수행이 가능한 개념을 의미한다. 시스템적으로 인지할 수 있는 모든 객체인 Things는 근거리 및 원거리 통신 기능을 탑재하고, 센서 등을 통해 데이터를 생산할 수 있다. IoT를 구현하기 위해서, 센싱 기술, 유무선 통신 및 네트워크 인프라, 서비스 인터페이스 기술 및 보안 기술과 같은 기술 요소들이 요구된다. 최근에는 사물 간의 연결을 위한 센서 네트워크(sensor network), 사물 통신(Machine to Machine, M2M), MTC(Machine Type Communication)등의 기술이 연구되고 있다. 이러한 IoT 서비스는 퍼블릭 네트워크(Public Network) 환경에서 제공된다. 즉 누구나 언제든지 IoT 네트워크에 접속할 수 있다. 이와 같이 IoT 서비스는 퍼블릭 네트워크 환경에서 제공되기 때문에 IoT 디바이스(IoT 단말이나 IoT 서비스 서버)는 퍼블릭 네트워크에 노출되어 보안이 취약할 수 있다.
본 발명은 상술한 문제점을 해결하기 위해 제안된 것으로, IoT 단말과 IoT 서비스 서버 등과 같은 종단 통신 장치 간의 통신에서 식별자(ID : Identifier) 기반의 정책을 기초로 보안을 제공하기 위한 장치 및 방법을 제공하는 데 목적이 있다.
일 측면에 따른 종단 통신 장치에 통신 가능하게 연결되어 종단 간 통신에 보안을 제공하는 보안 장치는, 통신 회로; 프로세서; 및 상기 프로세서가 실행 가능한 적어도 하나의 명령어를 포함하는 메모리를 포함하고, 상기 프로세서는, 목적지 IP 주소를 포함하는 패킷을 수신하고, IP 주소와 제 1 식별자 간의 매칭 정보를 저장하는 IP 주소 관리 장치로 상기 목적지 IP 주소에 대응하는 제 1 식별자를 요청하여 수신하며, 상기 종단 통신 장치의 고유 정보와 제 2 식별자의 매칭 정보를 저장하는 테이블에서, 상기 종단 통신 장치의 제 2 식별자를 확인하고, 상기 제 1 식별자, 상기 제 2 식별자 및 상기 보안 장치의 제 3 식별자를 정책 관리 장치로 전송하여 식별자 기반의 정책을 질의하고 상기 정책 관리 장치로부터 정책 조회 결과를 수신하며, 상기 정책 조회 결과에 기초하여 상기 패킷을 다른 종단 통신 장치로 전송한다.
상기 프로세서는, 상기 정책 관리 장치로 토큰 시드를 요청하여 수신하고, 수신된 토큰 시드를 이용하여 토큰을 생성하며, 상기 패킷에 상기 토큰을 삽입하여 전송할 수 있다.
상기 프로세서는, 토큰 시드를 요청시, 상기 제 1 식별자, 상기 제 2 식별자 및 상기 제 3 식별자를 전송할 수 있다.
상기 프로세서는, 넌스(Nonce), 상기 패킷의 페이로드, 타임스탬프, 상기 제 2 식별자, 상기 토큰 시드를 이용하여 토큰을 생성할 수 있다.
상기 프로세서는, 상기 제 1 식별자, 상기 제 2 식별자 및 상기 제 3 식별자와, 상기 정책 관리 장치에 저장된 상기 보안 장치를 기준으로 한 식별자 기반의 양방향 연결 정보 간의 비교 결과에 따른 정책 조회 결과를 상기 정책 관리 장치로부터 수신할 수 있다.
상기 제 1 식별자는, 상기 다른 종단 통신 장치에 통신 가능하게 연결된 다른 보안 장치의 식별자일 수 있다.
상기 정책 관리 장치에 저장된 상기 보안 장치를 기준으로 한 식별자 기반의 양방향 연결 정보는, 상기 보안 장치의 식별자와, 상기 보안 장치에 통신 가능하게 연결된 통신 계층상 그 하위의 종단 통신 장치의 식별자, 그리고 그 하위의 종단 통신 장치와 종단 통신이 허용된 다른 종단 통신 장치에 통신 가능하게 연결된 통신 계층상 그 상위의 다른 보안 장치의 식별자로 이루어질 수 있다.
상기 프로세서는, 상기 종단 통신 장치에 상기 보안 장치가 최초에 통신 가능하게 연결될 때 상기 보안 장치의 식별자와 상기 종단 통신 장치의 고유 정보를 상기 정책 관리 장치로 전송하여 식별자 기반의 정책 설정을 요청할 수 있다.
상기 IP 주소 관리 장치에 저장되는 IP 주소 및 제 1 식별자 간의 매칭 정보는, 상기 정책 관리 장치에서 식별자 기반의 정책이 설정될 때 상기 정책 관리 장치로부터 수신되어 저장될 수 있다.
다른 측면에 따른 종단 통신 장치에 통신 가능하게 연결되어 종단 간 통신에 보안을 제공하는 보안 장치는, 통신 회로; 프로세서; 및 상기 프로세서가 실행 가능한 적어도 하나의 명령어를 포함하는 메모리를 포함하고, 상기 프로세서는, 출발지 IP 주소를 포함하는 패킷을 수신하고, IP 주소와 제 1 식별자 간의 매칭 정보를 저장하는 IP 주소 관리 장치로 상기 출발지 IP 주소에 대응하는 제 1 식별자를 요청하여 수신하며, 상기 종단 통신 장치의 고유 정보와 제 2 식별자의 매칭 정보를 저장하는 테이블에서, 상기 종단 통신 장치의 제 2 식별자를 확인하고, 상기 제 1 식별자, 상기 제 2 식별자 및 상기 보안 장치의 제 3 식별자를 정책 관리 장치로 전송하여 식별자 기반의 정책을 질의하고 상기 정책 관리 장치로부터 정책 조회 결과를 수신하며, 상기 정책 조회 결과에 기초하여 상기 패킷을 상기 종단 통신 장치로 전송한다.
상기 패킷은, 상기 패킷을 전송한 측에서 삽입한 토큰을 포함하고, 상기 프로세서는, 상기 정책 관리 장치로 상기 패킷을 전송한 측에서 사용한 토큰 시드를 요청하여 수신하고, 수신된 토큰 시드를 이용하여 상기 토큰을 검증하며, 토큰 검증 성공시에 상기 패킷에 삽입된 상기 토큰을 제거할 수 있다.
상기 프로세서는, 토큰 시드를 요청시, 상기 토큰에 평문으로 포함된 상기 패킷을 전송한 종단 통신 장치의 식별자와, 상기 제 1 식별자와, 상기 제 3 식별자를 상기 정책 관리 장치로 전송할 수 있다.
상기 프로세서는, 상기 제 1 식별자, 상기 제 2 식별자 및 상기 제 3 식별자와, 상기 정책 관리 장치에 저장된 상기 보안 장치를 기준으로 한 식별자 기반의 양방향 연결 정보 간의 비교 결과에 따른 정책 조회 결과를 상기 정책 관리 장치로부터 수신할 수 있다.
상기 제 1 식별자는, 상기 패킷을 전송한 종단 통신 장치에 통신 가능하게 연결된 다른 보안 장치의 식별자일 수 있다.
또 다른 측면에 따른 종단 통신 장치에 통신 가능하게 연결된 보안 장치에서 종단 간 통신에 보안을 제공하는 방법은, 목적지 IP 주소를 포함하는 패킷을 수신하는 단계; IP 주소와 제 1 식별자 간의 매칭 정보를 저장하는 IP 주소 관리 장치로 상기 목적지 IP 주소에 대응하는 제 1 식별자를 요청하여 수신하는 단계; 상기 종단 통신 장치의 고유 정보와 제 2 식별자의 매칭 정보를 저장하는 테이블에서, 상기 종단 통신 장치의 제 2 식별자를 확인하는 단계; 상기 제 1 식별자, 상기 제 2 식별자 및 상기 보안 장치의 제 3 식별자를 정책 관리 장치로 전송하여 식별자 기반의 정책을 질의하고 상기 정책 관리 장치로부터 정책 조회 결과를 수신하는 단계; 및 상기 정책 조회 결과에 기초하여 상기 패킷을 다른 종단 통신 장치로 전송하는 단계를 포함한다.
또 다른 측면에 따른 종단 통신 장치에 통신 가능하게 연결된 보안 장치에서 종단 간 통신에 보안을 제공하는 방법은, 출발지 IP 주소를 포함하는 패킷을 수신하는 단계; IP 주소와 제 1 식별자 간의 매칭 정보를 저장하는 IP 주소 관리 장치로 상기 출발지 IP 주소에 대응하는 제 1 식별자를 요청하여 수신하는 단계; 상기 종단 통신 장치의 고유 정보와 제 2 식별자의 매칭 정보를 저장하는 테이블에서, 상기 종단 통신 장치의 제 2 식별자를 확인하는 단계; 상기 제 1 식별자, 상기 제 2 식별자 및 상기 보안 장치의 제 3 식별자를 정책 관리 장치로 전송하여 식별자 기반의 정책을 질의하고 상기 정책 관리 장치로부터 정책 조회 결과를 수신하는 단계; 및 상기 정책 조회 결과에 기초하여 상기 패킷을 상기 종단 통신 장치로 전송하는 단계를 포함한다.
일 실시예에서, 네트워크 구조에 따라 변동성이 높은 IP 주소 기반의 정책을 탈피하여 식별자(ID : Identifier) 기반 정책을 이용함으로써 퍼블릭 네트워크를 통한 IoT 서비스의 보안을 높인다.
일 실시예에서, 보안 모듈을 기준으로 한 식별자 기반의 양방향 연결 정보를 정책으로서 기록함으로써 퍼블릭 네트워크를 통한 종단 간(End-To-End) 통신에서 각 종단의 보안 모듈은 그 하위의 종단 통신 장치와 상대방 종단의 보안 모듈만 식별하면 된다. 따라서 종단 통신 장치의 퍼블릭 네트워크를 통한 노출을 최소화함으로써 보안을 강화한다.
일 실시예에서, 종단 통신 장치에 연결되는 보안 모듈에서 송수신되는 패킷에 토큰을 삽입하고 또는 삽입된 토큰을 검증함으로써 종단 통신 장치로 악성 패킷이 수신되는 것을 차단하여 종단 통신 장치에 대한 해킹을 차단할 수 있다.
일 실시예에서, 종단 통신 장치에 보안 모듈을 통신 가능하게 연결하면 종단 통신 장치에 식별자(ID : Identifier)를 할당하고 식별자 기반 정책을 자동으로 설정함으로써 레거시 시스템의 변화 없이 모든 IoT 서비스에 보안을 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 종단(End-to-End) 간 통신 시스템을 나타낸 도면이다.
도 2는 도 1의 제 1 보안 모듈의 블럭도이다.
도 3은 도 1의 제 2 보안 모듈의 블럭도이다.
도 4는 도 1의 통신 시스템에서 제 1 종단 통신 장치에서 제 2 종단 통신 장치로 패킷을 전송하는 방법의 흐름도이다.
도 5는 도 1의 통신 시스템에서 제 1 종단 통신 장치로부터 전송된 패킷을 제 2 종단 통신 장치에서 수신하는 방법의 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 도 1의 정책 관리 장치의 블럭도이다.
도 7은 도 1의 종단(End-to-End) 간 통신 시스템에서 정책 관리 장치의 동작을 설명하는 흐름도이다.
도 8은 도 1의 종단 간 통신 시스템의 실시예로서 IoT 단말과 IoT 서비스 서버 간 통신을 나타낸 도면이다.
도 9는 도 8의 시스템에서 IoT 서비스 서버와 제 2 보안 모듈 간의 ID 연결 관계 정보를 생성하는 방법을 설명하는 흐름도이다.
도 10은 도 8의 시스템에서 IoT 단말과 IoT 서비스 서버 간의 연결 정책을 설정하는 방법을 설명하는 흐름도이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 종단(End-to-End) 간 통신 시스템을 나타낸 도면이다. 도 1을 참조하면, 본 실시예에 따른 종단 간 통신 시스템은, 종단 통신 장치들(110, 130), 보안 모듈들(120, 140), 정책 관리 장치(150), 정책 저장 장치(160) 및 IP 주소 관리 장치(170)를 포함하고 이들은 통신망(180)을 통해 연결된다.
종단 통신 장치들(110, 130)은 통신 경로 상의 끝에 존재하는 통신 장치로서, 예를 들어, 가스 센서, 화재 감지 센서, 카메라, 인공지능 스피커 등의 IoT 단말이나, 이러한 IoT 단말과 통신하여 IoT 서비스를 제공하는 IoT 서비스 서버를 포함한다. IoT 단말은 메모리와 프로세서 및 통신 회로 등을 포함하여 IoT 서비스 서버와 통신할 수 있고, 또는 다른 IoT 단말과 P2P 통신을 할 수 있다. IoT 서비스 서버는 IoT 단말과 연결되어 IoT 단말로부터 주기적으로 상태 정보를 수신하고 또한 IoT 단말의 펌웨어를 업데이트하며 IoT 단말로 콘텐츠 스트리밍 등의 서비스를 제공할 수 있다.
보안 모듈들(120, 140)은 종단 통신 장치들(110, 130)에 통신 가능하게 연결되어 종단 통신 장치(110, 130)를 통신망(180)을 통한 외부 공격으로부터 보호한다. 보안 모듈들(120, 140)은 통신 계층상 종단 통신 장치들(110, 130)의 상위 계층에 위치한다. 보안 모듈들(120, 140)은 물리적인 어댑터 형태로 제작되어 종단 통신 장치(110, 130)에 물리적으로 연결될 수 있다. 이 경우, 보안 모듈들(120, 140)은 메모리 및 프로세서 그리고 통신 회로를 포함할 수 있다. 또는 보안 모듈들(120, 140)은 소프트웨어로 제작되어 종단 통신 장치들(110, 130)의 메모리에 저장되어 실행될 수 있다. 보안 모듈들(120, 140)은 자체 저장소에 다른 보안 모듈과 구별될 수 있는 임의의 식별자(ID : Identifier, 이하에서 ID라 함)가 부여되어 저장된다.
보안 모듈들(120, 140)은, 종단 통신 장치들(110, 130)로부터 수신된 패킷을 외부로 전송할 때, 정책 저장 장치(160)로 정책을 질의하고, 정책 조회 결과에 따라 패킷의 외부로의 전송 여부를 결정한다. 이때 정책은 식별자(ID) 기반의 정책으로서, 보안 모듈(120, 140)을 기준으로 한 양방향 연결 정보이다. 또한, 보안 모듈들(120, 140)은, 외부로부터 종단 통신 장치들(110, 130)로 향하는 패킷이 수신될 때, 마찬가지로 정책 저장 장치(160)로 정책을 질의하고, 정책 조회 결과에 따라 패킷의 내부로의 전송 여부를 결정한다. 이를 위해 보안 모듈들(120, 140)은, 종단 통신 장치들(110, 130)에 최초로 통신 가능하게 연결될 때, 자신의 ID와 종단 통신 장치들(110, 130)의 고유 정보, 예를 들어 IP 주소 또는 MAC 주소를 정책 관리 장치(150)로 전송하여 종단 통신 장치들(110, 130) 간의 연결 정책이 설정되도록 한다.
보안 모듈(120, 140)은, 종단 통신 장치(110, 130)로부터 수신된 패킷을 외부로 전송할 때, 정책 저장 장치(160)로 토큰 시드를 요청하고 정책 저장 장치(160)로부터 수신된 토큰 시드를 이용하여 생성한 토큰을 패킷에 삽입하여 전송한다. 또한, 보안 모듈들(120, 140)은, 외부로부터 종단 통신 장치들(110, 130)로 향하는 패킷이 수신될 때, 정책 저장 장치(160)로 패킷을 전송한 측에서 사용한 토큰 시드를 요청하고, 정책 저장 장치(160)로부터 수신된 토큰 시드를 이용하여 패킷에 포함된 토큰을 검증한다. 보안 모듈들(120, 140)은, 토큰 검증에 성공시에 외부로부터 수신된 패킷에서 토큰을 제거하여 내부의 종단 통신 장치(110, 130)로 전달한다.
정책 관리 장치(150)는, ID 기반의 종단 통신 연결 정책을 정책 저장 장치(160)에 저장한다. 여기서 ID 기반의 종단 통신 연결 정책은 보안 모듈(120, 140)을 기준으로 한 ID 기반의 양방향 연결 정보를 포함한다. 예를 들어, 상기 제 1 보안 모듈(120)을 기준으로 한 ID 기반의 양방향 연결 정보는, 제 1 종단 통신 장치(110)의 ID, 제 1 보안 모듈(120)의 ID 그리고 제 2 보안 모듈(140)의 ID로 이루어진 연결 정보이다. 그리고 제 2 보안 모듈(140)을 기준으로 한 ID 기반의 양방향 연결 정보는, 제 2 종단 통신 장치(130)의 ID, 제 2 보안 모듈(140)의 ID, 제 1 보안 모듈(120)의 ID로 이루어진 연결 정보이다. 정책 관리 장치(150)는, 관리자로부터 상기 ID 기반의 종단 통신 연결 정책을 입력받아 정책 저장 장치(160)에 저장할 수 있다.
또는, 정책 관리 장치(150)는, 상기 ID 기반의 종단 통신 연결 정책을 스스로 설정하여 정책 저장 장치(160)에 저장할 수 있다. 정책 관리 장치(150)는, 종단 통신 장치(110, 130)에 보안 모듈(120, 140)이 통신 가능하게 연결되어 동작할 때, 보안 모듈(120, 140)로부터 자신의 ID와 보안 모듈(120, 140)에 연결된 종단 통신 장치(110, 130)의 고유 정보, 예를 들어, IP 주소나 MAC 주소를 수신한다. 정책 관리 장치(150)는, ID가 없는 종단 통신 장치(110, 130)에 ID를 부여한 후 종단 통신 장치(110, 130)와 보안 모듈(120, 140) 간의 ID 연결 관계 정보를 생성한다. 정책 관리 장치(150)는, 서로 동일한 서비스 그룹에 속하는 종단 통신 장치들(110, 130)을 확인하고, 이들의 보안 모듈(120, 140)들과의 ID 연결 관계 정보를 조합하여 종단 통신 장치들(110, 130) 간의 ID 기반의 전체 경로를 조합한다. 그리고 정책 관리 장치(150)는 전체 경로에서 보안 모듈(120, 140)을 기준으로 한 양방향 연결 정보를 생성하여 정책 저장 장치(160)에 저장한다.
정책 관리 장치(150)는, 상기 ID 기반의 종단 통신 연결 정책을 설정하면서, 종단 통신 장치(110, 130)의 IP 주소와 보안 모듈(120, 140)의 ID 간의 매칭 정보를 IP 주소 관리 장치(170)에 전송하여 저장할 수 있다. 예를 들어, 정책 관리 장치(150)는, 제 1 종단 통신 장치(110)의 IP 주소와 제 1 보안 모듈(120)의 ID 간의 매칭 정보와, 제 2 종단 통신 장치(130)의 IP 주소와 제 2 보안 모듈(140)의 ID 간의 매칭 정보를 IP 주소 관리 장치(170)에 저장한다.
또한, 정책 관리 장치(150)는, 상기 ID 기반의 종단 통신 연결 정책을 설정하면서, 보안 모듈(120, 140)로 그 하위의 종단 통신 장치(110, 130)에 할당한 ID를 전송하여, 보안 모듈(120, 140)이 그 하위의 종단 통신 장치(110, 130)의 ID와 고유 정보(예, MAC 주소, IP 주소)의 매칭 정보를 저장하고 관리하도록 한다. 여기서 그 매칭 정보로서 MAC 테이블을 예로 든다.
정책 저장 장치(160)는 정책 관리 장치(150)에서 생성된 ID 기반의 종단 통신 연결 정책을 수신하여 저장한다. ID 기반의 종단 통신 연결 정책은 보안 모듈(120, 140)을 기준으로 한 ID 기반의 양방향 연결 정보를 포함한다. 정책 저장 장치(160)는 블록체인 네트워크를 구성하는 노드들을 포함한다. 블록체인 네트워크를 구성하는 노드들은 주기적으로 블록을 생성하여 트랜잭션을 기록하여 저장하는데, 본 발명의 실시예에서 트랜잭션은 상기 ID 기반의 종단 통신 연결 정책을 포함한다. 블록체인 네트워크를 구성하는 노드들에서 생성되는 블록들은 체인처럼 연결된 상태로 만들어지며, 각 노드들은 동일한 블록을 공유하고 있어, 블록에 저장된 트랜잭션을 위조하려면 노드들의 상당수를 해킹해야만 한다. 또한 블록에 트랜잭션이 일정 이상 기록되면 노드들은 서로 간의 합의 과정을 거쳐 트랜잭션들이 서로 동일하게 축적되도록 한다. 또한 정책 저장 장치(160)는 패킷을 보내는 송신자 측으로부터 수신되는 ID들의 쌍과 토큰 시드 그리고 송신자 측의 공개키를 매칭하여 저장하고, 패킷을 수신한 수신자 측으로부터 토큰 시드 요청이 수신되면 수신자 측으로부터 수신되는 ID들의 쌍과 기 저장된 ID들의 쌍을 비교하여 일치할 경우 기 저장된 ID들의 쌍에 대응하여 매칭된 토큰 시드 및 공개키를 회신한다.
IP 주소 관리 장치(170)는, 상술한 바와 같이, 종단 통신 장치(110, 130)의 IP 주소와 보안 모듈(120, 140)의 ID 간의 매칭 정보를 저장한다. 관리자로부터 입력받아 저장할 수 있고, 상술한 바와 같이, 정책 관리 장치(150)로부터 수신하여 저장할 수 있다. IP 주소 관리 장치(170)는, 정책 저장 장치(160)와 마찬가지로 블록체인 네트워크를 구성하는 노드들을 포함할 수 있다. IP 주소 관리 장치(170)는 보안 모듈(120, 140)로부터 IP 주소를 수신하면 그 수신된 IP 주소에 대응하는 ID를 회신한다.
도 1을 참조한 실시예에서는 IP 주소 관리 장치(170)와 정책 관리 장치(150)를 구분하여 설명하였으나 여기에 제한되는 것은 아니며 IP 주소 관리 장치(170)는 정책 관리 장치(150)의 하나의 모듈로서 구현되어 통합될 수 있다.
도 2는 도 1의 제 1 보안 모듈(120)의 블럭도이다. 도 2를 참조하면, 제1 보안 모듈(120)은 수신부(210), 식별자 확인부(220), MAC 테이블(230), 정책 조회부(240), 토큰 생성부(250) 및 전송부(260)를 포함한다. 이들은 소프트웨어로 구현되어 제 1 보안 모듈(120)의 메모리에 저장되어 프로세서에 의해 실행될 수 있고, 또는 제 1 종단 통신 장치(110)의 메모리에 저장되어 제 1 종단 통신 장치(110)의 프로세서에 의해 실행될 수도 있다.
수신부(210)는, 제 1 종단 통신 장치(110)로부터 제 2 종단 통신 장치(130)로 향하는 패킷을 수신한다. 이 패킷에는 목적지 IP 주소로서 제 2 종단 통신 장치(130)의 공인 IP 주소를 포함한다.
식별자 확인부(220)는, 상기 패킷에 포함된 목적지 IP 주소를 IP 주소 관리 장치(170)로 전송하여 그 목적지 IP 주소에 대응하는 제 2 보안 모듈(140)의 ID를 요청한다. IP 주소 관리 장치(170)에는 제 2 종단 통신 장치(130)의 IP 주소와 제 2 보안 모듈(140)의 ID가 매칭되어 저장되어 있으므로, 식별자 확인부(220)는 제 2 보안 모듈(140)의 ID를 수신한다. 또한, 식별자 확인부(220)는, 출발지인 제 1 종단 통신 장치(110)의 고유 정보, 예를 들어 MAC 주소에 대응하는 ID를 MAC 테이블(230)에서 확인한다. 따라서, 식별자 확인부(220)는, 출발지인 제 1 종단 통신 장치(110)의 ID와, 목적지 측인 제 2 보안 모듈(140)의 ID를 확보할 수 있다. 한편, 식별자 확인부(220)는, 제 1 보안 모듈(120)의 ID를 자체 메모리 등에서 확인할 수 있다.
정책 조회부(240)는, 식별자 확인부(220)에서 확인된 제 1 종단 통신 장치(110)의 ID와, 제 1 보안 모듈(120)의 ID와, 제 2 보안 모듈(140)의 ID의 쌍을, 정책 관리 장치(150)로 전송하여 정책을 질의하고, 정책 관리 장치(150)로부터 정책 질의에 대한 정책 조회 결과를 수신한다. 정책 저장 장치(160)에는 보안 모듈(120, 140)을 기준으로 한 양방향 연결 정보가 저장되어 있다. 본 실시예에서, 제 1 보안 모듈(120)을 기준으로 한 양방향 연결 정보는, 제 1 종단 통신 장치(110)의 ID와, 제 1 보안 모듈(120)의 ID와, 제 2 보안 모듈(140)의 ID의 쌍이므로, 정책 조회부(240)는 통신 연결 가능의 정책 조회 결과를 수신한다.
토큰 생성부(250)는, 패킷에 삽입할 토큰을 생성한다. 먼저, 토큰 생성부(250)는, 정책 관리 장치(150)로 상기 정책 조회부(240)에서 정책 질의를 할 때 사용한 ID의 쌍과 동일한 ID의 쌍을 정책 관리 장치(150)로 전송하여 토큰 시드를 요청하고, 정책 관리 장치(150)로부터 토큰 시드를 수신한다. 토큰 생성부(250)는, 토큰의 재사용 방지를 위한 랜덤 값인 넌스(Nonce)와 타임스탬프(Timestamp)를 생성한 후, 다음과 같이 토큰을 생성한다. 토큰은, 일정 주기 내에서, 또는 일정 사용 횟수 범위 내에서만 유효하도록 설정될 수 있다.
토큰(Token) = sign(hmac(seed xor Nonce, Payload)∥Nonce∥Timestamp∥ID)
여기서 hmac(seed xor Nonce, Payload)는 패킷의 페이로드를 해시한 값을 토큰 시드(seed)와 Nonce를 xor한 값으로 암호화한 것을 의미하며, '∥'는 평문으로 이어붙이기를 의미한다. 그리고 ID는 제 1 종단 통신 장치(110)의 ID이고, sign은 제 1 보안 모듈(120)의 개인키로 서명하는 것을 의미한다.
전송부(260)는 상기 토큰 생성부(250)에서 생성된 토큰을 패킷에 삽입하여 통신망(180)을 통해 제 2 종단 통신 장치(130) 측으로 전송한다.
도 3은 도 1의 제 2 보안 모듈(140)의 블럭도이다. 도 3을 참조하면, 제2 보안 모듈(140)은 수신부(310), 식별자 확인부(320), MAC 테이블(330), 토큰 검증부(340), 정책 조회부(350) 및 전송부(360)를 포함한다. 이들은 소프트웨어로 구현되어 제 2 보안 모듈(140)의 메모리에 저장되어 프로세서에 의해 실행될 수 있고, 또는 제 2 종단 통신 장치(130)의 메모리에 저장되어 제 2 종단 통신 장치(130)의 프로세서에 의해 실행될 수도 있다.
수신부(310)는, 제 1 종단 통신 장치(110) 측의 제 1 보안 모듈(120)로부터 토큰이 삽입된 패킷을 수신한다. 패킷에는 출발지 IP 주소로서 제 1 종단 통신 장치(110)의 IP 주소와 목적지 IP 주소로서 제 2 종단 통신 장치(130)의 IP 주소가 포함된다.
식별자 확인부(320)는, 상기 패킷에 포함된 출발지 IP 주소를 IP 주소 관리 장치(170)로 전송하여 그 출발지 IP 주소에 대응하는 제 1 보안 모듈(120)의 ID를 요청한다. IP 주소 관리 장치(170)에는 제 1 종단 통신 장치(110)의 IP 주소와 제 1 보안 모듈(120)의 ID가 매칭되어 저장되어 있으므로, 식별자 확인부(320)는 제 1 보안 모듈(120)의 ID를 수신한다.
또한, 식별자 확인부(320)는, 목적지인 제 2 종단 통신 장치(130)의 고유 정보, 예를 들어 MAC 주소에 대응하는 ID를 MAC 테이블(330)에서 확인한다. 따라서, 식별자 확인부(320)는, 목적지인 제 2 종단 통신 장치(130)의 ID와, 출발지 측인 제 1 보안 모듈(120)의 ID를 확보할 수 있다. 한편, 식별자 확인부(320)는, 제 2 보안 모듈(140)의 ID는 자체 메모리 등에서 확인할 수 있다.
토큰 검증부(340)는, 상기 수신부(310)에서 수신한 패킷에 삽입되어 있는 토큰을 검증한다. 먼저 토큰 검증부(340)는, 정책 관리 장치(150)로 송신 측에서 사용한 토큰 시드를 요청한다. 토큰 검증부(340)는 상기 수신된 패킷에 삽입되어 있는 토큰에서 평문으로 삽입되어 있는 제 1 종단 통신 장치(110)의 ID를 추출하고, 그 제 1 종단 통신 장치(110)의 ID, 상기 식별자 확인부(320)에서 확인한 제 1 보안 모듈(120)의 ID, 그리고 제 2 보안 모듈(140)의 ID의 쌍을 정책 관리 장치(150)로 전송하여 토큰 시드를 요청한다. 송신측에서 사용한 ID의 쌍으로 토큰 시드를 요청하므로, 토큰 검증부(340)는 정책 관리 장치(150)로부터 송신측에서 사용한 동일한 토큰 시드를 수신한다. 동시에 토큰 검증부(340)는 정책 관리 장치(150)로부터 제 1 보안 모듈(120)의 공개키를 함께 수신한다. 토큰 검증부(340)는 토큰에 평문으로 삽입되어 있는 넌스(Nonce), 타임스탬프(Timestamp) 그리고 제 1 종단 통신 장치(110)의 ID와, 수신된 토큰 시드를 이용하여 토큰을 생성하여 상기 패킷에 삽입되어 있는 토큰과 동일한지 확인한다. 또한 토큰 검증부(340)는 상기 수신된 제 1 보안 모듈(120)의 공개키로 토큰의 서명을 검증한다. 토큰 검증부(340)는 토큰 검증 실패시에 패킷을 폐기한다.
정책 조회부(350)는, 상기 토큰 검증부(340)에서 토큰 검증에 성공시에, 상기 식별자 확인부(320)에서 확인한 제 1 보안 모듈(120)의 ID, 제 2 보안 모듈(140)의 ID, 그리고 제 2 종단 통신 장치(130)의 ID의 쌍을 정책 관리 장치(150)로 전송하여 정책을 질의하고, 정책 관리 장치(150)로부터 정책 질의에 대한 정책 조회 결과를 수신한다. 정책 저장 장치(160)에는 보안 모듈(120, 140)을 기준으로 한 양방향 연결 정보가 저장되어 있다. 본 실시예에서, 제 2 보안 모듈(140)을 기준으로 한 양방향 연결 정보는, 제 1 보안 모듈(120)의 ID와, 제 2 보안 모듈(140)의 ID와, 제 2 종단 통신 장치(130)의 ID의 쌍이므로, 정책 조회부(350)는 통신 연결 가능의 정책 조회 결과를 수신한다.
전송부(360)는 상기 정책 조회부(350)에서 통신 연결 가능의 정책 조회 결과가 수신되면, 패킷에 삽입되어 있는 토큰을 제거하여 제 2 종단 통신 장치(130)로 전송한다.
이상의 도 2 및 도 3에서 제 1, 2 보안 모듈(120, 140)을 구분하여 설명하였으나, 도 2 및 도 3에서 설명한 기능들은 하나의 보안 모듈에 모두 포함되는 것을 이해하여야 한다.
도 4는 도 1의 통신 시스템에서 제 1 종단 통신 장치(110)에서 제 2 종단 통신 장치(130)로 패킷을 전송하는 방법의 흐름도이다.
도 4를 참조하면, 단계 S401에서, 제 1 보안 모듈(120)은, 제 1 종단 통신 장치(110)로부터 제 2 종단 통신 장치(130)로 향하는 패킷을 수신한다. 이 패킷에는 목적지 IP 주소로서 제 2 종단 통신 장치(130)의 공인 IP 주소를 포함한다.
단계 S402에서, 제 1 보안 모듈(120)은, 상기 패킷에 포함된 목적지 IP 주소를 IP 주소 관리 장치(170)로 전송하여 그 목적지 IP 주소에 대응하는 제 2 보안 모듈(140)의 ID를 요청한다.
단계 S403에서, IP 주소 관리 장치(170)에는 제 2 종단 통신 장치(130)의 IP 주소와 제 2 보안 모듈(140)의 ID가 매칭되어 저장되어 있으므로, 제 1 보안 모듈(120)은, 제 2 보안 모듈(140)의 ID를 수신한다.
단계 S404에서, 또한, 제 1 보안 모듈(120)은, 출발지인 제 1 종단 통신 장치(110)의 고유 정보, 예를 들어 MAC 주소에 대응하는 ID를 MAC 테이블(230)에서 확인한다. 따라서, 제 1 보안 모듈(120)은, 출발지인 제 1 종단 통신 장치(110)의 ID와, 목적지 측인 제 2 보안 모듈(140)의 ID를 확보할 수 있다. 한편, 제 1 보안 모듈(120)은, 자신의 ID는 자체 메모리 등에서 확인할 수 있다.
단계 S405에서, 제 1 보안 모듈(120)은, 확인된 제 1 종단 통신 장치(110)의 ID와, 제 1 보안 모듈(120)의 ID와, 제 2 보안 모듈(140)의 ID의 쌍을, 정책 관리 장치(150)로 전송하여 정책을 질의한다.
단계 S406에서, 제 1 보안 모듈(120)은 정책 관리 장치(150)로부터 정책 질의에 대한 정책 조회 결과를 수신한다. 정책 저장 장치(160)에는 보안 모듈(120, 140)을 기준으로 한 양방향 연결 정보가 저장되어 있다. 본 실시예에서, 제 1 보안 모듈(120)을 기준으로 한 양방향 연결 정보는, 제 1 종단 통신 장치(110)의 ID와, 제 1 보안 모듈(120)의 ID와, 제 2 보안 모듈(140)의 ID의 쌍이므로, 제 1 보안 모듈(120)은 통신 연결 가능의 정책 조회 결과를 수신한다.
단계 S407에서, 제 1 보안 모듈(120)은, 패킷에 삽입할 토큰을 생성하기 위해 정책 관리 장치(150)로 정책 질의를 할 때 사용한 ID의 쌍과 동일한 ID의 쌍을 정책 관리 장치(150)로 전송하여 토큰 시드를 요청한다. 단계 S408에서, 제 1 보안 모듈(120)은 정책 관리 장치(150)로부터 토큰 시드를 수신한다.
단계 S409에서, 제 1 보안 모듈(120)은, 토큰의 재사용 방지를 위한 랜덤 값인 넌스(Nonce)와 타임스탬프(Timestamp)를 생성한 후, 다음과 같이 토큰을 생성한다.
토큰(Token) = sign(hmac(seed xor Nonce, Payload)∥Nonce∥Timestamp∥ID)
여기서 hmac(seed xor Nonce, Payload)는 패킷의 페이로드를 해시한 값을 토큰 시드(seed)와 Nonce를 xor한 값으로 암호화한 것을 의미하며, '∥'는 평문으로 이어붙이기를 의미한다. 그리고 ID는 제 1 종단 통신 장치(110)의 ID이고, sign은 제 1 보안 모듈(120)의 개인키로 서명하는 것을 의미한다.
단계 S410에서, 제 1 보안 모듈(120)은, 상기 생성된 토큰을 패킷에 삽입하여 통신망(180)을 통해 제 2 종단 통신 장치(130) 측으로 전송한다.
도 5는 도 1의 통신 시스템에서 제 1 종단 통신 장치(110)로부터 전송된 패킷을 제 2 종단 통신 장치(130)에서 수신하는 방법의 흐름도이다.
단계 S501에서, 제 2 보안 모듈(140)은, 토큰이 삽입된 패킷을 수신한다. 패킷에는 출발지 IP 주소로서 제 1 종단 통신 장치(110)의 IP 주소와 목적지 IP 주소로서 제 2 종단 통신 장치(130)의 IP 주소가 포함된다.
단계 S502에서, 제 2 보안 모듈(140)은 상기 패킷에 포함된 출발지 IP 주소를 IP 주소 관리 장치(170)로 전송하여 그 출발지 IP 주소에 대응하는 제 1 보안 모듈(120)의 ID를 요청한다. IP 주소 관리 장치(170)에는 제 1 종단 통신 장치(110)의 IP 주소와 제 1 보안 모듈(120)의 ID가 매칭되어 저장되어 있으므로, 제 2 보안 모듈(140)은 제 1 보안 모듈(120)의 ID를 수신한다.
단계 S504에서, 제 2 보안 모듈(140)은, 목적지인 제 2 종단 통신 장치(130)의 고유 정보, 예를 들어 MAC 주소에 대응하는 ID를 MAC 테이블(330)에서 확인한다. 따라서, 제 2 보안 모듈(140)은, 목적지인 제 2 종단 통신 장치(130)의 ID와, 출발지 측인 제 1 보안 모듈(120)의 ID를 확보할 수 있다. 한편, 제 2 보안 모듈(140)은, 제 2 보안 모듈(140)의 ID는 자체 메모리 등에서 확인할 수 있다.
단계 S505에서, 제 2 보안 모듈(140)은 패킷에 삽입되어 있는 토큰을 검증하기 위해 정책 관리 장치(150)로 송신 측에서 사용한 토큰 시드를 요청한다. 구체적으로 제 2 보안 모듈(140)은 상기 수신된 패킷에 삽입되어 있는 토큰에서 평문으로 삽입되어 있는 제 1 종단 통신 장치(110)의 ID를 추출하고, 그 제 1 종단 통신 장치(110)의 ID, 상기 제 1 보안 모듈(120)의 ID, 그리고 제 2 보안 모듈(140)의 ID의 쌍을 정책 관리 장치(150)로 전송하여 토큰 시드를 요청한다.
단계 S506에서, 송신측에서 사용한 ID의 쌍으로 토큰 시드를 요청하므로, 제 2 보안 모듈(140)은 정책 관리 장치(150)로부터 송신측에서 사용한 동일한 토큰 시드를 수신한다. 동시에 토큰 검증부(340)는 정책 관리 장치(150)로부터 제 1 보안 모듈(120)의 공개키를 함께 수신한다.
단계 S507에서, 제 2 보안 모듈(140)은 토큰에 평문으로 삽입되어 있는 넌스(Nonce), 타임스탬프(Timestamp) 그리고 제 1 종단 통신 장치(110)의 ID와, 수신된 토큰 시드를 이용하여 토큰을 생성하여 상기 패킷에 삽입되어 있는 토큰과 동일한지 확인한다. 또한 토큰 검증부(340)는 상기 수신된 제 1 보안 모듈(120)의 공개키로 토큰의 서명을 검증한다. 토큰 검증부(340)는 토큰 검증 실패시에 패킷을 폐기한다.
단계 S508에서, 제 2 보안 모듈(140)은, 토큰 검증에 성공시에, 제 1 보안 모듈(120)의 ID, 제 2 보안 모듈(140)의 ID, 그리고 제 2 종단 통신 장치(130)의 ID의 쌍을 정책 관리 장치(150)로 전송하여 정책을 질의한다.
단계 S509에서, 제 2 보안 모듈(140)은 정책 관리 장치(150)로부터 정책 질의에 대한 정책 조회 결과를 수신한다. 정책 저장 장치(160)에는 보안 모듈(120, 140)을 기준으로 한 양방향 연결 정보가 저장되어 있다. 본 실시예에서, 제 2 보안 모듈(140)을 기준으로 한 양방향 연결 정보는, 제 1 보안 모듈(120)의 ID와, 제 2 보안 모듈(140)의 ID와, 제 2 종단 통신 장치(130)의 ID의 쌍이므로, 제 2 보안 모듈(140)은 통신 연결 가능의 정책 조회 결과를 수신한다.
단계 S510에서, 제 2 보안 모듈(140)은 통신 연결 가능의 정책 조회 결과가 수신되면, 패킷에 삽입되어 있는 토큰을 제거한다. 그리고 단계 S511에서, 제 2 보안 모듈(140)은 제 2 종단 통신 장치(130)로 토큰이 제거된 패킷을 전송한다.
도 6은 본 발명의 일 실시예에 따른 도 1의 정책 관리 장치의 블럭도이다. 정책 관리 장치(150)는 메모리, 메모리 제어기, 하나 이상의 프로세서(CPU), 주변 인터페이스, 입출력(I/O) 서브시스템, 디스플레이 장치, 입력 장치 및 통신 회로를 포함할 수 있다. 이러한 구성요소는 하나 이상의 통신 버스 또는 신호선을 통하여 통신한다. 이러한 여러 구성요소는 하나 이상의 신호 처리 및/또는 애플리케이션 전용 집적 회로(application specific integrated circuit)를 포함하여, 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어 둘의 조합으로 구현될 수 있다.
메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치와 같은 불휘발성 메모리, 또는 다른 불휘발성 반도체 메모리 장치를 포함할 수 있다. 일부 실시예에서, 메모리는 하나 이상의 프로세서로부터 멀리 떨어져 위치하는 저장 장치, 예를 들어 RF 회로와, 인터넷, 인트라넷, LAN(Local Area Network), WLAN(Wide LAN), SAN(Storage Area Network) 등, 또는 이들의 적절한 조합과 같은 통신 네트워크(도시하지 않음)를 통하여 액세스되는 네트워크 부착형(attached) 저장 장치를 더 포함할 수 있다. 프로세서 및 주변 인터페이스와 같은 장치의 다른 구성요소에 의한 메모리로의 액세스는 메모리 제어기에 의하여 제어될 수 있다.
주변 인터페이스는 장치의 입출력 주변 장치를 프로세서 및 메모리와 연결한다. 하나 이상의 프로세서는 다양한 소프트웨어 프로그램 및/또는 메모리에 저장되어 있는 명령어 세트를 실행하여 시스템을 위한 여러 기능을 수행하고 데이터를 처리한다. 일부 실시예에서, 주변 인터페이스, 프로세서 및 메모리 제어기는 칩과 같은 단일 칩 상에서 구현될 수 있다. 일부 다른 실시예에서, 이들은 별개의 칩으로 구현될 수 있다.
I/O 서브시스템은 디스플레이 장치, 입력 장치와 같은 장치의 입출력 주변장치와 주변 인터페이스 사이에 인터페이스를 제공한다. 디스플레이 장치는 LCD(liquid crystal display) 기술 또는 LPD(light emitting polymer display) 기술을 사용할 수 있고, 이러한 디스플레이 장치는 용량형, 저항형, 적외선형 등의 터치 디스플레이일 수 있다.
프로세서는 시스템에 연관된 동작을 수행하고 명령어들을 수행하도록 구성된 프로세서로서, 예를 들어, 메모리로부터 검색된 명령어들을 이용하여, 시스템의 컴포넌트 간의 입력 및 출력 데이터의 수신과 조작을 제어할 수 있다. 일부 실시예에서, 소프트웨어 구성요소는 운영 체제, 그래픽 모듈(명령어 세트), 본 발명을 위한 동작을 수행하기 위한 프로그램이 탑재(설치)될 수 있다. 운영 체제는, 예를 들어, 다윈(Darwin), RTXC, LINUX, UNIX, OSX, WINDOWS 또는 VxWorks, 안드로이드, iOS 등과 같은 내장 운영체제일 수 있고, 일반적인 시스템 태스크(task)(예를 들어, 메모리 관리, 저장 장치 제어, 전력 관리 등)를 제어 및 관리하는 다양한 소프트웨어 구성요소 및/또는 장치를 포함하고, 다양한 하드웨어와 소프트웨어 구성요소 사이의 통신을 촉진시킨다.
통신 회로는 이더넷 통신 회로 및 RF 회로를 포함할 수 있다. 이더넷 통신 회로는 유선 통신을 수행하고, RF 회로는 전자파를 송수신한다. RF 회로는 전기 신호를 전자파로 또는 그 반대로 변환하며 이 전자파를 통하여 통신 네트워크, 다른 이동형 게이트웨이 및 통신 장치와 통신한다. RF 회로는 예를 들어 안테나 시스템, RF 트랜시버, 하나 이상의 증폭기, 튜너, 하나 이상의 오실레이터, 디지털 신호 처리기, CODEC 칩셋, 메모리 등을 포함하지만 이에 한정되지 않는 이러한 기능을 수행하기 위한 주지의 회로를 포함할 수 있다. RF 회로는 셀룰러 전화 네트워크, 무선 LAN 및/또는 MAN(metropolitan area network)와 같은 무선 네트워크, 그리고 근거리 무선 통신에 의하여 다른 장치와 통신할 수 있다.
도 6에 도시된 바와 같이, 수신부(610), 식별자 관리부(620), 연결 관계 정보 DB(630), 서비스 그룹 식별부(640), 서비스 그룹 정보 DB(650), 종단 장치 관리부(660), 정책 관리부(670)를 포함한다. 수신부(610), 식별자 관리부(620), 서비스 그룹 식별부(640), 종단 장치 관리부(660) 및 정책 관리부(670)는 프로그램으로 구현되어 메모리에 저장된 후 프로세서에 의해 실행될 수 있고, 또는 하드웨어와 소프트웨어의 조합으로 구현될 수도 있다.
수신부(610)는, 종단 통신 장치(110, 130)에 보안 모듈(120, 140)이 통신 가능하게 연결되어 동작할 때, 보안 모듈(120, 140)로부터 자신의 ID와 보안 모듈(120, 140)에 연결된 종단 통신 장치(110, 130)의 고유 정보, 예를 들어, IP 주소나 MAC 주소를 수신한다. 예를 들어, 제 1 보안 모듈(120)로부터 그의 ID와 제 1 종단 통신 장치(110)의 MAC 주소를 수신한다. 제 2 보안 모듈(140)로부터는 그의 ID와 제 2 종단 통신 장치(130)의 IP 주소를 수신한다.
식별자 관리부(620)는, ID가 없는 종단 통신 장치(110, 130)에 ID를 부여한 후 종단 통신 장치(110, 130)와 보안 모듈(120, 140) 간의 ID 연결 관계 정보를 생성하여 연결 관계 정보 DB(630)에 저장한다. 예를 들어, 상기 수신부(610)에 제 1 보안 모듈(120)로부터 그의 ID와 제 1 종단 통신 장치(110)의 MAC 주소가 수신되었을 때, 식별자 관리부(620)는, 제 1 종단 통신 장치(110)에 임시적인 ID를 부여하고, 제 1 보안 모듈(120)의 ID와 제 1 종단 통신 장치(110)의 ID를 매칭한, 연결 관계 정보를 연결 관계 정보 DB(630)에 저장한다. 또한, 상기 수신부(610)에 제 2 보안 모듈(140)로부터 그의 ID와 제 2 종단 통신 장치(130)의 IP 주소가 수신되었을 때, 식별자 관리부(620)는, 제 2 종단 통신 장치(130)에 임시적인 ID를 부여하고, 제 2 보안 모듈(140)의 ID와 제 2 종단 통신 장치(130)의 ID를 매칭한, 연결 관계 정보를 연결 관계 정보 DB(630)에 저장한다.
또한, 식별자 관리부(620)는 종단 통신 장치(110, 130)의 ID와 해당 종단 통신 장치(110, 130)의 고유 정보(MAC 주소, 또는 IP 주소 등)의 쌍을 해당 종단 통신 장치(110, 130)에 연결된 보안 모듈(120, 140)로 전송한다. 따라서, 제 1 보안 모듈(120)에는 제 1 종단 통신 장치(110)의 ID 및 고유 정보의 쌍이 저장되고, 제 2 보안 모듈(120)에는 제 2 종단 통신 장치(130)의 ID 및 고유 정보의 쌍이 저장된다.
또한, 식별자 관리부(620)는 종단 통신 장치(110, 130)의 고유 정보인 IP 주소와 보안 모듈(120, 140)의 ID의 쌍을 IP 주소 관리 장치(170)로 전송한다. 즉, 제 1 종단 통신 장치(110)의 IP 주소와 제 1 보안 모듈(120)의 ID의 쌍, 그리고 제 2 종단 통신 장치(130)의 IP 주소와 제 2 보안 모듈(140)의 ID의 쌍이 IP 주소 관리 장치(170)에 전송되어 저장된다.
서비스 그룹 식별부(640)는, 서비스 그룹 정보 DB(650)에 저장된 정보를 참조하여 보안 모듈들(120, 140)에 연결된 종단 통신 장치들(110, 130)의 서비스 그룹을 확인한다. 서비스 그룹 식별부(640)는, 수신부(610)로부터 종단 통신 장치(110, 130)의 고유 정보, 예를 들어, IP 주소나 MAC 주소를 수신하고, 그 수신된 고유 정보를 이용하여 서비스 그룹 정보 DB(650)에서 해당하는 서비스 그룹 정보를 확인한다. 서비스 그룹 정보 DB(650)에는 서비스 그룹별로 해당 서비스 그룹명, 해당 서비스 그룹에 속하는 종단 통신 장치들(110, 130)의 MAC 주소 또는 IP 주소의 목록이 저장된다. 예를 들어, 삼성전자에서 IoT 서비스를 제공한다면, IoT 서비스를 제공하는 플랫폼 서버의 IP 주소와 그 IoT 서비스를 제공하는 삼성전자에서 제조하여 판매하는 IoT 단말들의 MAC 주소가 서비스 그룹 정보 DB(650)에 저장된다.
종단 장치 관리부(660)는, 상기 서비스 그룹 식별부(640)에서 확인한 종단 통신 장치들(110, 130)의 서비스 그룹 정보를 이용하여 종단 통신 장치들(110, 130)의 대응 관계를 확인한다. 종단 장치 관리부(660)는, 대응 관계가 확인된 종단 통신 장치들(110, 130)의 ID들을 식별자 관리부(620)로부터 수신하고 그 수신된 ID들을 매칭한 연결 관계 정보를 생성한다. 종단 장치 관리부(660)는 그 생성한 종단 통신 장치들(110, 130)의 ID 연결 관계 정보를 연결 관계 정보 DB(630)에 저장할 수 있다.
실시예에 따라, 종단 장치 관리부(660)는, 종단 통신 장치(110, 130) 중 어느 한 종단 통신 장치(예, 110)의 서비스 그룹 정보가 서비스 그룹 식별부(640)로부터 수신되면, 식별자 관리부(620)로부터 수신된 해당 종단 통신 장치(110)의 ID를 서비스 그룹 정보 DB(650)의 해당 서비스 그룹에 매칭하여 저장한다. 그리고 종단 장치 관리부(660)는, 다른 종단 통신 장치(130)의 서비스 그룹 정보가 서비스 그룹 식별부(640)로부터 수신되면, 그 수신된 서비스 그룹 정보를 이용하여 서비스 그룹 정보 DB(650)에 종단 통신 장치(110)의 ID를 질의하여 수신한 후, 수신된 종단 통신 장치(110)의 ID와 식별자 관리부(620)로부터 수신되는 종단 통신 장치(130)의 ID와 매칭하여 종단 통신 장치(110, 130) 간의 ID 연결 관계 정보를 획득할 수 있다.
정책 관리부(670)는, 연결 관계 정보 DB(630)에 저장된 종단 통신 장치들(110, 130)과 보안 모듈들(120, 140) 간의 ID 연결 관계 정보와, 상기 종단 장치 관리부(660)에서 확인된 종단 통신 장치들(110, 130)의 대응 관계, 구체적으로는 종단 통신 장치들(110, 130) 간의 ID 연결 관계 정보를 이용하여, 보안 모듈(120, 140)을 기준으로 한 ID 기반의 양방향 연결 정보를 생성하고 이를 정책 저장 장치(160)로 전송하여 저장한다. 구체적으로, 정책 관리부(670)는, 종단 통신 장치들(110, 130) 간의 ID 연결 관계 정보를 이용하여, 연결 관계 정보 DB(630)에서 종단 통신 장치들(110, 130)과 보안 모듈들(120, 140) 간의 ID 연결 관계 정보를 조회하고, 조회된 종단 통신 장치들(110, 130)과 보안 모듈들(120, 140) 간의 ID 연결 관계 정보를 이용하여 ID 기반의 종단 통신 장치(110, 130) 간의 전체 경로를 조합한다. 그리고 정책 관리부(670)는 상기 전체 경로에서 예를 들어, 제 1 보안 모듈(120)을 기준으로 한 양방향 연결 정보와 제 2 보안 모듈(140)을 기준으로 한 양방향 연결 정보를 각각 정책 저장 장치(160)에 전송하여 저장한다. 예를 들어, 상기 제 1 보안 모듈(120)을 기준으로 한 ID 기반의 양방향 연결 정보는, 제 1 종단 통신 장치(110)의 ID, 제 1 보안 모듈(120)의 ID 그리고 제 2 보안 모듈(140)의 ID로 이루어진 연결 정보이다. 그리고 제 2 보안 모듈(140)을 기준으로 한 ID 기반의 양방향 연결 정보는, 제 2 종단 통신 장치(130)의 ID, 제 2 보안 모듈(140)의 ID, 제 1 보안 모듈(120)의 ID로 이루어진 연결 정보이다.
도 7은 도 1의 종단(End-to-End) 간 통신 시스템에서 정책 관리 장치(150)의 동작을 설명하는 흐름도이다.
단계 701에서, 정책 관리 장치(150)는, 제 1 종단 통신 장치(110)의 ID와 제 1 보안 모듈(120)의 ID를 매칭한 연결 관계 정보를 생성한다. 정책 관리 장치(150)는, 제 1 보안 모듈(120)로부터 그의 ID와 제 1 종단 통신 장치(110)의 IP 주소 또는 MAC 주소가 수신되었을 때, 제 1 종단 통신 장치(110)에 임시적인 ID를 부여하고, 제 1 보안 모듈(120)의 ID와 제 1 종단 통신 장치(110)의 ID를 매칭한, 연결 관계 정보를 연결 관계 정보 DB(630)에 저장한다.
단계 702에서, 정책 관리 장치(150)는, 제 2 종단 통신 장치(130)의 ID와 제 2 보안 모듈(140)의 ID를 매칭한 연결 관계 정보를 생성한다. 정책 관리 장치(150)는, 제 2 보안 모듈(140)로부터 그의 ID와 제 2 종단 통신 장치(130)의 IP 주소 또는 MAC 주소가 수신되었을 때, 제 2 종단 통신 장치(130)에 임시적인 ID를 부여하고, 제 2 보안 모듈(140)의 ID와 제 2 종단 통신 장치(130)의 ID를 매칭한, 연결 관계 정보를 연결 관계 정보 DB(630)에 저장한다.
단계 S703에서, 정책 관리 장치(150)는, 제 1, 2 종단 통신 장치들(110, 130)을 포함하는 종단 통신 장치들의 서비스 그룹 정보와 제 1, 2 종단 통신 장치들(110, 130)의 고유 정보, 예를 들어 IP 주소 또는 MAC 주소에 기초하여 제 1 종단 통신 장치(110)와 상기 제 2 종단 통신 장치(130)의 대응 관계를 확인한다. 정책 관리 장치(150)는, 보안 모듈들(120, 140)로부터 수신된 종단 통신 장치(110, 130)의 고유 정보, 예를 들어, IP 주소나 MAC 주소를 이용하여 서비스 그룹 정보 DB(650)에서 해당하는 서비스 그룹 정보를 확인하여 동일한지 확인한다. 정책 관리 장치(150)는, 대응 관계가 확인된 종단 통신 장치들(110, 130) 간의 ID 연결 관계 정보를 생성한다. 실시예에 따라, 정책 관리 장치(150)는, 제 1 종단 통신 장치(110)의 IP 주소나 MAC 주소를 이용하여 서비스 그룹 정보를 확인한 후 그 서비스 그룹 정보에 제 1 종단 통신 장치(110)의 ID를 매칭하여 저장한다. 그리고 정책 관리 장치(150)는 제 2 종단 통신 장치(130)의 IP 주소나 MAC 주소를 이용하여 서비스 그룹 정보에 매칭된 제 1 종단 통신 장치(110)의 ID를 조회한 후, 종단 통신 장치들(110, 130) 간의 ID 연결 관계 정보를 생성한다.
단계 S704에서, 정책 관리 장치(150)는, 단계 S701 및 단계 S702에서 저장한 종단 통신 장치들(110, 130)과 보안 모듈(120, 140) 간의 ID 연결 관계 정보와, 단계 S703에서 확인된 종단 통신 장치들(110, 130) 간의 대응 관계를 이용하여, 각 보안 모듈(120, 140)을 기준으로 한 ID 기반의 양방향 연결 정보를 생성하여 정책 저장 장치(160), 예를 들어 블록체인에 저장한다. 정책 관리 장치(150)는, 종단 통신 장치(110, 130) 간의 전체 경로를 조합한 후, 전체 경로에서 제 1 보안 모듈(120)을 기준으로 한 양방향 연결 정보와 제 2 보안 모듈(140)을 기준으로 한 양방향 연결 정보를 각각 정책 저장 장치(160)에 전송하여 저장한다. 예를 들어, 상기 제 1 보안 모듈(120)을 기준으로 한 ID 기반의 양방향 연결 정보는, 제 1 종단 통신 장치(110)의 ID, 제 1 보안 모듈(120)의 ID 그리고 제 2 보안 모듈(140)의 ID로 이루어진 연결 정보이다. 그리고 제 2 보안 모듈(140)을 기준으로 한 ID 기반의 양방향 연결 정보는, 제 2 종단 통신 장치(130)의 ID, 제 2 보안 모듈(140)의 ID, 제 1 보안 모듈(120)의 ID로 이루어진 연결 정보이다.
도 8은 도 1의 종단 간 통신 시스템의 실시예로서 IoT 단말과 IoT 서비스 서버 간 통신을 나타낸 도면이다. 예를 들어, IoT 단말은, 마이크로폰과 스피커를 구비하여, 사용자로부터 음성 요청을 수신하고 이를 IoT 서비스 서버로 전송하고, IoT 서비스 서버로부터 수신되는 응답을 수신하여 출력하는, 소위 인공지능 스피커이다. IoT 서비스 서버는 인공지능 음성 어시스턴트(Voice Assistant) 서비스를 제공하는 장치로서 음성을 인식하고 분석하여 이에 대한 서비스를 제공한다. 도 8을 참조한 실시예에서 IoT 단말(810)은 도 1을 참조한 실시예에서의 제 1 종단 통신 장치(110)일 수 있고, IoT 서비스 서버(830)는, 도 1을 참조한 실시예에서의 제 2 종단 통신 장치(130)일 수 있다. 제 1 보안 모듈(120)은 IoT 단말(810)에 물리적인 어댑터 형태로 연결될 수 있고, 또는 소프트웨어로 구현되어 IoT 단말(810)에 설치되어 동작할 수 있다. 도 8에서 게이트웨이(820)는 예를 들어 공유기일 수 있다. 제 1 보안 모듈(120)에 복수의 IoT 단말(810)이 연결될 때 게이트웨이(820)는 공인 IP 주소를 할당받고 상기 복수의 IoT 단말(810)에는 사설 IP 주소를 할당한다. IoT 단말(810)은 게이트웨이(820) 및 인터넷(840)을 통해 IoT 서비스 서버(830)와 통신한다.
도 8을 참조한 실시예에서, IoT 서비스 서버(830)에 제 2 보안 모듈(140)이 연결되면, 정책 관리 장치(150)는 IoT 서비스 서버(830)에 임시적인 ID를 부여하여 제 2 보안 모듈(140)의 ID와의 연결 관계를 설정한다. 이후 IoT 단말(810)에 제 1 보안 모듈(120)이 연결되면, 정책 관리 장치(150)는 IoT 단말(810)에 임시적인 ID를 부여하여 제 1 보안 모듈(120)의 ID와의 연결 관계를 설정한다. 정책 관리 장치(150)는 IoT 단말(810)의 MAC 주소, IoT 서비스 서버(830)의 IP 주소를 이용하여 이들이 동일한 서비스 그룹에 속한 것을 확인한 후, IoT 서비스 서버(830)와 제 2 보안 모듈(140) 간의 ID 연결 관계 정보, 및 IoT 단말(810)과 제 1 보안 모듈(120) 간의 ID 연결 관계 정보를 이용하여, 보안 모듈(120, 140)을 기준으로 한 양방향 연결 정보를 생성하여 정책 저장 장치(160)에 저장한다.
도 9는 도 8의 시스템에서 IoT 서비스 서버와 제 2 보안 모듈 간의 ID 연결 관계 정보를 생성하는 방법을 설명하는 흐름도이다.
도 9를 참조하면, 단계 S901에서, IoT 서비스 서버(830)에 제 2 보안 모듈(140)이 통신 가능하게 연결된다. 여기서 통신 가능한 연결이란, 물리적 연결 또는 소프트웨어적 연결을 포함한다. 단계 S902에서, 제 2 보안 모듈(140)은 IoT 서비스 서버(830)의 공인 IP 주소를 수집하고 그 수집된 공인 IP 주소와 자신의 ID 1를 정책 관리 장치(150)로 전송한다.
단계 S903에서, 정책 관리 장치(150)는, IoT 서비스 서버(830)에 임시적인 ID 2를 부여한다. 단계 S904에서, 정책 관리 장치(150)는 제 2 보안 모듈(140)과 IoT 서비스 서버(830) 간의 ID 연결 관계, 즉 (ID 1, ID 2)를 저장한다. 단계 S905에서, 정책 관리 장치(150)는, IoT 서비스 서버(830)의 공인 IP 주소를 이용하여 서비스 그룹을 확인한다. 예를 들어, 삼성전자의 IoT 서비스임을 확인한다. 단계 S906에서, 정책 관리 장치(150)는, 해당 서비스 그룹에 IoT 서비스 서버(830)의 ID 2를 매칭하여 저장한다.
도 10은 도 8의 시스템에서 IoT 단말과 IoT 서비스 서버 간의 연결 정책을 설정하는 방법을 설명하는 흐름도로서, 도 9를 참조하여 설명한 절차 이후에 동작하는 흐름도이다.
도 10을 참조하면, 단계 S1001에서, IoT 단말(810)에 제 1 보안 모듈(120)이 통신 가능하게 연결된다. 여기서 통신 가능한 연결이란, 물리적 연결 또는 소프트웨어적 연결을 포함한다. 단계 S1002에서, 제 1 보안 모듈(120)은 IoT 단말(810)의 MAC 주소를 수집하고 그 수집된 MAC 주소와 자신의 ID 3을 정책 관리 장치(150)로 전송한다.
단계 S1003에서, 정책 관리 장치(150)는, IoT 단말(810)에 임시적인 ID 4를 부여한다. 단계 S1004에서, 정책 관리 장치(150)는 제 1 보안 모듈(120)과 IoT 단말(810) 간의 ID 연결 관계, 즉 (ID 3, ID 4)를 저장한다. 단계 S1005에서, 정책 관리 장치(150)는, IoT 단말(810)의 MAC 주소를 이용하여 서비스 그룹을 확인한다. 예를 들어, 삼성전자의 IoT 단말임을 확인한다.
도 9를 참조한 실시예에서 IoT 서비스 서버(830)의 ID 2가 서비스 그룹에 매칭되어 있으므로, 단계 S1006에서, 정책 관리 장치(150)는, IoT 단말(810)과 IoT 서비스 서버(830) 간의 ID 연결 관계 정보(ID2 : ID 4)를 생성한다. 단계 S1007에서, 정책 관리 장치(150)는, IoT 단말(810)과 IoT 서비스 서버(830) 간의 ID 연결 관계 정보(ID2 : ID 4)를 이용하여, IoT 서비스 서버(830)와 제 2 보안 모듈(140) 간의 ID 연결 관계 정보, 및 IoT 단말(810)과 제 1 보안 모듈(120) 간의 ID 연결 관계 정보를 확인하고, 이를 이용하여 IoT 단말(810)과 IoT 서비스 서버(830) 간의 ID 기반 전체 경로를 조합한다. ID 기반 전체 경로는 (ID 2 : ID 1 : ID 3 : ID 4)이다.
단계 S1008에서, 정책 관리 장치(150)는 ID 기반 전체 경로를 기초로, 보안 모듈(120, 140)을 기준으로 한 양방향 연결 정보를 생성하여 정책 저장 장치(160)에 저장한다. 제 1 보안 모듈(120)을 기준으로 한 ID 기반의 양방향 연결 정보는, (ID 4, ID 3, ID 1)이다. 제 2 보안 모듈(140)을 기준으로 한 ID 기반의 양방향 연결 정보는, (ID 3, ID 1, ID 2)이다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로, 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.

Claims (27)

  1. 종단 통신 장치에 통신 가능하게 연결되어 종단 간 통신에 보안을 제공하는 보안 장치에 있어서,
    통신 회로;
    프로세서; 및
    상기 프로세서가 실행 가능한 적어도 하나의 명령어를 포함하는 메모리를 포함하고,
    상기 프로세서는,
    목적지 IP 주소를 포함하는 패킷을 수신하고,
    IP 주소와 제 1 식별자 간의 매칭 정보를 저장하는 IP 주소 관리 장치로 상기 목적지 IP 주소에 대응하는 제 1 식별자를 요청하여 수신하며,
    상기 종단 통신 장치의 고유 정보와 제 2 식별자의 매칭 정보를 저장하는 테이블에서, 상기 종단 통신 장치의 제 2 식별자를 확인하고,
    상기 제 1 식별자, 상기 제 2 식별자 및 상기 보안 장치의 제 3 식별자를 정책 관리 장치로 전송하여 식별자 기반의 정책을 질의하고 상기 정책 관리 장치로부터 정책 조회 결과를 수신하며,
    상기 정책 조회 결과에 기초하여 상기 패킷을 다른 종단 통신 장치로 전송하는 것을 특징으로 하는 보안 장치.
  2. 제 1 항에 있어서,
    상기 프로세서는,
    상기 정책 관리 장치로 토큰 시드를 요청하여 수신하고, 수신된 토큰 시드를 이용하여 토큰을 생성하며,
    상기 패킷에 상기 토큰을 삽입하여 전송하는 것을 특징으로 하는 보안 장치.
  3. 제 2 항에 있어서,
    상기 프로세서는,
    토큰 시드를 요청시, 상기 제 1 식별자, 상기 제 2 식별자 및 상기 제 3 식별자를 전송하는 것을 특징으로 하는 보안 장치.
  4. 제 2 항에 있어서,
    상기 프로세서는,
    넌스(Nonce), 상기 패킷의 페이로드, 타임스탬프, 상기 제 2 식별자, 상기 토큰 시드를 이용하여 토큰을 생성하는 것을 특징으로 하는 보안 장치.
  5. 제 1 항에 있어서,
    상기 프로세서는,
    상기 제 1 식별자, 상기 제 2 식별자 및 상기 제 3 식별자와, 상기 정책 관리 장치에 저장된 상기 보안 장치를 기준으로 한 식별자 기반의 양방향 연결 정보 간의 비교 결과에 따른 정책 조회 결과를 상기 정책 관리 장치로부터 수신하는 것을 특징으로 하는 보안 장치.
  6. 제 5 항에 있어서,
    상기 제 1 식별자는, 상기 다른 종단 통신 장치에 통신 가능하게 연결된 다른 보안 장치의 식별자인 것을 특징으로 하는 보안 장치.
  7. 제 5 항에 있어서,
    상기 정책 관리 장치에 저장된 상기 보안 장치를 기준으로 한 식별자 기반의 양방향 연결 정보는,
    상기 보안 장치의 식별자와, 상기 보안 장치에 통신 가능하게 연결된 통신 계층상 그 하위의 종단 통신 장치의 식별자, 그리고 그 하위의 종단 통신 장치와 종단 통신이 허용된 다른 종단 통신 장치에 통신 가능하게 연결된 통신 계층상 그 상위의 다른 보안 장치의 식별자로 이루어진 것을 특징으로 하는 보안 장치.
  8. 제 7 항에 있어서,
    상기 프로세서는,
    상기 종단 통신 장치에 상기 보안 장치가 최초에 통신 가능하게 연결될 때 상기 보안 장치의 식별자와 상기 종단 통신 장치의 고유 정보를 상기 정책 관리 장치로 전송하여 식별자 기반의 정책 설정을 요청하는 것을 특징으로 하는 보안 장치.
  9. 제 8 항에 있어서,
    상기 IP 주소 관리 장치에 저장되는 IP 주소 및 제 1 식별자 간의 매칭 정보는, 상기 정책 관리 장치에서 식별자 기반의 정책이 설정될 때 상기 정책 관리 장치로부터 수신되어 저장되는 것을 특징으로 하는 보안 장치.
  10. 종단 통신 장치에 통신 가능하게 연결되어 종단 간 통신에 보안을 제공하는 보안 장치에 있어서,
    통신 회로;
    프로세서; 및
    상기 프로세서가 실행 가능한 적어도 하나의 명령어를 포함하는 메모리를 포함하고,
    상기 프로세서는,
    출발지 IP 주소를 포함하는 패킷을 수신하고,
    IP 주소와 제 1 식별자 간의 매칭 정보를 저장하는 IP 주소 관리 장치로 상기 출발지 IP 주소에 대응하는 제 1 식별자를 요청하여 수신하며,
    상기 종단 통신 장치의 고유 정보와 제 2 식별자의 매칭 정보를 저장하는 테이블에서, 상기 종단 통신 장치의 제 2 식별자를 확인하고,
    상기 제 1 식별자, 상기 제 2 식별자 및 상기 보안 장치의 제 3 식별자를 정책 관리 장치로 전송하여 식별자 기반의 정책을 질의하고 상기 정책 관리 장치로부터 정책 조회 결과를 수신하며,
    상기 정책 조회 결과에 기초하여 상기 패킷을 상기 종단 통신 장치로 전송하는 것을 특징으로 하는 보안 장치.
  11. 제 10 항에 있어서,
    상기 패킷은, 상기 패킷을 전송한 측에서 삽입한 토큰을 포함하고,
    상기 프로세서는,
    상기 정책 관리 장치로 상기 패킷을 전송한 측에서 사용한 토큰 시드를 요청하여 수신하고, 수신된 토큰 시드를 이용하여 상기 토큰을 검증하며,
    토큰 검증 성공시에 상기 패킷에 삽입된 상기 토큰을 제거하는 것을 특징으로 하는 보안 장치.
  12. 제 11 항에 있어서,
    상기 프로세서는,
    토큰 시드를 요청시, 상기 토큰에 평문으로 포함된 상기 패킷을 전송한 종단 통신 장치의 식별자와, 상기 제 1 식별자와, 상기 제 3 식별자를 상기 정책 관리 장치로 전송하는 것을 특징으로 하는 보안 장치.
  13. 제 10 항에 있어서,
    상기 프로세서는,
    상기 제 1 식별자, 상기 제 2 식별자 및 상기 제 3 식별자와, 상기 정책 관리 장치에 저장된 상기 보안 장치를 기준으로 한 식별자 기반의 양방향 연결 정보 간의 비교 결과에 따른 정책 조회 결과를 상기 정책 관리 장치로부터 수신하는 것을 특징으로 하는 보안 장치.
  14. 제 13 항에 있어서,
    상기 제 1 식별자는, 상기 패킷을 전송한 종단 통신 장치에 통신 가능하게 연결된 다른 보안 장치의 식별자인 것을 특징으로 하는 보안 장치.
  15. 종단 통신 장치에 통신 가능하게 연결된 보안 장치에서 종단 간 통신에 보안을 제공하는 방법에 있어서,
    목적지 IP 주소를 포함하는 패킷을 수신하는 단계;
    IP 주소와 제 1 식별자 간의 매칭 정보를 저장하는 IP 주소 관리 장치로 상기 목적지 IP 주소에 대응하는 제 1 식별자를 요청하여 수신하는 단계;
    상기 종단 통신 장치의 고유 정보와 제 2 식별자의 매칭 정보를 저장하는 테이블에서, 상기 종단 통신 장치의 제 2 식별자를 확인하는 단계;
    상기 제 1 식별자, 상기 제 2 식별자 및 상기 보안 장치의 제 3 식별자를 정책 관리 장치로 전송하여 식별자 기반의 정책을 질의하고 상기 정책 관리 장치로부터 정책 조회 결과를 수신하는 단계; 및
    상기 정책 조회 결과에 기초하여 상기 패킷을 다른 종단 통신 장치로 전송하는 단계를 포함하는 방법.
  16. 제 15 항에 있어서,
    상기 정책 관리 장치로 토큰 시드를 요청하여 수신하고, 수신된 토큰 시드를 이용하여 토큰을 생성하는 단계; 및
    상기 패킷에 상기 토큰을 삽입하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  17. 제 16 항에 있어서,
    상기 토큰을 생성하는 단계는,
    토큰 시드를 요청시, 상기 제 1 식별자, 상기 제 2 식별자 및 상기 제 3 식별자를 전송하는 것을 특징으로 하는 방법.
  18. 제 16 항에 있어서,
    상기 토큰을 생성하는 단계는,
    넌스(Nonce), 상기 패킷의 페이로드, 타임스탬프, 상기 제 2 식별자, 상기 토큰 시드를 이용하여 토큰을 생성하는 것을 특징으로 하는 방법.
  19. 제 15 항에 있어서,
    상기 정책 조회 결과를 수신하는 단계는,
    상기 제 1 식별자, 상기 제 2 식별자 및 상기 제 3 식별자와, 상기 정책 관리 장치에 저장된 상기 보안 장치를 기준으로 한 식별자 기반의 양방향 연결 정보 간의 비교 결과에 따른 정책 조회 결과를 상기 정책 관리 장치로부터 수신하는 것을 특징으로 하는 방법.
  20. 제 19 항에 있어서,
    상기 제 1 식별자는, 상기 다른 종단 통신 장치에 통신 가능하게 연결된 다른 보안 장치의 식별자인 것을 특징으로 하는 방법.
  21. 제 19 항에 있어서,
    상기 정책 관리 장치에 저장된 상기 보안 장치를 기준으로 한 식별자 기반의 양방향 연결 정보는,
    상기 보안 장치의 식별자와, 상기 보안 장치에 통신 가능하게 연결된 통신 계층상 그 하위의 종단 통신 장치의 식별자, 그리고 그 하위의 종단 통신 장치와 종단 통신이 허용된 다른 종단 통신 장치에 통신 가능하게 연결된 통신 계층상 그 상위의 다른 보안 장치의 식별자로 이루어진 것을 특징으로 하는 방법.
  22. 제 21 항에 있어서,
    상기 종단 통신 장치에 상기 보안 장치가 최초에 통신 가능하게 연결될 때 상기 보안 장치의 식별자와 상기 종단 통신 장치의 고유 정보를 상기 정책 관리 장치로 전송하여 식별자 기반의 정책 설정을 요청하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  23. 종단 통신 장치에 통신 가능하게 연결된 보안 장치에서 종단 간 통신에 보안을 제공하는 방법에 있어서,
    출발지 IP 주소를 포함하는 패킷을 수신하는 단계;
    IP 주소와 제 1 식별자 간의 매칭 정보를 저장하는 IP 주소 관리 장치로 상기 출발지 IP 주소에 대응하는 제 1 식별자를 요청하여 수신하는 단계;
    상기 종단 통신 장치의 고유 정보와 제 2 식별자의 매칭 정보를 저장하는 테이블에서, 상기 종단 통신 장치의 제 2 식별자를 확인하는 단계;
    상기 제 1 식별자, 상기 제 2 식별자 및 상기 보안 장치의 제 3 식별자를 정책 관리 장치로 전송하여 식별자 기반의 정책을 질의하고 상기 정책 관리 장치로부터 정책 조회 결과를 수신하는 단계; 및
    상기 정책 조회 결과에 기초하여 상기 패킷을 상기 종단 통신 장치로 전송하는 단계를 포함하는 방법.
  24. 제 23 항에 있어서,
    상기 패킷은, 상기 패킷을 전송한 측에서 삽입한 토큰을 포함하고,
    상기 방법은,
    상기 정책 관리 장치로 상기 패킷을 전송한 측에서 사용한 토큰 시드를 요청하여 수신하고, 수신된 토큰 시드를 이용하여 상기 토큰을 검증하는 단계; 및
    토큰 검증 성공시에 상기 패킷에 삽입된 상기 토큰을 제거하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  25. 제 24 항에 있어서,
    상기 토큰을 검증하는 단계는,
    토큰 시드를 요청시, 상기 토큰에 평문으로 포함된 상기 패킷을 전송한 종단 통신 장치의 식별자와, 상기 제 1 식별자와, 상기 제 3 식별자를 상기 정책 관리 장치로 전송하는 것을 특징으로 하는 방법.
  26. 제 23 항에 있어서,
    상기 정책 조회 결과를 수신하는 단계는,
    상기 제 1 식별자, 상기 제 2 식별자 및 상기 제 3 식별자와, 상기 정책 관리 장치에 저장된 상기 보안 장치를 기준으로 한 식별자 기반의 양방향 연결 정보 간의 비교 결과에 따른 정책 조회 결과를 상기 정책 관리 장치로부터 수신하는 것을 특징으로 하는 방법.
  27. 제 26 항에 있어서,
    상기 제 1 식별자는, 상기 패킷을 전송한 종단 통신 장치에 통신 가능하게 연결된 다른 보안 장치의 식별자인 것을 특징으로 하는 방법.
PCT/KR2019/007744 2018-07-03 2019-06-26 종단 간 통신에 보안을 제공하기 위한 장치 및 방법 WO2020009369A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0077305 2018-07-03
KR1020180077305A KR102156206B1 (ko) 2018-07-03 2018-07-03 종단 간 통신에 보안을 제공하기 위한 장치 및 방법

Publications (1)

Publication Number Publication Date
WO2020009369A1 true WO2020009369A1 (ko) 2020-01-09

Family

ID=69060118

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/007744 WO2020009369A1 (ko) 2018-07-03 2019-06-26 종단 간 통신에 보안을 제공하기 위한 장치 및 방법

Country Status (2)

Country Link
KR (1) KR102156206B1 (ko)
WO (1) WO2020009369A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309640A (zh) * 2020-01-17 2020-06-19 北京国科天迅科技有限公司 一种fc-ae-1553通讯系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102478699B1 (ko) * 2021-03-18 2022-12-16 중앙대학교 산학협력단 블록체인 기반 IoT 보안 방법 및 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100034933A (ko) * 2008-09-25 2010-04-02 주식회사 케이티 단말, 단말 관리 장치, 단말의 패킷 전송 방법 및 단말 관리 방법
KR101619371B1 (ko) * 2014-12-24 2016-05-10 주식회사 시큐아이 패킷 처리 방법 및 장치
US20170006643A1 (en) * 2015-07-03 2017-01-05 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (iot) system
KR20170075588A (ko) * 2015-12-23 2017-07-03 주식회사 케이티 보안 ip 통신 서비스를 제공하기 위한 장치, 방법 및 통신 시스템
KR20180007898A (ko) * 2016-07-14 2018-01-24 한국전자통신연구원 가상 사설 클라우드망에서 테넌트 내 그룹 분리 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100034933A (ko) * 2008-09-25 2010-04-02 주식회사 케이티 단말, 단말 관리 장치, 단말의 패킷 전송 방법 및 단말 관리 방법
KR101619371B1 (ko) * 2014-12-24 2016-05-10 주식회사 시큐아이 패킷 처리 방법 및 장치
US20170006643A1 (en) * 2015-07-03 2017-01-05 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (iot) system
KR20170075588A (ko) * 2015-12-23 2017-07-03 주식회사 케이티 보안 ip 통신 서비스를 제공하기 위한 장치, 방법 및 통신 시스템
KR20180007898A (ko) * 2016-07-14 2018-01-24 한국전자통신연구원 가상 사설 클라우드망에서 테넌트 내 그룹 분리 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309640A (zh) * 2020-01-17 2020-06-19 北京国科天迅科技有限公司 一种fc-ae-1553通讯系统

Also Published As

Publication number Publication date
KR102156206B1 (ko) 2020-09-15
KR20200004191A (ko) 2020-01-13

Similar Documents

Publication Publication Date Title
US10356092B2 (en) Uncloneable registration of an internet of things (IoT) device in a network
WO2018026030A1 (ko) 차량 및 그 제어방법
WO2022235007A1 (ko) 컨트롤러 기반의 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
WO2013085088A1 (ko) M2m 통신에서 장치의 데이터 공유 방법 및 그 시스템
US20040213237A1 (en) Network authentication apparatus and network authentication system
US20080155657A1 (en) Address-authentification-information issuing apparatus, address-authentification-information adding apparatus, false-address checking apparatus, and network system
WO2012044072A2 (ko) 융합형 네트워크에서 사용자 키를 할당하기 위한 방법
WO2020138525A1 (ko) 사물인터넷 블록체인 환경에서의 디바이스 분산 인증 방법 및 이를 이용한 디바이스 분산 인증 시스템
JP2006203300A (ja) 転送装置、アクセス可否判定方法およびプログラム
WO2023085791A1 (ko) 컨트롤러 기반 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
WO2013085217A1 (ko) 다수의 중계 서버를 갖는 보안관리 시스템 및 보안관리 방법
WO2013002533A2 (en) Apparatus and method for providing service to heterogeneous service terminals
WO2020009369A1 (ko) 종단 간 통신에 보안을 제공하기 위한 장치 및 방법
JP2006518967A (ja) 仮想無線ローカルエリアネットワーク
WO2014088318A1 (en) Method and apparatus for allocating an internet protocol address to a client device
JP2004166002A (ja) 通信装置、境界ルータ装置、サーバ装置、通信システム、通信方法、ルーティング方法、通信プログラム及びルーティングプログラム
WO2023211104A1 (ko) 컨트롤러 기반 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
JP2018182767A (ja) Ecu、ネットワーク装置、及び車用ネットワーク装置
WO2024029658A1 (ko) 네트워크에서의 접근 통제 시스템 및 그 방법
JP4750750B2 (ja) パケット転送システムおよびパケット転送方法
JP2000124952A (ja) 電子データの追跡方法及びシステム、記録媒体
CN111586017A (zh) 通信用户认证的方法和装置
WO2022235006A1 (ko) 컨트롤러 기반의 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
KR20210051208A (ko) 종단 간 통신에 보안을 제공하기 위한 장치 및 방법
KR102548430B1 (ko) 종단 간 통신의 정책을 설정하는 장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19831153

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19831153

Country of ref document: EP

Kind code of ref document: A1