[go: up one dir, main page]

KR20040066237A - Method for protecting from keystroke logging - Google Patents

Method for protecting from keystroke logging Download PDF

Info

Publication number
KR20040066237A
KR20040066237A KR1020030003223A KR20030003223A KR20040066237A KR 20040066237 A KR20040066237 A KR 20040066237A KR 1020030003223 A KR1020030003223 A KR 1020030003223A KR 20030003223 A KR20030003223 A KR 20030003223A KR 20040066237 A KR20040066237 A KR 20040066237A
Authority
KR
South Korea
Prior art keywords
keyboard
key
input
personal information
computer
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020030003223A
Other languages
Korean (ko)
Other versions
KR100496462B1 (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 KR10-2003-0003223A priority Critical patent/KR100496462B1/en
Publication of KR20040066237A publication Critical patent/KR20040066237A/en
Application granted granted Critical
Publication of KR100496462B1 publication Critical patent/KR100496462B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/128Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Input From Keyboards Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

키 입력 도용 방지 방법이 개시되어 있다. 본 발명은, a) 통신 네트워크를 통하여 소정의 서버에 사용자 컴퓨터가 연결되어, 상기 서버가 적어도 하나의 개인정보 입력창을 포함하는 페이지를 사용자 컴퓨터로 전송하는 단계; b) 사용자 컴퓨터에 키보드 보안 프로그램이 설치된 경우, 키보드 보안 프로그램의 키 로거 판단 모듈이 사용자 컴퓨터의 키보드 드라이버 레벨에 키 로거가 존재하는지 여부를 판단하는 단계; c) 키 로거가 키보드 드라이버 레벨에 존재하지 않고 개인정보 입력창 중 소정의 입력창에 키 신호 입력 준비가 완료된 경우, 키보드를 통하여 상기 개인정보 입력창에 개인 정보를 입력할 수 있도록 키보드 드라이버 모듈이 동작되는 단계; 및 d) 키 로거가 키보드 드라이버 레벨에 존재하고 개인정보 입력창 중 소정의 입력창에 키 신호 입력 준비가 완료된 경우, 사용자 단말기의 화면에 가상 키보드를 디스플레이 하도록 키보드 생성 모듈이 동작되는 단계를 포함하여 구성되는 것을 특징으로 하여, 통신 네트워크로 연결되어 있는 소정의 서버로 개인 정보를 전송할 때 키보드 보안 프로그램이 설치된 키보드 드라이버 또는 가상 키보드를 이용하여 개인 정보를 보호 할 수 있다.A method of preventing key input theft is disclosed. The present invention provides a method of manufacturing a computer, comprising: a) a user computer connected to a predetermined server through a communication network, the server transmitting a page including at least one personal information input window to the user computer; b) when the keyboard security program is installed in the user computer, the key logger determination module of the keyboard security program determines whether the key logger exists at the keyboard driver level of the user computer; c) If the key logger does not exist at the keyboard driver level and the key signal input is ready in a predetermined input window among the personal information input windows, the keyboard driver module may input the personal information into the personal information input window through the keyboard. Operating step; And d) operating the keyboard generation module to display a virtual keyboard on a screen of the user terminal when the key logger is present at the keyboard driver level and is ready for inputting a key signal in a predetermined input window among personal information input windows. When the personal information is transmitted to a predetermined server connected to a communication network, the personal information may be protected using a keyboard driver or a virtual keyboard in which a keyboard security program is installed.

Description

키 입력 도용 방지 방법{METHOD FOR PROTECTING FROM KEYSTROKE LOGGING }How to prevent keystroke theft {METHOD FOR PROTECTING FROM KEYSTROKE LOGGING}

본 발명은 키 입력 도용 방지 방법에 관한 것으로서, 보다 상세하게는 키보드로 입력되는 중요한 개인정보를 가로채는 키로거로부터 키 입력 데이터를 보호하기 위한 키 입력 도용 방지 방법에 관한 것이다.The present invention relates to a key input theft prevention method, and more particularly, to a key input theft prevention method for protecting key input data from a key logger intercepting important personal information input by the keyboard.

인터넷이 발달하면서 높은 속도 및 안정된 접속 환경을 제공함으로써 과거의 단순한 웹 브라우징을 통한 지식의 공유 수준에서 벗어나 온라인 쇼핑, 온라인 뱅킹 등 다양한 분야에서 활용되고 있다. 이렇게 생활에 편리성을 제공하는 여러 서비스들이 늘어나면서 다른 한편에서는 이들의 취약점을 이용하여 타인의 개인 정보를 유출하여 악의적으로 사용하는 일들도 함께 늘어나고 있다. 이러한 불법적인 행위는 작게는 개인의 사생활을 침해하게 되고 더 나아가서는 개인의 재산권을 위협할 뿐만 아니라 인터넷 서비스를 제공하는 기업들에게도 신뢰를 떨어뜨리게 만드는 요인이 되고 있다.As the Internet develops, it provides high speed and stable access environment, and is being used in various fields such as online shopping and online banking, beyond the level of knowledge sharing through simple web browsing in the past. As more and more services provide convenience in life, on the other hand, the use of their vulnerabilities to leak other people's personal information and increase their malicious use. Such illegal acts are at the very least invading the privacy of individuals and, moreover, threatening the property rights of individuals as well as degrading the trust of companies providing Internet services.

일반적으로, 해커들은 개인 정보 유출을 위하여 키 로거(Key Logger)라는 프로그램을 쓰는데, 상기 키 로거 프로그램은 사용자가 키보드를 누를 때 마다 키 입력 값을 받아 이후에 해커가 볼 수 있도록 파일에 저장을 해 놓는다. 도 1 및 도 2를 참조하면, 개인용 컴퓨터(Personal Computer, 30)가 인터넷 등의 통신 네트워크를 통하여 서비스 서버(10)에 접속한다(S100). 상기 개인용 컴퓨터(30)를 사용하는 사용자가 인터넷 뱅킹 또는 쇼핑 몰에서의 물건 구입 등을 하고자 할 때, 상기 개인용 컴퓨터(30)와 상기 서비스 서버(10) 사이에 사용자의 개인 정보 보안 유지를 위한 SSL(Secure Socket Layer) 등의 네트워크 통신 보안이 설정된다(S110). 이 때, 개인 정보, 예컨대 개인 아이디, 암호(Password), 계좌번호, 계좌 비밀번호, 신용카드 비밀번호, 주민등록번호 등을 키보드(40)로 입력한다(S120). 상기 키보드(40)로 입력한 개인 정보는 상기 개인용 컴퓨터(30)의 윈도우 운영 시스템에 입력되고, 상기 윈도우 운영 시스템에 입력된 데이터는 키 로거라는 프로그램이 저장된 키보드 드라이버로 전송되어 소정의 메모리 또는 버퍼(Buffer) 에 저장된다(S130, S140, S150). 상기 저장된 개인 정보는 통신 네트워크를 통하여 상기 서비스 서버(10)로 전달된다(S160). 이 때, 상기 개인용 컴퓨터(30) 및 서비스 서버(10) 사이에는 SSL 등의 네트워크 통신 보안(20)이 설정되어 있어 제 3 자로의 개인정보 유출을 방지할 수 있다.In general, hackers use a program called Key Logger to leak personal information, which receives keystrokes every time the user presses the keyboard and saves them in a file for hackers to view later. Release. 1 and 2, a personal computer 30 connects to the service server 10 through a communication network such as the Internet (S100). When the user who uses the personal computer 30 wishes to purchase goods in the Internet banking or shopping mall, SSL for maintaining the security of the user's personal information between the personal computer 30 and the service server 10 Network communication security such as (Secure Socket Layer) is set (S110). At this time, personal information, for example, a personal ID, a password, an account number, an account password, a credit card password, a social security number, etc. are input by the keyboard 40 (S120). The personal information input by the keyboard 40 is input to the window operating system of the personal computer 30, and the data input to the window operating system is transmitted to a keyboard driver in which a program called a key logger is stored, and thus a predetermined memory or buffer. (Buffer) (S130, S140, S150). The stored personal information is transmitted to the service server 10 through a communication network (S160). At this time, a network communication security 20 such as SSL is set between the personal computer 30 and the service server 10 to prevent leakage of personal information to a third party.

