KR20070103366A - 컴퓨터에 대한 장치의 바인딩 - Google Patents

컴퓨터에 대한 장치의 바인딩 Download PDF

Info

Publication number
KR20070103366A
KR20070103366A KR1020077013731A KR20077013731A KR20070103366A KR 20070103366 A KR20070103366 A KR 20070103366A KR 1020077013731 A KR1020077013731 A KR 1020077013731A KR 20077013731 A KR20077013731 A KR 20077013731A KR 20070103366 A KR20070103366 A KR 20070103366A
Authority
KR
South Korea
Prior art keywords
computer
authentication
memory
response
bound
Prior art date
Application number
KR1020077013731A
Other languages
English (en)
Other versions
KR101292503B1 (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 KR20070103366A publication Critical patent/KR20070103366A/ko
Application granted granted Critical
Publication of KR101292503B1 publication Critical patent/KR101292503B1/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
    • 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/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • 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/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication

Abstract

컴포넌트 또는 주변장치와 같은 장치, 및 대응하는 컴퓨터는 바인딩 프로세스 후에는 이 장치가 그 컴퓨터를 사용하여서만 동작하게 바인딩되도록 적응된다. 이 관계를 확인하기 위하여 장치와 컴퓨터 간에 암호 메시지가 전송된다. 장치가 이전에 바인딩된 컴퓨터를 이용하여 동작하고 있음을 확인할 수 없을 때는, 그 컴퓨터로부터 언바인딩되거나 또는 성공적인 확인이 이루어질 때까지 그 장치 자체가 실질적으로 무용하게 되도록 하기 위하여 그 동작 성능을 감소시킨다. 또한, 동작, 바인딩 및 언바인딩하기 위한 방법이 개시되어 있다.
바인딩, 인증, 서비스 관리 요청, 암호 메시지

Description

컴퓨터에 대한 장치의 바인딩{BINDING A DEVICE TO A COMPUTER}
부과식(pay-as-you-go) 또는 종량제(pay-per-use) 비지니스 모델은 휴대전화에서 상업용 자동세탁기까지 많은 상업 분야에서 사용되고 있다. 부과식 비지니스를 개발함에 있어서, 제공자, 예컨대 휴대전화 제공자들은 가입자가 그들의 네트워크에 머물게 하는 약속의 대가로, 시중보다 저가로 하드웨어(휴대 전화)의 사용을 제공한다. 이 구체적인 예에서, 고객은 소정 기간 동안 가입자가 되겠다고 계약서에 서명하는 대가로 저가로 또는 무료로 휴대전화를 받는다. 계약 기간 동안, 서비스 제공자는 고객에게 휴대 전화 사용에 대한 요금을 부과함으로써 하드웨어의 비용을 회수한다.
부과식 비지니스 모델은 서비스 제공자와 관계를 끊으면, 제공된 하드웨어가 쓸모가 없거나 무가치하거나, 효용이 없을 수 있다는 개념에 입각하고 있다. 예를 들어, 위에서 언급한 가입자가 자신의 요금의 지불을 그만둔다면, 서비스 제공자는 그들의 계정을 불활성화시키고, 휴대 전화의 전원이 켜있더라도, 서비스 제공자가 통화를 허용하지 않기 때문에 통화가 이루어지지 않을 수 있다. 불활성화된 전화는 어디에서도 동작하지 않고, 컴포넌트 부품들의 시가가 낮기 때문에, 이 전화는 "잔존" 가액이 없게 된다. 계정이 다시 살아나면, 서비스 제공자는 통화가 가능하도록 장치의 사용을 재허락할 것이다.
서비스 제공자 또는 보조금을 지급한 하드웨어를 제공하는 금전적 위험부담을 감수하는 다른 자가 하드웨어의 사용에 대해 엄격한 제어를 할 때, 및 이 장치가 잔존 가액이 거의 없을 때, 이 모델은 잘 동작한다. 하드웨어가 실질적으로 서비스 제공자의 제어 범위 밖에서 사용되면, 이 비지니스 모델은 제대로 동작하지 않는다. 따라서, 퍼스널 컴퓨터는 실질적으로 본래의 의도를 넘어서 실질적으로 사용될 수 있고, 퍼스널 컴퓨터의 컴포넌트, 예컨대 표시장치 또는 디스크 드라이브는 상당한 잔존 가액을 가질 수 있기 때문에, 전형적인 퍼스널 컴퓨터는 이러한 기준을 충족하지 못한다.
부과식 컴퓨터 또는 다른 하드웨어를 보조금이 지급된 가격으로 제공할 때, 모니터 및 디스크 드라이브와 같은 착탈식의 컴포넌트, 주변 장치 또는 다른 장치는 언더라이터(underwriter) 또는 서비스 제공자에게 위험 요소이다. 이러한 장치는 시스템으로부터 제거될 수 있고, 사용자가 이익을 남기고 팔 수 있어, 언더라이터 또는 서비스 제공자에게 손실을 야기한다. 스마트 장치 및 대응하는 기본 컴퓨터 시스템은 장치가 오직 그 의도된 컴퓨터를 사용하여서만 동작하도록 장치와 컴퓨터간을 바인딩(binding)시킬 수 있다. 바인딩을 요구하기에 앞서 제조, 인스톨 및 테스트를 위한 "유예 기간"이 수용된다. 유예 기간 후에는, 컴퓨터에 바인딩되지 않으면, 장치는 전체적인 성능을 동작시키지 못할 것이다. 장치에 의한 컴퓨터의 주기적인 인증은 장치가 그 의도된 컴퓨터내에 여전히 인스톨되어 있음을 보장한다. 언바인딩(unbinding), 즉 장치와 컴퓨터 사이의 관계를 제거하는 것은 서명된 메시지를 사용하여 실행된다. 그와 같이 바인딩된 장치는 컴퓨터와 통신할 수 있고, 일 실시예에서는 암호 능력과 보안 메모리를 갖는다.
컴퓨터와 장치는 단순히 하나의 장치 대 하나의 컴퓨터 방식 이상의 관계로 바인딩될 수 있다. 즉, 일부 컴퓨터는 2 이상의 장치에 의한 인증을 위해 구성될 수 있고, 또는 역으로, 일부 장치가 2 이상의 컴퓨터로부터 인증 메시지를 수신하도록 구성될 수 있다. 이에 의하면 복수의 시스템의 구입을 더욱 용이하게 할 수 있고, 미리 선정된 컴퓨터 세트 내에서 일부 컴포넌트가 이동 가능하게 함으로써 이러한 시스템의 관리 및 관련된 보수 관리에 유용할 것이다. 종량제 비지니스 모델은 비지니스 기업 또는 다른 작업그룹으로 확장될 수 있고, 컴퓨터에 대한 컴포넌트의 바인딩은 구입한 유닛에서도 유용할 것이다. 개별적으로 및 그룹으로 컴퓨터에 대한 컴포넌트의 바인딩을 하면, 일부 시스템을 쓸모없게 하지는 않더라도 손상시키는 절도 및 다른 "컴포넌트 스와핑(component swapping)"을 막을 수 있다.
도 1은 컴퓨터 네트워크의 간단한 대표 블록도.
도 2는 도 1의 네트워크에 접속될 수 있는 컴퓨터의 블록도.
도 3은 도 2의 컴퓨터에 관련된 장치의 블록도.
도 4는 바인딩 장치를 갖는 컴퓨터를 동작시키는 방법을 도시하는 플로우챠트.
도 5는 컴퓨터에 장치를 바인딩하는 방법을 도시하는 플로우챠트.
도 6은 컴퓨터에 장치를 언바인딩하는 방법을 도시하는 플로우챠트.
비록 이하의 본문에는 많은 상이한 실시예들 중 하나의 상세한 설명에 대해서만 기술되어 있지만, 이 기재내용의 보호 범위는 본 명세서의 끝 부분에 기재되어 있는 청구항의 용어에 의해 정의된다. 상세한 설명은 하나의 예로서만 해석되고, 모든 가능한 실시예를 기술하는 것은 비록 가능하더라도 비현실적이기 때문에 모든 가능한 실시예를 기술하지는 않는다. 현재 기술 또는 본 특허발명의 출원일 이후에 개발된 기술을 사용하여, 많은 다른 실시예들이 행해질 수 있으며, 이는 여전히 청구범위 내이다.
만약 용어가 "여기서 사용되는 경우, 용어 ' '는 ...을 의미하는 것으로 정의된다"라는 문장 또는 이와 유사한 문장을 사용하여 본 특허 발명에서 명확히 정의되어 있지 않으면, 평이하거나 통상적인 의미를 넘어 명백하게 또는 함축적으로 그 용어의 의미를 제한할 의도는 없고, 이러한 용어는 본 특허발명의 어떤 부분에서 행해진 (청구항의 용어 이외의) 임의의 기재내용에 기초한 범위로 제한 해석되어서는 안된다. 본 특허발명에 있어서 본 특허출원의 끝 부분에 있는 청구항에서 기술되는 임의의 용어가 하나의 단일한 의미로 일관되어 언급된다는 점과 관련하여, 이는 단지 독자를 혼란에 빠뜨리지 않도록 명확히 하기 위해서이고, 이러한 용어는 제한적으로, 함축적으로 또는 다른 식으로 그 단일한 의미로만 의도되는 것은 아니다. 최종적으로, 청구항의 구성요소가 임의의 구성을 인용하지 않고 기능 및 "수단"이라는 용어를 기재하여 정의되지 않는다면, 임의의 청구항의 구성요소의 범위를 35 U.S.C. §112의 6번째 단락의 적용에 기초하여 해석함을 의미하지 않는 다.
본 발명의 기능 및 원리의 많은 부분은 소프트웨어 프로그램 또는 명령어, 및 특수한 집적회로(IC)와 같은 IC에서, 또는 그들을 이용하여 잘 구현된다. 예컨대 가용시간, 현재 기술 및 경제적 이유에 의해 발생되는 수많은 설계 선택 및 현저한 노력이 가능할 수 있긴 하지만, 당업자라면, 여기서 개시되어 있는 개념과 원리에 따르는 경우, 이러한 소프트웨어 명령어와 프로그램 및 IC를 최소한의 실험으로 손쉽게 생성시킬 수 있을 것이다. 따라서, 본 발명에 따른 원리와 개념을 애매하게 하는 임의의 위험 요소를 최소화하고 간소화하기 위하여, 이러한 소프트웨어와 IC에 대한 심도깊은 논의가 있다면 이는 바람직한 실시예의 원리와 개념에 대한 필수 사항으로 한정할 것이다.
많은 종래의 고가의 컴퓨터, 개인 휴대 정보 단말기, 오거나이저(organizer) 등은 선불제(pre-pay) 또는 종량제 비지니스에서 사용하기에는 부적합할 수 있다. 위에서 언급한 바와 같이, 이러한 설비는 서비스 제공자를 필요로 하는 것 이외의 중요한 가치를 가질 수 있다. 예컨대, 퍼스널 컴퓨터는 분해되어, 컴포넌트로서 팔릴 수 있기 때문에, 보조금을 지급한 설비의 언더라이터에게 상당한 손실을 발생시킬 수 있다. 인터넷 서비스 제공자가 장래 요금에 대한 기대를 갖고 퍼스널 컴퓨터의 비용을 부담하는 경우에 있어서, 이 "권한 밖의 가치(untethered value)"는 부정 가입 및 절도에 대한 기회를 생성한다. 보조금이 지급된 고가의 컴퓨팅 시스템 환경을 사용하기 위해 사용자가 미리 비용을 지불하는 선불형 비지니스 모델은, 사기 행위 및 절도 행위에 대한 유사한 위험 부담을 갖고 있다.
도 1은 동적 소프트웨어 권한설정(provisioning) 시스템을 실행하기 위하여 사용될 수 있는 네트워크(10)를 도시한다. 네트워크(10)는 인터넷, 가상 사설 네트워크(VPN), 또는 하나 이상의 컴퓨터, 통신장치, 데이터베이스 등이 서로 통신 접속될 수 있게 하는 임의의 다른 네트워크일 수 있다. 네트워크(10)는 이더넷(16)과 라우터(18) 및 지상 통신선(20)을 통해 퍼스널 컴퓨터(12)와 컴퓨터 단말기(14)에 접속될 수 있다. 한편, 네트워크(10)는 무선 통신국(26)과 무선 링크(28)를 통해 랩탑 컴퓨터(22) 및개인 휴대 정보 단말기(24)에 무선 접속될 수 있다. 마찬가지로, 서버(30)는 통신 링크(32)를 사용하여 네트워크(10)에 접속될 수 있고, 메인프레임(34)은 다른 통신 링크(36)를 사용하여 네트워크(10)에 접속될 수 있다.
도 2는 네트워크(10)에 접속되고 동적 소프트웨어 권한 설정 시스템의 하나 이상의 컴포넌트를 구현하기 위하여 사용될 수 있는 컴퓨터(110) 형식의 컴퓨팅 장치를 도시한다. 컴퓨터(110)의 컴포넌트는 프로세싱 유닛(120), 시스템 메모리(130), 및 시스템 메모리를 포함한 다양한 시스템 컴포넌트를 프로세싱 유닛(120)에 연결하는 시스템 버스(121)를 포함할 수 있으나, 이에 제한되지 않는다. 시스템 버스(121)는 메모리 버스 또는 메모리 컨트롤러, 주변 장치 버스, 및 다양한 버스 아키텍쳐들 중 임의의 것을 사용하는 로컬 버스를 포함하는 여러가지 타입의 버스 구조 중 임의의 것일 수 있다. 예컨대, 이러한 아키텍쳐는 공업 표준 구조(ISA) 버스, 마이크로 채널 구조(MCA) 버스, 강화된 ISA(EISA) 버스, 영상 전자 표준화 협회(VESA) 로컬 버스, 및 메자닌 버스(Mezzanine bus)라고도 알려진 주변 장치 상호연결(PCI)을 포함하지만, 이에 제한되지 않는다.
또한, 컴퓨터(110)는 암호 서비스(125)를 포함할 수 있다. 이러한 서비스는 대칭형 및 비대칭형 암호 알고리즘 모두, 키 생성, 난수 발생기 및 보안 저장 장치에 대한 지원을 포함할 수 있다. 암호 서비스는 통상적으로 이용가능한 집적 회로, 예컨대 SeimensTM 또는 ST MicroelectonicsTM 에 의해 제공되는 것과 같은 스마트 칩에 의해 제공될 수 있다.
컴퓨터(110)는 다양한 컴퓨터 판독가능 매체를 전형적으로 포함한다. 컴퓨터 판독가능 매체는 컴퓨터(110)에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있고, 휘발성 및 비휘발성 매체, 착탈식 및 비착탈식 매체 모두를 포함한다. 예컨대, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있지만, 이에 제한되지 않는다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성 매체, 착탈식 및 비착탈식 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 버서타일 디스크(DVD) 또는 다른 광 디스크 저장장치, 자기 카셋트, 자기 테이프, 자기 디스크 저장장치 또는 다른 자기 저장장치, 또는 원하는 정보를 저장하기 위해 사용될 수 있고, 컴퓨터(110)에 의해 액세스될 수 있는 임의의 다른 매체를 포함하나, 이에 제한되지 않는다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터를 반송파 또는 다른 전 송 메커니즘과 같은 변조된 데이터 신호로 구현하고, 임의의 정보 전달 매체를 포함한다. "변조된 데이터 신호"란 용어는 그 특성 중 하나 이상이 신호에 정보를 인코딩하는 방식으로 설정 또는 변경된 신호를 의미한다. 예컨대, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체, 및 음향, 무선 주파수, 적외선 및 다른 무선 매체와 같은 무선 매체를 포함하지만, 이에 제한되지 않는다. 또한, 이러한 매체들의 임의의 조합은 컴퓨터 판독가능 매체의 범위안에 포함되어야 한다.
시스템 메모리(130)는 판독 전용 메모리(ROM)(131)와 랜덤 액세스 메모리(RAM)(132)와 같은 휘발성 및/또는 비휘발성 메모리 형태의 컴퓨터 저장 매체를 포함한다. 스타트 업 동안 등에서 컴퓨터(110)내의 소자들간의 정보 전달을 돕는 기본 루틴을 포함하는 기본 입력/출력 시스템(133)(BIOS)은 전형적으로 ROM(131)에 저장된다. RAM(132)은 전형적으로 프로세싱 유닛(120)에 즉시 액세스할 수 있고/액세스할 수 있거나 프로세싱 유닛(120)에 의해 현재 실행되고 있는 프로그램 모듈 및/또는 데이터를 포함한다. 예컨대, 도 2는 운영 시스템(134), 응용 프로그램(135), 다른 프로그램 모듈(136) 및 프로그램 데이터(137)를 도시하지만, 이에 제한되지 않는다.
또한, 컴퓨터(110)는 다른 착탈식/비착탈식, 휘발성/비휘발성 컴퓨터 저장 매체를 포함할 수 있다. 도 2는 단지 예로서 비착탈식 비휘발성 자기 매체로부터 판독하거나 이에 기입하는 하드 디스크 드라이브(140), 착탈식 비휘발성 자기 디스크(152)로부터 판독하거나 이에 기입하는 자기 디스크 드라이브(151), 및 CD ROM 또는 다른 광학 매체와 같은 착탈식 비휘발성 광학 디스크(156)로부터 판독하거나 또는 이에 기입하는 광학 디스크 드라이브(155)를 도시한다. 전형적인 동작 환경에서 사용될 수 있는 다른 착탈식/비착탈식, 휘발성/비휘발성 컴퓨터 저장 매체는 자기 테이프 카셋트, 플래시 메모리 카드, 디지털 버서타일 디스크, 디지털 비디오 테이프, 고체 상태의 RAM, 고체 상태의 ROM 등을 포함하지만, 이에 제한되지 않는다. 하드 디스크 드라이브(141)는 전형적으로 인터페이스(140)와 같은 비착탈식 메모리 인터페이스를 통해 시스템 버스(121)에 접속되고, 광학 디스크 드라이브(155)는 전형적으로 인터페이스(150)와 같은 착탈식 메모리 인터페이스에 의해 시스템 버스(121)에 접속된다.
위에서 논의되고 도 2에 도시되어 있는 드라이브 및 그와 관련된 컴퓨터 저장 매체는 컴퓨터(110)를 위해 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 및 다른 데이터의 저장을 제공한다. 도 2에서, 예컨대 하드 디스크 드라이브(141)는 운영 시스템(144), 응용 프로그램(145), 다른 프로그램 모듈(146) 및 프로그램 데이터(147)를 저장하는 것으로 도시되어 있다. 단, 이 컴포넌트들은 운영 시스템(134), 응용 프로그램(135), 다른 프로그램 모듈(136) 및 프로그램 데이터(137)와 동일할 수도 있고 상이할 수도 있다. 운영 시스템(144), 응용 프로그램(145), 다른 프로그램 모듈(146) 및 프로그램 데이터(147)는 최소한 이들이 상이한 복사본이라는 것을 나타내기 위하여 여기서 상이한 참조 부호로 주어졌다. 사용자는 키보드(162), 및 통상 마우스, 트랙볼 또는 터치 패드로서 나타나는 포인팅 장치(161)와 같은 입력 장치를 통해 컴퓨터(110)에 명령어와 정보를 입력할 수 있 다. 다른 입력 장치(도시 안됨)는 마이크로폰, 조이스틱, 게임 패드, 위성방송 수신용 접시 안테나(satellite dish), 스캐너 등을 포함할 수 있다. 이들 및 다른 입력 장치는 시스템 버스에 연결되어 있는 사용자 입력 인터페이스(160)를 통해 프로세싱 유닛(120)에 종종 접속되지만, 병렬 포트, 게임 포트 또는 유니버설 시리얼 버스(USB)와 같은 버스 구조 및 다른 인터페이스에 의해 접속될 수 있다. 또한, 모니터(191) 또는 다른 타입의 표시 장치는 영상 인터페이스(190)와 같은 인터페이스를 통해 시스템 버스(121)에 접속된다. 모니터에 부가하여, 컴퓨터는 스피커(197) 및 프린터(196)와 같은 다른 주변 출력 장치를 포함할 수도 있고, 이 주변 출력 장치는 주변 출력 장치 인터페이스(190)를 통해 접속될 수 있다.
컴퓨터(110)는 원격 컴퓨터(180)와 같은 하나 이상의 원격 컴퓨터에 대해 논리 접속을 사용하는 네트워크화 환경에서 동작할 수 있다. 원격 컴퓨터(180)는 퍼스널 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치(peer device) 또는 다른 통상 네트워크 노드일 수 있고, 도 2에는 메모리 저장 장치(181)만이 도시되어 있지만, 전형적으로 컴퓨터(110)와 관련하여 상술되었던 다수의 소자 또는 이들 소자 전부를 포함한다. 도 2에 나타낸 논리 접속은 근거리 네트워크(LAN)(171) 및 광역 네트워크(WAN)(173)를 포함하지만, 다른 네트워크를 포함할 수도 있다. 이러한 네트워크 환경은 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷 및 인터넷에서 보편화되어 있다.
LAN 네트워크 환경에서 사용될 때, 컴퓨터(110)는 네트워크 인터페이스 또는 어댑터(170)를 통해 LAN(171)에 접속되어 있다. WAN 네트워크 환경에서 사용될 때, 컴퓨터(110)는 전형적으로 모뎀(172) 또는 인터넷과 같은 WAN(173) 상의 통신을 제공하기 위한 다른 수단을 포함한다. 내장형 또는 외장형일 수 있는 모뎀(172)은 사용자 입력 인터페이스(160) 또는 다른 적절한 매커니즘을 통해 시스템 버스(121)에 접속될 수 있다. 네트워크 환경에서, 컴퓨터(110)와 관련하여 나타낸 프로그램 모듈, 또는 그 일부가 원격 메모리 저장 장치에 저장될 수 있다. 예컨대, 도 2는 메모리 장치(181)에 존재하는 원격 응용 프로그램(185)을 도시하지만, 이에 제한되지 않는다. 도시된 네트워크 접속은 일례이고, 컴퓨터 간의 통신 링크를 제공하는 다른 수단이 사용될 수 있음은 명백히 이해될 것이다.
도 3을 참조하여, 컴퓨터(110)와 관련될 수 있는 장치(200)에 대해 논의하고 설명한다. 장치(200)는 컴퓨터로부터 분리 가능하거나 또는 전체로서 컴퓨터로부터 분리되는 가치를 갖는 임의의 장치일 수 있다. 예컨대, 장치는 표시 장치 또는 표시 장치 컨트롤러, 회전식 저장 장치, 회전식 저장 장치 컨트롤러, 고체 상태 메모리, 방화벽과 같은 보안 장치, 키보드, 게임 컨트롤러, 마우스, 통신 인터페이스, 카메라, 프린터, 전화 통신 장치, 또는 컴퓨터(110)와 같은 컴퓨터들 사이에서 일반적으로 이식 가능한 다른 장치일 수 있다.
장치는 전형적으로 프로세서(202), 메모리(204), 내부 장치를 연결하는 하나 이상의 데이터 버스(206), 컴퓨터(110)와 통신하기 위한 포트(208), 및 장치의 실제 성능과 관련된 기능 회로(210), 예컨대 도 2의 하드 디스크 드라이브(141)의 디스크 컨트롤러 회로, 헤드, 플래터 등(도시 안됨)을 가질 수 있다. 프로세서(202)는 여기서 메모리(202), 포트(208) 및 기능 회로(210)가 완비된 단일 칩 컨트롤러 일 수 있고, 다르게는 컴포넌트들이 분산될 수 있고, 또는 이들의 조합일 수 있다. 메모리(204)는 휘발성 메모리(212)와 비휘발성 메모리(214) 모두를 가질 수 있고, 이들 모두는 보호 메모리(216) 또는 보안 메모리(216), 즉 기입될 수 없고, 일부의 경우에는 이전 암호 인증 없이 판독될 수 없는 메모리를 포함할 수 있다. 일 실시예에서는, 프로세서(202)에서 실행되는 코드만이 메모리(204)에 액세스할 수 있기 때문에, 메모리를 분리시키고 외부로부터 공격하는 것이 좀더 어려워진다. 장치(200)의 컴포넌트는 공지되어 있고 이용가능하며, 예컨대 프로세서는 단일 칩 컨트롤러, 또는 소형 코드 세트 및 상태 변화를 실행하는 마이크로 컨트롤러일 수도 있다. 보안 메모리는 스마트 카드내에서 사용될 수 있는 것과 같은 스마트 칩을 사용하여 구현될 수 있다. 장치(200)는 해싱(hashing), 키 생성, 및 대칭형 또는 비대칭형 암호 기능 모두 또는 이들 중 어느 하나, 예컨대 고급 암호 표준(AES) 또는 RSATM 각각을 선택적으로 포함할 수 있다. 암호 엔진이 존재하지 않는 경우, 임의의 요구되는 암호 기능이 소프트웨어로 구현되어, 프로세서(202)에 의해 실행될 수 있다.
초기화될 때에는, 초기 인스톨 및 테스트를 행할 수 있도록 하기 위해, 장치(200)는 단기간 동안 전체 동작(full operation)을 할 수 있다. 전체 동작의 기간을 연장하면, 소매상의 구성 및 데먼스트레이션을 허용할 수 있다. 그러나, 소정 시점에서, 장치(200)는 정확하거나 완전한 성능, 동작을 계속하기 위하여, 컴퓨터(110)와 같은 컴퓨터에 바인딩되는 것을 필요로 할 수 있다. 바인딩 프로세스 는, 장치(200)가 바인딩될 컴퓨터(110)와 정보를 교환하는 것을 포함하며, 이는 이하에서 더욱 논의될 것이다.
또한, 장치에 따라서는, 장치가 컴퓨터에 시작, 재설정 및 부트를 허용할 수 있도록 충분히 기능적일 수 있다. 그 후, 바인딩 테스트가 실패하면, 장치는 덜 기능적인 상태로 이동할 것이다. 덜 기능적인 상태는 비지니스 정책 및 장치에 따라 전체적으로 역기능적(dysfunctional)이거나, 또는 반기능적(semi-functional)일 수 있다. 역기능의 레벨은 반복되는 바인딩 테스트를 허용할 수 있고, 또는 컴퓨터(110) 및/또는 장치(200)의 프리-바인딩 테스트(pre-binding test)를위해 초기 상태로 다시 시작하는 재시작을 요구할 수 있다.
일 대 일 관계 이상으로 바인딩의 범위를 확장하는 것이 바람직할 수 있다. 예컨대, 비지니스 또는 작업 그룹에 있어서, 표시장치가 수개의 컴퓨터 중 임의의 것에서 사용될 수 있도록 하여, 비지니스 또는 작업그룹 내에서 컴퓨터 시스템을 유지할 때의 총경비를 감소시키면 좋을 것이다. 일부의 경우에는, 단일 및 그룹 바인딩을 허용하도록 바인딩 관계를 혼합하는 것이 가능하다. 예컨대, 디스크 드라이브는 단일 컴퓨터에 바인딩될 수 있고, 표시 장치 및 외장형 드라이브는 그룹에 바인딩될 수 있다.
어떤한 형식의 보안이라도 약점 또는 보안 구멍을 갖고 있는 것이 발견될 수 있다. 많은 다른 수단과 같이, 이 보안 수단의 설계 목표는 예컨대, 회로 기판의 하드웨어 개축과 같은 공격 비용을, 보호되는 장치의 비용에 비해 훨씬 고가로 하는 것이다. 이는 공격을 완전히 단념시킬 수도 있지만, 아마도 장치(200) 및 그와 관련된 컴퓨터(110)에 대한 광범위한 공격을 제한하는 경우가 더 많을 것이다.
도 4를 참조하여, 컴퓨터에 바인딩되는 장치의 구성 및 동작을 위한 전형적인 방법에 대해 논의하고 설명한다. 위에서 언급한 대로, 예컨대 장치(200)와 같이, 이러한 방식의 동작에 적합한 장치가 많이 있다. 장치(200)가 시작된(300) 후, 예컨대 전원 상태의 변화, 예를 들어 전원이 켜졌거나 또는 대기 상태에 있다가 전원이 켜졌거나 또는 리셋된 후, 장치(200)는 자신이 이미 락(lock)되어 있는지, 또는 제한된 동작 모드에 있는지 여부를 판정(301)할 수 있다. 이와 같은 상태에 있다면, 도 5에 더욱 도시되어 있는 바와 같이, 블록(302)으로의 예스(YES) 브랜치의 실행이 이어질 수 있다. 만약 이와 같은 상태에 없다면, 노(NO) 브랜치가 이어질 수 있고, 여기서 장치(200)는 디폴트 모드로 들어갈 수 있다(303). 장치(200)는 전체 동작을 디폴트로 하고 인증 사이클에 실패한 후에 제한 기능 모드로 들어갈 수 있고, 다르게는 제한된 동작을 디폴트로 하고 인증 사이클을 통과한 후에 전체 기능 모드로 들어갈 수 있다. 디폴트 상태는 제조업자 또는 공인된 관리자에 의해 구성될 수 있다. 장치(200)는 이미 자신이 컴퓨터(110)에 바인딩되어 있는지 여부를 판정(304)할 수 있다. 바인딩되어 있지 않다면, 장치(200)는 도 5에 도시된 바와 같이, 블록(318)에서 그 스스로를 컴퓨터(110)에 바인딩하려는 시도를 할 수 있다. 만약 바인딩되어 있다면, 블록(304)으로부터의 예스(YES) 브랜치가 취해지고 테스트 루프가 트리거(308)될 수 있다. 테스트 루프는 사용 볼륨, 기간, 리셋 또는 전원 사이클과 같은 최근 시스템 사건, 또는 랜덤 또는 의사 랜덤(pseudo-random) 사건에 의해 트리거(308)될 수 있다. 랜덤 또는 의사 랜덤 사 건은 테스트 사이의 적절한 기간을 생성하기 위하여 클럭에 기초할 수 있고 또는 난수 발생기를 사용할 수 있다. 일 실시예에서, 인증 사이클 사이의 기간은 5 내지 10분일 수 있다. 제한된 동작 모드에서 이용가능한 구체적인 기능은 실제 장치에 따라 달라질 수 있다. 예컨대, 디스크 드라이브는 그 통신 속도의 일부에서만 동작할 수 있고, 또는 그래픽 컨트롤러는 저해상 모드에서만 동작할 수 있다. 트리거 메커니즘(308)은 인증 프로세스를 시작하기 위하여 사용될 수 있다. 테스트 루프 동안, 장치는 계류중인 서비스 관리 요청에 응답(309)할 수 있다. 서비스 관리 요청은 언바인딩되라는 요청, 즉 컴퓨터(110)로부터 분리되라는 요청일 수 있고, 또는 예컨대 제한 기능 상태로부터의 언락(unlock) 또는 바인딩 기준의 재설정과 같은 다른 요청을 포함할 수 있다. 장치(200)는 테스트 루프 또는 다른 인증된 인가의 완료를 요구하기 전에 자신이 얼마나 많은 서비스 관리 요청을 서비스할 것인지에 대한 제한을 가할 수 있다. 서비스 요청에 대해 제한을 가하면 이 지점에서의 프로세싱을 항상 전환함으로써 테스트 루프의 완료를 막으려는 공격 시도를 제한할 수 있다. 또한, 서비스 관리 요청은 도 6과 관련하여 논의된다.
계류중인 서비스 관리 테스트가 없으면, 블록(309)으로부터의 노(NO) 브랜치가 취해질 수 있다. 장치(200)는 컴퓨터(110)를 인증(310)할 수 있다. 인증(310)은 보안 산업에서 알려진 바와 같이, 암호화된 챌린지 및 응답을 포함할 수 있다. 챌린지/응답은 난수를 제공하는 장치(200), 및 그 난수를 서명 승인하고 이를 장치(200)로 리턴하는 컴퓨터(110)를 필요로 할 수 있다. 응답은 컴퓨터 식별자를 선택적으로 포함할 수 있으며, 이에 의해 장치(200)가 컴퓨터(110)뿐만 아니라 유 효한 서명을 승인하도록 할 수 있다. 암호 메커니즘은 바인딩 시에 선택될 수 있고, 도 5와 관련하여 좀더 상세히 기술한다. 장치는 컴퓨터(110)가 서명에 적합한 호스트를 찾기 위해 인터넷 또는 다른 네트워크를 검색하는 것을 방지하도록 상당히 단기간에 응답을 필요로 할 수 있다. 즉, 장치(200)가 제1 컴퓨터에 바인딩되고 제2 컴퓨터로 이동하면, 제2 컴퓨터는 인증 요청을 제1 컴퓨터로 전송할 수 없어야 한다. 이와 달리, 장치(200)는 외부 통신이 인증(310) 기간 동안 디스에이블될 것을 요구할 수 있다. 이는 장치(200)가 통신 컨트롤러라면 보다 용이하게 수행될 수 있다. 특정의 기간 동안 응답을 요구하면, 요청 리다이렉션의 효율성을 제한할 뿐만 아니라, 공격의 방지를 도울 수도 있고, 여기서 이 컴퓨터는 인증 프로세스를 전복시키려는 시도에서의 인증 요청에 대하여 간단히 응답하지 않는다.
인증이 성공하면, 장치(200)는 자신을 전체 기능 동작(312)으로 설정할 수 있고, 이 방법은 다른 인증 사이클을 대기하기 위하여 트리거 단계(308)로 리턴된다. 인증(310)은 초기 인증 후에 장치가 다른 시스템으로 이동(즉, 전원이 공급됨)하는 것을 방해하기 위하여 주기적으로 반복될 수 있다.
인증(310)이 실패하거나 또는 컴퓨터(110)가 바인딩을 지지하지 않으면, 블록(310)으로부터 노(NO) 브랜치가 취해질 수 있고, 장치(200)는 제한된 기능 동작으로 설정(311) 또는 재설정될 수 있고, 에러 메시지가 블록(316)에서 표시될 수 있다. 많은 실패 시도 후에 장치(200)가 결국 동작을 모두 중지할지 여부는 설계적 선택이다. 블록(304)에서의 판정에서, 장치가 이미 바인딩되어 있지 않을 때는, 노(NO) 브랜치가 취해질 수 있고, 장치(200)는 현재 컴퓨터에 자신을 바인딩하 려는 시를 할 수 있다도(도 5 참조). 이와 달리, 장치(200)는 예컨대, 인스톨 프로세스 기간 동안 기술자에 의해 특정 명령이 송신되면, 그 특정 명령에 응답하여 컴퓨터(110)에 바인딩하려는 시도를 할 수 있다.
도 5는 장치(200)를 컴퓨터(110)에 바인딩하는 방법을 도시한다. 컴퓨터(110)는 블록(304)으로부터 블록(318)으로의 노(NO) 브랜치에 따라 응답하여 바인딩 시도를 시작(401)할 수 있다. 장치(200)는 우선 컴퓨터(110), 예컨대 컴퓨터(110)에서 동작하는 모니터 프로그램에 메시지를 전송함으로써 컴퓨터가 바인딩을 지원하는지 여부를 판정(402)할 수 있다. 컴퓨터(110)가 바인딩을 지원할 때, 컴퓨터(110)와 장치(200)는 그 후의 인증에 사용될 방법, 또는 보다 구체적으로는 암호 알고리즘을 협상할 수 있다. 예컨대, 컴퓨터(110)와 장치(200)는 공유 비밀 및 대칭형 암호 알고리즘의 사용에 동의할 수 있다. 다른 실시예에서, 공개키 암호의 사용이 장치(200)와 컴퓨터(110)간의 서명되고 인증된 메시지의 교환에 사용될 수 있고, 여기서 사용자와 최상위 인증서가 신뢰 관계를 성립시키기 위해 채용될 수 있다. 일부 실시예에서, 컴퓨터(110)는 다소의 암호 능력을 갖고/갖거나 보안에 대한 요구가 다른 장치들을 수용하기 위하여 다양한 알고리즘 및 프로세스를 지원할 수 있다. 즉, 디스크 드라이버는 마우스에 비해 보다 정교화된 방법을 사용할 수 있다.
일단 알고리즘이 설정되면, 컴퓨터(110)와 장치(200)는 그 후의 검증에서의 사용을 위한 데이터를 교환(406)할 수 있다. 예컨대, 컴퓨터(110) 및 장치(200)는 고급 암호 표준(AES) 알고리즘에서의 사용을 위해 공유 암호를 생성하기 위하여 디 피-헬만 키 교환(Diffie-Hellman key exchange)을 사용할 수 있다. 또한, 위에서 언급한 바와 같이, 공개키 기술도 인증 프로세스에서 사용될 수 있다. 바인딩 프로세스의 더 확고한 보안을 위하여 보안 채널이 컴퓨터(110)와 장치(200) 사이에 확립될 수 있다. 보안 채널 및 신뢰 관계는 산업 분야에서 공지되어 있으며, 여기서는 상세히 논하지 않는다. 바인딩이 성공적(408)이면, 프로세스는 블록(410)에서 메인 루틴, 예컨대 도 4의 블록(302)으로 리턴될 수 있다.
컴퓨터가 블록(402)에서 바인딩을 지지하지 않으면, 블록(412)으로 노(NO) 브랜치가 취해질 수 있고, 장치(200)가 컴퓨터(100)에서 사용되도록 구성되지 않았음을 나타내는 메시지가 표시될 수 있다. 일부의 경우에는, 메시지가 장치 그 자체에 광의 형태, 예컨대 발광 다이오드(도시 안됨)로 나타날 수 있다. 블록(414)에서 실행이 계속될 수 있다. 마찬가지로, 바인딩이 성공적이지 않을 때, 프로세스는 블록(408)으로부터 블록(412)으로의 노(NO) 브랜치를 따라갈 수 있으며, 여기서 진입점을 나타내는 메시지가 표시될 수 있다. 장치(200)는 장치(200)의 전체 성능 동작이 허용되어야 하는지 여부를 판정하기 위하여 사용되는 기준을 업데이트(414)할 수 있다. 위에서 논의된 바와 같이, 전체 동작을 위한 이유는 판매, 인스톨 및 테스트를 허용하는 것일 수 있다. 특정 장치 및 비지니스 관련 고려사항에 따라, 위 기준은 시도된 사용의 횟수, 전원의 지속 기간, 데이터의 볼륨, 데이터 기입 사이클의 횟수 등일 수 있다. 간단한 예에서, 장치(200)는 바인딩하기 위하여 100회의 시도를 허용할 수 있고, 업데이트 기준 블록(414)을 통과하여 실행될 때마다, 그 카운트는 하나씩 감소될 수 있다. 바인딩 없는 전체 또는 통상의 동작 을 위한 기준이 블록(416)에 존재하면, 블록(416)의 노(NO) 브랜치가 블록(410)으로 이어질 수 있고 요청하는 루틴으로 리턴될 수 있다. 일부 실시예에서, 장치(200)는 블록(410)에서 리턴되기 전에 전체 또는 통상의 동작을 위해 그 자신을 우선 설정 또는 재설정할 수 있다. 다른 실시예에서, 리턴(410)은 바인딩 상태, 요청의 성공 및 남아있는 바인딩 시도의 수에 관한 정보를 포함할 수 있다.
전체 또는 통상의 동작을 위한 기준이 바인딩없이는 더 이상 어떠한 동작도 허용되지 않아야 함을 나타낼 때는, 블록(416)으로부터의 예스(YES) 브랜치가 취해질 수 있고, 장치가 락(lock)되어 있음을 나타내는 플래그가 설정(421)될 수 있고, 대응하는 에러 메시지가 표시(422)될 수 있다. 마찬가지로, 도 4의 블록(302)으로부터의 동작은 적절한 에러 메시지가 표시될 수 있는 블록(422)으로 계속될 수 있고, 장치가 락된다(423). 실행은, 더 이상의 동작 전에 장치가 서비스를 필요로 하는 상태의 블록(424)에서 종료된다. 단, 제한된 기능 동작은 락되어 있는 것과 동일할 수 있지만, 이와 다를 수도 있다. 즉, 락되어 있다는 것은 장치(200)를 완전히 디스에이블 상태로 하여, 서비스를 필요로 함을 의미하지만, 제한된 기능 동작은 장치(200)가 일부의 형식으로 동작하도록 할 수 있다. 선택은 비지니스 조건에 따라 행해질 수 있지만, 실패한 바인딩 또는 실패한 인증에 대하여 단계적으로 확대되는 응답(escalating response)의 일부일 수도 있다. 락되어 있는 장치의 이어지는 복구는 서비스 관리 요청의 성공적인 수신을 요구할 수 있다. 이와 같은 실행은 도 6에서 계속될 수 있다.
도 6은 컴퓨터(110)로부터 장치(200)를 언바인딩하는 방법을 도시하는 플로 우챠트이다. 도 4에 도시된 방법은 예컨대, 도 4의 블록(309)의 서비스 관리 요청 메시지를 수신할 수 있고, 이는 블록(314)으로 이어진다. 서비스 관리 요청은 컴퓨터(110)로부터 장치(200)를 언바인딩하라는 요청, 디스에이블되거나 또는 제한된 기능 모드에 있는 장치(200)를 언락하라는 요청, 바인딩 시도를 조정/재설정하라는 요청 등을 포함할 수 있다. 블록(501)에서 시작하여, 블록(502)에서 요청이 수신되어, 장치(200)가 요청을 보낸 엔티티, 아마도 컴퓨터(110)이겠지만, 일부 경우에는 서비스 제공자 웹사이트와 같은 다른 엔티티(도시 안됨)에게 챌린지를 전송할 수 있다(504). 대칭 암호 또는 비대칭 암호 중 어느 것이든 사용하여 챌린지, 일부 경우에는 논스(nonce) 또는 난수, 고유 식별자, 및/또는 시퀀스 번호가 리플레이 공격을 방지하기 위해 사용될 수 있다. 그 후, 장치(200)는 서명되고/서명되거나 인증된 메시지를 컴퓨터(110) 또는 다른 엔티티로부터 수신(506)할 수 있다. 다른 실시예에서, 요청(502)은 신뢰되는 소스로부터의 서명된 메시지일 수 있고, 장치(200)는 챌린지-응답을 필요로 하지 않고서, 서명된 메시지를 인증하기 위한 충분한 암호 능력을 가질 수 있다. 장치(200)는 메시지를 확인(508)할 수 있다. 확인 단계는 기술 분야에서 공지되어 있고, 예컨대 전자 서명을 이용하여 작성자를 인증하는 것; 전형적인 실시예에서는 해시 및 서명을 사용하여 메시지의 완전성을 체크하는 것; 난수 또는 시퀀스 번호와 같은 고유 챌린지를 검증하는 것; 또는 유사한 수단을 포함할 수 있다. 메시지가 확인되었을 때, 블록(508)으로부터의 예스(YES) 브랜치가 이어질 수 있고, 요청되는 행위가 블록(510)에서 취해질 수 있다. 그 후, 장치(200)는, 언바인딩된 후 또는 기준 재설정 요청 후 등에, 장 치(200)가 바인딩되지 않고서 전체 용량대로 동작하도록 허용되어야 하는지의 여부를 판정하기 위한 기준을 재설정(512)할 수 있다. 실행을 예컨대 도 4의 블록(300)으로 리턴(514)될 수 있다.
메시지가 블록(508)에서 승인될 수 없을 때는, 노(NO) 브랜치가 취해질 수 있다. 요청자 및/또는 사용자는 유효하지 않은 서비스 관리 요청이 수신되는 것을 통지(516)받을 수 있다. 다른 실시예에서는, 해커에게 추가적인 상태 정보를 제공하는 것을 피하기 위하여 응답이 제공되지 않는다. 실패된 요청은 볼륨 및 속도 분석을 위하여 로그되고, 이 루틴은 블록(514)에서 요청 지점, 예컨대 위와 같이 도 4의 블록(300)으로 리턴될 수 있다. 볼륨, 즉 서비스 관리 요청의 수인 볼륨, 및 요청이 수신되는 레이트인 속도는 서비스 거부 또는 유사한 공격이 진행중인지 여부를 판정하기 위해 사용될 수 있다. 볼륨/속도 또는 인증 요건의 충족에 실패한 서비스 관리 요청은 무시될 수 있고, 장치는 그 현재 상태로 유지될 수 있다.

Claims (20)

  1. 컴퓨터에 관련된 장치로서,
    상기 컴퓨터와의 통신을 위한 포트;
    인증 정보를 저장하기 위한 메모리; 및
    상기 메모리 및 상기 포트에 연결되며, 상기 포트를 통하여 상기 컴퓨터를 인증하도록 프로그래밍된 프로세서
    를 포함하고, 인증이 실패한 후에 상기 장치는 제한 기능 모드(limited function mode)에서 동작하는 컴퓨터 관련 장치.
  2. 제1항에 있어서, 상기 컴퓨터는 가입된 컴퓨터들(affiliated computers)의 그룹 중 하나이고, 상기 가입된 컴퓨터들의 그룹의 각 컴퓨터는 상기 장치에 의한 인증을 위해 적응되어 있는 컴퓨터 관련 장치.
  3. 제1항에 있어서, 암호 알고리즘을 더 포함하고, 상기 프로세서는 상기 컴퓨터를 인증하기 위하여 상기 암호 알고리즘을 사용하는 컴퓨터 관련 장치.
  4. 제1항에 있어서, 상기 장치는 표시 장치, 표시 장치 컨트롤러, 회전식 저장 장치, 회전식 저장 장치 컨트롤러, 고체 상태 메모리, 보안 장치, 키보드, 게임 컨트롤러, 마우스, 통신 인터페이스, 카메라, 프린터 및 전화 통신 장치 중 하나인 컴퓨터 관련 장치.
  5. 제1항에 있어서, 난수 발생기 및 타이머 중 하나를 더 포함하고, 상기 프로세서는 상기 컴퓨터의 인증을 위한 주기적인 기반을 결정할 때의 사용을 위하여 상기 난수 발생기 및 상기 타이머 중 하나를 사용하는 컴퓨터 관련 장치.
  6. 제1항에 있어서, 상기 제한 기능 모드는 인증이 실패한 사용자에 대한 신호를 포함하는 컴퓨터 관련 장치.
  7. 제1항에 있어서, 상기 장치는 트리거에 응답하여 상기 컴퓨터에 바인딩(binding)하려고 시도하고, 상기 트리거는 특정 명령, 전원 사이클의 수 및 사용 제한 중 하나인 컴퓨터 관련 장치.
  8. 제1항에 있어서, 상기 장치는 제한 기능 모드에서 동작할 때 상기 컴퓨터의 부트 사이클을 통해 동작하는 컴퓨터 관련 장치.
  9. 제8항에 있어서, 상기 장치는 기간, 전원 사이클의 수 및 사용 제한 중 하나에 도달한 후에 상기 컴퓨터를 사용한 바인딩에 실패하였을 때, 제한 기능 모드로 들어가는 컴퓨터 관련 장치.
  10. 제1항에 있어서, 상기 인증은 특정 시간 간격 동안 및 네트워크 접속이 디스에이블된 때 중 하나에서 발생되는 컴퓨터 관련 장치.
  11. 제1항에 있어서, 상기 장치는 상기 컴퓨터로부터의 서비스 관리 요청에 응답하고, 상기 서비스 관리 요청은 암호 서명되어 있는 컴퓨터 관련 장치.
  12. 자신에게 통신 연결된 장치에 의한 사용을 위해 구성된 컴퓨터로서,
    상기 컴퓨터에 바인딩되었을 때, 상기 컴퓨터의 인증 후에만 전체 기능 동작하도록 적응된 장치;
    식별자를 저장하기 위한 메모리 - 상기 식별자는 상기 컴퓨터와 관련되어 있음 -;
    상기 장치와의 통신을 위한 포트; 및
    상기 식별자 및 상기 장치에 연결되어 있는 프로세서를 포함하고, 상기 프로세서는 상기 식별자를 사용한 장치로부터의 챌린지에 응답하고, 올바른 응답은 상기 장치에 대하여 상기 컴퓨터를 인증하는 컴퓨터.
  13. 제12항에 있어서, 상기 컴퓨터는, 상기 장치로부터의 신호에 응답하여, 상기 장치가 응답을 수신하지 못한 때 및 부정확한 응답을 수신할 때 중 하나에서 메시지를 표시하는 컴퓨터.
  14. 제12항에 있어서, 상기 장치는 착탈식 메모리, 고정 메모리, 표시 장치, 입력 장치, 출력 장치, 포인팅 장치, 저장 장치, 보안 장치 및 통신 장치 중 하나인 컴퓨터.
  15. 제12항에 있어서, 상기 프로세서는 상기 장치에 대하여 상기 컴퓨터를 인증하기 위한 장치와 암호 방법을 협상하는 컴퓨터.
  16. 바인딩된 장치에 의한 사용을 위해 적응된 컴퓨터를 동작시키는 방법으로서,
    상기 컴퓨터를 인증하기 위하여 상기 바인딩된 장치를 트리거하는 단계;
    상기 장치에 서명된 메시지를 제공하는 단계;
    상기 서명된 메시지의 진정성(authenticity)을 판정하는 단계; 및
    상기 서명된 메시지의 진정성이 거짓임이 판정된 경우, 상기 장치의 기능을 제한하는 단계
    를 포함하는 컴퓨터 동작 방법.
  17. 제16항에 있어서, 상기 서명된 메시지의 진정성을 판정하기 전에 상기 장치의 기능을 제한하는 단계를 더 포함하는 컴퓨터 동작 방법.
  18. 제16항에 있어서, 상기 장치로부터 상기 컴퓨터로 챌린지를 전송하는 단계를 더 포함하고, 상기 챌린지는 상기 장치와 관련된 식별자 및 의사 난수(pseudo- random number) 중 하나를 포함하는 컴퓨터 동작 방법.
  19. 제16항에 있어서, 서비스 관리 요청에 응답하여 상기 장치의 기능을 조절하는 단계를 더 포함하고, 상기 서비스 관리 요청은 볼륨/속도 및 인증 요건을 충족시키는 컴퓨터 동작 방법.
  20. 제16항에 있어서, 상기 컴퓨터를 인증하기 위하여 상기 바인딩된 장치를 트리거하는 단계는, 전원 사이클, 기간, 사용 볼륨 및 랜덤 사건 중 하나에 응답하여 상기 컴퓨터를 인증하기 위해 상기 바인딩된 장치를 트리거하는 단계를 더 포함하는 컴퓨터 동작 방법.
KR1020077013731A 2005-01-19 2005-12-20 컴퓨터에 대한 장치의 바인딩 KR101292503B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/039,165 US7770205B2 (en) 2005-01-19 2005-01-19 Binding a device to a computer
US11/039,165 2005-01-19
PCT/US2005/046539 WO2006078412A2 (en) 2005-01-19 2005-12-20 Binding a device to a computer

Publications (2)

Publication Number Publication Date
KR20070103366A true KR20070103366A (ko) 2007-10-23
KR101292503B1 KR101292503B1 (ko) 2013-08-23

Family

ID=36685116

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077013731A KR101292503B1 (ko) 2005-01-19 2005-12-20 컴퓨터에 대한 장치의 바인딩

Country Status (9)

Country Link
US (1) US7770205B2 (ko)
EP (1) EP1839261B1 (ko)
JP (1) JP5173436B2 (ko)
KR (1) KR101292503B1 (ko)
CN (1) CN101438316B (ko)
BR (1) BRPI0519595A2 (ko)
MX (1) MX2007007441A (ko)
RU (1) RU2007127510A (ko)
WO (1) WO2006078412A2 (ko)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
US8464348B2 (en) * 2004-11-15 2013-06-11 Microsoft Corporation Isolated computing environment anchored into CPU and motherboard
US8176564B2 (en) 2004-11-15 2012-05-08 Microsoft Corporation Special PC mode entered upon detection of undesired state
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US9436804B2 (en) 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US8353046B2 (en) 2005-06-08 2013-01-08 Microsoft Corporation System and method for delivery of a modular operating system
US8528096B2 (en) * 2005-10-07 2013-09-03 Stmicroelectronics, Inc. Secure universal serial bus (USB) storage device and method
US8183863B2 (en) * 2005-11-10 2012-05-22 Halliburton Energy Services, Inc. Displaced electrode amplifier
US8156545B2 (en) * 2007-02-09 2012-04-10 Sony Corporation Method and apparatus for authorizing a communication interface
EP2028601B1 (en) * 2007-08-07 2014-10-01 Alcatel Lucent Secure mobile environment policy realization based on timed one-time upkeep codes
US20090235333A1 (en) * 2008-03-14 2009-09-17 Novatel Wireless, Inc. Automatic access control for mobile devices
US8332604B2 (en) * 2008-09-30 2012-12-11 Intel Corporation Methods to securely bind an encryption key to a storage device
US8806220B2 (en) * 2009-01-07 2014-08-12 Microsoft Corporation Device side host integrity validation
JP5418025B2 (ja) * 2009-07-08 2014-02-19 株式会社リコー 情報処理装置、システム管理方法、システム管理プログラム、及びそのプログラムを記録した記録媒体
US8650654B2 (en) * 2010-09-17 2014-02-11 Kabushiki Kaisha Toshiba Memory device, memory system, and authentication method
WO2012050618A1 (en) 2010-10-16 2012-04-19 James Charles Vago Multimedia methods, devices and systems
US9756036B2 (en) * 2012-06-15 2017-09-05 Nokia Technologies Oy Mechanisms for certificate revocation status verification on constrained devices
JP2014096133A (ja) * 2012-10-10 2014-05-22 Ricoh Co Ltd 伝送端末、伝送システム、プログラム
US8966593B2 (en) 2013-03-14 2015-02-24 International Business Machines Corporation Delivering author specific content
US10192054B2 (en) * 2013-09-13 2019-01-29 Intel Corporation Automatic pairing of IO devices with hardware secure elements
US9424406B2 (en) 2014-09-09 2016-08-23 International Business Machines Corporation Asset protection based on redundantly associated trusted entitlement verification
CN104468837B (zh) * 2014-12-29 2018-04-27 小米科技有限责任公司 智能设备的绑定方法和装置
US9954691B2 (en) 2014-12-29 2018-04-24 Xiaomi Inc. Method and apparatus for binding intelligent device
CN105372998A (zh) * 2015-09-29 2016-03-02 小米科技有限责任公司 绑定智能设备的方法及装置
JP6620528B2 (ja) * 2015-11-19 2019-12-18 株式会社リコー 認証システム、認証方法、認証装置および認証プログラム
CN105652672A (zh) * 2015-12-29 2016-06-08 小米科技有限责任公司 控制智能设备的方法及装置
JP6910894B2 (ja) * 2017-09-01 2021-07-28 キヤノン株式会社 情報処理装置、制御方法、およびプログラム
JP7006178B2 (ja) 2017-11-24 2022-01-24 オムロン株式会社 セキュリティ監視装置
JP6977507B2 (ja) * 2017-11-24 2021-12-08 オムロン株式会社 制御装置および制御システム
US10404747B1 (en) * 2018-07-24 2019-09-03 Illusive Networks Ltd. Detecting malicious activity by using endemic network hosts as decoys
US11308243B2 (en) * 2019-09-11 2022-04-19 International Business Machines Corporation Maintenance of access for security enablement in a storage device
US11354455B2 (en) 2019-09-11 2022-06-07 International Business Machines Corporation Maintenance of access for security enablement on a host system
US11265711B2 (en) * 2019-09-13 2022-03-01 Microsoft Technology Licensing, Llc Proximity-based management of a computing device
CN111931147A (zh) * 2020-07-28 2020-11-13 深圳Tcl数字技术有限公司 插座控制方法、插座及计算机可读存储介质

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5274368A (en) * 1991-02-15 1993-12-28 Motorola, Inc. Method and apparatus for controlling access to a communication system
JPH0535461A (ja) * 1991-07-30 1993-02-12 Chubu Nippon Denki Software Kk ハードデイスク装置の制御方法
US5771354A (en) * 1993-11-04 1998-06-23 Crawford; Christopher M. Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services
US5473602A (en) * 1994-03-04 1995-12-05 Nova-Net Communications, Inc. Wireless radio packet switching network
US5473692A (en) * 1994-09-07 1995-12-05 Intel Corporation Roving software license for a hardware agent
JP2581008B2 (ja) * 1994-06-15 1997-02-12 日本電気株式会社 機密保持機構付き記憶装置
WO1996027155A2 (en) * 1995-02-13 1996-09-06 Electronic Publishing Resources, Inc. Systems and methods for secure transaction management and electronic rights protection
US6704873B1 (en) * 1999-07-30 2004-03-09 Accenture Llp Secure gateway interconnection in an e-commerce based environment
KR20020060572A (ko) 2001-01-11 2002-07-18 포만 제프리 엘 개인용 컴퓨터가 허가되지 않은 사용자에 의해 사용되는것을 방지하기 위한 보안 시스템
US20030037237A1 (en) * 2001-04-09 2003-02-20 Jean-Paul Abgrall Systems and methods for computer device authentication
CA2446584A1 (en) * 2001-05-09 2002-11-14 Ecd Systems, Inc. Systems and methods for the prevention of unauthorized use and manipulation of digital content
JP2003299146A (ja) * 2002-02-01 2003-10-17 Canon Inc 無線通信装置
SG105005A1 (en) 2002-06-12 2004-07-30 Contraves Ag Device for firearms and firearm
EP1429224A1 (en) * 2002-12-10 2004-06-16 Texas Instruments Incorporated Firmware run-time authentication
JP4129216B2 (ja) * 2002-09-27 2008-08-06 松下電器産業株式会社 グループ判定装置
US7770008B2 (en) * 2002-12-02 2010-08-03 Silverbrook Research Pty Ltd Embedding data and information related to function with which data is associated into a payload
US8745409B2 (en) * 2002-12-18 2014-06-03 Sandisk Il Ltd. System and method for securing portable data
JP4040570B2 (ja) * 2003-11-14 2008-01-30 キヤノン株式会社 画像形成装置、データ受信処理方法、制御プログラム
US7463374B2 (en) * 2004-05-26 2008-12-09 Electronics For Imaging, Inc. Methods and apparatus for secure printing
US7881267B2 (en) * 2004-06-04 2011-02-01 Hewlett-Packard Development Company, L.P. Portable computing device for wireless communications and method of operation
US20050289343A1 (en) 2004-06-23 2005-12-29 Sun Microsystems, Inc. Systems and methods for binding a hardware component and a platform
US8179870B2 (en) * 2004-09-29 2012-05-15 Intel Corporation Method and apparatus for securing devices in a network
US8464348B2 (en) * 2004-11-15 2013-06-11 Microsoft Corporation Isolated computing environment anchored into CPU and motherboard

Also Published As

Publication number Publication date
EP1839261B1 (en) 2017-07-19
RU2007127510A (ru) 2009-01-27
WO2006078412A3 (en) 2009-04-09
CN101438316A (zh) 2009-05-20
EP1839261A4 (en) 2011-09-28
JP2008532106A (ja) 2008-08-14
WO2006078412A2 (en) 2006-07-27
EP1839261A2 (en) 2007-10-03
JP5173436B2 (ja) 2013-04-03
MX2007007441A (es) 2007-07-12
US7770205B2 (en) 2010-08-03
US20060161445A1 (en) 2006-07-20
KR101292503B1 (ko) 2013-08-23
CN101438316B (zh) 2017-04-26
BRPI0519595A2 (pt) 2009-02-25

Similar Documents

Publication Publication Date Title
KR101292503B1 (ko) 컴퓨터에 대한 장치의 바인딩
US8522361B2 (en) Tokenized resource access
JP4278327B2 (ja) コンピュータ・プラットフォームおよびその運用方法
JP5526450B2 (ja) ハードウェア構成を変更する方法、ハードウェア構成の変更を遠隔位置において可能にする方法、及びそのための装置
JP4219561B2 (ja) 信頼できる計算プラットフォームのためのスマートカード・ユーザインターフェイス
JP3918827B2 (ja) セキュアリモートアクセスシステム
JP4091744B2 (ja) コンピュータ装置およびその動作方法
CN102549576B (zh) 审核设备
KR100871182B1 (ko) Sim 장치용 컴퓨터 시스템 내에 신뢰 채널을 제공하는방법 및 시스템
EP2727040B1 (en) A secure hosted execution architecture
JP2004508619A (ja) トラステッド・デバイス
JP5373811B2 (ja) モバイル・スマートカード・ベースの認証のための方法、コンピュータ・プログラム、デバイス、およびシステム(モバイル・スマートカード・ベースの認証)
WO2008094815A1 (en) Master-slave protocol for security devices
Itoi et al. Personal secure booting
JP2003507784A (ja) 記憶されたデータの使用に対する強制的な制限
Zhang et al. Trusttokenf: A generic security framework for mobile two-factor authentication using trustzone
Wu et al. The mobile agent security enhanced by trusted computing technology
JP5354663B2 (ja) サーバ一体型icカードシステム
CN117061426A (zh) 路由器
JP2003248785A (ja) 決済管理方法、決済管理システム、プログラム及び記憶媒体
Arbaugh Personal secure booting

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20160630

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170704

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 6