KR100854302B1 - Keyboard hacking protection method using the virtual keyboard - Google Patents

Keyboard hacking protection method using the virtual keyboard Download PDF

Info

Publication number
KR100854302B1
KR100854302B1 KR1020060110707A KR20060110707A KR100854302B1 KR 100854302 B1 KR100854302 B1 KR 100854302B1 KR 1020060110707 A KR1020060110707 A KR 1020060110707A KR 20060110707 A KR20060110707 A KR 20060110707A KR 100854302 B1 KR100854302 B1 KR 100854302B1
Authority
KR
South Korea
Prior art keywords
keyboard
virtual keyboard
input
virtual
hacking
Prior art date
Application number
KR1020060110707A
Other languages
Korean (ko)
Other versions
KR20080042375A (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 KR1020060110707A priority Critical patent/KR100854302B1/en
Publication of KR20080042375A publication Critical patent/KR20080042375A/en
Application granted granted Critical
Publication of KR100854302B1 publication Critical patent/KR100854302B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0236Character input methods using selection techniques to select from displayed items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

본 발명은 가상 키보드를 이용하여 키보드 해킹을 방지하는 방법에 관한 것으로서, 더욱 상세하게는 가상 키보드 구동시에 가상 키보드의 자판 전체를 임의 각도로 회전시키거나 임의 배율로 확대시켜 각 자판의 배열 순서는 그대로 유지한 채 그 좌표값을 변경시킴으로써, 마우스 입력 좌표 해킹에 따른 키 입력 정보 유출을 방지하면서도 사용자가 특정 자판을 용이하게 찾을 수 있도록 하여 보안성과 편의성이 향상된 키보드 해킹 방지 방법에 관한 것이다.The present invention relates to a method for preventing keyboard hacking by using a virtual keyboard, and more particularly, the entire keyboard of the virtual keyboard is rotated at an arbitrary angle or enlarged at an arbitrary magnification when the virtual keyboard is driven. The present invention relates to a method for preventing keyboard hacking, which improves security and convenience by allowing a user to easily find a specific keyboard while preventing the leakage of key input information due to hacking of mouse input coordinates by changing the coordinate value while maintaining the coordinate value.

본 발명에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법은, 웹브라우저의 텍스트 상자로 포커스(focus)가 이동되는 것을 감지하는 단계와; 가상 키보드의 회전각을 0 ~ 360˚ 사이의 임의 각도로 설정하는 단계와; 상기 가상 키보드 회전각 설정 단계에서 설정된 회전각에 따라 회전된 가상 키보드를 생성하는 단계와; 사용자가 가상 키보드 상의 특정 자판을 마우스로 클릭하는 마우스 입력을 감지하는 단계와; 상기 감지된 마우스 입력 좌표에 의해 해당 자판의 입력 키값을 산출하는 단계와; 상기 산출된 입력 키값을 웹브라우저로 전송하여 텍스트 박스에 해당 텍스트가 출력되도록 하는 단계와; 가상 키보드 입력이 종료되었는지를 판단하는 단계; 및 상기 가상 키보드 입력 종료 판단 단계에서 입력이 종료된 것으로 판단되는 경우, 가상 키보드를 종료하는 단계를 포함하여 구성되는 점을 특징으로 한다.Keyboard hacking prevention method using a virtual keyboard according to the present invention, the step of detecting the focus (focus) to the text box of the web browser; Setting a rotation angle of the virtual keyboard to an arbitrary angle between 0 and 360 °; Generating a virtual keyboard rotated according to the rotation angle set in the virtual keyboard rotation angle setting step; Detecting a mouse input wherein a user clicks on a specific keyboard on the virtual keyboard with the mouse; Calculating an input key value of the corresponding keyboard based on the detected mouse input coordinates; Transmitting the calculated input key value to a web browser to output the corresponding text in a text box; Determining whether the virtual keyboard input has ended; And terminating the virtual keyboard when the input is determined to be terminated in the virtual keyboard input termination determination step.

가상 키보드, 키보드 해킹, 보안, 비밀번호 Virtual keyboard, keyboard hack, security, password

Description

가상 키보드를 이용한 키보드 해킹 방지 방법{Keyboard hacking protection method using the virtual keyboard}Keyboard hacking protection method using the virtual keyboard}

도 1은 본 발명의 제1 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법이 적용되는 가상 키보드 입력 시스템의 구성을 나타내는 도면.1 is a diagram illustrating a configuration of a virtual keyboard input system to which a keyboard hacking prevention method using a virtual keyboard according to a first embodiment of the present invention is applied.

도 2는 본 발명의 제1 실시예에 적용되는 가상 키보드의 형태를 나타내는 도면.Fig. 2 is a diagram showing the form of a virtual keyboard applied to the first embodiment of the present invention.

도 3은 본 발명의 제1 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법을 나타내는 순서도.3 is a flowchart illustrating a keyboard hacking prevention method using a virtual keyboard according to a first embodiment of the present invention.

도 4는 본 발명의 제1 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법의 변형예를 나타내는 순서도.4 is a flow chart showing a modification of the keyboard hacking prevention method using a virtual keyboard according to a first embodiment of the present invention.

도 5는 본 발명의 제2 실시예에 적용되는 가상 키보드의 형태를 나타내는 도면.5 is a view showing the form of a virtual keyboard applied to the second embodiment of the present invention.