그러나, 상기 개인용 컴퓨터(30) 및 개인용 컴퓨터에 연결된 키보드(40) 사이에는 보안 장치가 없어 키로거(Key Logger) 등 해킹 툴(Tool)에 노출되어 있다. 따라서, 해커들은 파일에 저장된 개인정보를 수신한다. 상기 과정을 모르는 사용자는 아이디 및 암호를 고스란히 해커에게 알려주게 되는 것이다. 그러나, 상기 키 로거라는 프로그램은 쓰이는 용도에 따라 합법적일 수도 있고 불법적일 수도 있으며, 일반인들이 구입하기에 아무런 어려움이 없고 사용하기도 쉬워서 상기 키 로거를 이용한 해킹이 늘어나는 추세이다.However, since there is no security device between the personal computer 30 and the keyboard 40 connected to the personal computer, it is exposed to a hacking tool such as a key logger. Thus, hackers receive personal information stored in files. The user who does not know the above process will tell the hacker the username and password. However, the key logger program may be legal or illegal depending on the intended use, and there is a tendency that hacking using the key logger is increasing because there is no difficulty for the general public and easy to use.

이를 막기 위해 종래의 키보드 보안 제품들은 보안 키보드 드라이버를 이용하여 키보드로부터 입력되는 값을 시스템의 최앞단인 드라이버 단에서 선점하려 하나 드라이버 적재 순서에 따라 선점에 실패할 경우가 있으며, 이 경우에는 키 입력을 선점하기 위해 드라이버를 최하위 단에 적재하고 시스템을 재시작 해야 한다는 단점이 있다. 또한 선점 확보 경쟁 시 다른 경쟁 드라이버가 최상단으로 적재되는 것을 막기 위해 경쟁 드라이버를 제거한 후 시스템을 재시작 해야 하는데, 이 때 제거하려는 드라이버가 키로거인지 정상 소프트웨어인지 완벽하게 판단할 수 있는 방법이 없다. 따라서, 제거되는 드라이버가 정상 소프트웨어의 드라이버인 경우, 드라이버의 부재로 해당 소프트웨어가 정상 동작하지 않거나 시스템이 다운 되는 등의 치명적인 문제가 있어 왔다.In order to prevent this, conventional keyboard security products try to preempt the value input from the keyboard using the secure keyboard driver at the driver stage, which is the front of the system, but fail to preempt the driver in the loading order. The disadvantage is that the driver must be loaded at the lowest level and the system restarted to preempt the problem. Also, in order to prevent the preemptive competition from being loaded on top of other competing drivers, it is necessary to remove the competing drivers and restart the system. At this time, there is no way to fully determine whether the driver to be removed is a keylogger or normal software. Therefore, when the driver to be removed is a driver of normal software, there has been a fatal problem such that the software does not operate normally or the system crashes due to the absence of the driver.

본 발명은 상기 문제점을 해결하기 위하여 발명된 것으로서, 본 발명의 목적은 사용자가 아이디 또는 암호 등 보안이 필요한 정보를 입력하고자 할 때, 액티브 엑스(Active X)를 거치지 않고 직접 웹 페이지에 키보드로부터 입력되는 데이터를 전송하도록 함으로써, 키 로거가 키보드로부터 입력되는 데이터를 가로챌 수 없도록 하는 키 입력 도용 방지 방법을 제공하고자 한다.The present invention has been invented to solve the above problems, an object of the present invention when the user wants to enter information that requires security, such as ID or password, input directly from the keyboard to the web page without going through Active X (Active X) It is intended to provide a method for preventing key input theft by allowing a key logger to intercept data input from a keyboard.

또한, 본 발명의 목적은 본 발명의 프로그램을 온 라인(ON-Line) 또는 오프 라인(OFF Line)으로 사용자의 컴퓨터에 설치한 후 재부팅 없이 바로 사용할 수 있도록 설계된 키 입력 도용 방지 방법을 제공하고자 한다.In addition, an object of the present invention is to provide a key input theft prevention method designed to be used immediately without rebooting after installing the program of the present invention on-line (or off-line) to the user's computer. .

상기 목적을 달성하기 위한 본 발명의 제 1 관점에 따른 키 입력 도용 방지 방법은, a) 통신 네트워크를 통하여 소정의 서버에 사용자 컴퓨터가 연결되어, 상기 서버가 적어도 하나의 개인정보 입력창을 포함하는 페이지를 사용자 컴퓨터로 전송 하는 단계;According to a first aspect of the present invention, there is provided a method for preventing key input theft, comprising: a) a user computer is connected to a predetermined server through a communication network, and the server includes at least one personal information input window. Transmitting the page to a user computer;

b) 상기 사용자 컴퓨터에 키보드 보안 프로그램이 설치된 경우, 상기 키보드 보안 프로그램의 키 로거 판단 모듈이 상기 사용자 컴퓨터의 키보드 드라이버 레벨에 키 로거가 존재하는지 여부를 판단하는 단계;b) when a keyboard security program is installed in the user computer, the key logger determination module of the keyboard security program determines whether a key logger exists at a keyboard driver level of the user computer;

c) 상기 단계 b)의 판단 결과, 상기 키 로거가 키보드 드라이버 레벨에 존재하지 않고 상기 개인정보 입력창 중 소정의 입력창에 키 신호 입력 준비가 완료된 경우, 상기 키보드를 통하여 상기 개인정보 입력창에 개인 정보를 입력할 수 있도록 키보드 드라이버 모듈이 동작되는 단계; 및c) As a result of the determination of step b), if the key logger does not exist at the keyboard driver level and the preparation of the key signal input to a predetermined input window among the personal information input windows is completed, Operating a keyboard driver module to input personal information; And

