KR101596479B1 - Secure chat method using distributed key exchange protocol and self-defense security - Google Patents

Secure chat method using distributed key exchange protocol and self-defense security Download PDF

Info

Publication number
KR101596479B1
KR101596479B1 KR1020150083256A KR20150083256A KR101596479B1 KR 101596479 B1 KR101596479 B1 KR 101596479B1 KR 1020150083256 A KR1020150083256 A KR 1020150083256A KR 20150083256 A KR20150083256 A KR 20150083256A KR 101596479 B1 KR101596479 B1 KR 101596479B1
Authority
KR
South Korea
Prior art keywords
message
communication terminal
chat
chat application
capture
Prior art date
Application number
KR1020150083256A
Other languages
Korean (ko)
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 KR1020150083256A priority Critical patent/KR101596479B1/en
Priority to PCT/KR2016/000887 priority patent/WO2016200007A1/en
Application granted granted Critical
Publication of KR101596479B1 publication Critical patent/KR101596479B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • 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
    • H04L51/32
    • 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
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)

Abstract

According to an embodiment of the present invention, in a secure chat method using a distributed key exchange protocol of a first chat application installed in a first communication terminal and executed, the first chat application does not share an encryption key with a chat server, creates a secret key by using a secret key managing module embedded in the first chat application, directly shares the created secret key by means of a key exchange protocol with a second chat application installed in a second communication terminal, and performs a secure chat with the second chat application via the chat server.

Description

분산 키 교환 프로토콜과 자기 방어 보안 기술을 이용한 보안 채팅 방법{SECURE CHAT METHOD USING DISTRIBUTED KEY EXCHANGE PROTOCOL AND SELF-DEFENSE SECURITY}TECHNICAL FIELD [0001] The present invention relates to a security chatting method using a distributed key exchange protocol and a self-

본 발명의 개념에 따른 실시 예는 보안 채팅 방법에 관한 것으로, 특히 사용자의 통신 단말기에 설치되어 실행되는 채팅 애플리케이션이, 채팅 서버와 암호화 키를 공유하지 않고 채팅 상대방의 채팅 애플리케이션과 분산 키 교환 프로토콜을 이용하여 직접 암호화 키를 공유하고, 자기 방어 보안 기술을 이용하여 채팅 메시지가 캡쳐되고 유출되는 것을 방지함으로써 보안을 향상할 수 있는 보안 채팅 방법에 관한 것이다.In particular, the present invention relates to a secure chatting method, and more particularly, to a chatting application installed and executed in a communication terminal of a user, a chatting application and a distributed key exchange protocol without sharing an encryption key with a chatting server To a security chatting method capable of improving security by sharing a direct encryption key and preventing a chat message from being captured and leaked by using a self-defense security technology.

최근 온라인 채팅 애플리케이션을 이용하여 이용자들이 사적으로 주고받는 메시지들이 해킹이나 캡쳐 등으로 인해 외부로 유출되는 사례들이 발생하고 있다. 상기 메시지들이 개인의 프라이버시나 기업의 영업 비밀에 관련되는 경우, 상기 메시지들이 유출되면 경제적 또는 정신적 피해를 발생시킬 수 있다.Recently, there have been cases where messages exchanged privately with users using an online chat application are leaked to the outside due to hacking or capturing. If the messages are related to the privacy of an individual or a business secret of an enterprise, economic or psychological harm can occur if the messages are leaked.

종래의 채팅 애플리케이션들은 채팅 서버와 각각 암호화 키를 공유하기 때문에, 상기 채팅 서버는 특정 채팅 애플리케이션으로부터 수신되는 암호화된 메시지를 복호화하여 메시지를 추출하고, 추출된 메시지를 대화 상대방의 채팅 애플리케이션과 공유하는 암호화 키로 재암호화하여 상대방의 채팅 애플리케이션으로 전송한다. 따라서, 상기 채팅 서버에서 메시지가 유출될 가능성이 존재하게 된다. 또한, 상기 채팅 서버는 모든 메시지에 대해 암호화와 복호화를 수행하게 되므로, 상기 채팅 서버의 부하를 초래할 수 있다.Since conventional chat applications share an encryption key, respectively, with the chat server, the chat server decrypts the encrypted message received from the specific chat application to extract the message, and encrypts the extracted message with the chat application of the chat partner Re-encrypts it with the key and sends it to the chat application of the other party. Therefore, there is a possibility that a message is leaked from the chat server. Also, since the chat server performs encryption and decryption of all the messages, the chat server may cause a load on the chat server.

1. 공개특허공보 제10-2005-0053292호 (2005.06.08. 공개)1. Published Patent Application No. 10-2005-0053292 (published on Jun. 6, 2005) 2. 공개특허공보 제10-2014-0058196호 (2014.05.14. 공개)2. Published Japanese Patent Application No. 10-2014-0058196 (published May 4, 2014)

본 발명이 이루고자 하는 기술적인 과제는 채팅을 위해 주고받는 메시지에 대한 보안을 향상하기 위하여, 채팅 서버와 암호화 키를 공유하지 않고 채팅 상대방의 채팅 애플리케이션과 분산 키 교환 프로토콜을 이용하여 직접 암호화 키를 공유하고, 자기 방어 보안 기술을 이용하여 디스플레이되는 메시지가 캡쳐되는 것을 방지함으로써 보안을 향상할 수 있는 보안 채팅 방법을 제공하는 것이다.The present invention has been made in view of the above problems, and it is therefore an object of the present invention to provide a method and system for sharing a secret key by using a distributed key exchange protocol and a chat application of a chat partner without sharing an encryption key with a chat server, And to provide a security chatting method that can improve security by preventing the displayed messages from being captured using self-defense security technology.

제1통신 단말기에 설치되어 실행되는 제1채팅 애플리케이션이 채팅 서버를 통해 제2통신 단말기에 설치되어 실행되는 제2채팅 애플리케이션과 보안 채팅을 수행할 수 있는 상기 제1채팅 애플리케이션의 분산 키 교환 프로토콜(distributed key exchange protocol)을 이용한 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 상기 제1채팅 애플리케이션에 내장된 비밀 키 관리 모듈을 이용하여, 상기 제2채팅 애플리케이션과 주고받는 메시지를 암호화하기 위한 비밀 키를 생성하고, 생성된 비밀 키를 키 교환 프로토콜을 이용하여 상기 제2통신 단말기에 설치되어 실행되는 상기 제2채팅 애플리케이션과 직접(directly) 공유하는 단계, 상기 제1통신 단말기의 사용자로부터 상기 제2통신 단말기로 전송할 제1메시지가 입력되면, 상기 제1채팅 애플리케이션이 상기 비밀 키를 이용하여 상기 제1메시지를 암호화하는 단계, 및 상기 제1채팅 애플리케이션이, 암호화된 제1메시지를 상기 제2채팅 애플리케이션으로 전송하기 위해 상기 채팅 서버로 전송하는 단계를 포함하고, 상기 직접 공유하는 단계는, 상기 제1통신 단말기와 상기 제2통신 단말기가 상기 채팅 서버로 상기 비밀 키를 공유하기 위한 데이터를 전송하지 않고, 상기 제1통신 단말기와 상기 제2통신 단말기가 상기 비밀 키를 공유하기 위한 데이터를 직접 주고받는다.
상기 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 상기 제2채팅 애플리케이션에 의해 암호화된 제2메시지가 상기 채팅 서버를 통해 상기 제1통신 단말기로 전송되면, 상기 암호화된 제2메시지를 수신하는 단계와, 상기 제1채팅 애플리케이션이, 상기 비밀 키를 이용하여 상기 암호화된 제2메시지를 복호화하는 단계를 더 포함한다.
A first chat application installed and executed in a first communication terminal is connected to a second chat application installed and executed in a second communication terminal via a chat server and a distributed key exchange protocol of the first chat application capable of performing a secure chat the first chat application uses a secret key management module embedded in the first chat application to generate a secret key for encrypting a message exchanged with the second chat application, And directly sharing the generated secret key with the second chat application installed and executed in the second communication terminal using a key exchange protocol; transmitting, from the user of the first communication terminal, When the first message to be transmitted to the communication terminal is input, Encrypting the first message using the first chat application and sending the encrypted first message to the chat server for transmission to the second chat application, Wherein the first communication terminal and the second communication terminal do not transmit data for sharing the secret key to the chat server and the first communication terminal and the second communication terminal share the secret key Data directly.
The secure chatting method comprising the steps of: receiving the encrypted second message if the first chat application sends a second message encrypted by the second chat application to the first communication terminal via the chat server; And the first chat application decrypting the encrypted second message using the secret key.

삭제delete

상기 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 복호화된 제2메시지를 상기 제1통신 단말기에 포함된 디스플레이를 통해 디스플레이하는 단계와, 상기 제1채팅 애플리케이션이, 상기 제1채팅 애플리케이션에 내장된 캡쳐 방지 모듈을 이용하여 디스플레이된 상기 제2메시지가 캡쳐되는 것을 방지하는 단계를 더 포함한다.The secure chatting method comprising the steps of: the first chat application displaying a decrypted second message through a display included in the first communication terminal; and the first chat application, And preventing the second message displayed using the capture prevention module from being captured.

실시 예에 따라, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는, 상기 제1채팅 애플리케이션이 상기 제1통신 단말기의 화면 캡쳐 기능을 디스에이블한다.According to an embodiment, preventing the second message from being captured, the first chat application disables the screen capture function of the first communication terminal.

다른 실시 예에 따라, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는, 상기 제1채팅 애플리케이션이, 상기 제1통신 단말기에서 실행되는 화면 캡쳐 애플리케이션을 강제로 종료한다.According to another embodiment, preventing the second message from being captured, the first chat application forcibly terminates a screen capture application running on the first communication terminal.