도 6은 본 발명의 제2 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법을 나타내는 순서도.6 is a flowchart illustrating a keyboard hacking prevention method using a virtual keyboard according to a second embodiment of the present invention.

도 7은 본 발명의 제2 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법의 변형예를 나타내는 순서도.7 is a flowchart showing a modification of the keyboard hacking prevention method using a virtual keyboard according to a second embodiment of the present invention.

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

10 : 마우스 20 : 가상 키보드10: mouse 20: virtual keyboard

30 : 가상 키보드 드라이버 31 : 입력 감지부30: virtual keyboard driver 31: input detection unit

32 : 키보드 제어부 33 : 데이터 발신부32: keyboard control unit 33: data transmission unit

40 : 웹브라우저40: web browser

본 발명은 가상 키보드를 이용하여 키보드 해킹을 방지하는 방법에 관한 것으로서, 더욱 상세하게는 가상 키보드 구동시에 가상 키보드의 자판 전체를 임의 각도로 회전시키거나 임의 배율로 확대시켜 각 자판의 배열 순서는 그대로 유지한 채 그 좌표값을 변경시킴으로써, 마우스 입력 좌표 해킹에 따른 키 입력 정보 유출을 방지하면서도 사용자가 특정 자판을 용이하게 찾을 수 있도록 하여 보안성과 편의성이 향상된 키보드 해킹 방지 방법에 관한 것이다.The present invention relates to a method for preventing keyboard hacking by using a virtual keyboard, and more particularly, the entire keyboard of the virtual keyboard is rotated at an arbitrary angle or enlarged at an arbitrary magnification when the virtual keyboard is driven. The present invention relates to a method for preventing keyboard hacking, which improves security and convenience by allowing a user to easily find a specific keyboard while preventing the leakage of key input information due to hacking of mouse input coordinates by changing the coordinate value while maintaining the coordinate value.

최근 인터넷과 컴퓨터 기술이 급속도로 발전함에 따라 인터넷 뱅킹, 주식 거래 및 인터넷 쇼핑몰에서의 전자 결제 등 중요한 업무가 개인이나 기업의 개인용 컴퓨터(PC)를 통해 이루어지고 있다.Recently, with the rapid development of the Internet and computer technology, important tasks such as Internet banking, stock trading, and electronic payment in the Internet shopping mall are performed through personal computers (PCs) of individuals or companies.

이러한 PC를 통한 금융 거래나 전자 상거래에서 사용자는 본인의 신원을 증명하기 위해 아이디(ID), 비밀번호(password), 인증서 비밀번호, 신용카드 번호 또는 주민등록번호 등을 입력하는 인증 과정을 거치게 되어 있다.In such a financial transaction or e-commerce through a PC, a user enters an ID, password, certificate password, credit card number or social security number to prove his or her identity.

그러나, 이와 같은 중요 정보를 키보드로 입력하는 과정에서, 악의를 가진 제 3자가 PC에 설치한 스파이웨어(spyware)나 키스트로크 로거(keystroke logger)를 통해 키보드 입력 정보를 획득함으로써, 취득한 개인 정보를 불법적으로 도용하는 사례들이 증가하고 있다.However, in the process of inputting such important information through the keyboard, personal information obtained by acquiring the keyboard input information through spyware or keystroke logger installed on a PC by a malicious third party is obtained. There are a growing number of illegal thefts.

이러한 문제를 해결하기 위한 종래의 키보드 해킹 방지 방법으로는 PC에 바이러스 백신이나 스파이웨어 제거 도구 등을 설치하여, 스파이웨어 등의 악성 프로그램을 탐지 및 제거하는 방법이 있다. 그러나, 이러한 방법은 변형 또는 신종 악성 프로그램이 발생한 경우에는 그 피해 상황이 보고된 이후에만 대처가 가능하므로, 사전에 피해를 예방하는 데에는 한계가 있다는 문제점이 있다.As a conventional keyboard hacking prevention method for solving such a problem, there is a method of installing an antivirus or a spyware removal tool on a PC to detect and remove malicious programs such as spyware. However, when the modified or new malicious program occurs, it is possible to cope only after the damage situation is reported, and thus there is a limit in preventing the damage in advance.

또다른 종래의 키보드 해킹 방지 방법으로는 한국등록특허공보 제 0496462호에 기재된 "키 입력 도용 방지 방법"이 있다. 상기 문헌에는 통신 네트워크를 통하여 소정의 서버에 연결된 사용자 컴퓨터에 키 로거(key logger)가 존재하는지 여부를 판단하여, 키 로거가 존재하는 경우 상기 사용자 컴퓨터의 화면에 가상 키보드를 디스플레이하도록 가상 키보드 생성 모듈이 동작함으로써, 사용자로부터 상기 가상 키보드를 통해 키 입력을 받는 방법이 기재되어 있다.Another conventional keyboard hacking prevention method is a "key input theft prevention method" described in Korean Patent Publication No. 0496462. The document includes a virtual keyboard generation module that determines whether a key logger exists in a user computer connected to a predetermined server through a communication network, and displays a virtual keyboard on a screen of the user computer when the key logger exists. By this operation, a method of receiving a key input from the user through the virtual keyboard is described.

