KR20150048810A - 펌웨어의 도난 방지 - Google Patents

펌웨어의 도난 방지 Download PDF

Info

Publication number
KR20150048810A
KR20150048810A KR1020157007488A KR20157007488A KR20150048810A KR 20150048810 A KR20150048810 A KR 20150048810A KR 1020157007488 A KR1020157007488 A KR 1020157007488A KR 20157007488 A KR20157007488 A KR 20157007488A KR 20150048810 A KR20150048810 A KR 20150048810A
Authority
KR
South Korea
Prior art keywords
biometrics authentication
biometric
authentication
user
performing biometrics
Prior art date
Application number
KR1020157007488A
Other languages
English (en)
Other versions
KR101775800B1 (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 KR20150048810A publication Critical patent/KR20150048810A/ko
Application granted granted Critical
Publication of KR101775800B1 publication Critical patent/KR101775800B1/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/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

시스템 메모리에 부팅 코드를 로딩하기 전에 사용자의 생체 측정 정보를 근거로 하여 부팅 코드를 인증하는 개선된 시스템 부팅 프로세싱을 위한 방법, 시스템 및 저장 매체가 개시되어 있다. 적어도 몇몇 실시예에 있어서, 생체 측정 인증은 고유 플랫폼 식별자에 근거하여 부팅 코드의 인증을 강화시킨다. 개선된 부팅 코드 인증은 운영 시스템의 로딩 전에 일어나고, UEFI(Unified Extensible Firmware Interface) 부팅 시퀀스 동안에 수행될 수 있다. 다른 실시예가 도시되고 청구되어 있다.

Description

펌웨어의 도난 방지{ANTI-THEFT IN FIRMWARE}
태블릿, 노트북, 랩탑, 넷북, 울트라북, 셀폰, 스마트폰 및 다른 소형 디바이스 등의 비교적 휴대가능한 컴퓨터 시스템은 종종 도난 당하기 쉽다. 일부의 경우, 절도는 절도범이 사용하거나, 그 디바이스를 다른 사람에게 판매하기 위해 이루어질 수 있다. 절도범이 훔친 디바이스를 재사용하고자 하는 상황을 방지하기 위해서, 그 원소유자 이외의 다른 사람에 의해 그 디바이스가 부팅되는 것을 방지하는 것이 바람직하다.
도 1은 UEFI 부팅 시퀀스를 도시하는 단계도이다.
도 2는 생체 측정(biometric) 정보로 펌웨어를 암호화하는 방법의 적어도 하나의 실시예를 도시하는 흐름도이다.
도 3은 UEFI 부팅하는 동안의 도 2의 방법의 적어도 하나의 실시예를 도시하는 단계도이다.
도 4는 펌웨어의 생체 측정 기반의 인증을 이용한 개선된 부팅 프로세스의 적어도 하나의 실시예를 도시하는 흐름도이다.
도 5는 UEFI 부팅하는 동안의 도 4의 방법의 적어도 하나의 실시예를 도시하는 단계도이다.
도 6은 부팅하는 동안의 펌웨어의 생체 측정 인증의 적어도 하나의 실시예를 수행하기 위한 펌웨어 모듈을 도시하는 블록도이다.
도 7은 UEFI 부팅하는 동안의 펌웨어의 생체 측정 암호화 및 암호 해독을 수행하는 기능적 펌웨어 및 소프트웨어 모듈을 도시하는 단계도이다.
도 8은 본 발명의 적어도 하나의 실시예에 따른 제 1 시스템 및 제 2 시스템을 도시하는 블록도이다.
도 9는 본 발명의 적어도 하나의 다른 실시예에 따른 시스템의 블록도이다.
도 10은 본 발명의 적어도 하나의 다른 실시예에 따른 시스템의 블록도이다.
기술되는 실시예는 컴퓨팅 디바이스의 펌웨어 내에 도난 방지 기능을 제공한다. 더 상세하게는, 사용자의 생체 측정 정보가 프로세싱 시스템의 운영 시스템(OS)을 부팅하는데 필요한 펌웨어를 암호화하는데 사용된다. 후속 부팅시, 그 펌웨어는 생체 측정 정보를 이용하여 부팅 동안 암호 해독되어, 사용자만이 그 시스템을 부팅할 수 있다. 이러한 방식으로, 도난된 디바이스의 재사용을 무산시킬 수 있다.
현재의 도난 방지 기술 중에서, 이들 대부분이 OS 환경에서 소프트웨어 드라이버로서 동작한다. 이들 기술은 도난된 머신 상에서 그들을 언인스트롤하거나, OS를 재인스트롤하거나, 하드디스크를 새로운 하드디스크로 교체함으로써 무산될 수 있다. 다른 현재의 도난 방지 기술은 펌웨어 기능(features)이다. 이들은 파워 온 패스워드 프로텍션(power-on password protection)과 비슷하게 동작하며, 펌웨어 코드의 몇몇 바이트를 변경하여 인증 프로세싱을 우회하는 것으로 건너뛰거나, 동일 유형의 다른 디바이스로부터 새로운 카피의 펌웨어를 도난된 컴퓨팅 디바이스에 구움으로써 무산될 수 있다.
본 명세서에 기술되는 실시예는, 이 실시예가 컴퓨팅 시스템의 사전 OS 펌웨어의 고유 기능이며, 몇몇 다른 보안 메카니즘에서는 우회될 수 있는 방식으로는 우회되지 않는 보안 메카니즘을 제공하기 때문에, 몇몇 알려진 보안 기술에 비해 잇점을 제공한다.
컴퓨팅 디바이스의 승인되지 않은 재사용을 막기 위해서, 본 명세서에 기술된 실시예는 이와 같이 몇몇 보안 위반 기술을 해결한다. 예를 들어, 이러한 하나의 기술은 도난된 컴퓨팅 디바이스의 ROM(Read Only Memory)을 해킹하여 상이한 OS를 재인스트롤하는 것이다. 본 명세서에 실시예로서 기재되지 않은 컴퓨팅 시스템에서는, 이러한 기술은 예를 들어, BIOS 이미지를 리플래싱하여 부트로더 코드(bootloader code)를 변경하여 상이한 OS가 부팅시에 로딩되도록 함으로써, 달성될 수 있다. 이러한 방식으로, 원소유자의 OS 파워 온 패스워드가 우회될 수 있다. 본 명세서에 기술되는 실시예는 부트로더 코드를 실행하기 전에, 부팅 시퀀스로 생체 측정 인증 체크를 수행함으로써 이러한 유형의 위반을 해결한다.
본 명세서에 기술되는 어느 하나의 실시예도 포함하지 않는 컴퓨팅 시스템에서, 종종 BIOS(Basic Input Output System) 이미지의 리플래시는 CPU 자체보다는 시스템의 다른 구성 요소에 의해 제공되는 보안 기능을 우회시키는데 사용될 수 있다. 예를 들어, 컴퓨팅 디바이스의 BIOS 이미지는 대역외(out-of-band) 보안 기능을 무력화시키기 위해 리플래시될 수 있다. 이러한 대역외 보안 기능은, 예를 들어, 매니지어빌리티 엔진(manageability engine), 신뢰 플랫폼 모듈(trusted platform module)("TPM"), 또는 CPU와 별개인 다른 독립적인 보안 구성 요소에 의해 제공되는 기능을 포함할 수 있다. 이러한 대역외 보안 기능에 대한 개선으로서, 본 명세서에 기술되는 실시예는 인증 실패의 경우에 그 디바이스의 부팅을 차단하는 암호화된 펌웨어 구성 요소를 제공한다.
본 명세서에 기술되는 실시예가 해결하는 다른 보안 위반 기술은 컴퓨팅 시스템에서의 메모리의 스와핑(swapping)이다. 다시 말하면, 컴퓨팅 디바이스 상에서의 저장 장치의 암호화를 우회시키기 위해, 미승인 사용자가 컴퓨팅 디바이스 상의 사용자가 교체할 수 있는 저장 하드웨어를 변경하거나 교체할 수 있다. 일부의 경우에, 저장 장치는 플래시될 수 있지만, 플래시와는 달리(또는 추가로), 교체된 저장 하드웨어는 컴퓨팅 시스템의 내부 하드 드라이브 또는 다른 저장 매체일 수 있다. 본 명세서에 기술되는 실시예는 부트로더 코드를 실행하기 전에 부팅 시퀀스에서 생체 측정 인증 체크를 수행하며, 이로써, 저장 매체로의 미승인 액세스를 금지함으로써, 이러한 유형의 위반을 해결한다.
본 명세서에 기술되는 실시예가 해결하는 다른 보안 위반 기술은 선택적인 ROM 내에 하나의 에이전트로서 내장되는 보안 기능을 무력화하는 것이다. 예를 들어, Ortega 외 "De-Activate the RootKit: Attacks on BIOS Anti-theft Technologies," Black Hat Briefings 2009 USA. Las Vegas 2009년 7월 30일 신판을 참조한다. 이들 기능은, 컴퓨팅 시스템의 BIOS와 연관되어 있는 보안 사전 OS 프로세싱에서 신뢰 컴퓨팅 기반의 일부분으로서 동작하지 않지만, 대신에 제 3 자가 제공하는 선택적인 ROM의 나중의 부팅 프로세싱 동안에 로딩된다. 이러한 ROM 기반의 보안 기능에 대한 개선 방안으로서, 본 명세서에 설명되는 실시예는 인증 실패의 경우에 디바이스의 부팅을 차단하는 암호화된 펌웨어 구성요소를 제공한다. 따라서, 선택적인 ROM으로의 미승인 액세스가 차단된다.
여기서 도 1을 참조하면, 컴퓨팅 시스템의 OS를 부팅하기 위한 방법(100)의 전반적인 설명을 도시하고 있다. 도 1에 도시된 방법(100)의 적어도 하나의 실시예는 ***.uefi.org("www"는 라이브 하이퍼링크를 피하기 위해 별표로 대체됨)에서 찾을 수 있는 UEFI 2.3.1c와 같은 UEFI(Unified Extensible Firmware Interface) 규격에 대응한다. 도 1은 방법(100)이 블록(110)을 시작하는 것을 도시한다. 블록(110)에 있어서, 플랫폼 리셋 이벤트의 통지가 수신된다. 적어도 하나의 실시예에서, 플랫폼 리셋 이벤트는 파워 온 이벤트와 웜 스타트 이벤트(S3 및/또는 S4 저전력 상태와 같은 저전력 상태로부터의 재개 등) 중 하나일 수 있다. 블록(110)의 프로세싱은 UEFI 부팅 시퀀스의 보안(SEC) 단계(111)에 일반적으로 대응할 수 있다. 이러한 실시예에 있어서, 블록(110)은 리셋 이벤트가 발생했다는 통지를 수신하는 것뿐만 아니라, 몇몇 예비 초기화 프로세싱을 수행하는 것을 포함한다. 예를 들어, 적어도 하나의 실시예에 있어서, 리셋 이벤트 통지에 응답하여, 다음의 예비 프로세싱, 즉 사전 RAM 코드(예를 들어, 비휘발성 메모리 내의 (XIP) 코드를 적절히 실행하는 등)가 초기 CPU 초기화를 조정하여 CPU 캐시 내에 임시 스택을 생성하는 예비 프로세싱을 블록(110)에서 수행할 수 있다.
도 1은, 초기 보안 단계(111) 동안의 리셋 프로세싱(110) 이후에, 블록(120)으로 프로세싱을 진행하는 것을 도시한다. 블록(120)에서, CPU 및 다른 시스템 구성 요소와 같은 플랫폼 하드웨어가 초기화된다. 몇몇 실시예에 있어서, 이러한 다른 구성 요소에는, 메모리 컨트롤러 하드웨어, I/O 컨트롤러 하드웨어, 칩셋 하드웨어(칩셋이 존재하는 경우), 및/또는 마더보드 하드웨어(마더보드가 존재하는 경우) 중 하나 이상이 포함되어 있다. 적어도 하나의 실시예에 있어서, 블록(120)에서의 플랫폼 초기화는 UEFI 부팅 시퀀스의 사전 EFI 초기화("PEI") 단계(121)에 대응할 수 있다. 적어도 하나의 이러한 실시예에 있어서, 블록(120)에서의 프로세싱은 CPU의 초기화를 종료시키는 동작을 포함할 수 있으며, 추가로, DRAM을 조사하여, 블록(110)에서 수신된 리셋 이벤트가 콜드 스타트 이벤트인지 웜 스타트 이벤트(예를 들어, S3/S4 슬리프 또는 하이버네이트(hibernate) 모드인 저전력 모드로부터의 재개와 같은)인지를 조사하는 동작을 포함할 수 있다. 이벤트가 콜드 스타트 이벤트이었으면, 프로세싱은 블록(120)에서 블록(130)으로 진행한다. 몇몇 실시예에 있어서, 이벤트가 특정 유형의 웜 스타트 이벤트(S3 전력 상태와 같은 저전력 모드로부터의 재개과 같은)이었으면, 프로세싱은 블록(120)에서 블록(130, 140, 150, 160)에서의 프로세싱을 건너뛰고, 대신에 OS 재개/벡터 프로세싱(도시 생략)으로 진행한다.
드라이버 실행 단계(DXE)(131) 동안에, 적어도 하나의 실시예에 있어서, 방법(100)은 시스템 하드웨어의 나머지를 초기화하는데 사용되는 드라이버를 암호 해독하고(블록(130) 참조), 로딩한다(블록(140) 참조). DXE 단계와 연관되어 있는 UEFI 드라이버는 보안 부팅을 확보할 목적으로 암호화되기 때문에, 블록(130)에서의 암호 해독이 수행된다. DXE 스테이지 펌웨어는 플랫폼 식별자에 근거한 키(예컨대, 도 2의 플랫폼 ID 키(180)를 참조)를 이용하여 블록(130)에서 암호 해독된다. 적어도 하나의 실시예에 있어서, 플랫폼 식별자는, 제조 일련 번호, 이서넷 디바이스의 MAC 어드레스, TPM(Trusted Computing Module) 키 등의 컴퓨팅 플랫폼과 연관되어 있는 고유 식별자이다. 적어도 하나의 실시예에 있어서, 제조자는 플랫폼 식별자를 사용하여 플랫폼 키를 생성하며, 제조자는 플랫폼 키를 사용하여 펌웨어가 DXE 단계(131) 동안 디스패치되도록 암호화한다. 블록(130)에서, 이러한 동일 플랫폼 식별자는 부팅 프로세싱(100) 동안에 사용되어 플랫폼 ID 키(예를 들어, 도 2의 플랫폼 ID 키(180)를 참조)를 생성한다. 적어도 하나의 실시예에 있어서, 플랫폼 식별자의 해시를 형성함으로써, 플랫폼 식별자로부터 플랫폼 ID 키를 생성한다.
블록(130)에서, 플랫폼 ID 키는 실행가능 DXE 펌웨어를 암호 해독하는데 사용된다. 그 다음, 블록(140)으로 프로세싱을 진행한다. 블록(140)에서, 적합한 암호 해독 드라이버가 시스템 메모리로 로딩되어 디스패치된다. 그 다음, UEFI 단계 BDS(Boot Dev Select)(141), TSL(Transient System Load)(151), 및 RT(Run Time)(161)에 대해 각각 블록(150), 블록(160) 및 블록(170)으로 프로세싱을 진행한다. 이들 하나 이상의 스테이지(141, 151, 161) 동안에, 운영 시스템 코드는 비휘발성 저장 장치로부터 휘발성 시스템 메모리로 로딩된다. 하나의 실시예에 있어, 이러한 OS 코드의 로딩은 TSL 단계(151) 동안에 블록(160)에서 이루어진다.
도 2는 수정된 부팅 방법(200)의 적어도 하나의 실시예를 도시하는 흐름도이다. 방법(200)은 생체 측정 정보로 부팅 펌웨어 명령어를 암호화하는 것을 포함한다. 이러한 방식으로, 후속의 부팅 시퀀스는, 실행하기 위해 드라이버와 같은 부팅 명령어를 메모리(예를 들어, 휘발성 시스템 메모리)로 로딩하기 전에 사용자 인증을 포함할 수 있다.
도 2의 방법(200)은, 예를 들어, 신규 구매 시스템의 사용자의 최초 부팅시에 개시될 수 있다. 이러한 시나리오에 대해, 컴퓨팅 시스템의 제조자는, 제조시에, 넥스트 파워 온 이벤트가 도 2의 방법(200)을 호출하여 생체 측정 인증을 초기화할 수 있다는 것을 인식하도록 설정되는 플래시 매니저를 설치했을 수 있다.
이와 달리, 도 2의 방법(200)은 초기 최초 부팅 이후에 사용자에 의해 개시될 수 있다. 이러한 다른 시나리오는 예를 들어, 사용자 제어의 선택 메카니즘(예를 들어, 컴퓨팅 디바이스 상의 제어 패널 또는 설정 옵션)을 통해 사용자가 생체 측정 인증 초기화를 선택함으로써 호출될 수 있다. 적어도 하나의 이러한 실시예에 있어서, 사용자 제어 메카니즘은, 이미 인에이블 상태로 되어 있지 않으면(예를 들어, 제조자가 방법(200)이 최초 부팅시에 강제로 실행되도록 디폴트 프로세싱을 실행하지 않으면), 생체 측정 인증을 개시하는데 사용될 수 있다. 그렇지 않으면, 사용자는 이전에 초기화된 인증 정보를 변경하고자 할 수 있다. 이러한 시나리오에 있어서, 사용자는, 도 2에 도시된 방법(200)의 블록(222)(이하에 기술)으로 진행하도록 승인되기 전에, 구 생체 측정 정보를 먼저 제공해야 한다(프로세싱은 미도시). 다시 말하면, 시스템의 절도범은 그 생체 측정 정보를 자신의 정보로 변경해도 본 명세서에 기재된 인증을 우회할 수 없다.
도 2는, 방법(200)이, 각각 도 1과 관련하여 상술한 프로세싱(110) 및 프로세싱(120)의 라인을 따라, 각각 리셋(210) 프로세싱 및 플랫폼 초기화(220) 프로세싱으로 개시하는 것을 도시한다.
방법(200)의 프로세싱은 블록(220)으로부터 블록(222)으로 진행한다. 블록(222)에서, 하나 이상의 생체 측정 입력 디바이스(예를 들어, 도 6 및 도 7의 602를 참조)가 초기화된다. 블록(222)에서 초기화된 디바이스는, 다음의 디바이스, 즉, 카메라 또는 다른 얼굴 인식 디바이스, 지문 스캐너, 망막 스캐너, 홍채 스캐너, 마이크로폰 또는 다른 음성 스캐너, 뇌파 스캐너, DNA 분석기, 손금 분석기, 또는 다른 생체 측정 입력 디바이스 중 하나 이상을 포함할 수 있다. 프로세싱은 블록(222)으로부터 블록(224)으로 진행한다.
블록(224)에서, 사용자로부터의 입력을 하나 이상의 생체 측정 입력 디바이스로부터 수신한다. 얼굴의 다중 뷰, 또는 복수의 손가락으로부터의 지문, 또는 양쪽 눈으로부터의 스캔과 같은 복수의 샘플을 단일의 디바이스로부터 수신할 수 있음을 알아야 한다. 이러한 방식으로, (바로 위에 기술된) 동일 유형의 복수 판독값 및/또는 복수의 디바이스로부터의 단일 판독값(예를 들어, 암호화를 위한 망막 스캔 및 음성 데이터의 조합 등)을 포함하여, 펌웨어 암호화를 위해 복수 요소 인증이 지원될 수 있다. 수신된 정보는 디지털 형태로 저장될 수 있다. 프로세싱은 블록(224)으로부터 블록(230)으로 진행한다.
블록(230)에서, 디지털의 생체 측정 정보를 사용하여 사용자의 생체 측정 데이터에 대응하는 개인 키를 생성한다. 블록(230)에서, 예를 들어, 블록(224)에서 수집된 사용자의 디지털 생체 측정 정보에 근거하여 해시값을 생성함으로써, 이들 개인 키가 생성될 수 있다. 그 다음, 프로세싱은 블록(230)으로부터 블록(250)으로 진행한다.
블록(250)에서, 실행가능한 펌웨어 명령어가 암호화된다. 적어도 하나의 실시예에 있어서, 이는 DXE 단계 명령어가 상주하는 펌웨어 볼륨(firmware volume)을 암호화함으로써 실행된다. 블록(250)에서의 암호화는, 상술한 플랫폼 식별자로부터 생성된 플랫폼 ID 키(180)와 블록(230)에서 생성된 개인 키를 이용하여 수행된다. 이 암호화된 명령어는 디바이스 펌웨어에 로딩되어, 펌웨어 볼륨의 기존의 명령어를 덮어쓰기할 수 있다. 그 다음, 프로세싱은 블록(250)으로부터 진행하여 블록(280)에서 종료한다. 적어도 하나의 다른 실시예에 있어서, 프로세싱은 블록(250)으로부터 선택적인 블록(255)으로 진행할 수 있다. 블록(255)의 선택적인 특성은 도 2에서 파선으로 표시되어 있다.
블록(255)에서, 사용자가 부팅 프로세스를 계속하고자 하는지 여부를 결정한다. 계속하기를 원하지 않으면, 블록(280)에서 프로세싱을 종료한다. 예를 들어, 사용자는 초기 암호화 프로세싱을 수행하기만을 원하고, 당장 컴퓨팅 디바이스를 실제로 부팅하여 사용하기를 원하지 않을 때, 이러한 프로세싱이 일어날 수 있다. 사용자가 원하는 것은, 키보드 입력, 사용자 스크린 입력, 음성 입력 등의 공지의 방법을 통해, 블록(255)에서 확인될 수 있다.
사용자가 부팅 프로세스를 계속하기를 원하면, 프로세싱은 블록(255)으로부터, OS의 실행을 로딩하여 개시하기 위해서, 부팅 프로세싱 블록(260, 270, 275)으로 진행한다.
적어도 하나의 실시예에 있어서, 도 2에 도시된 방법(200)의 프로세싱은 UEFI 부팅 프로세스의 일부분으로서 구현될 수 있다. 도 3에서는, 도 2의 방법(200)이 UEFI 부팅 시퀀스의 단계(311, 321, 331, 341, 351, 361)에 적용된 것으로서 도시되어 있다. 도 3은 DXE 단계(331) 동안에 방법(200)의 상당 부분이 수행됨을 도시하고 있다.
특히, 도 3은 방법(200)의 블록(210)이 SEC 단계(311) 동안에 수행되는 것과, 블록(220)이 PEI 단계(321) 동안에 수행되는 것을 도시하고 있다. 프로세싱은 블록(220)으로부터 블록(222)으로 진행한다.
도 3은 블록(222, 224, 230, 250, 255)이 DXE 단계(331) 동안에 수행되는 것을 도시한다. 즉, UEFI 펌웨어가 사용자의 생체 측정 정보에 근거하여 개인 키를 이용하여 (플랫폼 식별자와 함께) 암호화되는 것은 DXE 단계(331) 동안이다. 그 다음, 블록(255)에서의 결정이 "트루(true)" 값으로 평가하면, 프로세싱 블록(260, 270, 275)은 각각 BDS 단계(341), TSL 단계(351), 및 RT 단계(361) 동안에 수행된다. 그렇지 않으면, 블록(280)에서 프로세싱이 종료된다.
도 4는 펌웨어의 생체 측정 기반 암호 해독을 이용한 개선된 부팅 프로세스의 적어도 하나의 실시예를 도시하는 흐름도이다. 적어도 하나의 실시예에 있어서, 도 4의 방법(400)은 도 2의 방법(200)을 이미 수행한 컴퓨팅 시스템 상에서 수행되는 것을 가정한다. 즉, 도 4는, 도 2에 도시된 방법(200)이 그 시스템 상에서 이미 수행되고 사용자의 생체 측정 정보를 이용하여 펌웨어를 암호화한 후에, 사용자의 생체 측정 정보를 이용하여, 펌웨어를 암호 해독하는 방법을 도시한다. 이러한 방식으로, 방법(400)은, 부팅 시퀀스 동안의 실행을 위해 이러한 드라이버가 메모리에 로딩되기 전(예를 들어, 휘발성 시스템 메모리에 로딩되기 전)에, 드라이버와 같은 부팅 명령어를 인증하는데 사용될 수 있다.
도 4는, 방법(400)이, 도 1의 방법(100)과 관련하여 상술한 방법(110, 120, 130, 140, 150, 160, 170 각각)의 라인을 따라 진행하는 몇몇 프로세싱 블록(410, 420, 430, 440, 450, 460, 470)을 포함하는 것을 도시한다. 그러나, 도 4는 정상 부팅 시퀀스(100)가 생체 측정 암호 해독을 고려하도록 개선되었음을 도시한다. 따라서, 도 4는, 블록(425)에서, 개선된 생체 측정 인증이 이 다비이스에 대해 인에이블되었는지를 결정한다. 즉, 몇몇 실시예에 있어서, 사용자는 인스턴트 시스템 상에서의 이러한 암호화를 포기하도록 사전에 선택하였을 수 있다. 마찬가지로, 제조자는 그 기능을 디스에이블하도록 선택하였을 수 있다. 이러한 경우에, 프로세싱은 블록(430)으로 진행한다. 블록(425)에서의 평가가 "폴스(false)"로 평가하면, 도 4에 도시된 방법(400)에 대해 실행된 프로세싱 블록은 도 1에 도시되는 정상 부팅 시퀀스(예를 들어, 110, 120, 130, 140, 150, 160, 170)에 대응한다는 것을 알아야 한다. 한편, 블록(425)에서의 평가가 "트루" 값으로 평가하면, 생체 측정 암호 해독 프로세싱을 개시하기 위해 프로세싱은 블록(432)으로 진행한다.
블록(432)에서, 생체 측정 입력 디바이스가 초기화된다. 적어도 하나의 실시예에 있어서, 블록(432)의 프로세싱은 도 2와 관련하여 상술한 블록(222)의 프로세싱 라인을 따라 진행한다. 그 다음, 프로세싱은 블록(432)에서 블록(434)으로 진행한다. 블록(434)에서, 사용자의 생체 측정 정보가 수집된다. 적어도 하나의 실시예에 있어서, 블록(434)의 프로세싱은 도 2와 관련하여 상술한 블록(224)의 프로세싱 라인을 따라 진행한다. 그 다음, 프로세싱은 블록(436)으로 진행한다.
블록(436)에서, 블록(434)에서 수집된 생체 측정 정보에 근거하여 개인 키가 생성된다. 또한, 적어도 하나의 실시예에 있어서의 블록(436)의 프로세싱은 도 2와 관련하여 상술한 블록(230)의 프로세싱 라인을 따라 진행한다. 그 다음, 프로세싱은 블록(436)에서 블록(438)으로 진행한다.
블록(438)에서, 앞서 암호화된 펌웨어 볼륨(도 2 참조)은 블록(436)에서 생성된 개인 키를 이용하여 암호 해독된다. 적어도 하나의 실시예에 있어서, 암호 해독은 개인 키뿐만 아니라 플랫폼 ID 키(180)를 근거로 이루어진다. 적어도 하나의 다른 실시예에 있어서, 암호화는 추가 정보를 근거로 이루어질 수 있다. 이러한 추가 정보는 패스워드 또는 패스프레이즈(passphrase)("당신이 알고 있는 것"), USB 동글, 스마트 카드 또는 다른 디바이스와 같은 토큰("당신이 가지고 있는 것"), 및/또는 GPS 데이터 또는 지리상의 위치 데이터와 같은 위치 정보("당신이 있는 곳") 등의 다른 요소를 포함할 수 있다. 적어도 하나의 실시예에 있어서, 이러한 추가 정보는 추가 키로서 캡쳐되어 생체 측정 개인 키와 함께(또는 대신에) 암호 해독에 사용될 수 있다. 적어도 하나의 다른 실시예에 있어서, 추가적인 정보는 개인 키 내에 포함될 수 있다. 이들 실시예 중 어느 하나에 있어서, 블록(438)에서 암호화를 위해 사용되는 사용자 기반의 정보(옵션의 "당신이 알고 있는 것", "당신이 가지고 있는 것", 및 "당신이 있는 곳"뿐만 아니라, 생체 측정 데이터를 포함함)가 도 2의 블록(250)에서 수행되는 암호화에 이미 사용되었다는 것을 알아야 한다.
도 4는, 블록(432, 434, 436 및 438)에서의 프로세싱으로 인해, 사용자가 물리적으로 없는 상태에서 부팅 프로세스 동안에 펌웨어 볼륨을 암호 해독할 수 없음을 도시한다. 이러한 방식으로, 컴퓨팅 시스템은 사용자가 물리적으로 없는 상태에서 OS를 부팅할 수 없어, 도난된 것이라면 그 디바이스를 사용할 수 없도록 한다. 또한, 블록(250)(도 2) 및 블록(438)(도 4)에 도시되는 암호화/암호 해독이 플랫폼 ID 키를 또한 사용하기 때문에, 추가 보안이 유지된다. 즉, 사용자가 2개의 시스템을 모두 소유하고 있을지라도, 제 1 컴퓨팅 시스템의 사용자는 제 2 컴퓨팅 시스템으로부터의 펌웨어 사본을 제 1 컴퓨팅 시스템으로 구울 수 없다. 이는 플랫폼 식별자가 컴퓨터 시스템 사이에서는 고유하기 때문이다.
블록(438)에서의 암호 해독 동작이 성공적이면, 정상 부팅 프로세싱이 블록(440, 450, 460, 470)에서 수행된다.
그러나, 암호 해독 동작이 성공적이지 못하면, 블록(458)에서 프로세싱이 종료된다. 그러나, 종료에 앞서, 선택적인 블록(456)이 수행될 수 있다. 블록(456)에서, 암호 해독을 재시도할지를 결정한다. 이러한 결정은 디폴트 세팅을 근거로 행해지거나, 사용자로부터 요청된 선택 입력을 근거로 행해질 수 있다. 어떤 경우든, 재시도가 수행되어야 하는 경우에, 프로세싱은 블록(434)으로 진행하여, 추가적인 암호 해독 시도를 위해 생체 측정 정보를 수집한다.
적어도 하나의 실시예에 있어서 도 4에 도시되는 방법(400)의 프로세싱은 UEFI 부팅 프로세스의 일부분으로서 구현될 수 있다. 도 5에서는, 도 4의 방법(400)이 UEFI 부팅 시퀀스의 단계(311, 321, 331, 341, 351, 361)에 적용된 것으로 도시되어 있다. 도 5는 방법(400)의 상당 부분이 DXE 단계(331) 동안에 수행되는 것을 도시한다.
특히, 도 5는 방법(400)의 블록(410)이 SEC 단계(311) 동안에 수행되는 것과, 블록(420)이 PEI 단계(321) 동안에 수행되는 것을 도시한다. 프로세싱은 블록(420)으로부터 블록(425)으로 진행한다.
도 5는, 선택적인 블록(456)뿐만 아니라, 블록(425, 430, 432, 434, 436, 438, 440)이 DXE 단계(331) 동안에 수행되는 것을 도시한다. 즉, UEFI 펌웨어가 사용자의 생체 측정 정보를 이용하여 (플랫폼 식별자와 함께) 암호 해독되는 것은 DXE 단계(331) 동안이다. 그 다음, 블록(456)에서의 결정이 "트루" 값으로 평가하면, 프로세싱 블록(450, 460, 470)은 각각 BDS 단계(341), TSL 단계(351), RT 단계(361) 동안에 수행된다. 그렇지 않으면, 프로세싱은 블록(458)에서 종료된다.
도 6은, 부팅 동안에 적어도 펌웨어의 생체 측정 인증의 실시예를 수행하기 위한 모듈(630) 및 다른 시스템 요소를 도시하는 블록도이다. 예를 들어, 모듈(630)은 도 2 및 도 3에 도시되는 암호화 블록(222, 224, 230, 250)의 실시예를 수행하는 명령어를 포함할 수 있으며, 또한, 도 4 및 도 5에 도시되는 암호 해독 블록(430, 432, 434, 436, 438)의 실시예를 수행하는 명령어를 포함할 수 있다. 따라서, 본 발명의 실시예는 본 명세서에서 설명되는 동작을 수행하기 위한 명령어를 포함하는 머신 액세스가능 저장 매체를 포함한다. 이러한 실시예는 컴퓨터 프로그램 제품으로서 또한 지칭될 수 있다.
도 6은, 모듈(630)이 디바이스 초기화기(604), 입력 수집기(606), 키 생성기(608), 암호화 모듈(612), 및 암호 해독 모듈(614) 중 적어도 하나 이상을 포함하는 것을 도시한다. 적어도 하나의 실시예에 있어서, 이러한 모듈(630)은, 컴퓨팅 디바이스의 ROM에 저장되어 OS가 로딩되기 이전에 부팅 프로세스 동안에 실행되는 펌웨어 모듈이다. 예를 들어, 디바이스 초기화기(604)의 하나 이상의 명령어는, 부팅 동안에, 도 2 및 도 3에 도시된 블록(222)의 프로세싱을 수행하고, 또한 도 4 및 도 5에 도시된 블록(432)의 프로세싱을 수행하도록 실행될 수 있다. 입력 수집기(606)의 하나 이상의 명령어는 도 2 및 도 3에 도시된 블록(224)의 프로세싱을 수행하고, 또한 도 4 및 도 5에 도시된 블록(434)의 프로세싱을 수행하도록 실행될 수 있다. 키 생성기(608)의 하나 이상의 명령어는 도 2 및 도 3의 블록(230) 및 도 4 및 도 5의 블록(436)에 도시된 바와 같이, 개인 키(610)를 생성하는 프로세싱을 수행하도록 실행될 수 있다.
암호화 모듈(612)의 하나 이상의 명령어는 도 2 및 도 3에 도시된 블록(250)과 연관하여 기술한 바와 같이, 부팅 명령어를 암호화하도록 실행될 수 있다. 적어도 하나의 실시예에 있어서, 암호화 모듈(612)에 의해 수행되는 암호화 프로세싱(250)은 UEFI 드라이버 명령어를 포함하는 펌웨어 볼륨에 적용될 수 있다.
암호 해독 모듈(614)의 하나 이상의 명령어는 도 4 및 도 5에 도시된 블록(438)과 연관하여 기술한 바와 같이, 부팅 명령어를 암호 해독하도록 실행될 수 있다. 적어도 하나의 실시예에 있어서, 암호 해독 모듈(614)에 의해 수행되는 암호 해독 프로세싱(438)은 UEFI 드라이버 명령어를 포함하는 펌웨어 볼륨에 적용될 수 있다.
도 6은, 모듈(630)이 입력 데이터에 적용되어 본 명세서에 기술된 기능을 수행하고, 출력 정보를 생성할 수 있음을 추가로 도시한다. 따라서, 하나 이상의 모듈(630)은 컴퓨팅 시스템의 다른 구성 요소로부터의 입력을 수신할 수 있다. 예를 들어, 도 6은, 암호화 모듈(612) 및 암호 해독 모듈(614) 모두가 컴퓨팅 시스템으로부터 플랫폼 ID(680)를 수신할 수 있음을 도시한다.
입력 수집기(606)는 하나 이상의 생체 측정 디바이스(620)로부터의 생체 측정 정보를 수신할 수 있다. 추가의 생체 측정 디바이스의 선택적인 특성을 도 6에서 파선으로 나타내고 있다. 적어도 하나의 실시예에 있어서, 생체 측정 디바이스는 카메라 또는 다른 얼굴 인식 디바이스, 지문 스캐너, 망막 스캐너, 홍채 스캐너, 마이크로폰 또는 다른 음성 스캐너, 뇌파 스캐너, DNA 분석기, 손금 분석기, 또는 다른 생체 측정 입력 디바이스 중 하나 이상을 포함할 수 있다.
하나 이상의 모듈(630)은 출력 데이터 또는 신호를 컴퓨팅 시스템의 다른 구성 요소에 제공할 수 있다. 예를 들어, 도 6은, 디바이스 초기화기(604)가 초기화 신호 및/또는 데이터를 하나 이상의 생체 측정 디바이스(602)에 제공할 수 있음을 도시한다. 또한, 키 생성기 모듈(608)은, 사용자의 생체 측정 데이터에 적어도 부분적으로 근거하여 키(610)를 생성할 수 있으며, 이러한 키(610)를 암호화 모듈(612) 및 암호 해독 모듈(614)과 같은 다른 모듈에 제공할 수 있다.
본 명세서에서 주로 ROM 펌웨어 명령어로서 설명되었지만, 본 명세서에 개시되는 모듈(630)의 실시예는 하드웨어, 소프트웨어, 펌웨어, 또는 이러한 구현 접근법의 조합으로 구현될 수 있다. 실시예는, 적어도 하나의 프로세서, 데이터 저장 시스템(휘발성 및/또는 비휘발성 메모리 및/또는 저장 요소를 포함함), 적어도 하나의 입력 디바이스(키보드, 터치스크린 등과 같은), 및 적어도 하나의 출력 디바이스(모니터 등의 내부 디스플레이 스크린 또는 주변 디스플레이 디바이스와 같은)로 구성되는 프로그램가능 시스템 상에서 실행하는 컴퓨터 명령어로서 구현될 수 있다.
이러한 머신 액세스가능 저장 매체는, 제한없이, 하드 디스크와 같은 저장 매체, 플로피 디스크, 광학 디스크, CD-ROM, CD-RW, 및 자기 광학 디스크 등을 포함하는 다른 유형의 디스크, ROM, RAM, DRAM, SRAM, EPROM, EEPROM와 같은 반도체 디바이스, 자기 또는 광학 카드, 또는 전자 명령어를 저장하기에 적합한 다른 유형의 매체와 같은 저장 매체를 포함하는, 머신 또는 디바이스에 의해 제조 또는 형성되는 파티클의 물리적 비일시적 배열을 포함할 수 있다.
적어도 하나의 실시예에 있어서, 도 6에 도시되는 모듈(630)은, UEFI 부팅 프로세스의 일부분으로서 실행될 수 있다. 도 7에서는, UEFI 부팅 동안에 펌웨어의 생체 측정 기반의 인증을 수행하는 기능성 펌웨어 및 소프트웨어 모듈을 도시하는 단계 도표가 도시되어 있다. 도 7은 스타트업 모듈(710) 및 PEI 코어 모듈(720)을 도시한다. 적어도 하나의 실시예에 있어서, 스타트업 모듈(710)은, 도 1, 도 2 및 3, 그리고 도 4 및 5와 각각 연관하여 상술된 블록(110, 210, 410)의 프로세싱을 수행하도록 실행될 수 있다. 이러한 프로세싱은 UEFI 부팅 시퀀스의 SEC 단계(311) 동안에 수행될 수 있다.
적어도 하나의 실시예에 있어서, 마찬가지로, PEI 코어 모듈(720)은, 도 1, 도 2 및 3, 그리고 도 4 및 5와 각각 연관하여 상술된 블록(120, 220, 420)의 프로세싱을 수행하도록 실행될 수 있다. 이러한 프로세싱은 UEFI 부팅 시퀀스의 PEI 단계(321) 동안에 수행될 수 있다.
도 7은 인증 모듈(630)을 또한 도시한다. 인증 모듈(630)은 하나 이상의 생체 측정 디바이스(620)로부터의 생체 측정 데이터를 포함하는 각종 입력을 수신할 수 있으며, 또한 플랫폼 식별자를 수신할 수 있다. 인증 모듈(630)은, 도 6과 연관하여 상술한 바와 같이, 부팅 프로세스 동안에 실행되는 펌웨어 드라이버의 생체 측정 인증을 수행하도록 실행될 수 있다. 이러한 프로세싱은 UEFI 부팅 시퀀스의 DXE 단계(331) 동안에 수행될 수 있다.
도 7은 OS 부팅 프로세스의 단계(331, 341, 351, 361) 각각의 동안에 실행되는 추가의 모듈(740, 750, 760, 770)을 또한 도시한다. 이러한 모듈은 펌웨어 모듈을 포함할 수 있으나, 소프트웨어 프로그램을 또한 포함할 수 있다. 예를 들어, OS(770)는 펌웨어 명령어보다는 소프트웨어 프로그램으로서 구현될 수 있다.
소프트웨어 프로그램으로서 구현되는 임의의 모듈(예를 들어, 770)은 프로세싱 시스템과 통신하는 높은 레벨의 절차적 또는 객체 지향적 프로그래밍 언어로 구현될 수 있다. 이 프로그램은, 원하면, 어셈블리 또는 기계어로 또한 구현될 수 있다. 사실상, 본 명세서에 기술되는 메카니즘은 특정의 프로그래밍 언어로 범위가 한정되지 않는다. 어떠한 경우든, 그 언어는 컴파일 또는 해석형 언어일 수 있다.
도 8에서는, 각각이 상술한 개선된 부팅 프로세싱의 실시예를 수행할 수 있는 제 1 시스템(800a) 및 제 2 시스템(800b)의 블록도가 도시되어 있다. 이러한 적용을 위해, 프로세싱 시스템은 예를 들어, 디지털 신호 프로세서(DSP), 마이크로컨트롤러, ASIC(Application Specific Integrated Circuit), 그래픽 처리부, 또는 마이크로프로세서와 같은 프로세서를 구비하는 임의의 시스템을 포함한다.
도 8에 도시된 바와 같이, 제 1 시스템(800a)은, 그래픽 메모리 컨트롤러 로직(GMC)(820)에 결합되어 있는 하나 이상의 프로세싱 요소(810, 815)를 포함할 수 있다. 추가의 프로세싱 요소(815)의 선택적인 특성을 도 8에서 파선으로 나타내고 있다.
각각의 프로세싱 요소(810, 815)는 싱글 코어일 수 있고, 이와 달리, 멀티 코어를 포함할 수 있다. 프로세싱 요소(810, 815)는, 선택적으로, 프로세싱 코어 외에, 집적 메모리 컨트롤러 및/또는 집적 I/O 컨트롤 로직과 같은 다른 온 다이 요소(on-die element)를 포함할 수 있다. 또한, 제 1 시스템(800a)의 적어도 하나의 실시예에 있어서, 프로세싱 요소(810, 815)의 코어는, 그들이 코어 당 하나 이상의 하드웨어 스레드 콘텍스트(hardware thread context)를 포함할 수 있다는 점에서, 멀티스레드(multithread)될 수 있다.
도 8은, GMC(820)가 예를 들어 DRAM일 수 있는 메모리(830)에 결합되어 있는 것을 도시한다. 적어도 몇몇 실시예에 있어서, GMC(820)는 칩셋 또는 칩셋의 일부일 수 있다. 이와 달리, GMC의 컨트롤러 로직은, 예를 들어, 시스템 온 어 칩(System-On-a-Chip)(SOC) 구성과 같이, 시스템의 다른 구성 요소로 집적될 수 있다. GMC(820)는 프로세서(810, 815)와 통신하고, 프로세서(810, 815)와 메모리(830) 간의 상호 동작을 제어할 수 있다.
GMC(820)는 프로세서(810, 815)와 시스템(800a)의 다른 요소 간의 가속형 버스 인터페이스로서 또한 동작할 수 있다. 적어도 하나의 실시예에 있어서, GMC(820)는 프런트사이드 버스(FSB)(895) 등의 멀티드랍 버스(multi-drop bus)를 통해 프로세서(810, 815)와 통신한다. 다른 실시예(예를 들어, 도 9 및 도 10을 참조)에 있어서, GMC(820)는 포인트 투 포인트 상호 접속부를 통해 프로세서(810, 815)와 통신한다.
추가로, GMC(820)는 디스플레이(840)(예를 들어, 플랫 패널 디스플레이 또는 터치 감지형 디스플레이 등)에 결합되어 있다. GMC(820)는 집적형 그래픽 가속기를 포함할 수 있다. GMC(820)는, 각종 주변 디바이스를 시스템(800a)에 결합하는데 사용될 수 있는 입출력(I/O) 컨트롤러 로직(IC)(850)에 추가로 결합되어 있다. 예를 들어, 하나 이상의 키보드, 마우스 또는 숫자 키패드 등의 다른 주변 디바이스(870)와 함께, IC(850)에 결합되어 있는 별도의 그래픽 디바이스인 외부 그래픽 디바이스(860)가 도시되어 있다.
이와 달리, 제 1 시스템(800a)에는 추가적인 또는 상이한 프로세싱 요소가 또한 존재할 수 있다. 예를 들어, 제 2 시스템(800b) 실시예와 관련하여 바로 아래에 도시되는 기능 중 하나가 제 1 시스템(800a)에 포함될 수 있다. 또한, 추가의 프로세싱 요소(815)는, 프로세서(810)와 동일한 추가의 프로세서, 프로세서(810)와 이기종 또는 비대칭인 추가의 프로세서, 가속기(예를 들어, 그래픽 가속기 또는 디지털 신호 프로세싱(DSP) 유닛과 같은), 필드 프로그램가능 게이트 어레이, 또는 다른 프로세싱 요소를 포함할 수 있다. 아키텍쳐, 마이크로아키텍쳐, 열적(thermal), 전력 소비 특성 등을 포함한 다양한 영역의 지표 이점의 측면에서 물리적 리소스(810, 815) 사이에 여러 차이가 있다. 이들 차이는 그 자체를 프로세싱 요소(810, 815) 간의 비대칭 및 이기종으로서 효과적으로 나타낼 수 있다. 적어도 하나의 실시예에 있어서, 다양한 프로세싱 요소(810, 815)는 동일의 다이 패키지 내에 존재할 수 있다.
도 8은, 제 2 시스템(800b)이 하나 이상의 프로세싱 요소(811)를 포함할 수 있음을 도시한다. 도 8에서 도시한 제 1 시스템(800a)과 마찬가지로, 시스템(800b)은 전자 디바이스(800b)를 원하는 대로 구성하기에 적합한 하드웨어 및/또는 소프트웨어를 이용하여 구현될 수 있는 전자 디바이스이다. 도 8은, 하나의 실시예에 있어서, 도시적인 시스템(800b)이 터치 감지형 디스플레이 디바이스(802)와, 시스템 컨트롤 로직(804)에 결합된 하나 이상의 프로세서(811)를 포함하는 것을 도시한다. 도시적인 시스템(800b)은 시스템 컨트롤 로직(804)에 결합된 시스템 메모리(830)를 또한 포함할 수 있다. 시스템 컨트롤 로직(804)은 비휘발성 메모리 및/또는 저장 디바이스(835)에 또한 결합될 수 있으며, 하나 이상의 통신 인터페이스(806)에 또한 결합될 수 있다.
터치 감지형 디스플레이 디바이스(802)(이하, "터치스크린"이라 함)는, 예를 들어, 커패시터, 저항, 표면 탄성파(SAW), 적외선, 및 광학 촬상 등의 적합한 터치 감지형 기술을 제한없이 이용하여 구현될 수 있다. 일실시예에 있어서 터치 감지형 디스플레이 디바이스(802)에 사용되는 터치 감지형 기술은 그 표면 위를 실제로 터치할 필요가 없고, 표면 근처의 대상의 존재를 감지할 수 있다. 그럼에도 불구하고, 이러한 기술은 디스플레이 디바이스(802)의 표면 위를 실제로 터치하는 대상을 비슷하게 감지할 수 있기 때문에, 또한, 전자 디바이스(800b)가 사용될 때 이러한 표면이 실제로 터치될 가능성이 있기 때문에, 이러한 기술은 터치 감지형으로 고려될 수 있다. 일실시예에 있어서의 터치 감지형 디스플레이 디바이스(802)는 임의의 적합한 멀티 터치 기술을 이용하여 구현될 수 있다. 터치 감지형 디스플레이 디바이스(802)는, 예를 들어, LCD의 디스플레이 기술과 같은 적합한 디스플레이 기술을 이용하여 구현될 수 있는 디스플레이를 포함한다. 적어도 하나의 실시예에 있어서의 시스템 컨트롤 로직(804)은 하나 이상의 디스플레이 인터페이스를 터치 감지형 디스플레이 디바이스(802)에 제공하는 하나 이상의 그래픽 컨트롤러를 포함할 수 있다.
적어도 하나의 실시예에 있어서의 시스템 컨트롤 로직(804)은, 적어도 하나의 프로세서(811)로의 적합한 인터페이스 및/또는 시스템 컨트롤 로직(804)과 통신하는 적합한 디바이스 또는 구성 요소로의 적합한 인터페이스를 제공하는 적합한 인터페이스 컨트롤러를 포함할 수 있다.
적어도 하나의 실시예에 있어서의 시스템 컨트롤 로직(804)은 시스템 메모리(830)로의 인터페이스를 제공하는 하나 이상의 메모리 컨트롤러를 포함할 수 있다. 시스템 메모리(830)는, 예를 들어, 시스템(800b)의 동작 중에, 데이터 및/또는 명령어를 로딩 및 저장하는데 사용될 수 있다. 적어도 하나의 실시예에 있어서, 시스템 메모리(830)는, 적합한 드라이버 소프트웨어, 애플리케이션 소프트웨어, 및/또는 운영 시스템 소프트웨어(예를 들어, 도 7의 운영 시스템(770)를 참조)와 같은 적합한 소프트웨어(832)를 저장하는데 사용될 수 있다. 일실시예에 있어서의 시스템 메모리(830)는 예를 들어, 적합한 DRAM와 같은 적합한 휘발성 메모리를 포함할 수 있다.
적어도 하나의 실시예에 있어서의 시스템 컨트롤 로직(804)은, 터치 감지형 디스플레이 디바이스(802), 비휘발성 메모리 및/또는 저장 디바이스(835) 및/또는 통신 인터페이스(806)로의 인터페이스를 제공하는 하나 이상의 입출력(I/O) 컨트롤러를 포함할 수 있다.
비휘발성 메모리 및/또는 저장 디바이스(835)는 데이터 및/또는 명령어(837)를 저장하는데 사용될 수 있다. 예를 들어, 비휘발성 메모리 및/또는 저장 디바이스(835)는 도 6에 도시된 모듈(604, 606, 608, 612, 614)의 라인을 따라 펌웨어 모듈을 저장할 수 있다. 이러한 실시예에 있어서, 명령어(837)는 도 6 및 도 7에 도시된 인증 모듈(630)에 대응할 수 있다.
비휘발성 메모리 및/또는 저장 디바이스(835)는 예를 들어, 플래시 메모리 등의 적합한 비휘발성 메모리를 포함할 수 있으며, 및/또는 예를 들어, 하나 이상의 하드 디스크 드라이브(HDD), 하나 이상의 CD 드라이브, 및/또는 하나 이상의 DVD 드라이브와 같은 적합한 비휘발성 저장 디바이스를 포함할 수 있다. 비휘발성 메모리 및/또는 저장 디바이스(835)는, 적어도 하나의 실시예에 있어서, 부팅 프로세싱(예를 들어, 도 6의 모듈(630) 및 도 1, 2, 3, 4, 5의 부팅 프로세싱을 참조)을 위한 명령어를 저장하는 비휘발성 ROM을 포함할 수 있다.
통신 인터페이스(806)는, 하나 이상의 네트워크를 통해 및/또는 다른 적합한 디바이스를 이용하여 통신하는 시스템(800b) 용의 인터페이스를 제공할 수 있다. 통신 인터페이스(806)는 적합한 하드웨어 및/또는 펌웨어를 포함할 수 있다. 일실시예에 있어서의 통신 인터페이스(806)는, 예를 들어, 네트워크 어댑터, 무선 네트워크 어댑터, 전화 모뎀, 및/또는 무선 모뎀을 포함할 수 있다. 무선 통신에 있어서, 일실시예에 있어서의 통신 인터페이스(806)는 하나 이상의 안테나(808)를 사용할 수 있다.
적어도 하나의 실시예에 있어서의 시스템 컨트롤 로직(804)은, 예를 들어, 사운드를 대응의 디지털 신호로 변환하는데 도움이 되고 디지털 신호를 대응의 사운드로 변환하는데 도움이 되는 오디오 디바이스, 카메라, 캠코더, 프린터, 및/또는 스캐너와 같은 적합한 입출력 디바이스로의 인터페이스를 제공하는 하나 이상의 입출력(I/O) 컨트롤러를 포함할 수 있다.
적어도 하나의 실시예에 있어서, 적어도 하나의 프로세서(811)는 시스템 컨트롤 로직(804)의 하나 이상의 컨트롤러용의 로직과 함께 패키징될 수 있다. 하나의 실시예에 있어서, 적어도 하나의 프로세서(811)는 시스템 컨트롤 로직(804)의 하나 이상의 컨트롤러용의 로직과 함께 패키징되어 시스템 인 패키지(System in Package)(SiP)를 형성할 수 있다. 일실시예에 있어서, 적어도 하나의 프로세서(811)는 시스템 컨트롤 로직(804)의 하나 이상의 컨트롤러용의 로직과 동일한 다이 상에 집적될 수 있다. 일실시예에 있어서, 적어도 하나의 프로세서(811)는 시스템 컨트롤 로직(804)의 하나 이상의 컨트롤러용의 로직과 동일한 다이 상에 집적되어 시스템 온 칩(System on Chip)(SoC)을 형성할 수 있다.
일실시예에 있어서 시스템(800b)에 사용되는 것으로 설명되었지만, 다른 실시예에 있어서의 터치 감지형 디스플레이 디바이스(802)는 다른 시스템 구성으로 사용될 수 있다.
여기서 도 9를 참조하면, 본 발명의 실시예에 따른 제 3 시스템 실시예(900)의 블록도가 도시되어 있다. 도 9에 도시된 바와 같이, 멀티프로세서 시스템(900)은 포인트 투 포인트 상호접속 시스템이며, 포인트 투 포인트 상호접속부(950)를 통해 결합된 제 1 프로세싱 요소(970)와 제 2 프로세싱 요소(980)를 포함한다. 도 9에 도시된 바와 같이, 프로세싱 요소(970, 980)의 각각은 제 1 및 제 2 프로세서 코어(즉, 프로세서 코어(974a, 974b) 및 프로세서 코어(984a, 984b))를 포함하는 멀티코어 프로세서일 수 있다.
이와 달리, 하나 이상의 프로세싱 요소(970, 980)는 가속기 또는 필드 프로그램 가능 게이트 어레이와 같은 프로세서 이외의 요소일 수 있다.
단 2개의 프로세싱 요소(970, 980)로 도시되어 있지만, 청구범위는 이것으로 한정되지 않음을 알아야 한다. 다른 실시예에서, 하나 이상의 추가 프로세싱 요소가 주어진 프로세서 내에 존재할 수 있다.
제 1 프로세싱 요소(970)는 메모리 컨트롤러 로직(MC)(972) 및 포인트 투 포인트(P-P) 인터페이스(976, 978)를 더 포함할 수 있다. 마찬가지로, 제 2 프로세싱 요소(980)는 MCH(982) 및 P-P 인터페이스(986, 988)를 포함할 수 있다. 도 9에 도시된 바와 같이, 메모리 컨트롤러 로직(972, 982)은 프로세서를 각각의 메모리, 즉 각각의 프로세서에 국부적으로 부착된 메인 메모리의 일부일 수 있는 메모리(932) 및 메모리(934)에 결합한다.
제 1 프로세싱 요소(970)와 제 2 프로세싱 요소(980)는 각각 P-P 상호접속부(952, 954)를 통해 I/O 컨트롤 로직(990)에 결합될 수 있다. 도 9에 도시된 바와 같이, I/O 컨트롤 로직(990)은 P-P 인터페이스(994, 998)를 포함할 수 있다. 또한, I/O 컨트롤 로직(990)은 고성능 그래픽 엔진(938)과 I/O 컨트롤 로직(990)을 결합하는 인터페이스(992)를 포함한다. 일실시예에서, 버스(939)는 그래픽 엔진(938)을 I/O 컨트롤 로직(990)에 결합하는데 사용될 수 있다. 이와 달리, 포인트 투 포인트 상호접속부(939)는 이들 구성 요소를 결합할 수 있다.
또한, I/O 컨트롤 로직(990)은 인터페이스(996)를 통해 제 1 버스(916)에 결합될 수 있다. 일실시예에서, 제 1 버스(916)는 PCI(Peripheral Component Interconnect) 버스, 또는 PCI 익스프레스 버스 또는 다른 3세대 I/O 상호접속 버스와 같은 버스일 수 있으며, 청구범위는 이것으로 한정되지 않는다.
도 9에 도시된 바와 같이, 다양한 I/O 디바이스(914)는, 제 1 버스(916)를 제 2 버스(910)에 결합하는 버스 브리지(918)와 함께, 제 1 버스(916)에 결합될 수 있다. 일실시예에서, 제 2 버스(910)는 LPC(Low Pin Count) 버스일 수 있다. 예를 들어, 키보드 및/또는 마우스(912), 통신 디바이스(916) 및 코드(930)를 포함할 수 있는 디스크 드라이브 또는 다른 대용량 디바이스와 같은 데이터 저장 유닛(918)을 포함할 수 있는 다양한 디바이스가 제 2 버스(910)에 결합될 수 있다. 코드(930)는 상술한 방법 중 하나 이상의 실시예를 수행하기 위한 명령어를 포함할 수 있다. 더욱이, 오디오 I/O(914)는 제 2 버스(910)에 결합될 수 있다. 다른 아키텍쳐가 가능함을 알아야 한다. 예를 들어, 도 9의 포인트 투 포인투 아키텍쳐 대신에, 시스템을 멀티 드랍 버스 또는 또 다른 이러한 아키텍쳐를 구현할 수 있다.
여기서 도 10을 참조하면, 본 발명의 실시예에 따른 제 4 시스템 실시예(1000)의 블록도가 도시되어 있다. 도 9 및 도 10에서 동일 요소는 동일 참조 번호를 가지고 있으며, 도 9의 특정 측면은 도 10의 다른 측면을 모호하게 하는 것을 피하기 위해 도 10에서 생략되어 있다.
도 10은, 프로세싱 요소(970, 980)가 집적 메모리 및 I/O 컨트롤 로직("CL")(1072, 1082)을 각각 포함할 수 있음을 도시한다. 적어도 하나의 실시예에 있어서, CL(1072, 1082)은 메모리 컨트롤러 로직을 포함할 수 있다. 추가로, CL(1072, 1082)은 I/O 컨트롤 로직을 또한 포함할 수 있다. 도 10은 메모리(932, 934)가 CL(1072, 1082)에 결합될 수 있을 뿐만 아니라, I/O 디바이스(1044)가 컨트롤 로직(1072, 1082)에 결합될 수 있음을 도시한다. 레거시(Legacy) I/O 디바이스(1015)는 I/O 서브시스템(990)에, 또는 칩셋이 있으면, 칩셋에 결합될 수 있다.
가능한 인터럽트에 대해 I/O 디바이스를 조사(interrogate)하지 못하지만, 사용자 선택 메카니즘을 근거로 이러한 디바이스를 조사하도록 변경할 수 있기 때문에, OS를 개시함에 있어 더 고속인 개선된 시스템 부팅 프로세싱을 위한 방법 및 시스템의 실시예가 본 명세서에 제공된다. 본 발명의 특정 실시예가 도시되고 도시되어 있지만, 청구범위를 벗어나지 않고 다양한 변경, 변화, 및 수정이 가능하다는 것은 당업자에게 자명하다.
따라서, 당업자는, 광의의 측면에서 본 발명을 벗어나지 않고 변경 및 수정을 행할 수 있다는 것을 알 수 있다. 청구범위는 본 발명의 진정한 범위 및 사상 내에 있는 이러한 모든 변경, 변화, 및 수정을 그들의 범위 내에서 포함하고 있다.
이하의 예는 본 명세서에 따른 실시예에 속한다. 하나 이상의 실시예는 컴퓨팅 시스템에 있어서의 운영 시스템의 부팅 동안에 부팅 모듈의 생체 측정 인증을 수행하는 방법을 제공할 수 있다. 본 방법은, 리셋 이벤트의 통지를 수신하는 것에 응답하여, 컴퓨팅 시스템 내의 부팅 시퀀스의 초기 동작을 수행하는 단계와, 컴퓨팅 시스템의 사용자의 생체 측정 정보로부터 생성된 적어도 하나의 키를 포함하는 복수의 키를 이용하여, 부팅 시퀀스 코드를 암호 해독하는 단계와, 암호 해독 단계에 응답하여, 컴퓨팅 시스템의 시스템 메모리에 운영 시스템 코드를 로딩하는 것을 포함하는 부팅 시퀀스의 추가 동작을 수행하는 단계와, 암호 해독이 성공적이지 못하면, 운영 시스템 코드를 로딩하지 않고 부팅 시퀀스를 종료하는 단계를 포함한다.
하나 이상의 실시예의 예에서, 부팅 시퀀스는 UEFI 부팅 시퀀스일 수 있다. 이러한 실시예에 있어서, UEFI 부팅 시퀀스의 드라이버 실행 환경 단계 동안에 암호 해독이 수행된다. 이러한 실시예에 있어서의 암호 해독은 UEFI 드라이버 코드의 암호 해독을 더 포함할 수 있다.
하나 이상의 실시예의 예에서, 부팅 시퀀스의 초기 동작은 컴퓨팅 시스템의 프로세서를 초기화하는 하나 이상의 동작을 포함한다.
하나 이상의 실시예의 예에서, 본 방법은 하나 이상의 생체 측정 디바이스를 초기화하는 단계를 더 포함할 수 있다. 본 방법은 하나 이상의 생체 측정 디바이스로부터 생체 측정 정보를 수집하는 단계를 더 포함할 수 있다.
하나 이상의 실시예의 예에서, 복수의 키는 컴퓨팅 시스템의 고유 정보로부터 생성된 적어도 하나의 키를 더 포함한다.
하나 이상의 실시예는, 프로세서에 의해 실행될 때, 컴퓨팅 디바이스로 하여금, 리셋 이벤트의 통지를 수신하고, 하나 이상의 생체 측정 디바이스로부터, 사용자와 연관된 생체 측정 정보를 수신하고, 상기 생체 측정 정보에 근거하여, 부팅 시퀀스 동안에 실행되는 명령어를 암호화하게 하고, 운영 시스템을 로딩하는 추가 프로세싱을 수행하게 하는 하나 이상의 명령어를 포함하는 적어도 하나의 머신 액세스 가능 저장 매체를 제공할 수 있으며, 상기 암호화는 컴퓨팅 디바이스와 연관된 고유 식별자를 더 근거로 하며, 운영 시스템의 로딩에 앞서 수행된다.
적어도 하나의 이러한 실시예에 있어서, 암호화는 UEFI 부팅 시퀀스의 드라이버 실행 환경 동안에 수행되는 것이다.
적어도 하나의 다른 이러한 실시예에 있어서, 암호화는 사용자와 연관된 하나 이상의 추가 데이터를 더 근거로 한다. 하나 이상의 추가 데이터는 (a) 토큰의 소유, (b) 패스워드, (c) 패스프레이즈, 및 (d) 사용자의 위치를 더 포함한다.
적어도 하나의 컴퓨터 판독 가능 매체의 하나 이상의 실시예의 다른 예에서, 실행될 때의 하나 이상의 추가 명령어는 컴퓨팅 디바이스로 하여금, 하나 이상의 플랫폼 초기화 명령어를 수행하게 하고, 하나 이상의 생체 측정 디바이스를 초기화하게 한다.
하나 이상의 실시예는, 프로세서에 의해 실행될 때, 컴퓨팅 디바이스로 하여금, 리셋 이벤트의 통지를 수신하고, 하나 이상의 생체 측정 디바이스로부터, 사용자와 연관된 생체 측정 정보를 수신하고, 상기 생체 측정 정보에 근거하여, 부팅 시퀀스 동안에 실행되는 명령어를 암호 해독하고, 운영 시스템을 로딩하는 추가 프로세싱을 수행하게 하는 하나 이상의 명령어를 포함하는 적어도 하나의 다른 머신 액세스가능 저장 매체를 제공할 수 있으며, 상기 암호 해독은 컴퓨팅 디바이스와 연관된 고유 식별자를 근거로 하며, 운영 시스템의 로딩에 앞서 수행된다.
적어도 하나의 다른 컴퓨터 판독 가능 매체의 하나 이상의 실시예의 다른 예에서, 실행될 때의 하나 이상의 추가 명령어는 컴퓨팅 디바이스로 하여금, 하나 이상의 플랫폼 초기화 명령어를 수행하게 하고, 하나 이상의 생체 측정 디바이스를 초기화하게 한다.
적어도 하나의 이러한 실시예에 있어서, 암호화는 UEFI 부팅 시퀀스의 드라이버 실행 환경 단계 동안에 수행되는 것이다.
적어도 하나의 다른 이러한 실시예에 있어서, 암호화는 사용자와 연관된 하나 이상의 추가 데이터를 더 근거로 한다. 하나 이상의 추가 데이터는 (a) 토큰의 소유, (b) 패스워드, (c) 패스프레이즈, 및 (d) 사용자의 위치를 더 포함한다.
하나 이상의 실시예는 부팅 모듈의 생체 측정 인증을 수행하는 시스템을 제공할 수 있다. 이러한 실시예의 예는, 프로세서, 프로세서에 결합된 비휘발성 메모리, 및 프로세서에 결합된 시스템 메모리를 포함하며, 상기 비휘발성 메모리는 사용자의 생체 측정 정보에 근거하여 제 1 키를 생성하고, 상기 비휘발성 메모리에 저장되는 명령어를 인증하고, 인증된 명령어를 비휘발성 메모리로부터 휘발성 메모리로 로딩하는 하나 이상의 명령어를 포함하며, 상기 인증은 제 1 키와, 시스템과 연관된 고유 식별자를 근거로 행해진다.
적어도 하나의 이러한 예의 시스템 실시예에 있어서, 상기 인증된 명령어는 운영 시스템 코드를 시스템 메모리에 로딩하기 전에 실행되는 명령어이다.
적어도 하나의 다른 이러한 예의 시스템 실시예에 있어서, 상기 고유 식별자는 시스템과 연관된 일련 번호이다.
적어도 하나의 다른 이러한 예의 시스템 실시예에 있어서, 상기 고유 식별자는 신뢰 플랫폼 모듈 키이다.
적어도 하나의 다른 이러한 예의 시스템 실시예에 있어서, 상기 생체 측정 정보는 지문이다.
적어도 하나의 다른 이러한 예의 시스템 실시예에 있어서, 상기 생체 측정 정보는 사용자 얼굴의 이미지이다.
적어도 하나의 다른 이러한 예의 시스템 실시예에 있어서, 상기 인증된 명령어는 하나 이상의 드라이버와 연관된 명령어를 더 포함한다. 적어도 하나의 이러한 실시예에 있어서, 비휘발성 메모리에 저장된 상기 명령어는 하나 이상의 UEFI 드라이버와 연관된 명령어를 더 포함한다.
적어도 하나의 다른 이러한 예의 시스템 실시예에 있어서, 상기 비휘발성 메모리는 고유 식별자를 근거로 제 2 키를 생성하기 위한 하나 이상의 명령어를 포함한다.
적어도 하나의 다른 이러한 예의 시스템 실시예, 청구항 11의 시스템에 있어서, 암호 해독은 사용자와 연관된 추가 데이터를 근거로 행해진다. 적어도 하나의 이러한 실시예에 있어서, 사용자와 연관된 상기 추가 데이터는 패스워드를 더 포함한다. 적어도 하나의 이러한 실시예에 있어서, 사용자와 연관된 상기 추가 데이터는 패스프레이즈를 더 포함한다. 적어도 하나의 이러한 실시예에 있어서, 사용자와 연관된 상기 추가 데이터는 사용자 위치 정보를 더 포함한다.

Claims (44)

  1. 부팅 코드의 생체 측정 인증(biometric authentication)을 수행하는 방법에 있어서,
    리셋 이벤트의 통지를 수신하는 단계와,
    하나 이상의 생체 측정 디바이스로부터, 사용자와 연관된 생체 측정 정보를 수신하는 단계와,
    상기 생체 측정 정보에 근거하여, 부팅 시퀀스 동안에 실행되는 명령어를 암호화하는 단계와,
    운영 시스템(Operating System)을 로딩하는 추가 프로세싱을 수행하는 단계
    를 포함하되,
    상기 암호화하는 단계는 컴퓨팅 디바이스와 연관된 고유 식별자를 더 근거로 하며, 또한 운영 시스템의 로딩에 앞서 수행되는
    생체 측정 인증의 수행 방법.
  2. 제 1 항에 있어서,
    하나 이상의 플랫폼 초기화 명령어를 수행하는 단계와,
    상기 하나 이상의 생체 측정 디바이스를 초기화하는 단계
    를 더 포함하는
    생체 측정 인증의 수행 방법.
  3. 제 1 항에 있어서,
    상기 암호화하는 단계는 UEFI 부팅 시퀀스의 드라이버 실행 환경 단계 동안에 수행되는
    생체 측정 인증의 수행 방법.
  4. 제 1 항에 있어서,
    상기 암호화하는 단계는 사용자와 연관된 하나 이상의 추가 데이터를 더 근거로 하는 생체 측정 인증의 수행 방법.
  5. 제 4 항에 있어서,
    상기 하나 이상의 추가 데이터는, (a) 토큰의 소유, (b) 패스워드, (c) 패스프레이즈, 및 (d) 상기 사용자의 위치 중 하나 이상을 더 포함하는
    생체 측정 인증의 수행 방법.
  6. 컴퓨팅 디바이스 상에서 실행되는 것에 응답하여, 상기 컴퓨팅 디바이스로 하여금 제 1 항 내지 제 5 항 중 어느 한 항에 기재된 방법을 실행하게 하는 복수의 명령어를 포함하는 적어도 하나의 머신 판독 가능 매체.
  7. 부팅 코드의 생체 측정 인증을 수행하는 방법에 있어서,
    리셋 이벤트의 통지를 수신하는 단계와,
    하나 이상의 생체 측정 디바이스로부터, 사용자와 연관된 생체 측정 정보를 수신하는 단계와,
    상기 생체 측정 정보에 근거하여, 부팅 시퀀스 동안에 실행되는 명령어를 암호 해독하는 단계와,
    운영 시스템을 로딩하는 추가 프로세싱을 수행하는 단계
    를 포함하되,
    상기 암호 해독하는 단계는 컴퓨팅 디바이스와 연관된 고유 식별자를 더 근거로 하며, 운영 시스템의 로딩에 앞서 수행되는
    생체 측정 인증의 수행 방법.
  8. 제 7 항에 있어서,
    하나 이상의 플랫폼 초기화 명령어를 수행하는 단계와,
    상기 하나 이상의 생체 측정 디바이스를 초기화하는 단계
    를 더 포함하는
    생체 측정 인증의 수행 방법.
  9. 제 7 항에 있어서,
    상기 암호 해독하는 단계는 UEFI 부팅 시퀀스의 사전 EFI 초기화 단계 동안에 수행되는
    생체 측정 인증의 수행 방법.
  10. 제 7 항에 있어서,
    상기 암호 해독하는 단계는 상기 사용자와 연관된 하나 이상의 추가 데이터를 더 근거로 하는
    생체 측정 인증의 수행 방법.
  11. 제 10 항에 있어서,
    상기 하나 이상의 추가 데이터는, (a) 토큰의 소유, (b) 패스워드, (c) 패스프레이즈, 및 (d) 상기 사용자의 위치 중 하나 이상을 더 포함하는
    생체 측정 인증의 수행 방법.
  12. 컴퓨팅 디바이스 상에서 실행되는 것에 응답하여, 상기 컴퓨팅 디바이스로 하여금 제 7 항 내지 제 11 항 중 어느 한 항에 기재된 방법을 실행하게 하는 복수의 명령어를 포함하는 적어도 하나의 머신 판독 가능 매체.
  13. 운영 시스템의 부팅 동안에 부팅 코드의 생체 측정 인증을 수행하는 시스템에 있어서,
    프로세서와,
    상기 프로세서에 결합된 비휘발성 메모리와,
    상기 프로세서에 결합된 시스템 메모리
    를 포함하되,
    상기 비휘발성 메모리는
    사용자의 생체 측정 정보에 근거하여 제 1 키를 생성하고,
    상기 비휘발성 메모리에 저장된 명령어를 인증하고,
    상기 인증된 명령어를 상기 비휘발성 메모리로부터 휘발성 메모리로 로딩하는
    하나 이상의 명령어를 포함하며,
    상기 인증은 상기 제 1 키와, 상기 시스템과 연관된 고유 식별자를 근거로 하는
    생체 측정 인증의 수행 시스템.
  14. 제 13 항에 있어서,
    상기 인증된 명령어는 상기 시스템 메모리에 운영 시스템 코드를 로딩하기 전에 실행되는 명령어인
    생체 측정 인증의 수행 시스템.
  15. 제 13 항에 있어서,
    상기 고유 식별자는 상기 시스템과 연관된 일련 번호인
    생체 측정 인증의 수행 시스템.
  16. 제 13 항에 있어서,
    상기 고유 식별자는 신뢰 플랫폼 모듈 키(a trusted platform module key)인
    생체 측정 인증의 수행 시스템.
  17. 제 13 항에 있어서,
    상기 생체 측정 정보는 지문인
    생체 측정 인증의 수행 시스템.
  18. 제 13 항에 있어서,
    상기 생체 측정 정보는 상기 사용자의 얼굴의 이미지인
    생체 측정 인증의 수행 시스템.
  19. 제 13 항에 있어서,
    상기 인증된 명령어는 하나 이상의 드라이버와 연관된 명령어를 더 포함하는
    생체 측정 인증의 수행 시스템.
  20. 제 13 항에 있어서,
    상기 비휘발성 메모리에 저장된 명령어는 하나 이상의 UEFI 드라이버와 연관된 명령어를 더 포함하는
    생체 측정 인증의 수행 시스템.
  21. 제 13 항에 있어서,
    상기 비휘발성 메모리는, 고유 식별자에 근거하여 제 2 키를 생성하기 위한 하나 이상의 명령어를 포함하는
    생체 측정 인증의 수행 시스템.
  22. 제 13 항에 있어서,
    암호 해독은 상기 사용자와 연관된 추가 데이터를 더 근거로 하는
    생체 측정 인증의 수행 시스템.
  23. 제 22 항에 있어서,
    상기 사용자와 연관된 상기 추가 데이터는 패스워드를 더 포함하는
    생체 측정 인증의 수행 시스템.
  24. 제 22 항에 있어서,
    상기 사용자와 연관된 상기 추가 데이터는 패스프레이즈를 더 포함하는
    생체 측정 인증의 수행 시스템.
  25. 제 22 항에 있어서,
    상기 사용자와 연관된 상기 추가 데이터는 사용자 위치 정보를 더 포함하는
    생체 측정 인증의 수행 시스템.
  26. 운영 시스템의 부팅 동안에 부팅 코드의 생체 측정 인증을 수행하는 방법에 있어서,
    리셋 이벤트의 통지를 수신하는 것에 응답하여, 컴퓨팅 시스템 내의 부팅 시퀀스의 초기 동작을 수행하는 단계와,
    상기 컴퓨팅 시스템의 사용자의 생체 측정 정보로부터 생성된 적어도 하나의 키를 포함하는 복수의 키를 이용하여 부팅 시퀀스 코드를 암호 해독하는 단계와,
    상기 암호 해독 단계에 응답하여, 상기 컴퓨팅 시스템의 시스템 메모리에 운영 시스템 코드를 로딩하는 것을 포함하는 상기 부팅 시퀀스의 추가 동작을 수행하는 단계와,
    상기 암호 해독이 성공적이지 못하면, 상기 운영 시스템 코드를 로딩하지 않고 상기 부팅 시퀀스를 종료하는 단계
    를 포함하는
    생체 측정 인증의 수행 방법.
  27. 제 26 항에 있어서,
    상기 부팅 시퀀스는 UEFI 부팅 시퀀스인
    생체 측정 인증의 수행 방법.
  28. 제 26 항에 있어서,
    상기 암호 해독하는 단계는 UEFI 부팅 시퀀스의 드라이버 실행 환경 단계 동안에 수행되는
    생체 측정 인증의 수행 방법.
  29. 제 26 항에 있어서,
    상기 부팅 시퀀스 코드를 상기 암호 해독하는 단계는 UEFI 드라이버 코드를 암호 해독하는 단계를 더 포함하는
    생체 측정 인증의 수행 방법.
  30. 제 26 항에 있어서,
    상기 부팅 시퀀스의 상기 초기 동작은 상기 컴퓨팅 시스템의 프로세서를 초기화하는 하나 이상의 동작을 포함하는
    생체 측정 인증의 수행 방법.
  31. 제 26 항에 있어서,
    하나 이상의 생체 측정 디바이스를 초기화하는 단계를 더 포함하는
    생체 측정 인증의 수행 방법.
  32. 제 26 항에 있어서,
    상기 생체 측정 정보를 하나 이상의 생체 측정 디바이스로부터 수집하는 단계를 더 포함하는
    생체 측정 인증의 수행 방법.
  33. 제 26 항에 있어서,
    상기 복수의 키는 상기 컴퓨팅 시스템의 고유 정보로부터 생성된 적어도 하나의 키를 더 포함하는
    생체 측정 인증의 수행 방법.
  34. 컴퓨팅 디바이스 상에서 실행되는 것에 응답하여, 상기 컴퓨팅 디바이스로 하여금 제 26 항 내지 제 33 항 중 어느 한 항에 기재된 방법을 실행하게 하는 복수의 명령어를 포함하는 적어도 하나의 머신 판독 가능 매체.
  35. 운영 시스템의 부팅 동안에 부팅 코드의 생체 측정 인증을 수행하는 시스템에 있어서,
    리셋 이벤트의 통지를 수신하는 수단과,
    적어도 하나의 생체 측정 디바이스로부터, 사용자와 연관된 생체 측정 정보를 수신하는 수단과,
    상기 생체 측정 정보에 근거하여, 부팅 시퀀스 동안에 실행되는 명령어를 암호화하는 수단과,
    상기 운영 시스템을 로딩하는 추가 프로세싱을 수행하는 수단
    을 포함하되,
    상기 암호화하는 수단은, 상기 컴퓨팅 디바이스와 연관된 고유 식별자를 근거로 하여 상기 명령어를 암호화하는 수단을 더 포함하고, 운영 시스템의 로딩에 앞서 수행되는
    생체 측정 인증의 수행 시스템.
  36. 제 35 항에 있어서,
    하나 이상의 플랫폼 초기화 명령어를 수행하는 수단과,
    상기 하나 이상의 생체 측정 디바이스를 초기화하는 수단
    을 더 포함하는
    생체 측정 인증의 수행 시스템.
  37. 제 35 항에 있어서,
    상기 암호화는 UEFI 부팅 시퀀스의 드라이버 실행 환경 단계 동안에 수행되는
    생체 측정 인증의 수행 시스템.
  38. 제 35 항에 있어서,
    상기 암호화는 상기 사용자와 연관된 하나 이상의 추가 데이터를 더 근거로 하는
    생체 측정 인증의 수행 시스템.
  39. 제 38 항에 있어서,
    상기 하나 이상의 추가 데이터는 (a) 토큰의 소유, (b) 패스워드, (c) 패스프레이즈, 및 (d) 상기 사용자의 위치 중 하나 이상을 더 포함하는
    생체 측정 인증의 수행 시스템.
  40. 운영 시스템의 부팅 동안에 부팅 코드의 생체 측정 인증을 수행하는 시스템에 있어서,
    리셋 이벤트의 통지를 수신하는 수단과,
    하나 이상의 생체 측정 디바이스로부터, 사용자와 연관된 생체 측정 정보를 수신하는 수단과,
    상기 생체 측정 정보에 근거하여, 부팅 시퀀스 동안에 실행되는 명령어를 암호 해독하는 수단과,
    상기 운영 시스템을 로딩하는 추가 프로세싱을 수행하는 수단
    을 포함하되,
    상기 암호 해독하는 수단은, 상기 컴퓨팅 디바이스와 연관된 고유 식별자를 근거로 하여 명령어를 암호 해독하는 수단을 더 포함하고, 운영 시스템의 로딩에 앞서 수행되는
    생체 측정 인증의 수행 시스템.
  41. 제 40 항에 있어서,
    하나 이상의 플랫폼 초기화 명령어를 수행하는 수단과,
    상기 하나 이상의 생체 측정 디바이스를 초기화하는 수단
    을 더 포함하는
    생체 측정 인증의 수행 시스템.
  42. 제 40 항에 있어서,
    상기 암호 해독은 UEFI 부팅 시퀀스의 사전 EFI 초기화 단계 동안에 수행되는
    생체 측정 인증의 수행 시스템.
  43. 제 40 항에 있어서,
    상기 암호 해독은 상기 사용자와 연관된 하나 이상의 추가 데이터를 더 근거로 하는
    생체 측정 인증의 수행 시스템.
  44. 제 43 항에 있어서,
    상기 하나 이상의 추가 데이터는 (a) 토큰의 소유, (b) 패스워드, (c) 패스프레이즈, 및 (d) 상기 사용자의 위치 중 하나 이상을 더 포함하는
    생체 측정 인증의 수행 시스템.
KR1020157007488A 2012-10-25 2012-10-25 펌웨어의 도난 방지 KR101775800B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/083498 WO2014063330A1 (en) 2012-10-25 2012-10-25 Anti-theft in firmware

Publications (2)

Publication Number Publication Date
KR20150048810A true KR20150048810A (ko) 2015-05-07
KR101775800B1 KR101775800B1 (ko) 2017-09-06

Family

ID=50543884

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157007488A KR101775800B1 (ko) 2012-10-25 2012-10-25 펌웨어의 도난 방지

Country Status (6)

Country Link
US (3) US9824226B2 (ko)
EP (1) EP2912588A4 (ko)
JP (1) JP6096301B2 (ko)
KR (1) KR101775800B1 (ko)
CN (2) CN110569633B (ko)
WO (1) WO2014063330A1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9824226B2 (en) 2012-10-25 2017-11-21 Intel Corporation Anti-theft in firmware
US10079019B2 (en) 2013-11-12 2018-09-18 Apple Inc. Always-on audio control for mobile device
US10031000B2 (en) 2014-05-29 2018-07-24 Apple Inc. System on a chip with always-on processor
US9778728B2 (en) 2014-05-29 2017-10-03 Apple Inc. System on a chip with fast wake from sleep
EP3161657B1 (en) 2014-06-24 2020-07-22 Intel Corporation Firmware sensor layer
US10019351B2 (en) 2014-06-30 2018-07-10 Cypress Semiconductor Corporation Booting an application from multiple memories
WO2016024967A1 (en) * 2014-08-13 2016-02-18 Hewlett Packard Enterprise Development Lp Secure non-volatile random access memory
US9734311B1 (en) * 2015-03-17 2017-08-15 American Megatrends, Inc. Secure authentication of firmware configuration updates
US9565169B2 (en) 2015-03-30 2017-02-07 Microsoft Technology Licensing, Llc Device theft protection associating a device identifier and a user identifier
WO2017166264A1 (en) * 2016-04-01 2017-10-05 Intel Corporation Apparatuses and methods for preboot voice authentication
EP3264816A1 (en) * 2016-06-30 2018-01-03 Sequans Communications S.A. Secure boot and software upgrade of a device
US10521216B2 (en) 2017-01-17 2019-12-31 Oracle International Corporation Unified extensible firmware interface updates
CA2997609A1 (en) * 2017-03-07 2018-09-07 Sennco Solutions, Inc. Integrated, persistent security monitoring of electronic merchandise
US11036408B2 (en) 2017-03-26 2021-06-15 Oracle International Corporation Rule-based modifications in a data storage appliance monitor
US10839080B2 (en) * 2017-09-01 2020-11-17 Microsoft Technology Licensing, Llc Hardware-enforced firmware security
US11539686B2 (en) * 2017-10-12 2022-12-27 Mx Technologies, Inc. Data aggregation management based on credentials
US10063542B1 (en) 2018-03-16 2018-08-28 Fmr Llc Systems and methods for simultaneous voice and sound multifactor authentication
CN110324138B (zh) * 2018-03-29 2022-05-24 阿里巴巴集团控股有限公司 数据加密、解密方法及装置
US10936722B2 (en) * 2018-04-18 2021-03-02 Nuvoton Technology Corporation Binding of TPM and root device
US10855674B1 (en) * 2018-05-10 2020-12-01 Microstrategy Incorporated Pre-boot network-based authentication
US11150911B2 (en) 2018-06-15 2021-10-19 Dell Products, L.P. System and method for managing UEFI boot device path based on custom selection
CN109376550A (zh) * 2018-11-01 2019-02-22 郑州云海信息技术有限公司 一种目标部件的启动控制方法、装置及设备
US11204986B1 (en) * 2018-11-28 2021-12-21 American Megatrends International, Llc Control of a prompt for a credential to unlock a storage device
US11275820B2 (en) * 2019-03-08 2022-03-15 Master Lock Company Llc Locking device biometric access
US11775647B2 (en) * 2020-06-25 2023-10-03 Microsoft Technology Licensing, Llc Secure user assigned device from manufacturer
GB2598130A (en) * 2020-08-19 2022-02-23 Issured Ltd Controlled data access
US11429396B1 (en) * 2021-05-19 2022-08-30 Dell Products L.P. Validating and enumerating device partitions in a computing environment
CN113326512A (zh) * 2021-05-21 2021-08-31 深圳矽递科技股份有限公司 电子设备及其mcu固件保护方法

Family Cites Families (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1208302A (zh) * 1997-08-08 1999-02-17 罗仁 一种综合通讯系统及其应用
US6151678A (en) * 1997-09-09 2000-11-21 Intel Corporation Anti-theft mechanism for mobile computers
US6363485B1 (en) 1998-09-09 2002-03-26 Entrust Technologies Limited Multi-factor biometric authenticating device and method
EP1166270A1 (en) * 1999-03-30 2002-01-02 Tivo, Inc. Multimedia visual progress indication system
US6694025B1 (en) * 1999-06-02 2004-02-17 Koninklijke Philips Electronics N.V. Method and apparatus for secure distribution of public/private key pairs
US6687375B1 (en) * 1999-06-02 2004-02-03 International Business Machines Corporation Generating user-dependent keys and random numbers
CN1220375C (zh) * 1999-09-20 2005-09-21 提维股份有限公司 电视影音广播数据流标签与解释的方法和装置
GB9923802D0 (en) * 1999-10-08 1999-12-08 Hewlett Packard Co User authentication
JP2001144743A (ja) 1999-11-11 2001-05-25 Sony Corp 暗号鍵生成装置、暗号化・復号化装置および暗号鍵生成方法、暗号化・復号化方法、並びにプログラム提供媒体
US7073064B1 (en) * 2000-03-31 2006-07-04 Hewlett-Packard Development Company, L.P. Method and apparatus to provide enhanced computer protection
US7117376B2 (en) * 2000-12-28 2006-10-03 Intel Corporation Platform and method of creating a secure boot that enforces proper user authentication and enforces hardware configurations
JP2003032243A (ja) 2001-07-11 2003-01-31 Yokohama Rubber Co Ltd:The 動的暗号鍵の生成方法並びに暗号化通信方法及びその装置並びに暗号化通信プログラム及びその記録媒体
JP2003032224A (ja) * 2001-07-12 2003-01-31 Toshiba Corp 識別値選定装置および通信装置
US7174463B2 (en) * 2001-10-04 2007-02-06 Lenovo (Singapore) Pte. Ltd. Method and system for preboot user authentication
US7212806B2 (en) * 2002-09-12 2007-05-01 Broadcom Corporation Location-based transaction authentication of wireless terminal
TWI319147B (en) * 2003-04-10 2010-01-01 Lenovo Singapore Pte Ltd Apparatus, motherboard, method and computer-readable storage medium recording instructions capable of determinging physical presence in a trusted platform in a computer system
EP3086198B1 (en) 2004-03-26 2017-09-13 Absolute Software Corporation Persistent servicing agent
US7299347B1 (en) * 2004-04-02 2007-11-20 Super Talent Electronics, Inc. Boot management in computer systems assisted by an endpoint with PCI-XP or USB-V2 interface
US8239673B2 (en) * 2004-04-08 2012-08-07 Texas Instruments Incorporated Methods, apparatus and systems with loadable kernel architecture for processors
US7272245B1 (en) * 2004-05-13 2007-09-18 The United States Of America As Represented By The National Security Agency Method of biometric authentication
JP2005346523A (ja) 2004-06-04 2005-12-15 Sony Corp 著作権保護方法、著作権保護システム
TWI264672B (en) * 2004-09-21 2006-10-21 Aimgene Technology Co Ltd BIOS locking device, computer system with a BIOS locking device and control method thereof
US7779268B2 (en) * 2004-12-07 2010-08-17 Mitsubishi Electric Research Laboratories, Inc. Biometric based user authentication and data encryption
CN101124767A (zh) * 2004-12-22 2008-02-13 皇家飞利浦电子股份有限公司 密钥生成以及证明真实性的方法和设备
ES2326894T3 (es) * 2005-01-11 2009-10-21 Swisscom Ag Procedimiento y sistema para obtener el acceso a un objeto o a un servicio.
WO2006082985A2 (en) * 2005-02-07 2006-08-10 Sony Computer Entertainment Inc. Methods and apparatus for providing a secure booting sequence in a processor
WO2006091997A1 (en) 2005-03-01 2006-09-08 Evatayhow Holdings Pty Ltd Security system for computers
JP2007018050A (ja) * 2005-07-05 2007-01-25 Sony Ericsson Mobilecommunications Japan Inc 携帯端末装置、暗証番号認証プログラム、及び暗証番号認証方法
US20070033414A1 (en) * 2005-08-02 2007-02-08 Sony Ericsson Mobile Communications Ab Methods, systems, and computer program products for sharing digital rights management-protected multimedia content using biometric data
CN1731408A (zh) * 2005-08-17 2006-02-08 杭州海康威视数字技术有限公司 一种嵌入式安防设备管理员密码遗失的恢复方法
US20080052530A1 (en) * 2006-02-16 2008-02-28 International Business Machines Corporation System and method to provide CPU smoothing of cryptographic function timings
US20090249079A1 (en) * 2006-09-20 2009-10-01 Fujitsu Limited Information processing apparatus and start-up method
EP2122900A4 (en) * 2007-01-22 2014-07-23 Spyrus Inc PORTABLE DATA ENCRYPTION DEVICE WITH CONFIGURABLE SAFETY FUNCTIONS AND METHOD FOR FILING ENCRYPTION
US9158920B2 (en) 2007-06-28 2015-10-13 Intel Corporation System and method for out-of-band assisted biometric secure boot
JP5132222B2 (ja) * 2007-08-13 2013-01-30 株式会社東芝 クライアント装置、サーバ装置及びプログラム
CN101123507A (zh) * 2007-10-08 2008-02-13 杭州华三通信技术有限公司 一种存储装置上数据信息的保护方法和存储装置
US7865712B2 (en) * 2007-12-26 2011-01-04 Intel Corporation Method and apparatus for booting a processing system
US8522236B2 (en) * 2007-12-28 2013-08-27 Intel Corporation Method and system for establishing a robust virtualized environment
US9613215B2 (en) * 2008-04-10 2017-04-04 Nvidia Corporation Method and system for implementing a secure chain of trust
US8041960B2 (en) 2008-04-24 2011-10-18 Aruba Networks, Inc. Secure creation and management of device ownership keys
US8543799B2 (en) * 2008-05-02 2013-09-24 Microsoft Corporation Client authentication during network boot
CN101321069A (zh) * 2008-06-23 2008-12-10 刘洪利 手机生物身份证明制作、认证方法及其认证系统
US8201239B2 (en) * 2008-06-23 2012-06-12 Intel Corporation Extensible pre-boot authentication
CN101359991A (zh) * 2008-09-12 2009-02-04 湖北电力信息通信中心 基于标识的公钥密码体制私钥托管系统
WO2010039788A2 (en) * 2008-09-30 2010-04-08 Bigfoot Networks, Inc. Processor boot security device and methods thereof
US8086839B2 (en) * 2008-12-30 2011-12-27 Intel Corporation Authentication for resume boot path
US8694761B2 (en) * 2008-12-31 2014-04-08 Vincent Zimmer System and method to secure boot both UEFI and legacy option ROM's with common policy engine
CN102110195A (zh) 2009-12-25 2011-06-29 中国长城计算机深圳股份有限公司 一种计算机系统及其用户的身份识别方法和装置
GB201000288D0 (en) * 2010-01-11 2010-02-24 Scentrics Information Security System and method of enforcing a computer policy
JP5589608B2 (ja) 2010-06-28 2014-09-17 富士通株式会社 生体認証装置および生体認証プログラム
US8204480B1 (en) * 2010-10-01 2012-06-19 Viasat, Inc. Method and apparatus for secured access
US8560845B2 (en) 2011-01-14 2013-10-15 Apple Inc. System and method for tamper-resistant booting
US8473747B2 (en) * 2011-03-16 2013-06-25 Lenovo (Singapore) Pte. Ltd. Secure boot with minimum number of re-boots
WO2013013168A2 (en) * 2011-07-20 2013-01-24 Visa International Service Association Mobile banking system with cryptographic expansion device
TWI559167B (zh) * 2011-11-04 2016-11-21 系微股份有限公司 統一可延伸韌體介面(uefi)相容計算裝置和用於在uefi相容計算裝置中管控一安全啓動之方法
US8775784B2 (en) 2011-11-11 2014-07-08 International Business Machines Corporation Secure boot up of a computer based on a hardware based root of trust
US9824226B2 (en) * 2012-10-25 2017-11-21 Intel Corporation Anti-theft in firmware
US9525675B2 (en) * 2014-12-26 2016-12-20 Mcafee, Inc. Encryption key retrieval
US10198274B2 (en) * 2015-03-27 2019-02-05 Intel Corporation Technologies for improved hybrid sleep power management
US10079684B2 (en) 2015-10-09 2018-09-18 Intel Corporation Technologies for end-to-end biometric-based authentication and platform locality assertion
US10423425B2 (en) * 2016-06-13 2019-09-24 Dell Products, Lp System and method for runtime update of ESRT table for hot-pluggable disks
US10534620B2 (en) * 2017-11-30 2020-01-14 Dell Products, L.P. Systems and methods for establishing core root of trust measurement (CRTM) for basic input/output (BIOS) image recovery

Also Published As

Publication number Publication date
US10762216B2 (en) 2020-09-01
US9824226B2 (en) 2017-11-21
CN104871167A (zh) 2015-08-26
US20180157849A1 (en) 2018-06-07
JP2015532987A (ja) 2015-11-16
EP2912588A4 (en) 2016-06-29
KR101775800B1 (ko) 2017-09-06
EP2912588A1 (en) 2015-09-02
CN110569633B (zh) 2023-04-18
US20180039782A1 (en) 2018-02-08
WO2014063330A1 (en) 2014-05-01
JP6096301B2 (ja) 2017-03-15
CN110569633A (zh) 2019-12-13
US20150220742A1 (en) 2015-08-06

Similar Documents

Publication Publication Date Title
KR101775800B1 (ko) 펌웨어의 도난 방지
KR102244645B1 (ko) 인증된 변수의 관리
US9292302B2 (en) Allowing bypassing of boot validation in a computer system having secure boot enabled by default only under certain circumstances
US9292300B2 (en) Electronic device and secure boot method
JP4982825B2 (ja) コンピュータおよび共有パスワードの管理方法
US7917741B2 (en) Enhancing security of a system via access by an embedded controller to a secure storage device
US8201239B2 (en) Extensible pre-boot authentication
EP3125149B1 (en) Systems and methods for securely booting a computer with a trusted processing module
US8826405B2 (en) Trusting an unverified code image in a computing device
WO2013067486A1 (en) Secure boot administration in a unified extensible firmware interface (uefi)- compliant computing device
US20130091345A1 (en) Authentication of computer system boot instructions
US11354417B2 (en) Enhanced secure boot
US10853086B2 (en) Information handling systems and related methods for establishing trust between boot firmware and applications based on user physical presence verification
CN112149190A (zh) 用于非易失性存储器模块的热启动攻击缓解
US20220092189A1 (en) Implementation of Trusted Computing System Based on Master Controller of Solid-State Drive
US11960737B2 (en) Self-deploying encrypted hard disk, deployment method thereof, self-deploying encrypted hard disk system and boot method thereof
US8702812B2 (en) Remote disablement of a computer system

Legal Events

Date Code Title Description
A201 Request for examination