d) 상기 단계 b)의 판단 결과, 상기 키 로거가 키보드 드라이버 레벨에 존재하고 상기 개인정보 입력창 중 소정의 입력창에 키 신호 입력 준비가 완료된 경우, 상기 사용자 단말기의 화면에 가상 키보드를 디스플레이 하도록 상기 키보드 생성 모듈이 동작되는 단계를 포함하여 구성되는 것을 특징으로 한다.d) If the key logger is present at the keyboard driver level and ready to input the key signal in a predetermined input window among the personal information input windows, the virtual keyboard is displayed on the screen of the user terminal. Characterized in that it comprises a step of operating the keyboard generation module.

바람직하게는, 상기 사용자 컴퓨터와 연결된 상기 키보드 또는 상기 가상 키보드로부터 입력된 키 신호는 다이나믹 하이퍼 텍스트 모델링 언어 객체를 이용하여 상기 페이지로 전송되는 것을 특징으로 한다.Preferably, the key signal input from the keyboard or the virtual keyboard connected to the user computer is transmitted to the page using a dynamic hypertext modeling language object.

또한, 상기 키보드 보안 프로그램이 사용자의 컴퓨터에 설치되어 있지 않은경우, 상기 서버로부터 상기 사용자의 컴퓨터로 상기 키보드 보안 프로그램이 다운로드 되어 인스톨 되는 단계를 더 포함하며, 상기 키보드 보안 프로그램이 인스톨된 사용자의 컴퓨터를 재부팅 하지 않은 상태에서 상기 단계 b)를 수행하는 것을 특징으로 하며, 상기 키보드 보안 프로그램은 액티브 엑스 또는 플러그 인의 형태를 통하여 배포 및 설치되는 것을 특징으로 한다.In addition, if the keyboard security program is not installed on the user's computer, the keyboard security program is downloaded and installed from the server to the user's computer further comprises the step of installing, the computer of the user where the keyboard security program is installed Characterized in that the step b) is performed without rebooting, the keyboard security program is distributed and installed through the form of ActiveX or plug-in.

보다 바람직하게는, 상기 키보드 보안 프로그램이 사용자의 컴퓨터에 존재하지 않는 경우, 상기 사용자의 컴퓨터로 읽을 수 있는 기록매체로부터 상기 키보드 보안 프로그램이 인스톨 되는 단계를 더 포함하며, 상기 사용자의 컴퓨터로 읽을 수 있는 기록매체는 컴팩트 디스크 또는 디스켓인 것을 특징으로 한다.More preferably, if the keyboard security program does not exist in the user's computer, the keyboard security program may be installed from the computer-readable recording medium, and the computer may be read by the user's computer. The recording medium is characterized in that the compact disk or diskette.

바람직하게는, 상기 가상 키보드는 디스플레이부의 소정의 영역에 디스플레이 되어, 상기 가상 키보드를 이용하여 키입력 동작이 수행되는 것을 특징으로 하며, 상기 가상 키보드에서의 키입력 동작 수행은 i-1) 마우스의 클릭 또는 터치 스크린의 터치에 의하여 상기 가상 키보드의 해당 영역을 선택하는 단계; i-2) 상기 단계 i-1)에 응답하여 상기 선택된 영역에 할당된 키 값을 해당 키의 입력으로 처리하는 단계; 및 i-3) 상기 단계 i-2)에서 처리된 키 입력 값을 인터넷 익스플로어의 다이나믹 하이퍼 텍스트 모델링 언어(DHTML) 객체를 이용하여 상기 페이지로 전송하는 단계를 포함하는 것을 특징으로 한다.Preferably, the virtual keyboard is displayed on a predetermined area of the display unit, and a key input operation is performed using the virtual keyboard, and the key input operation on the virtual keyboard is performed by i-1) of the mouse. Selecting a corresponding region of the virtual keyboard by clicking or touching the touch screen; i-2) processing the key value assigned to the selected area in response to step i-1) as an input of the corresponding key; And i-3) transmitting the key input value processed in step i-2) to the page using the Dynamic Hyper Text Modeling Language (DHTML) object of Internet Explorer.

또한, 상기 서버가 상기 사용자 컴퓨터로 전송하는 페이지에 포함된 적어도 하나의 개인정보 입력창 중 패스워드 입력창을 선택적으로 인식하여, 상기 패스워드 입력창에 입력되는 데이터를 보안하는 것을 특징으로 한다.The server may selectively recognize a password input window among at least one personal information input window included in a page transmitted to the user computer, thereby securing data input to the password input window.

따라서 본 발명에 의하면, 통신 네트워크로 연결되어 있는 소정의 서버로 개인 정보를 전송할 때 키보드 보안 프로그램이 설치된 키보드 드라이버 또는 가상 키보드를 이용하여 개인 정보를 보호 할 수 있다.Therefore, according to the present invention, when transmitting personal information to a predetermined server connected to a communication network, personal information can be protected by using a keyboard driver or a virtual keyboard having a keyboard security program installed thereon.

도 1은 종래 기술을 설명하기 위한 개략적인 시스템을 도시한 것이다.1 shows a schematic system for describing the prior art.

도 2는 종래에 키보드로 입력한 데이터가 서비스 서버에 도달하는 과정을 도시한 순서도이다.2 is a flowchart illustrating a process in which data input by a keyboard conventionally reaches a service server.

도 3은 본 발명의 일 실시예에 따른 방법을 설명하기 위한 키보드 보안 프로그램 작동 과정을 설명한 순서도이다.3 is a flowchart illustrating an operation of a keyboard security program for explaining a method according to an embodiment of the present invention.

도 4는 본 발명의 일 실시예에 따른 키보드 보안 프로그램의 모듈을 설명하기 위한 도면이다.4 is a diagram illustrating a module of a keyboard security program according to an embodiment of the present invention.

도 5 내지 도 7은 본 발명의 일 실시예에 따른 키보드 보안 프로그램의 구동 예를 도시한 것이다.5 to 7 illustrate examples of driving a keyboard security program according to an embodiment of the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

10 : 서비스 서버10: service server

20 : SSL 등의 네트워크 통신 보안20: Secure network communication such as SSL

30 : 개인용 컴퓨터30: personal computer

40 : 키보드40: keyboard

300 : 키보드 보안 프로그램300: keyboard security program

310 : 인스톨 모듈310: installation module

320 : 키로거 판단 모듈320: keylogger judgment module

330 : 가상 키보드 모듈330: virtual keyboard module

340 : 보안 키보드 드라이버 모듈340: Secure Keyboard Driver Module

350 : 데이터 입출력 모듈350: data input / output module

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 설명한다.Hereinafter, with reference to the accompanying drawings will be described a preferred embodiment of the present invention.

도 3은 본 발명의 일 실시예에 따른 키보드 보안 프로그램 작동 과정을 설명한 순서도이고, 도 4는 상기 키보드 보안 프로그램을 모듈별로 설명한 도면이다.3 is a flowchart illustrating a process of operating a keyboard security program according to an embodiment of the present invention, and FIG. 4 is a diagram illustrating the keyboard security program for each module.

도 4를 참조하면, 상기 키보드 보안 프로그램(300)은 인스톨 모듈(310), 키로거 판단 모듈(320), 가상 키보드 모듈(330), 보안 키보드 드라이버 모듈(340), 및 데이터 입출력 모듈(350)을 포함한다.Referring to FIG. 4, the keyboard security program 300 may include an installation module 310, a key logger determination module 320, a virtual keyboard module 330, a secure keyboard driver module 340, and a data input / output module 350. Include.