그러나, 상기 키 입력 도용 방지 방법은 사용자 컴퓨터에 마우스의 좌표 입력을 수집하는 해킹 프로그램이 설치된 경우, 악의를 가진 제3자가 사용자의 반복적인 마우스 입력 좌표를 획득한후 이를 분석하여 입력 키 정보를 알아낼 수 있는 문제점이 있다.However, if the hacking program for collecting the coordinate input of the mouse is installed in the user's computer, a malicious third party acquires the input key information by analyzing the repeated mouse input coordinates of the user and analyzes the input key information. There is a problem that can be.

본 발명은 상기한 종래 기술에 따른 키보드 해킹 방지 방법의 문제점을 해결하기 위한 것이다. 즉, 본 발명의 목적은, 가상 키보드 구동시에 가상 키보드의 자판 전체를 임의 각도로 회전시키거나 임의 배율로 확대시켜 각 자판의 배열 순서는 그대로 유지한 채 그 좌표값을 변경시킴으로써, 사용자가 특정 자판을 용이하게 찾을 수 있도록 편의성을 최대한 제공하면서 마우스 입력 좌표 해킹에 따른 키 입력 정보 유출을 방지하는 데에 있다.The present invention is to solve the problem of the keyboard hacking prevention method according to the prior art described above. That is, an object of the present invention is to rotate the entire keyboard of the virtual keyboard at an arbitrary angle or enlarge it at an arbitrary magnification while driving the virtual keyboard, thereby changing the coordinate values while maintaining the arrangement order of each keyboard, thereby allowing the user to specify a specific keyboard. It is to prevent the leakage of key input information by hacking the mouse input coordinates while providing maximum convenience for easy to find.

상기의 목적을 달성하기 위한 기술적 사상으로서의 본 발명은,The present invention as a technical idea for achieving the above object,

웹브라우저의 텍스트 상자로 포커스(focus)가 이동되는 것을 감지하는 단계와; 가상 키보드의 회전각을 0 ~ 360˚ 사이의 임의 각도로 설정하는 단계와; 상기 가상 키보드 회전각 설정 단계에서 설정된 회전각에 따라 회전된 가상 키보드를 생성하는 단계와; 사용자가 가상 키보드 상의 특정 자판을 마우스로 클릭하는 마우스 입력을 감지하는 단계와; 상기 감지된 마우스 입력 좌표에 의해 해당 자판의 입력 키값을 산출하는 단계와; 상기 산출된 입력 키값을 웹브라우저로 전송하여 텍스트 박스에 해당 텍스트가 출력되도록 하는 단계와; 가상 키보드 입력이 종료되었는지를 판단하는 단계; 및 상기 가상 키보드 입력 종료 판단 단계에서 입력이 종료된 것으로 판단되는 경우, 가상 키보드를 종료하는 단계를 포함하여 구성되는 것을 특징으로 하는 가상 키보드를 이용한 키보드 해킹 방지 방법을 제공한다.Detecting focus being moved to a text box of a web browser; Setting a rotation angle of the virtual keyboard to an arbitrary angle between 0 and 360 °; Generating a virtual keyboard rotated according to the rotation angle set in the virtual keyboard rotation angle setting step; Detecting a mouse input wherein a user clicks on a specific keyboard on the virtual keyboard with the mouse; Calculating an input key value of the corresponding keyboard based on the detected mouse input coordinates; Transmitting the calculated input key value to a web browser to output the corresponding text in a text box; Determining whether the virtual keyboard input has ended; And If it is determined that the input is terminated in the virtual keyboard input end determination step, it provides a keyboard hacking prevention method using a virtual keyboard, comprising the step of terminating the virtual keyboard.

이하, 본 발명의 바람직한 실시예를 첨부 도면에 의거하여 상세하게 설명하 기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 제1 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법이 적용되는 가상 키보드 입력 시스템의 구성을 나타내는 도면이다.1 is a diagram illustrating a configuration of a virtual keyboard input system to which a keyboard hacking prevention method using a virtual keyboard according to a first embodiment of the present invention is applied.

도 1에 도시된 바와 같이, 본 발명의 제1 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법이 적용되는 가상 키보드 입력 시스템은 마우스(10)와, 아이디 또는 비밀번호와 같이 서비스 제공에 필요한 정보를 입력받기 위하여 사용자에게 텍스트 상자를 제공하는 웹브라우저(40)와, 화면상에 키보드 형태로 출력되어 마우스를 통해 키입력을 받는 가상 키보드(20)와, 가상 키보드(20)의 동작을 제어하고 가상 키보드(20)로 입력된 키입력 데이터를 처리하여 웹브라우저(40)로 전송하는 가상 키보드 드라이버(30)를 포함하여 구성된다.As shown in FIG. 1, the virtual keyboard input system to which the keyboard hacking prevention method using the virtual keyboard according to the first embodiment of the present invention is applied includes information required for providing a service such as a mouse 10 and an ID or a password. Web browser 40 that provides a text box to the user to receive the input, the virtual keyboard 20 is output on the screen in the form of a keyboard receives a key input through the mouse, and controls the operation of the virtual keyboard 20 and virtual It comprises a virtual keyboard driver 30 for processing the key input data input to the keyboard 20 to transmit to the web browser (40).

상기 가상 키보드 드라이버(30)는 가상 키보드(20)의 자판에 입력되는 마우스 입력을 감지하여 해당 키값을 산출하는 입력 감지부(31)와, 입력된 키 데이터를 웹브라우저로 발신하는 데이터 발신부(33) 및 가상 키보드(20)를 생성하고 그 크기 및 위치를 제어하는 키보드 제어부(32)로 구성된다.The virtual keyboard driver 30 detects a mouse input input to the keyboard of the virtual keyboard 20 and calculates a corresponding key value, and a data transmitter for transmitting the input key data to a web browser ( 33) and a keyboard controller 32 for generating the virtual keyboard 20 and controlling its size and position.

