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

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

Info

Publication number
WO2016200007A1
WO2016200007A1 PCT/KR2016/000887 KR2016000887W WO2016200007A1 WO 2016200007 A1 WO2016200007 A1 WO 2016200007A1 KR 2016000887 W KR2016000887 W KR 2016000887W WO 2016200007 A1 WO2016200007 A1 WO 2016200007A1
Authority
WO
WIPO (PCT)
Prior art keywords
chat
message
communication terminal
chat application
application
Prior art date
Application number
PCT/KR2016/000887
Other languages
French (fr)
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 주식회사 엔오디비즈웨어
Publication of WO2016200007A1 publication Critical patent/WO2016200007A1/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

Definitions

  • An embodiment according to the concept of the present invention relates to a secure chat method, and in particular, a chat application installed and executed in a user's communication terminal may use a distributed key exchange protocol with a chat application of a chat counterpart without sharing an encryption key with a chat server.
  • the present invention relates to a secure chat method that can improve security by directly sharing an encryption key and preventing a chat message from being captured and leaked using a self-defense security technology.
  • chat server Since conventional chat applications each share an encryption key with a chat server, the chat server decrypts an encrypted message received from a specific chat application, extracts the message, and encrypts the extracted message with the chat application of the conversation partner. Re-encrypt with key and send to chat partner's application. Therefore, there is a possibility that a message is leaked from the chat server. In addition, since the chat server performs encryption and decryption on all messages, it may cause a load on the chat server.
  • the technical problem to be achieved by the present invention is to share the encryption key directly by using a distributed key exchange protocol with the chat application of the chat partner, without sharing the encryption key with the chat server in order to improve the security of messages sent and received for chat
  • the present invention provides a secure chat method that can improve security by preventing a displayed message from being captured using self-defense security technology.
  • the first chat application installed in the first communication terminal according to an embodiment of the present invention and the second chat application installed and executed in the second communication terminal through the chat server, without sharing the encryption key with the chat server;
  • the first chat application In a secure chat method using a distributed key exchange protocol of the first chat application capable of secure chat, the first chat application generates a secret key using a secret key management module embedded in the first chat application. And directly sharing the generated secret key with a second chat application installed and executed in the second communication terminal using a key exchange protocol, and from the user of the first communication terminal to the second communication terminal.
  • the first chat application uses the secret key to send the first message. And encrypting the message, the first chat application, via the chat server, the encrypted first message and transmitting to the second chat application.
  • the secure chat method may include: receiving, by the first chat application, the encrypted second message when a second message encrypted by the second chat application is transmitted to the first communication terminal through the chat server. And decrypting, by the first chat application, the encrypted second message using the secret key.
  • the secure chat method may include: displaying, by the first chat application, a decrypted second message through a display included in the first communication terminal, and wherein the first chat application is embedded in the first chat application. Preventing the second message displayed using the capture prevention module from being captured.
  • preventing the second message from being captured may cause the first chat application to disable a screen capture function of the first communication terminal.
  • the preventing of the second message from being captured may force the first chat application to terminate the screen capture application executed in the first communication terminal.
  • preventing the second message from being captured may include: at least one of a folder and a clipboard in which the screen capture data of the first communication terminal is stored, by the first chat application. Monitoring and deleting, by the first chat application, data stored in at least one of the folder and the clipboard while the second message is displayed.
  • the preventing of the second message from being captured may be performed by the first chat application, in order to prevent the displayed second message from being captured by an external electronic device. Display on the display.
  • the secure chat method may include: 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. It includes more.
  • a first chat application installed and executed in a first communication terminal directly shares a secret key with a second chat application installed and executed in a second communication terminal, and uses the shared secret key.
  • Secure chat method using a self-defense security technology of the first chat application that can perform a secure chat with the second chat application, the first chat application, via a chat server that can communicate with the first communication terminal
  • Receiving an encrypted first message sent from the second chat application the first chat application decrypts the received first encrypted message using the secret key, and decrypted the first message Displaying a message on a display of the first communication terminal, wherein the first chat application comprises: Preventing the displayed first message from being captured using a capture protection module embedded in a first chat application.
  • the capture prevention module may be configured to deactivate a screen capture function of the first communication terminal, forcibly terminate a capture program executed in the first communication terminal, prevent screen capture of an external device using an image disturbance pattern, and screen through a clipboard monitoring.
  • the captured first message is prevented from being captured using at least one of capture data deletion.
  • a computer-readable storage medium stores an application for performing the secure chat method.
  • the chat application performing the secure chat method according to the embodiment of the present invention has a built-in capture prevention module to which the self-defense security technology is applied, the displayed message is prevented from being leaked by the capture, thereby improving security.
  • a secret key (or encryption key) is directly shared between communication terminals executing a chat application through a distributed key exchange protocol, messages transmitted and received between the communication terminals are not encrypted and decrypted by a chat server, thereby enabling the chat. It can reduce the processing load on the server.
  • the chat server since only the encrypted messages exist in the chat server, even if the chat server is hacked, the risk of leaking the contents of the messages is reduced.
  • FIG. 1 is a schematic block diagram of a secure chat system for performing a secure chat method according to an embodiment of the present invention.
  • FIG. 2 is a schematic block diagram illustrating an embodiment of a first communication terminal and a chat application shown in FIG. 1.
  • 3 to 5 are data flow charts for explaining a secure chat method according to embodiments of the present invention.
  • a module in the present specification may mean hardware capable of performing functions and operations according to each name described in the present specification, or computer program code capable of performing specific functions and operations. It may mean, or may mean, an electronic recording medium, for example, a processor, on which computer program code is capable of performing specific functions and operations.
  • a module may mean a functional and / or structural combination of hardware for performing the technical idea of the present invention and / or software for driving the hardware.
  • FIG. 1 is a schematic block diagram of a secure chat system for performing a secure chat method according to an embodiment of the present invention.
  • a secure chat system 10 for performing a secure chat method may include a first communication terminal 100-1, a second communication terminal 100-2, and a chat server ( 200).
  • Each of the first communication terminal 100-1 and the second communication terminal 100-2 performs a chat application (an application program or an app; C_APP) that can perform a secure chat method according to an embodiment of the present invention. Can be stored.
  • a chat application an application program or an app; C_APP
  • 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, a mobile internet device (MID), an enterprise digital assistant (EDA), or a PND ( It may be implemented as 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.
  • IoT Internet of things
  • IoE internet of everything
  • the secure chat system 10 is illustrated as including only the first communication terminal 100-1 and the second communication terminal 100-2 in the present specification, the number of communication terminals may vary according to embodiments. . That is, the user of the first communication terminal 100-1 may select a plurality of chat counterparts, and may transmit a message to each of the selected chat counterparts in parallel.
  • the chat server 200 may provide a secure chat service according to the secure chat method according to an embodiment of the present invention.
  • the chat server 200 manages the user connecting to the chat server 200 using the chat application C_APP, and transmits a message transmitted from the first communication terminal 100-1 to the second communication terminal 100-2. ) Or a message transmitted from the second communication terminal 100-2 to the first communication terminal 100-1.
  • the chat server 200 may include a database DB or access the database DB.
  • the database DB may store user information (eg, ID, name, phone number, etc.) for a user who uses the secure chat service, and store a chat counterpart list for the user to select a chat counterpart.
  • the chat counterpart list may be set by the user, but is not limited thereto and may be automatically set by the chat server 200.
  • 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 chat method according to an embodiment of the present invention, and may communicate with a plurality of communication terminals through a wired and / or wireless network.
  • the application download server 300 may provide a download service for a user of the first communication terminal 100-1 and / or the second communication terminal 100-2 to download the chat application C_APP according to the present invention. Can be.
  • the application download server 300 may be a server in an app store market selling various applications or a personal server or an enterprise server for distributing the applications, but is not limited thereto.
  • FIG. 2 is a schematic block diagram illustrating an embodiment of a first communication terminal and a chat application shown in FIG. 1.
  • first communication terminal 100-1 only the structure and operation of the first communication terminal 100-1 are illustrated, but the structures and operations of the first communication terminal 100-1 and the second communication terminal 100-2 may be substantially the same. Similarly, the above structure and operation of the first communication terminal 100-1 can be applied to the second communication terminal 100-2.
  • the 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.
  • 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.
  • the processor 110 may be implemented as an application processor (AP) and a mobile AP, but is not limited thereto.
  • the processor 110 may execute a chat application C_APP stored in the memory 120.
  • the memory 120 may store instructions and / or a plurality of applications required for the operation of the processor 110.
  • the memory 120 may store a chat application C_APP according to an embodiment of the present invention.
  • the memory 120 may operate as an operating memory of the processor 110 and may be implemented as a dynamic random access memory (DRAM) or a static RAM (SRAM).
  • 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), universal flash storage (UFS), or a solid state drive (SSD). It can be implemented as.
  • Memory 120 may be understood in a collective sense including one or more memories.
  • the memory 120 may include a clipboard in which the screen capture image is temporarily stored.
  • the chat application C_APP stored in the memory 120 and executed by the processor 110 may include a connection management module 162, a secret key management module 164, a message management module 166, and an encryption / decryption module 168.
  • the message viewer 170 and the capture prevention module 172 may be embedded (or included).
  • the connection management module 162 may manage a connection between the first communication terminal 100-1 and the chat server 200.
  • the connection management module 162 connects to the chat server 200 (or logs in).
  • Information may be transmitted 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.
  • the user information may include an IP (internet protocol) address of the first communication terminal 100-1, and the first communication terminal 100-1.
  • the smartphone is 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 may be stored in advance in the access management module 162.
  • the connection management module 162 may perform a logout operation for terminating the connection with the chat server 200.
  • the secret key management module 164 may include a second secret key (or an encryption key) for encrypting a message exchanged with a chat application (C_APP) installed in the communication terminal of the chat counterpart, for example, the second communication terminal 100-2. And directly share with the communication terminal 100-2.
  • C_APP chat application
  • 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 distributed key exchange protocol).
  • the secret key management module 164 may use a known key exchange protocol (or known key exchange algorithm), such as a diffie-hellman key exchange algorithm. Sharing the secret key directly 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 sharing the secret key, 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 send. Therefore, since the chat server 200 may not have any information about the secret key, the messages transmitted to the chat server 200 cannot be decrypted by the chat server 200.
  • the message management module 166 receives the input first message and encrypts / decrypts the received first message.
  • Module 168 can be used to encrypt.
  • 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 through the communication module 150.
  • the message management module 166 may transmit the second message. Can be decrypted using the encryption / decryption module 168.
  • the encryption / decryption module 168 may decrypt the second message using the secret key.
  • the message viewer 170 may display the decrypted second message through the display 140 included in the first communication terminal 100-1. According to an embodiment, the message viewer 170 may also display the first message input by the user of the first communication terminal 100-1 together.
  • the capture protection module 172 may perform various operations to prevent the displayed second message and / or the first message from being captured in order to prevent the displayed second message and / or the first message from leaking to the outside. Can be done. That is, the capture prevention module 172 may perform a self-defense security operation on the chat application C_APP.
  • 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.
  • the capture prevention module 172 may disable the operation of the screen capture key of the first communication terminal 100-1 through a system application programming interface (API).
  • API system application programming interface
  • the capture prevention module 172 may monitor a location (eg, a photo folder or a screenshot folder) in which the screen captured image is stored.
  • the capture prevention module 172 may activate the chat application C_APP while the chat between the first communication terminal 100-1 and the second communication terminal 100-2 is in progress or the display 140 is displayed on the display 140. 2 If a file and / or data is generated at the location while the message and / or the first message is displayed, the generated file and / or data is displayed on the displayed second message and / or the screen for the first message.
  • the generated file and / or data may be deleted by recognizing that the image is a captured image.
  • the capture prevention module 172 may 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 detect the capture application using the database.
  • the capture prevention module 172 may monitor the clipboard of the first communication terminal 100-1.
  • the capture prevention module 172 activates the chat application C_APP so that a chat between the first communication terminal 100-1 and the second communication terminal 100-2 is in progress or on the display 140. While the message and / or the first message are being displayed, if the clipboard is filled with data, the data is recognized as being a screen capture image for the displayed second message and / or the first message. You can delete it.
  • the capture prevention module 172 may capture the display 140 through an external electronic device to prevent the displayed second message and / or the first message from leaking. Although it is difficult to see, when the image is taken by the external electronic device, an image disturbance pattern may be displayed on the display 140 to cause an image interference so that the displayed second message and / or the first message does not leak.
  • the embodiment of the capture prevention module 172 may be varied in a range predictable by those skilled in the art. Can be modified.
  • the capture prevention module 172 may perform a capture prevention operation using at least one of the above embodiments.
  • the capture prevention module 172 may detect a screen capture attempt of the first communication terminal 100-1 and inform the user of the second communication terminal 100-2 of the screen capture attempt. According to an embodiment, the capture prevention module 172 may detect a screen capture attempt from an external electronic device. For example, when the input interface 130 included in the first communication terminal 100-1 is a microphone, the capture prevention module 172 may detect the screen capture attempt by recognizing a camera photographing sound using the microphone. have.
  • the capture prevention module 172 may generate a notification message when detecting the screen capture attempt, and transmit the generated notification message to the second communication terminal 100-2 through the communication module 150.
  • the notification message may be directly transmitted from the first communication terminal 100-1 to the second communication terminal 100-2 or transmitted to the second communication terminal 100-2 through the chat server 200.
  • the input interface 130 may transmit a first message input by the user to the user input interworking module 116 or transmit user information to the connection management module 162.
  • the input interface 130 may be implemented as a keyboard, a mouse, a microphone, and / or a touch panel, but is not limited thereto.
  • the display 140 may display the decrypted second message under the control of the message viewer 170. have. According to an embodiment, the display 140 may display the first message input through the input interface 130.
  • the display 140 may be a thin film transistor-liquid crystal display (TFT-LCD), a light emitting diode (LED) display, an organic LED (OLED) display, an active-matrix OLED (AMOLED) display, or a flexible display. It can be implemented as.
  • TFT-LCD thin film transistor-liquid crystal display
  • LED light emitting diode
  • OLED organic LED
  • AMOLED active-matrix OLED
  • the communication module 150 may transmit user information transmitted from the connection management module 162 to the chat server 200.
  • the message management module 166 encrypts the first message using the encryption / decryption module 168
  • the communication module 150 may transmit the encrypted first message to the chat server 200.
  • 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.
  • the communication module 150 may receive an encrypted second message transmitted from the chat server 200 and transmit the encrypted second message to the message management module 166.
  • the communication module 150 may be implemented in 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 to 5 are data flow charts illustrating a secure chat method according to embodiments of the present invention.
  • the connection management module 162 included in the chat application C_APP is a user.
  • the information may be connected (or logged in) to the chat server 200 using the information (S100).
  • the chat server 200 loads the chat counterpart list U_LIST from the database DB accessed by the chat server 200 (S110), and loads the loaded chat counterpart list U_LIST in the first communication terminal 100-1. (S120).
  • the chat server 200 may load the chat counterpart list U_LIST set in the user of the first communication terminal 100-1 using the user information, but is not limited thereto.
  • the secret key management module 164 embedded in the chat application C_APP is selected.
  • the secret key may be generated using the secret key, and 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 (S150).
  • 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 generate the encrypted first message E_MSG1 by encrypting the first message MSG1 using the secret key generated by the secret key management module 164.
  • the message management module 166 transmits the encrypted first message E_MSG1 to the chat server 200 through the communication module 150 (S220), and the chat server 200 transmits the first communication terminal 100-1.
  • the encrypted first message E_MSG1 transmitted from the second communication terminal 100-2 may be transmitted to the second communication terminal 100-2 (S230).
  • the chat server 200 may store the encrypted first message E_MSG1 in the database DB.
  • the message management module 166 of the chat application C_APP executed in the second communication terminal 100-2 encrypts / decrypts the encrypted first message E_MSG1 transmitted from the chat server 200. Can be decoded using (S240).
  • the encryption / decryption module 168 may generate the first message MSG1 by decrypting the encrypted first message E_MSG1 using the secret key shared with the first communication terminal 100-1.
  • 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 (S250).
  • the capture prevention module 172 may prevent the displayed first message MSG1 from being captured using the self-defense security technology (S260).
  • the capture prevention module 172 may disable the screen capture function of the second communication terminal 100-2, forcibly terminate the screen capture application executed in the second communication terminal 100-2, or perform a second communication.
  • the clipboard or picture folder, screenshot folder, etc.
  • At least one of an operation of displaying an image disturbance pattern may be used to delete stored data or to prevent the displayed first message MSG1 from being captured by an external electronic device.
  • 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.
  • the message management module 166 transmits the encrypted second message E_MSG2 to the chat server 200 through the communication module 150 (S320), and the chat server 200 transmits the second communication terminal 100-2.
  • the encrypted second message E_MSG2 transmitted from the second communication terminal 100-1 may be transmitted to the first communication terminal 100-1 (S330).
  • the chat server 200 may store the encrypted second message E_MSG2 in the database DB.
  • the message management module 166 of the chat application C_APP executed in the first communication terminal 100-1 encrypts / decrypts the encrypted second message E_MSG2 transmitted from the chat server 200. Can be decoded using (S340).
  • the encryption / decryption module 168 may decrypt the second message E_MSG2 encrypted using the secret key to generate a second message MSG2.
  • 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 (S350). According to an embodiment, the message viewer 170 may also display the previously generated first message MSG1.
  • the capture prevention module 172 may prevent the displayed second message MSG2 from being captured using the self-defense security technology (S360). According to an embodiment, the capture prevention module 172 may 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 through the chat server 200 or directly to the second communication terminal 100-2 (S370).
  • the first message MSG1 and / or the second message MSG2 transmitted and received between the first communication terminal 100-1 and the second communication terminal 100-2 are encrypted and decrypted by the chat server 200. Since not, the processing load of the chat server 200 can be reduced. In addition, 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 ( The risk of leakage of the contents of MSG2) can be reduced.
  • the chat application (C_APP) according to an embodiment of the present invention has a built-in capture protection module 172, the built-in capture protection module 172 prevents the displayed messages MSG1 and / or MSG2 is captured. To improve security.
  • the present invention can be used in a secure chat method using a distributed key exchange protocol and a secure chat method using a self-defense security technology.

