KR101954497B1 - Layer 2 access control method and system using cryptographically-generated mac address and sdn application - Google Patents

Layer 2 access control method and system using cryptographically-generated mac address and sdn application Download PDF

Info

Publication number
KR101954497B1
KR101954497B1 KR1020160149550A KR20160149550A KR101954497B1 KR 101954497 B1 KR101954497 B1 KR 101954497B1 KR 1020160149550 A KR1020160149550 A KR 1020160149550A KR 20160149550 A KR20160149550 A KR 20160149550A KR 101954497 B1 KR101954497 B1 KR 101954497B1
Authority
KR
South Korea
Prior art keywords
terminal
address
mac
mac address
hash function
Prior art date
Application number
KR1020160149550A
Other languages
Korean (ko)
Other versions
KR20180052346A (en
Inventor
양대헌
Original Assignee
인하대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인하대학교 산학협력단 filed Critical 인하대학교 산학협력단
Priority to KR1020160149550A priority Critical patent/KR101954497B1/en
Publication of KR20180052346A publication Critical patent/KR20180052346A/en
Application granted granted Critical
Publication of KR101954497B1 publication Critical patent/KR101954497B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • H04L61/6022
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Abstract

일 실시예에 따른 제1 단말과 제2 단말 간의 통신 방법은, 상기 제1 단말에서, 상기 제2 단말 각각의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 상기 제 2 단말의 MAC 주소를 획득하는 단계; 상기 제1 단말에서, 상기 획득된 MAC 주소를 포함하는 MAC 프레임을 생성하고, 상기 제2 단말로 전송하는 단계; 및 상기 제2 단말에서, 상기 제1 단말로부터 상기 MAC 프레임을 수신하는 단계를 포함할 수 있다. A method of communicating between a first terminal and a second terminal according to an exemplary embodiment of the present invention is a method of communicating between a first terminal and a second terminal using a MAC address of the second terminal based on a value obtained by hashing an IP address of each of the second terminals using a hash function, ; Generating, in the first terminal, a MAC frame including the obtained MAC address and transmitting the MAC frame to the second terminal; And receiving, at the second terminal, the MAC frame from the first terminal.

Figure R1020160149550
Figure R1020160149550

Description

암호화하여 생성된 MAC 주소와 SDN 어플리케이션을 이용한 레이어 2 액세스 제어 방법 및 시스템{LAYER 2 ACCESS CONTROL METHOD AND SYSTEM USING CRYPTOGRAPHICALLY-GENERATED MAC ADDRESS AND SDN APPLICATION}TECHNICAL FIELD [0001] The present invention relates to a layer 2 access control method and system using an MAC address and an SDN application generated by encrypting a MAC layer,

아래의 설명은 통신 기술에 관한 것으로, ARP Poisoning 공격에 대응하는 네트워크 보안 방법 및 장치에 관한 것이다.
The following description relates to communication technology and relates to a network security method and apparatus corresponding to an ARP Poisoning attack.

도 1을 참고하면, ARP(Address Resolution Protocol )를 설명하기 위한 것으로 ARP 는 IP 네트워크 상에서의 이더넷(Ethernet) 주소와 IP주소를 서로 연결시켜주는 DNS 역할을 하는 프로토콜을 지칭한다. LAN 네트워크 통신에서는 IP 주소가 아닌 MAC 주소에 의하여 통신이 이루어지게 된다. 실제 통신을 위하여 사용자가 사용하는 IP 주소와 물리적인 MAC 주소와의 매핑 과정이 필요하게 되며, 상대 단말의 IP 주소에 대한 MAC 주소를 파악하는데 있어서, ARP 프로토콜이 이용된다. Referring to FIG. 1, the ARP is used to describe an ARP (Address Resolution Protocol). The ARP refers to a protocol that serves as a DNS for connecting an Ethernet address and an IP address on an IP network. In LAN network communication, communication is performed by MAC address instead of IP address. For the actual communication, it is necessary to perform mapping process between the IP address used by the user and the physical MAC address, and the ARP protocol is used to determine the MAC address of the IP address of the counterpart terminal.

예를 들면, 단말 A는 단말 B와 통신을 하기 위하여 MAC 주소를 알아야 한다. 이때, MAC 주소를 파악하기 위하여 단말 B의 IP 주소에 해당하는 MAC 주소를 묻는 ARP 패킷을 로컬 네트워크에 브로드캐스팅(Broadcasting)할 수 있다. ARP 패킷을 수신한 단말 B는 단말 B의 MAC 주소를 요청하고 있음을 인지하여 자신의 MAC 주소를 포함한 정보를 ARP 패킷에 포함하여 ARP 응답 패킷을 단말 A로 전송할 수 있다. For example, the terminal A must know the MAC address in order to communicate with the terminal B. At this time, an ARP packet requesting a MAC address corresponding to the IP address of the terminal B may be broadcasted to the local network in order to grasp the MAC address. Upon receiving the ARP packet, the terminal B recognizes that it is requesting the MAC address of the terminal B, and transmits the ARP response packet to the terminal A by including the information including its MAC address in the ARP packet.

단말 A는 단말 B로부터 전송된 ARP 응답 패킷 내에서 단말 B의 MAC 주소를 확인한 후, 통신이 개시될 수 있다. 이때, 단말 A는 단말 B의 IP 주소 및 MAC 주소를 테이블로 생성하여 캐시에 저장할 수 있다. 이후, 단말 A가 단말 B와 통신할 경우, ARP 과정을 거치지 않고 캐시에 저장된 테이블을 참조하여 통신을 수행하게 된다. After the terminal A confirms the MAC address of the terminal B in the ARP response packet transmitted from the terminal B, the communication can be started. At this time, the terminal A can generate a table of the IP address and MAC address of the terminal B and store the table in the cache. Thereafter, when the terminal A communicates with the terminal B, communication is performed by referring to the table stored in the cache without going through the ARP process.

하지만 이러한 통신 방법은, 최근 들어 웹 서버가 전혀 해킹을 당하지 않았음에도 웹 서버로부터 악성코드 등이 다운로드되는 경우가 발생한다는 문제점이 있다. 이는 공격자가 웹 서버와 동일한 IP 세그먼트 내의 다른 서버를 해킹한 후 웹 서버와 관련된 웹 트래픽을 가로채 악성코드를 삽입함으로써 발생한다.However, such a communication method has a problem that malicious code or the like is downloaded from the web server even though the web server has not been hacked at all in recent years. This occurs when an attacker hackes another server in the same IP segment as the web server, and then intercepts the web traffic associated with the web server and inserts the malicious code.

이에 따라 무선 네트워크에서 ARP Poisoning 공격이 발생하는 것을 방지하기 위한 기술에 요구되고 있다.
Accordingly, a technique for preventing an ARP Poisoning attack from occurring in a wireless network is required.

IP 주소에 대하여 해시함수를 사용하여 해시한 값에 기반하여 MAC 주소를 획득하고, MAC 주소를 포함하는 MAC 프레임을 상대방 단말로 전송하여 MAC 프레임을 검증하도록 함으로써 ARP Poisoning을 방지하는 방법을 제공할 수 있다.
It is possible to provide a method of preventing ARP poisoning by obtaining a MAC address based on a hash value using a hash function for an IP address and verifying a MAC frame by transmitting a MAC frame including a MAC address to the counterpart terminal have.

일 실시예에 따르면, 제1 단말과 제2 단말 간의 통신 방법은, 상기 제1 단말에서, 상기 제2 단말 각각의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 상기 제 2 단말의 MAC 주소를 획득하는 단계; 상기 제1 단말에서, 상기 획득된 MAC 주소를 포함하는 MAC 프레임을 생성하고, 상기 제2 단말로 전송하는 단계; 및 상기 제2 단말에서, 상기 제1 단말로부터 상기 MAC 프레임을 수신하는 단계를 포함할 수 있다. According to an embodiment, a method of communicating between a first terminal and a second terminal includes: transmitting, by the first terminal, a MAC address of the second terminal based on a value obtained by hashing an IP address of each of the second terminals using a hash function, Obtaining an address; Generating, in the first terminal, a MAC frame including the obtained MAC address and transmitting the MAC frame to the second terminal; And receiving, at the second terminal, the MAC frame from the first terminal.

상기 통신 방법은, 상기 제1 단말에서, 상기 제1 단말의 IP 주소를 상기 해시함수를 사용하여 해시한 값에 기반하여, 상기 제1 단말의 MAC 주소를 계산하는 단계를 더 포함하고, 상기 생성된 MAC 프레임은 상기 제1 단말의 MAC 주소를 소스 주소로서 포함하고, 상기 제2 단말에서, 상기 제1 단말의 IP 주소를 상기 해시함수를 사용하여 해시한 값에 기반하여, 상기 수신된 MAC 프레임의 소스 주소를 검증하는 단계를 더 포함할 수 있다.Wherein the communication method further comprises calculating a MAC address of the first terminal based on a value obtained by hashing the IP address of the first terminal using the hash function in the first terminal, Wherein the MAC frame includes a MAC address of the first terminal as a source address, and in the second terminal, based on a value obtained by hashing the IP address of the first terminal using the hash function, And verifying the source address of the source address.

인증 서버로부터, 상기 제1 단말 및 상기 제2 단말에 고유 키를 제공하는 단계를 더 포함하고, 상기 제 2 단말의 MAC 주소를 획득하는 단계에서, 상기 제 2 단말의 MAC 주소는 상기 제2 단말의 IP 주소 및 상기 고유 키를 상기 해시함수를 사용하여 해시한 값에 기반하여 획득될 수 있다. The method of claim 1, further comprising: providing an inherent key from the authentication server to the first terminal and the second terminal, wherein in obtaining the MAC address of the second terminal, And the hash value of the unique key using the hash function.

상기 고유 키는, 상기 제1 단말 및 상기 제2 단말의 각각으로부터의 식별 정보에 기초하여 상기 제1 단말 및 상기 제2 단말의 각각이 상기 인증 서버에 대해 인증됨에 따라, 상기 제1 단말 및 상기 제2 단말의 각각으로 제공될 수 있다. Wherein the inherent key is a unique key that is used by the first terminal and the second terminal as the first terminal and the second terminal are authenticated to the authentication server based on identification information from each of the first terminal and the second terminal, May be provided to each of the second terminals.

상기 제2 단말은 라우터이고, 상기 제 2 단말의 MAC 주소는 상기 라우터의 MAC 주소로서 생성되고, 상기 제1 단말로부터 상기 라우터로 아웃바운드(outbound) 트래픽을 전송하는 단계를 더 포함할 수 있다.The second terminal is a router, the MAC address of the second terminal is generated as a MAC address of the router, and the outbound traffic is transmitted from the first terminal to the router.

인증 서버로부터, 상기 제1 단말 및 상기 제2 단말에 고유 키를 제공하는 단계를 더 포함하고, 상기 제 1 단말의 MAC 주소를 계산하는 단계에서, 상기 제 1 단말의 MAC 주소는 상기 제1 단말의 IP 주소 및 상기 고유 키를 상기 해시함수를 사용하여 해시한 값에 기반하여 계산될 수 있다. The method of claim 1, further comprising: providing an inherent key from the authentication server to the first terminal and the second terminal, wherein in calculating the MAC address of the first terminal, And the hash value of the unique key using the hash function.

상기 제1 단말은 라우터이고, 상기 제 1 단말의 MAC 주소는 상기 라우터의 MAC 주소로서 생성되고, 상기 제2 단말에서, 상기 소스 주소를 상기 라우터의 MAC 주소로서 검증하고, 상기 라우터로부터 인바운드(inbound) 트래픽을 수신하는 단계를 더 포함할 수 있다. Wherein the first terminal is a router, the MAC address of the first terminal is generated as a MAC address of the router, the second terminal verifies the source address as a MAC address of the router, ) ≪ / RTI > traffic.