본 실시예에 적용되는 가상 키보드(20)는 비밀번호 등의 숫자 입력을 위한 숫자 키보드로서, 도 2의 (a)에 도시된 바와 같이, 일련의 숫자가 시계 방향으로 원주를 따라 순차적으로 배치된 원형의 키보드로 구성된다. 또한, 도 2의 (b)와 같이, 키보드 제어부(32)가 가상 키보드를 생성할 때마다 숫자 자판 부분을 가상 키보드의 중심을 기준으로 임의 각도로 회전시킴으로써, 해킹 프로그램에 의해 마우스의 입력 좌표가 누출되더라도 악의를 가진 제 3자가 해당하는 키 입력값을 추정 할 수 없도록 한다. 여기서, 가상 키보드(20)의 외형을 원형이 아닌 삼각형 또는 사각형과 같은 다각형으로 하고 일련의 숫자가 다각형의 외주연을 따라 순차적으로 배치되도록 구성하여, 키보드 제어부(32)가 가상 키보드(20)를 생성할 때 외주연을 따라 형성된 숫자 자판 부분을 가상 키보드의 중심을 기준으로 임의 각도로 회전시킬 수도 있다.The virtual keyboard 20 applied to the present embodiment is a numeric keyboard for inputting a number such as a password, and as shown in FIG. 2A, a series of numbers are sequentially arranged along the circumference in a clockwise direction. It consists of a keyboard. In addition, as shown in FIG. 2B, whenever the keyboard control unit 32 generates the virtual keyboard, the numeric keypad is rotated at an arbitrary angle with respect to the center of the virtual keyboard, whereby the input coordinate of the mouse is changed by the hacking program. Even if leaked, the malicious third party cannot estimate the corresponding key input value. Here, the external shape of the virtual keyboard 20 is configured as a polygon such as a triangle or a square rather than a circle, and a series of numbers are sequentially arranged along the outer circumference of the polygon, so that the keyboard controller 32 controls the virtual keyboard 20. When generating, the number keyboard portion formed along the outer circumference may be rotated at an angle with respect to the center of the virtual keyboard.

이하, 상기한 바와 같이 구성된 가상 키보드 입력 시스템을 이용한 본 발명의 제1 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법에 대하여 도 3을 이용하여 상세히 설명하기로 한다.Hereinafter, a method for preventing keyboard hacking using the virtual keyboard according to the first embodiment of the present invention using the virtual keyboard input system configured as described above will be described in detail with reference to FIG. 3.

도 3은 본 발명의 제1 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법을 나타내는 순서도이다.3 is a flowchart illustrating a keyboard hacking prevention method using a virtual keyboard according to a first embodiment of the present invention.

먼저, 사용자가 키보드 입력을 위해 웹브라우저(40)의 텍스트 상자에 마우스를 클릭하거나 또는 자동으로 웹브라우저(40)의 텍스트 상자에 커서가 위치하게 되는 경우, 가상 키보드 드라이버(30)의 키보드 제어부(32)는 해당 텍스트 상자로 포커스(focus)가 이동되는 것을 감지한다(S100). 예를 들어, 사용자가 인터넷 뱅킹을 이용해서 계좌 이체를 하기 위하여 이체 비밀번호 입력창에 마우스를 클릭하면, 해당 텍스트 박스가 포커스를 가지게 되는데, 키보드 제어부(32)는 이와 같은 포커스 이동을 감지하게 된다.First, when a user clicks a mouse on a text box of the web browser 40 for keyboard input, or when the cursor is automatically placed on a text box of the web browser 40, the keyboard control unit of the virtual keyboard driver 30 32 detects that the focus is moved to the corresponding text box (S100). For example, when the user clicks the mouse on the transfer password input window to transfer the account using internet banking, the corresponding text box has focus, and the keyboard controller 32 detects the focus movement.

이후, 키보드 제어부는 가상 키보드(20)의 회전각을 설정한다(S110). 여기서, 회전각은 0 ~ 360˚ 사이의 임의 각도로 설정하거나, 0 ~ 360˚ 구간을 10으로 나눈 10개의 각도 중에서 임의로 선택할 수도 있으며, 공지된 랜덤 알고리즘을 이용하여 랜덤하게 선택하거나, 미리 설정된 일군의 값들 중에서 순차적으로 선택할 수도 있다.Thereafter, the keyboard controller sets a rotation angle of the virtual keyboard 20 (S110). Here, the rotation angle may be set to an arbitrary angle between 0 and 360 °, or arbitrarily selected from 10 angles divided by 10 from 0 to 360 °, randomly selected using a known random algorithm, or a preset group. You can also select sequentially among the values of.