도 3 및 도 4를 참조하면, 통신 네트워크에 연결되어 있는 개인용 컴퓨터(Personal Computer)에 본 발명의 키보드 보안 프로그램이 존재하지 않는 경우, 상기 키보드 보안 프로그램의 인스톨 모듈(310)이 액티브 엑스(Active X) 또는 플러그 인(Plug In) 프로그램을 통하여 상기 키보드 보안 프로그램을 상기 개인용 컴퓨터에 설치시킨다(S200). 이 때, 상기 키보드 보안 프로그램은 디스켓, 컴팩트 디스크(CD) 등의 저장 매체에 저장될 수 있다. 따라서, 상기 개인용 컴퓨터가 통신 네트워크에 연결되지 않은 상태에서 즉, 오프 라인(OFF-Line)에서도 상기 키보드 보안 프로그램이 저장된 디스켓 또는 컴팩트 디스크를 통하여 개인용 컴퓨터에 설치 가능하다.3 and 4, when the keyboard security program of the present invention does not exist in a personal computer connected to a communication network, the installation module 310 of the keyboard security program is activated. Or the Plug In program to install the keyboard security program on the personal computer (S200). In this case, the keyboard security program may be stored in a storage medium such as a diskette or a compact disc (CD). Therefore, the personal computer can be installed on the personal computer through a diskette or a compact disk in which the keyboard security program is stored even when the personal computer is not connected to the communication network, that is, off-line.

상기 키보드 보안 프로그램이 설치되어 있는 개인용 컴퓨터가 인터넷 등의 통신 네트워크를 통하여 서비스 서버에 접속한다(S205).The personal computer on which the keyboard security program is installed connects to the service server through a communication network such as the Internet (S205).

상기 개인용 컴퓨터를 사용하는 사용자가 인터넷 뱅킹 또는 쇼핑 몰에서의 물건 구입 등을 하고자 할 때, 상기 개인용 컴퓨터와 상기 서비스 서버 사이에 사용자의 개인 정보 보안 유지를 위한 SSL(Secure Socket Layer) 등의 네트워크 통신 보안이 설정된다(S210).When a user using the personal computer wants to purchase an item in an internet banking or shopping mall, a network communication such as SSL (Secure Socket Layer) for maintaining the security of the user's personal information between the personal computer and the service server Security is set (S210).

상기 네트워크 통신 보안을 개인용 컴퓨터 및 상기 개인용 컴퓨터와 연결된 키보드 사이에서도 확장시켜 보안하기 위하여, 상기 개인용 컴퓨터에 설치된 키보드 보안 프로그램의 키로거 판단 모듈(320)은 키보드 드라이버, 즉 디바이스 드라이버 레벨을 검색하여 키 로거(Key Logger)와 같은 소정의 프로그램이 존재하는지 여부를 판단한다(S220).In order to extend and secure the network communication security between the personal computer and the keyboard connected to the personal computer, the key logger determination module 320 of the keyboard security program installed in the personal computer searches for a keyboard driver, that is, a device driver level, to search for a key logger. It is determined whether a predetermined program such as (Key Logger) exists (S220).

본 발명의 키보드 보안 프로그램은 인터넷의 익스플로어(Internet Explorer)의 다이나믹 하이퍼 텍스트 모델링 언어(Dynamic Hyper Text Modeling Language, DHTML) 객체를 이용하여 액티브 엑스(Active X)를 거치지 않고 직접 웹 브라우저 또는 소정의 프로그램으로 입력할 때 입력된 데이터의 보안 유지가 가능하다.The keyboard security program of the present invention uses a Dynamic Hyper Text Modeling Language (DHTML) object of Internet Explorer of the Internet to directly access a web browser or a predetermined program without going through ActiveX. It is possible to maintain the security of the data entered when entering with.

상기 키 로거 판단 방법은 상기 키로거 판단 모듈(320)이 디바이스 드라이버 레벨을 검색하여 시스템 디폴트 드라이버 이외의 드라이버가 존재하면 키로거와 같은 프로그램이 존재한다고 판단하는 것이다.In the key logger determination method, the key logger determination module 320 searches for a device driver level and determines that a program such as a key logger exists if a driver other than the system default driver exists.

다른 키 로거 판단 방법으로는, 상기 키로거 판단 모듈(320)이 디바이스 드라이버 레벨을 검색하여, 드라이버의 시작 주소를 확인하여 판단하는 방법이 있다.Another key logger determination method includes a method in which the key logger determination module 320 searches a device driver level and checks and determines a start address of a driver.

또 다른 키로거 판단 방법은, 상기 키로거 판단 모듈(320)이 디바이스 드라이버 레벨을 검색하여, 드라이버의 주소 테이블이 변경되었으면 키로거와 같은 프로그램이 존재한다고 판단하는 방법이다.Another key logger determination method is a method in which the key logger determination module 320 searches for a device driver level and determines that a program such as a key logger exists if the address table of the driver is changed.

또 다른 키로거 판단 방법은, 상기 키로거 판단 모듈(320)이 디바이스 드라이버 레벨을 검색하여, USB 키보드 등이 사용하는 휴먼 인터페이스 디바이스 클래스(Human Interface Device Class)를 확인하여 판단하는 방법이다. 상기 휴먼 인터페이스 디바이스(HID)는 키보드, 마우스 등의 입력 장치를 지칭하며, 본 발명은 키로거가 상기 입력 장치로 상기 휴먼 인터페이스 디바이스 클래스를 통하여 접근하여 키보드 또는 마우스 등의 입력 장치로부터 입력되는 키 입력값을 빼내는 것을 방지할 수 있다.Another key logger determination method is a method in which the key logger determination module 320 searches a device driver level and checks and determines a human interface device class used by a USB keyboard or the like. The human interface device (HID) refers to an input device such as a keyboard and a mouse, and the present invention provides a key input value that a key logger accesses the input device through the human interface device class and is input from an input device such as a keyboard or a mouse. Can be prevented.

상기 키로거 판단 모듈(320)의 판단 결과, 상기 키 로거로 판단되는 프로그램이 디바이스 드라이버 레벨에 존재하지 않는 경우, 상기 키로거 판단 모듈(320)은 보안 키보드 드라이버 모듈(340)을 활성화시켜 보안 키보드 드라이버 모드로 전환시킨다(S230). 상기 보안 키보드 드라이버 모드로 전환되면, 상기 서비스 서버에서 개인용 컴퓨터로 개인정보를 입력하기 위한 웹 페이지가 전송되어 상기 웹 페이지의 패스워드 입력창에 커서가 놓여지는 경우, 키보드 보안 프로그램(300)이 동작하여 키보드로부터 상기 키보드 보안 프로그램(300)의 데이터 입출력 모듈(350)로 입력되는 개인 정보를 인터넷의 익스플로어의 다이나믹 하이퍼 텍스트 모델링 언어(DHTML) 객체를 이용하여, 직접 상기 웹 페이지에 전달하여 안전하게 보호한다(S250).As a result of the determination of the keylogger determination module 320, when the program determined to be the keylogger does not exist at the device driver level, the keylogger determination module 320 activates the security keyboard driver module 340 to secure the security keyboard driver mode. Switch to (S230). When the security keyboard driver mode is switched, when a web page for inputting personal information is transmitted from the service server to the personal computer and the cursor is placed on the password input window of the web page, the keyboard security program 300 operates. Personal information that is input from the keyboard to the data input / output module 350 of the keyboard security program 300 is securely delivered directly to the web page by using a dynamic hypertext modeling language (DHTML) object of Internet Explorer. (S250).

