KR20170130961A - 보안 통신 장치 및 방법 - Google Patents
보안 통신 장치 및 방법 Download PDFInfo
- Publication number
- KR20170130961A KR20170130961A KR1020160061988A KR20160061988A KR20170130961A KR 20170130961 A KR20170130961 A KR 20170130961A KR 1020160061988 A KR1020160061988 A KR 1020160061988A KR 20160061988 A KR20160061988 A KR 20160061988A KR 20170130961 A KR20170130961 A KR 20170130961A
- Authority
- KR
- South Korea
- Prior art keywords
- packet
- secure
- communication
- remote
- secure communication
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/166—Implementing security features at a particular protocol layer at the transport layer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
보안 통신 장치 및 방법이 개시된다. 본 발명에 따른 보안 통신 장치는, 보안 통신 장치에 설치된 로컬 응용 프로그램이 전송하는 제1 통신 패킷이 루프백 어댑터로 전송되도록, 라우팅 테이블을 수정하는 라우팅 테이블 수정부, 상기 루프백 어댑터가 수신한 상기 제1 통신 패킷을 암호화 및 캡슐화하여 제1 보안 패킷을 생성하는 보안 패킷 생성부, 그리고 생성된 상기 제1 보안 패킷을 상기 로컬 응용 프로그램에 상응하는 원격 응용 프로그램이 설치된 원격 보안 통신 장치로 전송하는 패킷 송수신부를 포함한다.
Description
본 발명은 보안 통신 기술에 관한 것으로, 특히 응용 프로그램의 수정 없이 상호 인증 및 데이터 보호를 위한 안전한 통신 채널을 제공하는 기술에 관한 것이다.
응용 프로그램이 상호 인증 및 데이터 보호 등의 보안 기능을 지원하지 않는 경우, 주로 응용 프로그램간 통신을 안전하게 보호하기 위하여 가상사설망(VPN)을 사용한다.
여기서, 가상사설망은 인터넷 망을 전용선처럼 사용할 수 있도록 특수 통신체계와 암호화 기법을 제공하는 서비스로, 기업 본사와 지사 또는 지사 간에 전용망을 설치한 것과 같은 효과를 거둘 수 있으며, 기존 사설망의 고비용 부담을 해소하기 위해 사용된다.
종래의 가상사설망을 이용하기 위해서는 공중망 네트워크 상에서 가상사설망의 시작점과 끝점에 VPN 장비가 설치되어야 하며, 사용자는 VPN 장비가 설치된 장소에서만 안전한 통신을 할 수 있다. 이로 인하여 흩어져 설치된 여러 대의 기기와 안전한 통신 수행하기 위해서는 여러 대의 VPN 장비를 설치해야 한다. 따라서, VPN 장비 설치 시 비용적 측면 및 공간적 측면에서 많은 어려움이 있다.
이러한 문제를 해결하기 위해서 대한민국 공개 특허 10-2010-0033698(가상사설망 서비스방법 및 그 시스템)는 사용자 단말이 가상사설망으로 접속하고자 하는 경우, 사용자 단말에 가상사설망 소프트웨어를 설치하여, 소프트웨어와 VPN 장비 간의 안전한 통신 채널을 응용 프로그램이 이용할 수 있도록 하는 방법을 제공한다. 이를 통하여 상기 종래 기술은 VPN 장비의 설치 장소 및 설치 비용의 문제를 해결한다.
그러나, 상기 종래 기술은 특정 사이트에 접속하는 사용자를 대상으로 가상사설망 서비스를 제공하는 것으로 그 기능이 한정된다. 즉, 단말과 단말 사이의 안전한 통신을 하기 위해서는 상기 종래 기술을 적용할 수 없는 문제가 발생한다.
따라서, 단말과 단말 사이에 안전한 통신 채널을 형성하여, 응용 프로그램의 수정 없이 안전한 통신을 제공할 수 있도록 하는 기술의 개발이 필요하다.
본 발명의 목적은 응용 프로그램을 수정하지 않아도 별도의 보안 통신 장치를 이용하여, 응용 프로그램 간 안전한 통신을 수행할 수 있도록 하는 보안 채널을 제공하는 것이다.
또한, 본 발명의 목적은 안전한 통신 채널인 보안 채널을 이용하여 응용 프로그램이 송신하는 패킷을 상대 보안 통신 장치로 전송할 수 있도록 하는 것이다.
또한, 본 발명의 목적은 단말과 정해진 사이트 간의 통신에서만 보안 채널을 제공하는 것이 아니라, 보안 통신 장치가 설치된 단말 또는 사이트간 일대일, 일대다, 다대다 연결을 지원하여 안전한 통신을 수행할 수 있도록 하는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 보안 통신 장치는 보안 통신 장치에 설치된 로컬 응용 프로그램이 전송하는 제1 통신 패킷이 루프백 어댑터로 전송되도록, 라우팅 테이블을 수정하는 라우팅 테이블 수정부, 상기 루프백 어댑터가 수신한 상기 제1 통신 패킷을 암호화 및 캡슐화하여 제1 보안 패킷을 생성하는 보안 패킷 생성부, 그리고 생성된 상기 제1 보안 패킷을 상기 로컬 응용 프로그램에 상응하는 원격 응용 프로그램이 설치된 원격 보안 통신 장치로 전송하는 패킷 송수신부를 포함한다.
이때, 상기 원격 보안 통신 장치와 상호 인증 과정을 수행하고, 상기 상호 인증 성공 시, 상기 원격 보안 통신 장치와 통신을 수행하기 위한 보안 채널을 형성하는 보안 채널 형성부를 더 포함할 수 있다.
이때, 상기 패킷 송수신부는, 상기 보안 채널을 통하여 상기 원격 보안 통신 장치로 상기 제1 보안 패킷을 전송할 수 있다.
이때, 상기 보안 채널 형성부는, TLS 갱신 프로토콜 및 TLS 재협상 프로토콜 중 적어도 어느 하나를 기반으로, 상기 보안 채널을 주기적으로 갱신할 수 있다.
이때, 상기 보안 패킷 생성부는, 상기 루프백 어댑터가 수신한 상기 제1 통신 패킷이, 보안 통신의 대상이 되는 응용 프로그램에 상응하는 패킷인지 여부를 판단하고, 상기 보안 통신이 대상이 되는 응용 프로그램에 상응하는 패킷인 경우 상기 제1 보안 패킷을 생성할 수 있다.
이때, 상기 라우팅 테이블 수정부는, 상기 원격 보안 통신 장치의 IP 주소로 향하는 상기 제1 통신 패킷이, 상기 루프백 어댑터로 전송되도록 상기 라우팅 테이블을 수정할 수 있다.
이때, 상기 보안 패킷 생성부는, 암호화된 상기 제1 통신 패킷을 페이로드로 사용하고, 새로운 헤더를 생성하며, 상기 페이로드 및 상기 헤더를 이용하여 제1 메시지 인증 코드를 생성하고, 상기 헤더, 상기 페이로드 및 상기 제1 메시지 인증 코드를 캡슐화하여 상기 제1 보안 패킷을 생성할 수 있다.
이때, 상기 패킷 송수신부가, 상기 원격 보안 통신 장치로부터 암호화 및 캡슐화된 제2 보안 패킷을 수신하면, 상기 제2 보안 패킷을 캡슐 해제하고, 복호화하여 제2 통신 패킷을 획득하며, 상기 제2 통신 패킷에 상응하는 응용 프로그램으로 상기 제2 통신 패킷을 전송하는 보안 패킷 복원부를 더 포함할 수 있다.
이때, 상기 보안 패킷 복원부는, 캡슐 해제된 상기 제2 보안 패킷의 헤더를 분리하고, 상기 제2 보안 패킷에 상응하는 페이로드를 복호화하여 상기 제2 통신 패킷을 획득할 수 있다.
이때, 상기 보안 패킷 복원부는, 상기 제2 보안 패킷을 캡슐 해제하여 획득한 상기 제2 보안 패킷에 상응하는 제2 메시지 인증 코드를 이용하여 메시지 인증 코드 검증을 수행하고, 상기 메시지 인증 코드 검증에 성공한 경우, 상기 제2 보안 패킷을 복호화하여 상기 제2 통신 패킷을 획득할 수 있다.
또한, 본 발명의 일실시예에 따른 보안 통신 장치에 의해 수행되는 보안 통신 방법은 상기 보안 통신 장치에 설치된 로컬 응용 프로그램이 전송하는 제1 통신 패킷이 루프백 어댑터로 전송되도록, 라우팅 테이블을 수정하는 단계, 상기 루프백 어댑터가 수신한 상기 제1 통신 패킷을 암호화 및 캡슐화하여 제1 보안 패킷을 생성하는 단계, 그리고 생성된 상기 제1 보안 패킷을 상기 로컬 응용 프로그램에 상응하는 원격 응용 프로그램이 설치된 원격 보안 통신 장치로 전송하는 단계를 포함한다.
이때, 상기 원격 보안 통신 장치와 상호 인증 과정을 수행하는 단계, 그리고 상기 상호 인증 과정 수행 후, 상기 원격 보안 통신 장치와 통신을 수행하기 위한 보안 채널을 형성하는 단계를 더 포함할 수 있다.
이때, 상기 제1 보안 패킷을 상기 원격 보안 통신 장치로 전송하는 단계는, 상기 보안 채널을 통하여 상기 원격 보안 통신 장치로 상기 제1 보안 패킷을 전송할 수 있다.
이때, TLS 갱신 프로토콜 및 TLS 재협상 프로토콜 중 적어도 어느 하나를 기반으로, 상기 보안 채널을 주기적으로 갱신하는 단계를 더 포함할 수 있다.
이때, 상기 제1 보안 패킷을 생성하는 단계는, 상기 루프백 어댑터가 수신한 상기 제1 통신 패킷이, 보안 통신의 대상이 되는 응용 프로그램에 상응하는 패킷인지 여부를 판단하고, 상기 보안 통신이 대상이 되는 응용 프로그램에 상응하는 패킷인 경우 상기 제1 보안 패킷을 생성할 수 있다.
이때, 상기 라우팅 테이블을 수정하는 단계는, 상기 원격 보안 통신 장치의 IP 주소로 향하는 상기 제1 통신 패킷이, 상기 루프백 어댑터로 전송되도록 상기 라우팅 테이블을 수정할 수 있다.
이때, 상기 제1 보안 패킷을 생성하는 단계는, 암호화된 상기 제1 통신 패킷을 페이로드로 사용하고, 새로운 헤더를 생성하는 단계, 상기 페이로드 및 상기 헤더를 이용하여 제1 메시지 인증 코드를 생성하는 단계, 그리고 상기 헤더, 상기 페이로드 및 상기 제1 메시지 인증 코드를 캡슐화하여 상기 제1 보안 패킷을 생성하는 단계를 포함할 수 있다.
이때, 상기 원격 보안 통신 장치로부터 암호화 및 캡슐화된 제2 보안 패킷을 수신하는 단계, 상기 제2 보안 패킷을 캡슐 해제하고, 복호화하여 제2 통신 패킷을 획득하는 단계, 그리고 상기 제2 통신 패킷에 상응하는 응용 프로그램으로, 상기 제2 통신 패킷을 전송하는 단계를 더 포함할 수 있다.
이때, 상기 제2 통신 패킷을 획득하는 단계는, 캡슐 해제된 상기 제2 보안 패킷의 헤더를 분리하고, 상기 제2 보안 패킷에 상응하는 페이로드를 복호화하여 상기 제2 통신 패킷을 획득할 수 있다.
이때, 상기 제2 보안 패킷을 캡슐 해제하여 획득한 상기 제2 보안 패킷에 상응하는 제2 메시지 인증 코드를 이용하여 메시지 인증 코드 검증을 수행하는 단계를 더 포함하고, 상기 메시지 인증 코드 검증에 성공한 경우, 상기 제2 보안 패킷을 복호화하여 상기 제2 통신 패킷을 획득하는 단계를 수행할 수 있다.
본 발명에 따르면, 응용 프로그램을 수정하지 않아도 별도의 보안 통신 장치를 이용하여, 응용 프로그램 간 안전한 통신을 수행할 수 있도록 하는 보안 채널을 제공할 수 있다.
또한 본 발명에 따르면, 안전한 통신 채널인 보안 채널을 이용하여 응용 프로그램이 송신하는 패킷을 상대 보안 통신 장치로 전송할 수 있다.
또한 본 발명에 따르면, 단말과 정해진 사이트 간의 통신에서만 보안 채널을 제공하는 것이 아니라, 보안 통신 장치가 설치된 단말 또는 사이트간 일대일, 일대다, 다대다 연결을 지원하여 안전한 통신을 수행하도록 할 수 있다.
도 1은 본 발명의 일실시예에 따른 보안 통신 장치가 적용되는 환경을 개략적으로 나타낸 도면이다.
도 2는 본 발명의 일실시예에 따른 보안 통신 장치의 구성을 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 보안 통신 장치의 보안 채널 형성 과정을 설명하기 위한 순서도이다.
도 4는 본 발명의 일실시예에 따른 단말의 각 구성에 상응하는 IP 주소를 나타낸 예시도이다.
도 5는 본 발명의 일실시예에 따른 보안 통신 장치의 보안 패킷 생성 및 전송 과정을 설명하기 위한 순서도이다.
도 6은 본 발명의 일실시예에 따른 단말에서 처리되는 패킷을 설명하기 위한 예시도이다.
도 7은 본 발명의 일실시예 따른 보안 통신 장치의 보안 패킷 수신 과정을 설명하기 위한 순서도이다.
도 8은 본 발명의 일실시예에 따른 보안 통신 장치의 연결 구조를 설명하기 위한 도면이다.
도 9는 본 발명의 일실시예에 따른 보안 통신 장치간 통신이 수행되는 과정을 설명하기 위한 도면이다.
도 10은 본 발명의 일실시예에 따른 보안 통신 장치의 구성을 나타낸 구성도이다.
도 11은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
도 2는 본 발명의 일실시예에 따른 보안 통신 장치의 구성을 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 보안 통신 장치의 보안 채널 형성 과정을 설명하기 위한 순서도이다.
도 4는 본 발명의 일실시예에 따른 단말의 각 구성에 상응하는 IP 주소를 나타낸 예시도이다.
도 5는 본 발명의 일실시예에 따른 보안 통신 장치의 보안 패킷 생성 및 전송 과정을 설명하기 위한 순서도이다.
도 6은 본 발명의 일실시예에 따른 단말에서 처리되는 패킷을 설명하기 위한 예시도이다.
도 7은 본 발명의 일실시예 따른 보안 통신 장치의 보안 패킷 수신 과정을 설명하기 위한 순서도이다.
도 8은 본 발명의 일실시예에 따른 보안 통신 장치의 연결 구조를 설명하기 위한 도면이다.
도 9는 본 발명의 일실시예에 따른 보안 통신 장치간 통신이 수행되는 과정을 설명하기 위한 도면이다.
도 10은 본 발명의 일실시예에 따른 보안 통신 장치의 구성을 나타낸 구성도이다.
도 11은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 보안 통신 장치가 적용되는 환경을 개략적으로 나타낸 도면이다.
도 1에 도시한 바와 같이, 로컬 단말(10)에는 로컬 보안 통신 장치(20)가 설치되어 있고, 원격 단말(30)에는 원격 보안 통신 장치(40)가 설치되어 있다. 그리고 로컬 단말(10) 및 원격 단말(30)에는 각각 로컬 응용 프로그램(15) 및 원격 응용 프로그램(35)이 설치되어 있다.
여기서, 로컬 응용 프로그램(15)과 원격 응용 프로그램(35)은 보안 기능이 구비되지 않은 응용 프로그램일 수 있다. 그리고 로컬 단말(10) 및 원격 단말(30)에는 하나 이상의 응용 프로그램(15, 35)이 설치되어 있을 수 있다.
그리고 로컬 단말(10)은 패킷을 전송하는 로컬 응용 프로그램(15)이 설치된 단말을 의미하고, 원격 단말(30)은 로컬 응용 프로그램(15)으로부터 패킷을 수신하는 단말을 의미한다.
설명의 편의상 로컬 단말(10)과 원격 단말(30)로 구분하여 설명하였으나, 로컬 단말(10)과 원격 단말(30)은 실질적으로 동일하게 구현될 수 있으며, 원격 단말(30)도 로컬 단말(10)로 패킷을 전송할 수 있고, 로컬 단말(10)도 원격 단말(30)로부터 패킷을 수신할 수 있다.
또한, 로컬 보안 통신 장치(20) 및 원격 보안 통신 장치(40)가 각각 로컬 단말(10) 및 원격 단말(30)에 설치되는 것으로 설명하였으나 이에 한정하지 않고, 로컬 보안 통신 장치(200 및 원격 보안 통신 장치(40)는 각가 로컬 서버 및 원격 서버에 설치될 수도 있다.
이하에서는 도 2를 통하여 본 발명의 일실시예에 따른 보안 통신 장치의 구성에 대하여 더욱 자세하게 설명한다.
도 2는 본 발명의 일실시예에 따른 보안 통신 장치의 구성을 나타낸 블록도이다.
도 2에 도시한 바와 같이, 보안 통신 장치(200)는 라우팅 테이블 수정부(210), 보안 채널 형성부(220), 보안 패킷 생성부(230), 패킷 송수신부(240) 및 보안 패킷 복원부(250)를 포함한다.
먼저, 라우팅 테이블 수정부(210)는 보안 통신 장치(200)에 설치된 응용 프로그램이 전송하는 제1 통신 패킷이 루프백 어댑터로 전송되도록 라우팅 테이블을 수정한다. 이때, 라우팅 테이블 수정부(210)는 원격 보안 통신 장치의 IP 주소로 향하는 제1 통신 패킷이, 루프백 어댑터로 전송되도록 라우팅 테이블을 수정할 수 있다.
다음으로 보안 채널 형성부(220)는 원격 보안 통신 장치와의 상호 인증 과정을 수행한다. 그리고 보안 채널 형성부(220)는 상호 인증 성공 시, 원격 보안 통신 장치와 통신을 수행하기 위한 보안 채널을 형성한다.
여기서, 보안 채널 형성부(220)는 상호 인증 과정으로 전송 계층 보안(Transport Layer Security) 프로토콜 또는 그와 유사한 다양한 상호인증 프로토콜을 사용할 수 있다. 또한, 보안 채널 형성부(220)는 보안 채널을 TLS 갱신 프로토콜 및 TLS 재협상 프로토콜 중 적어도 어느 하나를 기반으로 주기적으로 갱신할 수 있다.
그리고 보안 패킷 생성부(230)는 루프백 어댑터가 수신한 제1 통신 패킷을 암호화 및 캡슐화하여 제1 보안 패킷을 생성한다.
이때, 보안 패킷 생성부(230)는 루프백 어댑터가 수신한 제1 통신 패킷이 보안 통신의 대상이 되는 응용 프로그램에 상응하는 패킷인지 여부를 판단하고, 제1 통신 패킷이 보안 통신의 대상이 되는 응용 프로그램에 상응하는 패킷인 것으로 판단된 경우 제1 보안 패킷을 생성할 수 있다.
또한 보안 패킷 생성부(230)는 암호화된 제1 통신 패킷을 페이로드로 사용하고, 새로운 헤더를 생성하며, 페이로드 및 새로 생성된 헤더를 이용하여 제1 메시지 인증 코드를 생성한다. 그리고 보안 패킷 생성부(230)는 헤더, 페이로드 및 제1 메시지 인증 코드를 캡슐화하여 제1 보안 패킷을 생성할 수 있다.
다음으로 패킷 송수신부(240)는 생성된 제1 보안 패킷을 로컬 응용 프로그램에 상응하는 원격 응용 프로그램이 설치된 원격 보안 통신 장치로 전송한다. 이때, 패킷 송수신부(240)는 보안 채널을 이용하여 제1 보안 패킷을 원격 보안 통신 장치로 전송할 수 있다.
또한, 패킷 송수신부(240)는 원격 보안 통신 장치로부터 암호화 및 캡슐화된 제2 보안 패킷을 수신한다.
마지막으로, 보안 패킷 복원부(250)는 수신된 제2 보안 패킷을 캡슐 해제하고, 복호화하여 통신 패킷을 획득한다. 그리고 통신 패킷에 상응하는 응용 프로그램으로 통신 패킷을 전송한다.
이때, 보안 패킷 복원부(250)는 캡슐 해제된 제2 보안 패킷의 헤더를 분리하고, 제2 보안 패킷에 상응하는 페이로드를 복호화하여 통신 패킷을 획득할 수 있다.
또한 보안 패킷 복원부(250)는 제2 보안 패킷을 캡슐 해제하여 획득한 제2 보안 패킷에 상응하는 제2 메시지 인증 코드를 이용하여 메시지 인증 코드 검증을 수행할 수 있다. 그리고 보안 패킷 복원부(250)는 메시지 인증 코드 검증에 성공한 경우, 제2 보안 패킷을 복호화하여 통신 패킷을 획득할 수 있다.
이하에서는 도 3 내지 도 7을 통하여 본 발명의 일실시예에 따른 보안 통신 장치에 의해 수행되는 보안 통신 방법에 대하여 더욱 상세하게 설명한다.
설명의 편의상, 보안 통신 장치(200)가 보안 채널을 형성하는 과정, 보안 패킷을 생성하여 전송하는 과정, 보안 패킷을 수신하는 과정의 세 과정을 수행하는 것으로 나누어 설명하였다.
도 3은 본 발명의 일실시예에 따른 보안 통신 장치의 보안 채널 형성 과정을 설명하기 위한 순서도이다.
먼저, 보안 통신 장치(200)는 루프백 어댑터를 활성화한다(S310).
보안 통신 장치(200)는 루프백(loopback) 어댑터를 사용하기 위하여, 루프백 어댑터를 활성화하고, 루프백 어댑터에 IP 주소를 할당한다.
그리고 보안 통신 장치(200)는 라우팅 테이블을 수정한다(S320).
보안 통신 장치(200)는 특정 목적지로 향하는 패킷을 루프백 어댑터로 향하도록 하기 위하여, 네트워크 라우팅 정보를 수정한다. 여기서 특정 목적지는 원격 보안 통신 장치 및 원격 보안 통신 장치에 설치된 원격 응용 프로그램 중 적어도 어느 하나를 의미할 수 있다.
이때, 보안 통신 장치(200)는 보안 통신 장치(200)를 사용하는 로컬 응용 프로그램의 목록을 저장할 수 있으며, 로컬 응용 프로그램의 목록으로부터 로컬 응용 프로그램별 통신의 대상이 되는 원격 응용 프로그램 정보를 추출할 수 있다.
그리고 보안 통신 장치(200)는 추출된 원격 응용 프로그램 정보를 이용하여, 로컬 응용 프로그램에 상응하는 원격 응용 프로그램의 IP주소를 기반으로 라우팅 테이블을 수정한다. 즉, 보안 통신 장치(200)는 원격 응용 프로그램의 IP주소로 향하는 패킷이 루프백 어댑터로 향하도록 로컬 단말의 라우팅 테이블 정보를 수정한다.
도 4는 본 발명의 일실시예에 따른 단말의 각 구성에 상응하는 IP 주소를 나타낸 예시도이다.
도 4에 도시한 바와 같이, 로컬 단말(400)에는 로컬 응용 프로그램(410)이 설치되어 있고, 로컬 단말(400)은 로컬 보안 통신 장치(420)를 구비하며, 네트워크 인터페이스(430) 및 루프백 인터페이스(440)를 포함한다. 그리고 로컬 응용 프로그램(410)은 네트워크 인터페이스(430)를 사용하고, 로컬 보안 통신 장치(420)는 네트워크 인터페이스(430) 및 루프백 인터페이스(440)를 사용할 수 있다.
마찬가지로 원격 단말(500)에는 원격 응용 프로그램이 설치되어 있으며, 원격 단말(500)은 원격 보안 통신 장치(520)를 구비하고, 네트워크 인터페이스(530) 및 루프백 인터페이스(540)를 포함한다. 또한, 원격 응용 프로그램(510)은 네트워크 인터페이스(530)를 사용하고, 원격 보안 통신 장치(520)는 네트워크 인터페이스(530) 및 루프백 인터페이스(540)를 사용할 수 있다.
이때, 로컬 단말(400)의 네트워크 인터페이스(430) 및 루프백 인터페이스(440)와 원격 단말(500)의 네트워크 인터페이스(530) 및 루프백 인터페이스(540)는 서로 상이한 IP주소를 가진다.
예를 들어, 도 4에 도시한 바와 같이 로컬 단말(400)의 네트워크 인터페이스(430)의 IP주소는 35.25.10.10이고, 루프백 인터페이스(440)의 IP주소는 172.40.0.10일 수 있다. 그리고 원격 단말(500)의 네트워크 인터페이스(530)의 IP주소는 10.100.1.10이고, 루프백 인터페이스(540)의 IP주소는 172.50.0.10일 수 있다.
이때, 로컬 응용 프로그램(410)에 상응하는 패킷이 10.100.1.10을 향하는 경우, 로컬 단말(400)에 설치된 로컬 보안 통신 장치(420)는 10.100.1.10으로 향하는 패킷을 루프백 인터페이스(440)로 향하도록 라우팅 테이블을 수정한다. 즉, 로컬 보안 통신 장치(420)는 10.100.1.10으로 향하는 패킷이 172.40.0.10으로 향할 수 있도록 라우팅 테이블을 수정할 수 있다.
다시 도 3에 다하여 설명하면, 보안 통신 장치(200)는 호스트 방화벽 규칙을 추가한다(S330).
보안 통신 장치(200)는 로컬 응용 프로그램에 대한 직접 접근을 차단하기 위하여, 호스트 방화벽의 규칙을 수정한다. 보안 통신 장치(200)는 호스트 방화벽의 규칙을 수정함으로써 외부 프로그램이 임의로 보안 통신 장치를 사용하는 로컬 응용프로그램에 접근할 수 없도록 제한할 수 있다.
보안 통신 장치(200)는 로컬 응용 프로그램의 목록을 추출하고, 추출된 로컬 응용 프로그램의 목록을 기반으로 로컬 단말의 운영체제에서 제공하는 호스트 방화벽에 새로운 규칙을 추가할 수 있다. 이때, 보안 통신 장치(200)는 로컬 응용 프로그램이 사용하는 수신용 TCP 포트에 보안 통신 장치(200)만이 접근할 수 있도록 접근을 허용하는 방화벽 규칙을 추가할 수 있다.
여기서, 호스트 방화벽은 리눅스 운영체제의 경우 아이피테이블스(iptables)가 사용될 수 있고, 윈도우 운용체제인 경우 윈도우 방화벽이 사용될 수 있다.
또한, 보안 통신 장치(200)는 보안 채널을 생성한다(S340).
보안 통신 장치(200)는 보안 통신 장치(200)와 원격 보안 통신 장치간 안전한 통신 경로인 보안 채널을 생성한다. 여기서, 원격 보안 통신 장치는 원격 응용 프로그램이 설치된 보안 통신 장치를 의미하며, 보안 통신 장치(200)는 원격 응용 프로그램의 정보를 기반으로 보안 통신 장치(200)와 원격 보안 통신 장치간 보안 채널을 생성할 수 있다.
그리고 보안 통신 장치(200)는 생성된 보안 채널을 주기적으로 갱신한다(S350).
보안 통신 장치(200)는 보안 통신 장치(200)의 동작이 종료되는 순간까지 보안 채널을 주기적으로 갱신한다. 이때, 보안 통신 장치(200)가 상호 인증 과정으로 전송 계층 보안(TLS)을 사용하는 경우, 보안 통신 장치(200)는 매 시간 주기마다 TLS 갱신(resuming) 프로토콜을 사용하여 보안 채널을 갱신할 수 있다.
또한, 보안 통신 장치(200)는 기 설정된 횟수 이상의 통신 메시지 교환 이후에는, TLS 재협상(renegotiation) 프로토콜을 사용하여 보안 채널을 갱신할 수도 있다.
도 5는 본 발명의 일실시예에 따른 보안 통신 장치의 보안 패킷 생성 및 전송 과정을 설명하기 위한 순서도이다.
먼저, 보안 통신 장치(200)는 제1 통신 패킷을 수신한다(S510).
보안 통신 장치(200)는 로컬 응용 프로그램이 원격 응용 프로그램으로 전송하고자 하는 제1 통신 패킷을 루프백 어댑터로부터 수신한다. 이때, 제1 통신 패킷은 수정된 라우팅 테이블에 의하여 루프백 어댑터로 전달된 것이다.
그리고 보안 통신 장치(200)는 수신된 제1 통신 패킷이 보안 통신의 대상인지 여부를 판단한다(S520).
보안 통신 장치(200)는 루프백 어댑터를 지속적으로 모니터링하며, 루프백 어댑터로 전달된 제1 통신 패킷을 확인하여, 제1 통신 패킷에 상응하는 로컬 응용 프로그램이 보안 통신의 대상이 되는지 여부를 판단한다. 그리고 로컬 응용 프로그램이 보안 통신의 대상인지 여부를 이용하여 보안 통신 장치(200)는 제1 통신 패킷이 보안 통신의 대상인지 여부를 판단한다.
이때, 제1 통신 패킷이 보안 통신의 대상이 아닌 것으로 판단된 경우, 보안 통신 장치(200)는 제1 통신 패킷을 전송한다(S530).
반면, 제1 통신 패킷이 보안 통신의 대상인 것으로 판단된 경우, 보안 통신 장치(200)는 제1 보안 패킷을 생성한다(S540).
보안 통신 장치(200)는 원격 보안 통신 장치와 공유된 암호키를 이용하여 제1 통신 패킷을 암호화한다. 이때, 보안 통신 장치(200)는 ARIA, AES, LEA 등의 비밀키 알고리즘 및 RSA, DSA 등의 공개키 알고리즘 중 적어도 어느 하나를 이용하여 제1 통신 패킷을 암호화할 수 있다.
그리고 보안 통신 장치(200)는 암호화된 제1 통신 패킷을 새로운 페이로드(Payload)로 사용하고, 새로운 헤더를 생성한다. 또한, 보안 통신 장치(200)는 페이로드 및 새로 생성된 헤더를 이용하여 제1 메시지 인증 코드를 생성한다.
이때, 보안 통신 장치(200)는 비밀키 알고리즘을 사용하는 경우, HMAC을 사용하여 제1 메시지 인증 코드를 생성할 수 있다. 또한, 보안 통신 장치(200)가 공개키 알고리즘을 사용하는 경우 전자서명을 통하여 제1 메시지 인증 코드를 생성할 수도 있다.
그리고 보안 통신 장치(200)는 헤더, 페이로드 및 제1 메시지 인증 코드를 병합하고, 캡슐화하여 제1 보안 패킷을 생성한다.
마지막으로 보안 통신 장치(200)는 원격 단말의 원격 보안 통신 장치로 제1 보안 패킷을 전송한다(S550).
도 6은 본 발명의 일실시예에 따른 단말에서 처리되는 패킷을 설명하기 위한 예시도이다.
도 6에 도시한 바와 같이, 로컬 단말의 로컬 응용 프로그램이 전송한 제1 통신 패킷은 헤더 및 페이로드로 구성된다. 제1 통신 패킷은 로컬 단말의 IP주소(35.25.10.10)를 가지고, 목적지 주소로 원격 단말의 IP주소(10.100.1.10)을 가진다. 로컬 보안 통신 장치가 루프백 어댑터를 통해서 취득한 패킷 역시 최초 패킷 주소인 제1 통신 패킷과 동일한 주소를 가진다.
그리고 제1 통신 패킷은 로컬 단말에 설치된 보안 통신 장치(200)의 보안 패킷 생성부에 의해 암호화된다. 이때, 보안 패킷 생성부는 제1 통신 패킷을 새로운 페이로드(암호화된 패킷)으로 생성하고, 새로운 헤더 및 메시지 인증 코드를 생성한다. 또한, 보안 패킷 생성부는 헤더, 페이로드 및 메시지 인증 코드를 캡슐화하여 제1 보안 패킷을 생성하고, 생성된 제1 보안 패킷을 원격 단말의 원격 보안 통신 장치로 전송한다.
제1 보안 패킷의 출발지 주소는 로컬 단말에 설치된 로컬 보안 통신 장치의 IP주소(172.40.0.10)이고, 목적지 주소는 원격 단말에 설치된 원격 보안 통신 장치의 IP주소(172.40.0.50)이다.
이후 원격 보안 통신 장치의 보안 패킷 복원부에서 캡슐화를 해제한 패킷은 최초 패킷인 제1 통신 패킷과 동일한 출발지 주소(35.25.10.10) 및 목적지 주소(10.100.1.10)을 지닌다.
설명의 편의상, 로컬 보안 통신 장치(200)가 제1 보안 패킷을 생성하여 원격 보안 통신 장치로 전송하는 것으로 설명하였으나 이에 한정하지 않고, 제1 보안 패킷을 수신한 원격 보안 통신 장치도 로컬 보안 통신 장치(200)로 보안 패킷을 생성하여 전송할 수 있다.
도 7은 본 발명의 일실시예 따른 보안 통신 장치의 보안 패킷 수신 과정을 설명하기 위한 순서도이다.
도 7과 같이, 보안 통신 장치(200)는 보안 채널을 통해 제2 보안 패킷을 수신한다(S710).
설명의 편의상 도 7에서의 보안 통신 장치(200)는 원격 단말에 설치된 원격 보안 통신 장치를 의미하는 것으로 설명하였으나, 원격 보안 통신 장치로부터 보안 패킷을 수신한 로컬 보안 통신 장치를 의미할 수도 있다.
다음으로 보안 통신 장치(200)는 제2 메시지 인증 코드 검증을 수행한다(S720).
보안 통신 장치(200)는 캡슐화된 제2 보안 패킷의 페이로드를 이용하여 로컬 보안 통신 장치와 공유된 암호화 키를 이용하여 인증값을 생성한다. 그리고 보안 통신 장치(200)는 캡슐화된 제2 보안 패킷의 말단에 위치한 제2 메시지 인증 코드와 생성된 인증값이 일치하는지 여부를 검사한다.
그리고 보안 통신 장치(200)는 메시지 인증 코드 검증에 성공하였는지 여부를 판단하고(S730), 판단 결과 검증에 실패한 경우 보안 패킷 수신 과정을 종료한다. 이때, 보안 통신 장치(200)는 수신된 제2 보안 패킷을 폐기하고, 패킷 수신 과정을 종료할 수 있다.
반면, 메시지 인증 코드 검증에 성공한 경우, 보안 통신 장치(200)는 수신된 제2 보안 패킷을 복호화한다(S740).
보안 통신 장치(200)는 캡슐화된 제2 보안 패킷의 페이로드를 공유된 암호키로 복호화하여 제2 통신 패킷을 획득한다.
그리고 보안 통신 장치(200)는 획득한 제2 통신 패킷을 응용 프로그램으로 전송한다(S750).
즉, 보안 통신 장치(200)가 원격 보안 통신 장치인 경우, 획득한 제2 통신 패킷은 원래의 목적지인 원격 응용 프로그램으로 전달된다.
이와 같이, 본 발명의 일실시예에 따른 보안 통신 장치는 로컬 응용 프로그램 원격 응용 프로그램 자체와 해당 응용 프로그램들의 설정값을 수정하지 않고도, 로컬 응용 프로그램과 원격 응용 프로그램간 안전한 통신을 수행할 수 있도록 지원할 수 있다.
도 8은 본 발명의 일실시예에 따른 보안 통신 장치의 연결 구조를 설명하기 위한 도면이다.
도 8에 도시한 바와 같이, 보안 통신 장치(800)는 일대일, 일대다, 다대다 등 다양한 형태의 보안 채널(700)을 형성할 수 있다. 그리고 각각의 보안 통신 장치(800_1, 800_3, 800_5)는 상대 보안 통신 장치(800_2, 800_4, 800_6)에 대하여, 로컬 보안 통신 장치의 역할 및 원격 보안 통신 장치의 역할을 번갈아가며 통신을 수행할 수 있다.
도 9는 본 발명의 일실시예에 따른 보안 통신 장치간 통신이 수행되는 과정을 설명하기 위한 도면이다.
도 9와 같이, 로컬 단말(900)에는 로컬 응용 프로그램 및 로컬 보안 통신 장치가 설치되어 있고, 원격 단말(1000)에는 원격 응용 프로그램 및 원격 보안 통신 장치가 설치되어 있다. 또한, 로컬 단말(900) 및 원격 단말(1000)은 네트워크 카드 및 루프백 어댑터를 구비한다.
로컬 단말(900)의 루프백 어댑터는 로컬 응용 프로그램이 전송하고자 하는 패킷을 네트워크 카드로부터 수신하여 로컬 보안 통신 장치로 전송한다. 그리고 로컬 보안 통신 장치는 로컬 단말(900)과 원격 단말(1000)간의 안전한 통신 채널인 보안 채널을 통하여 수신된 패킷을 원격 단말(1000)로 전송한다.
이때, 로컬 보안 통신 장치는 패킷의 암호화 및 캡슐화를 수행하여 원격 단말(1000)로 전송할 수 있다. 또한, 패킷을 수신한 원격 단말(1000)의 원격 보안 장치는 수신된 패킷의 캡슐을 해제하고 복호화하여, 패킷의 목적지에 상응하는 원격 응용 프로그램으로 전송한다.
설명의 편의상 로컬 단말(900)의 로컬 보안 통신 장치가 패킷을 전송하고, 원격 단말(1000)의 원격 보안 통신 장치가 패킷을 수신하는 것으로 설명하였으나 이에 한정하지 않고, 원격 보안 통신 장치가 패킷을 전송하고, 로컬 보안 통신 장치가 패킷을 수신할 수도 있다.
도 10은 본 발명의 일실시예에 따른 보안 통신 장치의 구성을 나타낸 구성도이다.
도 10에 도시한 바와 같이, 보안 통신 장치는 어댑터 관리부, 패킷 선별부, 패킷 캡슐화부, 패킷 전송부, 서비스 관리부, 보안 채널 관리부, 패킷 수신부, 패킷 복원부, 경로 관리부 및 응용 보호부를 포함할 수 있다.
먼저, 어댑터 관리부는 보안 통신 장치가 설치된 단말의 루프백 어댑터를 활성화하여, 보안 통신 장치가 루프백 어댑터를 사용할 수 있도록 한다. 그리고 어댑터 관리부는 루프백 어댑터를 관리하고, 루프백 어댑터에 별도의 IP주소를 할당한다.
다음으로 패킷 선별부는 루프백 어댑터를 지속적으로 모니터링하고, 루프백 어댑터를 통해 수신되는 패킷 중에서 사전에 정의된 응용 프로그램에 해당하는 패킷을 선정한다.
패킷 캡슐화부는 선정된 패킷을 암호화 및 캡슐화하여 보안 패킷을 생성한다. 이때, 패킷 캡슐화부는 보안 패킷 헤더, 새로운 페이로드 및 메시지 인증 코드를 병합하여 보안 패킷을 생성한다. 또한, 패킷 캡슐화부는 보안 패킷의 목적지를 원격 단말의 원격 보안 통신 장치로 설정한다.
그리고 패킷 전송부는 보안 패킷을 상대 단말인 원격 단말의 원격 보안 통신 장치로 전송한다. 이때, 패킷 캡슐화부 및 패킷 전송부는 각각 도 2에 도시한 보안 패킷 생성부(230) 및 패킷 송수신부(240)와 실질적으로 동일하게 구현될 수 있다.
서비스 관리부는 보안 통신 장치를 사용하는 응용 프로그램(로컬 응용 프로그램)의 목록 및 각 응용 프로그램이 연결하고자 하는 상대 목록(원격 응용프로그램)을 관리한다.
보안 채널 관리부는 보안 통신 장치의 동작이 종료될 때까지 주기적으로 보안 채널을 갱신한다. 보안 통신 장치가 상호 인증 과정으로 전송 계층 보안(TLS)을 사용하는 경우, 보안 채널 관리부는 매 시간 주기마다 TLS 갱신 프로토콜을 사용하고, 일정 회수의 통신 메시지 교환 이후에는 TLS 재협상 프로토콜을 사용할 수 있다. 여기서 보안 채널 관리부는 도 2의 보안 채널 형성부(220)와 실질적으로 동일한 기능을 수행할 수 있다.
그리고 패킷 수신부는 원격 보안통신 장치로부터 보안 패킷을 수신하고, 패킷 복원부는 보안 패킷의 캡슐을 해제하고, 암호화된 페이로드를 복호화한다. 여기서 패킷 수신부는 도 2의 패킷 송수신부(240) 및 보안 패킷 복원부(250)에 상응하는 동작을 수행할 수 있다.
경로 관리부는 로컬 보안 통신 장치를 이용하는 로컬 응용 프로그램의 목록과 각 로컬 응용 프로그램별로 통신하는 원격 응용 프로그램의 목록을 추출한다. 그리고 경로 관리부는 원격 응용 프로그램의 목록에 상응하는 특정 목적지로 향하는 패킷을 루프백 어댑터로 전달될 수 있도록 네트워크 라우팅 경로를 수정한다. 이때, 경로 관리부는 도 2에 도시된 보안 통신 장치의 라우팅 테이블 수정부(210)와 실질적으로 동일한 기능을 수행할 수 있다.
다음으로 응용 보호부는 단말에 설치된 응용 프로그램에 대한 임의 접근을 차단한다. 즉, 응용 보호부는 보안 통신 장치를 사용하는 응용 프로그램이 수신 대기하고 있는 포트에 대하여, 보안 통신 장치를 제외한 다른 통신 접근 시도를 차단한다.
도 11은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
도 11을 참조하면, 본 발명의 실시예는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(1100)에서 구현될 수 있다. 도 11에 도시된 바와 같이, 컴퓨터 시스템(1100)은 버스(1120)를 통하여 서로 통신하는 하나 이상의 프로세서(1110), 메모리(1130), 사용자 입력 장치(1140), 사용자 출력 장치(1150) 및 스토리지(1160)를 포함할 수 있다. 또한, 컴퓨터 시스템(1100)은 네트워크(1180)에 연결되는 네트워크 인터페이스(1170)를 더 포함할 수 있다. 프로세서(1110)는 중앙 처리 장치 또는 메모리(1130)나 스토리지(1160)에 저장된 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(1130) 및 스토리지(1160)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들어, 메모리는 ROM(1131)이나 RAM(1132)을 포함할 수 있다.
따라서, 본 발명의 실시예는 컴퓨터로 구현된 방법이나 컴퓨터에서 실행 가능한 명령어들이 기록된 비일시적인 컴퓨터에서 읽을 수 있는 매체로 구현될 수 있다. 컴퓨터에서 읽을 수 있는 명령어들이 프로세서에 의해서 수행될 때, 컴퓨터에서 읽을 수 있는 명령어들은 본 발명의 적어도 한 가지 태양에 따른 방법을 수행할 수 있다.
이상에서와 같이 본 발명에 따른 보안 통신 장치 및 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
10: 로컬 단말
15: 로컬 응용 프로그램
20: 로컬 보안 통신 장치 30: 원격 단말
35: 원격 응용 프로그램 40: 원격 보안 통신 장치
200: 보안 통신 장치 210: 라우팅 테이블 수정부
220: 보안 채널 형성부 230: 보안 패킷 생성부
240: 패킷 송수신부 250: 보안 패킷 복원부
400: 로컬 단말 410: 로컬 운용 프로그램
420: 로컬 보안 통신 장치 430, 530: 네트워크 인터페이스
440, 540: 루프백 인터페이스 500: 원격 단말
510: 원격 응용 프로그램 520: 원격 보안 통신 장치
700: 보안 채널 800: 단말
900: 로컬 단말 1000: 원격 단말
1100: 컴퓨터 시스템 1110: 프로세서
1120: 버스 1130: 메모리
1131: 롬 1132: 램
1140: 사용자 입력 장치 1150: 사용자 출력 장치
1160: 스토리지 1170: 네트워크 인터페이스
1180: 네트워크
20: 로컬 보안 통신 장치 30: 원격 단말
35: 원격 응용 프로그램 40: 원격 보안 통신 장치
200: 보안 통신 장치 210: 라우팅 테이블 수정부
220: 보안 채널 형성부 230: 보안 패킷 생성부
240: 패킷 송수신부 250: 보안 패킷 복원부
400: 로컬 단말 410: 로컬 운용 프로그램
420: 로컬 보안 통신 장치 430, 530: 네트워크 인터페이스
440, 540: 루프백 인터페이스 500: 원격 단말
510: 원격 응용 프로그램 520: 원격 보안 통신 장치
700: 보안 채널 800: 단말
900: 로컬 단말 1000: 원격 단말
1100: 컴퓨터 시스템 1110: 프로세서
1120: 버스 1130: 메모리
1131: 롬 1132: 램
1140: 사용자 입력 장치 1150: 사용자 출력 장치
1160: 스토리지 1170: 네트워크 인터페이스
1180: 네트워크
Claims (20)
- 보안 통신 장치에 설치된 로컬 응용 프로그램이 전송하는 제1 통신 패킷이 루프백 어댑터로 전송되도록, 라우팅 테이블을 수정하는 라우팅 테이블 수정부,
상기 루프백 어댑터가 수신한 상기 제1 통신 패킷을 암호화 및 캡슐화하여 제1 보안 패킷을 생성하는 보안 패킷 생성부, 그리고
생성된 상기 제1 보안 패킷을 상기 로컬 응용 프로그램에 상응하는 원격 응용 프로그램이 설치된 원격 보안 통신 장치로 전송하는 패킷 송수신부
를 포함하는 보안 통신 장치. - 제1항에 있어서,
상기 원격 보안 통신 장치와 상호 인증 과정을 수행하고, 상기 상호 인증 성공 시, 상기 원격 보안 통신 장치와 통신을 수행하기 위한 보안 채널을 형성하는 보안 채널 형성부를 더 포함하는 보안 통신 장치. - 제2항에 있어서,
상기 패킷 송수신부는,
상기 보안 채널을 통하여 상기 원격 보안 통신 장치로 상기 제1 보안 패킷을 전송하는 보안 통신 장치. - 제2항에 있어서,
상기 보안 채널 형성부는,
TLS 갱신 프로토콜 및 TLS 재협상 프로토콜 중 적어도 어느 하나를 기반으로, 상기 보안 채널을 주기적으로 갱신하는 보안 통신 장치. - 제1항에 있어서,
상기 보안 패킷 생성부는,
상기 루프백 어댑터가 수신한 상기 제1 통신 패킷이, 보안 통신의 대상이 되는 응용 프로그램에 상응하는 패킷인지 여부를 판단하고, 상기 보안 통신이 대상이 되는 응용 프로그램에 상응하는 패킷인 경우 상기 제1 보안 패킷을 생성하는 보안 통신 장치. - 제1항에 있어서,
상기 라우팅 테이블 수정부는,
상기 원격 보안 통신 장치의 IP 주소로 향하는 상기 제1 통신 패킷이, 상기 루프백 어댑터로 전송되도록 상기 라우팅 테이블을 수정하는 보안 통신 장치. - 제1항에 있어서,
상기 보안 패킷 생성부는,
암호화된 상기 제1 통신 패킷을 페이로드로 사용하고, 새로운 헤더를 생성하며, 상기 페이로드 및 상기 헤더를 이용하여 제1 메시지 인증 코드를 생성하고, 상기 헤더, 상기 페이로드 및 상기 제1 메시지 인증 코드를 캡슐화하여 상기 제1 보안 패킷을 생성하는 보안 통신 장치. - 제1항에 있어서,
상기 패킷 송수신부가, 상기 원격 보안 통신 장치로부터 암호화 및 캡슐화된 제2 보안 패킷을 수신하면,
상기 제2 보안 패킷을 캡슐 해제하고, 복호화하여 제2 통신 패킷을 획득하며, 상기 제2 통신 패킷에 상응하는 응용 프로그램으로 상기 제2 통신 패킷을 전송하는 보안 패킷 복원부를 더 포함하는 보안 통신 장치. - 제8항에 있어서,
상기 보안 패킷 복원부는,
캡슐 해제된 상기 제2 보안 패킷의 헤더를 분리하고, 상기 제2 보안 패킷에 상응하는 페이로드를 복호화하여 상기 제2 통신 패킷을 획득하는 보안 통신 장치. - 제9항에 있어서,
상기 보안 패킷 복원부는,
상기 제2 보안 패킷을 캡슐 해제하여 획득한 상기 제2 보안 패킷에 상응하는 제2 메시지 인증 코드를 이용하여 메시지 인증 코드 검증을 수행하고, 상기 메시지 인증 코드 검증에 성공한 경우, 상기 제2 보안 패킷을 복호화하여 상기 제2 통신 패킷을 획득하는 보안 통신 장치. - 보안 통신 장치에 의해 수행되는 보안 통신 방법에 있어서,
상기 보안 통신 장치에 설치된 로컬 응용 프로그램이 전송하는 제1 통신 패킷이 루프백 어댑터로 전송되도록, 라우팅 테이블을 수정하는 단계,
상기 루프백 어댑터가 수신한 상기 제1 통신 패킷을 암호화 및 캡슐화하여 제1 보안 패킷을 생성하는 단계, 그리고
생성된 상기 제1 보안 패킷을 상기 로컬 응용 프로그램에 상응하는 원격 응용 프로그램이 설치된 원격 보안 통신 장치로 전송하는 단계
를 포함하는 보안 통신 방법. - 제11항에 있어서,
상기 원격 보안 통신 장치와 상호 인증 과정을 수행하는 단계, 그리고
상기 상호 인증 과정 수행 후, 상기 원격 보안 통신 장치와 통신을 수행하기 위한 보안 채널을 형성하는 단계
를 더 포함하는 보안 통신 방법. - 제12항에 있어서,
상기 제1 보안 패킷을 상기 원격 보안 통신 장치로 전송하는 단계는,
상기 보안 채널을 통하여 상기 원격 보안 통신 장치로 상기 제1 보안 패킷을 전송하는 보안 통신 방법. - 제12항에 있어서,
TLS 갱신 프로토콜 및 TLS 재협상 프로토콜 중 적어도 어느 하나를 기반으로, 상기 보안 채널을 주기적으로 갱신하는 단계를 더 포함하는 보안 통신 방법. - 제11항에 있어서,
상기 제1 보안 패킷을 생성하는 단계는,
상기 루프백 어댑터가 수신한 상기 제1 통신 패킷이, 보안 통신의 대상이 되는 응용 프로그램에 상응하는 패킷인지 여부를 판단하고, 상기 보안 통신이 대상이 되는 응용 프로그램에 상응하는 패킷인 경우 상기 제1 보안 패킷을 생성하는 보안 통신 방법. - 제11항에 있어서,
상기 라우팅 테이블을 수정하는 단계는,
상기 원격 보안 통신 장치의 IP 주소로 향하는 상기 제1 통신 패킷이, 상기 루프백 어댑터로 전송되도록 상기 라우팅 테이블을 수정하는 보안 통신 방법. - 제11항에 있어서,
상기 제1 보안 패킷을 생성하는 단계는,
암호화된 상기 제1 통신 패킷을 페이로드로 사용하고, 새로운 헤더를 생성하는 단계,
상기 페이로드 및 상기 헤더를 이용하여 제1 메시지 인증 코드를 생성하는 단계, 그리고
상기 헤더, 상기 페이로드 및 상기 제1 메시지 인증 코드를 캡슐화하여 상기 제1 보안 패킷을 생성하는 단계를 포함하는 보안 통신 방법. - 제11항에 있어서,
상기 원격 보안 통신 장치로부터 암호화 및 캡슐화된 제2 보안 패킷을 수신하는 단계,
상기 제2 보안 패킷을 캡슐 해제하고, 복호화하여 제2 통신 패킷을 획득하는 단계, 그리고
상기 제2 통신 패킷에 상응하는 응용 프로그램으로, 상기 제2 통신 패킷을 전송하는 단계를 더 포함하는 보안 통신 방법. - 제18항에 있어서,
상기 제2 통신 패킷을 획득하는 단계는,
캡슐 해제된 상기 제2 보안 패킷의 헤더를 분리하고, 상기 제2 보안 패킷에 상응하는 페이로드를 복호화하여 상기 제2 통신 패킷을 획득하는 보안 통신 방법. - 제19항에 있어서,
상기 제2 보안 패킷을 캡슐 해제하여 획득한 상기 제2 보안 패킷에 상응하는 제2 메시지 인증 코드를 이용하여 메시지 인증 코드 검증을 수행하는 단계를 더 포함하고,
상기 메시지 인증 코드 검증에 성공한 경우, 상기 제2 보안 패킷을 복호화하여 상기 제2 통신 패킷을 획득하는 단계를 수행하는 것을 특징으로 하는 보안 통신 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160061988A KR101837064B1 (ko) | 2016-05-20 | 2016-05-20 | 보안 통신 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160061988A KR101837064B1 (ko) | 2016-05-20 | 2016-05-20 | 보안 통신 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170130961A true KR20170130961A (ko) | 2017-11-29 |
KR101837064B1 KR101837064B1 (ko) | 2018-03-12 |
Family
ID=60812378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160061988A KR101837064B1 (ko) | 2016-05-20 | 2016-05-20 | 보안 통신 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101837064B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190065091A (ko) * | 2017-12-01 | 2019-06-11 | 삼성에스디에스 주식회사 | 메시지 처리 시스템에서 보안 채널 형성 장치 및 방법 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9300570B2 (en) | 2012-05-22 | 2016-03-29 | Harris Corporation | Multi-tunnel virtual private network |
-
2016
- 2016-05-20 KR KR1020160061988A patent/KR101837064B1/ko active IP Right Grant
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190065091A (ko) * | 2017-12-01 | 2019-06-11 | 삼성에스디에스 주식회사 | 메시지 처리 시스템에서 보안 채널 형성 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR101837064B1 (ko) | 2018-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11316677B2 (en) | Quantum key distribution node apparatus and method for quantum key distribution thereof | |
CN107018134B (zh) | 一种配电终端安全接入平台及其实现方法 | |
US8713305B2 (en) | Packet transmission method, apparatus, and network system | |
JP4407452B2 (ja) | サーバ、vpnクライアント、vpnシステム、及びソフトウェア | |
JP4081724B1 (ja) | クライアント端末、中継サーバ、通信システム、及び通信方法 | |
WO2017185692A1 (zh) | 密钥分发、认证方法,装置及系统 | |
EP3309993A1 (en) | Method, device and system for processing vxlan packet | |
JP2016510196A (ja) | 安全なネットワーク通信 | |
US20170126623A1 (en) | Protected Subnet Interconnect | |
US20190199722A1 (en) | Systems and methods for networked computing | |
US9473466B2 (en) | System and method for internet protocol security processing | |
KR20130096320A (ko) | 링크 계층 보안 전송을 지원하는 스위칭 장치 및 그의 데이터 처리 방법 | |
KR20180130203A (ko) | 사물인터넷 디바이스 인증 장치 및 방법 | |
US20210211413A1 (en) | Device and method for data transmission | |
Farinacci et al. | Locator/ID separation protocol (LISP) data-plane confidentiality | |
US10015208B2 (en) | Single proxies in secure communication using service function chaining | |
CN108924157B (zh) | 一种基于IPSec VPN的报文转发方法及装置 | |
CN112887187B (zh) | 一种设备间通信建立方法、系统、装置、设备及介质 | |
CN114143050A (zh) | 一种视频数据加密系统 | |
KR101837064B1 (ko) | 보안 통신 장치 및 방법 | |
KR101457455B1 (ko) | 클라우드 네트워크 환경에서의 데이터 보안 장치 및 방법 | |
JP4933286B2 (ja) | 暗号化パケット通信システム | |
EP3944555B1 (en) | Communication system, key management server device, router, and computer-readable medium | |
JP2023042903A (ja) | 通信装置、通信方法および通信システム | |
JP2008066882A (ja) | 暗号鍵配信装置および暗号鍵配信方法 |
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 |