상기 가상 키보드 회전각 설정 단계(S110)가 완료되면, 키보드 제어부(32)는 상기 설정된 회전각으로 회전된 가상 키보드(20)를 생성하여 활성화시킨다(S120). 여기서, 가상 키보드(20)는 전술하여 설명한 바와 같이 도 2의 (b)와 같은 형태로 회전된 상태로 생성되며, 키보드 전체가 임의 각도로 회전하여 각 숫자 자판의 좌표가 변경되면서도 각 숫자 자판의 상대적인 위치 즉, 숫자의 배열 순서는 그대로 유지되기 때문에, 마우스 입력 좌표 해킹에 따른 비밀번호 유출을 방지하면서도 사용자가 특정 숫자를 찾는 시간이 오래 소요되지 않도록 사용자의 편의성을 최대한 보장할 수 있다.When the virtual keyboard rotation angle setting step (S110) is completed, the keyboard controller 32 generates and activates the virtual keyboard 20 rotated at the set rotation angle (S120). Here, as described above, the virtual keyboard 20 is generated in a state of being rotated in the form as shown in FIG. 2 (b), and the entire keyboard is rotated at an arbitrary angle so that the coordinates of each numeric keypad are changed while the keyboard is changed. Since the relative position, that is, the arrangement order of the numbers, is maintained, the user's convenience can be assured so as not to take a long time for the user to find a specific number while preventing password leakage due to hacking of mouse input coordinates.

상기 가상 키보드 생성 단계(S120)가 완료되면, 가상 키보드 드라이버(30)의 입력 감지부(31)는 사용자가 가상 키보드(20) 상의 특정 자판을 마우스로 클릭하는 마우스 입력을 감지하여(S130), 마우스에 의하여 선택된 자판의 입력 키값을 산출한다(S140). 여기서, 상기 가상 키보드 회전각 설정 단계(S110)에서 설정된 회전각과 마우스가 클릭된 좌표를 이용하여 해당하는 키값을 산출하게 된다.When the virtual keyboard generation step (S120) is completed, the input detecting unit 31 of the virtual keyboard driver 30 detects a mouse input in which the user clicks on a specific keyboard on the virtual keyboard 20 (S130), The input key value of the keyboard selected by the mouse is calculated (S140). Here, the corresponding key value is calculated using the rotation angle set in the virtual keyboard rotation angle setting step (S110) and the coordinates at which the mouse is clicked.

상기 입력 키값 산출 단계(S140) 완료 후, 가상 키보드 드라이버(30)의 데이터 발신부(33)는 웹브라우저(40)로 상기 입력 키 데이터를 전송하여 텍스트 박스에 해당하는 텍스트가 출력되도록 한다(S150).After completion of the input key value calculating step (S140), the data transmitter 33 of the virtual keyboard driver 30 transmits the input key data to the web browser 40 so that the text corresponding to the text box is output (S150). ).

이후, 키보드 제어부는 가상 키보드(20)를 통한 입력이 종료되었는지를 판단 하는데(S160), 입력이 종료된 것으로 판단되는 경우 가상 키보드(20)를 종료하여 화면에서 제거되게 하고(S170), 입력이 종료되지 않은 경우 상기 마우스 입력 감지 단계(S130)부터 그 이하 단계들을 반복적으로 수행한다. 여기서, 사용자가 가상 키보드(20)의 종료 버튼을 클릭하거나 웹브라우저(40) 상의 다른 버튼을 클릭함으로써 텍스트 상자가 포커스를 잃게 되는 경우에, 키보드 제어부(32)에서 이를 감지하여 입력이 종료된 것으로 판단한다.Thereafter, the keyboard controller determines whether the input through the virtual keyboard 20 is terminated (S160). When it is determined that the input is terminated, the keyboard controller terminates the virtual keyboard 20 to be removed from the screen (S170). If not finished, the following steps are repeatedly performed from the mouse input sensing step S130. Here, when the text box loses focus by the user clicking the end button of the virtual keyboard 20 or another button on the web browser 40, the keyboard control unit 32 detects this and the input is terminated. To judge.

한편, 상기 입력 종료 판단 단계(S160)에서 입력이 종료되지 않은 것으로 판단되는 경우, 도 4에 도시된 바와 같이, 가상 키보드의 회전각을 재설정하고(S161), 상기 설정된 각도로 가상 키보드를 회전시킨 후(S162), 상기 마우스 입력 감지 단계(S130)부터 그 이하 단계들을 반복적으로 수행할 수도 있다. 이와 같이 하나의 마우스 입력이 종료될 때마다 다음 입력 이전에 가상 키보드를 임의의 각도로 회전시킴으로써, 마우스 입력 좌표 해킹에 의한 비밀번호 유출 가능성을 더욱 낮출 수 있다.On the other hand, when it is determined that the input is not terminated in the input end determination step (S160), as shown in Figure 4, to reset the rotation angle of the virtual keyboard (S161), and rotates the virtual keyboard at the set angle After (S162), the following steps may be repeatedly performed from the mouse input detection step (S130). As such, whenever one mouse input is terminated, the virtual keyboard may be rotated at an angle before the next input, thereby further reducing the possibility of password leakage due to hacking of mouse input coordinates.

도 5는 본 발명의 제2 실시예에 적용되는 가상 키보드의 형태를 나타내는 도면이다.5 is a view showing the form of a virtual keyboard applied to the second embodiment of the present invention.

