KR20100034698A - 키 보호 방법 및 컴퓨팅 장치 - Google Patents

키 보호 방법 및 컴퓨팅 장치 Download PDF

Info

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
Application number
KR1020090088331A
Other languages
English (en)
Other versions
KR101076048B1 (ko
Inventor
훙-치엔 초우
Original Assignee
훙-치엔 초우
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 훙-치엔 초우 filed Critical 훙-치엔 초우
Publication of KR20100034698A publication Critical patent/KR20100034698A/ko
Application granted granted Critical
Publication of KR101076048B1 publication Critical patent/KR101076048B1/ko

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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • 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/71Protecting 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/75Protecting 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/755Protecting 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic 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

키 보호 방법 및 컴퓨팅 장치{KEY PROTECTING METHOD AND A COMPUTING APPARATUS}
<관련 출원 상호 참조>
본 특허출원은 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)

  1. 키 보호 방법으로서,
    (a) 접속 요청의 수신에 응답하여, 컨트롤 애플리케이션 프로그램 모듈(11)이 키 확인 요청을 생성하도록 하는 단계와;
    (b) 키 확인 요청의 수신에 응답하여, 사용자가 키를 입력하도록 하드웨어 컨트롤 모듈(2)이 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 키 입력 요청을 생성하도록 하는 단계와;
    (c) 키 입력을 수신함에 따라, 상기 하드웨어 컨트롤 모듈(2)이 입력 키가 상기 하드웨어 컨트롤 모듈(2)에 미리 설정된 기설정 키와 일치하는지를 판단하도록 하는 단계와;
    (d) 상기 단계 (c)에서 입력 키가 기설정 키와 일치한다고 판단된 경우에 상기 하드웨어 컨트롤 모듈(2)이 실행 모드로 들어가도록 하는 단계; 및
    (e) 상기 단계 (c)에서 입력 키가 기설정 키와 일치하지 않는다고 판단된 경우에 상기 하드웨어 컨트롤 모듈(2)이 실패 모드로 들어가도록 하는 단계를
    포함하는 것을 특징으로 하는 키 보호 방법.
  2. 제1항에 있어서,
    상기 하드웨어 컨트롤 모듈(2)은 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 키 확인 요청을 수신하는 하드웨어 제어부(21)와, 키 비교부(key comparing unit)(22), 및 처리부(processing unit)(23)를 포함하고,
    상기 단계 (c)에서, 상기 키 비교부(22)는 입력 키를 상기 기설정 키와 비교하며,
    상기 단계 (d)에서, 상기 하드웨어 제어부(21)는 상기 키 비교부(22)로부터 획득한 비교 결과를 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 전송하며, 상기 처리부(23)에 의해 실행될 수 있도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 상기 하드웨어 컨트롤 모듈(2)로의 처리 요청의 전송을 허용하는 것을 특징으로 하는 키 보호 방법.
  3. 제2항에 있어서,
    상기 단계 (d)에서, 상기 실행 모드에서의 상기 처리부(23)의 처리 역량은 파일 재생성, 및 숨김 상태, 읽기 전용 상태 및 쓰기 전용 상태 중 선택된 하나로의 파일의 변환을 포함하는 것을 특징으로 하는 키 보호 방법
  4. 제2항에 있어서,
    상기 단계 (e)에서, 상기 하드웨어 제어부(21)는 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 실패 메시지를 전송하며, 단기 단계 (a)로 되돌아가서 또 다른 키 확인 요청을 기다리는 것을 특징으로 하는 키 보호 방법.
  5. 제4항에 있어서,
    상기 단계 (e)에서, 상기 하드웨어 컨트롤 모듈(2)은 실패 모드로의 진입 회수를 지속적으로 추적하여, 이 회수가 기설정 회수에 이르게 되면 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작이 종료되는 것을 특징으로 하는 키 보호 방법.
  6. 제4항에 있어서,
    상기 단계 (e)에서, 상기 하드웨어 컨트롤 모듈(2)은 실패 모드로의 진입 회수를 지속적으로 추적하여, 이 회수가 기설정 시간 내에 기설정 회수에 이르게 되면 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작이 종료되는 것을 특징으로 하는 키 보호 방법.
  7. 제2항에 있어서,
    상기 단계 (e)에서, 상기 하드웨어 제어부(21)는 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 실패 메시지를 전송하며, 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 컨트롤 모듈(2)의 동작은 종료되는 것을 특징으로 하는 키 보호 방법.
  8. 제1항에 있어서,
    상기 입력 키는 상기 하드웨어 컨트롤 모듈(2)에 결합된 입력 장치(input device)로부터 입력되는 것을 특징으로 하는 키 보호 방법.
  9. 제2항에 있어서,
    상기 단계 (d)에서, 상기 하드웨어 제어부(21)는 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 성공 메시지를 전송하는 것을 특징으로 하는 키 보호 방법.
  10. 제2항에 있어서,
    상기 컨트롤 애플리케이션 프로그램 모듈(11)과 하드웨어 제어부(21) 사이의 통신(communication)은 USB(Universal Serial Bus) 인터페이스를 통하여 행해지는 것을 특징으로 하는 키 보호 방법.
  11. 컴퓨팅 장치로서,
    접속 요청을 수신하고, 이 접속 요청에 응답하여 키 확인 요청을 생성하는 컨트롤 애플리케이션 프로그램 모듈(11)이 설치된 운영체제 블록(operating system block)(1)과,
    하드웨어 컨트롤 모듈로서(2),
    상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 키 확인 요청을 수신하고, 상기 키 확인 요청의 수신에 응답하여 사용자가 키를 입력하도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)을 통하여 키 입력 요청을 생성하기 위해 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 통신 상태에 있는 하드웨어 제어 부(21)와,
    사용자에 의한 키 입력을 수신함에 따라 이 입력 키가 상기 하드웨어 컨트롤 모듈(2)에 미리 설정된 기설정 키와 일치하는지를 판단하고, 상기 하드웨어 제어부(21)에 의해 다시 상기 컨트롤 애플리케이션 프로그램 모듈(11)로 전송되는 비교 결과를 상기 하드웨어 제어부(21)로 전송하기 위해 상기 하드웨어 제어부(21)에 결합된 키 비교부(key comparing unit)(22)를 포함하는
    하드웨어 컨트롤 모듈(2)을 포함하며,
    상기 하드웨어 컨트롤 모듈(2)은 상기 키 비교부(22)에 의해 상기 입력 키가 상기 기설정 키와 일치한다고 판단되면 실행 모드로 들어가는 것과,
    상기 하드웨어 컨트롤 모듈(2)은 상기 키 비교부(22)에 의해 상기 입력 키가 상기 기설정 키와 일치하지 않는다고 판단되면 실패 모드로 들어가는 것을
    특징으로 하는 컴퓨팅 장치.
  12. 제11항에 있어서,
    상기 하드웨어 컨트롤 모듈(2)은, 상기 하드웨어 제어부(21)에 결합되어 처리 요청을 실행할 수 있는 처리부(processing unit)(23)를 더 포함하며,
    상기 하드웨어 제어부(21)는, 상기 하드웨어 컨트롤 모듈(2)이 실행 모드로 들어갈 때 상기 처리부(23)에 의해 실행될 수 있도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 상기 처리부(23)로 처리 요청이 전송되도록 하는 것을
    특징으로 하는 컴퓨팅 장치.
  13. 제11항에 있어서,
    상기 하드웨어 제어부(21)는, 상기 하드웨어 컨트롤 모듈(2)이 실패 모드로 들어갈 때, 디스플레이 장치(3)에 표시되도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 실패 메시지를 전송하고는, 상기 컨트롤 애플리케이션 프로그램 모듈(11)로부터 또 다른 키 확인 요청을 기다리는 것을 특징으로 하는 컴퓨팅 장치.
  14. 제11항에 있어서,
    상기 키 비교부(22)는 입력 장치(4)에 결합되도록 구성되며, 상기 입력 장치(4)를 통하여 상기 키 비교부(22)에 키 입력이 제공되는 것을 특징으로 하는 컴퓨팅 장치.
  15. 제11항에 있어서,
    상기 하드웨어 제어부(21)는, 상기 하드웨어 컨트롤 모듈(2)이 실행 모드로 들어갈 때 디스플레이 장치(3)에 표시되도록 상기 컨트롤 애플리케이션 프로그램 모듈(11)에 키 입증 성공 메시지를 전송하는 것을 특징으로 하는 컴퓨팅 장치.
  16. 제11항에 있어서,
    상기 운영체제 블록(1)의 상기 컨트롤 애플리케이션 프로그램 모듈(11)과 상기 하 드웨어 컨트롤 모듈(2)의 상기 하드웨어 제어부(21) 사이의 통신은 USB(universal serial bus) 인터페이스를 통하여 이루어지는 것을 특징으로 하는 컴퓨팅 장치.
KR1020090088331A 2008-09-24 2009-09-18 키 보호 방법 및 컴퓨팅 장치 KR101076048B1 (ko)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 한국전자통신연구원 유비쿼터스 서비스 인증 게이트웨이 장치 및 그 방법

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