또 다른 실시 예에 따라, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는, 상기 제1채팅 애플리케이션이, 상기 제1통신 단말기의 화면 캡쳐 데이터가 저장되는 폴더와 클립보드(clipboard) 중에서 적어도 하나를 모니터링하는 단계와, 상기 제1채팅 애플리케이션이, 상기 제2메시지가 디스플레이되는 동안 상기 폴더와 상기 클립보드 중에서 적어도 하나에 저장되는 데이터를 삭제하는 단계를 포함한다.According to another embodiment, the step of preventing the second message from being captured may include at least one of a folder in which screen capture data of the first communication terminal is stored and a clipboard And deleting data stored in at least one of the folder and the clipboard while the first chat application displays the second message.

또 다른 실시 예에 따라, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는, 상기 제1채팅 애플리케이션이, 디스플레이된 상기 제2메시지가 외부 전자 기기에 의해 캡쳐되는 것을 방지하기 위해, 영상 방해 패턴을 상기 디스플레이에 디스플레이한다.According to another embodiment, the step of preventing the second message from being captured further comprises the step of causing the first chat application to display the image disturbance pattern in order to prevent the displayed second message from being captured by the external electronic device And displays it on the display.

상기 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 상기 제2메시지에 대한 캡쳐 시도를 감지하는 경우, 상기 캡쳐 시도를 알리기 위한 알림 메시지를 상기 채팅 서버를 통해 상기 제2통신 단말기로 전송하는 단계를 더 포함한다.The secure chatting method may further include the step of, when the first chat application detects a capture attempt for the second message, transmitting a notification message for notifying the capture attempt to the second communication terminal through the chat server .

본 발명의 다른 실시 예에 따른 제1통신 단말기에 설치되어 실행되는 제1채팅 애플리케이션이, 제2통신 단말기에 설치되어 실행되는 제2채팅 애플리케이션과 보안 채팅을 수행할 수 있는 상기 제1채팅 애플리케이션의 자기 방어 보안 기술(self-defense security)을 이용한 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 상기 제1통신 단말기와 통신 가능한 채팅 서버를 통해 상기 제2채팅 애플리케이션으로부터 전송되는 암호화된 제1메시지를 수신하는 단계, 상기 제1채팅 애플리케이션이, 수신된 상기 암호화된 제1메시지를 상기 비밀 키를 이용하여 복호화하고, 복호화된 상기 제1메시지를 상기 제1통신 단말기의 디스플레이에 디스플레이하는 단계, 및 상기 제1채팅 애플리케이션이, 상기 제1채팅 애플리케이션에 내장된 캡쳐 방지 모듈을 이용하여, 디스플레이된 상기 제1메시지가 캡쳐되는 것을 방지하는 단계를 포함하고, 상기 비밀 키는 상기 제1메시지를 암호화하는데 이용되고, 상기 제1통신 단말기와 상기 제2통신 단말기는 상기 채팅 서버로 상기 비밀 키를 공유하기 위한 데이터를 전송하지 않고, 상기 제1통신 단말기와 상기 제2통신 단말기가 상기 비밀 키를 직접 공유한다.The first chat application installed and executed in the first communication terminal according to another embodiment of the present invention may be installed in the second communication terminal and the first chat application installed and executed in the second communication terminal, A secure chatting method using self-defense security is characterized in that the first chat application sends an encrypted first message sent from the second chat application via a chat server capable of communicating with the first communication terminal Decrypting the encrypted first message using the secret key and displaying the decrypted first message on a display of the first communication terminal, A first chat application, using a capture prevention module embedded in the first chat application, Wherein the secret key is used to encrypt the first message and the first communication terminal and the second communication terminal send the secret key to the chat server, The first communication terminal and the second communication terminal directly share the secret key without transmitting data for sharing the secret key.

상기 캡쳐 방지 모듈은, 상기 제1통신 단말기의 화면 캡쳐 기능 비활성화, 상기 제1통신 단말기에서 실행되는 캡쳐 프로그램의 강제 종료, 영상 방해 패턴을 이용한 외부 기기의 화면 촬영 방지, 및 클립보드 모니터링을 통한 화면 캡쳐 데이터 삭제 중에서 적어도 하나를 이용하여 디스플레이된 상기 제1메시지가 캡쳐되는 것을 방지한다.The capture prevention module may include a screen capture function of the first communication terminal, a capture end of the capture program executed in the first communication terminal, a screen capture of an external device using an image disturbance pattern, Thereby preventing the displayed first message from being captured using at least one of the capture data deletion.

본 발명의 실시 예에 따른 컴퓨터로 판독가능한 저장 매체는 상기 보안 채팅 방법을 수행하는 애플리케이션을 저장한다.A computer-readable storage medium in accordance with an embodiment of the invention stores an application that performs the secure chatting method.

본 발명의 실시 예에 따른 보안 채팅 방법을 수행하는 채팅 애플리케이션은 자기 방어 보안 기술을 적용한 캡쳐 방지 모듈을 내장하므로, 디스플레이되는 메시지들이 캡쳐에 의해 유출되는 것을 방지하여 보안을 향상하는 효과가 있다.Since the chat application that implements the security chatting method according to the embodiment of the present invention includes the capture prevention module applying the self-defense security technology, the displayed messages are prevented from being leaked by the capture, thereby improving the security.

또한, 채팅 애플리케이션을 실행하는 통신 단말기들 간에 비밀 키(또는 암호화 키)가 분산 키 교환 프로토콜을 통해 직접 공유되므로, 상기 통신 단말기들 간에 송수신되는 메시지들이 채팅 서버에 의해 암호화 및 복호화되지 않음으로써 상기 채팅 서버의 처리 부하를 감소시킬 수 있다. 또한, 상기 채팅 서버에는 암호화된 메시지들만이 존재하므로, 상기 채팅 서버가 해킹된 경우에도 상기 메시지들의 내용이 유출될 위험이 감소되는 효과가 있다.Also, since secret keys (or encryption keys) are directly shared among the communication terminals executing the chat application through the distributed key exchange protocol, the messages transmitted and received between the communication terminals are not encrypted and decrypted by the chat server, The processing load of the server can be reduced. In addition, since only the encrypted messages exist in the chat server, the risk of leakage of the contents of the messages is reduced even when the chat server is hacked.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 보안 채팅 방법을 수행하는 보안 채팅 시스템의 개략적인 블록도이다.
도 2는 도 1에 도시된 제1통신 단말기와 채팅 애플리케이션의 일 실시 예를 나타내는 개략적인 블록도이다.
도 3부터 도 5 각각은 본 발명의 실시 예들에 따른 보안 채팅 방법을 설명하기 위한 데이터 흐름도들이다.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In order to more fully understand the drawings recited in the detailed description of the present invention, a detailed description of each drawing is provided.
1 is a schematic block diagram of a security chat system for performing a secure chatting method according to an embodiment of the present invention.
2 is a schematic block diagram illustrating one embodiment of a chat application with the first communication terminal shown in FIG.
3 to 5 are data flow charts for explaining the security chat method according to the embodiments of the present invention.

본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.It is to be understood that the specific structural or functional description of embodiments of the present invention disclosed herein is for illustrative purposes only and is not intended to limit the scope of the inventive concept But may be embodied in many different forms and is not limited to the embodiments set forth herein.

본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.The embodiments according to the concept of the present invention can make various changes and can take various forms, so that the embodiments are illustrated in the drawings and described in detail herein. It should be understood, however, that it is not intended to limit the embodiments according to the concepts of the present invention to the particular forms disclosed, but includes all modifications, equivalents, or alternatives falling within the spirit and scope of the invention.

제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1구성 요소는 제2구성 요소로 명명될 수 있고 유사하게 제2구성 요소는 제1구성 요소로도 명명될 수 있다.The terms first, second, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms may be named for the purpose of distinguishing one element from another, for example, without departing from the scope of the right according to the concept of the present invention, the first element may be referred to as a second element, The component may also be referred to as a first component.

어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between. Other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.

본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms "comprises" or "having" and the like are used to specify that there are features, numbers, steps, operations, elements, parts or combinations thereof described herein, But do not preclude the presence or addition of one or more other features, integers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 나타낸다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the meaning of the context in the relevant art and, unless explicitly defined herein, are to be interpreted as ideal or overly formal Do not.

본 명세서에서의 모듈(module)이라 함은 본 명세서에서 설명되는 각각의 명칭에 따른 기능과 동작을 수행할 수 있는 하드웨어를 의미할 수도 있고, 또는 특정한 기능과 동작을 수행할 수 있는 컴퓨터 프로그램 코드를 의미할 수도 있고, 또는 특정한 기능과 동작을 수행시킬 수 있는 컴퓨터 프로그램 코드가 탑재된 전자적 기록 매체, 예컨대 프로세서를 의미할 수 있다.A module in this specification may mean hardware capable of performing the functions and operations according to the respective names described in this specification or may include computer program codes capable of performing specific functions and operations May mean an electronic recording medium, such as a processor, having computer program code embodied therein or capable of performing a particular function and operation.

다시 말해, 모듈이란 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및/또는 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적 및/또는 구조적 결합을 의미할 수 있다.In other words, a module may mean a functional and / or structural combination of hardware for carrying out the technical idea of the present invention and / or software for driving the hardware.

이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings attached hereto.

도 1은 본 발명의 실시 예에 따른 보안 채팅 방법을 수행하는 보안 채팅 시스템의 개략적인 블록도이다.1 is a schematic block diagram of a security chat system for performing a secure chatting method according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시 예에 따른 보안 채팅 방법을 수행하는 보안 채팅 시스템(10)은 제1통신 단말기(100-1), 제2통신 단말기(100-2), 및 채팅 서버(200)를 포함할 수 있다.1, a security chat system 10 for performing a secure chatting method according to an embodiment of the present invention includes a first communication terminal 100-1, a second communication terminal 100-2, and a chat server 200).

제1통신 단말기(100-1)와 제2통신 단말기(100-2) 각각은 본 발명의 실시 예에 따른 보안 채팅 방법을 수행할 수 있는 채팅 애플리케이션(애플리케이션 프로그램 또는 앱(app); C_APP)을 저장할 수 있다.Each of the first communication terminal 100-1 and the second communication terminal 100-2 includes a chat application (application program or app C_APP) capable of performing the secure chatting method according to the embodiment of the present invention Can be stored.