다른 응용예로 도 5를 참조하면, 서비스 서버로부터 전송된 웹 페이지의 계좌 비밀번호를 입력하기 위하여 계좌비밀번호 입력 창에 커서를 놓으면, 보안 키보드 프로그램의 보안 키보드 드라이버 모듈이 동작한다. 상기 보안 키보드 드라이버 모듈이 동작함과 동시에 도 5에 도시된 바와 같이 [키보드 보안 프로그램에 의해 보호되고 있습니다. 키보드로 입력] 등의 안내 문구가 디스플레이 되어 보안 프로그램에 의해 안전하게 보호되고 있음을 표시할 수 있다.Referring to FIG. 5 as another application example, when the cursor is placed on the account password input window to input the account password of the web page transmitted from the service server, the secure keyboard driver module of the secure keyboard program operates. The security keyboard driver module operates and is protected by the keyboard security program as shown in FIG. 5. Guide texts such as [Enter by keyboard] may be displayed to indicate that the program is secured by the security program.

그러나, 상기 키보드 보안 프로그램(300)의 키로거 판단 모듈(320)의 판단 결과, 상기 키보드 드라이버에 키 로거(Key Logger)로 판단되는 프로그램이 키 입력 값을 선점하는 경우, 상기 키로거 판단 모듈(320)은 가상 키보드 모듈(330)을 활성화시켜 가상 키보드 모드로 전환시킨다(S240).However, as a result of the determination of the key logger determination module 320 of the keyboard security program 300, when a program determined as a key logger preempts a key input value in the keyboard driver, the key logger determination module 320 Activates the virtual keyboard module 330 to switch to the virtual keyboard mode (S240).

상기 가상 키보드 모드로 전환된 상태에서, 상기 서비스 서버가 개인용 컴퓨터로 개인정보를 입력하기 위한 웹 페이지가 전송되어 상기 웹 페이지의 패스워드 입력 창에 커서가 놓여지는 경우, 가상 키보드 모듈이 활성화 되어 상기 개인용 컴퓨터의 화면에 가상 키보드를 디스플레이 한다. 이 때, 키보드가 아닌 마우스로 화면에 디스플레이 된 가상 키보드의 글자 또는 숫자를 선택한다(S250). 상기 가상 키보드 모듈이 동작함과 동시에 도 6 및 도 7에 도시된 바와 같이 [키보드 보안 프로그램에 의해 보호되고 있습니다. 가상 키보드로 입력] 등의 안내 문구가 디스플레이 되어 보안 프로그램에 의해 안전하게 보호되고 있음을 표시할 수 있다.When the web page for inputting personal information is transmitted to the personal computer by the service server and the cursor is placed on the password input window of the web page, the virtual keyboard module is activated and the personal server is switched to the virtual keyboard mode. Display the virtual keyboard on the screen of your computer. In this case, the letters or numbers of the virtual keyboard displayed on the screen are selected by the mouse instead of the keyboard (S250). The virtual keyboard module operates and is protected by the keyboard security program as shown in FIGS. 6 and 7. Guidance text such as [input using virtual keyboard] may be displayed to indicate that the program is secured by a security program.

다른 응용 예에서는, 터치 스크린의 터치에 의하여 상기 가상 키보드의 해당 영역을 선택하면, 이에 대응하여 선택된 영역에 할당된 키 값을 해당 키의 입력으로 처리한다. 예컨대, 가상 키보드가 디스플레이 된 사용자 컴퓨터의 화면에서 비밀번호 "1234"를 선택하고자 할 때, 상기 가상 키보드에 1,2,3,4를 차례로 선택하면, 상기 키보드 보안 프로그램(300)으로 비밀번호 1,2,3,4 가 차례로 입력된다.In another application example, when the corresponding area of the virtual keyboard is selected by the touch of the touch screen, a key value assigned to the corresponding area is processed as an input of the corresponding key. For example, when a password "1234" is to be selected on a screen of a user computer on which a virtual keyboard is displayed, when the 1,2,3,4 are sequentially selected on the virtual keyboard, the password 1, 2 or 3 may be entered into the keyboard security program 300. , 3,4 are entered in order.

상기 단계 S250에서 보안된 키보드를 통하여 입력된 개인 정보 또는 가상 키보드를 통하여 입력된 개인 정보는 키보드 보안 프로그램(300)의 데이터 입출력 모듈(350)을 통하여 보호 대상 웹 브라우저 또는 프로그램으로 안전하게 입력된다(S260).The personal information input through the keyboard secured in step S250 or the personal information input through the virtual keyboard is securely input to the protected web browser or program through the data input / output module 350 of the keyboard security program 300 (S260). ).

도 5 내지 도 7은 본 발명의 일 실시예에 따른 키보드 보안 프로그램의 구동 예를 도시한 것이다.5 to 7 illustrate examples of driving a keyboard security program according to an embodiment of the present invention.

도 5는 디바이스 드라이버(Device Driver) 레벨에 키로거로 판단되는 프로그램이 존재하지 않는 경우, 개인용 컴퓨터에 통신 네트워크로 연결된 서비스 서버로부터 전송된 개인정보를 입력할 수 있는 웹 페이지 또는 웹 브라우저 상에서 키보드를 통하여 개인정보 중 비밀번호 등을 입력할 때, 키보드 보안 프로그램이 동작하여 개인정보를 보안을 통하여 안전하게 웹 브라우저 또는 프로그램으로 입력한다. 부언하면, 상기 키보드 보안 프로그램이 동작하는 시점은 상기 웹 페이지 또는 웹 브라우저 상에 사용자가 개인정보 중 소정의 입력 창 예를 들면, 비밀번호 입력 창에 데이터를 입력할 수 있도록 커서가 깜박거릴 때이다.FIG. 5 illustrates a case in which a program determined as a key logger does not exist at a device driver level, the personal computer may input personal information transmitted from a service server connected to a communication network through a keyboard on a web page or a web browser. When entering a password, etc. of personal information, a keyboard security program operates to input personal information securely through a web browser or a program through security. In other words, the time point at which the keyboard security program operates is when the cursor blinks so that the user can input data into a predetermined input window, for example, a password input window, among personal information on the web page or the web browser.