도 5에 도시된 바와 같이, 본 발명의 제2 실시예에 적용되는 가상 키보드는 실제 키보드의 숫자 패드와 유사한 사각형의 형태를 지니고 있으며, 키보드 제어부가 가상 키보드를 생성할 때마다 임의 배율로 가상 키보드 전체를 확대 또는 축소시킴으로써, 해킹 프로그램에 의해 마우스의 입력 좌표가 누출되더라도 악의를 가 진 제 3자가 해당하는 키 입력값을 추정할 수 없도록 한다. 여기서, 가상 키보드가 확대되는 기준점은, 도 5의 (a)에서와 같이, 가상 키보드의 중심점이 될 수도 있고, 도 5의 (b)에서와 같이, 가상 키보드의 꼭지점 중의 하나가 될 수도 있다. 또한, 가상 키보드의 형태는 사각형이 아닌 어떠한 형태라도 무관하며, 숫자 자판뿐만 아니라 문자 자판까지 포함할 수도 있음은 물론이다.As shown in FIG. 5, the virtual keyboard applied to the second embodiment of the present invention has a rectangular shape similar to the number pad of the actual keyboard, and the virtual keyboard at an arbitrary magnification whenever the keyboard controller generates the virtual keyboard. By enlarging or reducing the whole, even if the input coordinates of the mouse are leaked by the hacking program, a malicious third party cannot estimate the corresponding key input value. Here, the reference point at which the virtual keyboard is enlarged may be the center point of the virtual keyboard, as shown in FIG. 5A, or may be one of the vertices of the virtual keyboard, as shown in FIG. 5B. In addition, the virtual keyboard may have any shape other than a rectangle, and may include not only a number keyboard but also a character keyboard.

상기 가상 키보드를 제외한 가상 키보드 입력 시스템의 구성은 전술한 제1 실시예에서와 동일하므로, 가상 키보드 이외의 구성에 대한 상세한 설명은 생략하기로 한다.Since the configuration of the virtual keyboard input system except for the virtual keyboard is the same as in the above-described first embodiment, a detailed description of the configuration other than the virtual keyboard will be omitted.

이하, 상기한 바와 같이 구성된 가상 키보드 입력 시스템을 이용한 본 발명의 제2 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법에 대하여 도 6을 이용하여 상세히 설명하기로 한다.Hereinafter, a method for preventing keyboard hacking using the virtual keyboard according to the second embodiment of the present invention using the virtual keyboard input system configured as described above will be described in detail with reference to FIG. 6.

도 6은 본 발명의 제2 실시예에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법을 나타내는 순서도이다.6 is a flowchart illustrating a keyboard hacking prevention method using a virtual keyboard according to a second embodiment of the present invention.

먼저, 가상 키보드 드라이버의 키보드 제어부는 텍스트 상자로 포커스(focus)가 이동되는 것을 감지한다(S200).First, the keyboard controller of the virtual keyboard driver detects that the focus is moved to the text box (S200).

이후, 키보드 제어부는 가상 키보드의 확대 배율을 설정한다(S210). 여기서, 확대 배율은 일정 범위 내의 값으로서, 양의 값인 경우에는 확대를 음의 값인 경우에는 축소를 의미하며, 전술한 제1 실시예의 회전각과 마찬가지로 랜덤하게 설정되거나, 미리 설정된 일군의 값들 중에서 순차적으로 선택될 수 있다.Thereafter, the keyboard controller sets the magnification of the virtual keyboard (S210). Here, the enlargement magnification is a value within a predetermined range, and in the case of a positive value, the enlargement magnification means a reduction in the case of a negative value. Can be selected.

상기 가상 키보드 확대 배율 설정 단계(S210)가 완료되면, 키보드 제어부는 상기 설정된 확대 배율에 따라 확대된 가상 키보드를 생성하여 활성화시킨다(S220). 여기서, 가상 키보드는 상술하여 설명한 바와 같이 도 5의 (a) 또는 (b)와 같은 형태로 확대된 상태로 생성되며, 키보드 전체가 임의 배율로 확대되어 각 자판의 좌표가 변경되면서도 각 자판의 상대적인 위치 즉, 문자의 배치 상태는 그대로 유지되기 때문에, 마우스 입력 좌표 해킹에 따른 비밀번호 유출을 방지하면서도 사용자의 편의성을 최대한 보장할 수 있다.When the virtual keyboard enlargement magnification setting step (S210) is completed, the keyboard controller generates and activates the enlarged virtual keyboard according to the set magnification (S220). Here, as described above, the virtual keyboard is created in an enlarged state as shown in FIG. Since the position of the character is maintained as it is, the user's convenience can be guaranteed to the maximum while preventing the leakage of the password due to hacking of the mouse input coordinates.

상기 가상 키보드 생성 단계(S220)가 완료되면, 가상 키보드 드라이버의 입력 감지부는 사용자가 가상 키보드 상의 특정 자판을 마우스로 클릭하는 마우스 입력을 감지하여(S230), 마우스에 의하여 선택된 자판의 입력 키값을 산출한다(S240). 여기서, 상기 가상 키보드 확대 배율 설정 단계(S210)에서 설정된 확대 배율과 마우스가 클릭된 좌표를 이용하여 해당하는 키값을 산출하게 된다.When the virtual keyboard generation step (S220) is completed, the input detection unit of the virtual keyboard driver detects a mouse input in which the user clicks on a specific keyboard on the virtual keyboard (S230), and calculates an input key value of the keyboard selected by the mouse. (S240). Here, the corresponding key value is calculated using the magnification set in the virtual keyboard magnification setting step S210 and the coordinates at which the mouse is clicked.

