KR102016462B1 - Apparatus and method for secret communication using network error - Google Patents

Apparatus and method for secret communication using network error Download PDF

Info

Publication number
KR102016462B1
KR102016462B1 KR1020170093308A KR20170093308A KR102016462B1 KR 102016462 B1 KR102016462 B1 KR 102016462B1 KR 1020170093308 A KR1020170093308 A KR 1020170093308A KR 20170093308 A KR20170093308 A KR 20170093308A KR 102016462 B1 KR102016462 B1 KR 102016462B1
Authority
KR
South Korea
Prior art keywords
packet
secret data
header
data packet
error
Prior art date
Application number
KR1020170093308A
Other languages
Korean (ko)
Other versions
KR20190010980A (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 KR1020170093308A priority Critical patent/KR102016462B1/en
Publication of KR20190010980A publication Critical patent/KR20190010980A/en
Application granted granted Critical
Publication of KR102016462B1 publication Critical patent/KR102016462B1/en

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • H04L1/0042Encoding specially adapted to other signal generation operation, e.g. in order to reduce transmit distortions, jitter, or to improve signal shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes

Abstract

발명은 비밀 통신 기술에 관한 것으로서, 구체적으로는 무선 통신 환경의 에러 분포를 이용한 비밀 통신 기술에 관한 것이다. 본 발명의 실시예에 따르면, 송신 단말이 네트워크를 통해 연결된 수신 단말에 비밀 데이터를 송신하는 방법에 있어서, 암호화 키를 기반으로 비밀 데이터 패킷을 코딩하는 단계, 비밀 데이터 패킷의 목적지를 미리 설정된 임의 목적지로 변경하는 단계 및 코딩된 비밀 데이터 패킷을 패딩 공간에 맵핑하는 단계를 포함하는 방법이 제공된다.The present invention relates to a secret communication technology, and more particularly, to a secret communication technology using error distribution in a wireless communication environment. According to an embodiment of the present invention, a method of transmitting secret data to a receiving terminal connected through a network by a transmitting terminal, the method comprising: coding a secret data packet based on an encryption key; And mapping the coded secret data packet to the padding space.

Description

네트워크 에러를 이용한 비밀 통신 방법 및 장치{APPARATUS AND METHOD FOR SECRET COMMUNICATION USING NETWORK ERROR}Secret communication method and device using network error {APPARATUS AND METHOD FOR SECRET COMMUNICATION USING NETWORK ERROR}

본 발명은 비밀 통신 기술에 관한 것으로서, 구체적으로는 무선 통신 환경의 에러 분포를 이용한 비밀 통신 기술에 관한 것이다. TECHNICAL FIELD The present invention relates to secret communication technology, and more particularly, to secret communication technology using error distribution in a wireless communication environment.

일반적으로 무선 통신 환경에서 데이터 전송은 브로드캐스팅 방식을 이루어진다. 이때, 동일한 무선 통신 환경에 접속할 수 있는 제 3 자는 패킷 분석기를 이용하여 전송되는 데이터를 감청할 수 있는 문제가 발생한다. 이에 따라, 종래에는 데이터를 송신하는 측과 수신하는 측 사이에서 중재 역할을 하는 별도의 서버를 두어 데이터를 송신하는 측과 수신하는 측의 암호화 방법을 공유하게 함으로서, 이러한 데이터 감청 문제를 해결하고자 하였다. 그러나, 이러한 방법도 여전히 중재 역할을 하는 서버의 신뢰성 문제를 가지고 있다. In general, data transmission is performed in a wireless communication environment. In this case, a third party who may access the same wireless communication environment may experience a problem of intercepting data transmitted using a packet analyzer. Accordingly, in the related art, a separate server that acts as an arbitration between a transmitting side and a receiving side shares an encryption method between a transmitting side and a receiving side, thereby solving the data interception problem. . However, this method still has the reliability problem of servers acting as a mediator.

따라서, 본 발명은 송신 단말과 수신 단말 간에 이루어지는 비밀 통신 방법을 제공하고자 한다. Accordingly, the present invention is to provide a secret communication method made between the transmitting terminal and the receiving terminal.

또한, 본 발명은 무선 통신 환경의 에러 분포를 이용한 비밀 통신 방법을 제공하고자 한다. In addition, the present invention is to provide a secret communication method using the error distribution of the wireless communication environment.

또한, 본 발명은 데이터를 숨겨 전송하는 비밀 통신 방법을 제공하고자 한다.In addition, the present invention is to provide a secret communication method for hiding and transmitting data.

본 발명의 실시예에 따르면, 송신 단말이 네트워크를 통해 연결된 수신 단말에 비밀 데이터를 송신하는 방법에 있어서, 암호화 키를 기반으로 비밀 데이터 패킷을 코딩하는 단계, 비밀 데이터 패킷의 목적지를 미리 설정된 임의 목적지로 변경하는 단계 및 코딩된 비밀 데이터 패킷을 패딩 공간에 맵핑하는 단계를 포함하는 방법이 제공된다.According to an embodiment of the present invention, a method of transmitting secret data to a receiving terminal connected through a network by a transmitting terminal, the method comprising: coding a secret data packet based on an encryption key; And mapping the coded secret data packet to the padding space.

본 발명의 다른 실시예에 따르면, 수신 단말이 네트워크를 통해 연결된 송신 단말로부터 비밀 데이터를 수신하는 방법에 있어서, 송신 단말로부터 수신되는 패킷의 패딩 공간에 맵핑된 패킷을 확인하는 단계, 송신 단말로부터 수신되는 패킷의 목적지가 미리 설정된 임의 목적지인지 확인하는 단계 및 상기 패딩 공간에 맵핑된 패킷을 암호화 키를 기반으로 디코딩하여 비밀 데이터를 수신하는 단계를 포함하는 방법이 제공된다.According to another embodiment of the present invention, in a method in which a receiving terminal receives secret data from a transmitting terminal connected through a network, checking a packet mapped to a padding space of a packet received from the transmitting terminal, receiving from a transmitting terminal A method comprising determining whether a destination of a packet is a predetermined destination and receiving a secret data by decoding a packet mapped to the padding space based on an encryption key.

본 발명의 일 측면에 따르면, 송신 단말과 수신 단말 간에 이루어지는 비밀 통신 방법이 제공된다. According to one aspect of the present invention, there is provided a secret communication method made between a transmitting terminal and a receiving terminal.

또한, 본 발명의 다른 측면에 따르면, 무선 통신 환경의 에러 분포를 이용한 비밀 통신 방법이 제공된다. In addition, according to another aspect of the present invention, a secret communication method using an error distribution in a wireless communication environment is provided.

또한, 본 발명의 다른 측면에 따르면, 데이터를 숨겨 전송하는 비밀 통신 방법이 제공된다.In addition, according to another aspect of the present invention, a secret communication method for hiding and transmitting data is provided.

도 1은 본 발명의 일 실시예에 따른 비밀 통신 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 비밀 데이터를 전송하는 방법의 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 비밀 데이터를 수신하는 방법의 흐름도이다.
도 4는 본 발명의 다른 실시예에 따른 비밀 데이터를 송신하는 방법의 흐름도이다.
도 5는 본 발명의 다른 실시예에 따른 비밀 데이터를 수신하는 방법의 흐름도이다.
도 6은 본 발명의 또 다른 일 실시예에 따른 비밀 데이터를 전송하는 방법의 흐름도이다.
도 7은 본 발명의 또 다른 일 실시예에 따른 비밀 데이터를 수신하는 방법의 흐름도이다.
도 8은 본 발명의 또 다른 일 실시예에 따른 비밀 데이터를 전송하는 방법의 흐름도이다.
도 9는 본 발명의 또 다른 일 실시예에 따른 비밀 데이터를 수신하는 방법의 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 비밀 데이터를 송신하는 송신 단말의 블록도이다.
도 11은 본 발명의 일 실시예에 따른 비밀 데이터를 수신하는 수신 단말의 블록도이다.
1 is a block diagram of a secret communication system according to an embodiment of the present invention.
2 is a flowchart of a method for transmitting secret data according to an embodiment of the present invention.
3 is a flowchart of a method for receiving secret data according to an embodiment of the present invention.
4 is a flowchart of a method for transmitting secret data according to another embodiment of the present invention.
5 is a flowchart of a method for receiving secret data according to another embodiment of the present invention.
6 is a flowchart of a method for transmitting secret data according to another embodiment of the present invention.
7 is a flowchart of a method for receiving secret data according to another embodiment of the present invention.
8 is a flowchart of a method for transmitting secret data according to another embodiment of the present invention.
9 is a flowchart of a method for receiving secret data according to another embodiment of the present invention.
10 is a block diagram of a transmitting terminal for transmitting secret data according to an embodiment of the present invention.
11 is a block diagram of a receiving terminal receiving secret data according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서 및 청구항에서 사용되는 단수 표현은, 달리 언급하지 않는 한 일반적으로 "하나 이상"을 의미하는 것으로 해석되어야 한다.The present invention may be variously modified and have various embodiments, and specific embodiments will be illustrated in the drawings and described in detail with reference to the accompanying drawings. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the present invention, when it is determined that the detailed description of the related known technology may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. Also, the singular forms used in the specification and claims are to be interpreted as generally meaning "one or more", unless stated otherwise.

이하, 본 발명의 바람직한 실시예를 첨부도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings, in the following description with reference to the accompanying drawings, the same or corresponding components are given the same reference numerals and redundant description thereof will be omitted. Shall be.

도 1은 본 발명의 일 실시예에 따른 비밀 통신 시스템의 구성도이다.1 is a block diagram of a secret communication system according to an embodiment of the present invention.

도 1을 참조하면, 비밀 통신 시스템은 네트워크를 통해 상호 연결되는 송신 단말(110) 및 수신 단말(120)을 포함할 수 있다.Referring to FIG. 1, a secret communication system may include a transmitting terminal 110 and a receiving terminal 120 interconnected through a network.

일 실시예에서, 송신 단말(110) 및 수신 단말(120)은 5계층 구조를 갖는 TCP/IP 통신 프로토콜 방식을 이용하는 단말일 수 있다. In one embodiment, the transmitting terminal 110 and the receiving terminal 120 may be a terminal using a TCP / IP communication protocol scheme having a five-layer structure.

송신 단말(110)은 보안이 요구되는 데이터(이하, 비밀 데이터)를 송신한다. 구체적으로, 송신 단말(110)은 비밀 데이트를 수신 단말(120)과 공유된 비밀 통신 방법을 기반으로, 네트워크를 통해 전송할 수 있다.The transmitting terminal 110 transmits data for which security is required (hereinafter, secret data). In detail, the transmitting terminal 110 may transmit the secret data through a network based on a secret communication method shared with the receiving terminal 120.

수신 단말(120)은 비밀 데이터를 수신한다. 구체적으로, 수신 단말(120)은 비밀 데이터를 송신 단말(110)과 공유된 비밀 통신 방법을 기반으로 네트워크를 통해 수신할 수 있다.The receiving terminal 120 receives secret data. In detail, the receiving terminal 120 may receive secret data through a network based on a secret communication method shared with the transmitting terminal 110.

비밀 통신 방법은 송신 단말(110)과 수신 단말(120)간에 미리 약속된 비밀 데이터 전송방법을 의미하며, 암호화, 목적지 변경, 헤더 변경, 패킷 숨김, 패딩 영역 맵핑 등의 방법을 포함할 수 있다.The secret communication method means a secret data transmission method previously promised between the transmitting terminal 110 and the receiving terminal 120 and may include a method of encryption, destination change, header change, packet hiding, padding area mapping, and the like.

암호화는 암호화 키를 기반으로 비밀 데이터를 암호화하는 것을 의미할 수 있다. 예를 들어, 송신 단말(110)은 암호화 키를 기반으로 비밀 데이터를 코딩하여 전송할 수 있다. 이 경우, 수신 단말(120)은 암호화 키를 기반으로 코딩된 비밀 데이터를 디코딩하여 비밀 데이터를 수신할 수 있다. 그러나, 암호화 키를 가지고 있지 않은 제 3 단말은 코딩된 비밀 데이터를 수신하더라도 코딩된 비밀 데이터를 디코딩할 수 없으므로, 비밀 데이터를 확인할 수 없다.Encryption may mean encrypting secret data based on an encryption key. For example, the transmitting terminal 110 may code and transmit secret data based on the encryption key. In this case, the receiving terminal 120 may receive the secret data by decoding the secret data coded based on the encryption key. However, even if the third terminal that does not have the encryption key receives the coded secret data, the third terminal cannot decode the coded secret data and thus cannot verify the secret data.

일 실시예에서, 암호화 키는 송신 단말(110)과 수신 단말(120)간에 공유된 것일 수 있다. 예를 들어, 암호화 키는 디피-헬만 키 교환(Diffie-Hellman key exchange) 방식에 의해 송신 단말(110)과 수신 단말(120)간에 공유될 수 있다.In one embodiment, the encryption key may be shared between the transmitting terminal 110 and the receiving terminal 120. For example, the encryption key may be shared between the transmitting terminal 110 and the receiving terminal 120 by a Diffie-Hellman key exchange scheme.

목적지 변경은 비밀 데이터가 전송될 목적지를 변경하는 것을 의미할 수 있다. 예를 들어, 제 3 단말을 미리 설정된 임의 목적지로 송신 단말(110)과 수신 단말(120)간에 설정된 경우, 송신 단말(110)은 수신 단말(120)이 아닌 미리 설정된 임의 목적지를 비밀 데이터가 송신될 목적지로 변경하여 송신할 수 있다. 이 경우, 수신 단말(120)은 자신에게 전송되는 데이터가 아니더라도 송신 단말(110)과 관계에서 미리 설정된 임의 목적지를 갖는 데이터인지 확인하여, 비밀 데이터를 수신할 수 있다. 그러나, 제 3 단말은 비밀 데이터를 수신하더라도 암호화 키 등의 다른 암호화 방식에 대한 정보가 없으므로, 비밀 데이터를 확인할 수 없다.Changing the destination may mean changing the destination to which secret data is to be transmitted. For example, when the third terminal is set between the transmitting terminal 110 and the receiving terminal 120 as a predetermined random destination, the transmitting terminal 110 transmits the secret data to the predetermined random destination instead of the receiving terminal 120. The destination can be changed and sent. In this case, the reception terminal 120 may receive secret data by checking whether the data has any destination set in advance in relation to the transmission terminal 110 even though the data is not transmitted to the reception terminal 120. However, even when the third terminal receives the secret data, since the third terminal does not have information about another encryption scheme such as an encryption key, the third terminal cannot confirm the secret data.

일 실시예에서, 미리 설정된 임의 목적지는 구글(Google.com) 등 상용 API일 수 있다.In one embodiment, any preset destination may be a commercial API, such as Google.com.

헤더 변경은 비밀 데이터를 송신하기 위해 헤더를 추가하는 캡슐화과정에서 송신 단말(110)과 수신 단말(120)간에 공유된 특정 헤더를 추가하는 것일 수 있다. 예를 들어, 송신 단말(110)은 미리 설정된 헤더 에러를 갖는 헤더 패킷을 비밀 데이터에 추가하여 전송할 수 있다. 이 경우, 수신 단말(120)은 헤더 패킷을 제거하는 과정에서 헤더 패킷에 미리 설정된 헤더 에러를 갖는지 확인하여 비밀 데이터를 수신할 수 있다. 그러나, 제 3 단말은 미리 설정된 헤더 에러를 갖는 헤더 패킷의 정보를 알지 못하여, 데이터 전송시 에러가 발생한 것으로 판단하여 해당 패킷을 무시하거나 버리게 되므로, 비밀 데이터를 수신할 수 없게 된다. The header change may be adding a specific header shared between the transmitting terminal 110 and the receiving terminal 120 in the encapsulation process of adding the header to transmit the secret data. For example, the transmitting terminal 110 may add a header packet having a preset header error to the secret data and transmit the secret packet. In this case, the receiving terminal 120 may receive secret data by checking whether the header packet has a preset header error in the process of removing the header packet. However, since the third terminal does not know the information of the header packet having a preset header error, it is determined that an error has occurred during data transmission, so that the third terminal ignores or discards the packet, and thus cannot receive secret data.

일 실시예에서, 미리 설정된 헤더 에러는 네트워크에서 헤더 패킷에 발생하는 에러 분포를 기반으로 설정될 수 있다. 예를 들어, 네트워크에서 헤더 패킷의 두 번째 비트에 에러 발생 빈도가 높은 경우, 두 번째 비트가 손상된 헤더 패킷이 미리 설정된 헤더 에러를 갖는 헤더 패킷이 될 수 있다.In one embodiment, the preset header error may be set based on an error distribution occurring in the header packet in the network. For example, when an error occurs frequently in the second bit of the header packet in the network, the header packet in which the second bit is damaged may be a header packet having a preset header error.

일 실시예에서, 네트워크 계층에서 미리 설정된 헤더 에러를 갖는 헤더 패킷이 추가될 수 있다. In one embodiment, header packets with preset header errors at the network layer may be added.

일 실시예에서, 전송 계층에서 미리 설정된 헤더 에러를 갖는 헤더 패킷이 추가 될 수 있다. In one embodiment, a header packet having a header error preset in the transport layer may be added.

패킷 숨김은 비밀 데이터를 다른 데이터 팻킷에 숨겨 송신하는 것일 수 있다. 예를 들어, 송신 단말(110)은 비밀 데이터를 수신 단말(120)과 관계에서 미리 설정된 임의 데이터 패킷에 포함시켜 전송할 수 있다. 이 경우, 수신 단말(120)은 미리 설정된 임의 데이터 패킷이 확인되면, 해당 임의 데이터 패킷에서 비밀 데이터를 확인하여 수신할 수 있다. The packet hiding may be to hide and transmit secret data in another data packet. For example, the transmitting terminal 110 may include the secret data in an arbitrary data packet preset in relation to the receiving terminal 120 and transmit the secret data. In this case, when the predetermined random data packet is confirmed, the receiving terminal 120 may check and receive secret data from the random data packet.

일 실시예에서, 미리 설정된 임의 데이터 패킷은 미리 설정된 데이터 에러를 갖는 패킷(이하, 미리 설정된 데이터 에러를 갖는 임의 데이터 패킷)일 수 있다.In one embodiment, the preset random data packet may be a packet having a preset data error (hereinafter, random data packet having a preset data error).

일 실시예에서, 네트워크에서 데이터 패킷에 발생하는 에러 분포를 기반으로 미리 설정된 데이터 에러가 결정될 수 있다. 예를 들어, 데이터 패킷의 두 번째 비트에서 에러 발생 빈도가 높은 경우, 두 번째 비트가 손상된 데이터 패킷이 미리 설정된 데이터 에러를 갖는 임의 데이터 패킷이 될 수 있다. In one embodiment, a preset data error may be determined based on an error distribution occurring in the data packet in the network. For example, if the error occurrence frequency is high in the second bit of the data packet, the corrupted data packet may be an arbitrary data packet having a preset data error.

패딩 영역 맵핑은 비밀 데이터를 패딩 영역에 맵핑하여 전송하는 것일 수 있다. 예를 들어, 송신 단말(110)은 물리 계층에서 전송하는 패킷의 크기를 맞추기 위해 사용되는 패딩 영역에 비밀 데이터를 맵핑하여 전송할 수 있다. 이 경우, 수신 단말(120)은 패딩 영역을 확인하여 비밀 데이터를 수신할 수 있다. 그러나, 제 3 단말은 패딩 영역은 무시하거나 버리게 되므로, 비밀 데이터를 확인할 수 없게 된다. The padding area mapping may be transmitted by mapping secret data to the padding area. For example, the transmitting terminal 110 may map and transmit secret data to a padding area used to match the size of a packet transmitted from the physical layer. In this case, the receiving terminal 120 may check the padding area to receive secret data. However, since the third terminal ignores or discards the padding area, the third terminal cannot confirm the secret data.

이하, 상기 비밀 통신 방법을 이용하여 비밀 데이터를 송신하는 예를 도 2 내지 도 9을 참조하여 구체적으로 설명한다. Hereinafter, an example of transmitting secret data using the secret communication method will be described in detail with reference to FIGS. 2 to 9.

도 2는 본 발명의 일 실시예에 따른 비밀 데이터를 전송하는 방법의 흐름도이다. 2 is a flowchart of a method for transmitting secret data according to an embodiment of the present invention.

이하, 도 1에 도시된 송신 단말(110)에 의해 상기 방법이 수행되는 것을 예시로 설명한다.Hereinafter, the method is performed by the transmitting terminal 110 shown in FIG. 1 by way of example.

도 2를 참조하면, 단계 S210에서 비밀 데이터 패킷이 인코딩된다. 구체적으로, 송신 단말(110)은 암호화 키를 기반으로 비밀 데이터 패킷을 인코딩한다. Referring to FIG. 2, in step S210 a secret data packet is encoded. Specifically, the transmitting terminal 110 encodes the secret data packet based on the encryption key.

일 실시예에서, 송신 단말(110)은 디피-헬만 키 교환(Diffie-Hellman key exchange) 방식으로 수신 단말(120)과 교환된 암호화 키를 기반으로 비밀 데이터 패킷을 인코딩할 수 있다. In one embodiment, the transmitting terminal 110 may encode the secret data packet based on the encryption key exchanged with the receiving terminal 120 in a Diffie-Hellman key exchange scheme.

단계 S220에서, 비밀 데이터 패킷의 목적지가 변경된다. 구체적으로, 송신 단말(110)은 미리 설정된 임의 목적지로 비밀 데이터 패킷의 목적지를 변경할 수 있다. 여기서 미리 설정된 임의 목적지는 수신 단말(120)과 무관한 제 3 단말을 의미할 수 있다. In step S220, the destination of the secret data packet is changed. In detail, the transmitting terminal 110 may change the destination of the secret data packet to a predetermined destination. Here, the predetermined destination may mean a third terminal that is not related to the receiving terminal 120.

일 실시예에서, 송신 단말(110)은 구글(Google.com) 등의 상용 API를 임의 목적지로 설정하여 비밀 데이터 패킷을 송신할 수 있다. In one embodiment, the transmitting terminal 110 may transmit a secret data packet by setting a commercial API such as Google (Google.com) as an arbitrary destination.

단계 S230에서, 코딩된 비밀 데이터 패킷이 패딩 공간에 맵핑된다. 구체적으로, 송신 단말(110)은 코딩된 비밀 데이터 패킷을 물리 계층에서 패딩 공간에 맵핑 시켜 송신할 수 있다. In step S230, the coded secret data packet is mapped to the padding space. In detail, the transmitting terminal 110 may transmit the coded secret data packet by mapping it to a padding space in the physical layer.

상기 각 단계는 상기 언급한 순서에 구속되지 않으므로, 각 단계는 동시에 수행되거나 다른 단계에 우선하여 수행될 수 있다.Since each step is not limited to the above-mentioned order, each step may be performed simultaneously or in preference to other steps.

도 3은 본 발명의 일 실시예에 따른 비밀 데이터를 수신하는 방법의 흐름도이다. 3 is a flowchart of a method for receiving secret data according to an embodiment of the present invention.

이하, 도 3에 도시된 방법은 도 2에 도시된 방법에 의해 송신되는 비밀 데이터를 수신하기 위한 방법으로, 도 1에 도시된 수신 단말(120)에 의해 상기 방법이 수행되는 것을 예시로 설명한다.Hereinafter, the method shown in FIG. 3 is a method for receiving secret data transmitted by the method shown in FIG. 2, and will be described as an example that the method is performed by the receiving terminal 120 shown in FIG. 1. .

도 3을 참조하면, 단계 S310에서 패딩 공간이 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 패딩 공간을 확인하여 패딩 공간에 맵핑된 코딩된 비밀 데이터 패킷을 확인한다. Referring to FIG. 3, the padding space is identified in step S310. Specifically, the receiving terminal 120 confirms the padding space of the packet received from the transmitting terminal 110 to confirm the coded secret data packet mapped to the padding space.

단계 S320에서, 패킷의 목적지가 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 목적지를 확인하여, 미리 설정된 임의 목적지를 갖는 패킷인 경우에 해당 패킷을 무시하거나 버리지 않는다. 그러나, 미리 설정된 임의 목적지를 갖는 패킷이 아닌 경우, 수신 단말(120)은 해당 패킷을 무시하거나 버린다. In step S320, the destination of the packet is confirmed. Specifically, the receiving terminal 120 checks the destination of the packet received from the transmitting terminal 110 and does not ignore or discard the packet when the packet has a predetermined destination. However, if the packet is not a packet having a predetermined destination, the receiving terminal 120 ignores or discards the packet.

단계 S330에서, 인코딩된 비밀 데이터 패킷이 디코딩된다. 구체적으로, 수신 단말(120)은 인코딩된 비밀 데이터 패킷을 암호화 키를 기반으로 디코딩하여 비밀 데이터를 확인한다. In step S330, the encoded secret data packet is decoded. Specifically, the receiving terminal 120 confirms the secret data by decoding the encoded secret data packet based on the encryption key.

일 실시예에서, 수신 단말(120)은 디피-헬만 키 교환(Diffie-Hellman key exchange) 방식으로 송신 단말(110)과 교환된 암호화 키를 기반으로 코딩된 비밀 데이터 패킷을 디코딩할 수 있다. In one embodiment, the receiving terminal 120 may decode a coded secret data packet based on an encryption key exchanged with the transmitting terminal 110 in a Diffie-Hellman key exchange scheme.

상기 각 단계는 상기 언급한 순서에 구속되지 않으므로, 각 단계는 동시에 수행되거나 다른 단계에 우선하여 수행될 수 있다.Since each step is not limited to the above-mentioned order, each step may be performed simultaneously or in preference to other steps.

도 4는 본 발명의 다른 실시예에 따른 비밀 데이터를 송신하는 방법의 흐름도이다. 4 is a flowchart of a method for transmitting secret data according to another embodiment of the present invention.

이하, 도 1에 도시된 송신 단말(110)에 의해 상기 방법이 수행되는 것을 예시로 설명한다. Hereinafter, the method is performed by the transmitting terminal 110 shown in FIG. 1 by way of example.

도 4를 참조하면, 단계 410에서 비밀 데이터 패킷이 인코딩된다. 구체적으로, 송신 단말(110)은 암호화 키를 기반으로 비밀 데이터 패킷을 인코딩한다. Referring to FIG. 4, in step 410 a secret data packet is encoded. Specifically, the transmitting terminal 110 encodes the secret data packet based on the encryption key.

일 실시예에서, 송신 단말(110)은 디피-헬만 키 교환(Diffie-Hellman key exchange) 방식으로 수신 단말(120)과 교환된 암호화 키를 기반으로 비밀 데이터 패킷을 인코딩할 수 있다. In one embodiment, the transmitting terminal 110 may encode the secret data packet based on the encryption key exchanged with the receiving terminal 120 in a Diffie-Hellman key exchange scheme.

단계 S420에서, 비밀 데이터 패킷의 목적지가 변경된다. 구체적으로, 송신 단말(110)은 미리 설정된 임의 목적지로 비밀 데이터 패킷의 목적지를 변경할 수 있다. 여기서 미리 설정된 임의 목적지는 수신 단말(120)과 무관한 제 3 단말을 의미할 수 있다. In step S420, the destination of the secret data packet is changed. In detail, the transmitting terminal 110 may change the destination of the secret data packet to a predetermined destination. Here, the predetermined destination may mean a third terminal that is not related to the receiving terminal 120.

일 실시예에서, 송신 단말(110)은 구글(Google.com) 등의 상용 API를 임의 목적지로 설정하여 비밀 데이터 패킷을 송신할 수 있다. In one embodiment, the transmitting terminal 110 may transmit a secret data packet by setting a commercial API such as Google (Google.com) as an arbitrary destination.

단계 S430에서, 미리 설정된 헤더 에러가 추가된다. 구체적으로, 송신 단말(110)은 미리 설정된 헤더 에러를 갖는 헤더 패킷을 코딩된 비밀 데이터 패킷에 추가하는 캡슐화를 수행하여 송신할 수 있다. In step S430, a preset header error is added. Specifically, the transmitting terminal 110 may transmit by performing encapsulation that adds a header packet having a preset header error to a coded secret data packet.

일 실시예에서, 미리 설정된 헤더 에러는 네트워크에서 헤더 패킷에 발생하는 에러 분포를 기반으로 설정될 수 있다. 예를 들어, 네트워크에서 헤더 패킷의 두 번째 비트에 에러 발생 빈도가 높은 경우, 두 번째 비트가 손상된 헤더 패킷이 미리 설정된 헤더 에러를 갖는 헤더 패킷이 될 수 있다.In one embodiment, the preset header error may be set based on an error distribution occurring in the header packet in the network. For example, when an error occurs frequently in the second bit of the header packet in the network, the header packet in which the second bit is damaged may be a header packet having a preset header error.

일 실시예에서, 네트워크 계층에서 미리 설정된 헤더 에러를 갖는 헤더 패킷이 추가될 수 있다. In one embodiment, header packets with preset header errors at the network layer may be added.

일 실시예에서, 전송 계층에서 미리 설정된 헤더 에러를 갖는 헤더 패킷이 추가 될 수 있다. In one embodiment, a header packet having a header error preset in the transport layer may be added.

단계 S440에서, 코딩된 비밀 데이터 패킷이 패딩 공간에 맵핑된다. 구체적으로, 송신 단말(110)은 코딩된 비밀 데이터 패킷을 물리 계층에서 패딩 공간에 맵핑 시켜 송신할 수 있다. In step S440, the coded secret data packet is mapped to the padding space. In detail, the transmitting terminal 110 may transmit the coded secret data packet by mapping it to a padding space in the physical layer.

상기 각 단계는 상기 언급한 순서에 구속되지 않으므로, 각 단계는 동시에 수행되거나 다른 단계에 우선하여 수행될 수 있다.Since each step is not limited to the above-mentioned order, each step may be performed simultaneously or in preference to other steps.

도 5는 본 발명의 다른 실시예에 따른 비밀 데이터를 수신하는 방법의 흐름도이다. 5 is a flowchart of a method for receiving secret data according to another embodiment of the present invention.

이하, 도 5에 도시된 방법은 도 4에 도시된 방법에 의해 송신되는 비밀 데이터를 수신하기 위한 방법으로, 도 1에 도시된 수신 단말(120)에 의해 상기 방법이 수행되는 것을 예시로 설명한다.Hereinafter, the method shown in FIG. 5 is a method for receiving secret data transmitted by the method shown in FIG. 4, and the method is performed by the receiving terminal 120 shown in FIG. 1 by way of example. .

도 5을 참조하면, 단계 S510에서 패딩 공간이 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 패딩 공간을 확인하여 패딩 공간에 맵핑된 코딩된 비밀 데이터 패킷을 확인한다. Referring to FIG. 5, the padding space is identified in step S510. Specifically, the receiving terminal 120 confirms the padding space of the packet received from the transmitting terminal 110 to confirm the coded secret data packet mapped to the padding space.

단계 S520에서, 패킷의 목적지가 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 목적지를 확인하여, 미리 설정된 임의 목적지를 갖는 패킷인 경우에 해당 패킷을 무시하거나 버리지 않는다. 그러나, 미리 설정된 임의 목적지를 갖는 패킷이 아닌 경우, 수신 단말(120)은 해당 패킷을 무시하거나 버린다. In step S520, the destination of the packet is confirmed. Specifically, the receiving terminal 120 checks the destination of the packet received from the transmitting terminal 110 and does not ignore or discard the packet when the packet has a predetermined destination. However, if the packet is not a packet having a predetermined destination, the receiving terminal 120 ignores or discards the packet.

단계 S530에서, 송신 단말(110)로부터 수신되는 패킷의 헤더가 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 헤더 패킷이 미리 설정된 헤더 에러를 포함하는지 확인하여, 미리 설정된 헤더 에러를 포함하는 경우, 해당 헤더를 제거할 수 있다. 그러나, 헤더 패킷이 미리 설정된 헤더 에러를 포함하지 않는 경우, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷을 무시하거나 버린다.In step S530, the header of the packet received from the transmitting terminal 110 is confirmed. Specifically, the receiving terminal 120 may check whether the header packet of the packet received from the transmitting terminal 110 includes a preset header error, and remove the corresponding header when the header packet includes the preset header error. However, if the header packet does not include a preset header error, the receiving terminal 120 ignores or discards the packet received from the transmitting terminal 110.

단계 S540에서, 인코딩된 비밀 데이터 패킷이 디코딩된다. 구체적으로, 수신 단말(120)은 패딩 영역에 맵핑된 인코딩된 비밀 데이터 패킷을 암호화 키를 기반으로 디코딩하여 비밀 데이터를 확인한다. In step S540, the encoded secret data packet is decoded. Specifically, the receiving terminal 120 confirms the secret data by decoding the encoded secret data packet mapped to the padding area based on the encryption key.

일 실시예에서, 수신 단말(120)은 디피-헬만 키 교환(Diffie-Hellman key exchange) 방식으로 송신 단말(110)과 교환된 암호화 키를 기반으로 코딩된 비밀 데이터 패킷을 디코딩할 수 있다. In one embodiment, the receiving terminal 120 may decode a coded secret data packet based on an encryption key exchanged with the transmitting terminal 110 in a Diffie-Hellman key exchange scheme.

상기 각 단계는 상기 언급한 순서에 구속되지 않으므로, 각 단계는 동시에 수행되거나 다른 단계에 우선하여 수행될 수 있다.Since each step is not limited to the above-mentioned order, each step may be performed simultaneously or in preference to other steps.

도 6은 본 발명의 또 다른 일 실시예에 따른 비밀 데이터를 전송하는 방법의 흐름도이다. 6 is a flowchart of a method for transmitting secret data according to another embodiment of the present invention.

이하, 도 1에 도시된 송신 단말(110)에 의해 상기 방법이 수행되는 것을 예시로 설명한다.Hereinafter, the method is performed by the transmitting terminal 110 shown in FIG. 1 by way of example.

도 6를 참조하면, 단계 S610에서 비밀 데이터 패킷이 인코딩된다. 구체적으로, 송신 단말(110)은 암호화 키를 기반으로 비밀 데이터 패킷을 인코딩한다. Referring to FIG. 6, in step S610 a secret data packet is encoded. Specifically, the transmitting terminal 110 encodes the secret data packet based on the encryption key.

일 실시예에서, 송신 단말(110)은 디피-헬만 키 교환(Diffie-Hellman key exchange) 방식으로 수신 단말(120)과 교환된 암호화 키를 기반으로 비밀 데이터 패킷을 인코딩할 수 있다. In one embodiment, the transmitting terminal 110 may encode the secret data packet based on the encryption key exchanged with the receiving terminal 120 in a Diffie-Hellman key exchange scheme.

단계 S620에서, 비밀 데이터 패킷의 목적지가 변경된다. 구체적으로, 송신 단말(110)은 미리 설정된 임의 목적지로 비밀 데이터 패킷의 목적지를 변경할 수 있다. 여기서 미리 설정된 임의 목적지는 수신 단말(120)과 무관한 제 3 단말을 의미할 수 있다. In step S620, the destination of the secret data packet is changed. In detail, the transmitting terminal 110 may change the destination of the secret data packet to a predetermined destination. Here, the predetermined destination may mean a third terminal that is not related to the receiving terminal 120.

일 실시예에서, 송신 단말(110)은 구글(Google.com) 등의 상용 API를 임의 목적지로 설정하여 비밀 데이터 패킷을 송신할 수 있다. In one embodiment, the transmitting terminal 110 may transmit a secret data packet by setting a commercial API such as Google (Google.com) as an arbitrary destination.

단계 S630에서, 코딩된 비밀 데이터 패킷이 임의 데이터 패킷에 숨겨진다. 구체적으로, 송신 단말(110)은 코딩된 비밀 데이터 패킷을 임의 데이터 패킷에 포함시킬 수 있다. In step S630, the coded secret data packet is hidden in an arbitrary data packet. Specifically, the transmitting terminal 110 may include the coded secret data packet in any data packet.

일 실시예에서, 미리 설정된 임의 데이터 패킷은 미리 설정된 데이터 에러를 갖는 패킷(이하, 미리 설정된 데이터 에러를 갖는 임의 데이터 패킷)일 수 있다.In one embodiment, the preset random data packet may be a packet having a preset data error (hereinafter, random data packet having a preset data error).

일 실시예에서, 네트워크에서 데이터 패킷에 발생하는 에러 분포를 기반으로 미리 설정된 데이터 에러가 결정될 수 있다. 예를 들어, 데이터 패킷의 두 번째 비트에서 에러 발생 빈도가 높은 경우, 두 번째 비트가 손상된 데이터 패킷이 미리 설정된 데이터 에러를 갖는 임의 데이터 패킷이 될 수 있다. In one embodiment, a preset data error may be determined based on an error distribution occurring in the data packet in the network. For example, if the error occurrence frequency is high in the second bit of the data packet, the corrupted data packet may be an arbitrary data packet having a preset data error.

단계 S640에서, 임의 데이터 패킷이 패딩 공간에 맵핑된다. 구체적으로, 송신 단말(110)은 코딩된 비밀 데이터 패킷을 포함하는 임의 데이터 패킷을 물리 계층에서 패딩 공간에 맵핑 시켜 송신할 수 있다. In step S640, any data packet is mapped to the padding space. In detail, the transmitting terminal 110 may transmit an arbitrary data packet including the coded secret data packet to a padding space in the physical layer.

상기 각 단계는 상기 언급한 순서에 구속되지 않으므로, 각 단계는 동시에 수행되거나 다른 단계에 우선하여 수행될 수 있다.Since each step is not limited to the above-mentioned order, each step may be performed simultaneously or in preference to other steps.

도 7은 본 발명의 또 다른 일 실시예에 따른 비밀 데이터를 수신하는 방법의 흐름도이다. 7 is a flowchart of a method for receiving secret data according to another embodiment of the present invention.

이하, 도 7에 도시된 방법은 도 6에 도시된 방법에 의해 송신되는 비밀 데이터를 수신하기 위한 방법으로, 도 1에 도시된 수신 단말(120)에 의해 상기 방법이 수행되는 것을 예시로 설명한다.Hereinafter, the method shown in FIG. 7 is a method for receiving secret data transmitted by the method shown in FIG. 6, and will be described as an example that the method is performed by the receiving terminal 120 shown in FIG. 1. .

도 7을 참조하면, 단계 S710에서 패딩 공간이 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 패딩 공간을 확인하여 패딩 공간에 맵핑된 패킷을 확인할 수 있다. Referring to FIG. 7, in step S710, a padding space is identified. Specifically, the receiving terminal 120 may check the padding space of the packet received from the transmitting terminal 110 to check the packet mapped to the padding space.

단계 S720에서, 임의 데이터 패킷이 확인이 확인된다. 구체적으로, 수신 단말(120)은 패딩 공간에 맵핑된 패킷이 미리 설정된 임의 데이터 패킷인지 확인하여, 미리 설정된 임의 데이터 패킷인 경우, 수신 단말(120)은 임의 데이터 패킷에 포함된 코딩된 비밀 데이터 패킷을 확인할 수 있다. 그러나, 미리 설정된 데이터 패킷이 아닌 경우, 수신 단말(120)은 해당 패킷을 무시하거나 버린다. In step S720, the acknowledgment of the arbitrary data packet is confirmed. Specifically, the receiving terminal 120 checks whether the packet mapped to the padding space is a predetermined random data packet. When the receiving terminal 120 is a predetermined random data packet, the receiving terminal 120 includes the coded secret data packet included in the random data packet. can confirm. However, if it is not a preset data packet, the receiving terminal 120 ignores or discards the packet.

단계 S730에서, 패킷의 목적지가 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 목적지를 확인하여, 미리 설정된 임의 목적지를 갖는 패킷인 경우에 해당 패킷을 무시하거나 버리지 않는다. 그러나, 미리 설정된 임의 목적지를 갖는 패킷이 아닌 경우, 수신 단말(120)은 해당 패킷을 무시하거나 버린다. In step S730, the destination of the packet is confirmed. Specifically, the receiving terminal 120 checks the destination of the packet received from the transmitting terminal 110 and does not ignore or discard the packet when the packet has a predetermined destination. However, if the packet is not a packet having a predetermined destination, the receiving terminal 120 ignores or discards the packet.

단계 S740에서, 인코딩된 비밀 데이터 패킷이 디코딩된다. 구체적으로, 수신 단말(120)은 인코딩된 비밀 데이터 패킷을 암호화 키를 기반으로 디코딩하여 비밀 데이터를 확인한다. In step S740, the encoded secret data packet is decoded. Specifically, the receiving terminal 120 confirms the secret data by decoding the encoded secret data packet based on the encryption key.

일 실시예에서, 수신 단말(120)은 디피-헬만 키 교환(Diffie-Hellman key exchange) 방식으로 송신 단말(110)과 교환된 암호화 키를 기반으로 코딩된 비밀 데이터 패킷을 디코딩할 수 있다. In one embodiment, the receiving terminal 120 may decode a coded secret data packet based on an encryption key exchanged with the transmitting terminal 110 in a Diffie-Hellman key exchange scheme.

상기 각 단계는 상기 언급한 순서에 구속되지 않으므로, 각 단계는 동시에 수행되거나 다른 단계에 우선하여 수행될 수 있다.Since each step is not limited to the above-mentioned order, each step may be performed simultaneously or in preference to other steps.

도 8은 본 발명의 또 다른 일 실시예에 따른 비밀 데이터를 전송하는 방법의 흐름도이다. 8 is a flowchart of a method for transmitting secret data according to another embodiment of the present invention.

이하, 도 1에 도시된 송신 단말(110)에 의해 상기 방법이 수행되는 것을 예시로 설명한다.Hereinafter, the method is performed by the transmitting terminal 110 shown in FIG. 1 by way of example.

도 8를 참조하면, 단계 S810에서 비밀 데이터 패킷이 인코딩된다. 구체적으로, 송신 단말(110)은 암호화 키를 기반으로 비밀 데이터 패킷을 인코딩한다. Referring to FIG. 8, in step S810 a secret data packet is encoded. Specifically, the transmitting terminal 110 encodes the secret data packet based on the encryption key.

일 실시예에서, 송신 단말(110)은 디피-헬만 키 교환(Diffie-Hellman key exchange) 방식으로 수신 단말(120)과 교환된 암호화 키를 기반으로 비밀 데이터 패킷을 인코딩할 수 있다. In one embodiment, the transmitting terminal 110 may encode the secret data packet based on the encryption key exchanged with the receiving terminal 120 in a Diffie-Hellman key exchange scheme.

단계 S820에서, 비밀 데이터 패킷의 목적지가 변경된다. 구체적으로, 송신 단말(110)은 미리 설정된 임의 목적지로 비밀 데이터 패킷의 목적지를 변경할 수 있다. 여기서 미리 설정된 임의 목적지는 수신 단말(120)과 무관한 제 3 단말을 의미할 수 있다. In step S820, the destination of the secret data packet is changed. In detail, the transmitting terminal 110 may change the destination of the secret data packet to a predetermined destination. Here, the predetermined destination may mean a third terminal that is not related to the receiving terminal 120.

일 실시예에서, 송신 단말(110)은 구글(Google.com) 등의 상용 API를 임의 목적지로 설정하여 비밀 데이터 패킷을 송신할 수 있다. In one embodiment, the transmitting terminal 110 may transmit a secret data packet by setting a commercial API such as Google (Google.com) as an arbitrary destination.

단계 S830에서, 미리 설정된 헤더 에러가 추가된다. 구체적으로, 송신 단말(110)은 미리 설정된 헤더 에러를 갖는 헤더 패킷을 코딩된 비밀 데이터 패킷에 추가하는 캡슐화를 수행하여 송신할 수 있다. In step S830, a preset header error is added. Specifically, the transmitting terminal 110 may transmit by performing encapsulation that adds a header packet having a preset header error to a coded secret data packet.

일 실시예에서, 미리 설정된 헤더 에러는 네트워크에서 헤더 패킷에 발생하는 에러 분포를 기반으로 설정될 수 있다. 예를 들어, 네트워크에서 헤더 패킷의 두 번째 비트에 에러 발생 빈도가 높은 경우, 두 번째 비트가 손상된 헤더 패킷이 미리 설정된 헤더 에러를 갖는 헤더 패킷이 될 수 있다.In one embodiment, the preset header error may be set based on an error distribution occurring in the header packet in the network. For example, when an error occurs frequently in the second bit of the header packet in the network, the header packet in which the second bit is damaged may be a header packet having a preset header error.

일 실시예에서, 네트워크 계층에서 미리 설정된 헤더 에러를 갖는 헤더 패킷이 추가될 수 있다. In one embodiment, header packets with preset header errors at the network layer may be added.

일 실시예에서, 전송 계층에서 미리 설정된 헤더 에러를 갖는 헤더 패킷이 추가 될 수 있다. In one embodiment, a header packet having a header error preset in the transport layer may be added.

단계 S840에서, 코딩된 비밀 데이터 패킷이 임의 데이터 패킷에 숨겨진다. 구체적으로, 송신 단말(110)은 코딩된 비밀 데이터 패킷을 임의 데이터 패킷에 포함시킬 수 있다. In step S840, the coded secret data packet is hidden in an arbitrary data packet. Specifically, the transmitting terminal 110 may include the coded secret data packet in any data packet.

일 실시예에서, 미리 설정된 임의 데이터 패킷은 미리 설정된 데이터 에러를 갖는 패킷(이하, 미리 설정된 데이터 에러를 갖는 임의 데이터 패킷)일 수 있다.In one embodiment, the preset random data packet may be a packet having a preset data error (hereinafter, random data packet having a preset data error).

일 실시예에서, 네트워크에서 데이터 패킷에 발생하는 에러 분포를 기반으로 미리 설정된 데이터 에러가 결정될 수 있다. 예를 들어, 데이터 패킷의 두 번째 비트에서 에러 발생 빈도가 높은 경우, 두 번째 비트가 손상된 데이터 패킷이 미리 설정된 데이터 에러를 갖는 임의 데이터 패킷이 될 수 있다. In one embodiment, a preset data error may be determined based on an error distribution occurring in the data packet in the network. For example, if the error occurrence frequency is high in the second bit of the data packet, the corrupted data packet may be an arbitrary data packet having a preset data error.

단계 S850에서, 임의 데이터 패킷이 패딩 공간에 맵핑된다. 구체적으로, 송신 단말(110)은 코딩된 비밀 데이터 패킷을 포함하는 임의 데이터 패킷을 물리 계층에서 패딩 공간에 맵핑 시켜 송신할 수 있다. In step S850, any data packet is mapped to the padding space. In detail, the transmitting terminal 110 may transmit an arbitrary data packet including the coded secret data packet to a padding space in the physical layer.

상기 각 단계는 상기 언급한 순서에 구속되지 않으므로, 각 단계는 동시에 수행되거나 다른 단계에 우선하여 수행될 수 있다.Since each step is not limited to the above-mentioned order, each step may be performed simultaneously or in preference to other steps.

도 9는 본 발명의 또 다른 일 실시예에 따른 비밀 데이터를 수신하는 방법의 흐름도이다. 9 is a flowchart of a method for receiving secret data according to another embodiment of the present invention.

이하, 도 9에 도시된 방법은 도 8에 도시된 방법에 의해 송신되는 비밀 데이터를 수신하기 위한 방법으로, 도 1에 도시된 수신 단말(120)에 의해 상기 방법이 수행되는 것을 예시로 설명한다.Hereinafter, the method shown in FIG. 9 is a method for receiving secret data transmitted by the method shown in FIG. 8, and the method is performed by the receiving terminal 120 shown in FIG. 1 by way of example. .

도 9을 참조하면, 단계 S910에서 패딩 공간이 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 패딩 공간을 확인하여 패딩 공간에 맵핑된 패킷을 확인할 수 있다. 9, the padding space is identified in step S910. Specifically, the receiving terminal 120 may check the padding space of the packet received from the transmitting terminal 110 to check the packet mapped to the padding space.

단계 S920에서, 임의 데이터 패킷이 확인이 확인된다. 구체적으로, 수신 단말(120)은 패딩 공간에 맵핑된 패킷이 미리 설정된 임의 데이터 패킷인지 확인하여, 미리 설정된 임의 데이터 패킷인 경우, 수신 단말(120)은 임의 데이터 패킷에 포함된 코딩된 비밀 데이터 패킷을 확인할 수 있다. 그러나, 미리 설정된 데이터 패킷이 아닌 경우, 수신 단말(120)은 해당 패킷을 무시하거나 버린다. In step S920, confirmation of any data packet is confirmed. Specifically, the receiving terminal 120 checks whether the packet mapped to the padding space is a predetermined random data packet. When the receiving terminal 120 is a predetermined random data packet, the receiving terminal 120 includes the coded secret data packet included in the random data packet. can confirm. However, if it is not a preset data packet, the receiving terminal 120 ignores or discards the packet.

단계 S930에서, 패킷의 목적지가 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 목적지를 확인하여, 미리 설정된 임의 목적지를 갖는 패킷인 경우에 해당 패킷을 무시하거나 버리지 않는다. 그러나, 미리 설정된 임의 목적지를 갖는 패킷이 아닌 경우, 수신 단말(120)은 해당 패킷을 무시하거나 버린다. In step S930, the destination of the packet is confirmed. Specifically, the receiving terminal 120 checks the destination of the packet received from the transmitting terminal 110 and does not ignore or discard the packet when the packet has a predetermined destination. However, if the packet is not a packet having a predetermined destination, the receiving terminal 120 ignores or discards the packet.

단계 S940에서, 송신 단말(110)로부터 수신되는 패킷의 헤더가 확인된다. 구체적으로, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷의 헤더 패킷이 미리 설정된 헤더 에러를 포함하는지 확인하여, 미리 설정된 헤더 에러를 포함하는 경우, 해당 헤더를 제거할 수 있다. 그러나, 헤더 패킷이 미리 설정된 헤더 에러를 포함하지 않는 경우, 수신 단말(120)은 송신 단말(110)로부터 수신되는 패킷을 무시하거나 버린다.In step S940, the header of the packet received from the transmitting terminal 110 is confirmed. Specifically, the receiving terminal 120 may check whether the header packet of the packet received from the transmitting terminal 110 includes a preset header error, and remove the corresponding header when the header packet includes the preset header error. However, if the header packet does not include a preset header error, the receiving terminal 120 ignores or discards the packet received from the transmitting terminal 110.

단계 S950에서, 인코딩된 비밀 데이터 패킷이 디코딩된다. 구체적으로, 수신 단말(120)은 패딩 영역에 맵핑된 인코딩된 비밀 데이터 패킷을 암호화 키를 기반으로 디코딩하여 비밀 데이터를 확인한다. In step S950, the encoded secret data packet is decoded. Specifically, the receiving terminal 120 confirms the secret data by decoding the encoded secret data packet mapped to the padding area based on the encryption key.

일 실시예에서, 수신 단말(120)은 디피-헬만 키 교환(Diffie-Hellman key exchange) 방식으로 송신 단말(110)과 교환된 암호화 키를 기반으로 코딩된 비밀 데이터 패킷을 디코딩할 수 있다. In one embodiment, the receiving terminal 120 may decode a coded secret data packet based on an encryption key exchanged with the transmitting terminal 110 in a Diffie-Hellman key exchange scheme.

상기 각 단계는 상기 언급한 순서에 구속되지 않으므로, 각 단계는 동시에 수행되거나 다른 단계에 우선하여 수행될 수 있다.Since each step is not limited to the above-mentioned order, each step may be performed simultaneously or in preference to other steps.

도 10은 본 발명의 일 실시예에 따른 비밀 데이터를 송신하는 송신 단말의 블록도이다. 10 is a block diagram of a transmitting terminal for transmitting secret data according to an embodiment of the present invention.

도 10을 참조하면, 송신 단말(110)은 수신부, 송신부 및 제어부를 포함할 수 있다. Referring to FIG. 10, the transmitting terminal 110 may include a receiver, a transmitter, and a controller.

수신부 및 송신부는 상술한 비밀 데이터를 송신하는 필요한 데이터를 송신하거나 수신할 수 있다. 제어부는 상술한 비밀 데이터를 송신하는데 필요한 송신 단말(110)의 전반적인 동작을 제어한다. The receiving unit and the transmitting unit can transmit or receive necessary data for transmitting the above-mentioned secret data. The control unit controls the overall operation of the transmitting terminal 110 required to transmit the above-described secret data.

도 11은 본 발명의 일 실시예에 따른 비밀 데이터를 수신하는 수신 단말의 블록도이다. 11 is a block diagram of a receiving terminal receiving secret data according to an embodiment of the present invention.

도 11을 참조하면, 수신 단말(120)은 수신부, 송신부 및 제어부를 포함할 수 있다. Referring to FIG. 11, the receiver terminal 120 may include a receiver, a transmitter, and a controller.

수신부 및 송신부는 상술한 비밀 데이터를 수신하는데 필요한 데이터를 송신하거나 수신할 수 있다. 제어부는 상술한 비밀 데이터를 수신하는데 필요한 수신 단말(120)의 전반적인 동작을 제어한다. The receiver and the transmitter may transmit or receive data necessary for receiving the above-described secret data. The control unit controls the overall operation of the receiving terminal 120 required to receive the above-described secret data.

본 발명의 실시예에 따른 장치 및 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. Apparatus and method according to an embodiment of the present invention can be implemented in the form of program instructions that can be executed by various computer means may be recorded on a computer readable medium. Computer-readable media may include, alone or in combination with the program instructions, data files, data structures, and the like.

컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야 통상의 기술자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.The program instructions recorded on the computer readable medium may be those specially designed and constructed for the present invention, or may be known and available to those skilled in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Hardware devices specially configured to store and execute program instructions such as magneto-optical media and ROM, RAM, flash memory and the like. In addition, the above-described medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.

상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이제까지 본 발명에 대하여 그 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far, the present invention has been described with reference to the embodiments. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in descriptive sense only and not for purposes of limitation. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

110 : 송신 단말
120 : 수신 단말
110: transmitting terminal
120: receiving terminal

Claims (14)

송신 단말이 네트워크를 통해 연결된 수신 단말에 비밀 데이터를 송신하는 방법에 있어서,
암호화 키를 기반으로 비밀 데이터 패킷을 코딩하는 단계;
상기 비밀 데이터 패킷의 목적지를 미리 설정된 임의 목적지로 변경하는 단계;
미리 설정된 헤더 에러를 갖는 헤더 패킷을 상기 코딩된 비밀 데이터 패킷에 추가하는 단계; 및
상기 코딩된 비밀 데이터 패킷을 패딩 공간에 맵핑하는 단계
를 포함하고,
상기 미리 설정된 헤더 에러는,
상기 네트워크에서 헤더 패킷에 발생하는 에러 분포를 기반으로 설정되는 것을 특징으로 하는, 방법.
A transmitting terminal transmits secret data to a receiving terminal connected through a network,
Coding a secret data packet based on an encryption key;
Changing a destination of the secret data packet to a predetermined destination;
Adding a header packet having a preset header error to the coded secret data packet; And
Mapping the coded secret data packet to a padding space
Including,
The preset header error is
And based on an error distribution occurring in a header packet in the network.
삭제delete 제 1 항에 있어서,
상기 헤더 패킷은,
네트워크 계층에서 추가되는 헤더 패킷인 것을 특징으로 하는 방법.
The method of claim 1,
The header packet is
The header packet is added at the network layer.
제 1 항에 있어서,
상기 헤더 패킷은,
전송 계층에서 추가되는 헤러 패킷인 것을 특징으로 하는 방법.
The method of claim 1,
The header packet is
Method is characterized in that it is a header packet added at the transport layer.
삭제delete 제 1 항에 있어서,
미리 설정된 데이터 에러를 갖는 임의 데이터 패킷에 상기 코딩된 비밀 데이터 패킷을 포함시키는 단계를 더 포함하되,
상기 코딩된 비밀 데이터 패킷을 패딩 공간에 맵핑하는 단계는,
상기 코딩된 비밀 데이터 패킷을 포함하는 임의 데이터 패킷을 상기 패딩 공간에 맵핑하는 것을 특징으로 하는 방법.
The method of claim 1,
Including the coded secret data packet in any data packet having a preset data error,
The step of mapping the coded secret data packet to the padding space,
And mapping any data packet comprising the coded secret data packet to the padding space.
제 6 항에 있어서,
상기 미리 설정된 데이터 에러는,
상기 네트워크에서 데이터 패킷에 발생하는 에러 분포를 기반으로 설정되는 것을 특징으로 하는 방법.
The method of claim 6,
The preset data error is
And based on an error distribution occurring in a data packet in the network.
수신 단말이 네트워크를 통해 연결된 송신 단말로부터 비밀 데이터를 수신하는 방법에 있어서,
상기 송신 단말로부터 수신되는 패킷의 패딩 공간에 맵핑된 패킷을 확인하는 단계;
상기 송신 단말로부터 수신되는 패킷의 목적지가 미리 설정된 임의 목적지인지 확인하는 단계;
상기 송신 단말로부터 수신되는 패킷이 미리 설정된 헤더 에러를 갖는 헤더 패킷을 포함하는지 확인하는 단계; 및
상기 패딩 공간에 맵핑된 패킷을 암호화 키를 기반으로 디코딩하여 비밀 데이터를 수신하는 단계
를 포함하고,
상기 미리 설정된 헤더 에러는,
상기 네트워크에서 헤더 패킷에 발생하는 에러 분포를 기반으로 설정되는 것을 특징으로 하는, 방법.
In the method that the receiving terminal receives the secret data from the transmitting terminal connected via the network,
Checking a packet mapped to a padding space of a packet received from the transmitting terminal;
Checking whether a destination of a packet received from the transmitting terminal is a predetermined destination;
Checking whether a packet received from the transmitting terminal includes a header packet having a preset header error; And
Receiving secret data by decoding a packet mapped to the padding space based on an encryption key
Including,
The preset header error is
And based on an error distribution occurring in a header packet in the network.
삭제delete 제 8 항에 있어서,
상기 헤더 패킷은,
네트워크 계층에서 추가되는 헤더 패킷인 것을 특징으로 하는 방법.
The method of claim 8,
The header packet is
The header packet is added at the network layer.
제 8 항에 있어서,
상기 헤더 패킷은,
전송 계층에서 추가되는 헤러 패킷인 것을 특징으로 하는 방법.
The method of claim 8,
The header packet is
Method is characterized in that it is a header packet added at the transport layer.
삭제delete 제 8 항에 있어서,
상기 패딩 공간에 맵핑된 패킷이 미리 설정된 데이터 에러를 갖는 임의 데이터 패킷인지 확인하는 단계; 및
상기 임의 데이터 패킷에 포함된 코딩된 비밀 데이터 패킷을 확인하는 단계를 더 포함하되,
상기 패딩 공간에 맵핑된 패킷을 암호화 키를 기반으로 디코딩하여 비밀 데이터를 수신하는 단계는,
상기 코딩된 비밀 데이터 패킷을 상기 암호화 키를 기반으로 디코딩하여 상기 비밀 데이터를 수신하는 것을 특징으로 하는 방법.
The method of claim 8,
Checking whether the packet mapped to the padding space is any data packet having a preset data error; And
Identifying a coded secret data packet included in the random data packet,
Decoding the packet mapped to the padding space based on an encryption key to receive secret data,
And decoding the coded secret data packet based on the encryption key to receive the secret data.
제 13 항에 있어서,
상기 미리 설정된 데이터 에러는,
상기 네트워크에서 데이터 패킷에 발생하는 에러 분포를 기반으로 설정되는 것을 특징으로 하는 방법.
The method of claim 13,
The preset data error is
And based on an error distribution occurring in a data packet in the network.
KR1020170093308A 2017-07-24 2017-07-24 Apparatus and method for secret communication using network error KR102016462B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170093308A KR102016462B1 (en) 2017-07-24 2017-07-24 Apparatus and method for secret communication using network error

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170093308A KR102016462B1 (en) 2017-07-24 2017-07-24 Apparatus and method for secret communication using network error

Publications (2)

Publication Number Publication Date
KR20190010980A KR20190010980A (en) 2019-02-01
KR102016462B1 true KR102016462B1 (en) 2019-09-04

Family

ID=65367837

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170093308A KR102016462B1 (en) 2017-07-24 2017-07-24 Apparatus and method for secret communication using network error

Country Status (1)

Country Link
KR (1) KR102016462B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970050168A (en) * 1995-12-30 1997-07-29 구자홍 Encryption device for digital record carrier
KR102300300B1 (en) * 2015-07-03 2021-09-09 삼성전자주식회사 Method and apparatus for communicating packets using header compression

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Hussain, Mehdi. "Efficient Data Hiding Techniques with Enhanced Capacity," Master of Sciences, SZABIST (2011)*
Schmidt, Florian. Heuristic Header Error Recovery for Corrupted Network Packets. Shaker Verlag (2015.10.23.)*

Also Published As

Publication number Publication date
KR20190010980A (en) 2019-02-01

Similar Documents

Publication Publication Date Title
RU2224377C2 (en) Device and method for transmitting/receiving network bit stream
US9384332B2 (en) Watermarking method and apparatus for tracking hacked content and method and apparatus for blocking hacking of content using the same
WO2022146682A1 (en) Systems and methods for improving wireless performance
CN110545285B (en) Internet of things terminal security authentication method based on security chip
US20170072875A1 (en) Data communication method for vehicle, electronic control unit and system thereof
CN102648584A (en) Systems, methods, and media for checking available bandwidth using forward error correction
CN109040059B (en) Protected TCP communication method, communication device and storage medium
CN107294913A (en) Safety communicating method, service end and client based on HTTP
US20160134837A1 (en) Methods, devices, and systems for controlling audio and video transmission
KR20110040004A (en) System and apparatus for transferring data only in one direction
CN105049953A (en) Set-top-box data encryption method and system
KR102016462B1 (en) Apparatus and method for secret communication using network error
KR20180042607A (en) Apparatus for one-way data transmission, apparatus for one-way data reception, and one-way data transmission method for using the same
CN112437046B (en) Communication method, system, electronic device and storage medium for preventing replay attack
WO2024032289A1 (en) Video playback method and system, video security platform, and communication device
CN109996025B (en) Quantum communication-based adaptive audio and video communication method, device and system
KR20170089581A (en) System and method for one-way security communication
KR102136761B1 (en) Base station and a plurality of member nodes of transmitting and receiving network coding based multicast traffic
WO2016065638A1 (en) Data transmission method and device
KR101692670B1 (en) System and method for transmitting one-way data
US9832103B2 (en) Method and apparatus for secure communication via multiple communication paths
JP6248663B2 (en) Transmission system and transmission method
EP3355546B1 (en) Device identification encryption
US20130072155A1 (en) Method and apparatus for authenticating a digital certificate status and authorization credentials
CN117835231B (en) Communication satellite safe transmission method, equipment and medium

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