또한, 도 6에서와 같이, 디바이스 드라이버 레벨에 키로거로 판단되는 프로그램이 존재하는 경우, 웹 페이지 상에서 비밀번호를 입력하고자 할 때, 본 발명의 키보드 보안 프로그램이 자동으로 감지하여 가상 키보드가 개인용 컴퓨터의 화면에디스플레이 된다. 이 때, 사용자가 마우스로 클릭 또는 터치 스크린인 경우는 터치에 의하여 상기 가상 키보드의 키를 선택하면, 선택된 영역에 할당된 키 입력 값을 인터넷 익스플로어의 다이나믹 하이퍼 텍스트 모델링 언어(DHTML) 객체를 이용하여 상기 페이지로 전송한다.In addition, as shown in Figure 6, when there is a program that is determined to be a key logger at the device driver level, when you want to enter a password on a web page, the keyboard security program of the present invention automatically detects the virtual keyboard screen of the personal computer Is displayed. In this case, when the user clicks a mouse or selects a key of the virtual keyboard by touch, a key input value assigned to the selected area is used by using a dynamic hypertext modeling language (DHTML) object of Internet Explorer. To the page.

또한, 도 7에서와 같이, 디바이스 드라이버 레벨에 키로거로 판단되는 프로그램이 존재하는 경우, 인증서 프로그램 등에서 키 입력시에도 본 발명의 키보드 보안 프로그램이 동작하여 사용자 컴퓨터의 화면에 가상 키보드가 개인용 컴퓨터의 화면에 디스플레이 된다.In addition, as shown in FIG. 7, when there is a program that is determined to be a keylogger at the device driver level, the keyboard security program of the present invention operates even when a key is input in a certificate program or the like so that a virtual keyboard is displayed on a screen of a personal computer. Is displayed.

이상에서 상세히 설명한 바와 같이, 본 발명의 키 입력 도용 방지 방법에 의하면, ASP(Application Service Provider) 제품으로 개발되어 인터넷을 통하여 언제 어디서나 어떤 컴퓨터를 사용하든지 바로 다운로드 받아 설치하여 사용할 수 있으며, 인터넷이 연결되지 않는 곳에서는 디스켓, 또는 컴팩트 디스크에 저장된 키보드 보안 프로그램을 설치할 수 있다. 또한, 보안 키보드 드라이버 모드 및 가상 키보드 모드를 지원하여 어떤 상황에서도 시스템의 재부팅 없이 제품을 설치 한 후, 바로 사용할 수 있다는 장점이 있어 재부팅 하는 불편을 없앰으로써 사용자들의 편의를 도모할 수 있다. 또한, 키보드 드라이버를 쓰는 기존 제품들의 특성상 다른 키보드 드라이버를 쓰는 키로거(Key Logger)들과 같이 사용할 때, 드라이버가 로드 되는 순서에 따라 키보드 정보를 그대로 가로채 갈 수 있는 취약점을 극복할 수 있고, 상기 키로거들이 키 입력을 선점하기 위하여 다른 보안 프로그램들과 경합을 벌여 재시작 해야 하는 부담감이 없다. 게다가, 웹 페이지 뿐만 아니라 다른 어떤 애플리케이션에 대해서도 본 발명의 키보드 보안 프로그램을 적용할 수 있으므로, 활용 범위가 넓고 적용될 어플리케이션 리스트를 추가함으로써 확장이 가능하다. 부가적으로, 종래에는 웹 페이지에 액티브 엑스를 설치하여 디바이스 드라이버로부터 키 입력값을 전달 받아 웹 페이지에 입력하였으나, 인터넷 익스플로어의 DHTML 객체를 이용하여 액티브 엑스를 거치지 않고 직접 웹 페이지에 전달함으로써, 웹 페이지에 액티브 엑스를 삽입할 필요가 없으므로 웹 페이지에 수정이 불필요하며, 모든 패스워드 입력 창을 수정 없이 포괄적으로 적용할 수 있다는 장점이 있다.As described in detail above, according to the method for preventing key input theft of the present invention, it is developed as an ASP (Application Service Provider) product and can be downloaded and installed immediately using any computer anytime, anywhere through the Internet, and the Internet is connected. If not, you can install a keyboard security program stored on a diskette or compact disc. In addition, it supports security keyboard driver mode and virtual keyboard mode, so it can be used immediately after installation without rebooting the system in any situation, so users can be convenient by eliminating the inconvenience of rebooting. In addition, due to the characteristics of existing products using a keyboard driver, when used with other key loggers (Key Loggers) using the keyboard driver, the vulnerability that can intercept the keyboard information in the order in which the driver is loaded can be overcome. There is no pressure on keyloggers to compete with other security programs to preempt keystrokes and restart. In addition, the keyboard security program of the present invention can be applied not only to a web page but also to any other application, and thus can be extended by adding a list of applications to which the application is widely applied. In addition, in the past, by installing ActiveX on a web page and receiving a key input value from a device driver and inputting the web page, by using the Internet Explorer's DHTML object, the web page is directly transmitted to the web page without going through ActiveX. Since there is no need to insert ActiveX into the web page, no modification is required on the web page, and all password input windows can be applied comprehensively without modification.

본 발명의 실시예는 하나의 실시예에 지나지 않으며, 본 발명의 요지를 벗어나지 않는 범위 내에서 본 발명의 구성요소의 많은 변형 및 변경이 가능함을 물론이며, 본 발명이 실시예에만 한정되는 것은 아니다.Embodiment of the present invention is only one embodiment, of course, many modifications and variations of the components of the present invention without departing from the gist of the present invention, of course, the present invention is not limited to the embodiment. .

Claims (14)

