KR101511451B1 - 키보드 입력 정보 암호화 방법 - Google Patents

키보드 입력 정보 암호화 방법 Download PDF

Info

Publication number
KR101511451B1
KR101511451B1 KR20130152975A KR20130152975A KR101511451B1 KR 101511451 B1 KR101511451 B1 KR 101511451B1 KR 20130152975 A KR20130152975 A KR 20130152975A KR 20130152975 A KR20130152975 A KR 20130152975A KR 101511451 B1 KR101511451 B1 KR 101511451B1
Authority
KR
South Korea
Prior art keywords
running
app
application
text
security
Prior art date
Application number
KR20130152975A
Other languages
English (en)
Inventor
박형배
Original Assignee
플러스기술주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 플러스기술주식회사 filed Critical 플러스기술주식회사
Priority to KR20130152975A priority Critical patent/KR101511451B1/ko
Application granted granted Critical
Publication of KR101511451B1 publication Critical patent/KR101511451B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Telephone Function (AREA)

Abstract

본 발명은 스마트 폰의 키보드 입력 정보를 해킹 프로그램이 화면을 캡쳐해도 입력 텍스트를 알 수 없도록 하여 정보가 유출되는 것을 방지하는 방법을 제안한다. 스마트 폰의 키보드 입력 정보를 암호화하는 방법은, 송신 측 스마트 폰에 설치된 키보드 보안 프로그램에 의하여, 상기 송신 측 스마트 폰에서 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계; 및 상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하는 단계를 포함할 수 있다.

Description