제1통신 단말기(100-1)와 제2통신 단말기(100-2) 각각은 PC, 노트북 PC, 또는 모바일 컴퓨팅 장치로 구현될 수 있다. 상기 모바일 컴퓨팅 장치는 스마트폰(smart phone), 태블릿 PC(tablet PC), 이동 전화기, PDA(personal digital assistant), 모바일 인터넷 장치(mobile internet device(MID)), EDA(enterprise digital assistant), PND(personal navigation device 또는 portable navigation device), 사물 인터넷(internet of things(IoT)) 장치, 만물 인터넷(internet of everything(IoE)) 장치, 또는 웨어러블 기기(wearable device)로 구현될 수 있다.Each of the first communication terminal 100-1 and the second communication terminal 100-2 may be implemented as a PC, a notebook PC, or a mobile computing device. The mobile computing device may be a smart phone, a tablet PC, a mobile phone, a personal digital assistant (PDA), a mobile internet device (MID), an enterprise digital assistant (EDA) a personal navigation device or a portable navigation device, an internet of things (IoT) device, an internet of everything (IoE) device, or a wearable device.

본 명세서에서는 보안 채팅 시스템(10)이 제1통신 단말기(100-1)와 제2통신 단말기(100-2)만을 포함하는 것으로 도시되어 있으나, 실시 예에 따라 통신 단말기의 수는 다양할 수 있다. 즉, 제1통신 단말기(100-1)의 사용자는 복수의 채팅 상대방들을 선택할 수 있고, 선택된 복수의 채팅 상대방들 각각으로 메시지를 병렬적으로 전송할 수도 있다.Although the security chat system 10 is illustrated herein as including only the first communication terminal 100-1 and the second communication terminal 100-2, the number of communication terminals may vary according to the embodiment . That is, the user of the first communication terminal 100-1 can select a plurality of chat parties, and can transmit messages to each of the selected plurality of chat parties in parallel.

채팅 서버(200)는 본 발명의 실시 예에 따른 보안 채팅 방법에 따른 보안 채팅 서비스를 제공할 수 있다. 채팅 서버(200)는 사용자가 채팅 애플리케이션(C_APP)을 이용하여 채팅 서버(200)에 접속하는 것을 관리하고, 제1통신 단말기(100-1)로부터 전송되는 메시지를 제2통신 단말기(100-2)로 전송하거나, 제2통신 단말기(100-2)로부터 전송되는 메시지를 제1통신 단말기(100-1)로 전송할 수 있다.The chat server 200 can provide a secure chat service according to the secure chat method according to the embodiment of the present invention. The chat server 200 manages access to the chat server 200 by using the chat application C_APP and manages the message transmitted from the first communication terminal 100-1 to the second communication terminal 100-2 , Or may transmit a message transmitted from the second communication terminal 100-2 to the first communication terminal 100-1.