상기 통신 방법은, 상기 인증 서버에서 상기 고유 키를 갱신하는 단계; 상기 인증 서버로부터, SDN 컨트롤러로 상기 갱신된 고유 키를 브로드캐스트하도록 요청하는 단계; 상기 SDN 컨트롤러에서, 상기 갱신된 고유 키를 브로드캐스트하는 단계; 및 상기 갱신된 고유 키가 수신된 상기 제1 단말 및 상기 제2 단말 간의 통신을 종료하는 단계를 더 포함할 수 있다. The communication method includes: updating the inherent key in the authentication server; Requesting from the authentication server to broadcast the updated unique key to an SDN controller; Broadcasting, at the SDN controller, the updated unique key; And terminating communication between the first terminal and the second terminal, upon receipt of the updated unique key.

일 실시예에 따르면, 다른 단말과의 통신 방법은, 자신의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 자신의 MAC 주소를 계산하는 단계; 상기 다른 단말의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 상기 다른 단말의 MAC 주소를 획득하는 단계; 및 상기 계산된 자신의 MAC 주소 및 상기 획득된 다른 단말의 MAC 주소를 포함하는 MAC 프레임을 생성하고, 상기 다른 단말로 전송하는 단계를 포함할 수 있다. According to one embodiment, a method of communicating with another terminal includes calculating a MAC address of the terminal based on a value obtained by hashing its IP address using a hash function; Obtaining a MAC address of the other terminal based on a value obtained by hashing the IP address of the other terminal using a hash function; And generating a MAC frame including the calculated MAC address of the terminal and the obtained MAC address of another terminal, and transmitting the generated MAC frame to the other terminal.

일 실시예에 따르면, 다른 단말과의 통신 방법은, 자신의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 자신의 MAC 주소를 변경하는 단계; 상기 다른 단말로부터 상기 변경된 MAC 주소를 목적지(destination) 주소로 하는 MAC 프레임을 수신하는 단계; 및 상기 다른 단말의 IP 주소를 상기 해시함수를 사용하여 해시한 값에 기반하여, 상기 수신된 MAC 프레임의 소스 주소가 상기 다른 단말의 MAC 주소에 해당하는지를 검증하는 단계를 포함할 수 있다.
According to an exemplary embodiment, a method of communicating with another terminal includes: changing a MAC address of the terminal based on a value obtained by hashing its IP address using a hash function; Receiving a MAC frame having the changed MAC address as a destination address from the other terminal; And verifying whether the source address of the received MAC frame corresponds to the MAC address of the other terminal based on a value obtained by hashing the IP address of the other terminal using the hash function.

LAN에서 ARP 프로토콜 주소를 제거하여 ARP Poisoning 공격이 불가능하도록 제공할 수 있고, LAN 에서 ARP 트래픽의 높은 볼륨이 제거되어 네트워크 처리량이 증가할 것이다. The ARP protocol address can be removed from the LAN to provide an ARP Poisoning attack impossible, and the high volume of ARP traffic on the LAN will be removed, thereby increasing network throughput.

또한, LAN에서 ARP 프로토콜 주소를 제거하여 기업 네트워크에서 중앙 집중식 관리가 가능하도록 제공함으로써 SDN 컨트롤러에 의하여 중앙에서 단말들이 네트워크에 연결되도록 관리할 수 있고, 네트워크에서 비가입 및 가입을 동적으로 지원할 수 있고, 스위치의 포트에 플러그인됨으로써 물리적으로 연결된 외부인이 네트워크에서 어떠한 패킷을 보내거나 엿볼 수 없게 된다.
In addition, by removing the ARP protocol address from the LAN and providing centralized management in the corporate network, the SDN controller can centrally manage the terminals to be connected to the network, dynamically support the non-subscription and subscription in the network , Plugged into the port of the switch will allow any external party physically connected to not be able to send or glee packets from the network.