상기 입력 키값 산출 단계(S240) 완료 후, 가상 키보드 드라이버의 데이터 발신부는 웹브라우저로 상기 입력 키 데이터를 전송하여 텍스트 박스에 해당하는 텍스트가 출력되도록 한다(S250).After completion of the input key value calculating step (S240), the data transmitter of the virtual keyboard driver transmits the input key data to a web browser so that the text corresponding to the text box is output (S250).

이후, 키보드 제어부는 가상 키보드를 통한 입력이 종료되었는지를 판단하는데(S260), 입력이 종료된 것으로 판단되는 경우 가상 키보드를 종료하여 화면에서 제거되게 하고(S270), 입력이 종료되지 않은 경우 상기 마우스 입력 감지 단계부터 그 이하 단계들을 반복적으로 수행한다.Thereafter, the keyboard controller determines whether the input through the virtual keyboard is terminated (S260). When it is determined that the input is terminated, the keyboard controller terminates the virtual keyboard to be removed from the screen (S270). The following steps are repeatedly performed from the input sensing step.

한편, 상기 입력 종료 판단 단계(S260)에서 입력이 종료되지 않은 것으로 판 단되는 경우, 도 7에 도시된 바와 같이, 가상 키보드의 확대 배율을 재설정하고(S261), 상기 설정된 배율로 가상 키보드를 확대시킨 후(S262), 상기 마우스 입력 감지 단계(S230)부터 그 이하 단계들을 반복적으로 수행할 수도 있다. 이와 같이 하나의 마우스 입력이 종료될 때마다 다음 입력 이전에 가상 키보드를 임의의 배율로 확대시킴으로써, 마우스 입력 좌표 해킹에 의한 비밀번호 유출 가능성을 더욱 낮출 수 있다.On the other hand, if it is determined that the input is not terminated in the input end determination step (S260), as shown in Figure 7, reset the magnification of the virtual keyboard (S261), and enlarges the virtual keyboard at the set magnification After S262, the following steps may be repeatedly performed from the mouse input sensing step S230. In this way, whenever one mouse input is terminated, the virtual keyboard is enlarged to an arbitrary magnification before the next input, thereby further lowering the possibility of password leakage due to hacking of mouse input coordinates.

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것은 아니며, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백하다 할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes are possible in the art without departing from the technical spirit of the present invention. It will be clear to those of ordinary knowledge.

이상에서와 같이, 본 발명에 따른 가상 키보드를 이용한 키보드 해킹 방지 방법은 가상 키보드 구동시에 자판 전체를 임의 각도로 회전시키거나 임의 배율로 확대시켜 각 자판의 배열 순서는 그대로 유지한 채 그 좌표만을 변경시킴으로써, 해킹 프로그램에 의해 마우스의 입력 좌표가 누출되는 경우에도 키 입력 정보를 보호할 수 있는 동시에 사용자가 입력을 용이하게 할 수 있도록 편의성을 보장해주는 효과가 있다.As described above, in the keyboard hacking prevention method using the virtual keyboard according to the present invention, the entire keyboard is rotated at an arbitrary angle or enlarged at an arbitrary magnification when the virtual keyboard is driven, and only the coordinates thereof are changed while maintaining the arrangement order of each keyboard. By doing so, even when the input coordinates of the mouse are leaked by the hacking program, the key input information can be protected and convenience can be ensured so that the user can easily input.

Claims (8)

삭제delete 마우스를 통해 키입력을 받는 가상 키보드를 이용하여 키보드 해킹을 방지하는 방법에 있어서,In a method for preventing keyboard hacking by using a virtual keyboard that receives a key input from a mouse, 웹브라우저의 텍스트 상자로 포커스(focus)가 이동되는 것을 감지하는 단계와;Detecting focus being moved to a text box of a web browser; 가상 키보드의 회전각을 0 ~ 360˚ 사이의 임의 각도로 설정하는 단계와;Setting a rotation angle of the virtual keyboard to an arbitrary angle between 0 and 360 °; 상기 가상 키보드 회전각 설정 단계에서 설정된 회전각에 따라 회전된 가상 키보드를 생성하는 단계와;Generating a virtual keyboard rotated according to the rotation angle set in the virtual keyboard rotation angle setting step; 사용자가 가상 키보드 상의 특정 자판을 마우스로 클릭하는 마우스 입력을 감지하는 단계와;Detecting a mouse input wherein a user clicks on a specific keyboard on the virtual keyboard with the mouse; 상기 감지된 마우스 입력 좌표에 의해 해당 자판의 입력 키값을 산출하는 단계와;Calculating an input key value of the corresponding keyboard based on the detected mouse input coordinates; 상기 산출된 입력 키값을 웹브라우저로 전송하여 텍스트 박스에 해당 텍스트가 출력되도록 하는 단계와;Transmitting the calculated input key value to a web browser to output the corresponding text in a text box; 가상 키보드 입력이 종료되었는지를 판단하는 단계; 및Determining whether the virtual keyboard input has ended; And 상기 가상 키보드 입력 종료 판단 단계에서 입력이 종료된 것으로 판단되는 경우, 가상 키보드를 종료하는 단계;Terminating the virtual keyboard if it is determined that the input is terminated in the virtual keyboard input termination determination step; 를 포함하여 구성되는 것을 특징으로 하는 가상 키보드를 이용한 키보드 해킹 방지 방법.Keyboard hacking prevention method using a virtual keyboard, characterized in that comprises a. 제 2항에 있어서,The method of claim 2, 상기 가상 키보드는 일련의 숫자가 시계 방향으로 원주를 따라 순차적으로 배치된 원형의 키보드로 구성되는 것을 특징으로 하는 가상 키보드를 이용한 키보드 해킹 방지 방법.The virtual keyboard is a keyboard hacking prevention method using a virtual keyboard, characterized in that a series of numbers consisting of a circular keyboard sequentially arranged along the circumference clockwise. 제 3항에 있어서,The method of claim 3, wherein 상기 가상 키보드의 회전각을 설정하는 단계는,Setting the rotation angle of the virtual keyboard, 0 ~ 360˚ 구간을 10으로 나눈 10개의 각도 중에서 임의로 각도로 회전각을 설정하는 것을 특징으로 하는 가상 키보드를 이용한 키보드 해킹 방지 방법.Method for preventing keyboard hacking using a virtual keyboard, characterized in that the rotation angle is set at an arbitrary angle from 10 angles divided by 10 from 0 to 360˚ section. 제 2항에 있어서,The method of claim 2, 상기 가상 키보드 입력 종료 판단 단계에서 입력이 종료되지 않은 것으로 판단되는 경우, 가상 키보드의 회전각을 재설정하는 단계와;Resetting a rotation angle of the virtual keyboard when it is determined that the input is not terminated in the virtual keyboard input termination determination step; 상기 가상 키보드 회전각 재설정 단계에서 설정된 각도로 가상 키보드를 회전시키는 단계;Rotating the virtual keyboard at an angle set in the virtual keyboard rotation angle resetting step; 를 더 포함하여 구성되는 것을 특징으로 하는 가상 키보드를 이용한 키보드 해킹 방지 방법.Keyboard hacking prevention method using a virtual keyboard, characterized in that further comprises a. 삭제delete 삭제delete 삭제delete
KR1020060110707A 2006-11-09 2006-11-09 Keyboard hacking protection method using the virtual keyboard KR100854302B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060110707A KR100854302B1 (en) 2006-11-09 2006-11-09 Keyboard hacking protection method using the virtual keyboard

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060110707A KR100854302B1 (en) 2006-11-09 2006-11-09 Keyboard hacking protection method using the virtual keyboard

