KR101489447B1 - 메시지를 일상 대화로 암호화하는 정보 암호화 시스템 및 정보 암호화 방법 - Google Patents

메시지를 일상 대화로 암호화하는 정보 암호화 시스템 및 정보 암호화 방법 Download PDF

Info

Publication number
KR101489447B1
KR101489447B1 KR20130069143A KR20130069143A KR101489447B1 KR 101489447 B1 KR101489447 B1 KR 101489447B1 KR 20130069143 A KR20130069143 A KR 20130069143A KR 20130069143 A KR20130069143 A KR 20130069143A KR 101489447 B1 KR101489447 B1 KR 101489447B1
Authority
KR
South Korea
Prior art keywords
message
encryption
request
user
text
Prior art date
Application number
KR20130069143A
Other languages
English (en)
Other versions
KR20140146432A (ko
Inventor
김도형
신재열
이재성
Original Assignee
김도형
신재열
이재성
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김도형, 신재열, 이재성 filed Critical 김도형
Priority to KR20130069143A priority Critical patent/KR101489447B1/ko
Publication of KR20140146432A publication Critical patent/KR20140146432A/ko
Application granted granted Critical
Publication of KR101489447B1 publication Critical patent/KR101489447B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 일상 대화의 암호문 메시지로 보안 통신하는 정보 암호화 시스템 및 정보 암호화 방법을 개시한다. 본 발명에 따르는 정보 암호화 시스템은, 사용자의 암호문 설정을 요청받고, 요청된 설정 정보에 포함된 사용자의 회원 아이디, 암호 및 암호문의 주제를 설정하는 암호화 설정부; 암호화 처리를 요청받아 사용자의 메시지 원문을 전송받는 암호화 요청 수신부; 암호화가 요청된 메시지에 대해 설정된 주제에 맞는 일상 대화의 암호문을 결정하여 제공하는 암호문 제공부; 복호화 처리를 요청받는 복호화 요청 수신부; 및 복호화 처리에 의해 기 저장된 메시지 원문을 제공하는 메시지 원문 제공부를 포함하는 암호화 서버를 포함한다. 본 발명에 따르면, 사용자는 일상 대화의 암호문으로 메시지를 암호화 처리하여 메시지의 보안을 유지할 수 있다.

Description

메시지를 일상 대화로 암호화하는 정보 암호화 시스템 및 정보 암호화 방법 {System for encoding information by encrypting message into common conversation}
본 발명은 정보의 암호화 기술에 관한 것으로서, 보다 상세하게는 메시지를 일반 대화로 암호화하고, 암호화된 일반 대화를 원래 메시지로 복원하는 정보 암호화 시스템 및 정보 암호화 방법에 관한 것이다.
메시지 어플리케이션(예 : SMS, 메일, SNS 등)은 발신자와 수신자 사이에서 네트워크를 통해 메시지를 전송한다. 메시지의 보안 처리 방식에는 다양한 방식이 있을 수 있다.
사용자 단말의 SNS(예 : 트위터, 페이스 북, 카카오 톡 등), SMS, 메일, 메신저 등의 어플리케이션 등은 다양한 내용의 메시지가 저장되는데, 사용자뿐만 아니라 다른 사용자도 어플리케이션을 조작하여 메시지를 볼 수 있다. 예를 들어, 사용자 단말이 컴퓨터 단말 또는 스마트 단말이라 가정할 경우, 사용자 A의 동료, 친구, 가족 등은 사용자 A의 사용자 단말을 조작하여 저장된 메시지 정보를 볼 수 있다.
여기서, 사용자는 상기 어플리케이션의 실행 권한에 암호를 걸어 둘 수 있다. 어플리케이션은 실행시에 암호의 입력 화면을 표시하여 사용자의 암호 입력을 안내한다. 그러면, 암호 인증이 성공된 사용자만이 어플리케이션을 실행하여 메시지의 조회, 발신 및 수신 등을 할 수 있다. 또한, 상기 어플리케이션은 메시지의 암호화 서비스를 제공하여 메시지 내용을 이해할 수 없는 암호문으로 변환할 수 있다. 발신측 어플리케이션은 메시지를 암호화 처리하여 전송하고, 수신측 어플리케이션은 암호화된 메시지를 수신함과 동시에 복호화 처리하는 것이다. 이런 경우, 악의의 제 3자는 암호 입력 화면이 표시되면 어플리케이션의 실행 권한에 암호가 설정되었음을 알고 공격 대상으로 삼을 수 있다. 또한, 암호화된 메시지가 이해할 수 없는 데이터로 표시될 경우 악의의 제 3자는 암호화된 메시지라는 것을 인지하고 복호화를 시도할 수 있다. 따라서, 암호화 대상이 무엇인지 누구에게나 쉽게 노출되는 것은 사용자의 공격 시도를 유발할 수 있어 보안을 취약하게 한다.
또한, 메시지는 통신 사업자의 서버 및 메시지 서비스 사업자의 서버를 경유하게 된다. 때문에, 통신 사업자의 서버 및 메시지 서비스 사업자의 서버에는 메시지가 저장되며, 저장된 메시지는 통신 서비스 및 메시지 서비스의 사업자들에게 얼마든지 조회 대상이 될 수 있다.
본 발명은 상기와 같은 종래 기술의 인식 하에 창출된 것으로서, 메시지를 일반 대화 문장으로 암호화하여 메시지의 암호화 여부가 노출되지 않는 정보 암호화 시스템 및 정보 암호화 방법을 제공하는 것을 목적으로 한다.
본 발명의 다른 목적은 서비스 사업자에 의해 메시지 서비스에서 제공되는 암호화 기능과 별개로 사용자가 개인적으로 암호화한 정보로 메시지 서비스를 이용할 수 있게 하는데 있다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 메시지를 일상 대화로 암호화하는 정보 암호화 시스템은, 사용자의 암호문 설정을 요청받고, 요청된 설정 정보에 포함된 사용자의 회원 아이디, 암호 및 암호문의 주제를 설정하는 암호화 설정부; 암호화 처리를 요청받아 사용자의 메시지 원문을 전송받는 암호화 요청 수신부; 암호화가 요청된 상기 메시지에 대해 설정된 상기 주제에 맞는 일상 대화의 암호문을 결정하여 제공하는 암호문 제공부; 복호화 처리를 요청받는 복호화 요청 수신부; 및 복호화 처리에 의해 기 저장된 상기 메시지 원문을 제공하는 메시지 원문 제공부를 포함하는 암호화 서버를 포함한다.
본 발명에 있어서, 상기 암호화 서버는, 상기 주제별로 복수개의 암호문을 사용자들간의 일상 대화로 저장하는 암호문 관리부를 더 포함하며, 제 1 암호문은 다음번 대화로서 복수개의 제 2암호문과 대응되며, 상기 제 2암호문은 제 1암호문의 사용자와 동일한 사용자의 대화 및 제 1암호문의 사용자의 상대방 대화로 구성된다.
여기서, 상기 암호화 설정부는, 상기 복호화 처리에 의해 메시지 원문의 수신이 허락되는 메시지의 사용자 수를 더 전송받아 암호화 설정을 요청받는다.
또한, 상기 메시지 원문 제공부는, 상기 복호화 처리의 요청에 대하여, 개별 메시지 원문에 대해 수신이 허락된 개별 사용자마다 1회만 제공한다.
나아가, 상기 암호화 서버는, 상기 메시지 원문의 수신이 허락된 사용자 전원에게 복호화 처리된 상기 메시지 원문의 제공이 완료된 경우, 상기 메시지 원문을 삭제하는 메시지 원문 삭제부를 더 포함한다.
본 발명의 일 측면에 따르면, 회원 아이디, 상기 암호, 상기 주제, 메시지의 사용자 수를 포함하는 암호화 설정의 요청을 전송하는 암호화 설정 요청부; 메시지 어플리케이션에 입력된 상기 메시지 원문을 전송하여 암호화 처리를 요청하는 암호화 요청부; 요청된 상기 메시지가 암호화 처리된 상기 암호문을 제공받는 암호문 수신부; 상기 메시지 어플리케이션에서 메시지 원문을 삭제하고 대신에 상기 암호문으로 대체하는 암호문 대체부; 사용자의 요청에 의해 상기 복호화 처리를 요청하는 복호화 요청부; 상기 복호화 처리의 요청에 의해 상기 메시지 원문을 제공받아 저장하는 메시지 원문 수신부; 및 저장된 메시지 원문을 읽어들여 화면에 표시하는 메시지 원문 표시부를 포함하는 사용자 단말을 더 포함한다.
여기서, 상기 암호화 서버는, 사용자 단말로부터 암호화가 요청된 메시지 원본에 대하여 일련 번호를 부여하여 저장하고, 사용자 단말로부터 사용자 단말에 저장된 마지막 일련 번호가 포함된 복호화 요청을 수신하고, 상기 마지막 일련 번호보다 일련 번호가 큰 적어도 하나의 메시지 원문을 제공한다.
또한, 상기 사용자 단말은, 복호화 요청의 이벤트가 발생되면, 상기 마지막 일련 번호를 상기 암호화 서버로 전송하여 복호화 처리를 요청하고, 상기 암호화 서버로부터 상기 마지막 일련 번호보다 일련 번호가 큰 적어도 하나의 메시지 원문을 제공받아 저장한다.
더욱이, 상기 암호화 서버는, 상기 회원 아이디 및 상기 암호의 인증이 성공된 사용자를 대상으로 상기 암호화 처리 및 상기 복호화 처리의 서비스를 제공한다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 메시지를 일상 대화로 암호화하는 정보 암호화 방법은, 암호화 서버가 사용자 단말로 사용자의 메시지 원문 및 암호문 사이에서 암호화 및 복호화 서비스를 제공하는 정보 암호화 방법에 있어서, (a)상기 사용자 단말로부터 암호문 설정을 요청받고, 요청된 설정 정보에 포함된 사용자의 회원 아이디, 암호 및 암호문의 주제를 설정하는 암호화 설정 단계; (b)상기 사용자 단말로부터 암호화 처리를 요청받아 사용자의 메시지 원문을 전송받는 암호화 요청 수신 단계; (c)상기 메시지 원문을 암호화 처리하여 설정된 상기 주제에 맞는 일상 대화의 암호문을 결정하고, 상기 암호문을 상기 사용자 단말로 제공하는 암호문 제공 단계; (d)상기 사용자 단말로부터 복호화 처리를 요청받는 복호화 요청 수신 단계; 및 (e)복호화 처리에 의해 기 저장된 상기 메시지 원문을 조회하여 상기 사용자 단말로 제공하는 메시지 원문 제공 단계를 포함한다.
본 발명의 일 측면에 따르면, 사용자는 메시지 통신시 원문 메시지를 일상 대화의 암호문으로 암호화하여 입력할 수 있어 메시지의 보안성이 강화된다.
또한, 본 발명의 암호화 및 복호화 서비스는 설정된 암호를 공유하는 사용자들에게만 제공되고, 통신 서비스 사업자 및 메시지 서비스 사업자에게는 암호문 메시지만 제공되어 원본 메시지의 존재 여부는 암호를 공유하는 사용자들만이 알 수 있다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 후술한 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되지 않아야 한다.
도 1은 본 발명의 일 실시예에 따른 메시지를 일상 대화로 암호화하는 정보 암호화 시스템의 개략적 구성도이다.
도 2는 본 발명의 일 실시예에 따른 암호 어플리케이션 및 암호화 서버의 개략적 내부 구조도이다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 암호화 서버의 데이터 예시도이다.
도 5 내지 도 7은 본 발명의 일 실시예에 따른 사용자 단말의 화면 예시도이다.
도 8은 본 발명의 일 실시예에 따른 정보 암호화 방법의 개략적 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상에 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
<1. 시스템 구성>
도 1은 본 발명의 일 실시예에 따른 메시지를 일상 대화로 암호화하는 정보 암호화 시스템(1)의 개략적 구성도이다.
본 발명의 일 실시예에 따른 정보 암호화 시스템(1)은 메시지의 암호화 및 복호화 서비스를 제공받는 암호 어플리케이션(200)을 실행하는 사용자 단말(2) 및 암호 어플리케이션(200)으로 메시지의 암호화 및 복호화 서비스를 제공하는 암호화 서버(3)를 포함하여 구성된다.
상기 암호화 및 복호화 서비스는 암호를 알고 있는 메시지 통신의 사용자들에게만 제공된다. 암호화 서비스는 사용자의 원문 메시지를 암호화 처리하여 암호문 메시지를 결정하고, 복호화 서비스는 암호문 메시지를 복호화 처리하여 원문 메시지로 복원한다. 복호화 처리에 의해 사용자는 복원된 원문 메시지를 읽을 수 있다.
여기서, 상기 암호문 메시지는 원문 메시지와 내용이 다른 일반 문장의 메시지이다. 따라서, 원문 메시지의 암호화를 요청한 사용자도 암호화 사실을 잊어버린 경우, 암호문 메시지의 내용을 원문 메시지의 내용으로 이해하여 암호문 메시지를 원문 메시지로 착각할 수 있다. 물론, 메시지가 암호문인지 원문인지 판별할 수 없는 사용자는 복호화 처리를 요청한 후, 복원된 원문 메시지를 읽으면 메시지가 암호화 되었음을 알 수 있다. 물론, 사용자는 복원된 원문 메시지를 읽을 수 없으면 메시지가 원문임음 알 수 있다.
상기 메시지는 사용자들간에 메시지 어플리케이션을 통해 통신되는 메시지로서 특별한 제한이 없다. 예를 들면, SMS, 메신저, 메일, SNS(예 : 카카오톡, 트위터, 페이스북 등) 등의 메시지 어플리케이션을 통해 통신되는 메시지는 암호화 및 복호화의 처리 대상이 된다.
상기 사용자 단말(2)은 컴퓨터 단말(예 : PC, 노트북 등) 및 스마트 단말(예 : 스마트 폰, 스마트 패드 등)을 포함하며 특별한 제한은 없다. 암호 어플리케이션(200)을 설치하여 실행할 수 있기만 하면 본 발명의 사용자 단말(2)에 포함된다. 사용자 단말(2)은 메시지 어플리케이션 및 암호 어플리케이션(200)을 실행한다. 메시지 어플리케이션은 입력창에서 사용자의 메시지 원문을 입력받고 사용자의 명령에 의해 입력된 메시지를 전송한다.
여기서, 메시지의 입력 및 전송 사이에 암호화 요청의 이벤트가 발생되면, 암호 어플리케이션(200)의 암호화 처리에 의해 메시지 어플리케이션의 입력창의 메시지 원문은 암호문으로 대체된다. 그러면, 메시지 어플리케이션은 사용자의 명령에 의해 암호문을 메시지 전송하고, 전송된 메시지를 로컬 저장소에 저장하고 메시지 어플리케이션의 메시지창에 표시한다. 그리고 암호 어플리케이션(200)은 메시지 어플리케이션으로부터 원문 메시지를 가로채서 암호화 요청하고, 원문 메시지 대신에 암호화 요청에 의해 응답받은 암호문으로 대체한다. 메시지를 발신한 사용자와 메시지를 수신한 사용자는 메시지 어플리케이션을 통해 암호문의 메시지를 조회한다.
사용자가 원문 메시지를 보려면 암호 어플리케이션(200)을 통해 암호화 서버(3)로 복호화 요청해야만 한다. 그러면, 암호 어플리케이션(200)은 복호화 요청에 의해 암호화 서버(3)로부터 응답받은 원문 메시지를 암호 어플리케이션(200)의 메시지창에 표시한다.
상기 암호화 서버(3)는 홈 페이지를 통해 서비스 가입을 신청하는 사용자로부터 회원 가입을 신청받고, 사용자에게 회원 아이디(ID)를 발급한다. 암호화 서버(3)가 로그인된 회원 사용자로부터 암호를 등록받으면, 사용자의 암호 어플리케이션(200)으로 암호화 및 복호화 서비스를 제공할 수 있다. 암호화 서버(3)는 암호 어플리케이션(200)으로부터 원문 메시지의 암호화 요청을 받고, 암호화 처리를 수행하여 내용이 다른 일반 문장의 암호문 메시지를 생성하여 암호 어플리케이션(200)으로 응답한다. 그리고 암호화 서버(3)는 암호 어플리케이션(200)으로부터 복호화 요청을 받고, 복호화 처리를 수행하여 암호문 메시지에 대응되는 원문 메시지를 암호 어플리케이션(200)으로 제공한다.
상기 메시지 서버(300)는 사용자 단말(2)에 설치된 메시지 어플리케이션을 상대로 메시지 통신 서비스를 제공하는 서버이다. SMS 서버, 메신저 서버, 메일 서버 및 SNS 서버 등은 메시지 서버(300)에 해당될 수 있다.
예를 들어, 발신자 A 및 수신자 B 사이에서 SMS 메시지가 전송되는 것이라 가정한다. 발신자 A는 수신자 B와 암호문으로 메시지 통신하기 위해 암호 어플리케이션(200)을 이용하여 암호화 서버(3)에 암호화 및 복호화에 요구되는 암호 정보를 설정한다. 그리고 발신자 A는 수신자 B에게 연락하여 설정된 암호 정보를 알려준다. 암호 설정을 완료한 발신자 A는 사용자 단말(2)의 SMS 어플리케이션을 실행하여 발신될 원문 메시지를 입력한다.
원문 메시지의 입력을 완료한 발신자 A는 암호 어플리케이션(200)을 이용하여 암호화 서버(3)로 암호화 요청을 한다. 암호화 요청에 의해 암호 어플리케이션(200)은 SMS 어플리케이션의 입력창으로부터 원문 메시지를 조회하고, 원문 메시지를 포함하는 암호화 요청 정보를 암호화 서버(3)로 전송한다. 암호화 서버(3)는 암호 어플리케이션(200)으로부터 암호화 요청에 의해 수신된 원문 메시지를 저장하고, 대응되는 암호문 메시지를 결정하여 암호 어플리케이션(200)으로 응답한다. 그러면, 발신자 A의 암호 어플리케이션(200)은 암호문 메시지를 수신한 후 SMS 어플리케이션에 입력된 원문 메시지를 수신된 암호문 메시지로 대체한다. 발신자 A가 SMS 어플리케이션을 이용하여 발신 명령을 내리면, 대체된 암호문 메시지가 수신자 B의 SMS 어플리케이션으로 전송된다.
발신자 A 및 발신자 B의 SMS 어플리케이션은 암호문 메시지를 저장하며, 발신자 A 또는 발신자 B가 원본 메시지를 보려면 암호 어플리케이션(200)을 이용하여 암호 인증을 거친 후 암호화 서버(3)로 복호화 요청을 해야만 한다. 암호화 서버(3)가 복호화 요청을 수신하면 암호 인증이 성공된 발신자 A 또는 수신자 B를 상대로 저장된 원본 메시지를 조회하여 암호 어플리케이션(200)로 제공한다. 그러면, 사용자 단말(2)의 암호 어플리케이션(200)은 원문 메시지를 표시할 수 있다.
도 2는 본 발명의 일 실시예에 따른 암호 어플리케이션(200) 및 암호화 서버(3)의 개략적 내부 구조도이다. 그리고 도 3 및 도 4는 본 발명의 일 실시예에 따른 암호화 서버의 데이터 예시도이다. 이하에서는 도 2 내지 도 4를 참조하여 설명한다.
본 발명의 일 실시예에 따른 암호 어플리케이션(200)은 사용자의 암호 설정을 요청하는 암호화 설정 요청부(21), 사용자의 입력 메시지를 전송하여 암호화 처리를 요청하는 암호화 요청부(22), 암호화 요청에 대한 응답으로 암호문 메시지를 수신하는 암호문 수신부(23), 메시지 어플리케이션으로 입력된 원문 메시지 대신에 수신된 암호문으로 대체 입력하는 암호문 대체부(24), 사용자의 복호화 요청을 수신하는 복호화 요청부(25), 복호화 요청에 대한 응답으로 원문 메시지를 수신하는 메시지 원문 수신부(26), 수신된 원문 메시지를 암호 어플리케이션(200)의 화면에 표시하는 메시지 원문 표시부(27)를 포함하여 구성된다.
본 발명의 일 실시예에 따른 암호화 서버(3)는 사용자의 암호 설정 정보를 수신하여 등록하는 암호화 설정부(31), 사용자의 암호화 요청을 수신하는 암호화 요청 수신부(32), 요청된 메시지 원문에 대응하는 암호문을 응답하는 암호문 제공부(33), 사용자의 복호화 요청을 수신하는 복호화 요청 수신부(35), 복호화 요청에 대해 보관 중인 원문 메시지를 응답하는 메시지 원문 제공부(36)를 포함하여 구성된다. 그리고 암호화 서버(3)는 전체 사용자의 원문 메시지의 수신이 완료된 경우, 원문 메시지를 삭제하는 메시지 원문 삭제부(37)를 더 포함하여 구성된다.
상기 암호화 설정부(31)는 암호화 설정 요청부(21)로부터 암호 설정 정보를 수신하여 저장한다. 도 3을 참조하면, 암호화 설정 요청부(21)는 암호를 설정하는 사용자의 회원 아이디/암호, 대화 주제 및 사용자 수 등을 포함하는 암호 설정 정보를 암호화 서버(3)로 전송하여 암호 설정을 요청한다.
여기서, 상기 회원 아이디는 서비스를 요청하는 사용자를 식별하는 정보이고, 상기 암호는 회원 사용자의 로그인 암호와 별개의 암호이고 개별 서비스를 식별하는 서비스 아이디이다. 회원 아이디/암호는 대화 주제와 사용자 수, 원문 메시지 등을 식별하는 식별키로서 사용된다. 사용자는 복수개 암호를 설정하고 각각의 암호별로 메시지의 사용자를 다르게 하여 메시지의 보안을 유지할 수 있다. 예를 들어 사용자 A는 친구 B와 메시지 통신할 때와 가족 C와 메시지 통신할 때 서로 다른 암호를 설정할 수 있다. 사용자는 암호화 및 복호화의 서비스를 요청하기 위해 서비스 인증 정보로서 회원 아이디 및 암호의 입력을 요구받는다.
상기 대화 주제는 일상 대화로 구성된 암호문의 내용 카테고리를 식별하는 것으로서 특별한 제한은 없다. 예를 들면, 대화 주제는 "친구", "업무 회의", "여행", "날씨" 등으로 분류될 수 있다. 암호화 서버(3)는 각각의 대화 주제에 따라 복수개 암호문의 내용이 연관성이 유지되도록 암호문을 암호문 DB에 저장한다. 따라서, 사용자들 사이의 원본 메시지들의 내용이 시간 순서에 따라 의미적으로 연결되듯이 변환된 암호문 메시지들의 내용도 대화 주제의 내용으로 의미적으로 연결된다.
상기 사용자 수는 암호가 공유되어 복호된 원본 메시지의 수신이 허락되는 사용자의 인원 수이다. 예를 들어, 발신자 A가 암호를 설정하여 2명의 수신자와 암호문 메시지로 통신할 경우, 발신자 A는 총 인원 수에 해당하는 3으로 사용자 수를 설정한다. 한편, 암호 설정 정보에는 암호 설정의 서비스를 요청하는 사용자를 식별하기 위한 정보로서 사용자 단말(2)의 식별 정보(예 : Device ID)가 더 포함되어도 무방하다.
또한, 암호 설정이 완료된 이후, 암호를 설정한 사용자는 메시지의 상대방에게 암호를 알려줌으로써 암호가 공유된다. 암호를 공유한 사용자들은 누구나 암호 어플리케이션(200)을 실행한 후 암호화 서버(3)로 암호화 처리를 요청하여 암호문으로 상대방과 메시지 통신이 가능하고, 복호화 처리를 요청하여 원문 메시지를 수신할 수 있다. 여기서, 암호화 처리 또는 복호화 처리의 서비스를 요청하는 사용자는 암호를 설정한 사용자의 회원 아이디 및 암호를 입력하여 암호 인증이 성공되는 것을 전제로 서비스를 제공받는다. 암호화 서버(3)는 사용자에 의해 입력된 회원 아이디 및 암호가 DB에 저장된 회원 아이디 및 암호와 일치할 경우 암호 인증이 성공된 것으로 판단한다.
상기 암호화 요청 수신부(32)는 암호화 요청부(22)로부터 암호화 요청 정보를 수신한다. 도 3을 참조하면, 상기 암호화 요청 정보는 회원 아이디/암호 및 원문 메시지를 포함한다. 물론, 상기 회원 아이디/암호는 암호를 설정한 사용자의 정보로서 암호화 요청자는 암호 설정자의 회원 아이디/암호를 입력해야만 한다. 암호를 공유하는 사용자는 누구나 공유된 암호 설정자의 ID/암호를 암호 어플리케이션(200)으로 입력하여 암호 인증이 성공된 후에 원문 메시지에 대하여 암호화를 요청할 수 있다.
여기서, 상기 암호화 요청 정보는 메시지 어플리케이션의 식별 정보를 선택적으로 더 포함할 수 있다. 상기 식별 정보가 포함된 경우라 가정하면, 암호화 요청부(22)는 암호화 요청된 메시지가 입력된 메시지 어플리케이션의 식별 정보를 알아낸 후 암호화 요청 정보에 상기 식별 정보를 추가할 수 있다. 상기 식별 정보는 어느 메시지 어플리케이션의 메시지인지를 구분할 수 있게 한다. 물론, 서비스 정책에 따라 상기 식별 정보는 생략될 수도 있다.
또한, 상기 암호화 요청 정보는 암호화 서비스를 요청하는 사용자를 식별하기 위해 사용자 식별 정보를 더 포함할 수 있다. 상기 사용자 식별 정보는 회원 사용자일 경우 회원 아이디일 수 있고, 비회원일 경우 상기의 사용자 단말(2)의 식별 정보일 수 있다.
상기 암호문 제공부(33)는 암호화 요청된 원문 메시지에 일련 번호를 부여하고, 원문 메시지를 일련 번호 및 상기 사용자 식별 정보와 대응시켜 저장한다. 그리고 암호문 제공부(33)는 설정된 대화 주제에 맞는 암호문을 결정하기 위해 DB로부터 암호문을 조회하고, 조회된 암호문을 암호 어플리케이션(200)으로 응답한다. 도 3을 참조하면, 암호문 제공부(33)는 암호문을 포함하는 암호문 정보를 응답한다.
여기서, 상기 일련 번호는 개별 메시지의 시간적 발생 순서에 따라 순차적으로 증가하는 원문 메시지의 고유한 식별 번호이다. 따라서, 암호문 제공부(33)가 마지막으로 저장한 최신의 원문 메시지는 가장 큰 일련 번호를 가진다. 암호 어플리케이션(200)이 원문 메시지의 일련 번호 및 상기 사용자 식별 정보를 이용하면, 메시지를 작성한 사용자들을 각각 식별하여 메시지의 발생 시간 순서에 따라 화면에 표시할 수 있다.
도 4를 참조하면, 암호화 서버(3)는 대화 주제별로 메시지의 발생 순서에 따라 메시지의 내용이 의미적으로 연결될 수 있게 트리 구조를 이용하여 암호문을 저장한다.
레벨 번호는 상기 일련 번호와 대응하는 메시지의 시간적 순서 정보에 해당한다. 상기 트리 구조는 각각의 대화 주제별로 레벨 0에 해당하는 루트 노트를 가진다. 루트 노드의 하위 레벨에 해당하는 각각의 노드에는 대화 주제에 종속되는 일반 대화 문장의 암호문이 배정된다. 상위 레벨의 부모 노드는 대화 주제에 따라 의미적으로 대화의 내용이 연결되는 복수개의 자식 노드와 연결된다.
예를 들어, 사용자 1에 의해 암호가 설정된 이후, 사용자 1이 최초로 암호화를 요청하면, 암호문 제공부(33)는 레벨 1의 노드들 중에서 임의의 노드에 배정된 암호문을 조회하여 사용자 1의 암호 어플리케이션(200)으로 응답한다. 이때, 응답된 암호문의 노드는 부모 노드가 된다. 사용자 1은 수신된 레벨 1의 암호문으로 발신 메시지(SM : Send Message)를 사용자 2에게 전송한다.
이때, 다음번 메시지는 레벨 2가 되며, 사용자 1이 다시 발신 메시지를 전송하거나 또는 상대방에 해당하는 사용자 2가 응답 메시지(RM : Response Message)를 전송할 수 있다. 레벨 2에서 사용자 1이 메시지를 전송할 경우라 가정하면, 레벨 2의 대응되는 자식 노드들 중에서 레벨 1의 사용자 1의 대화로 분류되는 발신 메시지 중에서 노드가 랜덤하게 선택되어 대응되는 암호문이 결정된다. 만약, 레벨 2에서 사용자 2가 메시지를 전송할 경우라 가정하면, 레벨 2의 자식 노드들 중에서 상대방의 대화로 분류되는 응답 메시지 중에서 랜덤 선택된 노드의 암호문이 결정된다.
따라서, 상기 트리 구조의 암호문으로 메시지를 통신할 경우, 사용자의 암호문 대화는 각각의 화자 입장에서 의미적으로 연결될 수 있다. 물론, 도 4의 트리 구조를 이용하여 암호문 메시지를 관리할 경우, 암호화 서버(3)는 2인 이상의 복수 사용자들 사이에서도 각각의 화자 입장에서 의미적으로 연결되는 암호문의 변환 및 제공 서비스가 가능하다. 또한, 암호화 서버(3)가 언어별로 암호문을 트리 구조로 저장할 경우, 다국어 지원의 암호화 서비스가 가능하다.
암호문 수신부(23)가 암호문 제공부(33)로부터 암호화 요청의 응답으로서 암호문을 수신하면, 암호문 대체부(24)는 메시지 어플리케이션의 입력창으로 원문 메시지의 삭제 이벤트를 발생시킨 후 수신된 암호문의 입력 이벤트를 발생시킨다. 그러면, 메시지 어플리케이션의 입력창에는 사용자가 입력한 원문 메시지 대신에 대체 입력된 암호문이 표시된다. 이후, 사용자는 메시지 어플리케이션에서 전송 명령을 선택하여 대체된 암호문을 상대방에게 발신할 수 있다.
상기 복호화 요청 수신부(35)는, 암호 어플리케이션(200)에서 사용자에 의해 복호화 요청 이벤트가 발생할 경우, 복호화 요청부(25)로부터 복호화 요청을 수신한다. 도 3을 참조하면, 복호화 요청 수신부(35)는 회원 아이디/암호, 메시지 어플리케이션 정보 및 마지막 일련 번호 등이 포함되는 복호화 요청 정보를 수신한다. 여기서, 복호화 요청 정보는 복호화 서비스를 요청하는 사용자를 식별하기 위해 상기 사용자 식별 정보를 더 포함할 수 있다. 상기 사용자 식별 정보는 위에서 이미 설명한 바 있다.
상기 마지막 일련 번호는 암호 어플리케이션(200)이 마지막으로 수신한 원문 메시지의 일련 번호에 해당된다. 또한, 마지막 일련 번호는 암호 어플리케이션(200)의 로컬 저장소에 보관된 원문 메시지들의 일련 번호 중에서 가장 큰 일련 번호이고, 가장 최근에 수신된 원문 메시지의 일련 번호이기도 하다. 물론, 복호화 요청 수신부(35)가 복호화 요청부(25)로부터 수신된 암호 설정자의 아이디/암호에 대해 최초로 복호화 요청을 수신할 경우, 마지막 일련 번호는 가장 작은 초기값이다.
또한, 상기 복호화 요청 정보는 서비스 정책에 따라 메시지 어플리케이션의 식별 정보를 선택적으로 더 포함할 수 있다. 바람직하게, 상기 암호화 요청 정보에 메시지 어플리케이션의 식별 정보가 포함된 경우 복호화 요청 정보에도 상기 식별 정보가 포함된다. 그리고 암호화 요청 정보에 메시지 어플리케이션의 식별 정보가 포함되지 않으면, 복호화 요청 정보에도 상기 식별 정보가 포함되지 않는다. 복호화 요청부(25)는 실행 중인 메시지 어플리케이션의 식별 정보를 알아낸 후 복호화 요청 정보에 상기 식별 정보를 추가할 수 있다.
상기 메시지 원문 제공부(36)는 복호화 처리에 의해, 상기 복호화 요청의 응답으로서 원문 메시지 및 대응되는 일련 번호를 암호 어플리케이션(200)으로 전송한다.
여기서, 메시지 원문 제공부(36)는 상기 마지막 일련 번호보다 일련 번호가 큰 적어도 하나의 원문 메시지를 DB로부터 조회하고, 조회가 성공될 경우, 조회된 원문 메시지를 전송한다. 일련 번호의 비교에 의해, 메시지 원문 제공부(36)는 저장된 원문 메시지를 최초 1번만 암호 어플리케이션(26)로 제공한다.
따라서, 메시지 원문 제공부(36)가 DB로부터 원문 메시지를 조회하는데 실패한 경우, 암호 어플리케이션(200)이 이전에 복호화 요청하여 원문 메시지를 수신받은 이후로 새로운 암호문 메시지가 발생된 사실이 없는 것을 의미한다. 조회에 실패되는 예를 들면, 암호화 서버(3)에 저장된 원문 메시지가 없거나 암호 어플리케이션(200)으로부터 수신된 일련 번호보다 큰 일련 번호의 원문 메시지가 없는 경우이다.
또한, 상기 복호화 요청 정보의 상기 메시지 어플리케이션 정보는 서비스 정책에 따라서 선택적으로 생략될 수 있는 정보임을 위에서 설명한 바 있다. 메시지 어플리케이션 식별 정보가 포함될 경우, 암호 어플리케이션(200)의 복호화 요청부(25)는 현재 실행 중인 메시지 어플리케이션의 식별 정보를 이용하여 복호화 요청을 전송한다. 그러면, 암호 어플리케이션(200)은 메시지 원문 제공부(36)로부터 회원 아이디/암호 및 메시지 어플리케이션의 식별 정보에 대응되고, 마지막 일련 번호보다 큰 일련 번호의 원본 메시지를 수신할 수 있다.
예를 들어, 사용자 단말(2)에서 A 메시지 프로그램이 실행된 상태에서 복호화 요청이 발생되면, A 메시지 프로그램을 통해 입력된 원본 메시지의 수신이 가능하다. 만약, 메시지 어플리케이션 식별 정보가 포함되지 않을 경우, 암호 어플리케이션(200)은 암호화 서버(3)로부터 회원 아이디/암호에 대응하는 전체의 원본 메시지를 수신할 수 있다. 예를 들어, 사용자 단말(2)에서 복호화 요청이 발생되면, 사용자 단말(2)의 전체 메시지 프로그램을 통해 입력된 원본 메시지의 수신이 가능하다.
그러면, 암호 프로그램(200)의 메시지 원문 수신부(26)는 메시지 원문 제공부(36)를 상대로 원문 메시지의 수신 처리를 완료한다. 상기 수신 처리에서, 메시지 원문 제공부(36)의 조회 성공 여부에 따라서 원문 메시지의 수신이 발생될 수도 있고 발생되지 않을 수도 있다. 만약, 메시지 원문 수신부(26)가 일련 번호를 갖는 적어도 하나의 원문 메시지를 수신하면, 암호 어플리케이션(200)의 메시지 저장소에 수신된 원문 메시지를 저장한다. 여기서, 메시지 원문 수신부(26)가 저장한 최신의 원문 메시지는 암호 어플리케이션(200)에 저장된 메시지의 일련 번호 중에서 가장 큰 일련 번호일 뿐만 아니라 마지막 일련 번호이기도 하다.
이후, 메시지 원문 표시부(27)는 상기 메시지 저장소에 저장된 원문 메시지를 모두 읽어들이고, 원문 메시지의 일련 번호 및 메시지를 작성한 사용자의 상기 사용자 식별 정보를 이용하여 메시지의 사용자별로 구분하여 메시지의 발생 순서에 따라 원문 메시지를 화면의 메시지창에 표시한다.
한편, 본 발명의 암호화 서비스는 암호를 공유한 사용자들 사이에서만 원본 메시지를 볼 수 있게 하는데 있다. 메시지 원문 삭제부(37)는 원본 메시지의 수신이 허락된 개별 사용자마다 최초 1회의 복호화 요청 이벤트가 발생되어 원문 메시지의 제공 회수가 사용자 수에 도달할 경우, 원본 메시지의 전송 완료로 판단하여 상기 원본 메시지를 삭제한다. 즉, 원문 메시지의 제공 회수가 사용자 수에 도달할 때까지만 암호화 서버(3)는 원문 메시지를 저장한다.
암호 어플리케이션(200)이 암호화 서버(3)로부터 수신한 원문 메시지는 상기 메시지 저장소에 보관된다. 암호 어플리케이션(200)은 복호화 요청의 이벤트가 발생할 경우, 메시지 저장소를 참조하여 마지막 일련 번호를 암호화 서버(3)로 전송하여 복호화 요청한다.
상기에서, 메시지 어플리케이션은 암호문 메시지로 메시지 통신을 처리하기 때문에 통신 사업자 및 메시지 서비스 사업자는 원문 메시지의 존재를 알 수도 없으며, 확인도 불가능하다.
도 5 내지 도 7은 본 발명의 일 실시예에 따른 사용자 단말(2)의 화면 예시도이다. 도 5 내지 도 7의 예시된 화면은 본 발명의 기술을 한정하는 것이 아니며 필요에 따라 다양한 변형이 가능함은 물론이다.
사용자 단말(2)은 암호 어플리케이션(200)을 실행한다. 여기서, 암호 어플리케이션(200)은 전용 어플리케이션 또는 암호 어플리케이션(200)의 기능이 통합된 응용 어플리케이션으로 제작될 수 있다. 상기 응용 어플리케이션의 예를 들면, 암호 어플리케이션(200)의 기능이 통합된 키보드 어플리케이션 또는 메시지 어플리케이션 등이 있으며 특별한 제한은 없다.
암호 어플리케이션(200)이 실행된 후, 회원 사용자는 로그인을 위해 아이디 및 비밀번호를 입력하여 암호화 서버(3)에 로그인한다. 그리고 로그인이 성공된 회원 사용자는 서비스 이용을 위해 암호 설정자의 아이디 및 암호를 입력하여 암호 인증을 받는다. 물론, 비회원 사용자는 로그인 과정이 생략되고 암호 인증 과정이 수반된다.
도 5를 참조하면, 사용자 단말(2)에서 암호 어플리케이션(200)의 실행 화면을 도시하며, 설명의 편의상 사용자 단말(2)이 스마트 단말인 경우와 컴퓨터 단말인 경우라 가정한다. 또한, 암호 어플리케이션(200)의 기능은 키보드 어플리케이션에 통합되어 암호 어플리케이션(200)의 실행 화면은 키보드 어플리케이션의 실행 화면이라 가정한다. 물론, 상기 키보드 어플리케이션은 운영 체제(OS)에 내장된 어플리케이션이거나 제 3자로부터 제공받은 독립 어플리케이션일 수 있다.
사용자 단말(2)이 스마트 폰인 경우, 암호 어플리케이션(200)의 기능이 통합된 키보드 어플리케이션이 실행될 수 있다. 키보드 어플리케이션에는 암호화 서비스를 요청하는 기능의 "평문 암호"와 같은 키 버튼이 배치될 수 있다. 또는, 암호 어플리케이션(200)의 기능이 사용자에 의해 선택될 수 있게 키보드 어플리케이션의 메뉴에 추가되어도 무방하다.
사용자 단말(2)이 컴퓨터 단말일 경우, 컴퓨터 단말에서는 키보드 장치를 구비하기 때문에 스마트 단말처럼 상기 키보드 어플리케이션의 입력 화면이 별도로 표시되지 않는다. 응용 어플리케이션의 입력 영역에서 키가 선택되면 키보드 어플리케이션의 입력 처리에 의해 선택된 키의 문자가 상기 입력 영역으로 입력된다. 컴퓨터 단말에서 키보드 어플리케이션이 작업 표시줄(task bar)에서 IME(input method editor) 아이콘으로서 표시되는 경우, 아이콘 메뉴에 암호 어플리케이션(200)의 기능이 표시될 수 있다. 여기서, 암호 어플리케이션(200)의 기능이 사용자에 의해 선택될 수 있게 별도의 키 버튼(예 : 2개의 키가 동시에 눌려지는 조합키)으로 정의되어도 무방하다.
도 6을 참조하면, 사용자가 SMS 어플리케이션을 실행하여 암호 어플리케이션(200)이 통합된 키보드 어플리케이션이 표시되는 화면이라 가정한다. 사용자는 키보드 어플리케이션에서 암호 설정을 선택하고 대화 주제를 "비즈니스 회의"로 설정하였다고 가정한다. 그리고 사용자는 SMS 어플리케이션으로 원문 메시지 "신제품 D데이는 내일입니다"를 입력한 경우라 가정한다.
여기서, 사용자가 암호를 설정한 사용자의 회원 아이디/암호를 입력한 후, 암호 인증이 성공되면 암호화를 요청할 수 있다. 암호화 요청에 의해 키보드 어플리케이션은 원문 메시지를 암호화 서버(3)로 전송하고, 암호문 "오늘 개발 회의 있어요"를 수신한다. 그러면, 키보드 어플리케이션은 화면의 SMS 어플리케이션에 입력된 원문 메시지 대신에 암호문 메시지를 대체하여 입력한다. 그러면, SMS 어플리케이션의 화면에는 원문 메시지 대신에 암호문 "오늘 개발 회의 있어요"가 표시된다. 이후, 사용자가 전송 버튼을 누르면, 암호문 메시지가 통신사 서버, SMS 서버 등을 거쳐 상대방에게 전송된다. 그러므로 발신자 및 수신자의 SMS 어플리케이션은 항상 SMS의 메시지 창에서 암호문을 표시한다.
만약, 발신자 및 수신자가 SMS 어플리케이션의 메시지 창에 표시된 암호문을 원문 메시지로 조회하고 싶으면, 암호 인증을 거쳐서 키보드 어플리케이션을 이용하여 복호화를 요청해야만 한다. 발신자 또는 수신자는 경우에 따라서 SMS 메시지 창에 표시된 암호문을 실제 메시지로 착각할 수 있다. 복호화가 요청되면, 키보드 어플리케이션은 로컬 저장소를 조회하여 원문 메시지의 마지막 일련 번호를 조회하고, 마지막 일련 번호를 암호화 서버(3)로 전송하여 원문 메시지를 요청하고, 암호화 서버(3)로부터 마지막 일련 번호보다 큰 일련 번호의 원문 메시지 "신제품 D데이는 내일 입니다"를 다운받아 로컬 저장소에 저장한다.
이후, 키보드 어플리케이션은 회원 아이디/암호 및 SMS 어플리케이션 정보를 조회키로 하여 로컬 저장소에 저장된 전체의 원문 메시지를 읽어들이고, 사용자 및 일련 번호를 구분하여 별도의 메시지 창에 원문 메시지를 표시한다. 그러면, SMS 어플리케이션의 메시지 창에는 암호문 메시지 "오늘 개발 회의 있어요"가 표시되고, 키보드 어플리케이션의 원문 메시지 창에는 원문 메시지 "신제품 D데이는 내일 입니다"가 표시된다. 여기서, 상기 조회키에 메시지 어플리케이션 정보가 없는 경우, 메시지 어플리케이션의 구분없이 회원 아이디/암호로 조회되는 전체 원본 메시지가 조회되어 화면에 표시된다.
도 7을 참조하면, 도 6에서 사용자가 복수 건의 메시지 통신을 수행한 후, SMS 어플리케이션의 암호문 메시지와 키보드 어플리케이션의 원문 메시지를 도시한다. 사용자는 SMS 어플리케이션의 화면과 키보드 어플리케이션의 화면을 전환하면서 각각의 암호문과 원문 메시지를 조회할 수 있다.
키보드 어플리케이션은 복호 요청하여 수신한 원문 메시지를 로컬 저장소에 저장한다. 그리고 키보드 어플리케이션은 복호화 요청할 때마다 암호화 서버(3)로부터 상기 로컬 저장소로 다운로드되지 않은 최신의 원문 메시지를 수신한다. 암호화 서버(3)는 원문 메시지의 제공 회수가 증가하여 설정된 사용자 수와 동일하게 되면 원문 메시지를 삭제한다. 따라서, 암호문 메시지에 설정된 회원 아이디 및 암호를 공유하는 사용자들의 키보드 어플리케이션만 원문 메시지를 수신하여 로컬 저장소에 보관하기 때문에 사용자의 메시지 보안성은 강화될 수 있다. 바람직하게, 키보드 어플리케이션의 암호화 요청 및 복호화 요청은 사용자의 암호 인증이 성공될 경우에 한하여 처리될 수 있다.
<2. 방법 구성>
본 발명의 일 실시예에 따른 메시지를 일상 대화로 암호화하는 정보 암호화 방법은 전술한 정보 암호화 시스템(1)의 구축을 통하여 바람직하게 실현될 수 있다.
도 8은 본 발명의 일 실시예에 따른 정보 암호화 방법의 개략적 순서도이다.
사용자 단말(2)은 암호 어플리케이션(200)을 다운받아 설치한다. 암호 어플리케이션(200)은 전용 어플리케이션으로 설치되거나 또는 암호화 및 복호화 처리의 기능이 통합된 기타 응용 어플리케이션(예 : 키보드 어플리케이션, 메시지 어플리케이션 등)으로 설치될 수 있다.
암호 어플리케이션(200)이 실행된 후, 사용자가 암호 설정을 하면, 암호화 서버(3)는 암호 어플리케이션(200)으로부터 암호 설정 정보를 등록받고, 수신된 정보로 암호를 설정한다(S31).
여기서, 상기 암호 설정 정보는 사용자의 회원 아이디/암호, 주제 및 사용자 수 등을 포함한다. 암호화 서버(3)의 홈 페이지에 회원 가입한 사용자는 상기 회원 아이디를 발급받고, 암호를 설정할 수 있다. 상기 암호는 암호화 요청 및 복호화 요청시 요구되는 정보로서 암호 인증이 성공된 사용자들만 메시지의 암호화 및 복호화의 서비스를 제공받을 수 있다. 상기 주제는 암호문의 내용이 분류되는 일상 대화의 주제이다. 암호를 설정한 사용자는 회원 아이디/암호를 메시지를 통신할 상대방 사용자에게 알려주고, 메시지 통신에 참여하는 사용자들은 상기 ID/암호를 공유한다. 사용자 수는 암호를 공유하는 전체 사용자 수를 말하며 각각의 원문 메시지마다 제공 회수가 사용자 수에 도달하면, 암호화 서버(3)는 해당 원문 메시지를 삭제한다.
암호 설정이 완료된 이후로, 사용자가 메시지의 암호화 요청 또는 복호화 요청을 하려면, 설정된 회원 아이디 및 암호를 입력하여 암호 인증을 받아야 한다. 회원 사용자는 암호 어플리케이션(200)을 실행한 후 로그인 창에 로그인 아이디 및 로그인 암호를 입력할 수 있다. 비회원 사용자는 로그인 과정이 생략되어도 무방하다.
이후, 회원 또는 비회원 사용자는 암호를 설정한 회원 아이디 및 메시지에 설정된 암호를 입력한다. 이때, 입력된 암호는 로그인 암호와는 별개이다. 암호화 서버(3)는 암호 어플리케이션(200)으로부터 회원 아이디/암호를 수신하여 사용자의 암호 인증을 처리하고, 암호 인증이 성공된 사용자를 상대로 메시지의 암호화 및 복호화 서비스를 제공할 수 있다. 암호 어플리케이션(200)이 실행될 때마다, 최초로 서비스를 요청하는 인스턴스에서 암호 인증이 성공되면, 다음번 인스턴스부터는 암호 인증이 생략되어도 무방하다.
사용자 단말(2)에서 암호화 요청의 이벤트가 발생되면, 암호화 서버(3)는 암호 어플리케이션(200)으로부터 원문 메시지가 포함된 암호화 요청을 수신한다(S32).
여기서, 상기 암호 인증이 성공된 사용자가 원문 메시지를 메시지 어플리케이션(예 : SMS, SNS, 메일, 채팅 등)의 입력창에 입력한 상태에서 암호 어플리케이션(200)을 통해 암호화를 요청하면, 암호화 요청의 이벤트가 발생된다. 암호화 요청을 수신한 암호화 서버(3)는 상기 ID/암호에 대응되도록 원문 메시지에 일련 번호를 부여하여 저장한다.
원문 메시지가 저장되면, 암호화 서버(3)는 설정된 주제에서 수신된 원문 메시지에 대응하는 암호문을 조회하여 암호 어플리케이션(200)으로 응답한다(S33).
여기서, 암호화 서버(3)는 메시지 통신에 참여하는 화자를 식별하여 대화의 흐름이 이어지는 암호문을 조회한다. 예를 들어, 사용자 A, B, C의 3명이 통신할 경우, 암호화 서버(3)는 설정된 주제의 암호문 중에서 각각의 사용자를 식별하여 3인의 대화 내용이 의미적으로 연관되는 암호문을 결정한다. 사용자 A가 암호화를 요청하여 암호문이 제공된 상태라 가정한다. 여기서, A가 다시 암호화를 요청하면, 도 4의 트리 구조를 통해 이전 레벨에서 A에게 제공된 암호문의 자식 레벨에서 A의 메시지를 조회한다. 만약, A가 아닌 B 또는 C가 암호화를 요청한 경우, 상기 자식 레벨에서 상대방 B 또는 C의 응답 메시지를 선택하여 제공한다.
암호화 요청에 따라 암호문이 암호 어플리케이션(200)으로 제공된 이후에, 암호화 서버(3)는 암호 어플리케이션(200)으로부터 복호화 요청을 수신하면, 암호 어플리케이션(200)으로 원문 메시지를 제공할 수 있다.
사용자 단말(2)에서 복호화 요청의 이벤트가 발생되면, 암호화 서버(3)는 암호 어플리케이션(200)으로부터 암호 어플리케이션(200)의 로컬 저장소에 있는 원문 메시지들 중에서 가장 큰 일련 번호를 포함하는 복호화 요청을 수신한다(S35).
상기 단계(S31) 이후에, 상기 암호 인증이 성공된 사용자가 메시지 어플리케이션을 실행한 상태에서, 암호 어플리케이션(200)을 통해 복호화를 요청한다. 그러면, 복호화 요청의 이벤트가 발생된다.
복호화 요청이 수신되면, 암호화 서버(3)는 수신된 상기 일련 번호보다 큰 일련 번호를 갖는 전체 원문 메시지를 조회하여 암호 어플리케이션(200)으로 제공한다(S36).
만약, 암호화 서버(3)가 상기 원문 메시지를 조회하는데 실패한 경우라면, 암호 어플리케이션(200)은 이미 전체 원문 메시지를 다운받은 상태이며, 마지막 다운로드 이후 새로운 암호문 메시지 발생이 없다는 것을 의미한다. 또한, 암호화 서버(3)가 원문 메시지를 요청한 사용자의 식별 정보를 키로 하여 원문 메시지의 다운로드 사실이 조회되면, 암호화 서버(3)는 원문 메시지를 제공하지 않는다. 여기서, 현재 실행 중인 메시지 프로그램의 식별 정보를 이용할 경우, 상기 메시지 프로그램을 통해 입력된 원문 메시지만을 제공할 수 있음을 위에서 설명한 바 있다.
개별 원문 메시지의 제공 회수가 상기 단계(S31)에서 설정된 사용자 수와 일치하면, 암호화 서버(3)는 상기 원문 메시지를 삭제한다(S37).
여기서, 원문 메시지가 암호 어플리케이션(200)으로 제공되면, 암호화 서버(3)는 원문 메시지를 수신한 사용자를 식별하여 제공된 원문 메시지의 제공 회수를 1씩 증가시킨다. 암호를 공유하는 메시지의 모든 사용자들이 개별 원문 메시지를 제공받으면, 개별 원문 메시지의 제공 회수는 사용자 수와 일치하게 된다. 이때, 각각의 사용자의 암호 어플리케이션(200)은 로컬 저장소에 원문 메시지를 이미 저장하고 있다. 따라서, 암호화 서버(3)는 상기 원문 메시지를 삭제하여 제 3자로부터 보안을 유지할 수 있다.
이후, 암호 어플리케이션(200)이 암호화 서버(3)로부터 적어도 하나의 원문 메시지를 수신하면, 수신된 원문 메시지를 로컬 저장소에 저장한다. 물론, 암호 어플리케이션(200)이 최신의 원문 메시지를 이미 저장한 경우, 암호화 서버(3)로부터 원문 메시지를 수신하지 않을 수 있다.
그러면, 암호 어플리케이션(200)은 로컬 저장소로부터 현재 실행 중인 메시지 어플리케이션의 정보에 대응하는 전체 원문 메시지를 읽어들이고, 상기 원문 메시지의 작성자(화자)와 일련 번호(대화 순서)를 식별하여 암호 어플리케이션(200)의 메시지 창에 화자 및 대화 순서에 맞게 원문 메시지를 표시한다. 여기서, 메시지 어플리케이션의 화면에서는 암호문의 대화 리스트가 표시되고, 암호 어플리케이션(200)의 화면에서는 원문의 대화 리스트가 표시된다. 사용자는 어플리케이션의 화면과 암호 어플리케이션(200)의 화면을 전환하여 암호문 및 원문의 메시지 조회가 가능하다.
상술한 실시예에서, "~부"라는 용어는 정보 암호화 시스템(1)의 하드웨어적 구분을 의미하는 용어로 사용된 것이 아니다. 따라서 복수의 구성부가 하나의 구성부로 통합될 수도 있고, 하나의 구성부가 복수의 구성부로 분할될 수도 있다. 또한, 구성부는 하드웨어 구성부를 의미할 수도 있지만, 소프트웨어의 구성부를 의미할 수도 있다. 따라서 본 발명은 "~부"라는 용어에 의해 특별히 한정되지 않음을 이해하여야 할 것이다.
본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.
1 : 정보 암호화 시스템 2 : 사용자 단말
200 : 암호 어플리케이션 3 : 암호화 서버
4 : 메시지 서버

Claims (18)

  1. 사용자의 암호문 설정을 요청받고, 요청된 설정 정보에 포함된 사용자의 회원 아이디, 암호 및 암호문의 주제를 설정하는 암호화 설정부;
    암호화 처리를 요청받아 사용자의 메시지 원문을 전송받는 암호화 요청 수신부;
    암호화가 요청된 상기 메시지에 대해 상기 주제에 맞는 일상 대화의 암호문을 결정하여 암호화 처리하고, 결정된 암호문을 제공하는 암호문 제공부;
    복호화 처리를 요청받는 복호화 요청 수신부; 및
    복호화가 요청된 상기 암호문에 대응하여 기 저장된 상기 메시지 원문을 조회하여 복호화 처리하고, 조회된 메시지 원문을 제공하는 메시지 원문 제공부
    를 포함하는 암호화 서버를 포함하고,
    상기 암호화 서버는, 상기 회원 아이디 및 상기 암호의 인증이 성공된 사용자를 대상으로 상기 암호화 처리 및 상기 복호화 처리의 서비스를 제공하는 것을 특징으로 하는 정보 암호화 시스템.
  2. 제 1항에 있어서,
    상기 암호화 서버는,
    상기 주제별로 복수개의 암호문을 사용자들간의 일상 대화로 저장하는 암호문 관리부를 더 포함하며, 제 1 암호문은 다음번 대화로서 복수개의 제 2암호문과 대응되며, 상기 제 2암호문은 제 1암호문의 사용자와 동일한 사용자의 대화 및 제 1암호문의 사용자의 상대방 대화로 구성되는 것을 특징으로 하는 정보 암호화 시스템.
  3. 제 1항에 있어서,
    상기 암호화 설정부는,
    상기 복호화 처리에 의해 메시지 원문의 수신이 허락되는 메시지의 사용자 수를 더 전송받아 암호화 설정을 요청받는 것을 특징으로 하는 정보 암호화 시스템.
  4. 제 3항에 있어서,
    상기 메시지 원문 제공부는,
    상기 복호화 처리의 요청에 대하여, 개별 메시지 원문에 대해 수신이 허락된 개별 사용자마다 1회만 제공하는 것을 특징으로 하는 정보 암호화 시스템.
  5. 제 1항에 있어서,
    상기 암호화 서버는,
    상기 메시지 원문의 수신이 허락된 사용자 전원에게 복호화 처리된 상기 메시지 원문의 제공이 완료된 경우, 상기 메시지 원문을 삭제하는 메시지 원문 삭제부를 더 포함하는 것을 특징으로 하는 정보 암호화 시스템.
  6. 제 1항에 있어서,
    회원 아이디, 상기 암호, 상기 주제, 메시지의 사용자 수를 포함하는 암호화 설정의 요청을 전송하는 암호화 설정 요청부;
    메시지 어플리케이션에 입력된 상기 메시지 원문을 전송하여 암호화 처리를 요청하는 암호화 요청부;
    요청된 상기 메시지가 암호화 처리된 상기 암호문을 제공받는 암호문 수신부;
    상기 메시지 어플리케이션에서 메시지 원문을 삭제하고 대신에 상기 암호문으로 대체하는 암호문 대체부;
    사용자의 요청에 의해 상기 복호화 처리를 요청하는 복호화 요청부;
    상기 복호화 처리의 요청에 의해 상기 메시지 원문을 제공받아 저장하는 메시지 원문 수신부; 및
    저장된 메시지 원문을 읽어들여 화면에 표시하는 메시지 원문 표시부를 포함하는 사용자 단말을 더 포함하는 것을 특징으로 하는 정보 암호화 시스템.
  7. 제 1항 또는 제 6항에 있어서,
    상기 암호화 서버는,
    사용자 단말로부터 암호화가 요청된 메시지 원본에 대하여 일련 번호를 부여하여 저장하고, 사용자 단말로부터 사용자 단말에 저장된 마지막 일련 번호가 포함된 복호화 요청을 수신하고, 상기 마지막 일련 번호보다 일련 번호가 큰 적어도 하나의 메시지 원문을 제공하는 것을 특징으로 하는 정보 암호화 시스템.
  8. 제 7항에 있어서,
    상기 사용자 단말은,
    복호화 요청의 이벤트가 발생되면, 상기 마지막 일련 번호를 상기 암호화 서버로 전송하여 복호화 처리를 요청하고, 상기 암호화 서버로부터 상기 마지막 일련 번호보다 일련 번호가 큰 적어도 하나의 메시지 원문을 제공받아 저장하는 것을 특징으로 하는 정보 암호화 시스템.
  9. 삭제
  10. 암호화 서버가 사용자 단말로 사용자의 메시지 원문 및 암호문 사이에서 암호화 및 복호화 서비스를 제공하는 정보 암호화 방법에 있어서,
    (a)상기 사용자 단말로부터 암호문 설정을 요청받고, 요청된 설정 정보에 포함된 사용자의 회원 아이디, 암호 및 암호문의 주제를 설정하는 암호화 설정 단계;
    (b)상기 사용자 단말로부터 암호화 처리를 요청받아 사용자의 메시지 원문을 전송받는 암호화 요청 수신 단계;
    (c)상기 메시지 원문에 대해 상기 주제에 맞는 일상 대화의 암호문을 결정하여 암호화 처리하고, 상기 암호문을 상기 사용자 단말로 제공하는 암호문 제공 단계;
    (d)상기 사용자 단말로부터 복호화 처리를 요청받는 복호화 요청 수신 단계; 및
    (e)복호화가 요청된 상기 암호문에 대응하여 기 저장된 상기 메시지 원문을 조회하여 복호화 처리하고, 조회된 메시지 원문을 상기 사용자 단말로 제공하는 메시지 원문 제공 단계
    를 포함하고,
    상기 암호화 서버는, 상기 회원 아이디 및 상기 암호의 인증이 성공된 사용자를 대상으로 상기 단계(b)의 암호화 처리 및 상기 단계(d)의 복호화 처리의 서비스를 제공하는 것을 특징으로 하는 정보 암호화 방법.
  11. 제 10항에 있어서,
    상기 단계(a) 이전에,
    상기 암호화 서버는 상기 주제별로 복수개의 암호문을 사용자들간의 일상 대화로 저장하는 암호문 관리 단계를 더 포함하고,
    제 1 암호문은 다음번 대화로서 복수개의 제 2암호문과 대응되며, 상기 제 2암호문은 제 1암호문의 사용자와 동일한 사용자의 대화 및 제 1암호문의 사용자의 상대방 대화로 구성되는 것을 특징으로 하는 정보 암호화 방법.
  12. 제 10항에 있어서,
    상기 단계(a)는,
    상기 암호화 서버가 상기 복호화 처리에 의해 메시지 원문의 수신이 허락되는 메시지의 사용자 수를 더 전송받아 암호화 설정을 요청받는 단계인 것을 특징으로 하는 정보 암호화 방법.
  13. 제 10항에 있어서,
    상기 단계(e)는,
    상기 암호화 서버가 상기 복호화 처리의 요청에 대하여 개별 메시지 원문에 대해 수신이 허락된 개별 사용자마다 1회만 제공하는 것을 특징으로 하는 정보 암호화 방법.
  14. 제 10항에 있어서,
    상기 단계(e) 이후에,
    상기 단계(e)의 각각의 메시지 원문의 제공 회수가 설정된 메시지의 사용자 수에 일치하면, 상기 암호화 서버가 상기 메시지 원문을 삭제하는 메시지 원문 삭제 단계를 더 포함하는 것을 특징으로 하는 정보 암호화 방법.
  15. 제 10항에 있어서, 사용자 단말의 실행 단계로서,
    상기 단계(a)에서 회원 아이디, 상기 암호, 상기 주제, 메시지의 사용자 수를 포함하는 암호화 설정의 요청을 전송하는 암호화 설정 요청 단계;
    상기 단계(b)에서 메시지 어플리케이션에 입력된 상기 메시지 원문을 전송하여 암호화 처리를 요청하는 암호화 요청 단계;
    상기 단계(c)에서 상기 암호문을 제공받는 암호문 수신 단계;
    상기 단계(c)에서 상기 메시지 어플리케이션에서 메시지 원문을 삭제하고 대신에 상기 암호문으로 대체하는 암호문 대체 단계;
    상기 단계(d)에서 사용자의 요청에 의해 상기 복호화 처리를 요청하는 복호화 요청 단계;
    상기 단계(e)에서 상기 복호화 처리의 요청에 의해 상기 메시지 원문을 제공받아 저장하는 메시지 원문 수신 단계; 및
    상기 단계(e) 이후에 저장된 메시지 원문을 읽어들여 화면에 표시하는 메시지 원문 표시 단계를 포함하는 것을 특징으로 하는 정보 암호화 방법.
  16. 제 10항 또는 제 15항에 있어서,
    상기 암호화 서버는,
    상기 단계(b)에서 암호화가 요청된 메시지 원본에 대하여 일련 번호를 부여하여 저장하는 단계;
    상기 단계(d)에서 사용자 단말에 저장된 마지막 일련 번호가 포함된 복호화 요청을 수신하는 단계; 및
    상기 단계(e)에서 상기 마지막 일련 번호보다 일련 번호가 큰 적어도 하나의 메시지 원문을 제공하는 단계를 실행하는 것을 특징으로 하는 정보 암호화 방법.
  17. 제 16항에 있어서,
    상기 사용자 단말은,
    상기 단계(d)에서 복호화 요청의 이벤트가 발생되면, 상기 마지막 일련 번호를 상기 암호화 서버로 전송하여 복호화 처리를 요청하는 단계; 및
    상기 단계(e)에서 상기 암호화 서버로부터 상기 마지막 일련 번호보다 일련 번호가 큰 적어도 하나의 메시지 원문을 제공받아 저장하는 단계를 실행하는 것을 특징으로 하는 정보 암호화 방법.
  18. 삭제
KR20130069143A 2013-06-17 2013-06-17 메시지를 일상 대화로 암호화하는 정보 암호화 시스템 및 정보 암호화 방법 KR101489447B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20130069143A KR101489447B1 (ko) 2013-06-17 2013-06-17 메시지를 일상 대화로 암호화하는 정보 암호화 시스템 및 정보 암호화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130069143A KR101489447B1 (ko) 2013-06-17 2013-06-17 메시지를 일상 대화로 암호화하는 정보 암호화 시스템 및 정보 암호화 방법

Publications (2)

Publication Number Publication Date
KR20140146432A KR20140146432A (ko) 2014-12-26
KR101489447B1 true KR101489447B1 (ko) 2015-02-03

Family

ID=52590214

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130069143A KR101489447B1 (ko) 2013-06-17 2013-06-17 메시지를 일상 대화로 암호화하는 정보 암호화 시스템 및 정보 암호화 방법

Country Status (1)

Country Link
KR (1) KR101489447B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101644168B1 (ko) 2015-12-14 2016-07-29 스텔스소프트웨어 주식회사 소셜 네트워크 서비스를 이용한 메시지 보안 시스템 및 그 방법, 그리고 이 방법을 처리하는 컴퓨터 프로그램이 저장된 저장 매체
KR101663250B1 (ko) * 2015-05-22 2016-10-14 고려대학교 산학협력단 거부적 암호화를 이용한 비밀 채팅 장치 및 그 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102310811B1 (ko) * 2019-10-17 2021-10-08 한국전자인증 주식회사 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100827185B1 (ko) * 2006-11-24 2008-05-02 주식회사 케이티프리텔 사생활 보호가 가능한 보안 메시지 송수신 방법 및 이를위한 이동통신 단말기
KR101049729B1 (ko) * 2005-08-02 2011-07-19 에스케이 텔레콤주식회사 휴대 인터넷 시스템에서 가입자별 또는 서비스 유형별암호화 방법 및 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101049729B1 (ko) * 2005-08-02 2011-07-19 에스케이 텔레콤주식회사 휴대 인터넷 시스템에서 가입자별 또는 서비스 유형별암호화 방법 및 시스템
KR100827185B1 (ko) * 2006-11-24 2008-05-02 주식회사 케이티프리텔 사생활 보호가 가능한 보안 메시지 송수신 방법 및 이를위한 이동통신 단말기

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101663250B1 (ko) * 2015-05-22 2016-10-14 고려대학교 산학협력단 거부적 암호화를 이용한 비밀 채팅 장치 및 그 방법
KR101644168B1 (ko) 2015-12-14 2016-07-29 스텔스소프트웨어 주식회사 소셜 네트워크 서비스를 이용한 메시지 보안 시스템 및 그 방법, 그리고 이 방법을 처리하는 컴퓨터 프로그램이 저장된 저장 매체

Also Published As

Publication number Publication date
KR20140146432A (ko) 2014-12-26

Similar Documents

Publication Publication Date Title
KR102480096B1 (ko) 임시 컨텐츠 메시지를 처리하기 위한 방법들 및 시스템들
CN105229985B (zh) 标识令牌
US9590949B2 (en) Confidential message exchange using benign, context-aware cover message generation
US10819687B2 (en) Apparatus and method of encrypted communication
Choi et al. Digital forensic analysis of encrypted database files in instant messaging applications on Windows operating systems: Case study with KakaoTalk, NateOn and QQ messenger
US9985933B2 (en) System and method of sending and receiving secret message content over a network
WO2020019387A1 (zh) 一种视频资源文件的获取方法和管理系统
CN104394530A (zh) 一种基于智能手机的微信内容加密系统及其实现方法
KR101489446B1 (ko) 광학 문자 인식을 이용하는 정보 암호화 시스템 및 정보 암호화 방법
WO2016130466A1 (en) Systems and methods for managing access to message content
KR101589111B1 (ko) 보안 채팅 서비스 제공 방법 및 이를 실행하는 시스템
JP2020526991A (ja) マルチエージェントメッセージングのための技法
CN104270516A (zh) 解密方法和移动终端
CN104202736A (zh) 面向Android系统的移动终端短信端到端加密方法
CN107666395A (zh) 一种群文件管理方法、用户终端、群聊系统
CN106027530A (zh) 一种基于智能手机的即时消息加密系统及其实现方法
KR101489447B1 (ko) 메시지를 일상 대화로 암호화하는 정보 암호화 시스템 및 정보 암호화 방법
KR101379711B1 (ko) 전화번호를 이용한 파일 암호화 및 복호화 방법
CN112637230B (zh) 一种即时通信方法及系统
CN105323254A (zh) 一种基于国产商用密码芯片的邮件加密系统及其实现方法
CN115242779B (zh) 基于小程序的文件传输方法、系统及电子设备
CN105471711A (zh) 一种基于智能手机的邮件加密系统及其实现方法
KR100931986B1 (ko) 단말기 및 메시지 송수신 방법
US20150242501A1 (en) Social network address book
CN103986640A (zh) 一种可保障用户通讯内容安全的即时通讯方法及其系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20180110

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190109

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20191105

Year of fee payment: 6