도 1은 ARP(Address Resolution Protocol )를 설명하기 위한 도면이다.
도 2는 ARP Poisoning 공격을 설명하기 위한 도면이다.
도 3은 일 실시예에 있어서, 각각의 장치들이 네트워크 통신을 수행하기 위한 동작을 설명하기 위한 도면이다.
도 4는 일 실시예에 있어서, 네트워크에서 통신하는 과정을 설명하기 위한 흐름도이다.
도 5는 일 실시예에 있어서, 인터넷 통신을 수행하는 과정을 설명하기 위한 흐름도이다.
1 is a diagram for explaining an ARP (Address Resolution Protocol).
2 is a diagram for explaining an ARP Poisoning attack.
3 is a diagram for explaining an operation for each device to perform network communication in one embodiment.
4 is a flowchart for explaining a process of communicating in a network in one embodiment.
5 is a flowchart illustrating a process of performing Internet communication in an embodiment.

이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.

도 2는 ARP Poisoning 공격을 설명하기 위한 도면이다. 2 is a diagram for explaining an ARP Poisoning attack.

A 호스트(210)(IP 주소: 192.168.1.1, MAC 주소: 000000000001) 및 B 호스트(220)(IP 주소: 192.168.1.2, MAC 주소: 000000000002)가 L2 스위치에 의하여 연결되어 서로 패킷을 송수신한다고 가정하자. A host 210 (IP address: 192.168.1.1, MAC address: 000000000001) and B host 220 (IP address: 192.168.1.2, MAC address: 000000000002) lets do it.

A 호스트의 ARP 캐쉬 테이블(ARP Cache Table)에는 동일 네트워크 내의 다른 호스트인 B 호스트의 IP 주소 및 IP 주소에 대등되는 MAC 주소가 저장되고, B 호스트의 ARP 캐쉬 테이블(ARP Cache Table)에는 A 호스트의 IP 주소 및 IP 주소에 대응되는 MAC 주소가 저장될 수 있다. 또한, L2 스위치의 라우트 테이블에는 A 호스트 및 B 호스트로의 패킷 라우팅을 위하여 A 호스트 및 B 호스트의 MAC 주소가 저장될 수 있다.In the ARP cache table of the A host, the MAC address equivalent to the IP address and the IP address of the B host, which is another host in the same network, is stored. In the ARP cache table of the B host, The IP address and the MAC address corresponding to the IP address can be stored. Also, the routing table of the L2 switch may store the MAC addresses of the A host and the B host for packet routing to the A host and the B host.

이때, 공격자(230)(Sniffer, IP 주소: 192.168.1.10, MAC 주소: 000112233445)는 ARP 포이즈닝(스푸핑)을 위하여 A 호스트 및 B 호스트로 자신의 MAC 주소를 포함하는 ARP 메시지를 전송할 수 있다. ARP 메시지는 ARP 응답 메시지로서, 예를 들면, 공격자는 ARP 응답 메시지의 송신 IP 주소에 B 호스트의 IP 주소를 부가하고, 송신 MAC 주소에는 자신(공격자)의 MAC 주소를 부가하여 A 호스트로 전송할 수 있다. 마찬가지로, 공격자는 ARP 응답 메시지의 송신 IP 주소에 A 호스트의 IP 주소를 부가하고, 송신 MAC 주소에 자신(공격자)의 MAC 주소를 부가하여 B 호스트로 전송할 수 있다.At this time, the attacker 230 (Sniffer, IP address: 192.168.1.10, MAC address: 000112233445) can transmit an ARP message including its MAC address to the A host and the B host for ARP poisoning (spoofing). The ARP message is an ARP response message. For example, an attacker may add the IP address of the host B to the sending IP address of the ARP response message, add the MAC address of the attacker to the sending MAC address, have. Likewise, the attacker can add the IP address of the A host to the sending IP address of the ARP response message, add the MAC address of the attacker to the sending MAC address, and transmit it to the B host.

ARP 프로토콜의 특성에 따르면, 네트워크 내에 존재하는 각 호스트들은 자신이 ARP 요청 메시지를 송신하지 않았는데 ARP 응답 메시지만이 수신되는 경우에도 자신의 ARP 캐쉬 테이블을 업데이트하도록 구성될 수 있다. A 호스트 및 B 호스트는 수신되는 ARP 응답 메시지에 대응하여 자신의 ARP 캐쉬 테이블을 도 2에 도시된 것과 같이 공격자의 MAC 주소로 업데이트하게 된다. 다시 말해서, A 호스트 및 B 호스트는 각각 상대방의 MAC 주소를 공격자의 MAC 주소로 변경하여 ARP 캐쉬 테이블에 저장하며, 이후 A 호스트 및 B 호스트 간 모든 트래픽은 L2 스위치에 의하여 공격자 측으로 라우팅될 수 있다. 이에 따라 공격자는 ARP 프로토콜의 허점을 이용하여, A 호스트 및 B 호스트 간의 패킷을 훔쳐보거나 변조할 수 있게 된다.According to the characteristics of the ARP protocol, each host in the network can be configured to update its ARP cache table even if only the ARP response message is received even though it did not send the ARP request message. The A host and the B host update their ARP cache tables with the MAC address of the attacker as shown in FIG. 2 in response to the received ARP response message. In other words, each of the hosts A and B changes the MAC address of the other party to the MAC address of the attacker and stores it in the ARP cache table. Then, all traffic between the host A and the host B can be routed to the attacker side by the L2 switch. Thus, the attacker can use the loopholes of the ARP protocol to steal or modulate packets between the A host and the B host.

이에 따라 LAN에서 ARP 프로토콜 주소를 제거하여 LAN에서 ARP 프로토콜 주소를 제거하여 ARP Poisoning 공격이 불가능하도록 하고, 기업 네트워크에서 중앙 집중식 관리가 가능하도록 하는 방법을 설명하기로 한다. 아래의 실시예들은 IP 주소가 해시함수로 암호화되어 생성된 MAC 주소와 SDN 어플리케이션을 이용한 레이어 2 또는 레이어 3를 액세스 제어하기 위한 방법을 상세하게 설명하기로 한다. In this paper, we explain how to remove ARP protocol address from LAN, remove ARP protocol address from LAN, disable ARP Poisoning attack, and enable centralized management in corporate network. In the following embodiments, a MAC address generated by encrypting an IP address with a hash function and a method for access control using Layer 2 or Layer 3 using an SDN application will be described in detail.

도 3은 일 실시예에 있어서, 각각의 장치들이 네트워크 통신을 수행하기 위한 동작을 설명하기 위한 도면이다. 3 is a diagram for explaining an operation for each device to perform network communication in one embodiment.

단말들(320, 330)은 윈도우, 리눅스 등으로 운영되는 PC와 노트북들로서, 컴퓨터 장치로 구현되는 고정형 단말이거나 이동형 단말일 수 있다. 단말들(320, 330)의 예를 들면, 스마트폰(smart phone), 휴대폰, 내비게이션, 컴퓨터, 노트북, 디지털 방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 태블릿 PC 등이 해당될 수 있다. 단말들(320, 330)은ARP 기능을 비활성화할 수 있다. 단말들(320, 330)은 IP 주소를 해시함수로 암호화하거나, IP 주소 및 키를 해시함수로 암호화하여 목적지 단말의 MAC 주소를 계산할 수 있다. The terminals 320 and 330 may be PCs and laptops operated by Windows, Linux, etc., and may be a fixed terminal implemented as a computer device or a mobile terminal. Examples of terminals 320 and 330 include a smart phone, a mobile phone, a navigation device, a computer, a notebook, a digital broadcast terminal, a PDA (Personal Digital Assistants), a PMP (Portable Multimedia Player) . The terminals 320 and 330 may disable the ARP function. The terminals 320 and 330 can encrypt the IP address with the hash function or encrypt the IP address and the key with the hash function to calculate the MAC address of the destination terminal.