실시 예에 따라, 채팅 서버(200)는 데이터베이스(DB)를 포함하거나, 데이터베이스(DB)에 액세스할 수 있다. 데이터베이스(DB)는 상기 보안 채팅 서비스를 이용하는 사용자에 대한 사용자 정보(예컨대, 아이디, 이름, 전화번호 등)를 저장할 수 있고, 상기 사용자가 채팅 상대방을 선택하기 위한 채팅 상대방 리스트를 저장할 수 있다. 상기 채팅 상대방 리스트는 상기 사용자에 의해 설정될 수 있으나, 이에 한정되는 것은 아니고 채팅 서버(200)에 의해 자동으로 설정될 수도 있다.According to an embodiment, the chat server 200 may include a database (DB) or may access a database (DB). The database DB may store user information (e.g., ID, name, telephone number, etc.) for the user using the secure chat service, and may store a chat partner list for selecting the chat partner. The chat partner list may be set by the user, but is not limited thereto and may be automatically set by the chat server 200. [

보안 채팅 시스템(10)은 애플리케이션 다운로드 서버(300)를 더 포함할 수 있다. 애플리케이션 다운로드 서버(300)는 본 발명의 실시 예에 따른 보안 채팅 방법을 수행하는 채팅 애플리케이션(C_APP)을 저장할 수 있고, 복수의 통신 단말기들과 유선 및/또는 무선 네트워크를 통해 서로 통신할 수 있다. 애플리케이션 다운로드 서버(300)는 제1통신 단말기(100-1) 및/또는 제2통신 단말기(100-2)의 사용자가 본 발명에 따른 채팅 애플리케이션(C_APP)을 다운로드할 수 있도록 다운로드 서비스를 제공할 수 있다.The secure chat system 10 may further include an application download server 300. [ The application download server 300 may store a chat application (C_APP) that performs a secure chatting method according to an embodiment of the present invention and may communicate with a plurality of communication terminals via a wired and / or wireless network. The application download server 300 provides a download service so that a user of the first communication terminal 100-1 and / or the second communication terminal 100-2 can download the chat application (C_APP) according to the present invention .

예컨대, 애플리케이션 다운로드 서버(300)는 다양한 애플리케이션들을 판매하는 앱스토어 마켓(app-store market)의 서버 혹은 상기 애플리케이션들을 배포하기 위한 개인용 서버 또는 기업용 서버일 수 있으나, 이에 한정되는 것은 아니다.For example, the application download server 300 may be a server of an app store market that sells various applications, a personal server for distributing the applications, or a business server, but is not limited thereto.

도 2는 도 1에 도시된 제1통신 단말기와 채팅 애플리케이션의 일 실시 예를 나타내는 개략적인 블록도이다.2 is a schematic block diagram illustrating one embodiment of a chat application with the first communication terminal shown in FIG.

도 2에서는 제1통신 단말기(100-1)의 구조와 작동에 대해서만 도시하였으나, 제1통신 단말기(100-1)와 제2통신 단말기(100-2) 각각의 구조와 작동은 실질적으로 동일하거나 유사하므로, 제1통신 단말기(100-1)의 상기 구조와 상기 작동은 제2통신 단말기(100-2)에도 적용 가능하다.Although only the structure and operation of the first communication terminal 100-1 are shown in FIG. 2, the structure and operation of the first communication terminal 100-1 and the second communication terminal 100-2 are substantially the same The structure and the operation of the first communication terminal 100-1 are applicable to the second communication terminal 100-2.

도 1과 도 2를 참조하면, 제1통신 단말기(100-1)는 프로세서(110), 메모리(120), 입력 인터페이스(130), 디스플레이(140), 및 통신 모듈(150)을 포함할 수 있다.1 and 2, a first communication terminal 100-1 may include a processor 110, a memory 120, an input interface 130, a display 140, and a communication module 150 have.

프로세서(110)는 제1통신 단말기(100-1)에 포함된 구성 요소들(120, 130, 140, 및 150) 중에서 적어도 하나의 작동을 제어할 수 있다. 실시 예에 따라, 프로세서(110)는 애플리케이션 프로세서(application processor(AP)), 및 모바일 AP로 구현될 수도 있으나, 이에 한정되는 것은 아니다. 프로세서(110)는 메모리(120)에 저장된 채팅 애플리케이션(C_APP)을 실행할 수 있다.The processor 110 may control the operation of at least one of the components 120, 130, 140, and 150 included in the first communication terminal 100-1. In accordance with an embodiment, processor 110 may be implemented as, but not limited to, an application processor (AP), and a mobile AP. Processor 110 may execute the chat application (C_APP) stored in memory 120. [

메모리(120)는 프로세서(110)의 작동에 필요한 명령들 및/또는 복수의 애플리케이션들을 저장할 수 있다. 특히, 메모리(120)는 본 발명의 실시 예에 따른 채팅 애플리케이션(C_APP)을 저장할 수 있다.The memory 120 may store instructions and / or a plurality of applications necessary for the operation of the processor 110. In particular, memory 120 may store a chat application (C_APP) according to an embodiment of the present invention.

실시 예에 따라, 메모리(120)는 프로세서(110)의 작동 메모리로 작동할 수 있고, DRAM(dynamic random access memory) 또는 SRAM(static RAM)으로 구현될 수 있다. 다른 실시 예에 따라, 메모리(120)는 플래시-기반 메모리로 구현될 수 있다. 상기 플래시-기반 메모리는 멀티미디어 카드(multimedia card(MMC)), 임베디드 MMC (embedded MMC(eMMC)), 유니버셜 플래시 스토리지(universal flash storage(UFS)), 또는 솔리드 스테이트 드라이브(solid state drive(SSD))로 구현될 수 있다.According to an embodiment, the memory 120 may operate as a working memory of the processor 110 and may be implemented as a dynamic random access memory (DRAM) or a static RAM (SRAM). According to another embodiment, the memory 120 may be implemented as a flash-based memory. The flash-based memory may be a multimedia card (MMC), an embedded MMC (eMMC), a universal flash storage (UFS), or a solid state drive (SSD) . ≪ / RTI >

메모리(120)는 하나 또는 그 이상의 메모리들을 포함하는 집합적 의미로 이해될 수 있다. 예컨대, 메모리(120)는 화면 캡쳐 이미지가 임시로 저장되는 클립보드(clipboard)를 포함할 수 있다.Memory 120 may be understood in a collective sense to include one or more memories. For example, the memory 120 may include a clipboard in which a screen capture image is temporarily stored.

메모리(120)에 저장되고 프로세서(110)에 의해 실행되는 채팅 애플리케이션(C_APP)은 접속 관리 모듈(162), 비밀 키 관리 모듈(164), 메시지 관리 모듈(166), 암호화/복호화 모듈(168), 메시지 뷰어(170), 및 캡쳐 방지 모듈(172)을 내장(또는 포함)할 수 있다.The chat application C_APP stored in the memory 120 and executed by the processor 110 includes a connection management module 162, a secret key management module 164, a message management module 166, an encryption / decryption module 168, A message viewer 170, and a capture prevention module 172. In addition,

접속 관리 모듈(162)은, 제1통신 단말기(100-1)와 채팅 서버(200) 사이의 접속을 관리할 수 있다. 접속 관리 모듈(162)은, 제1통신 단말기(100-1)의 사용자가 보안 채팅 서비스를 이용하기 위해 채팅 애플리케이션(C_APP)을 실행하면, 채팅 서버(200)에 접속(또는 로그인)하기 위한 사용자 정보를 채팅 서버(200)로 전송할 수 있다. 상기 사용자 정보는 아이디 및/또는 패스워드일 수 있으나, 이에 한정되는 것은 아니고, 상기 사용자 정보는 제1통신 단말기(100-1) 또는 상기 사용자를 식별하기 위한 정보일 수 있다. 예컨대, 제1통신 단말기(100-1)가 PC인 경우 상기 사용자 정보는 제1통신 단말기(100-1)의 IP(internet protocol) 어드레스를 포함할 수 있고, 제1통신 단말기(100-1)가 스마트폰인 경우 상기 사용자 정보는 제1통신 단말기(100-1)의 전화번호를 포함할 수도 있다. 상기 사용자 정보는 입력 인터페이스(130)를 통해 입력되거나, 접속 관리 모듈(162)에 미리 저장되어 있을 수 있다. The connection management module 162 can manage the connection between the first communication terminal 100-1 and the chat server 200. [ When the user of the first communication terminal 100-1 executes the chat application (C_APP) in order to use the secure chat service, the connection management module 162 registers the user Information to the chat server 200. The user information may be an ID and / or a password, but is not limited thereto. The user information may be information for identifying the first communication terminal 100-1 or the user. For example, when the first communication terminal 100-1 is a PC, the user information may include an IP (internet protocol) address of the first communication terminal 100-1, Is a smart phone, the user information may include the telephone number of the first communication terminal 100-1. The user information may be input through the input interface 130 or stored in the connection management module 162 in advance.

실시 예에 따라, 접속 관리 모듈(162)은 채팅 애플리케이션(C_APP)이 종료될 때, 채팅 서버(200)와의 접속을 종료하기 위한 로그아웃 작동을 수행할 수도 있다.According to an embodiment, the connection management module 162 may perform a logout operation to terminate the connection with the chat server 200 when the chat application C_APP is terminated.

비밀 키 관리 모듈(164)은, 채팅 상대방의 통신 단말기, 예컨대 제2통신 단말기(100-2)에 설치된 채팅 애플리케이션(C_APP)과 주고받는 메시지를 암호화하기 위한 비밀 키(또는 암호화 키)를 제2통신 단말기(100-2)와 직접 공유하는 역할을 수행할 수 있다. The secret key management module 164 encrypts a secret key (or an encryption key) for encrypting a message to be exchanged with a chat application (C_APP) installed in the communication terminal of the chatting party, for example, the second communication terminal 100-2, And directly share with the communication terminal 100-2.

비밀 키 관리 모듈(164)은, 분산 키 교환 프로토콜(또는 키 교환 알고리즘; distributed key exchange protocol)을 이용하여 제2통신 단말기(100-2)와 상기 비밀 키를 직접 공유할 수 있다. 비밀 키 관리 모듈(164)은 디피-헬만 키 교환(diffie-hellman key exchange) 알고리즘과 같이 공지된 키 교환 프로토콜(또는 공지된 키 교환 알고리즘)을 이용할 수 있다. 상기 비밀 키를 직접 공유한다 함은, 제1통신 단말기(100-1)와 제2통신 단말기(100-2)가 상기 비밀 키를 공유하기 위한 신호 및/또는 데이터를 직접 주고받는 것을 의미한다. 즉, 상기 비밀 키를 공유할 때에는 제1통신 단말기(100-1)와 제2통신 단말기(100-2)는 채팅 서버(200)로 상기 비밀 키를 공유하기 위한 상기 신호 및/또는 상기 데이터를 전송하지 않는다. 따라서, 채팅 서버(200)는 상기 비밀 키에 대한 어떠한 정보도 가질 수 없으므로, 채팅 서버(200)로 전송되는 메시지들은 채팅 서버(200)에서 복호화될 수 없다.The secret key management module 164 may directly share the secret key with the second communication terminal 100-2 using a distributed key exchange protocol (or a key exchange algorithm). Secret key management module 164 may utilize a known key exchange protocol (or a known key exchange algorithm) such as a Diffie-Hellman key exchange algorithm. Directly sharing the secret key means that the first communication terminal 100-1 and the second communication terminal 100-2 directly exchange signals and / or data for sharing the secret key. That is, when the secret key is shared, the first communication terminal 100-1 and the second communication terminal 100-2 transmit the signal and / or the data for sharing the secret key to the chat server 200 Do not transmit. Accordingly, since the chat server 200 can not have any information on the secret key, messages transmitted to the chat server 200 can not be decrypted by the chat server 200. [

메시지 관리 모듈(166)은, 상기 사용자가 상기 채팅 상대방에게 전송하고자 하는 제1메시지를 입력 인터페이스(130)를 통해 입력하면, 입력된 제1메시지를 수신하고, 수신된 제1메시지를 암호화/복호화 모듈(168)을 이용하여 암호화할 수 있다. 암호화/복호화 모듈(168)은 비밀 키 관리 모듈(164)에 의해 생성된 상기 비밀 키를 이용하여 상기 제1메시지를 암호화할 수 있다. 메시지 관리 모듈(166)은, 암호화된 제1메시지를 통신 모듈(150)을 통해 제2통신 단말기(100-2)로 전송할 수 있다.The message management module 166 receives the first message input by the user through the input interface 130 when the user inputs a first message to be transmitted to the chatting party and encrypts / decrypts the received first message Module 168 may be used for encryption. The encryption / decryption module 168 may encrypt the first message using the secret key generated by the secret key management module 164. The message management module 166 may transmit the encrypted first message to the second communication terminal 100-2 via the communication module 150. [

실시 예에 따라, 제2통신 단말기(100-2)로부터 제2메시지가 통신 모듈(150)을 통해 제1통신 단말기(100-1)로 수신되면, 메시지 관리 모듈(166)은 상기 제2메시지를 암호화/복호화 모듈(168)을 이용하여 복호화할 수 있다. 암호화/복호화 모듈(168)은 상기 비밀 키를 이용하여 상기 제2메시지를 복호화할 수 있다.According to the embodiment, when a second message is received from the second communication terminal 100-2 through the communication module 150 to the first communication terminal 100-1, the message management module 166 transmits the second message Decryption module 168. The encryption / The encryption / decryption module 168 may decrypt the second message using the secret key.

메시지 뷰어(170)는 복호화된 상기 제2메시지를 제1통신 단말기(100-1)에 포함된 디스플레이(140)를 통해 디스플레이할 수 있다. 실시 예에 따라, 메시지 뷰어(170)는 제1통신 단말기(100-1)의 사용자에 의해 입력된 상기 제1메시지를 함께 디스플레이할 수 있다.The message viewer 170 may display the decrypted second message through the display 140 included in the first communication terminal 100-1. According to the embodiment, the message viewer 170 may display together the first message inputted by the user of the first communication terminal 100-1.

캡쳐 방지 모듈(172)은, 디스플레이된 제2메시지 및/또는 제1메시지가 외부로 유출되는 것을 방지하기 위해, 상기 디스플레이된 제2메시지 및/또는 제1메시지가 캡쳐되는 것을 방지하는 여러 작동들을 수행할 수 있다. 즉, 캡쳐 방지 모듈(172)은, 채팅 애플리케이션(C_APP)에 대한 자기 방어 보안(self-defense security) 작동을 수행할 수 있다.The capture prevention module 172 may perform various actions to prevent the displayed second message and / or the first message from being captured to prevent the displayed second message and / or the first message from flowing out Can be performed. That is, the capture prevention module 172 may perform a self-defense security operation on the chat application C_APP.

캡쳐 방지 모듈(172)은, 제1통신 단말기(100-1)의 화면 캡쳐 기능을 디스에이블하여 상기 디스플레이된 제2메시지 및/또는 제1메시지가 캡쳐되는 것을 방지할 수 있다. 예컨대, 캡쳐 방지 모듈(172)은 시스템 API(application programming interface)를 통해 제1통신 단말기(100-1)의 화면 캡쳐 키의 작동을 디스에이블할 수 있다.The capture prevention module 172 may disable the screen capture function of the first communication terminal 100-1 to prevent the displayed second message and / or the first message from being captured. For example, the capture prevention module 172 may disable operation of the screen capture key of the first communication terminal 100-1 through a system application programming interface (API).

실시 예에 따라, 캡쳐 방지 모듈(172)은 화면 캡쳐된 이미지가 저장되는 위치(예컨대, 사진 폴더 또는 스크린샷 폴더 등)를 모니터링할 수 있다. 캡쳐 방지 모듈(172)은, 채팅 애플리케이션(C_APP)이 활성화되어 제1통신 단말기(100-1)와 제2통신 단말기(100-2) 사이의 채팅이 진행되는 중 또는 디스플레이(140)에 상기 제2메시지 및/또는 상기 제1메시지가 디스플레이되는 중에 상기 위치에 파일 및/또는 데이터가 생성되는 경우, 생성된 파일 및/또는 데이터는 디스플레이된 상기 제2메시지 및/또는 상기 제1메시지에 대한 화면 캡쳐 이미지인 것으로 인식하여 상기 생성된 파일 및/또는 데이터를 삭제할 수 있다.According to an embodiment, the capture prevention module 172 may monitor the location (e.g., a photo folder or a screenshot folder, etc.) where the screen captured image is stored. The capture prevention module 172 may prevent the chat application C_APP from being activated during the chat between the first communication terminal 100-1 and the second communication terminal 100-2, 2 file and / or data is generated at the location during the display of the first message and / or the first message, the generated file and / or data is displayed on the screen for the displayed second message and / It can recognize that the image is a captured image and delete the generated file and / or data.

실시 예에 따라, 캡쳐 방지 모듈(172)은 제1통신 단말기(100-1)에서 실행되는 캡쳐 애플리케이션의 작동을 강제로 종료할 수 있다. 캡쳐 방지 모듈(172)은 상기 캡쳐 애플리케이션을 감지하기 위한 데이터베이스를 포함할 수 있고, 상기 데이터베이스를 이용하여 상기 캡쳐 애플리케이션을 감지할 수 있다.According to the embodiment, the capture prevention module 172 can forcibly terminate the operation of the capture application executed in the first communication terminal 100-1. The capture prevention module 172 may include a database for detecting the capture application, and may detect the capture application using the database.

다른 실시 예에 따라, 캡쳐 방지 모듈(172)은 제1통신 단말기(100-1)의 클립보드를 모니터링할 수 있다. 캡쳐 방지 모듈(172)은 채팅 애플리케이션(C_APP)이 활성화되어 제1통신 단말기(100-1)와 제2통신 단말기(100-2) 사이의 채팅이 진행되는 중 또는 디스플레이(140)에 상기 제2메시지 및/또는 상기 제1메시지가 디스플레이되는 중에, 상기 클립보드에 데이터가 채워지는 경우 상기 데이터는 디스플레이된 상기 제2메시지 및/또는 상기 제1메시지에 대한 화면 캡쳐 이미지인 것으로 인식하여 상기 데이터를 삭제할 수 있다.According to another embodiment, the capture prevention module 172 may monitor the clipboard of the first communication terminal 100-1. The capture prevention module 172 determines whether or not the chat application C_APP is activated so that the chat between the first communication terminal 100-1 and the second communication terminal 100-2 or the display 140 When the message and / or the first message is displayed, if the data is filled in the clipboard, the data is recognized as a screen capture image for the displayed second message and / or the first message, Can be deleted.

또 다른 실시 예에 따라, 캡쳐 방지 모듈(172)은 외부 전자 기기를 통해 디스플레이(140)가 촬영됨으로써 상기 디스플레이된 제2메시지 및/또는 제1메시지가 유출되는 것을 방지하기 위해, 사람의 눈에는 잘 보이지 않지만 상기 외부 전자 기기로 촬영할 경우 영상 간섭을 일으켜 상기 디스플레이된 제2메시지 및/또는 제1메시지가 유출되지 않도록 하는 영상 방해 패턴을 디스플레이(140)에 표시할 수 있다.According to another embodiment, the capture prevention module 172 may be configured to prevent the displayed second message and / or the first message from being leaked by shooting the display 140 via the external electronic device, It is possible to display on the display 140 an image interference pattern that causes image interference and prevents the displayed second message and / or the first message from flowing out when the image is captured with the external electronic device.

본 명세서에서는 상술한 바와 같이 캡쳐 방지 모듈(172)의 작동에 대한 여러 가지 예들을 설명하였으나, 캡쳐 방지 모듈(172)의 실시 예는 이 기술이 속하는 분야의 통상의 기술자에 의해 예측가능한 범위에서 다양하게 변형될 수 있다. 캡쳐 방지 모듈(172)은 상기 실시 예들 중에서 적어도 하나를 이용하여 캡쳐 방지 작동을 수행할 수 있다.Although various examples of the operation of the capture prevention module 172 have been described hereinabove, embodiments of the capture prevention module 172 may be varied within a predictable range by those skilled in the art . The capture prevention module 172 may perform the capture prevention operation using at least one of the above embodiments.

캡쳐 방지 모듈(172)은, 제1통신 단말기(100-1)의 화면 캡쳐 시도를 감지하여 제2통신 단말기(100-2)의 사용자에게 상기 화면 캡쳐 시도를 알릴 수 있다. 실시 예에 따라, 캡쳐 방지 모듈(172)은 외부 전자 기기로부터의 화면 캡쳐 시도를 감지할 수도 있다. 예컨대, 캡쳐 방지 모듈(172)은 제1통신 단말기(100-1)에 포함된 입력 인터페이스(130)가 마이크로폰인 경우, 상기 마이크로폰을 이용하여 카메라 촬영음을 인식함으로써 상기 화면 캡쳐 시도를 감지할 수 있다.The capture prevention module 172 can notify the user of the second communication terminal 100-2 of the screen capture attempt by detecting a screen capture attempt of the first communication terminal 100-1. According to an embodiment, the capture prevention module 172 may detect a screen capture attempt from an external electronic device. For example, if the input interface 130 included in the first communication terminal 100-1 is a microphone, the capture prevention module 172 may detect the camera capture sound by using the microphone to detect the screen capture attempt have.

캡쳐 방지 모듈(172)은, 상기 화면 캡쳐 시도를 감지하는 경우 알림 메시지를 생성하고, 생성된 알림 메시지를 통신 모듈(150)을 통해 제2통신 단말기(100-2)로 전송할 수 있다. 상기 알림 메시지는 제1통신 단말기(100-1)에서 제2통신 단말기(100-2)로 직접 전송되거나, 채팅 서버(200)를 통해 제2통신 단말기(100-2)로 전송될 수 있다.The capture prevention module 172 may generate a notification message when detecting the screen capture attempt and may transmit the generated notification message to the second communication terminal 100-2 through the communication module 150. [ The notification message may be transmitted directly from the first communication terminal 100-1 to the second communication terminal 100-2 or may be transmitted to the second communication terminal 100-2 through the chat server 200. [

입력 인터페이스(130)는, 사용자에 의해 입력되는 제1메시지를 사용자 입력 연동 모듈(116)로 전송하거나, 사용자 정보를 접속 관리 모듈(162)로 전송할 수 있다. 실시 예에 따라, 입력 인터페이스(130)는 키보드(keyboard), 마우스(mouse), 마이크로폰(microphone), 및/또는 터치 패널(touch panel)로 구현될 수 있으나, 이에 한정되는 것은 아니다.The input interface 130 may transmit the first message input by the user to the user input interworking module 116 or may transmit the user information to the connection management module 162. According to an embodiment, the input interface 130 may be implemented as a keyboard, a mouse, a microphone, and / or a touch panel, but is not limited thereto.

디스플레이(140)는, 채팅 서버(200)로부터 수신되는 암호화된 제2메시지가 암호화/복호화 모듈(168)에 의해 복호화되면, 복호화된 제2메시지를 메시지 뷰어(170)의 제어에 따라 디스플레이할 수 있다. 실시 예에 따라, 디스플레이(140)는 입력 인터페이스(130)를 통해 입력되는 상기 제1메시지를 디스플레이할 수도 있다.The display 140 can display the decrypted second message under the control of the message viewer 170 when the encrypted second message received from the chat server 200 is decrypted by the encryption / decryption module 168 have. According to an embodiment, the display 140 may display the first message input via the input interface 130.

예컨대, 디스플레이(140)는 TFT-LCD(thin film transistor-liquid crystal display), LED(light emitting diode) 디스플레이, OLED(organic LED) 디스플레이, AMOLED(active-matrix OLED) 디스플레이, 또는 플렉시블(flexible) 디스플레이로 구현될 수 있다.For example, the display 140 may be a thin film transistor-liquid crystal display (TFT-LCD), an LED (light emitting diode) display, an OLED (organic LED) display, an AMOLED . ≪ / RTI >

통신 모듈(150)은, 채팅 애플리케이션(C_APP)이 실행되면, 접속 관리 모듈(162)로부터 전송되는 사용자 정보를 채팅 서버(200)로 전송할 수 있다. 또한, 메시지 관리 모듈(166)이 상기 제1메시지를 암호화/복호화 모듈(168)을 이용하여 암호화하면, 통신 모듈(150)은 암호화된 제1메시지를 채팅 서버(200)로 전송할 수 있다. 실시 예에 따라, 통신 모듈(150)은 캡쳐 방지 모듈(172)에 의해 생성된 알림 메시지를 채팅 서버(200) 또는 제2통신 단말기(100-2)로 전송할 수 있다.The communication module 150 may transmit the user information transmitted from the connection management module 162 to the chat server 200 when the chat application C_APP is executed. In addition, if the message management module 166 encrypts the first message using the encryption / decryption module 168, the communication module 150 can transmit the encrypted first message to the chat server 200. According to the embodiment, the communication module 150 may transmit the notification message generated by the capture prevention module 172 to the chat server 200 or the second communication terminal 100-2.

통신 모듈(150)은 채팅 서버(200)로부터 전송되는 암호화된 제2메시지를 수신하여 메시지 관리 모듈(166)로 전송할 수 있다. The communication module 150 may receive the encrypted second message transmitted from the chat server 200 and transmit the encrypted second message to the message management module 166.

통신 모듈(150)은 유선 통신 방식 및/또는 무선 통신 방식으로 구현될 수 있다. 상기 무선 통신 방식은 LTETM(long term evolution), 광대역 부호 다중 분할 접속(wideband code division multiple access(W-CDMA)), 와이파이(Wi-Fi) 등의 방식을 포함할 수 있다.The communication module 150 may be implemented by a wired communication method and / or a wireless communication method. The radio communication method may include a method such as TM LTE (long term evolution), W-CDMA (wideband code division multiple access (W -CDMA)), WiFi (Wi-Fi).

도 3부터 도 5 각각은 본 발명의 실시 예들에 따른 보안 채팅 방법을 설명하기 위한 데이터 흐름도들이다.3 to 5 are data flow charts for explaining the security chat method according to the embodiments of the present invention.

도 1부터 도 3을 참조하면, 제1통신 단말기(100-1)에 저장(또는 인스톨)된 채팅 애플리케이션(C_APP)이 실행되면, 채팅 애플리케이션(C_APP)에 포함된 접속 관리 모듈(162)은 사용자 정보를 이용하여 채팅 서버(200)에 접속(또는 로그인)할 수 있다(S100).1 to 3, when the chat application (C_APP) stored (or installed) in the first communication terminal 100-1 is executed, the connection management module 162 included in the chat application (C_APP) (Or log in) to the chat server 200 using the information (S100).

채팅 서버(200)는 채팅 서버(200)에 의해 액세스되는 데이터베이스(DB)로부터 채팅 상대방 리스트(U_LIST)를 로드하고(S110), 로드된 채팅 상대방 리스트(U_LIST)를 제1통신 단말기(100-1)로 전송할 수 있다(S120). 예컨대, 채팅 서버(200)는 상기 사용자 정보를 이용하여 제1통신 단말기(100-1)의 사용자에 설정된 채팅 상대방 리스트(U_LIST)를 로드할 수 있으나, 이에 한정되는 것은 아니다.The chat server 200 loads the chat partner list U_LIST from the database DB accessed by the chat server 200 in step S110 and transmits the loaded chat partner list U_LIST to the first communication terminal 100-1 (S120). For example, the chat server 200 may load the chat partner list U_LIST set to the user of the first communication terminal 100-1 using the user information, but the present invention is not limited thereto.

제1통신 단말기(100-1)의 사용자에 의해 채팅 상대방 리스트(U_LIST)에 포함된 적어도 하나의 채팅 상대방이 선택되면(S130), 채팅 애플리케이션(C_APP)에 내장된 비밀 키 관리 모듈(164)을 이용하여 비밀 키를 생성하고, 생성된 비밀 키를 분산 키 교환 프로토콜을 이용하여 제2통신 단말기(100-2)에 설치된 채팅 애플리케이션(C_APP)과 직접(directly) 공유할 수 있다(S150).When at least one chat partner included in the chat partner list U_LIST is selected by the user of the first communication terminal 100-1 at step S130 and the secret key management module 164 built in the chat application C_APP is selected (S150). The generated secret key may be directly shared with the chat application (C_APP) installed in the second communication terminal 100-2 using the distributed key exchange protocol.

도 1부터 도 4를 참조하면, 제1통신 단말기(100-1)의 사용자로부터 제2통신 단말기(100-2)로 전송할 제1메시지(MSG1)가 입력 인터페이스(130)를 통해 입력되면(S200), 채팅 애플리케이션(C_APP)에 포함된 메시지 관리 모듈(166)은 암호화/복호화 모듈(168)을 이용하여 제1메시지(MSG1)를 암호화할 수 있다(S210). 암호화/복호화 모듈(168)은 비밀 키 관리 모듈(164)에 의해 생성된 상기 비밀 키를 이용하여 제1메시지(MSG1)를 암호화하여 암호화된 제1메시지(E_MSG1)를 생성할 수 있다.1 to 4, when a first message MSG1 to be transmitted from a user of the first communication terminal 100-1 to the second communication terminal 100-2 is input through the input interface 130 (S200 , The message management module 166 included in the chat application C_APP may encrypt the first message MSG1 using the encryption / decryption module 168 (S210). The encryption / decryption module 168 may encrypt the first message MSG1 using the secret key generated by the secret key management module 164 to generate an encrypted first message E_MSG1.

메시지 관리 모듈(166)은 암호화된 제1메시지(E_MSG1)를 통신 모듈(150)을 통해 채팅 서버(200)로 전송하고(S220), 채팅 서버(200)는 제1통신 단말기(100-1)로부터 전송된 암호화된 제1메시지(E_MSG1)를 제2통신 단말기(100-2)로 전송할 수 있다(S230). 실시 예에 따라, 채팅 서버(200)는 암호화된 제1메시지(E_MSG1)를 데이터베이스(DB)에 저장할 수도 있다.The message management module 166 transmits the encrypted first message E_MSG1 to the chat server 200 through the communication module 150 at step S220, (E_MSG1) transmitted from the first communication terminal 100-2 to the second communication terminal 100-2 (S230). According to an embodiment, the chat server 200 may store the encrypted first message (E_MSG1) in the database (DB).

제2통신 단말기(100-2)에서 실행되는 채팅 애플리케이션(C_APP)의 메시지 관리 모듈(166)은, 채팅 서버(200)로부터 전송된 암호화된 제1메시지(E_MSG1)를 암호화/복호화 모듈(168)을 이용하여 복호화할 수 있다(S240). 암호화/복호화 모듈(168)은 제1통신 단말기(100-1)와 공유하는 상기 비밀 키를 이용하여 암호화된 제1메시지(E_MSG1)를 복호화하여 제1메시지(MSG1)를 생성할 수 있다.The message management module 166 of the chat application C_APP executed in the second communication terminal 100-2 transmits the encrypted first message E_MSG1 sent from the chat server 200 to the encryption / (S240). ≪ / RTI > The encryption / decryption module 168 may generate the first message MSG1 by decrypting the first message E_MSG1 encrypted using the secret key shared with the first communication terminal 100-1.

제2통신 단말기(100-2)에서 실행되는 채팅 애플리케이션(C_APP)의 메시지 뷰어(170)는 복호화된 제1메시지(MSG1)를 디스플레이에 디스플레이할 수 있다(S250). 캡쳐 방지 모듈(172)은 자기 방어 보안 기술을 이용하여 디스플레이된 제1메시지(MSG1)가 캡쳐되는 것을 방지할 수 있다(S260). 캡쳐 방지 모듈(172)은, 제2통신 단말기(100-2)의 화면 캡쳐 기능을 디스에이블하거나, 제2통신 단말기(100-2)에서 실행되는 화면 캡쳐 애플리케이션을 강제로 종료하거나, 제2통신 단말기(100-2)의 클립보드 및/또는 이미지가 생성되는 위치(예컨대, 사진 폴더, 스크린샷 폴더 등)를 모니터링하여 제1메시지(MSG1)가 디스플레이되는 동안 상기 클립보드 및/또는 상기 위치에 저장되는 데이터를 삭제하거나, 디스플레이된 제1메시지(MSG1)가 외부 전자 기기에 의해 캡쳐되는 것을 방지하기 위해 영상 방해 패턴을 디스플레이하는 작동 중에서 적어도 어느 하나를 이용할 수 있다.The message viewer 170 of the chat application C_APP executed in the second communication terminal 100-2 may display the decrypted first message MSG1 on the display at step S250. The capture prevention module 172 may prevent the displayed first message MSG1 from being captured using the self-defense security technique (S260). The capture prevention module 172 disables the screen capture function of the second communication terminal 100-2 or forcibly terminates the screen capture application executed in the second communication terminal 100-2, (E.g., a photo folder, a screen shot folder, and the like) where the clipboard and / or image of the terminal 100-2 is generated to display the first message MSG1 on the clipboard and / It is possible to use at least one of the operation of deleting the data to be stored or the operation of displaying the image disturbance pattern to prevent the displayed first message MSG1 from being captured by the external electronic device.

도 1부터 도 5를 참조하면, 제2통신 단말기(100-2)의 사용자로부터 제1통신 단말기(100-1)로 전송할 제2메시지(MSG2)가 입력 인터페이스(130)를 통해 입력되면(S300), 채팅 애플리케이션(C_APP)에 포함된 메시지 관리 모듈(166)은 암호화/복호화 모듈(168)을 이용하여 제2메시지(MSG2)를 암호화할 수 있다(S310). 암호화/복호화 모듈(168)은 제1통신 단말기(100-1)와 공유하는 상기 비밀 키를 이용하여 제2메시지(MSG2)를 암호화하여 암호화된 제2메시지(E_MSG2)를 생성할 수 있다.1 to 5, when a second message MSG2 to be transmitted from the user of the second communication terminal 100-2 to the first communication terminal 100-1 is input through the input interface 130 (S300 , The message management module 166 included in the chat application C_APP may encrypt the second message MSG2 using the encryption / decryption module 168 (S310). The encryption / decryption module 168 may generate the encrypted second message E_MSG2 by encrypting the second message MSG2 using the secret key shared with the first communication terminal 100-1.

메시지 관리 모듈(166)은 암호화된 제2메시지(E_MSG2)를 통신 모듈(150)을 통해 채팅 서버(200)로 전송하고(S320), 채팅 서버(200)는 제2통신 단말기(100-2)로부터 전송된 암호화된 제2메시지(E_MSG2)를 제1통신 단말기(100-1)로 전송할 수 있다(S330). 실시 예에 따라, 채팅 서버(200)는 암호화된 제2메시지(E_MSG2)를 데이터베이스(DB)에 저장할 수도 있다.The message management module 166 transmits the encrypted second message E_MSG2 to the chat server 200 through the communication module 150 at step S320 and the chat server 200 transmits the encrypted second message E_MSG2 to the second communication terminal 100-2, (E_MSG2) transmitted from the first communication terminal 100-1 to the first communication terminal 100-1 (S330). According to an embodiment, the chat server 200 may store the encrypted second message (E_MSG2) in the database (DB).

제1통신 단말기(100-1)에서 실행되는 채팅 애플리케이션(C_APP)의 메시지 관리 모듈(166)은, 채팅 서버(200)로부터 전송된 암호화된 제2메시지(E_MSG2)를 암호화/복호화 모듈(168)을 이용하여 복호화할 수 있다(S340). 암호화/복호화 모듈(168)은 상기 비밀 키를 이용하여 암호화된 제2메시지(E_MSG2)를 복호화하여 제2메시지(MSG2)를 생성할 수 있다.The message management module 166 of the chat application C_APP executed in the first communication terminal 100-1 transmits the encrypted second message E_MSG2 transmitted from the chat server 200 to the encryption / (S340). ≪ / RTI > The encryption / decryption module 168 may decrypt the second message E_MSG2 encrypted using the secret key to generate the second message MSG2.

제1통신 단말기(100-1)에서 실행되는 채팅 애플리케이션(C_APP)의 메시지 뷰어(170)는 복호화된 제2메시지(MSG2)를 디스플레이(140)에 디스플레이할 수 있다(S350). 실시 예에 따라, 메시지 뷰어(170)는 이전에 생성된 제1메시지(MSG1)를 함께 디스플레이할 수도 있다. The message viewer 170 of the chat application C_APP executed in the first communication terminal 100-1 may display the decrypted second message MSG2 on the display 140 at step S350. According to an embodiment, the message viewer 170 may display the previously generated first message MSG1 together.

캡쳐 방지 모듈(172)은 자기 방어 보안 기술을 이용하여 디스플레이된 제2메시지(MSG2)가 캡쳐되는 것을 방지할 수 있다(S360). 실시 예에 따라, 캡쳐 방지 모듈(172)은 디스플레이된 제2메시지(MSG2)의 캡쳐 시도를 감지하고, 감지 결과를 제2통신 단말기(100-2)로 알리기 위한 알림 메시지를 생성할 수 있다. 생성된 알림 메시지는 채팅 서버(200)를 통해 제2통신 단말기(100-2)로 전송되거나, 제2통신 단말기(100-2)로 직접 전송될 수 있다(S370).The capture prevention module 172 may prevent the displayed second message MSG2 from being captured using the self-defense security technique (S360). According to the embodiment, the capture prevention module 172 can detect a capture attempt of the displayed second message MSG2 and generate a notification message for notifying the second communication terminal 100-2 of the detection result. The generated notification message may be transmitted to the second communication terminal 100-2 via the chat server 200 or directly to the second communication terminal 100-2 (S370).

즉, 제1통신 단말기(100-1)와 제2통신 단말기(100-2) 간에 송수신되는 제1메시지(MSG1) 및/또는 제2메시지(MSG2)는 채팅 서버(200)에 의해 암호화 및 복호화되지 않으므로, 채팅 서버(200)의 처리 부하를 감소할 수 있다. 또한, 채팅 서버(200)에는 암호화된 제1메시지(E_MSG1)와 암호화된 제2메시지(E_MSG2)만이 존재하므로, 채팅 서버(200)가 해킹된 경우에도 제1메시지(MSG1)와 제2메시지(MSG2)의 내용이 유출될 위험이 감소할 수 있다.That is, the first message MSG1 and / or the second message MSG2 transmitted / received between the first communication terminal 100-1 and the second communication terminal 100-2 are encrypted and decrypted by the chat server 200 The processing load of the chat server 200 can be reduced. Since only the encrypted first message E_MSG1 and the encrypted second message E_MSG2 exist in the chat server 200, even when the chat server 200 is hacked, the first message MSG1 and the second message E_MSG2 MSG2) may be reduced.

또한, 본 발명의 실시 예에 따른 채팅 애플리케이션(C_APP)은 캡쳐 방지 모듈(172)을 내장하고, 내장된 캡쳐 방지 모듈(172)은 디스플레이되는 메시지들(MSG1 및/또는 MSG2)이 캡쳐되는 것을 방지하여 보안을 향상시킬 수 있다.In addition, the chat application C_APP according to the embodiment of the present invention includes a capture prevention module 172, and the built-in capture prevention module 172 prevents the displayed messages MSG1 and / or MSG2 from being captured Thereby improving security.

본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.

10: 보안 채팅 시스템
100-1: 제1통신 단말기
100-2: 제2통신 단말기
110: 프로세서
120: 메모리
130: 입력 인터페이스
140: 디스플레이
150: 통신 모듈
200: 채팅 서버
300: 애플리케이션 다운로드 서버
10: Security chat system
100-1: the first communication terminal
100-2: second communication terminal
110: Processor
120: Memory
130: input interface
140: Display
150: Communication module
200: Chat server
300: application download server

Claims (12)

제1통신 단말기에 설치되어 실행되는 제1채팅 애플리케이션이 채팅 서버를 통해 제2통신 단말기에 설치되어 실행되는 제2채팅 애플리케이션과 보안 채팅을 수행할 수 있는 상기 제1채팅 애플리케이션의 분산 키 교환 프로토콜(distributed key exchange protocol)을 이용한 보안 채팅 방법에 있어서,
상기 제1채팅 애플리케이션에 내장된 비밀 키 관리 모듈이 상기 제2채팅 애플리케이션과 주고받는 메시지를 암호화하기 위한 비밀 키를 생성하고, 생성된 비밀 키를 키 교환 프로토콜을 이용하여 상기 제2통신 단말기에 설치되어 실행되는 상기 제2채팅 애플리케이션과 직접(directly) 공유하는 단계;
상기 제1통신 단말기의 사용자로부터 상기 제2통신 단말기로 전송할 제1메시지가 입력되면, 상기 제1채팅 애플리케이션에 내장된 암호화/복호화 모듈이 상기 비밀 키를 이용하여 상기 제1메시지를 암호화하는 단계;
상기 제1채팅 애플리케이션에 내장된 접속 관리 모듈이, 암호화된 제1메시지를 상기 제2채팅 애플리케이션으로 전송하기 위해 상기 채팅 서버로 전송하는 단계;
상기 제1채팅 애플리케이션에 내장된 메시지 관리 모듈이, 상기 제2채팅 애플리케이션에 의해 암호화된 제2메시지가 상기 채팅 서버를 통해 상기 제1통신 단말기로 전송되면, 상기 암호화된 제2메시지를 수신하는 단계;
상기 암호화/복호화 모듈이, 상기 비밀 키를 이용하여 상기 암호화된 제2메시지를 복호화하는 단계;
상기 제1채팅 애플리케이션에 내장된 메시지 뷰어가, 복호화된 제2메시지를 상기 제1통신 단말기에 포함된 디스플레이를 통해 디스플레이하는 단계; 및
상기 제1채팅 애플리케이션에 내장된 캡쳐 방지 모듈이, 디스플레이된 상기 제2메시지가 캡쳐되는 것을 방지하는 단계를 포함하고,
상기 직접 공유하는 단계는, 상기 제1통신 단말기와 상기 제2통신 단말기가 상기 채팅 서버로 상기 비밀 키를 공유하기 위한 데이터를 전송하지 않고, 상기 제1통신 단말기와 상기 제2통신 단말기가 상기 비밀 키를 공유하기 위한 데이터를 직접 주고받고,
상기 제1채팅 애플리케이션은 상기 접속 관리 모듈, 상기 비밀 키 관리 모듈, 상기 메시지 관리 모듈, 상기 메시지 뷰어, 상기 암호화/복호화 모듈 및 상기 캡쳐 방지 모듈을 모두 내장하고,
상기 접속 관리 모듈은 상기 제1채팅 애플리케이션이 종료될 때 상기 채팅 서버와의 접속을 종료하기 위한 로그아웃 작동을 수행하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.
A first chat application installed and executed in a first communication terminal is connected to a second chat application installed and executed in a second communication terminal via a chat server and a distributed key exchange protocol of the first chat application capable of performing a secure chat A method for secure chatting using a distributed key exchange protocol,
A secret key management module built in the first chat application generates a secret key for encrypting a message exchanged with the second chat application, and transmits the generated secret key to the second communication terminal using a key exchange protocol Directly sharing with the second chat application to be executed;
Encrypting the first message using the secret key when the first message to be transmitted from the user of the first communication terminal to the second communication terminal is input, the encryption / decryption module embedded in the first chat application;
The connection management module embedded in the first chat application sending an encrypted first message to the chat server for transmission to the second chat application;
Receiving a second message encrypted by the second chat application, if the second message encrypted by the second chat application is transmitted to the first communication terminal via the chat server, ;
The encryption / decryption module decrypting the encrypted second message using the secret key;
The message viewer embedded in the first chat application displays the decrypted second message through a display included in the first communication terminal; And
Wherein the capture prevention module embedded in the first chat application comprises preventing the displayed second message from being captured,
Wherein the first communication terminal and the second communication terminal do not transmit data for sharing the secret key to the chat server, and the first communication terminal and the second communication terminal transmit the secret Directly sending and receiving data for key sharing,
Wherein the first chat application includes both the access management module, the secret key management module, the message management module, the message viewer, the encryption / decryption module, and the capture prevention module,
Wherein the connection management module performs a logout operation for terminating a connection with the chat server when the first chat application is terminated.
삭제delete 삭제delete 제1항에 있어서, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는,
상기 캡쳐 방지 모듈이 상기 제1통신 단말기의 화면 캡쳐 기능을 디스에이블하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.
2. The method of claim 1, wherein preventing the second message from being captured comprises:
Wherein the capture prevention module disables the screen capture function of the first communication terminal.
제1항에 있어서, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는,
상기 캡쳐 방지 모듈이, 상기 제1통신 단말기에서 실행되는 화면 캡쳐 애플리케이션을 강제로 종료하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.
2. The method of claim 1, wherein preventing the second message from being captured comprises:
Wherein the capture prevention module forcibly terminates a screen capture application executed in the first communication terminal.
제1항에 있어서, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는,
상기 캡쳐 방지 모듈이 상기 제1통신 단말기의 화면 캡쳐 데이터가 저장되는 폴더와 클립보드(clipboard) 중에서 적어도 하나를 모니터링하는 단계; 및
상기 캡쳐 방지 모듈이 상기 제2메시지가 디스플레이되는 동안 상기 폴더와 상기 클립보드 중에서 적어도 하나에 저장되는 데이터를 삭제하는 단계를 포함하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.
2. The method of claim 1, wherein preventing the second message from being captured comprises:
Wherein the capture prevention module monitors at least one of a folder and a clipboard in which screen capture data of the first communication terminal is stored; And
Wherein the capture prevention module deletes data stored in at least one of the folder and the clipboard while the second message is being displayed.
제1항에 있어서, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는,
상기 캡쳐 방지 모듈이, 디스플레이된 상기 제2메시지가 외부 전자 기기에 의해 캡쳐되는 것을 방지하기 위해, 영상 방해 패턴을 상기 디스플레이에 디스플레이하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.
2. The method of claim 1, wherein preventing the second message from being captured comprises:
Wherein the capture prevention module displays an image disturbance pattern on the display to prevent the displayed second message from being captured by an external electronic device.
제1항에 있어서,
상기 캡쳐 방지 모듈이, 상기 제2메시지에 대한 캡쳐 시도를 감지하는 경우, 상기 캡쳐 시도를 알리기 위한 알림 메시지를 상기 제2통신 단말기로 전송하기 위해 상기 채팅 서버로 전송하는 단계를 더 포함하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.
The method according to claim 1,
Further comprising transmitting to the second communication terminal a notification message for notifying the capture attempt to the chat server when the capture prevention module detects a capture attempt for the second message, Security chat method using exchange protocol.
제1통신 단말기에 설치되어 실행되는 제1채팅 애플리케이션이, 제2통신 단말기에 설치되어 실행되는 제2채팅 애플리케이션과 보안 채팅을 수행할 수 있는 상기 제1채팅 애플리케이션의 자기 방어 보안 기술(self-defense security)을 이용한 보안 채팅 방법에 있어서,
상기 제1채팅 애플리케이션에 내장된 메시지 관리 모듈이, 상기 제1통신 단말기와 통신 가능한 채팅 서버를 통해 상기 제2채팅 애플리케이션으로부터 전송되는 암호화된 제1메시지를 수신하는 단계;
상기 제1채팅 애플리케이션에 내장된 암호화/복호화 모듈이, 상기 제1채팅 애플리케이션에 내장된 비밀 키 관리 모듈을 이용하여 생성된 비밀 키를 이용하여 수신된 상기 암호화된 제1메시지를 복호화하고, 상기 제1채팅 애플리케이션에 내장된 메시지 뷰어가 복호화된 상기 제1메시지를 상기 제1통신 단말기의 디스플레이에 디스플레이하는 단계; 및
상기 제1채팅 애플리케이션에 내장된 캡쳐 방지 모듈이 디스플레이된 상기 제1메시지가 캡쳐되는 것을 방지하는 단계를 포함하고,
상기 비밀 키는 상기 제1메시지를 암호화하는데 이용되고,
상기 제1통신 단말기와 상기 제2통신 단말기는 상기 채팅 서버로 상기 비밀 키를 공유하기 위한 데이터를 전송하지 않고, 상기 제1통신 단말기와 상기 제2통신 단말기가 상기 비밀 키를 직접 공유하고,
상기 제1채팅 애플리케이션은 접속 관리 모듈, 상기 메시지 관리 모듈, 상기 비밀 키 관리 모듈, 상기 메시지 뷰어, 상기 캡쳐 방지 모듈 및 상기 암호화/복호화 모듈을 모두 내장하고,
상기 제1채팅 애플리케이션에 내장된 접속 관리 모듈은 상기 제1채팅 애플리케이션이 종료될 때 상기 채팅 서버와의 접속을 종료하기 위한 로그아웃 작동을 수행하는 자기 방어 보안 기술을 이용한 보안 채팅 방법.
A first chat application installed and executed in the first communication terminal is configured to perform a self-defense of the first chat application capable of performing a secure chat with a second chat application installed and executed in the second communication terminal, A security chat method using security,
Receiving a first encrypted message sent from the second chat application via a chat server communicable with the first communication terminal;
Wherein the encryption / decryption module embedded in the first chat application decrypts the encrypted first message received using the secret key generated using the secret key management module embedded in the first chat application, 1) displaying the first message decrypted by a message viewer embedded in a chat application on a display of the first communication terminal; And
Preventing the capture message from being captured, the capture prevention module being embedded in the first chat application,
Wherein the secret key is used to encrypt the first message,
The first communication terminal and the second communication terminal do not transmit data for sharing the secret key to the chat server, and the first communication terminal and the second communication terminal directly share the secret key,
Wherein the first chat application includes a connection management module, the message management module, the secret key management module, the message viewer, the capture prevention module, and the encryption / decryption module,
Wherein the connection management module embedded in the first chat application performs a logout operation for terminating a connection with the chat server when the first chat application is terminated.
제9항에 있어서, 상기 캡쳐 방지 모듈은,
상기 제1통신 단말기의 화면 캡쳐 기능 비활성화, 상기 제1통신 단말기에서 실행되는 캡쳐 프로그램의 강제 종료, 영상 방해 패턴을 이용한 외부 기기의 화면 촬영 방지, 및 클립보드 모니터링을 통한 화면 캡쳐 데이터 삭제 중에서 적어도 하나를 이용하여 디스플레이된 상기 제1메시지가 캡쳐되는 것을 방지하는 자기 방어 보안 기술을 이용한 보안 채팅 방법.
The apparatus of claim 9, wherein the capture prevention module comprises:
At least one of a screen capture function disabling of the first communication terminal, a forced termination of a capture program executed in the first communication terminal, a screen capture of an external device using an image disturbance pattern, and a screen capture data deletion through clipboard monitoring To prevent the displayed first message from being captured using the self-defense security technique.
제9항에 있어서,
상기 캡쳐 방지 모듈이, 상기 제1메시지에 대한 캡쳐 시도를 감지하는 경우, 상기 캡쳐 시도를 알리기 위한 알림 메시지를 상기 제2채팅 애플리케이션으로 전송하기 위해 상기 채팅 서버로 전송하는 단계를 더 포함하는 자기 방어 보안 기술을 이용한 보안 채팅 방법.
10. The method of claim 9,
Further comprising transmitting to the chat server a notification message for notifying the capture attempt to the second chat application when the capture prevention module detects a capture attempt for the first message, Security chatting method using security technology.
제1항, 제4항 내지 제11항 중에서 어느 하나의 항에 기재된 보안 채팅 방법을 수행하는 애플리케이션을 저장한 컴퓨터로 판독가능한 저장 매체.12. A computer-readable storage medium storing an application for performing the secure chatting method of any one of claims 1 to 11.
KR1020150083256A 2015-06-12 2015-06-12 Secure chat method using distributed key exchange protocol and self-defense security KR101596479B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150083256A KR101596479B1 (en) 2015-06-12 2015-06-12 Secure chat method using distributed key exchange protocol and self-defense security
PCT/KR2016/000887 WO2016200007A1 (en) 2015-06-12 2016-01-27 Secure chat method using distributed key exchange protocol and self-defense security technology

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150083256A KR101596479B1 (en) 2015-06-12 2015-06-12 Secure chat method using distributed key exchange protocol and self-defense security

Publications (1)

Publication Number Publication Date
KR101596479B1 true KR101596479B1 (en) 2016-03-07

Family

ID=55540249

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150083256A KR101596479B1 (en) 2015-06-12 2015-06-12 Secure chat method using distributed key exchange protocol and self-defense security

Country Status (2)

Country Link
KR (1) KR101596479B1 (en)
WO (1) WO2016200007A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10791124B2 (en) 2016-11-11 2020-09-29 Samsung Electronics Co., Ltd. Method and terminal device for encrypting message
KR102306308B1 (en) * 2020-06-12 2021-09-29 손금영 The method of providing chatting service

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050053292A (en) 2003-12-02 2005-06-08 주식회사 월드모닝 The supplying way of security chatting system by messenger encoded program
KR20060052329A (en) * 2004-10-29 2006-05-19 리서치 인 모션 리미티드 Secure peer-to-peer messaging invitation architecture
KR20090059694A (en) * 2007-12-07 2009-06-11 주식회사 마크애니 Digital information security system, kernel driver apparatus and digital information security method
KR20140022354A (en) * 2013-10-15 2014-02-24 주식회사 안랩 Apparatus and method for preventing screen capture
KR20140058196A (en) 2012-11-06 2014-05-14 한국전자통신연구원 Apparatus and method for protecting mobile message data

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636441B2 (en) * 2004-01-12 2009-12-22 Intel Corporation Method for secure key exchange
JP4523847B2 (en) * 2005-01-26 2010-08-11 日本電信電話株式会社 In a communication terminal or full mesh network, each terminal can reliably check the connection between all other terminals.

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050053292A (en) 2003-12-02 2005-06-08 주식회사 월드모닝 The supplying way of security chatting system by messenger encoded program
KR20060052329A (en) * 2004-10-29 2006-05-19 리서치 인 모션 리미티드 Secure peer-to-peer messaging invitation architecture
KR20090059694A (en) * 2007-12-07 2009-06-11 주식회사 마크애니 Digital information security system, kernel driver apparatus and digital information security method
KR20140058196A (en) 2012-11-06 2014-05-14 한국전자통신연구원 Apparatus and method for protecting mobile message data
KR20140022354A (en) * 2013-10-15 2014-02-24 주식회사 안랩 Apparatus and method for preventing screen capture

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10791124B2 (en) 2016-11-11 2020-09-29 Samsung Electronics Co., Ltd. Method and terminal device for encrypting message
KR102306308B1 (en) * 2020-06-12 2021-09-29 손금영 The method of providing chatting service

Also Published As

Publication number Publication date
WO2016200007A1 (en) 2016-12-15

Similar Documents

Publication Publication Date Title
CN108632284B (en) User data authorization method, medium, device and computing equipment based on block chain
US10375116B2 (en) System and method to provide server control for access to mobile client data
US9503433B2 (en) Method and apparatus for cloud-assisted cryptography
US20180225226A1 (en) Backup system with multiple recovery keys
US8935741B2 (en) Policy enforcement in mobile devices
US10440111B2 (en) Application execution program, application execution method, and information processing terminal device that executes application
US9525548B2 (en) Provisioning techniques
TW201626277A (en) Content sharing between sandboxed apps
CN107733639B (en) Key management method, device and readable storage medium
CN102055730A (en) Cloud processing system, cloud processing method and cloud computing agent device
JP2014532245A (en) System and method for providing a threshold level for privilege use in a mobile network environment
CN103914520B (en) Data query method, terminal device and server
US20170244759A1 (en) Policy-Managed Secure Code Execution and Messaging for Computing Devices and Computing Device Security.
US8353053B1 (en) Computer program product and method for permanently storing data based on whether a device is protected with an encryption mechanism and whether data in a data structure requires encryption
CN111954879B (en) Mutually distrust enclave
US20090150680A1 (en) Data Security in Mobile Devices
KR101596479B1 (en) Secure chat method using distributed key exchange protocol and self-defense security
CN109120576B (en) Data sharing method and device, computer equipment and storage medium
CN110457959B (en) Information transmission method and device based on Trust application
KR20150098123A (en) package application including self-defense security module and method therof
KR20140123353A (en) Secure message transmission system, apparatus therefor and secure message processing method thereof
US20160063264A1 (en) Method for securing a plurality of contents in mobile environment, and a security file using the same
WO2019127468A1 (en) Grouped application using same key for sharing data
CN112637195A (en) Method and device for controlling electronic equipment and electronic equipment
US20220131878A1 (en) Breach detection of secured confidential content system and methods

Legal Events

Date Code Title Description
AMND Amendment
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20181127

Year of fee payment: 6