a) 통신 네트워크를 통하여 소정의 서버에 사용자 컴퓨터가 연결되어, 상기 서버가 적어도 하나의 개인정보 입력창을 포함하는 페이지를 사용자 컴퓨터로 전송 하는 단계;a) a user computer is connected to a predetermined server via a communication network, and the server transmits a page including at least one personal information input window to the user computer; b) 상기 사용자 컴퓨터에 키보드 보안 프로그램이 설치된 경우, 상기 키보드 보안 프로그램의 키 로거 판단 모듈이 상기 사용자 컴퓨터의 키보드 드라이버 레벨에 키 로거가 존재하는지 여부를 판단하는 단계;b) when a keyboard security program is installed in the user computer, the key logger determination module of the keyboard security program determines whether a key logger exists at a keyboard driver level of the user computer; c) 상기 단계 b)의 판단 결과, 상기 키 로거가 키보드 드라이버 레벨에 존재하지 않고 상기 개인정보 입력창 중 소정의 입력창에 키 신호 입력 준비가 완료된 경우, 상기 키보드를 통하여 상기 개인정보 입력창에 개인 정보를 입력할 수 있도록 키보드 드라이버 모듈이 동작되는 단계; 및c) As a result of the determination of step b), if the key logger does not exist at the keyboard driver level and the preparation of the key signal input to a predetermined input window among the personal information input windows is completed, Operating a keyboard driver module to input personal information; And d) 상기 단계 b)의 판단 결과, 상기 키 로거가 키보드 드라이버 레벨에 존재하고 상기 개인정보 입력창 중 소정의 입력창에 키 신호 입력 준비가 완료된 경우, 상기 사용자 단말기의 화면에 가상 키보드를 디스플레이 하도록 상기 키보드 생성 모듈이 동작되는 단계를 포함하여 구성되는 것을 특징으로 하는 키 입력 도용 방지 방법.d) If the key logger is present at the keyboard driver level and ready to input the key signal in a predetermined input window among the personal information input windows, the virtual keyboard is displayed on the screen of the user terminal. And operating the keyboard generation module. 제 1 항에 있어서,The method of claim 1, 상기 사용자 컴퓨터와 연결된 상기 키보드 또는 상기 가상 키보드로부터 입력된 키 신호는 다이나믹 하이퍼 텍스트 모델링 언어 객체를 이용하여 상기 페이지로 전송되는 것을 특징으로 하는 키 입력 도용 방지 방법.The key signal input from the keyboard or the virtual keyboard connected to the user computer is transmitted to the page using a dynamic hypertext modeling language object. 제 1 항에 있어서, 상기 키보드 보안 프로그램이 사용자의 컴퓨터에 설치되어 있지 않은 경우, 상기 서버로부터 상기 사용자의 컴퓨터로 상기 키보드 보안 프로그램이 다운로드 되어 인스톨 되는 단계를 더 포함하며,The method of claim 1, further comprising the step of downloading and installing the keyboard security program from the server to the user's computer when the keyboard security program is not installed on the user's computer. 상기 키보드 보안 프로그램이 인스톨된 사용자의 컴퓨터를 재부팅 하지 않은 상태에서 상기 단계 b)를 수행하는 것을 특징으로 하는 키 입력 도용 방지 방법.And performing step b) without rebooting the user's computer on which the keyboard security program is installed. 제 3 항에 있어서, 상기 키보드 보안 프로그램은 액티브 엑스 또는 플러그 인의 형태를 통하여 배포 및 설치되는 것을 특징으로 하는 키 입력 도용 방지 방법.4. The method of claim 3, wherein the keyboard security program is distributed and installed through ActiveX or plug-in. 제 1 항에 있어서, 상기 키보드 보안 프로그램이 사용자의 컴퓨터에 존재하지 않는 경우, 상기 사용자의 컴퓨터로 읽을 수 있는 기록매체로부터 상기 키보드 보안 프로그램이 인스톨 되는 단계를 더 포함하는 것을 특징으로 하는 키 입력 도용 방지 방법.2. The method of claim 1, further comprising installing the keyboard security program from a computer-readable recording medium if the keyboard security program does not exist in the user's computer. Prevention method. 제 5 항에 있어서, 상기 사용자의 컴퓨터로 읽을 수 있는 기록매체는 컴팩트 디스크 또는 디스켓인 것을 특징으로 하는 키 입력 도용 방지 방법.6. The method of claim 5, wherein the computer-readable recording medium of the user is a compact disk or diskette. 제 1 항에 있어서, 상기 가상 키보드는 디스플레이부의 소정의 영역에 디스플레이 되어, 상기 가상 키보드를 이용하여 키입력 동작이 수행되는 것을 특징으로 하는 키 입력 도용 방지 방법.The method of claim 1, wherein the virtual keyboard is displayed in a predetermined area of a display unit, and a key input operation is performed using the virtual keyboard. 제 7 항에 있어서, 상기 가상 키보드에서의 키입력 동작 수행은The method of claim 7, wherein performing a key input operation on the virtual keyboard i-1) 마우스의 클릭 또는 터치 스크린의 터치에 의하여 상기 가상 키보드의 해당 영역을 선택하는 단계;i-1) selecting a corresponding region of the virtual keyboard by clicking a mouse or touching a touch screen; i-2) 상기 단계 i-1)에 응답하여 상기 선택된 영역에 할당된 키 값을 해당 키의 입력으로 처리하는 단계; 및i-2) processing the key value assigned to the selected area in response to step i-1) as an input of the corresponding key; And i-3) 상기 단계 i-2)에서 처리된 키 입력 값을 인터넷 익스플로어의 다이나믹 하이퍼 텍스트 모델링 언어(DHTML) 객체를 이용하여 상기 페이지로 전송하는 단계를 포함하는 것을 특징으로 하는 키 입력 도용 방지 방법.i-3) transmitting the key input value processed in step i-2) to the page using a dynamic hyper text modeling language (DHTML) object of Internet Explorer. Way. 제 1 항에 있어서, 상기 서버가 상기 사용자 컴퓨터로 전송하는 페이지에 포함된 적어도 하나의 개인정보 입력창 중 패스워드 입력창을 선택적으로 인식하여, 상기 패스워드 입력창에 입력되는 데이터를 보안하는 것을 특징으로 하는 키 입력 도용 방지 방법.The method of claim 1, wherein the server selectively recognizes a password input window among at least one personal information input window included in a page transmitted to the user computer to secure data input to the password input window. How to prevent keystroke theft. 제 1 항에 있어서, 상기 단계 c)에서 상기 키보드 드라이버 레벨에 키 로거가 존재하는지 여부는, 상기 키보드 드라이버 레벨에 시스템 디폴트 드라이버 이외의 드라이버가 존재하는지 여부에 따라 결정되는 것을 특징으로 하는 키 입력 도용 방지 방법.The method of claim 1, wherein in step c), whether a key logger exists at the keyboard driver level is determined based on whether a driver other than a system default driver exists at the keyboard driver level. Prevention method. 제 1 항에 있어서, 상기 단계 c)에서 상기 키보드 드라이버 레벨에 키 로거가 존재하는지 여부는, 상기 키보드 드라이버 레벨의 드라이버 시작 주소를 확인하여 결정되는 것을 특징으로 하는 키 입력 도용 방지 방법.2. The method of claim 1, wherein in step c), whether a key logger exists at the keyboard driver level is determined by checking a driver start address of the keyboard driver level. 제 1 항에 있어서, 상기 단계 c)에서 상기 키보드 드라이버 레벨에 키 로거가 존재하는지 여부는, 상기 키보드 드라이버 레벨에서 드라이버의 주소 테이블이 변경되었는지 여부에 따라 결정되는 것을 특징으로 하는 키 입력 도용 방지 방법.2. The method of claim 1, wherein in the step c), whether a key logger exists at the keyboard driver level is determined according to whether the address table of the driver is changed at the keyboard driver level. . 제 1 항에 있어서, 상기 단계 c)에서 상기 키보드 드라이버 레벨에 키 로거가 존재하는지 여부는, HID( 휴먼 인터페이스 디바이스 ) 클래스를 확인하여 판단하는 것을 특징으로 하는 키 입력 도용 방지 방법.2. The method of claim 1, wherein in step c), a key logger exists at the keyboard driver level to determine a human interface device (HID) class. 제 1 항에 있어서, 상기 개인 정보는 아이디, 패스워드, 통장번호, 비밀번호, 인증번호 중 적어도 하나를 포함하는 것을 특징으로 하는 키 입력 도용 방지 방법.The method of claim 1, wherein the personal information includes at least one of an ID, a password, a passbook number, a password, and an authentication number.
KR10-2003-0003223A 2003-01-17 2003-01-17 Method for protecting from keystroke logging Expired - Lifetime KR100496462B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0003223A KR100496462B1 (en) 2003-01-17 2003-01-17 Method for protecting from keystroke logging

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0003223A KR100496462B1 (en) 2003-01-17 2003-01-17 Method for protecting from keystroke logging