디폴트 라우터(Default Router)(340)는 외부 인터넷으로부터 IP 패킷을 전달할 수 있도록 하기 위하여 SDN 컨트롤러(350)에 의해 고유키를 제공받을 수 있다. The Default Router 340 may be provided with a unique key by the SDN controller 350 to allow IP packets to be transmitted from the external Internet.

인증 서버(Authentication Server)(310)는 먼저 단말의 식별 정보(예를 들면, 아이디, 패스워드)를 인증할 수 있고, 고유키(K)를 보안 채널(예를 들면, SSL)을 통하여 제공할 수 있다. 마찬가지로, SDN 컨트롤러(350)는 인증 서버로부터 인증을 성공적으로 수행한 후, 고유키를 수신할 수 있다. The authentication server 310 can first authenticate the identification information (e.g., ID and password) of the terminal and can provide the unique key K through a secure channel (for example, SSL) have. Similarly, the SDN controller 350 can receive the unique key after successfully performing authentication from the authentication server.

SDN 컨트롤러(350)는 인증 서버(310)로부터 제공되는 라우터의 키 값을 설정하고 갱신할 수 있다. The SDN controller 350 can set and update the key value of the router provided from the authentication server 310.

우선적으로, 레이어(Layer 2) 통신을 위하여, 제1 단말(320)과 제 2 단말(330)이 네트워크에서 통신을 수행하기 위한 과정을 설명하기로 한다. 제1 단말 및 제2 단말은 각각의 IP 주소를 가지고 있다. 제1 단말 및 제2 단말은 서로의 IP 주소를 알고 있다고 가정한다. First, a process for the first terminal 320 and the second terminal 330 to perform communication in the network for layer 2 communication will be described. The first terminal and the second terminal have respective IP addresses. It is assumed that the first terminal and the second terminal know each other's IP address.

예를 들면, 제1 단말의 IP 주소는 IPA, 제2 단말의 IP 주소는 IPB라고 가정하자. 제1 단말은 제2 단말로 통신할 것을 요청할 수 있다. 제1 단말은 레이어 2 프레임을 구성하기 위하여 제2 단말의 MAC 주소가 필요하고, 제2 단말의 MAC 주소는 목적지 MAC 주소로 사용될 수 있다. For example, assume that the IP address of the first terminal is IPA and the IP address of the second terminal is IPB. The first terminal may request to communicate with the second terminal. The first terminal needs the MAC address of the second terminal to construct the layer 2 frame and the MAC address of the second terminal can be used as the destination MAC address.

제1 단말은 제1 단말 고유의 MAC 주소를 계산하고, 제1 단말의 IP 주소를 해시함수로 암호화할 수 있고, 제2 단말의 IP 주소를 해시함수로 암호화할 수 있다. The first terminal may calculate the MAC address unique to the first terminal, encrypt the IP address of the first terminal with the hash function, and encrypt the IP address of the second terminal with the hash function.

MAC = Hash_48(IPA)MAC = Hash_48 (IPA)

이때, 해시함수는, SHA1 또는 SHA256과 같은 암호화된 보안 해시 함수로부터48 비트를 출력할 수 있다. Hash_48(IPA)는 제1 단말의 IP 주소인 IPA를 해시함수를 사용하여 해시한 값을 의미할 수 있으며, 해시한 값에 기반하여 MAC 주소를 계산할 수 있다. At this time, the hash function can output 48 bits from the encrypted secure hash function such as SHA1 or SHA256. The hash_48 (IPA) may be a value obtained by hashing the IP address IPA of the first terminal using a hash function, and may calculate the MAC address based on the hash value.

제1 단말은 제1 단말의 IP 주소를 해시함수로 해시한 값에 기반하여 제1 단말의 MAC 주소, 제2 단말의 IP 주소를 해시함수로 해시한 값에 기반하여 제2 단말의 MAC 주소를 획득하고, 획득된 MAC 주소를 포함하는 각각 MAC 프레임으로 구성하여 제2 단말로 전송할 수 있다. The first terminal calculates the MAC address of the second terminal based on the hash value of the MAC address of the first terminal and the IP address of the second terminal based on the hash value of the IP address of the first terminal, And constructs each MAC frame including the obtained MAC address to transmit to the second terminal.

제2 단말은 MAC 프레임을 수신함에 따라 제1 단말의 MAC 주소가 소스 단말의 MAC 주소와 일치하는지 확인함으로써 MAC 프레임을 검증할 수 있다. 이때, 제2 단말은 해시함수로 암호화된 제1 단말의 IP 주소를 해시함수를 사용하여 해시한 값과 MAC 프레임 내의 소스 어드레스 값을 비교할 수 있다. 만약, 제2 단말은 해시함수로 암호화된 제1 단말의 IP 주소를 계산함에 따른 해시한 값과 MAC 프레임 내의 소스 어드레스 값이 일치하지 않을 경우, 제1 단말의 MAC 주소가 유효하지 않음을 판단할 수 있고, MAC 프레임을 폐기하고 관리자에게 통보할 수 있다. The second terminal can verify the MAC frame by checking whether the MAC address of the first terminal matches the MAC address of the source terminal upon receiving the MAC frame. At this time, the second terminal can compare the IP address of the first terminal encrypted with the hash function using the hash function and the source address value in the MAC frame. If the hash value obtained by calculating the IP address of the first terminal encrypted by the hash function does not match the source address value in the MAC frame, the second terminal determines that the MAC address of the first terminal is invalid And can discard the MAC frame and notify the manager.

또 다른 예로서, 제1 단말은 제1 단말의 IP 주소 및 고유키를 해시함수를 사용하여 해시한 값에 기반하여 제1 단말의 MAC 주소를 획득하고, 제2 단말의 IP 주소 및 고유키를 해시함수를 이용하여 해시한 값에 기반하여 MAC 주소를 획득할 수 있다. As another example, the first terminal obtains the MAC address of the first terminal based on the hash value of the IP address and the unique key of the first terminal using the hash function, and obtains the IP address and unique key of the second terminal The MAC address can be obtained based on the hash value using the hash function.

MAC = Hash_48(IPA, K)MAC = Hash_48 (IPA, K)

이때, 해시함수는, SHA1 또는 SHA256과 같은 암호화된 보안 해시 함수로부터48 비트를 출력할 수 있다. Hash_48(IPA, K)는 제1 단말의 IP 주소인 IPA 및 고유키를 해시함수를 사용하여 해시한 값을 의미할 수 있으며, 해시한 값에 기반하여 MAC 주소를 계산할 수 있다. At this time, the hash function can output 48 bits from the encrypted secure hash function such as SHA1 or SHA256. The Hash_48 (IPA, K) may be a value obtained by hashing the IP address and the unique key of the first terminal using a hash function, and may calculate the MAC address based on the hash value.

제1 단말은 제1 단말 고유의 MAC 주소를 계산하고, 제1 단말의 IP 주소 및 고유키를 해시함수로 암호화할 수 있고, 제2 단말의 IP 주소 및 고유키를 해시함수로 암호화할 수 있다. 이때, 키는 각각의 단말의 식별 정보에 기초하여 인증이 성공적으로 이루어질 경우 부여하는 고유키로서, 예를 들면, 각각의 단말은 서버 또는 관리자로부터 키를 제공받을 수 있다.The first terminal can calculate the MAC address unique to the first terminal, encrypt the IP address and unique key of the first terminal with the hash function, and encrypt the IP address and unique key of the second terminal with the hash function . At this time, the key is a unique key given when the authentication is successfully performed based on the identification information of each terminal. For example, each terminal can receive a key from a server or an administrator.