Publications (2)

Publication Number Publication Date
KR20080042375A KR20080042375A (en) 2008-05-15
KR100854302B1 true KR100854302B1 (en) 2008-08-26

Family

ID=39649098

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060110707A KR100854302B1 (en) 2006-11-09 2006-11-09 Keyboard hacking protection method using the virtual keyboard

Country Status (1)

Country Link
KR (1) KR100854302B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040107454A (en) * 2004-10-15 2004-12-20 임채용 Apparatus and method for inputting password using variable keyboard information, computer readable recoding medium having software for performing password input method stored therein
KR20060008089A (en) * 2004-07-23 2006-01-26 삼성전자주식회사 The electric equipment possessing the touch screen function

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060008089A (en) * 2004-07-23 2006-01-26 삼성전자주식회사 The electric equipment possessing the touch screen function
KR20040107454A (en) * 2004-10-15 2004-12-20 임채용 Apparatus and method for inputting password using variable keyboard information, computer readable recoding medium having software for performing password input method stored therein

Also Published As

Publication number Publication date
KR20080042375A (en) 2008-05-15

Similar Documents

Publication Publication Date Title
KR100745489B1 (en) Preventing method for hacking key input data
US10873589B2 (en) Real-time prevention of malicious content via dynamic analysis
US8448226B2 (en) Coordinate based computer authentication system and methods
CA2736582C (en) Authorization of server operations
KR20090036820A (en) Hacking protection input system and method of the virtual keyboard
US20140098141A1 (en) Method and Apparatus for Securing Input of Information via Software Keyboards
CN108229220B (en) System and method for trusted presentation of information on untrusted user devices
CN104978512A (en) Password input and confirmation method and system thereof
US20130104220A1 (en) System and method for implementing a secure USB application device
WO2010026591A1 (en) Method and apparatus for carrying out secure electronic communication
WO2014151890A1 (en) Securely transferring authentication information
KR101228028B1 (en) Virtual keyboard and preventing method for hacking information using the same
KR100571695B1 (en) Hacking protect method of keyboard, mouse and image
KR100854302B1 (en) Keyboard hacking protection method using the virtual keyboard
Oh et al. A protection technique for screen image-based authentication protocols utilizing the SetCursorPos function
CA2706582C (en) Method and system for defeating the man in the middle computer hacking technique
KR100975854B1 (en) Apparatus and Method for The Password Security on Online
KR20090036813A (en) Vertual keyboard hacking protection method using mouse input coordinates
KR100912955B1 (en) Hacking protection input system and method of the virtual keyboard
KR101152610B1 (en) The Method of Virtual Keyboard
KR101648779B1 (en) Method for secure text input in information terminal
KR100854303B1 (en) Keyboard hacking protection method using the scroll-type virtual keyboard
KR100861189B1 (en) Method for certifying user without click and apparatus thereof
KR20090047041A (en) Method for protecting hacking by using vertual keyboard connected with keyboard protection module
CN107040918B (en) Application security enhancement method and system and client with system

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
GRNT Written decision to grant
J206 Request for trial to confirm the scope of a patent right
J204 Invalidation trial for patent
J121 Written withdrawal of request for trial
FPAY Annual fee payment

Payment date: 20120604

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130725

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140725

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150810

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160810

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170725

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180725

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190910

Year of fee payment: 12