Publications (2)

Publication Number Publication Date
KR20040066237A true KR20040066237A (en) 2004-07-27
KR100496462B1 KR100496462B1 (en) 2005-06-22

Family

ID=37356095

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0003223A Expired - Lifetime KR100496462B1 (en) 2003-01-17 2003-01-17 Method for protecting from keystroke logging

Country Status (1)

Country Link
KR (1) KR100496462B1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100571695B1 (en) * 2005-11-04 2006-04-18 (주)아이넷캅 How to prevent hacking of keyboard, mouse and video
WO2006043759A1 (en) * 2004-10-19 2006-04-27 Min-Gyu Kim Method for preventing keyboard hacking by using mouse
KR100710032B1 (en) * 2005-02-23 2007-04-25 제이알소프트 주식회사 Method and system for preventing hacking of keyboard input information of Internet Explorer user through secure input filter driver and keyboard security input BH in Windows operating system
KR100745489B1 (en) * 2005-07-19 2007-08-02 소프트포럼 주식회사 Key input hacking prevention method
KR100746944B1 (en) * 2006-04-14 2007-08-07 고려대학교 산학협력단 Method of preventing information leakage and recording medium storing program for preventing information leakage
WO2008094776A1 (en) * 2007-01-31 2008-08-07 Microsoft Corporation Password authentication via a one-time keyboard map
US7774595B2 (en) 2004-02-05 2010-08-10 King Information & Network Computer security apparatus and method using security input device driver
US8156346B2 (en) 2009-01-20 2012-04-10 Kings Information and Network Keyboard-input information-security apparatus and method
KR101438830B1 (en) * 2008-08-27 2014-09-05 주식회사 엘지유플러스 Korean-English conversion apparatus and method thereof in a portable terminal

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101267875B1 (en) 2012-01-27 2013-05-27 숭실대학교산학협력단 Apparatus for message encryption and decryption using virtual keyboard and recording medium storing program for executing method of the same in computer
KR101393590B1 (en) 2013-11-08 2014-05-09 서진형 METHOD AND DEVICE FOR TEXT INPUT USING SECURE MODE KEYBOARD
KR102133902B1 (en) 2019-10-22 2020-07-14 배희진 Secure input device

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774595B2 (en) 2004-02-05 2010-08-10 King Information & Network Computer security apparatus and method using security input device driver
WO2006043759A1 (en) * 2004-10-19 2006-04-27 Min-Gyu Kim Method for preventing keyboard hacking by using mouse
KR100710032B1 (en) * 2005-02-23 2007-04-25 제이알소프트 주식회사 Method and system for preventing hacking of keyboard input information of Internet Explorer user through secure input filter driver and keyboard security input BH in Windows operating system
KR100745489B1 (en) * 2005-07-19 2007-08-02 소프트포럼 주식회사 Key input hacking prevention method
KR100571695B1 (en) * 2005-11-04 2006-04-18 (주)아이넷캅 How to prevent hacking of keyboard, mouse and video
KR100746944B1 (en) * 2006-04-14 2007-08-07 고려대학교 산학협력단 Method of preventing information leakage and recording medium storing program for preventing information leakage
WO2008094776A1 (en) * 2007-01-31 2008-08-07 Microsoft Corporation Password authentication via a one-time keyboard map
KR101438830B1 (en) * 2008-08-27 2014-09-05 주식회사 엘지유플러스 Korean-English conversion apparatus and method thereof in a portable terminal
US8156346B2 (en) 2009-01-20 2012-04-10 Kings Information and Network Keyboard-input information-security apparatus and method

Also Published As

Publication number Publication date
KR100496462B1 (en) 2005-06-22

Similar Documents

Publication Publication Date Title
CN101334824B (en) Portable secured computing environment for performing online confidential transactions in untrusted computers
US20050240756A1 (en) System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows.
US9251332B2 (en) Security system and method for controlling access to computing resources
US20040230836A1 (en) Hardware implementation of process-based security protocol
US20090328169A1 (en) Apparatus and method for convenient and secure access to websites
US9571487B2 (en) Systems and methods for providing a covert password manager
US20080127319A1 (en) Client based online fraud prevention
US20090006232A1 (en) Secure computer and internet transaction software and hardware and uses thereof
US20040158734A1 (en) System and method for process-based security in a portable electronic device
US7222240B2 (en) Token for storing installation software and drivers
US20070101148A1 (en) Secure prompting
KR100496462B1 (en) Method for protecting from keystroke logging
US8850563B2 (en) Portable computer accounts
US20090222908A1 (en) Device for Transmission of Stored Password Information Through a Standard Computer Input Interface
US20040093525A1 (en) Process based security tai building
Kang et al. USBWall: A novel security mechanism to protect against maliciously reprogrammed USB devices
KR20090036820A (en) Virtual keyboard hacking prevention input system and operation method
AU2009213049B2 (en) Key protecting method and a computing apparatus
US7720829B2 (en) Middleware sign-on
US8732821B1 (en) Method and apparatus for preventing accidential disclosure of confidential information via visual representation objects
KR20090109640A (en) Usb device security device and method
US20090125998A1 (en) Systems, methods and devices for secure remote-access computing
KR100710032B1 (en) Method and system for preventing hacking of keyboard input information of Internet Explorer user through secure input filter driver and keyboard security input BH in Windows operating system
JP2006072952A (en) Network service system using device
KR100959638B1 (en) Recording medium recording keyboard hacking blocking method and program

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20030117

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20040923

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20050530

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20050613

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20050613

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20080602

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20090526

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20100611

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20111212

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20120612

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20130613

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20130613

Start annual number: 9

End annual number: 9

FPAY Annual fee payment

Payment date: 20140613

Year of fee payment: 10

PR1001 Payment of annual fee

Payment date: 20140613

Start annual number: 10

End annual number: 10

FPAY Annual fee payment

Payment date: 20150615

Year of fee payment: 11

PR1001 Payment of annual fee

Payment date: 20150615

Start annual number: 11

End annual number: 11

FPAY Annual fee payment

Payment date: 20160613

Year of fee payment: 12

PR1001 Payment of annual fee

Payment date: 20160613

Start annual number: 12

End annual number: 12

FPAY Annual fee payment

Payment date: 20170613

Year of fee payment: 13

PR1001 Payment of annual fee

Payment date: 20170613

Start annual number: 13

End annual number: 13

FPAY Annual fee payment

Payment date: 20180614

Year of fee payment: 14

PR1001 Payment of annual fee

Payment date: 20180614

Start annual number: 14

End annual number: 14

FPAY Annual fee payment

Payment date: 20190613

Year of fee payment: 15

PR1001 Payment of annual fee

Payment date: 20190613

Start annual number: 15

End annual number: 15

PR1001 Payment of annual fee

Payment date: 20200615

Start annual number: 16

End annual number: 16

PR1001 Payment of annual fee

Payment date: 20210614

Start annual number: 17

End annual number: 17

PR1001 Payment of annual fee

Payment date: 20220613

Start annual number: 18

End annual number: 18

PC1801 Expiration of term

Termination date: 20230717

Termination category: Expiration of duration