이에 따라 제1 단말은 제1 단말의 IP 주소 및 고유키를 해시함수를 이용하여 해시한 값에 기반하여 제1 단말의 MAC 주소, 제2 단말의 IP 주소 및 고유키를 해시함수를 이용하여 해시한 값에 기반하여 제2 단말의 MAC 주소를 획득하고, 획득된 MAC 주소를 포함하는 각각 MAC 프레임으로 구성하여 제2 단말로 전송할 수 있다. Accordingly, the first terminal obtains the MAC address of the first terminal, the IP address of the second terminal, and the unique key based on the hash value of the IP address and unique key of the first terminal using the hash function, Acquires the MAC address of the second terminal based on the first MAC address, and constructs each MAC frame including the obtained MAC address to transmit to the second terminal.

제2 단말은 제1 단말의 IP 주소 및 키를 해시함수로 암호화된 제1 단말의 MAC 주소가 소스 단말의 MAC 주소와 일치하는지 확인함으로써 MAC 프레임을 검증할 수 있다. 이때, 제2 단말은 고유키까지 해시함수로 암호화된 제1 단말의 IP 주소를 해시함수를 사용하여 해시한 값과 소스 어드레스 값을 비교할 수 있다. 만약, 제2 단말은 키까지 해시함수로 암호화된 제1 단말의 IP 주소를 해시한 값과, MAC 프레임 내의 소스 어드레스 값이 일치하지 않을 경우, 제1 단말의 MAC 주소가 유효하지 않음을 판단하여, MAC 프레임을 폐기하고 관리자에게 통보할 수 있다. The second terminal can verify the MAC frame by checking whether the MAC address of the first terminal encrypted with the hash function of the IP address and key of the first terminal matches the MAC address of the source terminal. At this time, the second terminal can compare the IP address of the first terminal encrypted with the hash function up to the unique key using the hash function and the source address value. If the value obtained by hashing the IP address of the first terminal encrypted by the hash function up to the key and the source address value in the MAC frame do not match, the second terminal determines that the MAC address of the first terminal is invalid , The MAC frame can be discarded and the manager can be notified.

다른 실시예로, Layer 3통신을 위하여, 인터넷 통신을 위한 과정을 설명하기로 한다. In another embodiment, a process for Internet communication for Layer 3 communication will be described.

앞서 설명한 것과 마찬가지로, MAC 주소를 생성함에 있어서, IP 주소를 해시함수로 암호화하여 MAC 주소를 생성할 수 있고, IP 주소 및 키를 해시함수로 암호화하여 MAC 주소를 생성할 수도 있다. As described above, in generating the MAC address, the MAC address can be generated by encrypting the IP address with the hash function, and the MAC address can be generated by encrypting the IP address and the key using the hash function.

아웃바운드 트래픽에 대하여, 제1 단말은 디폴트 라우터의 MAC 주소를 목적지 MAC 주소로 설정할 수 있다. 디폴트 라우터는 MAC 프레임을 검사하고, MAC 프레임의 유효성을 검증할 수 있다. 이때, MAC 프레임이 유효하다면, 레이어 3 통신을 시작할 수 있다. 제1 단말은 라우터로 아웃바운드 트래픽을 전송할 수 있다.For outbound traffic, the first terminal may set the MAC address of the default router to the destination MAC address. The default router can check the MAC frame and validate the MAC frame. At this time, if the MAC frame is valid, the layer 3 communication can be started. The first terminal may send outbound traffic to the router.

제1 단말의 IP 주소가 인바운드 트래픽일 경우, 디폴트 라우터는 제1 단말의 IP 주소에 대한 MAC 주소를 계산할 수 있어야 한다. 제1 단말의 MAC 주소를 계산하기 위하여 키가 필요하며, SDN 컨트롤러로부터 고유키를 제공받을 수 있다. If the IP address of the first terminal is inbound traffic, the default router must be able to compute the MAC address for the IP address of the first terminal. A key is required to calculate the MAC address of the first terminal, and a unique key can be provided from the SDN controller.

인증 서버는 제1 단말 및 제2 단말에 고유키를 제공할 수 있다. 여기서, 제2 단말은 라우터일 수 있다. 이때, 고유키는 제1 단말 및 제2 단말의 각각으로부터의 식별 정보에 기초하여 제1 단말 및 제2 단말의 각각이 인증 서버에 인증됨에 따라 제1 단말 및 제2 단말의 각각으로 제공될 수 있다. 이때, 인증 서버에서 각각의 단말의 식별 정보에 기초하여 인증이 수행됨에 따라 SDN 컨트롤러로부터 고유키를 각각의 단말로 전달하도록 제공할 수 있다. The authentication server may provide a unique key to the first terminal and the second terminal. Here, the second terminal may be a router. At this time, the unique key may be provided to each of the first terminal and the second terminal as each of the first terminal and the second terminal is authenticated to the authentication server based on the identification information from each of the first terminal and the second terminal have. At this time, the authentication server may provide the inherent key from the SDN controller to each terminal as the authentication is performed based on the identification information of each terminal.

디폴트 라우터는 제1 단말의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 제1 단말의 MAC 주소를 계산할 수 있다. 디폴트 라우터는 제1 단말의 MAC 주소를 포함하는 MAC 프레임을 제1 단말로 전송할 수 있다. The default router can calculate the MAC address of the first terminal based on the hash value of the IP address of the first terminal using the hash function. The default router may transmit a MAC frame including the MAC address of the first terminal to the first terminal.

제1 단말이 MAC 프레임을 수신할 경우, 소스 MAC 주소와 제1 단말의 해시함수로 암호화된 IP 주소를 계산한 해시한 값을 비교하여 MAC 프레임의 유효성을 검증할 수 있다. When the first terminal receives the MAC frame, the validity of the MAC frame can be verified by comparing the source MAC address with the hash value calculated from the IP address encrypted by the hash function of the first terminal.

새로운 단말이 네트워크에 참여할 경우, 새로운 단말은 물리적 네트워크 스위치 포트에 연결되는 경우에도 고유키를 가지고 있지 않기 때문에 통신을 수행할 수 없다. 인증 서버로부터 유효키를 획득하기 위하여, 대역외 채널을 통하여 인증 서버로 연결될 수 있다. OOC는 네트워크에 유효한 MAC 주소를 가지고 있지 않더라도 인증 서버에서 모든 인증 패킷(예를 들면, Extensible Authentication Protocol:EAP)을 전송함으로써 구현될 수 있다. 이때, EAP는 아이디와 패스워드와 같은 인증에 필요한 정보를 제공할 수 있다. When a new terminal participates in a network, even when a new terminal is connected to a physical network switch port, communication can not be performed because it does not have a unique key. And may be connected to an authentication server via an out-of-band channel to obtain a valid key from an authentication server. The OOC can be implemented by sending all authentication packets (e. G., Extensible Authentication Protocol: EAP) from the authentication server even if the network does not have a valid MAC address. At this time, EAP can provide information necessary for authentication such as an ID and a password.

성공적으로 인증이 수행됨에 따라 새로운 단말은 인증 서버로부터 고유키를 수신할 수 있다. 이때, 인증 및 키 전달 채널은 SSL에 의해 보호될 수 있다. 그러면, 새로운 단말은 고유키를 가지게 되고, 네트워크에 연결될 수 있다. As the authentication is successfully performed, the new terminal can receive the unique key from the authentication server. At this time, the authentication and key delivery channel can be protected by SSL. Then, the new terminal has a unique key and can be connected to the network.

