KR20100034698A - 키 보호 방법 및 컴퓨팅 장치 - Google Patents
키 보호 방법 및 컴퓨팅 장치 Download PDFInfo
- Publication number
- KR20100034698A KR20100034698A KR1020090088331A KR20090088331A KR20100034698A KR 20100034698 A KR20100034698 A KR 20100034698A KR 1020090088331 A KR1020090088331 A KR 1020090088331A KR 20090088331 A KR20090088331 A KR 20090088331A KR 20100034698 A KR20100034698 A KR 20100034698A
- Authority
- KR
- South Korea
- Prior art keywords
- key
- hardware control
- application program
- module
- input
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/75—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
- G06F21/755—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation with measures against power attack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/83—Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
Abstract
키 보호 방법으로서, (a) 접속 요청의 수신에 응답하여, 컨트롤 애플리케이션 프로그램 모듈(11)이 키 확인 요청을 생성하도록 하는 단계와; (b) 키 확인 요청의 수신에 응답하여, 사용자가 키를 입력하도록 하드웨어 컨트롤 모듈(2)이 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 키 입력 요청을 생성하도록 하는 단계와; (c) 키 입력을 수신함에 따라, 상기 하드웨어 컨트롤 모듈(2)이 입력 키가 상기 하드웨어 컨트롤 모듈(2)에 미리 설정된 기설정 키와 일치하는지를 판단하도록 하는 단계와; (d) 상기 단계 (c)에서 입력 키가 기설정 키와 일치한다고 판단된 경우에 상기 하드웨어 컨트롤 모듈(2)이 실행 모드로 들어가도록 하는 단계; 및 (e) 상기 단계 (c)에서 입력 키가 기설정 키와 일치하지 않는다고 판단된 경우에 상기 하드웨어 컨트롤 모듈(2)이 실패 모드로 들어가도록 하는 단계를 포함하는 키 보호 방법이 개시된다.
컨트롤 애플리케이션 프로그램 모듈, 하드웨어 컨트롤 모듈, 키 보호 방법
Description
<관련 출원 상호 참조>
본 특허출원은 2008년 9월 24일자의 대만 특허출원 제097136673호를 우선권으로 주장한다.
본 발명은 키(key) 보호 방법에 관한 것으로, 보다 구체적으로는 컴퓨터 하드웨어에 의해 행해지는 키 확인 단계를 갖는 키 보호 방법에 관한 것이다.
21세기에 들어와서는, 문서 작업(워드 프로세싱), 데이터베이스 관리, 계정관리 등과 같은 다양한 기능들을 수행하는데 컴퓨터가 널리 사용되고 있다. 하지만, 트로이 목마(Trojan horse)와 같은 악성 소프트웨어("악성 코드(malware)"라고도 알려져 있음)는 이러한 악성 코드에 의해 공격받은 컴퓨터들에 해커들이 불법적으로 접속할 수 있게 함으로써, 개인정보, 로그인 계정, 비밀번호, 키 등을 해커들로부터 보호받지 못하게 한다.
트로이 목마는 일반적으로, 사용자들이 그 프로그램이 원하는 기능을 수행하리라는 믿음을 갖고 설치하게 되지만, 실제로는 이를 가장하여 악성 기능을 행하는 컴퓨터 프로그램을 지칭한다. 컴퓨터 바이러스들과 달리, 트로이 목마는 스스로 복제를 하거나 다른 파일들을 감염시키지는 않지만, 잠복, 자동 실행, 위장, 자동 복구, 그리고 파일 손상 및/또는 전송 기능과 같은 특징들을 갖고 있다. 컴퓨터에 트로이 목마가 설치되게 되면, 컴퓨터의 연산 정보(operational information)를 도둑맞을 수 있고, 컴퓨터에 있는 파일들이 파손되거나 삭제될 수 있으며, 컴퓨터가 해커에 의해 원격 조종(제어)될 수도 있다. 트로이 목마는 그 쓰여지는 목적에 따라서 분류될 수 있는데, 정보 수집, 데이터 파괴, 침입 등을 포함하며, 이들은 원격 접속, 패킷 탈취(intercept), 입력 데이터 리코딩, 데이터 전송 등에 의해 이루어진다.
그래서, 어떻게 키나 비밀번호 등을 해커들에 도둑맞지 않도록 효과적으로 보호하느냐 하는 것이 컴퓨터 업계에 있는 사람들이 이루고자 하는 목표이다.
따라서, 본 발명의 목적은 키가 컴퓨터의 운영체계(OS: operating system)에 의해 접속되는 것을 효과적으로 보호하는 키 보호 방법을 제공하는 것이다.
본 발명의 일 양태에 따르면, (a) 접속 요청의 수신에 응답하여, 컨트롤 애플리케이션 프로그램 모듈이 키 확인 요청을 생성하도록 하는 단계와; (b) 키 확인 요청의 수신에 응답하여, 사용자가 키를 입력하도록 하드웨어 컨트롤 모듈이 상기 컨트롤 애플리케이션 프로그램 모듈을 통하여 키 입력 요청을 생성하도록 하는 단계와; (c) 키 입력을 수신함에 따라, 상기 하드웨어 컨트롤 모듈이 입력 키가 상기 하드웨어 컨트롤 모듈에 미리 설정된 기설정 키와 일치하는지를 판단하도록 하는 단계와; (d) 상기 단계 (c)에서 입력 키가 기설정 키와 일치한다고 판단된 경우에 상기 하드웨어 컨트롤 모듈이 실행 모드로 들어가도록 하는 단계; 및 (e) 상기 단계 (c)에서 입력 키가 기설정 키와 일치하지 않는다고 판단된 경우 상기 하드웨어 컨트롤 모듈이 실패 모드로 들어가도록 하는 단계를 포함하는 키 보호 방법이 제공된다.
본 발명의 다른 양태에 따르면, 운영체제 블록(operating system block) 및 하드웨어 컨트롤 모듈을 포함하는 컴퓨팅 장치가 제공된다. 운영체제 블록에는, 접속 요청을 수신하고 이 접속 요청에 응답하여 키 확인 요청을 생성하는 컨트롤 애플리케이션 프로그램 모듈이 설치된다. 하드웨어 컨트롤 모듈은 하드웨어 제어부부(control unit), 키 비교부(key comparing unit), 및 처리부(processing unit)를 포함한다. 하드웨어 제어부는, 컨트롤 애플리케이션 프로그램 모듈로부터 키 확인 요청을 수신할 수 있도록 상기 컨트롤 애플리케이션 프로그램 모듈과 통신 접속되어 있고 이 키 확인 요청의 수신에 응답하여 사용자가 키를 입력하도록 상기 컨트롤 애플리케이션 프로그램 모듈을 통하여 키 입력 요청을 생성한다. 상기 키 비교부는 상기 하드웨어 제어부에 결합되며, 사용자에 의해 키가 입력됨에 따라 입력 키가 상기 하드웨어 컨트롤 모듈에 미리 설정되어 있는 기설정 키와 일치하는 지를 판단하여, 상기 하드웨어 제어부에 의해 다시 컨트롤 애플리케이션 프로그램 모듈로 전송되는 비교 결과를 상기 하드웨어 제어부로 전송한다. 상기 처리부는 상기 하드웨어 제어부에 결합되어, 처리 요청을 실행할 수 있다.
상기 하드웨어 컨트롤 모듈은, 상기 키 비교부에 의해 입력 키가 기설정 키와 일치한다고 판단되면 실행 모드로 들어간다.
상기 하드웨어 컨트롤 모듈은, 상기 키 비교부에 의해 입력 키가 기설정 키와 일치하지 않는다고 판단되면 실패 모드로 들어간다.
본 발명은, 확인을 위해서 키가 직접 하드웨어 컨트롤 모듈에 입력된다는 사실과, 키가 컴퓨팅 장치의 운영체제 블록에 설치되었을 수도 있는 악성 소프트웨어에 의해 접속 가능하지 않도록, 운영체제 블록에 설치된 컨트롤 애플리케이션 프로그램 모듈에는 키 자체가 아니라 키 비교 결과만이 통보된다는 사실에 의해 이루고자하는 목적을 달성한다.
본 발명의 다른 특징들 및 이점들은 첨부된 도면을 참조한 이하의 바람직한 실시예의 상세한 설명으로부터 분명해질 것이다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 키 보호 방법은, (a) 접속 요청의 수신에 응답하여, 컨트롤 애플리케이션 프로그램 모듈(11)이 키 확인 요청을 생성하도록 하는 단계와; (b) 키 확인 요청의 수신에 응답하여, 사용자가 키를 입력하도록 하드웨어 컨트롤 모듈(2)이 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 키 입력 요청을 생성하도록 하는 단계와; (c) 키 입력을 수신함에 따라, 상기 하드웨어 컨트롤 모듈(2)이 입력 키가 상기 하드웨어 컨트롤 모듈(2)에 미리 설정된 기설정 키와 일치하는지를 판단하도록 하는 단계와; (d) 상기 단계 (c)에서 입력 키가 기설정 키와 일치한다고 판단된 경우에 상기 하드웨어 컨트롤 모듈(2)이 실행 모드로 들어가도록 하는 단계; 및 (e) 상기 단계 (c)에서 입력 키가 기설정 키와 일치하지 않는다고 판단된 경우에 상기 하드웨어 컨트롤 모듈(2)이 실패 모드로 들어가도록 하는 단계를 포함하는 것을 특징으로 한다.
또한 상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 컴퓨팅 장치는, 접속 요청을 수신하고, 이 접속 요청에 응답하여 키 확인 요청을 생성하는 컨트롤 애플리케이션 프로그램 모듈(11)이 설치된 운영체제 블록(operating system block)(1)과, 하드웨어 컨트롤 모듈로서(2), 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 키 확인 요청을 수신하고, 상기 키 확인 요청의 수신에 응답하여 사용자가 키를 입력하도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 키 입력 요청을 생성하기 위해 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 통신 상태에 있는 하드웨어 제어부(21)와, 사용자에 의한 키 입력을 수신함에 따라 이 입력 키가 상기 하드웨어 컨트롤 모듈(2)에 미리 설정된 기설정 키와 일치하는지를 판단하고, 상기 하드웨어 제어부(21)에 의해 다시 상기 컨트롤 애플리케이션 프로그램 모듈(11)로 전송되는 비교 결과를 상기 하드웨어 제어부(21)로 전송하기 위해 상기 하드웨어 제어부(21)에 결합된 키 비교부(key comparing unit)(22)를 포함하는 하드웨어 컨트롤 모듈(2)을 포함하며, 상기 하드웨어 컨트롤 모듈(2)은 상기 키 비교부(22)에 의해 상기 입력 키가 상기 기설정 키와 일치한다고 판단되면 실행 모드로 들어가는 것과, 상기 하드웨어 컨트롤 모듈(2)은 상기 키 비교부(22)에 의해 상기 입력 키가 상기 기설정 키와 일치하지 않는다고 판단되면 실패 모드로 들어가는 것을 특징으로 한다.
본 발명은 운영체제가 악성 소프트웨어의 공격을 받더라도 특정 기능을 수행하는데 필요한 키가 이러한 악성 소프트웨어에 의해 탈취 또는 도용되는 것을 방지하는 것 등에 이용할 수 있다.
도 1을 참조하여, 본 발명의 바람직한 실시예에 따르면, 컴퓨팅 장치는 예컨대 등록상표 윈도우즈(Windows®)와 같은 운영체제 블록(operating system block)(1)과, 이 운영체제 블록(1)으로부터 독립된 하드웨어 컨트롤 모듈(hardware control module)(2)을 포함한다. 상기 운영체제 블록(1)에는 구체적인 상황에 따라, 물론 이에 제한되는 것은 아니며, 그 실행시에 컨트롤 애플리케이션 프로그램 모듈(11)에 의해 혹은 개시 애플리케이션 프로그램(16)(triggering application program)에 의해 생성될 수 있는 접속 요청을 수신하기 위하여 전용의 컨트롤 애플리케이션 프로그램 모듈(11)이 설치된다. 상기 컨트롤 애플리케이션 프로그램 모듈(11)은 접속 요청에 응답하여 키 확인 요청을 생성하도록 구성된다. 상기 하드웨어 컨트롤 모듈(2)은 하드웨어 제어부(21), 키 비교부(22) 및 처리부(23)를 포함한다.
상기 하드웨어 제어부(21)는, 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 키 확인 요청을 수신할 수 있도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 통신 접속되어 있고 이 키 확인 요청의 수신에 응답하여 사용자가 키를 입력하도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 키 입력 요청을 생성한다. 본 실시예에서, 상기 하드웨어 제어부(21)는 상기 운영체제 블록(1)에 설치되는 USB(Universal Serial Bus) 드라이버(12)를 포함하는 USB 인터페이스를 통하여 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 통신 접속된다. 또한, 본 실시예에서 키 입력 요청은, 상기 컨트롤 애플리케이션 프로그램 모듈(11)의 제어에 응답하여 디스플레이 드라이버(15)에 의해 구동되는, 예를 들면 스크린과 같은, 디스플레이 장치에 표시되는 메시지의 형태이다.
상기 키 비교부(22)는 상기 하드웨어 제어부(21)에 결합되며, 상기 하드웨어 컨트롤 모듈(2)에 결합된 입력 장치(4)를 통한 사용자의 키 입력을 수신함에 따라, 입력 키가 기설정 키와 일치하는지를 판단한다. 상기 기설정 키는 상기 하드웨어 컨트롤 모듈(2)에 미리 설정되어 있으며, 키들은 사용자의 필요에 따라 사용자에 의해 추가되거나, 변경 혹은 삭제될 수 있다. 상기 입력 장치(4)는 키보드, 마우 스, 터치패드 혹은 정보의 입력을 가능케 하는 임의의 다른 장치들 중 어느 하나일 수 있다. 상기 키 비교부(22)는 또한, 상기 하드웨어 제어부(21)에 의해 다시 상기 컨트롤 애플리케이션 프로그램 모듈(1)로 전송되는 비교 결과를 상기 하드웨어 제어부(21)로 전송한다.
상기 처리부(23)는 상기 하드웨어 제어부(21)에 결합되어 있으며, 처리 요청을 실행할 수 있다.
상기 키 비교부(22)에 의해 입력 키가 기설정 키와 일치한다고 판단되면 상기 하드웨어 컨트롤 모듈(2)은 실행 모드로 들어간다. 실행 모드에서, 상기 하드웨어 제어부(21)는 디스플레이 장치(3)에 표시되도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 성공 메시지를 전송하며, 상기 처리부(23)에 의해 실행될 수 있도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 상기 처리부(23)로의 처리 요청의 전송을 허용한다. 본 실시예에서, 실행 모드에서의 상기 처리부(23)의 처리 역량은 파일의 재생성, 및 숨김 상태, 읽기 전용 상태 및 쓰기 전용 상태 중 선택된 어느 하나로의 파일의 변환을 포함한다. 특히, 상기 처리부(23)는 상기 운영체제 블록(1)에 설치된 SATA(Serial Advanced Technology Attachment) 드라이버(13)를 포함하는 SATA 인터페이스를 통하여 상기 운영체제 블록(1)에 있는 파일 시스템(14)과 통신 접속되며, 처리를 위한 선택 파일에의 접속을 허용한다.
상기 키 비교부(22)에 의해 입력 키가 기설정 키와 일치하지 않는다고 판단되면 상기 하드웨어 컨트롤 모듈(2)은 실패 모드로 들어간다. 본 실시예에서, 상기 하드웨어 제어부(21)는 상기 디스플레이 장치(3)에 표시되도록 상기 컨트롤 애플리 케이션 프로그램 모듈(11)에 키 입증 실패 메시지를 전송하며, 상기 하드웨어 컨트롤 모듈(2)이 실패 모드로 들어갈 때 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터의 또 다른 키 확인 요청을 기다린다. 이와 달리, 키 입증 실패 메시지를 전송하고 난 후에, 상기 하드웨어 컨트롤 모듈(2)이 실패 모드로 들어가면 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작은 종료될 수 있다.
본 실시예에서는, 본 발명에 의해 제공되는 예를 들면 사전단어 공격(dictionary attack)과 같은 불법적인 악성 소스로부터의 공격에 대한 키 보호 효과를 더 높이기 위해서, 상기 하드웨어 컨트롤 모듈(2)은 또한 실패 모드로의 진입 회수를 지속적으로 추적하여, 이 회수가 기설정 회수(예를 들면, 3회)에 이르게 되면 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작이 종료된다. 이와 달리, 상기 하드웨어 컨트롤 모듈(2)은 실패 모드로의 진입 회수를 지속적으로 추적하여, 이 회수가 기설정 시간 내에 기설정 회수에 이르게 되면 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작이 종료될 수 있다. 하지만, 본 발명의 주요 특징은 실패 회수가 기설정 회수에 이르고 난 후의 메커니즘에 있는 것이 아니며, 따라서 본 실시예에서 기술되는 바와 같이 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작을 종료하는 대신에 다른 알려진 메커니즘이 또한 이용될 수도 있다는 것을 주지해야 한다.
계속해서 도 2를 참조하면, 본 발명의 바람직한 실시예에 따른 키 보호 방법 은 이하의 단계들을 포함한다.
단계 (61)에서, 접속 요청의 수신에 응답하여, 상기 컨트롤 애플리케이션 프로그램 모듈(11)은 키 확인 요청을 생성하도록 구성된다.
단계 (62)에서, 키 확인 요청의 수신에 응답하여, 사용자가 키를 입력하도록 상기 하드웨어 컨트롤 모듈(2)은 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 키 입력 요청을 생성하도록 구성된다.
단계 (63)에서, 키 입력을 수신함에 따라, 상기 하드웨어 컨트롤 모듈(2)은 입력 키가 이 하드웨어 컨트롤 모듈(2)에 미리 설정된 기설정 키와 일치하는지를 판단한다. 특히, 상기 하드웨어 컨트롤 모듈(2)의 키 비교부(22)가 입력 키를 기설정 키와 비교한다.
단계 (64)에서, 상기 하드웨어 컨트롤 모듈(2)은 상기 단계 (63)에서 입력 키가 기설정 키와 일치한다고 판단되면 실행 모드로 들어가도록 구성된다.
단계 (65)에서, 상기 하드웨어 제어부(21)는 상기 키 비교부(22)로 획득한 비교 결과를 상기 컨트롤 애플리케이션 프로그램 모듈(11)로 전송하며, 키 입증 성공 메시지를 상기 디스플레이 장치(3)에 표시되도록 USB 인터페이스를 통하여 상기 컨트롤 애플리케이션 프로그램 모듈(11)로 전송한다. 그리고 단계 (66)에서, 상기 하드웨어 제어부(21)는 단계 (67)에서 상기 처리부(23)에 의해 실행될 수 있도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 상기 하드웨어 컨트롤 모듈(2)로의 처리 요청의 전송을 허용한다. 본 실시예에서는, 단계 (67)에서 상기 처리부(23)가 파일의 재생성, 및 숨김 상태, 읽기 전용 상태 및 쓰기 전용 상태 중 선 택된 어느 하나로의 파일의 변환 중 하나를 행한다.
단계 (68)에서, 상기 하드웨어 컨트롤 모듈(2)은 단계 (63)에서 입력 키가 기설정 키와 일치하지 않는다고 판단되면 실패 모드로 들어가도록 구성된다.
단계 (69)에서, 상기 하드웨어 제어부(21)는 USB 인터페이스를 통하여 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 실패 메시지를 전송한다.
선택적으로, 상기 하드웨어 컨트롤 모듈(2)은 실패 모드로의 진입 회수를 지속적으로 추적하여, 단계 (70)에서 이 회수가 기설정 회수에 이르렀는지를 판단한다. 예(Yes)인 경우에는, 단계 (71)로 진행되어 이곳에서 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작이 종료된다. 아니오(No)인 경우에는, 단계 (61)로 되돌아가서 또 다른 키 확인 요청을 기다린다. 이와 달리, 단계 (70)에서 상기 하드웨어 컨트롤 모듈(2)은 실패 모드로의 진입 회수가 기설정 시간 내에 기설정 회수에 이르렀는지를 판단할 수도 있다.
또 다른 방식으로는, 일단 단계 (69)가 종료되면, 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작이 종료될 수도 있다.
본 발명을 보다 상세히 예시하기 위하여, 이하에서는 도 1을 참조하여 실제적인 작동 예가 제시된다. 사용자가 파일을 숨김 상태로 변환하길 원하면, 사용자는 우선 운영체제 블록(1)에 설치된 컨트롤 애플리케이션 프로그램 모듈(11)을 작동시킨다. 이어서, 상기 컨트롤 애플리케이션 프로그램 모듈(11)은 키 확인 요청을 생성하여 이를 USB 인터페이스를 통하여 상기 하드웨어 컨트롤 모듈(2)의 하드웨어 제어부(21)로 전송한다. 다음으로, 상기 하드웨어 제어부(21)는 사용자가 키를 입 력하도록 디스플레이 장치(3)에 표시되는 키 입력 요청을 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 생성한다. 사용자가 키 비교부(22)와 직접 통신 접속 상태에 있는 입력 장치(4)를 사용하여 키를 입력하고 나면, 상기 키 비교부(22)는 이 입력된 키를 기설정 키와 비교하여 그 비교 결과를 상기 하드웨어 제어부(21)에 통보한다. 이 비교 결과를 기초로 하여, 상기 하드웨어 제어부(21)는 디스플레이 장치(3)에 표시되도록 USB 인터페이스를 통하여 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 실패 메시지 혹은 키 입증 성공 메시지를 선택적으로 전송한다. 비교 결과 입력된 키가 기설정 키와 일치한다고 하면, 상기 하드웨어 제어부(21)는 또한 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 상기 하드웨어 컨트롤 모듈(2)로 처리 요청을 전송하게 하며, 상기 처리부(23)에 필요한 후속 처리를 실행하라고 통보한다. 이 경우에, 상기 처리 요청은 선택된 파일을 숨김 상태로 변환하는 것과 관련된다. 그래서, 상기 처리부(23)는 선택된 파일을 숨김 상태로 변환하기 위하여 SATA 인터페이스를 통하여 파일 시스템(14)과 상호 동작을 실행한다.
상기 기재에서는 상기 하드웨어 컨트롤 모듈(2)과 운영체제 블록(1)의 접속에 USB 인터페이스를 이용하고, 상기 처리부(23)와 파일 시스템(14)의 사이에는 SATA 인터페이스가 이용되는 것으로 하였으나, 실제로는 하드웨어 컨트롤 모듈(2)은 USB 인터페이스 이외의 수단을 이용하여 상기 운영체제 블록(1)과 통신 접속될 수 있으며, 또한 처리부(23)는 SATA 인터페이스 이외의 수단을 이용하여 파일 시스템(14)과 통신 접속될 수 있다는 것을 주지해야 한다. 이러한 변형 및 변경들은 당 업자에게는 자명하며, 본 실시예의 개시가 본 발명의 범위를 제한하는 것으로 해석되어서는 안 된다.
또한, 다른 실시예에서는 하드웨어 컨트롤 모듈(2)에 처리 요청을 전송하는 대신에, 상기 컨트롤 애플리케이션 프로그램 모듈(11)이 상기 운영체제 블록(1)에 설치된 다른 애플리케이션 프로그램(16)(예를 들면, 워드 작업 프로그램: word processing application program)에 명령을 전송하여, 의도하는 동작을 수행하기 위해서 이 애플리케이션 프로그램(16)으로 하여금 사용자에게 해당 서비스(예를 들면, 문서 작업 기능: word processing abilities)를 제공하게 한다.
요약하면, 본 발명의 키 보호 방법 및 컴퓨팅 장치는, 사용자에 의해 제공되는 키가 하드웨어 컨트롤 모듈(2)의 키 비교부(22)에만 입력되도록 하고, 키 비교가 키 비교부(22)에 의해서 행해지도록 하며, 비교 결과(일치 혹은 비일치)만이 운영체제 블록(1)에 제공되도록 함으로써 악성 존재(malicious entity)가 기설정 키를 획득하는 것을 방지하는 목적을 달성한다. 그 결과, 운영체제 블록(1)이 악성 소프트웨어의 공격을 받더라도, 특정 기능을 수행하는데 필요한 키가 이러한 악성 소프트웨어에 의해 탈취 또는 도용되지 않게 된다.
본 발명이 가장 실질적이고 선호되는 실시예와 결부되어 설명되었으나, 본 발명은 개시된 실시예에 한정되지 아니하며, 모든 변형과 동등 구성물을 포함하도록 본 발명의 광의의 해석에 따른 사상과 범위 내의 다양한 구성을 포함함을 이해할 수 있다.
도 1은 본 발명의 바람직한 실시예에 따른 컴퓨팅 장치의 블록도이다.
도 2는 본 발명의 바람직한 실시예에 따른 키 보호 방법의 순서도(flow chart)이다.
Claims (16)
- 키 보호 방법으로서,(a) 접속 요청의 수신에 응답하여, 컨트롤 애플리케이션 프로그램 모듈(11)이 키 확인 요청을 생성하도록 하는 단계와;(b) 키 확인 요청의 수신에 응답하여, 사용자가 키를 입력하도록 하드웨어 컨트롤 모듈(2)이 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 키 입력 요청을 생성하도록 하는 단계와;(c) 키 입력을 수신함에 따라, 상기 하드웨어 컨트롤 모듈(2)이 입력 키가 상기 하드웨어 컨트롤 모듈(2)에 미리 설정된 기설정 키와 일치하는지를 판단하도록 하는 단계와;(d) 상기 단계 (c)에서 입력 키가 기설정 키와 일치한다고 판단된 경우에 상기 하드웨어 컨트롤 모듈(2)이 실행 모드로 들어가도록 하는 단계; 및(e) 상기 단계 (c)에서 입력 키가 기설정 키와 일치하지 않는다고 판단된 경우에 상기 하드웨어 컨트롤 모듈(2)이 실패 모드로 들어가도록 하는 단계를포함하는 것을 특징으로 하는 키 보호 방법.
- 제1항에 있어서,상기 하드웨어 컨트롤 모듈(2)은 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 키 확인 요청을 수신하는 하드웨어 제어부(21)와, 키 비교부(key comparing unit)(22), 및 처리부(processing unit)(23)를 포함하고,상기 단계 (c)에서, 상기 키 비교부(22)는 입력 키를 상기 기설정 키와 비교하며,상기 단계 (d)에서, 상기 하드웨어 제어부(21)는 상기 키 비교부(22)로부터 획득한 비교 결과를 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 전송하며, 상기 처리부(23)에 의해 실행될 수 있도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 상기 하드웨어 컨트롤 모듈(2)로의 처리 요청의 전송을 허용하는 것을 특징으로 하는 키 보호 방법.
- 제2항에 있어서,상기 단계 (d)에서, 상기 실행 모드에서의 상기 처리부(23)의 처리 역량은 파일 재생성, 및 숨김 상태, 읽기 전용 상태 및 쓰기 전용 상태 중 선택된 하나로의 파일의 변환을 포함하는 것을 특징으로 하는 키 보호 방법
- 제2항에 있어서,상기 단계 (e)에서, 상기 하드웨어 제어부(21)는 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 실패 메시지를 전송하며, 단기 단계 (a)로 되돌아가서 또 다른 키 확인 요청을 기다리는 것을 특징으로 하는 키 보호 방법.
- 제4항에 있어서,상기 단계 (e)에서, 상기 하드웨어 컨트롤 모듈(2)은 실패 모드로의 진입 회수를 지속적으로 추적하여, 이 회수가 기설정 회수에 이르게 되면 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작이 종료되는 것을 특징으로 하는 키 보호 방법.
- 제4항에 있어서,상기 단계 (e)에서, 상기 하드웨어 컨트롤 모듈(2)은 실패 모드로의 진입 회수를 지속적으로 추적하여, 이 회수가 기설정 시간 내에 기설정 회수에 이르게 되면 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작이 종료되는 것을 특징으로 하는 키 보호 방법.
- 제2항에 있어서,상기 단계 (e)에서, 상기 하드웨어 제어부(21)는 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 실패 메시지를 전송하며, 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작은 종료되는 것을 특징으로 하는 키 보호 방법.
- 제1항에 있어서,상기 입력 키는 상기 하드웨어 컨트롤 모듈(2)에 결합된 입력 장치(input device)로부터 입력되는 것을 특징으로 하는 키 보호 방법.
- 제2항에 있어서,상기 단계 (d)에서, 상기 하드웨어 제어부(21)는 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 성공 메시지를 전송하는 것을 특징으로 하는 키 보호 방법.
- 제2항에 있어서,상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 제어부(21) 사이의 통신(communication)은 USB(Universal Serial Bus) 인터페이스를 통하여 행해지는 것을 특징으로 하는 키 보호 방법.
- 컴퓨팅 장치로서,접속 요청을 수신하고, 이 접속 요청에 응답하여 키 확인 요청을 생성하는 컨트롤 애플리케이션 프로그램 모듈(11)이 설치된 운영체제 블록(operating system block)(1)과,하드웨어 컨트롤 모듈로서(2),상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 키 확인 요청을 수신하고, 상기 키 확인 요청의 수신에 응답하여 사용자가 키를 입력하도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 키 입력 요청을 생성하기 위해 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 통신 상태에 있는 하드웨어 제어 부(21)와,사용자에 의한 키 입력을 수신함에 따라 이 입력 키가 상기 하드웨어 컨트롤 모듈(2)에 미리 설정된 기설정 키와 일치하는지를 판단하고, 상기 하드웨어 제어부(21)에 의해 다시 상기 컨트롤 애플리케이션 프로그램 모듈(11)로 전송되는 비교 결과를 상기 하드웨어 제어부(21)로 전송하기 위해 상기 하드웨어 제어부(21)에 결합된 키 비교부(key comparing unit)(22)를 포함하는하드웨어 컨트롤 모듈(2)을 포함하며,상기 하드웨어 컨트롤 모듈(2)은 상기 키 비교부(22)에 의해 상기 입력 키가 상기 기설정 키와 일치한다고 판단되면 실행 모드로 들어가는 것과,상기 하드웨어 컨트롤 모듈(2)은 상기 키 비교부(22)에 의해 상기 입력 키가 상기 기설정 키와 일치하지 않는다고 판단되면 실패 모드로 들어가는 것을특징으로 하는 컴퓨팅 장치.
- 제11항에 있어서,상기 하드웨어 컨트롤 모듈(2)은, 상기 하드웨어 제어부(21)에 결합되어 처리 요청을 실행할 수 있는 처리부(processing unit)(23)를 더 포함하며,상기 하드웨어 제어부(21)는, 상기 하드웨어 컨트롤 모듈(2)이 실행 모드로 들어갈 때 상기 처리부(23)에 의해 실행될 수 있도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 상기 처리부(23)로 처리 요청이 전송되도록 하는 것을특징으로 하는 컴퓨팅 장치.
- 제11항에 있어서,상기 하드웨어 제어부(21)는, 상기 하드웨어 컨트롤 모듈(2)이 실패 모드로 들어갈 때, 디스플레이 장치(3)에 표시되도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 실패 메시지를 전송하고는, 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 또 다른 키 확인 요청을 기다리는 것을 특징으로 하는 컴퓨팅 장치.
- 제11항에 있어서,상기 키 비교부(22)는 입력 장치(4)에 결합되도록 구성되며, 상기 입력 장치(4)를 통하여 상기 키 비교부(22)에 키 입력이 제공되는 것을 특징으로 하는 컴퓨팅 장치.
- 제11항에 있어서,상기 하드웨어 제어부(21)는, 상기 하드웨어 컨트롤 모듈(2)이 실행 모드로 들어갈 때 디스플레이 장치(3)에 표시되도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 성공 메시지를 전송하는 것을 특징으로 하는 컴퓨팅 장치.
- 제11항에 있어서,상기 운영체제 블록(1)의 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 상기 하 드웨어 컨트롤 모듈(2)의 상기 하드웨어 제어부(21) 사이의 통신은 USB(universal serial bus) 인터페이스를 통하여 이루어지는 것을 특징으로 하는 컴퓨팅 장치.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW097136673A TWI451740B (zh) | 2008-09-24 | 2008-09-24 | Hardware Password Verification Method and Its System |
TW097136673 | 2008-09-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100034698A true KR20100034698A (ko) | 2010-04-01 |
KR101076048B1 KR101076048B1 (ko) | 2011-10-24 |
Family
ID=41349500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090088331A KR101076048B1 (ko) | 2008-09-24 | 2009-09-18 | 키 보호 방법 및 컴퓨팅 장치 |
Country Status (8)
Country | Link |
---|---|
US (2) | US20100077465A1 (ko) |
EP (1) | EP2169586A1 (ko) |
JP (1) | JP2010079900A (ko) |
KR (1) | KR101076048B1 (ko) |
AU (1) | AU2009213049B2 (ko) |
BR (1) | BRPI0903816A2 (ko) |
SG (1) | SG160298A1 (ko) |
TW (1) | TWI451740B (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI409634B (zh) * | 2008-11-28 | 2013-09-21 | Shrisinha Technology Corp | Data hiding protection method and its hardware |
TW201228417A (en) * | 2010-12-31 | 2012-07-01 | Acer Inc | Deciphering methods and mobile communication apparatuses thereto |
TWI546690B (zh) * | 2011-04-21 | 2016-08-21 | hong-jian Zhou | Antivirus system |
US9703937B2 (en) * | 2013-04-10 | 2017-07-11 | Dell Products, L.P. | Method to prevent operating system digital product key activation failures |
TW201539247A (zh) * | 2014-04-09 | 2015-10-16 | hong-jian Zhou | 密碼輸入與確認方法及其系統 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61177585A (ja) * | 1985-02-04 | 1986-08-09 | Toshiba Corp | 携帯用電子装置密封体 |
US5533125A (en) * | 1993-04-06 | 1996-07-02 | International Business Machines Corporation | Removable computer security device |
WO1995016238A1 (en) * | 1993-12-06 | 1995-06-15 | Telequip Corporation | Secure computer memory card |
US5995630A (en) * | 1996-03-07 | 1999-11-30 | Dew Engineering And Development Limited | Biometric input with encryption |
KR100250979B1 (ko) * | 1997-10-08 | 2000-04-15 | 이계철 | 인증처리 장치에서의 인증처리 방법 |
US6161185A (en) * | 1998-03-06 | 2000-12-12 | Mci Communications Corporation | Personal authentication system and method for multiple computer platform |
US7272723B1 (en) * | 1999-01-15 | 2007-09-18 | Safenet, Inc. | USB-compliant personal key with integral input and output devices |
EP1241553A1 (fr) * | 2001-03-17 | 2002-09-18 | eSecurium SA | Module de sécurité amovible |
US7069447B1 (en) * | 2001-05-11 | 2006-06-27 | Rodney Joe Corder | Apparatus and method for secure data storage |
JP4139114B2 (ja) * | 2002-02-04 | 2008-08-27 | 松下電器産業株式会社 | デジタルコンテンツ管理装置およびデジタルコンテンツ管理プログラム |
DE10224209B4 (de) * | 2002-05-31 | 2004-09-23 | Infineon Technologies Ag | Autorisierungseinrichtung-Sicherheitsmodul-Terminal-System |
US7712675B2 (en) * | 2003-01-15 | 2010-05-11 | Hewlett-Packard Development Company, L.P. | Physical items for holding data securely, and methods and apparatus for publishing and reading them |
JP2004227057A (ja) * | 2003-01-20 | 2004-08-12 | Toshiba Corp | 電子機器およびデータ保護方法 |
US7257717B2 (en) * | 2003-04-01 | 2007-08-14 | Fineart Technology Co., Ltd | Method with the functions of virtual space and data encryption and invisibility |
JP4375995B2 (ja) * | 2003-04-30 | 2009-12-02 | ローム株式会社 | デバイス鍵保護方法およびその方法を利用可能な暗号化装置と復号装置ならびに映像送信装置と映像受信装置 |
EP1486908A1 (en) * | 2003-06-12 | 2004-12-15 | Axalto S.A. | Smart card with two I/O ports for linking secure and insecure environments |
JP2005128996A (ja) * | 2003-09-30 | 2005-05-19 | Dainippon Printing Co Ltd | 情報処理装置、情報処理システム及びプログラム |
JP2005149388A (ja) * | 2003-11-19 | 2005-06-09 | Sharp Corp | パスワード認証装置、並びに、そのプログラムおよび記録媒体 |
US20050149388A1 (en) * | 2003-12-30 | 2005-07-07 | Scholl Nathaniel B. | Method and system for placing advertisements based on selection of links that are not prominently displayed |
DE102005008433A1 (de) * | 2005-02-24 | 2006-08-31 | Giesecke & Devrient Gmbh | Sicherheitsmodul |
EP1943768B1 (en) * | 2005-10-14 | 2013-06-26 | Research In Motion Limited | Specifying a set of forbidden passwords |
EP2040229A1 (en) * | 2007-09-18 | 2009-03-25 | Axalto SA | Method and system for obtaining a pin validation signal in a data processing unit |
KR100958110B1 (ko) * | 2007-12-17 | 2010-05-17 | 한국전자통신연구원 | 유비쿼터스 서비스 인증 게이트웨이 장치 및 그 방법 |
-
2008
- 2008-09-24 TW TW097136673A patent/TWI451740B/zh active
-
2009
- 2009-08-12 EP EP09010412A patent/EP2169586A1/en not_active Withdrawn
- 2009-09-10 AU AU2009213049A patent/AU2009213049B2/en not_active Ceased
- 2009-09-11 SG SG200906105-2A patent/SG160298A1/en unknown
- 2009-09-17 JP JP2009215199A patent/JP2010079900A/ja active Pending
- 2009-09-18 KR KR1020090088331A patent/KR101076048B1/ko active IP Right Grant
- 2009-09-18 BR BRPI0903816-7A patent/BRPI0903816A2/pt not_active IP Right Cessation
- 2009-09-23 US US12/565,688 patent/US20100077465A1/en not_active Abandoned
-
2012
- 2012-07-26 US US13/559,504 patent/US20120304264A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
BRPI0903816A2 (pt) | 2011-02-01 |
JP2010079900A (ja) | 2010-04-08 |
EP2169586A1 (en) | 2010-03-31 |
US20120304264A1 (en) | 2012-11-29 |
US20100077465A1 (en) | 2010-03-25 |
KR101076048B1 (ko) | 2011-10-24 |
TW201014313A (en) | 2010-04-01 |
AU2009213049A1 (en) | 2010-04-08 |
AU2009213049B2 (en) | 2011-07-14 |
TWI451740B (zh) | 2014-09-01 |
SG160298A1 (en) | 2010-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5748888A (en) | Method and apparatus for providing secure and private keyboard communications in computer systems | |
EP3198516B1 (en) | Method for privileged mode based secure input mechanism | |
CN107408172B (zh) | 从用户信任的设备安全地引导计算机 | |
US20090172705A1 (en) | Apparatus and Method for Preservation of USB Keyboard | |
KR101076048B1 (ko) | 키 보호 방법 및 컴퓨팅 장치 | |
US20130104220A1 (en) | System and method for implementing a secure USB application device | |
US11405367B1 (en) | Secure computer peripheral devices | |
US20080313370A1 (en) | Guarding Method For Input Data By Usb Keyboard and Guarding System | |
EP3532980B1 (en) | Method in computer assisted operation | |
EP2754079B1 (en) | Malware risk scanner | |
KR20060093932A (ko) | 윈도우즈 운영체제에서 보안 입력 필터 드라이버와 인터넷익스플로러 내부의 키보드 보안 입력 비에이치오를 통한 인터넷 익스플로러 사용자의 키보드 입력 정보 해킹 방지 방법 | |
KR100985076B1 (ko) | Usb 디바이스 보안 장치 및 방법 | |
KR101133471B1 (ko) | 듀얼 포트 랜카드를 이용한 망전환 컴퓨터 | |
KR101205890B1 (ko) | 데스크탑 가상화를 위한 보안 장치 및 방법 | |
US20080060063A1 (en) | Methods and systems for preventing information theft | |
Olzak | Keystroke logging (keylogging) | |
KR101063822B1 (ko) | 보안 컴퓨터 시스템 | |
US20140177831A1 (en) | Key protecting method and a computing apparatus | |
RU2438166C2 (ru) | Способ защиты ключей и вычислительное устройство | |
US8214896B2 (en) | Method of securing USB keyboard | |
Zuyeva et al. | Devising an Approach to Analyze the Parameters for Determining Potential Premodified Firmware of USB devices | |
TWI546694B (zh) | Password protection method | |
EP2202661A1 (en) | Apparatus and method for protecting asset in computer system | |
KR20090009649A (ko) | 유에스비 키보드 입력 데이터 보안 방법 및 시스템 | |
Dasgupta | Turning Regular AVR Microcontroller to Human Interface Device (HID) for Hacking & Penetration testing |
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 | ||
FPAY | Annual fee payment |
Payment date: 20140922 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20150921 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20170307 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20170825 Year of fee payment: 7 |