키보드 입력 정보 암호화 방법{METHOD OF ENCRYPTION TO KEYBOARD INPUT INFORMATION}
아래의 설명은 암호화 하는 기술에 관한 것으로, 단말기의 키보드 입력 정보를 암호화하는 방법에 관한 것이다.
정보통신 기술의 발달에 따라 스마트 폰, PDA(Personal Digital Assistants) 등의 단말은 멀티미디어 기능을 지원할 수 있게 되었다. 스마트 기기가 일상 생활과 밀접한 관계를 갖게 되면서, 개인의 중요 정보가 외부로 유출될 수 있는 위험성이 커지게 되었다. 이에 따라 암호화를 통해 해킹을 방지하는 방법이 제안되고 있다.
한국공개특허 제2004-0009575호는 키스트록 데이터의 해킹 방지 방법 및 이를 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 보안 키보드 드라이버와 보안 입력창 제어부 간 직접 통신을 통해 특수문자를 입력창에 표시하며, 실제적인 패스워드 키 값은 블록 암호화를 통해 제공됨으로, 패스워드의 문자 수도 알 수 없을 뿐만 아니라 사용자의 중요한 정보 중의 하나인 패스워드의 해킹을 원천적으로 방지할 수 있다. 하지만, 이와 같은 종래의 기술은 키보드와 응용 프로그램 사이에서 발생할 수 있는 정보를 유출하는 방법에 대해서는 제안하고 있지 못하는 문제점이 있다.
실시예들은 스마트 폰의 키보드 입력 정보를 암호화함으로써, 키보드와 응용 프로그램 사이에서 발생할 수 있는 정보 유출을 방지할 수 있는 방법을 제공한다.
일실시예에 따른 스마트 폰의 키보드 입력 정보를 암호화하는 방법은, 송신 측 스마트 폰에 설치된 키보드 보안 프로그램에 의하여, 상기 송신 측 스마트 폰에서 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계; 및 상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하는 단계를 포함할 수 있다.
일측에 따르면, 상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하는 단계는, 상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하여, 상기 암호화된 입력 텍스트가 상기 실행 중인 앱의 표시 창에 표시되도록 하는 단계를 포함할 수 있다.
또 다른 일측에 따르면, 상기 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계는, 상기 입력 스트링을 상기 실행 중인 앱에 표시 가능한 알파벳 및 숫자의 조합 스트링으로 암호화하는 단계를 포함할 수 있다.
또 다른 일측에 따르면, 상기 송신 측 스마트 폰에서 실행 중인 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계는, 상기 송신 측 스마트 폰에서 실행되는 모든 앱을 모니터링하는 단계; 상기 실행 중인 앱이 보안 대상 앱인지 여부를 판단하는 단계; 상기 실행 중인 앱이 보안 대상 앱인 경우, 상기 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계; 및 상기 실행 중인 앱이 보안 대상 앱이 아닌 경우, 상기 실행 중인 앱에 대한 입력 텍스트를 암호화 하지 않고, 실행 중인 앱에 상기 입력 텍스트를 그대로 전달하는 단계를 포함할 수 있다.
또 다른 일측에 따르면, 상기 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계는, 상기 실행 중인 앱이 접속하는 사이트의 URL을 식별하는 단계; 상기 실행 중인 앱이 식별하는 사이트의 URL에 따라 접속할 토큰 서버를 결정하는 단계; 상기 결정된 토큰 서버에 보안 토큰을 요청하는 단계; 상기 결정된 토큰 서버로부터 상기 보안 토큰을 수신하는 단계; 및 상기 수신된 보안 토큰을 이용하여 상기 입력 텍스트를 암호화하는 단계를 포함할 수 있다.
또 다른 일측에 따르면, 상기 스마트 폰의 키보드 입력 정보를 암호화하는 방법은, 상기 결정된 토큰 서버로부터 상기 보안 토큰을 수신하지 못하는 경우, 상기 입력 텍스트를 암호화하지 않고 상기 실행 중인 앱에 전달하는 단계를 더 포함할 수 있다.
또 다른 실시예에 따른 스마트 폰의 보안을 위한 키보드 입력 정보 암호화 시스템은, 보안 토큰의 요청에 응답하여 보안 토큰을 제공하는 복수 개의 토큰 서버; 및 설치된 키보드 보안 프로그램에 의하여, 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 상기 토큰 서버에 의하여 제공된 토큰을 이용하여 암호화하고, 상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하는 스마트 폰을 포함할 수 있다.
일측에 따르면, 상기 스마트 폰은 상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하여, 상기 암호화된 입력 텍스트가 상기 실행 중인 앱의 표시 창에 표시되도록 할 수 있다.
실시예들에 따르면, 스마트 폰의 키보드 입력 정보를 암호화함에 있어서, 암호화된 텍스트를 실행 중인 앱으로 전달하여 암호화된 입력 텍스트가 실행 중인 앱의 표시 창에 표시될 수 있어 키보드와 응용 프로그램 사이에서 발생할 수 있는 정보 유출을 방지할 수 있다.
도 1은 일실시예에 따른 키보드 입력 정보 암호화 시스템의 구성을 나타낸 도면이다.
도 2는 일실시예에 따른 키보드 입력 정보 암호화 방법을 나타낸 흐름도이다.
도 3은 종래의 키보드 입력 암호화 동작을 나타낸 도면이다.
도 4는 일실시예에 따른 키보드 입력 정보 암호화 시스템의 동작을 나타낸 도면이다.
이하, 실시예들을 첨부한 도면을 참조하여 상세히 설명한다.
도 1은 일실시예에 따른 키보드 입력 정보 암호화 시스템의 구성을 나타낸 도면이다.
키보드 입력 정보 암호화 시스템(100)은 스마트 폰의 키보드 입력 정보를 암호화 하기 위한 시스템으로서, 토큰 서버(110) 및 스마트 폰(120)으로 구성될 수 있다. 스마트 폰(120)에는 키보드 입력 정보 암호화를 위한 보안 키보드 앱이 설치될 수 있다. 보안 키보드 앱은 스마트 폰(120)에 설치된 키보드 앱을 대치하며, 모든 키보드 입력은 상기 보안 키보드 앱을 통하여 처리되도록 설정될 수 있다. 키보드 입력 정보 암호화 시스템(100)은 토큰 서버(110)와 스마트 폰(120)의 암호화 및 부호화를 수행함으로써 동작될 수 있다.
유출되지 않도록 보호되어야 하는 데이터는 주민등록번호, 은행 계좌 번호나 신용 카드 번호 등의 금융 거래 정보, 의료 기록, 범죄 기록, 운전면허나 차량 등록번호 등의 자동차 관련 정보, 주식 거래 정보 등이 해당될 수 있다. 정보 보호 기술은 데이터 전송 과정 및 저장 단계에서 데이터 보호되어야 하는 정보의 유출을 방지할 수 있다.
토큰 서버(110)는 보안 토큰의 요청에 응답하여 보안 토큰을 제공할 수 있다. 상기 보안 토큰은 유출되지 않도록 보호되어야 하는 데이터의 암호화에 이용될 수 있다. 토큰을 이용한 암호화 방법으로는 암호화 알고리즘은 MD5, SHA, RSA, AES 등 다양한 암호화 알고리즘이 이용될 수 있다. 또한, 보안 토큰의 생성에도 다양한 토큰 생성 알고리즘이 이용될 수 있다. 상기 암호화 방법 및 토큰 생성 방법은 본 기술이 속한 분야에 여러 가지 방법이 알려져 있으므로, 여기서는 그 설명을 생략한다.
스마트 폰(120)은 설치된 키보드 보안 프로그램(예를 들어, 보안 키보드 앱)에 의하여 실행 중인 앱에 대한 입력 텍스트를 실행 중인 앱에 전달되기 전 토큰 서버(110)에 의하여 제공된 토큰을 이용하여 암호화하고, 암호화된 텍스트를 실행 중인 앱으로 전달할 수 있다. 또한, 스마트 폰(120)은 암호화된 텍스트를 실행 중인 앱으로 전달하여 암호화된 입력 텍스트가 실행 중인 앱의 표시 창에 표시되도록 할 수 있다.
예를 들면, 도 4를 참고하면, 키보드 보안 프로그램이 설치된 스마트 폰에서 사용자에 의해 실행 중인 앱에서 "학교에 갑니다" 라는 텍스트가 입력된다면, 입력된 텍스트가 실행 중인 앱에 전달되기 전 토큰 서버에 의하여 제공된 토큰을 이용하여 암호화할 수 있다. 토큰 서버에 의하여 제공된 토큰을 이용하여 암호화된 텍스트가 "Txes32s12sxs"라면, 암호화된 텍스트인 "Txes32s12sxs"가 실행 중인 앱으로 전달될 수 있고, 스마트 폰의 화면에는 암호화된 "Txes32s12sxs" 스트링이 출력될 수 있다. 본 실시예에 따르면, 해킹 프로그램으로 실행 중인 앱을 캡쳐해도 입력된 텍스트를 알 수 없으므로 정보가 유출되는 것을 방지할 수 있다. 예를 들어, 위와 같은 경우, 해킹 프로그램이 스마트 폰의 화면을 캡쳐하여도 ""Txes32s12sxs"만을 보게 되므로, 원래의 텍스트가 "학교에 갑니다"였다는 사실을 알 수 없다.
또한, 키보드 입력 정보 암호화 시스템은 실행 중인 앱이 접속하는 사이트의 URL을 식별할 수 있다. URL(Uniform Resource Locator)이란 자원 위치 지정자로서, 방대한 컴퓨터 네트워크에서 자신이 원하는 정보 자원을 찾기 위해서 해당 정보 자원의 위치와 종류를 파악할 필요가 있는데, 이를 나타내는 일련의 규칙을 의미할 수 있다. URL은 프로토콜, 정보 자원을 가진 컴퓨터의 위치, 파일 디렉토리, 자원 이름을 포함하는 구조를 가질 수 있다.
실행 중인 앱이 식별하는 사이트의 URL에 따라 접속할 토큰 서버(110)를 결정할 수 있다. 예를 들면, http, ftp, mailto 와 같은 프로토콜 및 검색 사이트, static.naver.com와 같은 정보 자원을 가진 컴퓨터의 위치, www/u/2010/0611와 같은 파일 디렉토리, nmms_2156.gif 와 같은 자원 이름 및 여행 사이트, 인터넷 검색 포털 사이트와 같은 URL 기준에 의해 접속할 토큰 서버를 결정할 수 있다. 예를 들어, 인터넷 검색 포털 사이트는 토큰 서버1, 여행 사이트는 토큰 서버 2로 결정할 수 있다. 이 경우, 실행 중인 앱이 접속하려는 사이트가 "http://www.***.com"이라는 인터넷 검색 포털 사이트인 경우, 토큰 서버 1을 토큰 서버로 이용하게 된다. 또한, 실행 중인 앱이 접속하려는 사이트가 "http://www.travel.com"이라는 여행 사이트인 경우, 토큰 서버 2를 토큰 서버로 이용하게 된다. 키보드 입력 정보 암호화 시스템은 결정된 토큰 서버(110)에 보안 토큰을 요청할 수 있고, 결정된 토큰 서버(110)로부터 보안 토큰을 수신할 수 있다. 예를 들면, 키보드 입력 정보 암호화 시스템은 실행 중인 앱이 식별하는 URL이 인터넷 검색 포털 사이트라면, 토큰 서버 1에 보안 토큰을 요청할 수 있고, 토큰 서버 1로부터 보안 토큰을 수신할 수 있다. 키보드 입력 정보 암호화 시스템은 수신된 보안 토큰을 이용하여 입력 텍스트를 암호화할 수 있다. 이때, 결정된 토큰 서버로부터 보안 토큰을 수신하지 못하는 경우, 입력 텍스트를 암호화하지 않고 실행 중인 앱에 전달할 수 있다. 일 실시예에 따른 키보드 입력 정보 암호화 시스템은 접속 URL에 따라 암호화 여부를 결정할 수 있다.
도 2는 일실시예에 따른 키보드 입력 정보 암호화 방법을 나타낸 흐름도이다.
키보드 입력 정보 암호화 방법은 키보드 입력 정보 암호화 시스템에 의하여 수행될 수 있으며, 키보드 입력 정보 암호화 시스템에 대한 설명은 도 1 및 도 4를 참고하기로 한다.
단계(210)에서 키보드 입력 정보 암호화 시스템은 송신 측 스마트 폰에 설치된 키보드 보안 프로그램에 의하여, 송신 측 스마트 폰에서 실행 중인 앱에 대한 입력 텍스트를 실행 중인 앱에 전달되기 전 암호화할 수 있다.
또한, 키보드 입력 정보 암호화 시스템은 송신 측 스마트 폰에서 실행되는 모든 앱을 모니터링하고, 실행 중인 앱이 보안 대상 앱인지 여부를 판단할 수 있다. 본 실시예에 따르면, 앱 중에는 보안 관련 처리가 필요 없는 앱이 있을 수도 있으므로, 보안 관련 처리가 필요한 보안 대상 앱을 지정함으로써, 모든 앱을 모니터링하지 않아도 되므로, 모니터링 처리를 효율화할 수 있다. 예를 들어, "카카오톡"과 같은 메시지 앱을 통하여는 메시지를 외부에 전송할 수 있으므로, 보안 대상 앱으로 설정하고, "계산기 앱"과 같은 경우는 메시지를 외부에 전송할 수 없으므로, 보안 대상 앱에서 제외할 수 있다.
실행 중인 앱이 보안 대상 앱인 경우, 실행 중인 앱에 대한 입력 텍스트를 실행 중인 앱에 전달되기 전 암호화할 수 있다. 이때, 입력 스트링을 실행 중인 앱에 표시 가능한 알파벳 및 숫자의 조합 스트링으로 암호화할 수 있다. 실행 중인 앱이 보안 대상 앱이 아닌 경우, 실행 중인 앱에 대한 입력 텍스트를 암호화하지 않고, 실행 중인 앱에 입력 텍스트를 그대로 전달할 수 있다. 예를 들어, "카카오톡"을 실행하였고, "카카오톡"이 보안 대상 앱인 경우, "카카오톡"에 입력되는 입력 텍스트를 실행 중인 "카카오톡" 앱에 전달되기 전 암호화할 수 있다. 사용자가 "안녕"이라고 타이핑을 하는 경우, 상기 "안녕"이라는 텍스트는 보안 키보드 앱에 의하여 암호화되어 암호화된 텍스트(예를 들어, "ageaj;i12")가 "카카오톡" 앱으로 전달된다. 그러면, "카카오톡" 앱에는 "안녕"은 표시되지 않고, "ageaj;i12"만이 표시된다.
또한, 키보드 입력 정보 암호화 시스템은 실행 중인 앱이 접속하는 사이트의 URL을 식별할 수 있다. 실행 중인 앱이 식별하는 사이트의 URL에 따라 접속할 토큰 서버를 결정할 수 있다. 키보드 입력 정보 암호화 시스템은 결정된 토큰 서버에 보안 토큰을 요청할 수 있고, 결정된 토큰 서버로부터 보안 토큰을 수신할 수 있다. 키보드 보안 프로그램(예를 들어, 보안 키보드 앱)은 수신된 보안 토큰을 이용하여 입력 텍스트를 암호화할 수 있다. 이때, 결정된 토큰 서버로부터 보안 토큰을 수신하지 못하는 경우, 입력 텍스트를 암호화하지 않고 실행 중인 앱에 전달할 수 있다.
단계(220)에서 키보드 입력 정보 암호화 시스템은 암호화된 텍스트를 실행 중인 앱으로 전달할 수 있다. 스마트 폰은 암호화된 텍스트를 실행 중인 앱으로 전달하여, 암호화된 입력 텍스트가 실행 중인 앱의 표시 창에 표시되도록 할 수 있다.
도 3은 종래의 키보드 입력 암호화 동작을 나타낸 도면이다.
암호화란 원문과 암호화 키를 입력하여 암호화된 데이터를 출력하는 알고리즘을 의미할 수 있다. 암호화 방식은 암호화를 수행하는 정보 단위에 따라 스트림 암호화, 블록 암호화로 구분될 수 있고, 키의 형태에 따라 비밀키 암호화, 공개키 암호화로 구분될 수 있다. 예를 들면, 암호화 알고리즘은 MD5, SHA, RSA, AES 등이 있을 수 있으며, RSA는 현재 공개키 암호화에서 가장 널리 쓰이고 있는 공개키 알고리즘이다.
일반적인 암호화 방법으로 사용자가 특정 웹사이트 또는 응용 프로그램에 데이터를 입력하고, 입력한 데이터를 특정 웹사이트 또는 응용 프로그램이 암호화하여 수신자에게 전달하고, 복호화 프로그램을 통해 복호화를 수행하여 수신자에게 입력 데이터를 보여줄 수 있다.
예를 들면, 사용자가 스마트 폰의 입력 창(301)에 "학교에 갑니다" 라는 문장을 입력한다고 가정하면, 키보드 입력 정보 암호화 시스템은 입력한 데이터를 응용 프로그램, 예를 들면, 보안 프로그램을 통해서 암호화(302)하여 수신자에게 전달할 수 있다. "학교에 갑니다"라는 문장은 스마트 폰 입력 창(301)에 출력될 수 있으며, 수신자에게 전달되기 위해 "학교에 갑니다"라는 문장이 "Txes32s12sxs"로 암호화(302)될 수 있다. 이때, 암호화되어 전달되는 문장은 "Txes32s12sxs"가 되고, "학교에 갑니다" 라는 문장이 수신자의 스마트 폰에게 전달될 동안 암호화된 "Txes32s12sxs"로 전송될 수 있다. 키보드 입력 정보 암호화 시스템은 암호화된 문장을 복호화 프로그램을 통해 복호화(312)한 후 수신자에게 원래의 입력 데이터인 "학교에 갑니다" 라는 문장을 화면(311)에 출력할 수 있다.
하지만 종래의 키보드 입력 정보 암호화 시스템의 동작 방법은 OS와 키보드 사이에 후킹 프로그램, 예를 들면 일종의 감시 프로그램 등에 의해서 데이터 유출 등의 보안 사고가 발생할 수 있고, 모든 응용 프로그램이 사용자가 지정한 암호화 방법을 제공해야 하는 문제점이 있다. 이에 따라, 보안을 요구하는 사용자에 키보드 앱을 제공하고, 키보드 앱에서 입력되는 정보를 문자 단위 또는 단어 단위로 암호화하여 실제 웹 사이트 또는 응용 프로그램에 입력되게 함으로써, 키보드와 응용 프로그램 사이에서 발생할 수 있는 정보 유출을 방지하는 기술이 제안될 필요가 있다. 이에 대한 상세한 설명은 도 4를 참고하기로 한다.
도 4는 일실시예에 따른 키보드 입력 정보 암호화 시스템의 동작을 나타낸 도면이다.
암호 방식에는 대칭키 암호 비대칭키가 있다. 대칭키 방식은 암호화할 때 쓰는 키와 암호를 해석할 때와 복호화할 때 쓰는 키가 같은 암호 알고리즘 또는 방식을 의미하며, 비대칭키 방식은 암호화 키와 복호화 키가 서로 다른 알고리즘을 의미할 수 있다. 본 발명에서는 대칭키 암호 방식 또는 비대칭키 암호 방식 중 적어도 하나의 방식이 적용될 수 있다.
스마트 폰 키보드 입력 정보 시스템은 송신 측 스마트 폰에 설치된 키보드 보안 프로그램에 의하여, 송신 측 스마트 폰에서 실행 중인 앱에 대한 입력 텍스트를 실행 중인 앱에 전달되기 전 암호화를 수행할 수 있다. 스마트 폰 키보드 입력 정보 시스템은 송신 측 스마트 폰에서 실행되는 모든 앱을 모니터링 할 수 있다. 실행 중인 앱이 보안 대상 앱인지 여부를 판단할 수 있다.
예를 들면, 실행 중인 앱은 메시지 창, ID와 비밀번호 입력창 및 이외의 입력이 가능한 부분을 이용하여 메시지를 입력 받고 이를 외부에 전달하는 앱이 해당될 수 있다. 실행 중인 앱이 보안 대상 앱인 경우, 실행 중인 앱에 대한 입력 텍스트를 실행 중인 앱에 전달되기 전 암호화할 수 있다. 실행 중인 앱이 보안 대상 앱이 아닌 경우, 실행 중인 앱에 대한 입력 텍스트를 암호화 하지 않고, 실행 중인 앱에 입력 텍스트를 그대로 전달할 수 있다.
도 4를 참고하면, 예를 들면, 송신 측 스마트 폰은 사용자에 의해 문자 메시지가 전송된다고 가정할 수 있다. 스마트 폰의 키보드 입력 정보 시스템은 송신 측 스마트 폰에서 실행되는 문자메시지 앱을 모니터링 할 수 있고, 실행 중인 문자메시지 앱이 보안 대상 앱인지 여부를 판단할 수 있다. 예를 들면, 실행 되는 앱 중에서 보안 대상 앱은 은행, 금융, 메시지, 채팅 관련 앱과 같이 정보가 유출될 위험이 있는 앱이 될 수 있으며, 더욱 상세하게는, 스마트 폰에서 실행되는 "A은행", "B은행", "문자메시지" 앱이 보안 대상 앱이 될 수 있다.
만약, 실행 중인 앱이 보안 대상 앱 중 하나인 "문자메시지" 앱이라면, 문자메시지 앱에 대한 입력 텍스트를 문자메시지 앱에 전달되기 전 암호화(402)할 수 있다. 사용자는 스마트 폰의 메시지 입력 창(401)에 "학교에 갑니다" 라는 메시지를 입력할 수 있다. 키보드 입력 정보 암호화 시스템은 스마트 폰에 입력된 "학교에 갑니다" 라는 텍스트를 암호화(402)할 수 있고, 예를 들면, "Txes32s12sxs"(410)로 암호화될 수 있다.
스마트 폰의 입력 창(401)에 "학교에 갑니다" 라는 메시지 대신 암호화된 "Txes32s12sxs" 스트링(410)이 출력될 수 있다. 이때, 스트링(410)은 실행 중인 앱에 표시 가능한 알파벳 및 숫자의 조합 스트링으로 암호화할 수 있다. 스마트 폰의 입력 창(401)에 메시지 대신 암호화된 스트링이 출력되기 때문에, 텍스트가 의도한 대로 입력되었는지 알기 어렵다. 이에 따라, 사용자에게 편의를 제공하기 위해 보안 프로그램이 별도의 표시창(도시되지 않음)을 가지고 있어 암호화 되기 전의 입력된 텍스트가 출력될 수 있고, 상기 출력은 화면이 보안 프로그램을 통해 출력되기 때문에 외부의 침입에도 입력 텍스트가 유출되는 것을 방지될 수 있다. "학교에 갑니다" 라는 텍스트를 입력하였다면, 스마트 폰의 입력 창에는 암호화된 "Txes32s12sxs"(410)이 출력되지만, 보안 프로그램의 표시창(도시되지 않음)에 "학교에 갑니다" 라는 텍스트가 출력될 수 있다. 보안 프로그램의 표시창은 캡쳐가 불가능하도록 보안 처리되어 해킹 프로그램에 의해서도 상기 표시창에 표시된 내용을 캡쳐할 수 없다. 본 실시예에 따르면, 사용자는 자신이 입력한 텍스트를 확인할 수 있지만, 해킹 프로그램은 입력된 텍스트를 알 수 없다. 스마트 폰에는 다양한 앱이 존재하기 때문에, 이 앱들에 표시되는 텍스트를 모두 해킹 프로그램으로부터 보호할 수는 없지만, 본 실시예에 따르면, 이 앱들에는 암호화된 텍스트가 표시되어 해킹 프로그램으로부터 보호된다. 또한, 보안 프로그램의 표시창만을 통해서 암호화되지 않는 텍스트가 표시되고, 보안 프로그램의 표시창은 화면 캡쳐가 불가능하게 처리되어 있으므로, 이 또한 보호가 되게 된다.
암호화된 "Txes32s12sxs" 스트링(410)은 송신 측 스마트 폰으로부터 수신자의 스마트 폰에 전달될 수 있다. 키보드 입력 정보 암호화 시스템은 암호화된 문장을 복호화 프로그램을 통하여 복호화(412)한 후 수신자에게 원래의 입력 데이터인 "학교에 갑니다" 라는 문장을 화면(411)에 출력할 수 있다.
예를 들면, 실행 중인 앱이 보안 대상 앱이 아닌 "사진" 앱이라면, "사진" 앱에 대한 입력 텍스트를 암호화하지 않고, 실행 중인 사진 앱에 입력 텍스트를 그대로 전달할 수 있다.
종래의 기술로는 보안을 요구하는 정보 전달 응용 프로그램은 보안 메커니즘을 탑재하고 있어야 함으로 인해 확산이 불가능했던 반면, 일 실시예에 따른 키보드 입력 정보 암호화 시스템은 정보 전달 응용 프로그램에 독립적으로 사용할 수 있으므로 확장성을 높일 수 있다.
일 실시예에 따른 키보드 입력 정보 암호화 시스템은 암호화된 텍스트를 실행 중인 앱으로 전달하여 암호화된 입력 텍스트가 보안 프로그램이 작동하는 실행 중인 앱의 표시 창에 표시되므로 해킹 프로그램으로 캡쳐해도 입력 텍스트를 알 수 없다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (8)

  1. 스마트 폰의 키보드 입력 정보를 암호화하는 방법에 있어서,
    송신 측 스마트 폰에 설치된 키보드 보안 프로그램에 의하여, 상기 송신 측 스마트 폰에서 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계; 및
    상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하는 단계를 포함하고,
    상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하는 단계는,
    상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하여, 상기 암호화된 입력 텍스트가 상기 실행 중인 앱의 표시 창에 표시되도록 하는 단계를 포함하는 스마트 폰의 키보드 입력 정보 암호화 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계는,
    상기 입력 스트링을 상기 실행 중인 앱에 표시 가능한 알파벳 및 숫자의 조합 스트링으로 암호화하는 단계
    를 포함하는 스마트 폰의 키보드 입력 정보 암호화 방법.
  4. 제1항에 있어서,
    상기 송신 측 스마트 폰에서 실행 중인 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계는,
    상기 송신 측 스마트 폰에서 실행되는 모든 앱을 모니터링하는 단계;
    상기 실행 중인 앱이 보안 대상 앱인지 여부를 판단하는 단계;
    상기 실행 중인 앱이 보안 대상 앱인 경우, 상기 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계; 및
    상기 실행 중인 앱이 보안 대상 앱이 아닌 경우, 상기 실행 중인 앱에 대한 입력 텍스트를 암호화 하지 않고, 실행 중인 앱에 상기 입력 텍스트를 그대로 전달하는 단계
    를 포함하는 스마트 폰의 키보드 입력 정보 암호화 방법.
  5. 제1항에 있어서,
    상기 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 암호화하는 단계는,
    상기 실행 중인 앱이 접속하는 사이트의 URL을 식별하는 단계;
    상기 실행 중인 앱이 식별하는 사이트의 URL에 따라 접속할 토큰 서버를 결정하는 단계;
    상기 결정된 토큰 서버에 보안 토큰을 요청하는 단계;
    상기 결정된 토큰 서버로부터 상기 보안 토큰을 수신하는 단계; 및
    상기 수신된 보안 토큰을 이용하여 상기 입력 텍스트를 암호화하는 단계
    를 포함하는 스마트 폰의 키보드 입력 정보 암호화 방법.
  6. 제5항에 있어서,
    상기 결정된 토큰 서버로부터 상기 보안 토큰을 수신하지 못하는 경우, 상기 입력 텍스트를 암호화하지 않고 상기 실행 중인 앱에 전달하는 단계
    를 더 포함하는 스마트 폰의 키보드 입력 정보 암호화 방법.
  7. 스마트 폰의 보안을 위한 키보드 입력 정보 암호화 시스템에 있어서,
    보안 토큰의 요청에 응답하여 보안 토큰을 제공하는 복수 개의 토큰 서버; 및
    설치된 키보드 보안 프로그램에 의하여, 실행 중인 앱에 대한 입력 텍스트를 상기 실행 중인 앱에 전달되기 전 상기 토큰 서버에 의하여 제공된 토큰을 이용하여 암호화하고, 상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하는 스마트 폰을 포함하고,
    상기 스마트 폰은,
    상기 암호화된 텍스트를 상기 실행 중인 앱으로 전달하여, 상기 암호화된 입력 텍스트가 상기 실행 중인 앱의 표시 창에 표시되도록 하는 키보드 입력 정보 암호화 시스템.
  8. 삭제