단말의 네트워크를 종료하는 것에 대하여 설명하기로 하자. SDN 컨트롤러는 해당 포트를 사용하지 않을 수 있다. 인증 서버는 키를 갱신할 수 있고, SDN 컨트롤러에게 네트워크에 고유키를 브로드캐스트하도록 요청할 수 있다. 이때, 브로드캐스트되어 수신한 모든 단말들은 업데이트된 고유키를 수신할 수 있다. 그러면, 단말의 네트워크가 철회되어, 통신이 불가능해진다. Hereinafter, the termination of the network of the terminal will be described. The SDN controller may not use the corresponding port. The authentication server can update the key and request the SDN controller to broadcast a unique key to the network. At this time, all terminals broadcasted and received can receive the updated unique key. Then, the network of the terminal is withdrawn, and communication becomes impossible.

도 4는 일 실시예에 있어서, 네트워크에서 통신하는 과정을 설명하기 위한 흐름도이다. 4 is a flowchart for explaining a process of communicating in a network in one embodiment.

제1 단말(410)의 IP 주소는 IPA, 제2 단말(420)의 IP 주소는 IPB이고, 제1 단말은 제2 단말로 통신할 것을 요청할 수 있다. 제1 단말은 레이어 2 프레임을 구성하기 위하여 제2 단말의 MAC 주소가 필요하고, 제2 단말의 MAC 주소는 목적지 MAC 주소로 사용될 수 있다. The IP address of the first terminal 410 is IPA, the IP address of the second terminal 420 is IPB, and the first terminal may request to communicate with the second terminal. The first terminal needs the MAC address of the second terminal to construct the layer 2 frame and the MAC address of the second terminal can be used as the destination MAC address.

제1 단말은 자신의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 MAC 주소를 계산할 수 있다. 또한, 제1 단말은 다른 단말의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 다른 단말의 MAC 주소를 획득할 수 있다. 이때, 제1 단말은 계산된 자신의 MAC 주소, 획득된 다른 단말의 MAC 주소를 포함하는 MAC 프레임을 생성하고, 다른 단말로 전송할 수 있다. The first terminal can calculate the MAC address based on the hash value of the IP address of the first terminal using the hash function. Also, the first terminal can acquire the MAC address of another terminal based on the hash value of the IP address of the other terminal using the hash function. At this time, the first terminal can generate a MAC frame including the calculated MAC address of the terminal and the obtained MAC address of another terminal, and transmit the generated MAC frame to another terminal.

제1 단말은 제1 단말 고유의 MAC 주소를 계산하고, 제1 단말의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 제1 단말의 MAC 주소를 계산하고, 제2 단말의 IP 주소를 해시함수를 사용하여 해시한 값에 기초하여 제2 단말의 MAC 주소를 획득할 수 있다. 이때, 제1 단말은 제1 단말의 IP 주소를 해시함수를 사용하여 암호화할 수 있고 또는 제1 단말의 IP 주소 및 고유키를 해시함수로 사용하여 암호화할 수 있다. 또한, 마찬가지로, 제1 단말은 제2 단말의 IP 주소를 해시함수를 사용하여 암호화할 수 있고, 제2 단말의 IP 주소 및 고유키를 해시함수를 사용하여 암호화할 수 있다. The first terminal computes the MAC address of the first terminal, calculates the MAC address of the first terminal based on the hash value of the IP address of the first terminal using the hash function, The MAC address of the second terminal can be obtained based on the hash value using the hash function. At this time, the first terminal may encrypt the IP address of the first terminal using a hash function, or may encrypt the IP address and the unique key of the first terminal as a hash function. Similarly, the first terminal can encrypt the IP address of the second terminal using the hash function, and can encrypt the IP address and the unique key of the second terminal using the hash function.

이에 따라 제1 단말은 제1 단말의 MAC 주소, 제2 단말의 MAC 주소를 포함하는 MAC 프레임을 생성하여 제2 단말로 전송할 수 있다(430). 제2 단말은 제1 단말로부터 변경된 MAC 주소를 목적지 주소로 하는 MAC 프레임을 수신할 수 있다(432). 이때, 제2 단말의 IP 주소를 해시함수를 사용하여 해시한 값에 기초하여 제2 단말의 MAC 주소가 변경될 수 있다. 제2 단말은 제1 단말의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 계산된 MAC 주소가 MAC 프레임 내의 소스 어드레스 값과 비교함으로써 MAC 프레임을 검증할 수 있다(433, 434). 이때, 제2 단말은 해시함수로 암호화된 제1 단말의 IP 주소를 계산하여 제1 단말의 MAC 주소를 계산할 수 있다. 만약, 제2 단말은 해시함수로 암호화된 제1 단말의 IP 주소를 계산한 제1 단말의 MAC 주소가 유효하지 않을 경우, MAC 프레임을 폐기하고 MAC 주소가 유효하지 않음을 통보할 수 있다. Accordingly, the first terminal may generate a MAC frame including the MAC address of the first terminal and the MAC address of the second terminal, and may transmit the generated MAC frame to the second terminal (430). The second terminal may receive the MAC frame having the changed MAC address as the destination address from the first terminal (432). At this time, the MAC address of the second terminal can be changed based on the value obtained by hashing the IP address of the second terminal using the hash function. The second terminal may verify the MAC frame by comparing the calculated MAC address based on the hash function of the IP address of the first terminal with the source address value in the MAC frame (433, 434). At this time, the second terminal can calculate the MAC address of the first terminal by calculating the IP address of the first terminal encrypted with the hash function. If the MAC address of the first terminal, which has calculated the IP address of the first terminal encrypted with the hash function, is invalid, the second terminal may discard the MAC frame and notify that the MAC address is invalid.

도 5는 일 실시예에 있어서, 인터넷 통신을 수행하는 과정을 설명하기 위한 흐름도이다. 5 is a flowchart illustrating a process of performing Internet communication in an embodiment.

MAC 주소를 생성함에 있어서, IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 MAC 주소를 획득할 수 있고, IP 주소 및 키를 해시함수를 사용하여 해시한 값에 기반하여 MAC 주소를 획득할 수도 있다. 도 5에서는 IP 주소 및 키를 해심함수를 사용하여 해시한 값에 기반하여 MAC 주소를 생성함으로써 인터넷 통신을 수행하는 과정을 설명하기로 한다. In generating the MAC address, the MAC address can be obtained based on the hash value of the IP address using the hash function, and the MAC address can be acquired based on the hash value of the IP address and the key using the hash function It is possible. FIG. 5 illustrates a process of performing Internet communication by generating a MAC address based on a hash value of an IP address and a key using a decryption function.

아웃바운드 트래픽에 대하여, 제1 단말(510)은 디폴트 라우터(520)의 MAC 주소를 목적지 MAC 주소로 설정할 수 있다(541). 제1 단말은 MAC 프레임을 디폴트 라우터로 전송함으로써 디폴트 라우터는 MAC 프레임을 수신할 수 있다(542). 디폴트 라우터는 MAC 프레임을 검사하고, MAC 프레임의 유효성을 검증할 수 있다(543). 이때, MAC 프레임이 유효하다면, 레이어 3 통신을 시작할 수 있다(543). 제1 단말로부터 라우터로 아웃바운드 트래픽을 전송할 수 있게 된다.For outbound traffic, the first terminal 510 may set the MAC address of the default router 520 to the destination MAC address (541). The first terminal may send a MAC frame to the default router so that the default router may receive the MAC frame (542). The default router may check the MAC frame and validate the MAC frame (543). At this time, if the MAC frame is valid, the layer 3 communication can be started (543). It is possible to transmit outbound traffic from the first terminal to the router.