Abstract

According to one embodiment of the present invention, a secure chat method using a distributed key exchange protocol of a first chat application, which is installed and executed in a first communication terminal, enables the first chat application to generate a private key by using a private key management module installed in the first chat application without sharing an encoding key with a chat server, and to directly share the generated private key with a second chat application, which is installed and executed in a second communication terminal by using a key exchange protocol, thereby allowing a secure chat to be performed with the second chat application through the chat server.

Description

분산 키 교환 프로토콜과 자기방어 보안기술을 이용한 보안 채팅 방법 Secure Chatting Method Using Distributed Key Exchange Protocol and Self-Defense Security Technology
본 발명의 개념에 따른 실시 예는 보안 채팅 방법에 관한 것으로, 특히 사용자의 통신 단말기에 설치되어 실행되는 채팅 애플리케이션이, 채팅 서버와 암호화 키를 공유하지 않고 채팅 상대방의 채팅 애플리케이션과 분산 키 교환 프로토콜을 이용하여 직접 암호화 키를 공유하고, 자기 방어 보안 기술을 이용하여 채팅 메시지가 캡쳐되고 유출되는 것을 방지함으로써 보안을 향상할 수 있는 보안 채팅 방법에 관한 것이다.An embodiment according to the concept of the present invention relates to a secure chat method, and in particular, a chat application installed and executed in a user's communication terminal may use a distributed key exchange protocol with a chat application of a chat counterpart without sharing an encryption key with a chat server. The present invention relates to a secure chat method that can improve security by directly sharing an encryption key and preventing a chat message from being captured and leaked using a self-defense security technology.
최근 온라인 채팅 애플리케이션을 이용하여 이용자들이 사적으로 주고받는 메시지들이 해킹이나 캡쳐 등으로 인해 외부로 유출되는 사례들이 발생하고 있다. 상기 메시지들이 개인의 프라이버시나 기업의 영업 비밀에 관련되는 경우, 상기 메시지들이 유출되면 경제적 또는 정신적 피해를 발생시킬 수 있다.Recently, there are cases where messages sent and received privately by users using the online chat application are leaked out due to hacking or capture. If the messages relate to a person's privacy or a company's trade secrets, leakage of the messages can cause economic or mental harm.
종래의 채팅 애플리케이션들은 채팅 서버와 각각 암호화 키를 공유하기 때문에, 상기 채팅 서버는 특정 채팅 애플리케이션으로부터 수신되는 암호화된 메시지를 복호화하여 메시지를 추출하고, 추출된 메시지를 대화 상대방의 채팅 애플리케이션과 공유하는 암호화 키로 재암호화하여 상대방의 채팅 애플리케이션으로 전송한다. 따라서, 상기 채팅 서버에서 메시지가 유출될 가능성이 존재하게 된다. 또한, 상기 채팅 서버는 모든 메시지에 대해 암호화와 복호화를 수행하게 되므로, 상기 채팅 서버의 부하를 초래할 수 있다.Since conventional chat applications each share an encryption key with a chat server, the chat server decrypts an encrypted message received from a specific chat application, extracts the message, and encrypts the extracted message with the chat application of the conversation partner. Re-encrypt with key and send to chat partner's application. Therefore, there is a possibility that a message is leaked from the chat server. In addition, since the chat server performs encryption and decryption on all messages, it may cause a load on the chat server.
본 발명이 이루고자 하는 기술적인 과제는 채팅을 위해 주고받는 메시지에 대한 보안을 향상하기 위하여, 채팅 서버와 암호화 키를 공유하지 않고 채팅 상대방의 채팅 애플리케이션과 분산 키 교환 프로토콜을 이용하여 직접 암호화 키를 공유하고, 자기 방어 보안 기술을 이용하여 디스플레이되는 메시지가 캡쳐되는 것을 방지함으로써 보안을 향상할 수 있는 보안 채팅 방법을 제공하는 것이다.The technical problem to be achieved by the present invention is to share the encryption key directly by using a distributed key exchange protocol with the chat application of the chat partner, without sharing the encryption key with the chat server in order to improve the security of messages sent and received for chat In addition, the present invention provides a secure chat method that can improve security by preventing a displayed message from being captured using self-defense security technology.
본 발명의 실시 예에 따른 제1통신 단말기에 설치되어 실행되는 제1채팅 애플리케이션이 채팅 서버와 암호화 키를 공유하지 않고도, 상기 채팅 서버를 통해 제2통신 단말기에 설치되어 실행되는 제2채팅 애플리케이션과 보안 채팅을 수행할 수 있는 상기 제1채팅 애플리케이션의 분산 키 교환 프로토콜을 이용한 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 상기 제1채팅 애플리케이션에 내장된 비밀 키 관리 모듈을 이용하여 비밀 키를 생성하고, 생성된 비밀 키를 키 교환 프로토콜을 이용하여 상기 제2통신 단말기에 설치되어 실행되는 제2채팅 애플리케이션과 직접(directly) 공유하는 단계와, 상기 제1통신 단말기의 사용자로부터 상기 제2통신 단말기로 전송할 제1메시지가 입력되면, 상기 제1채팅 애플리케이션이 상기 비밀 키를 이용하여 상기 제1메시지를 암호화하는 단계와, 상기 제1채팅 애플리케이션이, 암호화된 제1메시지를 상기 채팅 서버를 통해 상기 제2채팅 애플리케이션으로 전송하는 단계를 포함한다.The first chat application installed in the first communication terminal according to an embodiment of the present invention and the second chat application installed and executed in the second communication terminal through the chat server, without sharing the encryption key with the chat server; In a secure chat method using a distributed key exchange protocol of the first chat application capable of secure chat, the first chat application generates a secret key using a secret key management module embedded in the first chat application. And directly sharing the generated secret key with a second chat application installed and executed in the second communication terminal using a key exchange protocol, and from the user of the first communication terminal to the second communication terminal. When the first message to be sent to the first message is input, the first chat application uses the secret key to send the first message. And encrypting the message, the first chat application, via the chat server, the encrypted first message and transmitting to the second chat application.
상기 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 상기 제2채팅 애플리케이션에 의해 암호화된 제2메시지가 상기 채팅 서버를 통해 상기 제1통신 단말기로 전송되면, 상기 암호화된 제2메시지를 수신하는 단계와, 상기 제1채팅 애플리케이션이, 상기 비밀 키를 이용하여 상기 암호화된 제2메시지를 복호화하는 단계를 더 포함한다.The secure chat method may include: receiving, by the first chat application, the encrypted second message when a second message encrypted by the second chat application is transmitted to the first communication terminal through the chat server. And decrypting, by the first chat application, the encrypted second message using the secret key.
상기 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 복호화된 제2메시지를 상기 제1통신 단말기에 포함된 디스플레이를 통해 디스플레이하는 단계와, 상기 제1채팅 애플리케이션이, 상기 제1채팅 애플리케이션에 내장된 캡쳐 방지 모듈을 이용하여 디스플레이된 상기 제2메시지가 캡쳐되는 것을 방지하는 단계를 더 포함한다.The secure chat method may include: displaying, by the first chat application, a decrypted second message through a display included in the first communication terminal, and wherein the first chat application is embedded in the first chat application. Preventing the second message displayed using the capture prevention module from being captured.
실시 예에 따라, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는, 상기 제1채팅 애플리케이션이 상기 제1통신 단말기의 화면 캡쳐 기능을 디스에이블한다.According to an embodiment of the present disclosure, preventing the second message from being captured may cause the first chat application to disable a screen capture function of the first communication terminal.
다른 실시 예에 따라, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는, 상기 제1채팅 애플리케이션이, 상기 제1통신 단말기에서 실행되는 화면 캡쳐 애플리케이션을 강제로 종료한다.According to another embodiment of the present disclosure, the preventing of the second message from being captured may force the first chat application to terminate the screen capture application executed in the first communication terminal.
또 다른 실시 예에 따라, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는, 상기 제1채팅 애플리케이션이, 상기 제1통신 단말기의 화면 캡쳐 데이터가 저장되는 폴더와 클립보드(clipboard) 중에서 적어도 하나를 모니터링하는 단계와, 상기 제1채팅 애플리케이션이, 상기 제2메시지가 디스플레이되는 동안 상기 폴더와 상기 클립보드 중에서 적어도 하나에 저장되는 데이터를 삭제하는 단계를 포함한다.According to another embodiment of the present disclosure, preventing the second message from being captured may include: at least one of a folder and a clipboard in which the screen capture data of the first communication terminal is stored, by the first chat application. Monitoring and deleting, by the first chat application, data stored in at least one of the folder and the clipboard while the second message is displayed.
또 다른 실시 예에 따라, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는, 상기 제1채팅 애플리케이션이, 디스플레이된 상기 제2메시지가 외부 전자 기기에 의해 캡쳐되는 것을 방지하기 위해, 영상 방해 패턴을 상기 디스플레이에 디스플레이한다.According to another embodiment of the present disclosure, the preventing of the second message from being captured may be performed by the first chat application, in order to prevent the displayed second message from being captured by an external electronic device. Display on the display.
상기 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 상기 제2메시지에 대한 캡쳐 시도를 감지하는 경우, 상기 캡쳐 시도를 알리기 위한 알림 메시지를 상기 채팅 서버를 통해 상기 제2통신 단말기로 전송하는 단계를 더 포함한다.The secure chat method may include: 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. It includes more.
본 발명의 다른 실시 예에 따른 제1통신 단말기에 설치되어 실행되는 제1채팅 애플리케이션이, 제2통신 단말기에 설치되어 실행되는 제2채팅 애플리케이션과 직접 비밀 키를 공유하고, 공유된 비밀 키를 이용하여 상기 제2채팅 애플리케이션과 보안 채팅을 수행할 수 있는 상기 제1채팅 애플리케이션의 자기 방어 보안 기술을 이용한 보안 채팅 방법은, 상기 제1채팅 애플리케이션이, 상기 제1통신 단말기와 통신 가능한 채팅 서버를 통해 상기 제2채팅 애플리케이션으로부터 전송되는 암호화된 제1메시지를 수신하는 단계와, 상기 제1채팅 애플리케이션이, 수신된 상기 암호화된 제1메시지를 상기 비밀 키를 이용하여 복호화하고, 복호화된 상기 제1메시지를 상기 제1통신 단말기의 디스플레이에 디스플레이하는 단계와, 상기 제1채팅 애플리케이션이, 상기 제1채팅 애플리케이션에 내장된 캡쳐 방지 모듈을 이용하여, 디스플레이된 상기 제1메시지가 캡쳐되는 것을 방지하는 단계를 포함한다.According to another embodiment of the present invention, a first chat application installed and executed in a first communication terminal directly shares a secret key with a second chat application installed and executed in a second communication terminal, and uses the shared secret key. Secure chat method using a self-defense security technology of the first chat application that can perform a secure chat with the second chat application, the first chat application, via a chat server that can communicate with the first communication terminal Receiving an encrypted first message sent from the second chat application, the first chat application decrypts the received first encrypted message using the secret key, and decrypted the first message Displaying a message on a display of the first communication terminal, wherein the first chat application comprises: Preventing the displayed first message from being captured using a capture protection module embedded in a first chat application.
상기 캡쳐 방지 모듈은, 상기 제1통신 단말기의 화면 캡쳐 기능 비활성화, 상기 제1통신 단말기에서 실행되는 캡쳐 프로그램의 강제 종료, 영상 방해 패턴을 이용한 외부 기기의 화면 촬영 방지, 및 클립보드 모니터링을 통한 화면 캡쳐 데이터 삭제 중에서 적어도 하나를 이용하여 디스플레이된 상기 제1메시지가 캡쳐되는 것을 방지한다.The capture prevention module may be configured to deactivate a screen capture function of the first communication terminal, forcibly terminate a capture program executed in the first communication terminal, prevent screen capture of an external device using an image disturbance pattern, and screen through a clipboard monitoring. The captured first message is prevented from being captured using at least one of capture data deletion.
본 발명의 실시 예에 따른 컴퓨터로 판독가능한 저장 매체는 상기 보안 채팅 방법을 수행하는 애플리케이션을 저장한다.A computer-readable storage medium according to an embodiment of the present invention stores an application for performing the secure chat method.
본 발명의 실시 예에 따른 보안 채팅 방법을 수행하는 채팅 애플리케이션은 자기 방어 보안 기술을 적용한 캡쳐 방지 모듈을 내장하므로, 디스플레이되는 메시지들이 캡쳐에 의해 유출되는 것을 방지하여 보안을 향상하는 효과가 있다.Since the chat application performing the secure chat method according to the embodiment of the present invention has a built-in capture prevention module to which the self-defense security technology is applied, the displayed message is prevented from being leaked by the capture, thereby improving security.
또한, 채팅 애플리케이션을 실행하는 통신 단말기들 간에 비밀 키(또는 암호화 키)가 분산 키 교환 프로토콜을 통해 직접 공유되므로, 상기 통신 단말기들 간에 송수신되는 메시지들이 채팅 서버에 의해 암호화 및 복호화되지 않음으로써 상기 채팅 서버의 처리 부하를 감소시킬 수 있다. 또한, 상기 채팅 서버에는 암호화된 메시지들만이 존재하므로, 상기 채팅 서버가 해킹된 경우에도 상기 메시지들의 내용이 유출될 위험이 감소되는 효과가 있다.In addition, since a secret key (or encryption key) is directly shared between communication terminals executing a chat application through a distributed key exchange protocol, messages transmitted and received between the communication terminals are not encrypted and decrypted by a chat server, thereby enabling the chat. It can reduce the processing load on the server. In addition, since only the encrypted messages exist in the chat server, even if the chat server is hacked, the risk of leaking the contents of the messages is reduced.
도 1은 본 발명의 실시 예에 따른 보안 채팅 방법을 수행하는 보안 채팅 시스템의 개략적인 블록도이다.1 is a schematic block diagram of a secure chat system for performing a secure chat method according to an embodiment of the present invention.
도 2는 도 1에 도시된 제1통신 단말기와 채팅 애플리케이션의 일 실시 예를 나타내는 개략적인 블록도이다.FIG. 2 is a schematic block diagram illustrating an embodiment of a first communication terminal and a chat application shown in FIG. 1.
도 3부터 도 5 각각은 본 발명의 실시 예들에 따른 보안 채팅 방법을 설명하기 위한 데이터 흐름도이다.3 to 5 are data flow charts for explaining a secure chat method according to embodiments of the present invention.
본 명세서에서의 모듈(module)이라 함은 본 명세서에서 설명되는 각각의 명칭에 따른 기능과 동작을 수행할 수 있는 하드웨어를 의미할 수도 있고, 또는 특정한 기능과 동작을 수행할 수 있는 컴퓨터 프로그램 코드를 의미할 수도 있고, 또는 특정한 기능과 동작을 수행시킬 수 있는 컴퓨터 프로그램 코드가 탑재된 전자적 기록 매체, 예컨대 프로세서를 의미할 수 있다.A module in the present specification may mean hardware capable of performing functions and operations according to each name described in the present specification, or computer program code capable of performing specific functions and operations. It may mean, or may mean, an electronic recording medium, for example, a processor, on which computer program code is capable of performing specific functions and operations.
다시 말해, 모듈이란 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및/또는 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적 및/또는 구조적 결합을 의미할 수 있다.In other words, a module may mean a functional and / or structural combination of hardware for performing 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 accompanying drawings.
도 1은 본 발명의 실시 예에 따른 보안 채팅 방법을 수행하는 보안 채팅 시스템의 개략적인 블록도이다.1 is a schematic block diagram of a secure chat system for performing a secure chat method according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 실시 예에 따른 보안 채팅 방법을 수행하는 보안 채팅 시스템(10)은 제1통신 단말기(100-1), 제2통신 단말기(100-2), 및 채팅 서버(200)를 포함할 수 있다.1, a secure chat system 10 for performing a secure chat method according to an embodiment of the present invention may include 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 performs a chat application (an application program or an app; C_APP) that can perform a secure chat method according to an 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, a mobile internet device (MID), an enterprise digital assistant (EDA), or a PND ( It may be implemented as 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 secure chat system 10 is illustrated as including only the first communication terminal 100-1 and the second communication terminal 100-2 in the present specification, the number of communication terminals may vary according to embodiments. . That is, the user of the first communication terminal 100-1 may select a plurality of chat counterparts, and may transmit a message to each of the selected chat counterparts in parallel.
채팅 서버(200)는 본 발명의 실시 예에 따른 보안 채팅 방법에 따른 보안 채팅 서비스를 제공할 수 있다. 채팅 서버(200)는 사용자가 채팅 애플리케이션(C_APP)을 이용하여 채팅 서버(200)에 접속하는 것을 관리하고, 제1통신 단말기(100-1)로부터 전송되는 메시지를 제2통신 단말기(100-2)로 전송하거나, 제2통신 단말기(100-2)로부터 전송되는 메시지를 제1통신 단말기(100-1)로 전송할 수 있다.The chat server 200 may provide a secure chat service according to the secure chat method according to an embodiment of the present invention. The chat server 200 manages the user connecting to the chat server 200 using the chat application C_APP, and transmits a message transmitted from the first communication terminal 100-1 to the second communication terminal 100-2. ) Or 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 access the database DB. The database DB may store user information (eg, ID, name, phone number, etc.) for a user who uses the secure chat service, and store a chat counterpart list for the user to select a chat counterpart. The chat counterpart 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 chat method according to an embodiment of the present invention, and may communicate with a plurality of communication terminals through a wired and / or wireless network. The application download server 300 may provide a download service for a user of the first communication terminal 100-1 and / or the second communication terminal 100-2 to download the chat application C_APP according to the present invention. Can be.
예컨대, 애플리케이션 다운로드 서버(300)는 다양한 애플리케이션들을 판매하는 앱스토어 마켓(app-store market)의 서버 혹은 상기 애플리케이션들을 배포하기 위한 개인용 서버 또는 기업용 서버일 수 있으나, 이에 한정되는 것은 아니다.For example, the application download server 300 may be a server in an app store market selling various applications or a personal server or an enterprise server for distributing the applications, but is not limited thereto.
도 2는 도 1에 도시된 제1통신 단말기와 채팅 애플리케이션의 일 실시 예를 나타내는 개략적인 블록도이다.FIG. 2 is a schematic block diagram illustrating an embodiment of a first communication terminal and a chat application shown in FIG. 1.
도 2에서는 제1통신 단말기(100-1)의 구조와 작동에 대해서만 도시하였으나, 제1통신 단말기(100-1)와 제2통신 단말기(100-2) 각각의 구조와 작동은 실질적으로 동일하거나 유사하므로, 제1통신 단말기(100-1)의 상기 구조와 상기 작동은 제2통신 단말기(100-2)에도 적용 가능하다.In FIG. 2, only the structure and operation of the first communication terminal 100-1 are illustrated, but the structures and operations of the first communication terminal 100-1 and the second communication terminal 100-2 may be substantially the same. Similarly, the above structure and operation of the first communication terminal 100-1 can be applied to the second communication terminal 100-2.
도 1과 도 2를 참조하면, 제1통신 단말기(100-1)는 프로세서(110), 메모리(120), 입력 인터페이스(130), 디스플레이(140), 및 통신 모듈(150)을 포함할 수 있다.1 and 2, the 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. According to an embodiment, the processor 110 may be implemented as an application processor (AP) and a mobile AP, but is not limited thereto. The processor 110 may execute a chat application C_APP stored in the memory 120.
메모리(120)는 프로세서(110)의 작동에 필요한 명령들 및/또는 복수의 애플리케이션들을 저장할 수 있다. 특히, 메모리(120)는 본 발명의 실시 예에 따른 채팅 애플리케이션(C_APP)을 저장할 수 있다.The memory 120 may store instructions and / or a plurality of applications required for the operation of the processor 110. In particular, the 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 an operating 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), universal flash storage (UFS), or a solid state drive (SSD). It can be implemented as.
메모리(120)는 하나 또는 그 이상의 메모리들을 포함하는 집합적 의미로 이해될 수 있다. 예컨대, 메모리(120)는 화면 캡쳐 이미지가 임시로 저장되는 클립보드(clipboard)를 포함할 수 있다. Memory 120 may be understood in a collective sense including one or more memories. For example, the memory 120 may include a clipboard in which the 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 may include a connection management module 162, a secret key management module 164, a message management module 166, and an encryption / decryption module 168. The message viewer 170 and the capture prevention module 172 may be embedded (or included).
접속 관리 모듈(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 may manage a 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 to use the secure chat service, the connection management module 162 connects to the chat server 200 (or logs in). Information may be transmitted 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, and the first communication terminal 100-1. If the smartphone is 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 may be stored in advance in the access management module 162.
실시 예에 따라, 접속 관리 모듈(162)은 채팅 애플리케이션(C_APP)이 종료될 때, 채팅 서버(200)와의 접속을 종료하기 위한 로그아웃 작동을 수행할 수도 있다.According to an embodiment of the present disclosure, when the chat application C_APP is terminated, the connection management module 162 may perform a logout operation for terminating the connection with the chat server 200.
비밀 키 관리 모듈(164)은, 채팅 상대방의 통신 단말기, 예컨대 제2통신 단말기(100-2)에 설치된 채팅 애플리케이션(C_APP)과 주고받는 메시지를 암호화하기 위한 비밀 키(또는 암호화 키)를 제2통신 단말기(100-2)와 직접 공유하는 역할을 수행할 수 있다. The secret key management module 164 may include a second secret key (or an encryption key) for encrypting a message exchanged with a chat application (C_APP) installed in the communication terminal of the chat counterpart, 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 distributed key exchange protocol). The secret key management module 164 may use a known key exchange protocol (or known key exchange algorithm), such as a diffie-hellman key exchange algorithm. Sharing the secret key directly 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 sharing the secret key, 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 send. Therefore, since the chat server 200 may not have any information about the secret key, the messages transmitted to the chat server 200 cannot be decrypted by the chat server 200.
메시지 관리 모듈(166)은, 상기 사용자가 상기 채팅 상대방에게 전송하고자 하는 제1메시지를 입력 인터페이스(130)를 통해 입력하면, 입력된 제1메시지를 수신하고, 수신된 제1메시지를 암호화/복호화 모듈(168)을 이용하여 암호화할 수 있다. 암호화/복호화 모듈(168)은 비밀 키 관리 모듈(164)에 의해 생성된 상기 비밀 키를 이용하여 상기 제1메시지를 암호화할 수 있다. 메시지 관리 모듈(166)은, 암호화된 제1메시지를 통신 모듈(150)을 통해 제2통신 단말기(100-2)로 전송할 수 있다.When the user inputs a first message to be transmitted to the chat counterpart via the input interface 130, the message management module 166 receives the input first message and encrypts / decrypts the received first message. Module 168 can be used to encrypt. 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 through the communication module 150.
실시 예에 따라, 제2통신 단말기(100-2)로부터 제2메시지가 통신 모듈(150)을 통해 제1통신 단말기(100-1)로 수신되면, 메시지 관리 모듈(166)은 상기 제2메시지를 암호화/복호화 모듈(168)을 이용하여 복호화할 수 있다. 암호화/복호화 모듈(168)은 상기 비밀 키를 이용하여 상기 제2메시지를 복호화할 수 있다.According to an embodiment, when a second message is received from the second communication terminal 100-2 to the first communication terminal 100-1 through the communication module 150, the message management module 166 may transmit the second message. Can be decrypted using the encryption / decryption module 168. 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 an embodiment, the message viewer 170 may also display the first message input by the user of the first communication terminal 100-1 together.
캡쳐 방지 모듈(172)은, 디스플레이된 제2메시지 및/또는 제1메시지가 외부로 유출되는 것을 방지하기 위해, 상기 디스플레이된 제2메시지 및/또는 제1메시지가 캡쳐되는 것을 방지하는 여러 작동들을 수행할 수 있다. 즉, 캡쳐 방지 모듈(172)은, 채팅 애플리케이션(C_APP)에 대한 자기 방어 보안(self-defense security) 작동을 수행할 수 있다.The capture protection module 172 may perform various operations to prevent the displayed second message and / or the first message from being captured in order to prevent the displayed second message and / or the first message from leaking to the outside. Can be done. 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 the 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 a location (eg, a photo folder or a screenshot folder) in which the screen captured image is stored. The capture prevention module 172 may activate the chat application C_APP while the chat between the first communication terminal 100-1 and the second communication terminal 100-2 is in progress or the display 140 is displayed on the display 140. 2 If a file and / or data is generated at the location while the message and / or the first message is displayed, the generated file and / or data is displayed on the displayed second message and / or the screen for the first message. The generated file and / or data may be deleted by recognizing that the image is a captured image.
실시 예에 따라, 캡쳐 방지 모듈(172)은 제1통신 단말기(100-1)에서 실행되는 캡쳐 애플리케이션의 작동을 강제로 종료할 수 있다. 캡쳐 방지 모듈(172)은 상기 캡쳐 애플리케이션을 감지하기 위한 데이터베이스를 포함할 수 있고, 상기 데이터베이스를 이용하여 상기 캡쳐 애플리케이션을 감지할 수 있다.According to an embodiment, the capture prevention module 172 may 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 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 activates the chat application C_APP so that a chat between the first communication terminal 100-1 and the second communication terminal 100-2 is in progress or on the display 140. While the message and / or the first message are being displayed, if the clipboard is filled with data, the data is recognized as being a screen capture image for the displayed second message and / or the first message. You can delete it.
또 다른 실시 예에 따라, 캡쳐 방지 모듈(172)은 외부 전자 기기를 통해 디스플레이(140)가 촬영됨으로써 상기 디스플레이된 제2메시지 및/또는 제1메시지가 유출되는 것을 방지하기 위해, 사람의 눈에는 잘 보이지 않지만 상기 외부 전자 기기로 촬영할 경우 영상 간섭을 일으켜 상기 디스플레이된 제2메시지 및/또는 제1메시지가 유출되지 않도록 하는 영상 방해 패턴을 디스플레이(140)에 표시할 수 있다.According to another embodiment of the present disclosure, the capture prevention module 172 may capture the display 140 through an external electronic device to prevent the displayed second message and / or the first message from leaking. Although it is difficult to see, when the image is taken by the external electronic device, an image disturbance pattern may be displayed on the display 140 to cause an image interference so that the displayed second message and / or the first message does not leak.
본 명세서에서는 상술한 바와 같이 캡쳐 방지 모듈(172)의 작동에 대한 여러 가지 예들을 설명하였으나, 캡쳐 방지 모듈(172)의 실시 예는 이 기술이 속하는 분야의 통상의 기술자에 의해 예측가능한 범위에서 다양하게 변형될 수 있다. 캡쳐 방지 모듈(172)은 상기 실시 예들 중에서 적어도 하나를 이용하여 캡쳐 방지 작동을 수행할 수 있다.In the present specification, various examples of the operation of the capture prevention module 172 are described as described above, but the embodiment of the capture prevention module 172 may be varied in a range predictable by those skilled in the art. Can be modified. The capture prevention module 172 may perform a 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 may detect a screen capture attempt of the first communication terminal 100-1 and inform the user of the second communication terminal 100-2 of the screen capture attempt. According to an embodiment, the capture prevention module 172 may detect a screen capture attempt from an external electronic device. For example, when the input interface 130 included in the first communication terminal 100-1 is a microphone, the capture prevention module 172 may detect the screen capture attempt by recognizing a camera photographing sound using the microphone. 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 transmit the generated notification message to the second communication terminal 100-2 through the communication module 150. The notification message may be directly transmitted from the first communication terminal 100-1 to the second communication terminal 100-2 or 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 a first message input by the user to the user input interworking module 116 or transmit 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메시지를 디스플레이할 수도 있다.When the encrypted second message received from the chat server 200 is decrypted by the encryption / decryption module 168, the display 140 may display the decrypted second message under the control of the message viewer 170. have. According to an embodiment, the display 140 may display the first message input through 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), a light emitting diode (LED) display, an organic LED (OLED) display, an active-matrix OLED (AMOLED) display, or a flexible display. It can be implemented as.
통신 모듈(150)은, 채팅 애플리케이션(C_APP)이 실행되면, 접속 관리 모듈(162)로부터 전송되는 사용자 정보를 채팅 서버(200)로 전송할 수 있다. 또한, 메시지 관리 모듈(166)이 상기 제1메시지를 암호화/복호화 모듈(168)을 이용하여 암호화하면, 통신 모듈(150)은 암호화된 제1메시지를 채팅 서버(200)로 전송할 수 있다. 실시 예에 따라, 통신 모듈(150)은 캡쳐 방지 모듈(172)에 의해 생성된 알림 메시지를 채팅 서버(200) 또는 제2통신 단말기(100-2)로 전송할 수 있다.When the chat application C_APP is executed, the communication module 150 may transmit user information transmitted from the connection management module 162 to the chat server 200. In addition, when the message management module 166 encrypts the first message using the encryption / decryption module 168, the communication module 150 may transmit the encrypted first message to the chat server 200. According to an 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 an 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 in 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 illustrating a secure chat method according to 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 is a user. The information may be connected (or logged 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 counterpart list U_LIST from the database DB accessed by the chat server 200 (S110), and loads the loaded chat counterpart list U_LIST in the first communication terminal 100-1. (S120). For example, the chat server 200 may load the chat counterpart list U_LIST set in the user of the first communication terminal 100-1 using the user information, but 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 counterpart included in the chat counterpart list U_LIST is selected by the user of the first communication terminal 100-1 (S130), the secret key management module 164 embedded in the chat application C_APP is selected. The secret key may be generated using the secret key, and 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 (S150).
도 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 the first message MSG1 to be transmitted from the 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 generate the encrypted first message E_MSG1 by encrypting the first message MSG1 using the secret key generated by the secret key management module 164.
메시지 관리 모듈(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 (S220), and the chat server 200 transmits the first communication terminal 100-1. The encrypted first message E_MSG1 transmitted from the second communication terminal 100-2 may be transmitted 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 encrypts / decrypts the encrypted first message E_MSG1 transmitted from the chat server 200. Can be decoded using (S240). The encryption / decryption module 168 may generate the first message MSG1 by decrypting the encrypted first message E_MSG1 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 (S250). The capture prevention module 172 may prevent the displayed first message MSG1 from being captured using the self-defense security technology (S260). The capture prevention module 172 may disable the screen capture function of the second communication terminal 100-2, forcibly terminate the screen capture application executed in the second communication terminal 100-2, or perform a second communication. The clipboard (or picture folder, screenshot folder, etc.) where the clipboard and / or image of the terminal 100-2 is generated is monitored to display the clipboard and / or the location while the first message MSG1 is displayed. At least one of an operation of displaying an image disturbance pattern may be used to delete stored data or to prevent the displayed first message MSG1 from being captured by an 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 (S320), and the chat server 200 transmits the second communication terminal 100-2. The encrypted second message E_MSG2 transmitted from the second communication terminal 100-1 may be transmitted 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 encrypts / decrypts the encrypted second message E_MSG2 transmitted from the chat server 200. Can be decoded using (S340). The encryption / decryption module 168 may decrypt the second message E_MSG2 encrypted using the secret key to generate a 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 (S350). According to an embodiment, the message viewer 170 may also display the previously generated first message MSG1.
캡쳐 방지 모듈(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 technology (S360). According to an embodiment, the capture prevention module 172 may 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 through 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 and received between the first communication terminal 100-1 and the second communication terminal 100-2 are encrypted and decrypted by the chat server 200. Since not, the processing load of the chat server 200 can be reduced. In addition, 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 ( The risk of leakage of the contents of MSG2) can be reduced.
또한, 본 발명의 실시 예에 따른 채팅 애플리케이션(C_APP)은 캡쳐 방지 모듈(172)을 내장하고, 내장된 캡쳐 방지 모듈(172)은 디스플레이되는 메시지들(MSG1 및/또는 MSG2)이 캡쳐되는 것을 방지하여 보안을 향상시킬 수 있다.In addition, the chat application (C_APP) according to an embodiment of the present invention has a built-in capture protection module 172, the built-in capture protection module 172 prevents the displayed messages MSG1 and / or MSG2 is captured. To improve security.
본 발명은 분산 키 교환 프로토콜을 이용한 보안 채팅 방법과 자기 방어 보안 기술을 이용한 보안 채팅 방법에 이용될 수 있다.The present invention can be used in a secure chat method using a distributed key exchange protocol and a secure chat method using a self-defense security technology.

Claims (12)

  1. 제1통신 단말기에 설치되어 실행되는 제1채팅 애플리케이션이, 채팅 서버와 암호화 키를 공유하지 않고도, 상기 채팅 서버를 통해 제2통신 단말기에 설치되어 실행되는 제2채팅 애플리케이션과 보안 채팅을 수행할 수 있는 상기 제1채팅 애플리케이션의 분산 키 교환 프로토콜(distributed key exchange protocol)을 이용한 보안 채팅 방법에 있어서,The first chat application installed and executed in the first communication terminal may perform secure chat with the second chat application installed and executed in the second communication terminal through the chat server without sharing an encryption key with the chat server. In the secure chat method using a distributed key exchange protocol of the first chat application,
    상기 제1채팅 애플리케이션이, 상기 제1채팅 애플리케이션에 내장된 비밀 키 관리 모듈을 이용하여 비밀 키를 생성하고, 생성된 비밀 키를 키 교환 프로토콜을 이용하여 상기 제2통신 단말기에 설치되어 실행되는 상기 제2채팅 애플리케이션과 직접(directly) 공유하는 단계;Wherein the first chat application generates a secret key using a secret key management module embedded in the first chat application, and the generated secret key is installed and executed in the second communication terminal using a key exchange protocol. Sharing directly with a second chat application;
    상기 제1통신 단말기의 사용자로부터 상기 제2통신 단말기로 전송할 제1메시지가 입력되면, 상기 제1채팅 애플리케이션이 상기 비밀 키를 이용하여 상기 제1메시지를 암호화하는 단계; 및Encrypting the first message by 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; And
    상기 제1채팅 애플리케이션이, 암호화된 제1메시지를 상기 제2채팅 애플리케이션으로 전송하기 위해 상기 채팅 서버로 전송하는 단계를 포함하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.Sending, by the first chat application, the encrypted first message to the chat server for transmission to the second chat application.
  2. 제1항에 있어서,The method of claim 1,
    상기 제1채팅 애플리케이션이, 상기 제2채팅 애플리케이션에 의해 암호화된 제2메시지가 상기 채팅 서버를 통해 상기 제1통신 단말기로 전송되면, 상기 암호화된 제2메시지를 수신하는 단계; 및Receiving, by the first chat application, the encrypted second message if a second message encrypted by the second chat application is transmitted to the first communication terminal through the chat server; And
    상기 제1채팅 애플리케이션이, 상기 비밀 키를 이용하여 상기 암호화된 제2메시지를 복호화하는 단계를 더 포함하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.Decrypting, by the first chat application, the encrypted second message using the secret key.
  3. 제2항에 있어서,The method of claim 2,
    상기 제1채팅 애플리케이션이, 복호화된 제2메시지를 상기 제1통신 단말기에 포함된 디스플레이를 통해 디스플레이하는 단계; 및Displaying, by the first chatting application, the decrypted second message through a display included in the first communication terminal; And
    상기 제1채팅 애플리케이션이, 상기 제1채팅 애플리케이션에 내장된 캡쳐 방지 모듈을 이용하여 디스플레이된 상기 제2메시지가 캡쳐되는 것을 방지하는 단계를 더 포함하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.Preventing the first chat application from capturing the displayed second message by using a capture prevention module embedded in the first chat application.
  4. 제3항에 있어서, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는,The method of claim 3, wherein the preventing of the second message from being captured includes:
    상기 제1채팅 애플리케이션이, 상기 제1통신 단말기의 화면 캡쳐 기능을 디스에이블하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.And a first chat application using a distributed key exchange protocol for disabling a screen capture function of the first communication terminal.
  5. 제3항에 있어서, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는,The method of claim 3, wherein the preventing of the second message from being captured includes:
    상기 제1채팅 애플리케이션이, 상기 제1통신 단말기에서 실행되는 화면 캡쳐 애플리케이션을 강제로 종료하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.And the first chat application forcibly terminates the screen capture application executed in the first communication terminal.
  6. 제3항에 있어서, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는,The method of claim 3, wherein the preventing of the second message from being captured includes:
    상기 제1채팅 애플리케이션이, 상기 제1통신 단말기의 화면 캡쳐 데이터가 저장되는 폴더와 클립보드(clipboard) 중에서 적어도 하나를 모니터링하는 단계; 및Monitoring, by the first chat application, at least one of a folder and a clipboard in which screen capture data of the first communication terminal is stored; And
    상기 제1채팅 애플리케이션이, 상기 제2메시지가 디스플레이되는 동안 상기 폴더와 상기 클립보드 중에서 적어도 하나에 저장되는 데이터를 삭제하는 단계를 포함하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.And deleting, by the first chat application, data stored in at least one of the folder and the clipboard while the second message is displayed.
  7. 제3항에 있어서, 상기 제2메시지가 캡쳐되는 것을 방지하는 단계는,The method of claim 3, wherein the preventing of the second message from being captured includes:
    상기 제1채팅 애플리케이션이, 디스플레이된 상기 제2메시지가 외부 전자 기기에 의해 캡쳐되는 것을 방지하기 위해, 영상 방해 패턴을 상기 디스플레이에 디스플레이하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.Secure chat method using a distributed key exchange protocol to display a video disturbance pattern on the display to prevent the first chat application from capturing the displayed second message by an external electronic device.
  8. 제3항에 있어서,The method of claim 3,
    상기 제1채팅 애플리케이션이, 상기 제2메시지에 대한 캡쳐 시도를 감지하는 경우, 상기 캡쳐 시도를 알리기 위한 알림 메시지를 상기 제2통신 단말기로 전송하기 위해 상기 채팅 서버로 전송하는 단계를 더 포함하는 분산 키 교환 프로토콜을 이용한 보안 채팅 방법.If the first chat application detects a capture attempt for the second message, transmitting the notification message for notifying the capture attempt to the chat server for transmitting to the second communication terminal; Secure chat method using key exchange protocol.
  9. 제1통신 단말기에 설치되어 실행되는 제1채팅 애플리케이션이, 제2통신 단말기에 설치되어 실행되는 제2채팅 애플리케이션과 직접 비밀 키를 공유하고, 공유된 비밀 키를 이용하여 상기 제2채팅 애플리케이션과 보안 채팅을 수행할 수 있는 상기 제1채팅 애플리케이션의 자기 방어 보안 기술(self-defense security)을 이용한 보안 채팅 방법에 있어서,The first chat application installed and executed on the first communication terminal directly shares a secret key with the second chat application installed and executed on the second communication terminal, and uses the shared secret key to secure the second chat application with the second chat application. In the secure chat method using a self-defense security technology of the first chat application capable of chatting,
    상기 제1채팅 애플리케이션이, 상기 제1통신 단말기와 통신 가능한 채팅 서버를 통해 상기 제2채팅 애플리케이션으로부터 전송되는 암호화된 제1메시지를 수신하는 단계;Receiving, by the first chat application, an encrypted first message sent from the second chat application via a chat server capable of communicating with the first communication terminal;
    상기 제1채팅 애플리케이션이, 수신된 상기 암호화된 제1메시지를 상기 비밀 키를 이용하여 복호화하고, 복호화된 상기 제1메시지를 상기 제1통신 단말기의 디스플레이에 디스플레이하는 단계; 및Decrypting, by the first chat application, the received first encrypted message using the secret key and displaying the decrypted first message on a display of the first communication terminal; And
    상기 제1채팅 애플리케이션이, 상기 제1채팅 애플리케이션에 내장된 캡쳐 방지 모듈을 이용하여, 디스플레이된 상기 제1메시지가 캡쳐되는 것을 방지하는 단계를 포함하는 자기 방어 보안 기술을 이용한 보안 채팅 방법.Preventing the first chat application from capturing the displayed first message by using a capture prevention module embedded in the first chat application.
  10. 제9항에 있어서, 상기 캡쳐 방지 모듈은,The method of claim 9, wherein the capture prevention module,
    상기 제1통신 단말기의 화면 캡쳐 기능 비활성화, 상기 제1통신 단말기에서 실행되는 캡쳐 프로그램의 강제 종료, 영상 방해 패턴을 이용한 외부 기기의 화면 촬영 방지, 및 클립보드 모니터링을 통한 화면 캡쳐 데이터 삭제 중에서 적어도 하나를 이용하여 디스플레이된 상기 제1메시지가 캡쳐되는 것을 방지하는 자기 방어 보안 기술을 이용한 보안 채팅 방법.At least one of deactivating a screen capture function of the first communication terminal, forcibly terminating a capture program executed in the first communication terminal, preventing screen capture of an external device using an image disturbance pattern, and deleting screen capture data through clipboard monitoring Secure chat method using a self-defense security technology to prevent the first message displayed by using the capture.
  11. 제9항에 있어서,The method of claim 9,
    상기 제1채팅 애플리케이션이, 상기 제1메시지에 대한 캡쳐 시도를 감지하는 경우, 상기 캡쳐 시도를 알리기 위한 알림 메시지를 상기 제2채팅 애플리케이션으로 전송하기 위해 상기 채팅 서버로 전송하는 단계를 더 포함하는 자기 방어 보안 기술을 이용한 보안 채팅 방법.If the first chat application detects a capture attempt for the first message, sending a notification message for notifying the capture attempt to the chat server to send the second chat application to the chat server; Secure chat method using defensive security technology.
  12. 제1항 내지 제11항 중에서 어느 하나의 항에 기재된 보안 채팅 방법을 수행하는 애플리케이션을 저장한 컴퓨터로 판독가능한 저장 매체.A computer-readable storage medium storing an application for performing the secure chat method according to any one of claims 1 to 11.
PCT/KR2016/000887 2015-06-12 2016-01-27 Secure chat method using distributed key exchange protocol and self-defense security technology WO2016200007A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2015-0083256 2015-06-12
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
WO2016200007A1 true WO2016200007A1 (en) 2016-12-15

Family

ID=55540249

Family Applications (1)

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

Country Status (2)

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

Families Citing this family (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
US20050154890A1 (en) * 2004-01-12 2005-07-14 Balaji Vembu Method for secure key exchange
KR20060052329A (en) * 2004-10-29 2006-05-19 리서치 인 모션 리미티드 Secure peer-to-peer messaging invitation architecture
JP2006211118A (en) * 2005-01-26 2006-08-10 Nippon Telegr & Teleph Corp <Ntt> Communication terminal, and method for each terminal to surely confirm connections among all other terminals in full-mesh network
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

Family Cites Families (2)

* 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
KR20140058196A (en) 2012-11-06 2014-05-14 한국전자통신연구원 Apparatus and method for protecting mobile message data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050154890A1 (en) * 2004-01-12 2005-07-14 Balaji Vembu Method for secure key exchange
KR20060052329A (en) * 2004-10-29 2006-05-19 리서치 인 모션 리미티드 Secure peer-to-peer messaging invitation architecture
JP2006211118A (en) * 2005-01-26 2006-08-10 Nippon Telegr & Teleph Corp <Ntt> Communication terminal, and method for each terminal to surely confirm connections among all other terminals in full-mesh network
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

Also Published As

Publication number Publication date
KR101596479B1 (en) 2016-03-07

Similar Documents

Publication Publication Date Title
CN108632284B (en) User data authorization method, medium, device and computing equipment based on block chain
US20210042601A1 (en) Method and device for encrypting model of neural network, and storage medium
WO2016137304A1 (en) Trust-zone-based end-to-end security
CA3091980C (en) Providing security to mobile devices via image evaluation operations that electronically analyze image data received from cameras of the mobile devices
WO2013183814A1 (en) Improved security function-based cloud service system and method for supporting same
WO2021036706A1 (en) Trusted application operation method and information processing and memory allocation method and apparatus
US20150281189A1 (en) Method and apparatus for cloud-assisted cryptography
WO2013081406A1 (en) Method and apparatus for securing touch input
WO2015147547A1 (en) Method and apparatus for supporting login through user terminal
EP3513525A1 (en) Trusted execution environment secure element communication
WO2013066011A1 (en) Method and system for providing information using a consent procedure executed by means of near-field communication
KR20120080860A (en) Method and apparatus for managing content in mobile terminal
WO2014200163A1 (en) Information encryption system and information encryption method using optical character recognition
WO2015030511A1 (en) Terminal device for terminal protection, terminal protecting method for same, and terminal managing server device
CN112883402A (en) Encryption method and device, electronic equipment and storage medium
WO2016200007A1 (en) Secure chat method using distributed key exchange protocol and self-defense security technology
WO2018016830A1 (en) File encryption prevention apparatus and method
WO2016085050A1 (en) User terminal operating in conjunction with peripheral devices, and method for preventing information leakage using same
WO2020258961A1 (en) Permission processing method and terminal device
CN103152328B (en) A kind of conferencing information control system based on wireless network and control method thereof
WO2017014484A1 (en) Terminal having security function
US10931446B2 (en) Method and system for protecting sharing information
CN112861037B (en) Data labeling method, device, system, electronic equipment and storage medium
WO2019040182A1 (en) Systems and methods for encrypting files
WO2020009265A1 (en) Method and system for generating random numbers

Legal Events

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

Ref document number: 16807650

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16807650

Country of ref document: EP

Kind code of ref document: A1