KR20130152975A 2013-12-10 2013-12-10 키보드 입력 정보 암호화 방법 KR101511451B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20130152975A KR101511451B1 (ko) 2013-12-10 2013-12-10 키보드 입력 정보 암호화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130152975A KR101511451B1 (ko) 2013-12-10 2013-12-10 키보드 입력 정보 암호화 방법

Publications (1)

Publication Number Publication Date
KR101511451B1 true KR101511451B1 (ko) 2015-04-10

Family

ID=53034293

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130152975A KR101511451B1 (ko) 2013-12-10 2013-12-10 키보드 입력 정보 암호화 방법

Country Status (1)

Country Link
KR (1) KR101511451B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101644168B1 (ko) 2015-12-14 2016-07-29 스텔스소프트웨어 주식회사 소셜 네트워크 서비스를 이용한 메시지 보안 시스템 및 그 방법, 그리고 이 방법을 처리하는 컴퓨터 프로그램이 저장된 저장 매체

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050041211A (ko) * 2003-10-30 2005-05-04 주식회사 훈시큐어 키보드를 이용한 보안 방법 및 시스템
KR20070010557A (ko) * 2005-07-19 2007-01-24 소프트포럼 주식회사 키입력 해킹방지 방법
KR101215927B1 (ko) 2012-07-31 2012-12-27 주식회사 드림시큐리티 보안토큰을 이용한 전자서명 장치 및 그 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050041211A (ko) * 2003-10-30 2005-05-04 주식회사 훈시큐어 키보드를 이용한 보안 방법 및 시스템
KR20070010557A (ko) * 2005-07-19 2007-01-24 소프트포럼 주식회사 키입력 해킹방지 방법
KR101215927B1 (ko) 2012-07-31 2012-12-27 주식회사 드림시큐리티 보안토큰을 이용한 전자서명 장치 및 그 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101644168B1 (ko) 2015-12-14 2016-07-29 스텔스소프트웨어 주식회사 소셜 네트워크 서비스를 이용한 메시지 보안 시스템 및 그 방법, 그리고 이 방법을 처리하는 컴퓨터 프로그램이 저장된 저장 매체