제1 단말의 IP 주소가 인바운드 트래픽일 경우, 디폴트 라우터는 제1 단말의 IP 주소에 대한 MAC 주소를 계산할 수 있어야 한다. 제1 단말의 MAC 주소를 계산하기 위하여 고유키가 필요하며, SDN 컨트롤러(530)로부터 고유키를 제공받을 수 있다(544). 디폴트 라우터는 제1 단말의 IP 주소 및 고유키를 해시함수를 사용하여 해시한 값에 기반하여 제1 단말의 MAC 주소를 계산할 수 있다(545). 디폴트 라우터는 제1 단말의 MAC 주소를 포함하는 MAC 프레임을 생성하여 제1 단말로 전송할 수 있다. If the IP address of the first terminal is inbound traffic, the default router must be able to compute the MAC address for the IP address of the first terminal. A unique key is required to compute the MAC address of the first terminal, and the unique key may be provided from the SDN controller 530 (544). The default router may calculate the MAC address of the first terminal based on the hash value of the IP address and the unique key of the first terminal using the hash function (545). The default router may generate a MAC frame including the MAC address of the first terminal and transmit it to the first terminal.

제1 단말이 MAC 프레임을 수신할 경우, 소스 MAC 주소와 제1 단말의 키까지 해시함수로 암호화된 IP 주소를 계산한 해시한 값을 비교하여 MAC 프레임의 유효성을 검증할 수 있다(546). When the first terminal receives the MAC frame, the validity of the MAC frame can be verified by comparing the hash value calculated by the IP address encrypted with the hash function up to the source MAC address and the key of the first terminal.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be embodyed temporarily. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (10)

제1 단말과 제2 단말 간의 통신 방법에 있어서,
상기 제1 단말에서, 상기 제2 단말 각각의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 상기 제 2 단말의 MAC 주소를 획득하는 단계;
상기 제1 단말에서, 상기 획득된 MAC 주소를 포함하는 MAC 프레임을 생성하고, 상기 제2 단말로 전송하는 단계; 및
상기 제2 단말에서, 상기 제1 단말로부터 상기 MAC 프레임을 수신하는 단계
를 포함하고,
상기 제1 단말에서, 상기 획득된 MAC 주소를 포함하는 MAC 프레임을 생성하고, 상기 제2 단말로 전송하는 단계는,
상기 제1 단말에서, 상기 제1 단말의 IP 주소를 상기 해시함수를 사용하여 해시한 값에 기반하여 계산된 상기 제1 단말의 MAC 주소와 상기 획득된 제2 단말의 MAC 주소를 포함하는 MAC 프레임을 생성하여 제2 단말로 전송하는 단계
를 포함하고,
상기 생성된 MAC 프레임은 상기 제1 단말의 MAC 주소를 소스 주소로서 포함하고,
상기 제2 단말에서, 상기 제1 단말로부터 상기 MAC 프레임을 수신하는 단계는,
상기 제2 단말에서 상기 제1 단말의 IP 주소를 상기 해시함수를 사용하여 해시한 값에 기반하여, 상기 수신된 MAC 프레임의 소스 주소를 검증하고, 상기 제1 단말의 IP 주소를 상기 해시함수를 사용하여 해시한 값과 수신된 MAC 프레임 내의 소스 주소를 비교하고, 비교한 결과 값이 일치하지 않을 경우, 상기 수신된 MAC 프레임을 폐기하는 단계
를 포함하는 통신 방법.
A method for communication between a first terminal and a second terminal,
Obtaining a MAC address of the second terminal based on a value obtained by hashing the IP address of each of the second terminals using a hash function in the first terminal;
Generating, in the first terminal, a MAC frame including the obtained MAC address and transmitting the MAC frame to the second terminal; And
In the second terminal, receiving the MAC frame from the first terminal
Lt; / RTI >
Generating a MAC frame including the obtained MAC address in the first terminal and transmitting the generated MAC frame to the second terminal,
The MAC address of the first terminal and the MAC address of the second terminal, which are calculated based on the value obtained by hashing the IP address of the first terminal using the hash function, And transmitting to the second terminal
Lt; / RTI >
Wherein the generated MAC frame includes a MAC address of the first terminal as a source address,
In the second terminal, the step of receiving the MAC frame from the first terminal comprises:
Verifying a source address of the received MAC frame based on a value obtained by hashing the IP address of the first terminal using the hash function in the second terminal and comparing the IP address of the first terminal with the hash function And compares the hashed value with the source address in the received MAC frame, and discards the received MAC frame if the compared result does not match
/ RTI >
삭제delete 제1항에 있어서,
인증 서버로부터, 상기 제1 단말 및 상기 제2 단말에 고유 키를 제공하는 단계
를 더 포함하고,
상기 제 2 단말의 MAC 주소를 획득하는 단계에서,
상기 제 2 단말의 MAC 주소는 상기 제2 단말의 IP 주소 및 상기 고유 키를 상기 해시함수를 사용하여 해시한 값에 기반하여 획득되는 통신 방법.
The method according to claim 1,
Providing an inherent key from the authentication server to the first terminal and the second terminal;
Further comprising:
In obtaining the MAC address of the second terminal,
Wherein the MAC address of the second terminal is obtained based on a value obtained by hashing the IP address of the second terminal and the unique key using the hash function.
제3항에 있어서,
상기 고유 키는, 상기 제1 단말 및 상기 제2 단말의 각각으로부터의 식별 정보에 기초하여 상기 제1 단말 및 상기 제2 단말의 각각이 상기 인증 서버에 대해 인증됨에 따라, 상기 제1 단말 및 상기 제2 단말의 각각으로 제공되는 통신 방법.
The method of claim 3,
Wherein the inherent key is a unique key that is used by the first terminal and the second terminal as the first terminal and the second terminal are authenticated to the authentication server based on identification information from each of the first terminal and the second terminal, And each of the second terminals.
제1항에 있어서,
상기 제2 단말은 라우터이고, 상기 제 2 단말의 MAC 주소는 상기 라우터의 MAC 주소로서 생성되고,
상기 제1 단말로부터 상기 라우터로 아웃바운드(outbound) 트래픽을 전송하는 단계
를 더 포함하는 통신 방법.
The method according to claim 1,
The second terminal is a router, the MAC address of the second terminal is generated as a MAC address of the router,
Transmitting outbound traffic from the first terminal to the router
Lt; / RTI >
제1항에 있어서,
인증 서버로부터, 상기 제1 단말 및 상기 제2 단말에 고유 키를 제공하는 단계
를 더 포함하고,
상기 제 1 단말의 MAC 주소를 계산하는 단계에서,
상기 제 1 단말의 MAC 주소는 상기 제1 단말의 IP 주소 및 상기 고유 키를 상기 해시함수를 사용하여 해시한 값에 기반하여 계산되는 통신 방법.
The method according to claim 1,
Providing an inherent key from the authentication server to the first terminal and the second terminal;
Further comprising:
In calculating the MAC address of the first terminal,
Wherein the MAC address of the first terminal is calculated based on a value obtained by hashing the IP address of the first terminal and the unique key using the hash function.
제1항에 있어서,
상기 제1 단말은 라우터이고, 상기 제 1 단말의 MAC 주소는 상기 라우터의 MAC 주소로서 생성되고,
상기 제2 단말에서, 상기 소스 주소를 상기 라우터의 MAC 주소로서 검증하고, 상기 라우터로부터 인바운드(inbound) 트래픽을 수신하는 단계
를 더 포함하는 통신 방법.
The method according to claim 1,
Wherein the first terminal is a router, the MAC address of the first terminal is generated as a MAC address of the router,
Verifying, at the second terminal, the source address as the MAC address of the router, and receiving inbound traffic from the router
Lt; / RTI >
제3항에 있어서,
상기 인증 서버에서 상기 고유 키를 갱신하는 단계;
상기 인증 서버로부터, SDN 컨트롤러로 상기 갱신된 고유 키를 브로드캐스트하도록 요청하는 단계;
상기 SDN 컨트롤러에서, 상기 갱신된 고유 키를 브로드캐스트하는 단계; 및
상기 갱신된 고유 키가 수신된 상기 제1 단말 및 상기 제2 단말 간의 통신을 종료하는 단계
를 더 포함하는 통신 방법.
The method of claim 3,
Updating the unique key in the authentication server;
Requesting from the authentication server to broadcast the updated unique key to an SDN controller;
Broadcasting, at the SDN controller, the updated unique key; And
Ending the communication between the first terminal and the second terminal in which the updated unique key is received
Lt; / RTI >
다른 단말과의 통신 방법에 있어서,
자신의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 자신의 MAC 주소를 계산하는 단계;
상기 다른 단말의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 상기 다른 단말의 MAC 주소를 획득하는 단계; 및
상기 계산된 자신의 MAC 주소 및 상기 획득된 다른 단말의 MAC 주소를 포함하는 MAC 프레임을 생성하고, 상기 다른 단말로 전송하는 단계
를 포함하고,
상기 다른 단말에서, 상기 생성된 MAC 프레임을 수신하고, 상기 자신의 IP 주소를 상기 해시함수를 사용하여 해시한 값에 기반하여, 상기 수신된 MAC 프레임의 소스 주소가 검증되고, 상기 자신의 IP 주소를 상기 해시함수를 사용하여 해시한 값과 수신된 MAC 프레임 내의 소스 주소가 비교되고, 비교된 결과 값이 일치하지 않을 경우, 상기 수신된 MAC 프레임이 폐기되는
통신 방법.
In a communication method with another terminal,
Calculating its own MAC address based on a value obtained by hashing its own IP address using a hash function;
Obtaining a MAC address of the other terminal based on a value obtained by hashing the IP address of the other terminal using a hash function; And
Generating a MAC frame including the calculated MAC address of the terminal itself and the obtained MAC address of the other terminal, and transmitting the generated MAC frame to the other terminal
Lt; / RTI >
Receiving the generated MAC frame and verifying the source address of the received MAC frame based on the hash value of the own IP address using the hash function, A hash value obtained by using the hash function is compared with a source address in a received MAC frame, and if the compared result does not match, the received MAC frame is discarded
Communication method.
다른 단말과의 통신 방법에 있어서,
자신의 IP 주소를 해시함수를 사용하여 해시한 값에 기반하여 자신의 MAC 주소를 변경하는 단계;
상기 다른 단말로부터 상기 변경된 MAC 주소를 목적지(destination) 주소로 하는 MAC 프레임을 수신하는 단계; 및
상기 다른 단말의 IP 주소를 상기 해시함수를 사용하여 해시한 값에 기반하여, 상기 수신된 MAC 프레임의 소스 주소가 상기 다른 단말의 MAC 주소에 해당하는지를 검증하는 단계
를 포함하고,
상기 수신된 MAC 프레임의 소스 주소가 상기 다른 단말의 MAC 주소에 해당하는지를 검증하는 단계는,
상기 다른 단말의 IP 주소를 해시함수를 사용하여 해시한 값과 수신된 MAC 프레임 내의 소스 주소를 비교하고, 비교한 결과 값이 일치하지 않을 경우 상기 수신된 MAC 프레임을 폐기하는 단계
를 포함하는 통신 방법.
In a communication method with another terminal,
Changing its own MAC address based on a hash value of its own IP address using a hash function;
Receiving a MAC frame having the changed MAC address as a destination address from the other terminal; And
Verifying whether the source address of the received MAC frame corresponds to the MAC address of the other terminal based on a value obtained by hashing the IP address of the other terminal using the hash function
Lt; / RTI >
Wherein the step of verifying whether the source address of the received MAC frame corresponds to the MAC address of the other terminal comprises:
Comparing the hash value of the IP address of the other terminal using the hash function and the source address in the received MAC frame, and discarding the received MAC frame if the comparison result does not match
/ RTI >
KR1020160149550A 2016-11-10 2016-11-10 Layer 2 access control method and system using cryptographically-generated mac address and sdn application KR101954497B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160149550A KR101954497B1 (en) 2016-11-10 2016-11-10 Layer 2 access control method and system using cryptographically-generated mac address and sdn application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160149550A KR101954497B1 (en) 2016-11-10 2016-11-10 Layer 2 access control method and system using cryptographically-generated mac address and sdn application

Publications (2)

Publication Number Publication Date
KR20180052346A KR20180052346A (en) 2018-05-18
KR101954497B1 true KR101954497B1 (en) 2019-03-05

Family

ID=62454009

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160149550A KR101954497B1 (en) 2016-11-10 2016-11-10 Layer 2 access control method and system using cryptographically-generated mac address and sdn application

Country Status (1)

Country Link
KR (1) KR101954497B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4112962B2 (en) * 2002-10-28 2008-07-02 株式会社東芝 Content transmission / reception system, content transmission device, content reception device, and content transmission / reception method
JP2011053812A (en) * 2009-08-31 2011-03-17 Video Research:Kk Survey system, terminal device, survey server, communication method and communication program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4112962B2 (en) * 2002-10-28 2008-07-02 株式会社東芝 Content transmission / reception system, content transmission device, content reception device, and content transmission / reception method
JP2011053812A (en) * 2009-08-31 2011-03-17 Video Research:Kk Survey system, terminal device, survey server, communication method and communication program

Also Published As

Publication number Publication date
KR20180052346A (en) 2018-05-18

Similar Documents

Publication Publication Date Title
US10097525B2 (en) System, apparatus and method for generating dynamic IPV6 addresses for secure authentication
KR100831437B1 (en) Method, apparatuses and computer program product for sharing cryptographic key with an embedded agent on a network endpoint in a network domain
US9979711B2 (en) Authentication for VLAN tunnel endpoint (VTEP)
US8886934B2 (en) Authorizing physical access-links for secure network connections
US8107396B1 (en) Host tracking in a layer 2 IP ethernet network
US20130227669A1 (en) Method and system for traffic engineering in secured networks
US10587605B2 (en) Certificate pinning in highly secure network environments using public key certificates obtained from a DHCP (dynamic host configuration protocol) server
CN111869249A (en) Safe BLE JUST WORKS pairing method for man-in-the-middle attack
US11153343B2 (en) Generating and analyzing network profile data
US10397047B2 (en) Apparatus, system, and method for secure remote configuration of network devices
US11765164B2 (en) Server-based setup for connecting a device to a local area network
US10587582B2 (en) Certificate pinning by a tunnel endpoint
WO2022100356A1 (en) Identity authentication system, method and apparatus, device, and computer readable storage medium
EP3442195B1 (en) Reliable and secure parsing of packets
Younes Securing ARP and DHCP for mitigating link layer attacks
US10917406B2 (en) Access control method and system, and switch
US20240146728A1 (en) Access control method, access control system, and related device
JP2023015376A (en) Device and method for mediating setting of authentication information
US11546297B2 (en) Secure communication method, client and non-public server
US20230403258A1 (en) Secure configuration of a virtual private network server
KR101954497B1 (en) Layer 2 access control method and system using cryptographically-generated mac address and sdn application
US20210336947A1 (en) Rogue certificate detection
WO2022053055A1 (en) Method for accessing broadband access server, server, and storage medium
US20240106659A1 (en) Authentication process
CN117040817A (en) Authentication method and device

Legal Events

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