Similar Documents

Publication Publication Date Title
CN110492990B (zh) 区块链场景下的私钥管理方法、装置及***
KR101878149B1 (ko) 패스워드의 보안 입력 및 처리 장치, 시스템 및 방법
JP5852265B2 (ja) 計算装置、コンピュータプログラム及びアクセス許否判定方法
CN112287372B (zh) 用于保护剪贴板隐私的方法和装置
CN112333198A (zh) 安全跨域登录方法、***及服务器
WO2016115889A1 (zh) 一种对信息进行加密控制、解析信息的方法、***和终端
KR20150087205A (ko) 보안 통신 아키텍쳐
KR101745843B1 (ko) 개인 데이터를 보호하기 위한 방법 및 디바이스
US9111123B2 (en) Firmware for protecting data from software threats
US11023620B2 (en) Cryptography chip with identity verification
US9454677B1 (en) Secure communication architecture including video sniffer
CN113553572A (zh) 资源信息获取方法、装置、计算机设备和存储介质
CN112202794A (zh) 交易数据的保护方法、装置、电子设备和介质
WO2021014733A1 (ja) 演算装置、演算方法、演算プログラム、および演算システム
CN114363088B (zh) 用于请求数据的方法和装置
CN112733180A (zh) 数据查询方法、装置和电子设备
WO2019134276A1 (zh) 一种保护网页代码的方法、存储介质、电子设备和***
CN113630412B (zh) 资源下载方法、资源下载装置、电子设备以及存储介质
CN113032753B (zh) 身份验证的方法及装置
CN110545542A (zh) 基于非对称加密算法的主控密钥下载方法、装置和计算机设备
CN114640524B (zh) 用于处理交易重放攻击的方法、装置、设备及介质
KR101511451B1 (ko) 키보드 입력 정보 암호화 방법
KR20130085537A (ko) 암호화된 파일 접근 시스템 및 그 방법
CN113037760A (zh) 报文发送方法和装置
CN110858243A (zh) 用于网关的页面获取方法和装置

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20180409

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee