KR20150113087A - 컴퓨팅 디바이스 부속물 보안화 - Google Patents

컴퓨팅 디바이스 부속물 보안화 Download PDF

Info

Publication number
KR20150113087A
KR20150113087A KR1020157023191A KR20157023191A KR20150113087A KR 20150113087 A KR20150113087 A KR 20150113087A KR 1020157023191 A KR1020157023191 A KR 1020157023191A KR 20157023191 A KR20157023191 A KR 20157023191A KR 20150113087 A KR20150113087 A KR 20150113087A
Authority
KR
South Korea
Prior art keywords
pairing
certificate
host
security
computing device
Prior art date
Application number
KR1020157023191A
Other languages
English (en)
Other versions
KR102221065B1 (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 KR20150113087A publication Critical patent/KR20150113087A/ko
Application granted granted Critical
Publication of KR102221065B1 publication Critical patent/KR102221065B1/ko

Links

Images

Classifications

    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • 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
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/64Self-signed certificates

Abstract

컴퓨터 부속 디바이스의 보안에 관한 다양한 실시예들이 개시된다. 예를 들어, 하나의 비제한적인 실시예는 부속 디바이스와의 상호 인증 세션의 초기 부분을 수행하고, 호스트 컴퓨팅 디바이스와 부속 디바이스에 관한 정보를 컴퓨터 네트워크를 통해 원격 페어링 서비스에게 보내도록 구성된 호스트 컴퓨팅 디바이스를 제공한다. 호스트 컴퓨팅 디바이스는 또한, 이에 응답하여, 원격 페어링 서비스로부터 페어링 인증서 - 이 페어링 인증서는 원격 페어링 서비스의 개인키를 통해 암호화됨 - 를 수신하며, 원격 페어링 서비스로부터의 페어링 인증서를 이용하여 부속 디바이스와의 상호 인증을 완료하도록 구성된다.

Description

컴퓨팅 디바이스 부속물 보안화{SECURING A COMPUTING DEVICE ACCESSORY}
본 발명은 컴퓨터 부속 디바이스의 보안에 관한 것이다.
위조된(Counterfeit) 컴퓨팅 디바이스 부속물들은 적법한 부속물들의 제조자 및/또는 판매자에게 악영향을 미칠 수 있다. 이 때문에, 컴퓨터 부속물 위조 방지에 도움을 주기 위해 다양한 전략들이 이용될 수 있다. 예를 들어, 몇몇의 위조 방지 기법들은 각각의 진품 디바이스 상에 있는 보안칩을 활용할 수 있는데, 이러한 보안칩은 호스트 컴퓨터로 하여금 디바이스를 인증할 수 있도록 해줄 수 있다.
진품 부속 디바이스라고 하더라도 허가받지 않은 이용의 형태들에는 취약할 수 있다. 예를 들어, 몇몇의 부속 디바이스들은, 보다 고가의 디바이스들이 보다 많은 인에이블된 부가가치(value-add) 특징들을 포함하도록, 상이한 부가가치 특징들이 인에이블된 상이한 가격 포인트에서 이용가능해질 수 있다. 이것은 소비자들의 요구사항 및/또는 희망사항에 적절하거나 또는 희망되는 제품을 소비자들이 선택할 수 있도록 해주면서, 위조자 및/또는 해커가 저가 모델의 디바이스에 대해 허가 없이 특징들을 잠금해제(unlock)할 기회를 제공할 수 있다.
부속 디바이스의 컴포넌트들의 제조로부터 부속 디바이스의 소비자 이용을 거치는 과정에서의, 컴퓨터 부속 디바이스의 보안에 관련된 다양한 실시예들이 개시된다. 예를 들어, 하나의 비제한적인 실시예는 부속 디바이스와의 상호 인증 세션의 초기 부분을 수행하고, 호스트 컴퓨팅 디바이스와 부속 디바이스에 관한 정보를 컴퓨터 네트워크를 통해 원격 페어링 서비스에게 보내도록 구성된 호스트 컴퓨팅 디바이스를 제공한다. 호스트 컴퓨팅 디바이스는 또한 원격 페어링 서비스로부터 페어링 인증서 - 이 페어링 인증서는 원격 페어링 서비스의 개인키를 통해 암호화됨 - 를 수신하며, 원격 페어링 서비스로부터의 페어링 인증서를 이용하여 부속 디바이스와의 상호 인증을 완료하도록 구성된다.
본 요약은 아래의 상세한 설명에서 보다 상세하게 설명되는 개념들의 선택을 단순한 형태로 소개하기 위해 제공된 것이다. 본 요약은 청구된 발명내용의 중요한 특징들 또는 필수적인 특징들을 식별시키려는 의도는 없으며, 또한 청구된 발명내용의 범위를 제한시키려는 의도도 없다. 뿐만 아니라, 청구된 발명내용은 본 발명개시의 임의의 부분에서 언급된 단점들 모두 또는 그 일부를 해결하는 구현예들로 국한되지 않는다.
도 1은 컴퓨팅 디바이스와 부속 디바이스의 예시적인 실시예들을 도시한다.
도 2는 부속 디바이스 컴포넌트 제조와 최종 사용 사이의 다양한 예시적인 단계들을 개략적으로 나타내는 블록도를 도시한다.
도 3은 컴포넌트 제조, 컴포넌트 배달, 및 디바이스 제조 동안 부속 디바이스를 보안화하는 방법의 실시예의 흐름도를 도시한다.
도 4는 부속 디바이스 조립 동안 부속 디바이스 상에서 보안칩을 활성화시키는 방법의 실시예를 도시하는 흐름도를 도시한다.
도 5a와 도 5b는 제3자 원격 페어링 서비스를 통해 부속 디바이스와 호스트 컴퓨팅 시스템을 상호 인증하는 방법의 실시예를 도시하는 흐름도를 도시한다.
도 6은 상호 인증 동안 도 5a와 도 5b의 실시예의 부속 디바이스, 호스트 컴퓨팅 디바이스, 및 원격 페어링 서비스의 실시예들을 개략적으로 나타내는 블록도를 도시한다.
도 7은 부속 디바이스를 인증한 후 부속 디바이스를 잠금해제하는 방법의 실시예를 도시하는 흐름도를 도시한다.
도 8은 도 7의 부속 디바이스의 실시예를 개략적으로 나타내는 블록도를 도시한다.
도 9는 컴퓨팅 시스템의 예시적인 실시예를 나타내는 블록도를 도시한다.
상술한 바와 같이, 몇몇의 컴퓨터 부속물 위조 방지 기법들은 각각의 진품 디바이스 상에 있는 보안칩을 활용할 수 있는데, 이러한 보안칩은 호스트 컴퓨터로 하여금 디바이스를 인증할 수 있도록 해줄 수 있다. 하지만, 이러한 위조 방지 기법들은 부속물이 연결되어 있는 호스트 컴퓨팅 디바이스의 어떠한 지식 없이 부속물을 인증할 수 있다. 또한, 보안칩 그 자체가 도둑맞거나 또는 분실된 경우, 보안칩은 위조 디바이스들을 산출시키는데 이용될 수 있다.
또한, 상술한 바와 같이, 진품 부속 디바이스라고 하더라도 허가받지 않은 이용의 형태들에는 취약할 수 있다. 예를 들어, 몇몇의 부속 디바이스들은, 보다 고가의 디바이스들이 보다 많은 인에이블된 부가가치 특징들을 포함하도록, 상이한 특징들이 인에이블된 상이한 가격 포인트에서 이용가능해질 수 있다. 이것은 소비자들의 요구사항 및/또는 희망사항에 적절하거나 또는 희망되는 제품을 소비자들이 선택할 수 있도록 해주면서, 위조자 및/또는 해커가 저가 모델의 디바이스에 대해 허가 없이 특징들을 잠금해제(unlock)하여 결제없이 부가가치 특징들을 획득할 기회를 제공할 수 있다.
부가가치 특징들을 보안화하기 위한 이전의 솔루션들은 허가받지 않은 업데이트들을 방지하기 위해 펌웨어 업데이트 이전에 펌웨어 이미지의 유효성을 체크하기 위한 보안키의 이용에 의존할 수 있다. 하지만, 단일키를 활용하여 각각의 펌웨어 이미지를 서명(sign)하는 것은 단일키가 알려지는 경우에 모든 시스템들이 훼손될 수 있게 해줄 수 있다.
이에 따라, 여기서는 컴퓨팅 부속물들의 위조 생산 및/또는 이용을 방지하는 것과 관련된 다양한 문제들을 해결하는 실시예들이 개시된다. 예를 들어, 몇몇의 실시예들은, 분실하거나 도둑맞은 보안 칩들의 이용을 방지하기 위해, 분실하거나 도둑맞은 보안칩들이 위조 디바이스들을 생산하는데 이용될 수 없도록 보안칩들이 부속 디바이스 내에 설치되는 곳인 공장에서의 개별적인 보안칩들의 활성화에 관한 것이다.
추가적으로, 본 실시예들은 컴퓨팅 디바이스 부속물과 호스트 컴퓨팅 디바이스의 상호 인증에 관한 것이다. 이것은 컴퓨터 부속물의 SKU(stock keeping unit) 차별화를 촉진시킬 수 있다. 예를 들어, 상호 인증은 특정 호스트와의 이용을 위해 의도된 SKU를 인증하는데 이용될 수 있으며, 일방향 인증은 상이한 호스트들을 위해 의도된 상이한 SKU를 인증하는데 이용될 수 있다. 이것은 또한 특정 부속 디바이스와 특정 호스트 컴퓨팅 시스템간의 "페어링" 능력을 가능하게 해줄 수 있다. 아래에서 보다 자세하게 설명되는 바와 같이, 이러한 페어링은, 허가받지 않은 부속물 및/또는 훼손된 콘솔이 생태계의 다른 부분들과 작동하는 것이 금지될 수 있도록, 원격 제3자 서비스에 의해 제어될 수 있다.
또다른 실시예들은 부가가치 특징들의 허가받지 않은 잠금해제를 방지하기 위한 부속 디바이스의 보안 잠금해제에 관한 것이다. 아래에서 보다 자세하게 설명되는 바와 같이, 이러한 실시예들은, 시스템 온 칩(system on a chip; SOC) 상의 펌웨어보다는 보안칩이 잠금해제 프로세스를 제어하도록, 보안칩과 SOC간의 보안 상호작용을 제공하기 위해 다른 무보안 칩(예컨대, SOC) 상에서 보안 하드웨어 모듈을 활용할 수 있다. 이것은 보안에 관한 전문적인 지식을 갖지 않을 수 있는 SOC의 생산자들이 하드웨어 보안 모듈을 SOC 설계 내에 병합시킴으로써 보안 SOC 칩들을 생산하게 해줄 수 있다.
도 1은 본 발명개시의 실시예에 따른 컴퓨팅 시스템과 부속 디바이스를 위한 예시적인 이용 환경(100)을 도시한다. 이용 환경(100)은 컴퓨팅 디바이스(102)를 포함하며, 이 컴퓨팅 디바이스(102)는 컴퓨팅 디바이스(102)가 비디오 콘텐츠를 디스플레이 디바이스(104)에 출력할 수 있도록 디스플레이 디바이스(104)와 통신하는 비디오 게임 콘솔의 형태로 있다. 사용자(106)는, 하나 이상의 이용 환경 센서들을 통해 사용자(106)를 감지하도록 구성된 센서 시스템의 형태로 있는 부속 장치(108)를 통해 컴퓨팅 디바이스(102)와 상호작용하는 것으로서 예시되고 있다. 부속 디바이스(108)는 비제한적인 예시로서, 이차원 이미지 센서(예컨대, RGB 또는 그레이스케일 센서), 깊이 이미지 센서(예컨대, TOF(time of flight) 또는 구조화 광 깊이 센서), 스테레오 카메라 시스템, 하나 이상의 마이크로폰들(예컨대, 방향성 마이크로폰 어레이), 및/또는 임의의 다른 적절한 센서들을 비롯하여, 임의의 적절한 센서 또는 센서들을 포함할 수 있다. 여기서는 호스트 비디오 게임 콘솔과 부속 센서 시스템의 환경에서 설명하지만, 개시된 실시예들은 임의의 적절한 호스트 및 부속 시스템들에 적용될 수 있다는 것을 이해할 것이다.
도 2는 부속 디바이스를 제조하고 이용하는 예시적인 방법(200)에서의 다양한 단계들을 도시하는 블록도를 도시한다. 제일먼저, 방법(200)은 단계(202)와 단계(204)에서 각각 표시된 바와 같이, 컴포넌트 제조자들에서의 부속 디바이스의 보안칩들 및 다른 컴포넌트들을 제조하는 단계를 포함한다. 다양한 컴포넌트들이 상이한 위치들에서 제조될 수 있고, 그 후 부속 디바이스 생산을 위해 조립 시설로 운송될 수 있다는 것을 이해할 것이다. 이에 따라, 방법(200)은 단계(206)에서 표시된 바와 같이, 부속 디바이스를 조립하는데 이용되는 보안칩들 및 다른 컴포넌트들을 부속 디바이스 제조자에게 운송하는 단계를 포함한다. 상술한 바와 같이, 부속 디바이스 제조 이전에 부속 디바이스가 분실되거나 도둑맞은 경우에 이러한 부속 디바이스가 위조 부속물들에서 이용될 수 없도록 부속 디바이스가 부속 디바이스 제조 시설에서 활성화될 때 까지 부속 디바이스가 비활성화되게끔 보안칩이 제조될 수 있다.
부속 디바이스 제조 시설에서, 부속물들은 컴포넌트 제조자들로부터 수신된 컴포넌트들로부터 제조된다. 아래에서 설명되는 바와 같이, 각각의 부속물을 위한 보안칩은 해당 보안칩을 병합시킨 부속물을 제조하는 동안 또는 그 후에 활성화될 수 있다. 그런 후, 단계(208)과 단계(210) 각각에서, 제조된 부속물들은 부속물들의 설계자/판매자에게 운송되고, 그런 후에 소비자들에게 판매된다. 그런 후 소비자는 허가받은 부속 디바이스를 적절한 호스트 디바이스에 연결시킬 수 있다. 인증 및 잠금해제시, 인증받고 활성화된 부속 디바이스들이 이용과 유흥을 위해 획득된다.
도 3은 부속 디바이스 제조 이전에 분실되거나, 도둑맞았거나 또는 그렇지 않고 부적절하게 획득된 보안칩들의 허가받지 않은 이용을 방지하는 방법(300)의 실시예를 나타낸다. 간략하게, 방법(300)은 개인/공개키 쌍을 활용하는데, 공개키는 보안칩 제조자에게 제공되고, 개인키는 보안 상태하에서 부속 디바이스 제조자에게 제공된다. 개인키는 (예컨대, 역설계가 어려운) 적절한 보안 특성을 갖는 스마트 카드 또는 다른 컴퓨팅 디바이스의 형태("보안 모듈"이라고 칭함)로 보안칩 제조자에게 제공될 수 있다. 또한, 보안 모듈은 또한 보안 모듈에 의해 활성화될 수 있는 보안칩들의 회수를 제한시키도록 실행가능한 코드를 포함할 수 있다. 이러한 방식으로, 예컨대 보안 모듈 상에 저장된 개인키의 침해(breach)를 통한 어떠한 보안 침해도 허가받은 활성화들의 회수로 제한될 수 있고, 이에 따라 보안 훼손의 효과를 제한시킬 수 있다. 또한, 몇몇의 실시예들에서, 보안 모듈은 부속 디바이스의 상이한 SKU들에 대해 상이한 개인키들(각각 대응하는 공개키를 가짐)을 포함할 수 있다.
방법(300)은 판매용 부속 디바이스들을 제조하기 위해 부속 디바이스 제조자를 활용하는 보안칩 제조자, 부속 디바이스 제조자, 및 디바이스 설계자/판매자 각각에서 일어나는 프로세스들을 보여준다. 방법(300)은, 부속 디바이스 보안칩에 대한 공개키, 또는 몇몇의 실시예들에서, 각각의 SKU에 대한 공개키를 보안칩 제조자에게 보내는 단계(302), 및 보안칩 제조자에서 공개키(들)을 수신하는 단계(304)를 포함한다. 방법(300)은 각각의 공개키에 대한 개인키를 갖는 보안 모듈을 부속 디바이스 제조자에게 보내는 단계(306), 및 이 보안 모듈을 수신하는 단계(308)를 더 포함한다.
방법(300)은 보안칩들을 제조하는 단계(310)를 더 포함하며, 각각의 보안칩은 적절한 공개키(예컨대, 부속 디바이스의 의도된 SKU를 위한 올바른 공개키)를 포함한다. 칩 펌웨어가 초기에 "활성화" 커맨드에만 응답하고, 활성화가 완료될 때 까지 활성화 프로세스에서 이용되는 연산들 이외의 다른 보안칩 연산들을 수행하지 않도록, 보안칩들은 비활성 상태에 있도록 제조된다. 보안칩들을 병합한 부속 디바이스들은 보안칩이 활성화되고 부속 디바이스가 인증될 때 까지 동작하지 않을 수 있다는 것을 이해할 것이다.
적절한 공개키를 갖는 비활성 보안칩들의 제조시, 방법(300)은 보안칩들을 부속 디바이스 제조자에게 보내는 단계(312)를 포함하며, 이 보안칩들은 단계(314)에서 수신된다. 다음으로, 방법(300)은 부속 디바이스들을 조립하고 그런 후 보안칩들을 활성화하는 단계(316)를 포함한다. 예시적인 보안칩 활성화 프로세스에 대한 상세한 설명을 도 4를 참조하여 아래에서 설명한다. 부속 디바이스들의 제조의 완료 및 보안칩들의 활성화시, 방법(300)은 부속 디바이스들을 설계자/판매자에게 보내는 단계(318)를 포함하며, 이 설계자/판매자는 부속 디바이스들을 소비자들에게 판매한다(단계(320)).
상술한 바와 같이, 몇몇의 실시예들에서, 보안 모듈 또는 다른 개인키 저장 디바이스는 해당 보안 모듈에 의해 수행될 수 있는 보안칩 잠금해제들의 회수를 제한시키는 실행가능한 코드를 포함할 수 있다. 이에 따라, 보안칩들의 허가된 회수를 활성화시킨 후, 방법(300)은 해당 보안 모듈에 대한 허가된 보안칩 활성화들의 한도에 도달하는 단계(322)를 포함한다. 이 경우, 새로운 보안 모듈이 부속 디바이스 설계자/판매자(또는 보안칩 공개/개인키들을 담당하는 다른 당사자)로부터 획득되거나, 또는 현재의 보안 모듈 및 현재의 공개/개인키(들)의 한도가 증가되지 않는 한, 어떠한 추가적인 보안칩들도 활성화되지 않을 수 있다. 보안 모듈 당 활성화될 수 있는 보안칩들의 회수에 한도를 부과하는 것은 보안 모듈 상에서의 개인키들의 침해의 부정적 효과를 제한시키는데 도움을 줄 수 있다.
몇몇의 실시예들에서, 보안칩 활성화 한도의 업데이트를 보안 모듈에게 송신하기 위해 보안 통신 채널이 이용될 수 있다. 이에 따라, 방법(300)은 해당 보안 모듈에 대한 칩 활성화 한도를 증가시키기 위한 명령어를 송신하는 단계를 포함한다(단, 어떠한 보안 모듈 침해도 발생하지 않은 것으로 가정한다). 그런 후, 방법(300)은 보안 모듈에서 한도 증가를 수신하는 단계(326)와, 추가적인 보안칩들을 활성화시키는 단계(328)를 포함한다. 보안 모듈 상의 개인키들이 침해되었다라고 결정하면, 침해된 개인키 각각을 대신하여 새로운 공개/개인키 쌍이 생성될 수 있고, 새로운 개인키들은 새로운 보안 모듈을 통해 부속 디바이스 제조자에게 운송될 수 있다는 것을 이해할 것이다.
보안칩들은 임의의 적절한 방식으로 부속물 제조 위치에서 활성화될 수 있다. 도 4는 부속 디바이스 제조자 위치에서 보안칩을 활성화시키는 방법의 예시적인 실시예를 도시하는 흐름도를 도시한다. 도 4는 보안 모듈과의 통신을 인에이블하도록 구성된 애플리케이션(예컨대, 컴퓨터 상에서 구동중에 있는 스마트 카드 인터페이스 애플리케이션), 부속 디바이스 및 보안 모듈 상에서의 보안칩 각각에서 일어나는 프로세스들을 도시한다.
방법(400)은 칩 ID(identification) 번호, 및 (몇몇의 실시예에서) 보안칩의 SKU에 대한 요청을 애플리케이션으로부터 보안칩에게 보내는 단계(402)를 포함한다. 단계(404)에서, 보안칩은 이러한 요청을 수신한다. 이에 응답하여, 단계(406)에서, 보안칩은 난수(random number)를 생성하고, 단계(408)에서, 이러한 난수, 칩 ID 번호, 및 SKU를 애플리케이션에게 보낸다. 단계(410)에서, 애플리케이션은 이러한 정보를 수신하고 이것을 보안 모듈에게 포워딩하며, 단계(412)에서, 보안 모듈은 이 정보를 수신한다. 보안 모듈이 이러한 정보를 수신하면, 단계(414)에서, 보안 모듈은 난수, 칩 ID, 및 SKU를 적절한 개인키(예컨대, SKU에 대응하는 개인키)로 서명하고, 단계(416)에서, 서명값을 애플리케이션에게 보낸다. 보안 모듈은 또한, 단계(417)에서 표시된 바와 같이, 활성화 한도 카운터를 감소(또는, 특정 구현에 따라 증분)시킬 수 있다. 다른 실시예들에서, 활성화 한도 카운터는 칩 활성화가 완료된 후에 감소될 수 있다.
이어서, 방법(400)은 서명값들을 수신하고, 이 서명값들을 보안칩에게 포워딩하는 단계(418)를 포함한다. 다음으로, 단계(420)에서, 보안칩은 제조시 보안칩 상에 포함되었던 공개키를 이용하여 이 서명값들을 입증하고, 그런 후, 단계(422)에서, 입증값들이 이전에 보안 모듈에게 보내졌었던 올바른 값들과 일치하는지를 결정한다. 입증값들이 올바르면, 방법(400)은 보안칩을 활성화시키는 단계(424)를 포함한다. 한편, 입증값들이 일치하지 않으면, 방법(400)은 보안칩을 활성화시키지 않는 단계(426)를 포함한다.
보안칩이 활성화되면, 부속 디바이스는 소비자들에게 판매될 준비가 된다. 상술한 바와 같이, 추가적인 보안 조건들이 충족될 때 까지 부속 디바이스가 이용되는 것을 방지하는 보안 조치들을 부속 디바이스는 포함할 수 있다. 예를 들어, 부속 디바이스는 인증될 때 까지, 호스트 디바이스에 첫번째로 연결될 때 기능하지 않도록 구성될 수 있다. 몇몇의 실시예들에서, 부속 디바이스가 호스트 커맨드들 또는 메시지들에 단순히 응답하도록, 이러한 인증 프로세스는 호스트로부터 유도될 수 있다. 예를 들어, 커맨드에 따라, 부속 디바이스는 입증을 위한 데이터를 호스트 디바이스에게 보내거나, 또는 부속 디바이스가 관련 인증 프로토콜을 올바르게 따른다는 것을 입증하기 위해 호스트로부터 보내진 데이터를 프로세싱한다. 인증이 성공적으로 완료될 때에만, 부속 디바이스는 정상적인 기능을 시작할 것이다.
몇몇의 경우들에서, 인증은, 부속 디바이스가 호스트를 인증하지 않는 일방향 인증일 수 있다. 다른 실시예들에서, 인증은, 호스트와 부속 디바이스가 서로 인증하도록 상호적일 수 있다. 이것은 호스트와 부속 디바이스의 "페어링"이 구축될 수 있도록 해줘서, 부속 디바이스가 해당 호스트와 구체적으로 연관되게 할 수 있다.
도 5a와 도 5b는 부속 디바이스와 호스트 컴퓨팅 디바이스를 상호 인증하는 방법(500)의 실시예를 도시하는 흐름도를 도시한다. 적절한 호스트들 및 부속 디바이스들의 예시들에는, 비제한적인 예시로서, 청구항 제1항에 예시된 센서 시스템과 비디오 게임 콘솔이 포함된다. 도 6을 간략하게 참조하면, 방법(500)은 보안칩(602)을 포함한 부속 디바이스(600), 호스트 컴퓨팅 디바이스(604), 및 상호 인증을 중재하는 원격 페어링 서비스(606) 각각에서 수행되는 프로세스들을 나타낸다. 상호 인증 프로토콜의 다양한 부분들이 부속 디바이스에 의해 수행되는 것으로서 설명될 수 있지만, 메시지들을 프로세싱하는 엔티티는 실제로 부속 디바이스 내에 있는 보안칩일 수 있으며, 부속 디바이스 펌웨어는 단순히 메시지들을 호스트와 보안칩간에 운송시킨다는 것을 이해할 것이다. 이것은 중간자 공격(middle man attack)을 방지하는데 도움을 줄 수 있다.
방법(500)은 "호스트 헬로우” 메시지를 호스트 컴퓨팅 디바이스로부터 부속 디바이스에게 보내는 단계(502)를 포함하며, 이 호스트 헬로우 메시지는 랜덤 넌스(random nonce)를 포함한다. 단계(504)에서, 부속 디바이스는 호스트 헬로우 메시지를 수신하고, 단계(506)에서, 다른 랜덤 넌스를 갖는 "디바이스 헬로우" 메시지를 보내며, 이 메시지는 단계(508)에서 호스트에 의해 수신된다. 또한, 단계(510)에서, 부속 디바이스는 또한 보안칩 인증서를 호스트 디바이스에게 보내며, 이 보안칩 인증서는, 단계(512)에서, 보안칩 인증서가 유효하다는 것을 확인하기 위해 호스트에 의해 수신되고 (디바이스 인증서를 발행했던 인증서 기관과 연락하여) 입증된다. 또한, 몇몇의 실시예들에서, 호스트 디바이스는 이러한 인증 초기 부분 동안의 상호 인증 세션의 초기 부분 동안 부속 디바이스로부터 구성 정보를 수신할 수 있고, 구성 정보를 조사함으로써 부속 디바이스가 호스트 디바이스와 함께 이용되는 것이 허용되지 않는다(예컨대, 부속 디바이스가 올바르지 않은 SKU이다)라고 결정되면 인증을 거부할 수 있다.
다음으로, 페어링 프로세스를 개시하기 위해, 단계(513)과 단계(514)에서 도시된 바와 같이, 호스트와 원격 페어링 서비스는 보안 연결을 구축한다. 그런 후 호스트는, 단계(516)에서 도시된 바와 같이, 페어링 기능을 지원하기 위한 페어링 개인/공개키 쌍을 획득한다. 페어링 개인/공개키 쌍은 페어링 프로세스의 일부로서 생성될 수 있거나, 또는 미리구성될 수 있다. 페어링 개인/공개키 쌍을 획득한 후, 호스트는, 단계(518)에서, 보안칩 인증서와 페어링 개인키를 원격 페어링 서비스에게 보내며, 이러한 것들은 단계(520)에서 수신된다.
이러한 정보의 수신시, 원격 페어링 서비스는, 단계(522)에서, 호스트와 부속 디바이스에 대하여 페어링이 허용되어야 하는지 여부를 결정할 수 있다. 예를 들어, 디바이스가 훼손되었다거나 또는 부속물이 호스트에 대한 올바르지 않은 SKU이라는 것이 알려지고/알려지거나, 다른 잠재적인 문제들이 알려지면, 단계(524)에서 표시된 바와 같이 페어링은 거절될 수 있다. 한편, 단계(522)에서, 호스트와 부속 디바이스간의 페어링이 허용되면, 단계(526)에서, 원격 페어링 서비스는 페어링 인증서를 호스트에게 보낼 수 있으며, 페어링 인증서는 (단계(516)에서 호스트에 의해 획득된 페어링 키와 구별되는) 페어링 서비스의 개인키를 통해 모두 서명된, 페어링 공개키와 보안칩 인증서의 다이제스트(digest)를 포함한다. 원격 페어링 서비스는 또한, 단계(527)에서 도시된 바와 같이, 호스트 디바이스와 부속 디바이스 중 하나 이상이 연루된 미래의 페어링이 허용되는지 여부를 결정하는데 이용하기 위한 호스트 디바이스와 부속 디바이스에 관한 식별 정보를 저장할 수 있다.
호스트 디바이스는, 단계(528)에서 페어링 인증서를 수신하고, 그런 후, 단계(530)에서, "호스트 인증서"로서 페어링 인증서를 부속 디바이스에게 포워딩한다. 부속 디바이스는, 단계(532)에서, 호스트 인증서를 수신하고, 단계(534)에서, 원격 페어링 서비스의 공개키를 통해 이 호스트 인증서를 입증한다. 이 공개키는, 단계(526)에서, 페어링 인증서를 암호화하는데 이용되는 개인키에 대응한다. 공개키를 통해 호스트 인증서를 입증한 후, 단계(536)에서 표시된 바와 같이, 부속 디바이스는 호스트 인증서에 포함된 정보를 입증할 수 있다. 페어링 인증서에 있는 정보가 입증되지 않으면, 페어링 프로세스는 멈출 수 있다.
호스트는 또한, 단계(538)에서, "프리 마스터 시크릿"을 생성하고, 개인키 소유자(예컨대, 부속 디바이스 상의 보안칩)만이 프리 마스터 시크릿을 암호해제할 수 있도록, 부속 디바이스 상의 보안칩의 공개키를 통해 프리 마스터 시크릿을 암호화한다. 프리 마스터 시크릿은 난수와 같은, 임의의 적절한 정보를 포함할 수 있다. 단계(541)에서, 호스트는 프리 마스터 시크릿을 부속 디바이스에게 보내며, 단계(542)에서, 부속 디바이스는 이 프리 마스터 시크릿을 수신한다. 호스트는 또한, 단계(544)에서, 호스트/부속 "헬로우" 메시지 교환 동안에 교환된 두 개의 넌스들과 프리 마스터 시크릿을 통해 "마스터 시크릿"을 생성한다.
프리 마스터 시크릿의 수신시, 부속 디바이스는, 단계(548)에서 표시된 바와 같이, 부속 디바이스 개인키를 통해 프리 마스터 시크릿을 암호해제할 수 있고, 단계(550)에서 도시된 바와 같이, 이 값과 두 개의 "헬로우" 넌스들로부터 마스터 시크릿을 유도할 수 있다. 다음으로, 단계(552)에서, 호스트는 "호스트 인증서 입증" 메시지를 생성하고, 이 메시지를 단계(516)에서 획득된 개인 페어링 키로 서명한다. 그런 후, 호스트는, 단계(554)에서, 호스트 인증서 입증 메시지를 부속 디바이스에게 보낸다. 부속 디바이스는, 단계(556)에서, 호스트 인증서 입증 메시지를 수신하고, 단계(558)에서, 이 호스트 인증서 입증 메시지를 호스트 인증서에 포함되었던 페어링 공개키를 통해 입증한다. 이것은 부속 디바이스로 하여금, 호스트 인증서에 있는 페어링 공개키가 이 페어링 공개키를 제공했던 동일한 디바이스에 의해 원격 서비스에게 보내졌었다는 것을 확인하도록 해준다.
이어서, 단계(560)에서, 호스트는 "호스트 종료" 메시지를 생성하고 이 메시지를 부속 디바이스에게 보내며, 단계(562)에서, 부속 디바이스는 이 메시지를 수신한다. 마찬가지로, 단계(564)에서, 부속 디바이스는 "디바이스 종료 메시지"를 생성하여 보내고, 이 메시지는, 단계(566)에서, 호스트에 의해 수신된다. 상호 인증 프로세스의 완료시, 부속 디바이스는 잠금해제될 수 있고 보통의 기능을 시작할 수 있다. 방법(500)의 상호 인증 프로세스는 TLS(Transport Layer Security) 상호 인증와 같은, 다른 상호 인증 프로세스들에 비해 장점들을 제공해줄 수 있다. 예를 들어, 방법(500)을 통해, 각각의 호스트와 디바이스 쌍은 자기 소유의 키를 가지며, 이에 따라 훼손된 쌍은 생태계의 엄청단 파괴를 야기시키지는 않을 것이다. 또한, 페어링은 온라인 서비스에 의해 제어되므로, 오프라인 공격은 본 프로세스에 대해 성공하지 못할 수 있다. 추가적으로, 보안칩 자체가 부속 디바이스측 상의 프로세스를 제어하므로, 보안칩은 다양한 여러가지 디바이스들에서 이용될 수 있으며, 이로써 인증 프로세스가 다른 부속물들에 적응되게 해준다.
상술한 바와 같이, 몇몇의 경우들에서, 부속 디바이스의 잠금해제를 허가하기 위해 일방향 인증이 활용될 수 있다. 이러한 인증은 도 5a와 도 5b를 참조하여 설명된 인증과 유사할 수 있지만, 원격 서비스와 페어링 인증서를 수반한 단계들의 생략을 갖는데, 이로써 프리 마스터 시크릿 메시지는 호스트에서 보안칩 인증서를 수신하고 입증한 후에 호스트로부터 부속 디바이스에 보내지는 첫번째 메시지가 된다. 또한, 몇몇의 실시예들에서, 상이한 부속물 SKU들은 상이한 인증 프로세스들을 활용할 수 있다. 예를 들어, 특정 호스트와의 이용을 위해 의도된 SKU는 상호 인증을 활용할 수 있는 반면에, 보다 넓은 범위의 컴퓨팅 디바이스들(예컨대, PC 형태 디바이스들)과의 이용을 위해 의도된 SKU는 일방향 인증을 활용할 수 있다. 이러한 실시예에서, 디바이스가 올바르지 않은 SKU인 것으로 인해 호스트가 상호 인증을 거절하면, 호스트는 부속 디바이스의 이용을 인에이블하기 위해 일방향 인증을 수행할 수 있다. 임의의 적절한 일방향 인증 프로세스가 이용될 수 있다는 것을 이해할 것이다.
도 7은 인증 후 부속 디바이스를 잠금해제하는 방법(700)의 예시적인 실시예를 도시하는 흐름도를 도시한다. 도 8을 간략하게 참조하면, 방법(700)은 부속 디바이스(804) 내의 보안칩(800)과 시스템 온 칩(system-on-a-chip; SOC)(802) 상에서 수행되는 프로세스들을 나타낸다. SOC는 보안이 안된 펌웨어(805), 및 보안칩(800)의 보안 도메인을 SOC(802) 내로 확장시키기 위해 SOC 상의 하드웨어로서 구현된 보안 하드웨어 모듈(806)을 포함한다. 보안 하드웨어 모듈(806)은 보안칩으로부터의 보안 상태 정보를 직접적으로 보안 하드웨어 모듈로 보안 전송하는 능력을 추가시키기 위해 임의의 희망하는 비보안화 컴포넌트 내에 병합될 수 있다. 그런 후 보안 하드웨어 모듈은 보안 상태를 이용하여 SOC 내의 특정한 특징들을 인에이블시키거나 또는 디스에이블시킬 수 있다.
보안 하드웨어 모듈을 정의함으로써, SOC의 보안을 입증하는 작업의 범위는 감소된다. SOC의 대부분은 비신뢰적인 것으로 간주될 수 있는 반면에, 보안 하드웨어 모듈은 신뢰적일 수 있다. 보안 하드웨어 모듈 하드웨어 블록의 이용은 또한 보안 제품들을 개발하는데 있어서 기술적 능력 및/또는 경험을 가질 수 없는 판매인에 의해 정의된 디바이스 내로의 이러한 하드웨어 블록의 병합을 가능하게 할 수 있다.
보안 하드웨어 모듈(806)은 임의의 적절한 컴포넌트들을 포함할 수 있다. 예를 들어, 도시된 실시예에서, 보안 하드웨어 모듈(806)은 난수 생성기(808) 또는 다른 적절한 엔트로피 소스, 하드웨어 스니핑(sniffing) 인터페이스(810), 및 비휘발성 메모리(812)를 포함한다. 난수 생성기(808)는 보안칩(800)에 보낼 챌런지(challenge) 메시지들을 공식화하는데 이용될 수 있다. 하드웨어 스니핑 인터페이스(810)는 보안 하드웨어 모듈(806)에서 수신된 메시지들이 SOC 상의 잠재적으로 훼손된 펌웨어로부터가 아닌, SOC 외부의 보안칩(800)으로부터 수신되었는지 여부를 결정하는데 이용될 수 있다. 비휘발성 메모리(812)는 보안칩과의 통신들을 암호화하기 위해 이용된 키를 저장하는데 이용될 수 있다. 몇몇의 실시예들에서, 이러한 키는 동일 키가 보안칩 상에 저장되도록 대칭키일 수 있고, 각각의 부속 디바이스가 자신 소유의 대칭키 쌍을 갖도록 해당 보안칩/SOC 쌍에 특유적일 수 있다. 다른 실시예들에서는, 임의의 다른 적절한 키가 이용될 수 있다.
도 7로 돌아가서, 방법(700)은 (예컨대, 인증이 완료된 후 호스트로부터) 잠금해제 요청을 수신하는 단계(701), 및 난수의 생성을 위한 요청을 SOC 상의 펌웨어로부터 SOC 상의 보안 하드웨어 모듈에 보내는 단계(702)를 포함한다. 이에 응답하여, 단계(704)에서, 보안 하드웨어 모듈은 난수를 생성하고, 단계(706)에서, 난수를 공유키를 통해 암호화한다. 그런 후, 단계(708)에서, 암호화된 난수는 펌웨어에게 제공되며, 이로써 펌웨어는 암호화된 버전의 난수만을 바라보게 된다. 단계(710)에서 표시된 바와 같이, 펌웨어는 암호화된 난수를 수신하고, 그런 후, 암호화된 난수를 보안칩에게 포워딩한다. 단계(712)에서, 보안칩은 암호화된 난수를 수신하고, 단계(714)에서, 이러한 난수를 공유키로 암호해제하며, 그런 후 단계(716)에서, 암호해제된 난수에 대해 새로운 값을 형성하기 위한 연산을 수행한다. 임의의 적절한 연산이 수행될 수 있다. 하나의 비제한적인 예시는 2의 보수 연산이다.
새로운 값을 생성하기 위한 연산을 난수에 대해 수행한 후, 단계(718)에서, 보안칩은 새로운 값을 공유키를 통해 암호화하고, 단계(720)에서, 암호화된 새로운 값을 SOC에게 보낸다. 단계(722)에서, SOC는 암호화된 새로운 값을 수신하고, 이것을 보안 하드웨어 모듈에게 포워딩한다. 단계(724)에서, 보안 하드웨어 모듈은, 하드웨어 스니핑 인터페이스를 통해, 암호화된 새로운 값이 SOC 상의 위치로부터 비롯되었기 보다는, SOC 외부로부터 수신되었다는 것을 확인한다. 다음으로, 단계(728)에서, 보안 하드웨어 모듈은 암호화된 새로운 값을 공유키를 통해 암호해제하고, 단계(716)에서 수행된 연산에 대한 역연산을 수행하여 난수의 원래값을 획득한다. 그런 후, 보안 하드웨어 모듈은 보안칩이 진품이라는 것을 확실히 하기 위해 역연산의 결과를 원래 난수와 비교할 수 있다. 비교가 맞으면, 보안 하드웨어 모듈은 SOC를 잠금해제하여 부속 디바이스가 기능을 하게 할 수 있다.
몇몇의 실시예들에서, 보안칩에 의해 보내진 잠금해제 명령어는 디바이스가 잠금해제될 것이라는 것을 표시하는 단일 비트를 포함할 수 있다. 다른 실시예들에서, SOC의 상이한 특징들을 잠금해제하기 위해 다중 비트들이 보안칩에 의해 보내질 수 있다(예컨대, 각각의 비트는 상이한 특징을 제어한다). 이것은 SKU 차별을 위한 추가적인 메커니즘을 제공할 수 있다.
상술한 실시예들은 예시를 목적으로 제공되었다는 것과, 보안칩 활성화, 상호 또는 일방향 인증, 및 디바이스 잠금해제를 위한 임의의 다른 적절한 방법들이 이용될 수 있다는 것을 이해할 것이다. 예를 들어, 보안칩들을 활성화하기 위한 방법의 다른 예시적인 실시예는 다음과 같다. 첫번째로, 칩 제조 시간에서, 랜덤 마스터 키가 보안칩들의 SKU 마다 생성된다. 그런 후, 이 랜덤 마스터 키 및 또한 칩 당 ID를 이용하여, 칩 당 활성화 키가 HMAC-SHA256와 같은 HMAC 알고리즘을 이용하여 유도될 수 있다.
PerChipActivationKey = HMAC-SHA256(MasterKey, PUID)
칩 당 활성화 키는 보안칩 내부에 보안 저장되며, 보안칩 외부에서 판독될 수 없다. 이것은 각각의 보안칩에 대해 수행되는 것이기 때문에, 모든 칩은 저장되어 있는 상이한 활성화 키를 갖는다. 따라서, 특정 칩의 활성화 키가 훼손되면, 다른 칩들은 영향을 받지 않는다. 이것은 활성화 키에 대한 공격들에 대해 추가 보안성을 제공하는데 도움을 줄 수 있다.
다음으로, 부속 디바이스 제조 시간에서, 마스터 키는 보안 모듈(예컨대, 스마트 카드)을 통해 보안칩 공장으로부터 부속 디바이스 공장으로 보안 운송된다. 스마트 카드는 보안칩 ID 번호를 입력으로서 받아들이고, 보안칩 제조 시간에서 이용된 동일한 알고리즘을 이용하여 칩 당 활성화 키를 유도해내고, 활성화 키를 이용하여 또다른 다이제스트,
ActivationDigest = HMAC-SHA256(PerChipActivationKey, PUID + AdditionalTrackingInfo)
를 생성할 수 있다.
활성화 다이제스트는 보안칩에 대한 "활성화" 커맨드의 입력이다. 보안칩이 이 입력을 수신하면, 보안칩은 활성화 키의 자신 소유의 복사본을 이용하여 동일한 활성화 다이제스트를 계산하도록 구성될 수 있다. 활성화 다이제스트가 입력과 일치하면, 보안칩은 자신을 활성화시고 정규의 기능들을 시작할 수 있다.
ActivationDigest의 계산에서, “AddtionalTrackingInfo” 값은 각각의 칩의 활성화를 추적하는데 이용될 수 있다. 임의의 적절한 값이 이용될 수 있다. 예를 들어, 몇몇의 실시예들에서, AdditionalTrackingInfo 는 얼마나 많은 보안칩을 보안 모듈이 활성화시켰는지를 기록한 시퀀스 번호(SequenceNumber)일 수 있다. 이 정보는 활성화 커맨드의 입력으로서 보안칩에 전달될 수도 있다.
Activate(SMID, SequenceNumber, ActivationDigest)
게다가, 이 정보는 또한 활성화 후에 보안칩 내부에 보안 저장될 수 있어서, 후에, 택일적 사항으로서, 보안칩은 이 정보를 온라인 시스템에 보고할 수 있고, 온라인 시스템은 각각의 칩과 그 활성화 상태도 추적할 수 있다. 이것은, 보안 모듈이 또한 도둑맞은 경우(하지만, 마스터키는 아직 공개되지 않음)에서와 같이, 또다른 보안층을 추가시킬 수 있으며, 온라인 시스템은 도둑맞은 보안 모듈의 얼머나 많은 칩들이 활성화되었는지를 알 수 있다. 또한, 상술한 바와 같이, 각각의 보안 모듈은 또한 얼마나 많은 칩들을 활성화시킬 수 있는지에 관해 제한받을 수 있고, 이로써 도둑맞은 보안 모듈에 의해 야기된 손상을 경감시켜주는데 이바지할 수 있다. 보안 모듈은 추가적인 보안을 제공하도록 패스워드로 보호받을 수 있다. 이러한 활성화 프로세스에서 활성화 키는 칩 당 존재하는 것이기 때문에, 도둑맞은 칩은 다른 칩들을 훼손시키지 않을 것이다.
몇몇의 실시예들에서, 상술된 방법들 및 프로세스들은 하나 이상의 컴퓨팅 디바이스들의 컴퓨팅 시스템에 결부될 수 있다. 구체적으로, 이러한 방법들 및 프로세스들은 컴퓨터 응용 프로그램 또는 서비스, 응용 프로그램 인터페이스(application-programming interface; API), 라이브러리, 및/또는 다른 컴퓨터 프로그램 제품으로서 구현될 수 있다.
도 9는 상술된 방법들 및 프로세스들 중 하나 이상을 실행할 수 있는 컴퓨팅 시스템(900)의 비제한적인 실시예를 개략적으로 도시한다. 컴퓨팅 시스템(900)은 단순화된 형태로 도시된다. 본 발명개시의 범위로부터 벗어나지 않고서 사실상 임의의 컴퓨터 아키텍처가 이용될 수 있다는 것을 이해할 것이다. 상이한 실시예들에서, 컴퓨팅 시스템(900)은 메인프레임 컴퓨터, 서버 컴퓨터, 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 홈 엔터테인먼트 컴퓨터, 부속 디바이스, 네트워크 컴퓨팅 디바이스, 게이밍 디바이스, 모바일 컴퓨팅 디바이스, 모바일 통신 디바이스(예컨대, 스마트폰), 스마트 카드 등의 형태를 취할 수 있다. 컴퓨팅 시스템의 예시들에는, 비제한적인 예시로서, 다양한 부속 디바이스들, 호스트 디바이스들, 및 스마트 카드들, 및 상술한 다른 컴퓨팅 디바이스들이 포함된다.
컴퓨팅 시스템(900)은 논리 서브시스템(902) 및 저장 서브시스템(904)을 포함한다. 컴퓨팅 시스템(900)은 택일적 사항으로서, 디스플레이 서브시스템(906), 입력 서브시스템(908), 통신 서브시스템(910), 및/또는 도 9에서는 미도시된 다른 컴포넌트들을 포함할 수 있다.
논리 서브시스템(902)은 명령어들을 실행하도록 구성된 하나 이상의 물리적 디바이스들을 포함한다. 예를 들어, 논리 서브시스템은 하나 이상의 애플리케이션들, 서비스들, 프로그램들, 루틴들, 라이브러리들, 객체들, 컴포넌트들, 데이터 구조들, 또는 다른 논리 구축물들의 일부인 명령어들을 실행하도록 구성될 수 있다. 이러한 명령어들은 태스크를 수행하거나, 데이터 유형을 구현하거나, 하나 이상의 컴포넌트들의 상태를 변환시키거나, 또는 이와 다르게 희망하는 결과에 도달하도록 구현될 수 있다.
논리 서브시스템은 소프트웨어 명령어들을 실행하도록 구성된 하나 이상의 프로세서들을 포함할 수 있다. 추가적으로 또는 대안적으로, 논리 서브시스템은 하드웨어 또는 펌웨어 명령어들을 실행하도록 구성된 하나 이상의 하드웨어 또는 펌웨어 논리 머신들을 포함할 수 있다. 논리 서브시스템의 프로세서들은 단일 코어 또는 멀티 코어일 수 있고, 이들 상에서 실행되는 프로그램들은 순차적 프로세싱, 병렬 프로세싱, 또는 분산식 프로세싱을 위해 구성될 수 있다. 논리 서브시스템은 택일적 사항으로서, 통합 프로세싱을 위해 원격적으로 위치하고/위치하거나 구성될 수 있는, 두 개 이상의 디바이스들간에 분산된 개별적인 컴포넌트들을 포함할 수 있다. 논리 서브시스템의 양태들은 클라우드 컴퓨팅 구성으로 구성된, 원격적으로 액세스가능한 네트워크화된 컴퓨팅 디바이스들에 의해 가상화되고 실행될 수 있다.
저장 서브시스템(904)은 여기서 설명된 방법들 및 프로세스들을 구현하기 위해 논리 서브시스템에 의해 실행가능한 데이터 및/또는 명령어들을 홀딩하도록 구성된 하나 이상의 비일시적 물리 디바이스들을 포함한다. 이러한 방법들 및 프로세스들이 구현될 때, 저장 서브시스템(904)의 상태는 예컨대, 상이한 데이터를 홀딩하도록 변환될 수 있다.
저장 서브시스템(904)은 착탈가능한 매체 및/또는 내장형 디바이스들을 포함할 수 있다. 저장 서브시스템(904)은 여러가지 중에서도, 광학 메모리 디바이스들(예컨대, CD, DVD, HD-DVD, 블루레이 디스크 등), 반도체 메모리 디바이스들(예컨대, RAM, EPROM, EEPROM 등), 및/또는 자기 메모리 디바이스들(예컨대, 하드 디스크 드라이브, 플로피 디스크 드라이브, 테잎 드라이브, MRAM 등)을 포함할 수 있다. 저장 서브시스템(904)은 휘발성, 비휘발성, 동적, 정적, 판독/기록, 판독 전용, 랜덤 액세스, 순차적 액세스, 위치 어드레스가능, 파일 어드레스가능, 및/또는 콘텐츠 어드레스가능 디바이스들을 포함할 수 있다.
저장 서브시스템(904)은 하나 이상의 물리 디바이스들을 포함하는 것을 이해할 것이다. 하지만, 몇몇의 실시예들에서, 여기서 설명된 명령어들의 양태들은, 저장 디바이스와는 반대로, 통신 매체를 통해 순수 신호(예컨대, 전자기 신호, 광학 신호 등)에 의해 전파될 수 있다. 또한, 본 발명개시와 관련된 데이터 및/또는 다른 형태들의 정보는 순수 신호에 의해 전파될 수 있다.
몇몇의 실시예들에서, 논리 서브시스템(902)과 저장 서브시스템(904)의 양태들은 여기서 기술된 기능성이 실행될 수 있도록 해주는 하나 이상의 하드웨어 논리 컴포넌트들 내로 함께 통합될 수 있다. 이러한 하드웨어 논리 컴포넌트들은 예컨대, FPGA(field-programmable gate array), PASIC/ASIC(program application specific integrated circuit and application specific integrated circuit), PSSP/ASSP(program specific standard product and application specific standard product), SOC(system-on-a-chip) 시스템, 및 CPLD(complex programmable logic device)를 포함할 수 있다.
"모듈", "프로그램" 및 "엔진" 용어들은 특정 기능을 수행하도록 구현된 컴퓨팅 시스템(900)의 양태들을 설명하기 위해 이용될 수 있다. 몇몇의 경우들에서, 모듈, 프로그램, 또는 엔진은 저장 서브시스템(904)에 의해 홀딩된 명령어들을 실행시키는 논리 서브시스템(902)을 통해 예시화될 수 있다. 상이한 모듈들, 프로그램들, 및/또는 엔진들은 동일한 애플리케이션, 서비스, 코드 블록, 객체, 라이브러리, 루틴, API, 함수 등으로부터 예시화될 수 있다는 것을 이해할 것이다. 마찬가지로, 동일한 모듈, 프로그램, 및/또는 엔진은 상이한 애플리케이션들, 서비스들, 코드 블록들, 객체들, 루틴들, API들, 함수들 등에 의해 예시화될 수 있다. "모듈", "프로그램" 및 "엔진" 용어들은 실행가능한 화일들, 데이터 화일들, 라이브러리들, 드라이버들, 스크립트들, 데이터베이스 기록들 등의 개개별 또는 그룹들을 망라할 수 있다.
여기서 이용되는 "서비스"는 다중 사용자 세션들에 걸쳐 실행가능한 애플리케이션 프로그램이다. 서비스는 하나 이상의 시스템 컴포넌트들, 프로그램들, 및/또는 다른 서비스들에 대해 이용가능할 수 있다. 몇몇의 구현예들에서, 서비스는 하나 이상의 서버 컴퓨팅 디바이스들 상에서 구동될 수 있다.
디스플레이 서브시스템(906)이 포함되는 경우, 이 디스플레이 서브시스템(906)은 저장 서브시스템(904)에 의해 홀딩된 데이터의 시각적 표현을 제공하기 위해 이용될 수 있다. 이러한 시각적 표현은 그래픽 사용자 인터페이스(graphical user interface; GUI)의 형태를 취할 수 있다. 여기서 설명된 방법들 및 프로세스들은 저장 서브시스템에 의해 홀딩된 데이터를 변경시키고, 이에 따라 저장 서브시스템의 상태를 변환시키므로, 디스플레이 서브시스템(906)의 상태도 이와 마찬가지로 기저 데이터에서의 변경들을 시각적으로 나타내도록 변환될 수 있다. 디스플레이 서브시스템(906)은 임의의 유형의 기술을 사실상 활용하는 하나 이상의 디스플레이 디바이스들을 포함할 수 있다. 이러한 디스플레이 디바이스들은 논리 서브시스템(902) 및/또는 저장 서브시스템(904)과 공유형 인클로저로 결합될 수 있거나, 또는 이러한 디스플레이 디바이스들은 주변 디스플레이 디바이스들일 수 있다.
입력 서브시스템(908)이 포함되는 경우, 입력 서브시스템(908)은 키보드, 마우스, 터치 스크린, 게임 제어기와 같은 하나 이상의 사용자 입력 디바이스들을 포함하거나 또는 이들과 인터페이싱할 수 있다. 몇몇의 실시예들에서, 입력 서브시스템은 상술한 부속 디바이스 실시예들과 같은, 선택형 자연 사용자 입력(natural user input; NUI) 컴포넌트들을 포함하거나 또는 이들과 인터페이싱할 수 있다. 이러한 컴포넌트들은 통합되거나 또는 주변장치일 수 있고, 입력 동작들의 변형 및/또는 프로세싱은 온 보드 또는 오프 보드로 처리될 수 있다. 예시적인 NUI 컴포넌트들은 구두 및/또는 음성 인식을 위한 마이크로폰; 머신 비젼 및/또는 제스처 인식을 위한 적외선, 색상, 입체, 및/또는 깊이 카메라; 모션 탐지 및/또는 의도 인식을 위한 머리 추적기, 안구 추적기, 가속도계, 및/또는 자이로스코프뿐만이 아니라, 두뇌 활동에 액세스하기 위한 전기장 감지 컴포넌트를 포함할 수 있다.
통신 서브시스템(910)이 포함되는 경우, 통신 서브시스템(910)은 컴퓨팅 시스템(900)을 하나 이상의 다른 컴퓨팅 디바이스들과 통신가능하게 결합시키도록 구성될 수 있다. 통신 서브시스템(910)은 하나 이상의 상이한 통신 프로토콜들과 호환가능한 유선 및/또는 무선 통신 디바이스들을 포함할 수 있다. 비제한적인 예시들로서, 통신 서브시스템은 무선 전화기 네트워크, 또는 유선 또는 무선 근거리 네트워크 또는 광대역 네트워크를 통한 통신을 위해 구성될 수 있다. 몇몇의 실시예들에서, 통신 서브시스템은 컴퓨팅 시스템(900)으로 하여금 인터넷과 같은 네트워크를 통해 다른 디바이스들과 메시지들을 주고받을 수 있게 할 수 있다.
여기서 설명된 구성들 및/또는 접근법들은 성질상 예시적인 것이며, 이러한 특정한 실시예들 또는 예시들은 수많은 변형들이 가능하기 때문에 한정적인 의미로 간주되어서는 안된다는 점을 이해할 것이다. 여기서 설명된 특정한 루틴들 또는 방법들은 임의의 개수의 프로세싱 전략들 중의 하나 이상을 나타낼 수 있다. 따라서, 예시되고 및/또는 설명된 다양한 동작들은 예시되고 및/또는 설명된 시퀀스로, 또는 다른 시퀀스로, 병렬로 수행될 수 있거나 또는 생략될 수 있다. 마찬가지로, 상술한 프로세스들의 순서는 변경될 수 있다.
본 발명개시의 발명내용은 여기서 개시된 다양한 프로세스들, 시스템들 및 구성들과, 다른 특징들, 기능들, 동작들, 및/또는 특성들의 모든 신규하고 비자명한 조합들 및 서브조합들뿐만이 아니라, 이들의 임의의 그리고 모든 등가물들을 포함한다.

Claims (10)

  1. 호스트 컴퓨팅 디바이스에 있어서,
    논리 서브시스템; 및
    상기 논리 서브시스템에 의해 실행가능한 명령어들이 저장되어 있는 저장 서브시스템
    을 포함하고, 상기 논리 서브시스템은,
    부속(accessory) 디바이스와의 상호 인증 세션의 초기 부분을 수행하고,
    상기 호스트 컴퓨팅 디바이스와 상기 부속 디바이스에 관한 정보를 컴퓨터 네트워크를 통해 원격 페어링 서비스에게 보내고,
    이에 응답하여, 상기 원격 페어링 서비스로부터 페어링 인증서 - 상기 페어링 인증서는 상기 원격 페어링 서비스의 개인키를 통해 암호화됨 - 를 수신하며,
    상기 원격 페어링 서비스로부터의 상기 페어링 인증서를 이용하여 상기 부속 디바이스와의 상호 인증을 완료하도록 구성된 것인, 호스트 컴퓨팅 디바이스.
  2. 제1항에 있어서, 상기 상호 인증 세션의 초기 부분을 수행하는 것은,
    상기 부속 디바이스와의 연결을 구축하고,
    상기 부속 디바이스로부터 보안칩 인증서를 수신하며,
    상기 디바이스 인증서가 유효한 것을 입증(verify)하는 것을 포함한 것인, 호스트 컴퓨팅 디바이스.
  3. 제2항에 있어서, 상기 디바이스 인증서가 유효한지 여부를 결정하는 것은 상기 디바이스 인증서를 발행한 인증서 기관과 연락하는 것을 포함한 것인, 호스트 컴퓨팅 디바이스.
  4. 제2항에 있어서, 상기 호스트 컴퓨팅 디바이스와 상기 부속 디바이스에 관한 정보는 호스트 공개키와 상기 보안칩 인증서를 포함한 것인, 호스트 컴퓨팅 디바이스.
  5. 제4항에 있어서, 상기 페어링 인증서를 이용하여 상기 상호 인증을 완료하는 것은,
    상기 페어링 인증서를 상기 부속 디바이스에게 보내고,
    부속 디바이스 공개키를 통해 암호화된 프리 마스터 시크릿(pre-master secret)을 상기 부속 디바이스에게 보내고,
    상기 부속 디바이스로부터 응답을 수신하고,
    호스트가 획득한 페어링 개인키에 의해 암호화된 호스트 인증서 입증 메시지를 상기 부속 디바이스에게 보내며,
    상기 호스트 인증서 입증 메시지에 대한 응답을 상기 부속 디바이스로부터 수신하는 것을 포함한 것인, 호스트 컴퓨팅 디바이스.
  6. 제5항에 있어서, 상기 명령어들은 또한 상기 페어링 개인키 및 대응하는 페어링 공개키를 생성하도록 실행가능한 것인, 호스트 컴퓨팅 디바이스.
  7. 제5항에 있어서, 상기 페어링 개인키 및 대응하는 페어링 공개키는 미리구성된 것인, 호스트 컴퓨팅 디바이스.
  8. 제1항에 있어서,
    상기 상호 인증 세션의 초기 부분의 완료시, 상기 부속 디바이스가 상기 호스트 컴퓨팅 디바이스와 함께 이용되는 것이 허용되는지 여부를 결정하는 것
    을 더 포함하며,
    상기 부속 디바이스가 상기 호스트 컴퓨팅 디바이스와 함께 이용되는 것이 허용되지 않는 경우 상기 상호 인증은 거절되는 것인, 호스트 컴퓨팅 디바이스.
  9. 제8항에 있어서, 상기 방법은, 상기 부속 디바이스가 상기 호스트 컴퓨팅 디바이스와 함께 이용되는 것이 허용되지 않는 경우, 상기 원격 페어링 서비스를 활용하지 않고서 일방향 인증을 수행하는 것을 더 포함하는 것인, 호스트 컴퓨팅 디바이스.
  10. 제9항에 있어서, 상기 부속 디바이스가 상기 호스트 컴퓨팅 디바이스와 함께 이용되는 것이 허용되는지 여부를 결정하는 것은 상기 상호 인증 세션의 초기 부분 동안 상기 부속 디바이스로부터 수신된 구성 정보를 조사하는 것을 포함한 것인, 호스트 컴퓨팅 디바이스.
KR1020157023191A 2013-02-01 2014-01-29 컴퓨팅 디바이스 부속물 보안화 KR102221065B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/757,561 2013-02-01
US13/757,561 US9124434B2 (en) 2013-02-01 2013-02-01 Securing a computing device accessory
PCT/US2014/013465 WO2014120695A1 (en) 2013-02-01 2014-01-29 Securing a computing device accessory

Publications (2)

Publication Number Publication Date
KR20150113087A true KR20150113087A (ko) 2015-10-07
KR102221065B1 KR102221065B1 (ko) 2021-02-25

Family

ID=50231495

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157023191A KR102221065B1 (ko) 2013-02-01 2014-01-29 컴퓨팅 디바이스 부속물 보안화

Country Status (6)

Country Link
US (4) US9124434B2 (ko)
EP (1) EP2951976B1 (ko)
JP (1) JP6364026B2 (ko)
KR (1) KR102221065B1 (ko)
CN (1) CN105308925B (ko)
WO (1) WO2014120695A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180096699A (ko) * 2016-01-10 2018-08-29 애플 인크. 보안 디바이스 페어링
KR20190080285A (ko) 2017-12-28 2019-07-08 신진퓨처필름주식회사 태양광의 차폐 성능을 개선하기 위한 광학 구조체 및 이의 제조 방법

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9530294B2 (en) * 2013-12-23 2016-12-27 Intel Corporation Methods and apparatus for pairing items for security
US10464156B2 (en) * 2014-03-28 2019-11-05 Illinois Tool Works Inc. Systems and methods for pairing of wireless control devices with a welding power supply
US10776457B1 (en) * 2014-07-22 2020-09-15 Epic Games, Inc. System and method for preventing execution of unauthorized code
US9436819B2 (en) * 2014-09-23 2016-09-06 Intel Corporation Securely pairing computing devices
CN104618104B (zh) * 2014-12-15 2019-11-29 惠州Tcl移动通信有限公司 配件、电子设备及实现配件认证的系统
US9767293B2 (en) * 2015-02-13 2017-09-19 International Business Machines Corporation Content based hardware security module assignment to virtual machines
JP2017073611A (ja) * 2015-10-05 2017-04-13 任天堂株式会社 情報処理システム、無線通信チップ、周辺機器、サーバ、アプリケーションプログラム、および情報処理方法
JP6567939B2 (ja) 2015-10-05 2019-08-28 任天堂株式会社 情報処理システム、周辺機器、無線通信チップ、アプリケーションプログラム、および情報処理方法
JP6773401B2 (ja) 2015-10-05 2020-10-21 任天堂株式会社 周辺機器、無線通信チップ、アプリケーションプログラム、情報処理システム、および情報処理方法
GB2553295B (en) 2016-08-25 2020-12-16 Samsung Electronics Co Ltd Managing communications between a broadcast receiver and a security module
US11170095B2 (en) 2017-06-28 2021-11-09 GE Precision Healthcare LLC Catheter authorization system and method
US10546146B2 (en) 2017-06-28 2020-01-28 General Electric Company Catheter authorization system and method
EP3669563B1 (en) * 2017-08-14 2023-10-04 Kone Corporation Deployment of a device to a local network hosted by a host device
US11321466B2 (en) * 2018-03-09 2022-05-03 Qualcomm Incorporated Integrated circuit data protection
US10880935B2 (en) 2018-03-15 2020-12-29 Plantronics, Inc. Secure call endpoint pairing
DE102018127330A1 (de) 2018-11-01 2020-05-07 Infineon Technologies Ag System-on-Chip und Verfahren zum Betreiben eines System-on-Chip
US11805419B2 (en) * 2019-04-22 2023-10-31 Google Llc Automatically paired devices

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080196086A1 (en) * 2007-02-09 2008-08-14 Sony Corporation, A Japanese Corporation Method and apparatus for authorizing a communication interface
KR20090065336A (ko) * 2007-12-17 2009-06-22 한국전자통신연구원 디바이스 인증방법 및 그 시스템
US20110126005A1 (en) * 2009-11-24 2011-05-26 Microsoft Corporation Dynamic configuration of connectors for system-level communications
US20110167262A1 (en) * 2010-01-04 2011-07-07 Pillar Ventures, Llc Identification and authorization of communication devices
US20110271296A1 (en) * 2006-08-18 2011-11-03 Sony Electronics Inc. Automatically reconfigurable multimedia system with interchangeable personality adapters

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6816968B1 (en) 1998-07-10 2004-11-09 Silverbrook Research Pty Ltd Consumable authentication protocol and system
US8868914B2 (en) * 1999-07-02 2014-10-21 Steven W. Teppler System and methods for distributing trusted time
FR2806858B1 (fr) 2000-03-22 2002-05-03 France Telecom Procede cryptographique de protection contre la fraude
AUPR966001A0 (en) * 2001-12-20 2002-01-24 Canon Information Systems Research Australia Pty Ltd A microprocessor card defining a custom user interface
US20060106836A1 (en) * 2002-06-07 2006-05-18 Madoka Masugi Data processing system, data processing device, data processing method, and computer program
US20070056042A1 (en) * 2005-09-08 2007-03-08 Bahman Qawami Mobile memory system for secure storage and delivery of media content
WO2007108114A1 (ja) * 2006-03-22 2007-09-27 Matsushita Electric Industrial Co., Ltd. ドメイン参加方法、属性証明書選択方法、通信端末、icカード、ce機器、属性証明書発行局およびコンテンツサーバ
JP2008278086A (ja) * 2007-04-27 2008-11-13 Matsushita Electric Ind Co Ltd データ処理システムおよび電子証明書の生成方法
EP2034661A1 (en) * 2007-09-07 2009-03-11 Deutsche Telekom AG Method and system for distributed, localized authentication in the framework of 802.11
CN101464934B (zh) * 2007-12-18 2010-12-22 中国长城计算机深圳股份有限公司 一种计算机平台与存储设备相互绑定、认证方法及计算机
US8977788B2 (en) * 2008-08-13 2015-03-10 Intel Corporation Observing an internal link via an existing port for system on chip devices
US8214890B2 (en) * 2008-08-27 2012-07-03 Microsoft Corporation Login authentication using a trusted device
JP2010061490A (ja) 2008-09-05 2010-03-18 Nec Electronics Corp 付属品認証システム、付属品認証方法、管理サーバー
US8208853B2 (en) 2008-09-08 2012-06-26 Apple Inc. Accessory device authentication
US20100153709A1 (en) * 2008-12-10 2010-06-17 Qualcomm Incorporated Trust Establishment From Forward Link Only To Non-Forward Link Only Devices
KR101255987B1 (ko) * 2008-12-22 2013-04-17 한국전자통신연구원 Dcas 시스템의 sm과 tp간의 페어링 방법, 이를 이용한 셋탑박스 및 인증장치
US9282106B2 (en) 2009-02-20 2016-03-08 Comcast Cable Communications, Llc Authenticated communication between security devices
US20110093714A1 (en) 2009-10-20 2011-04-21 Infineon Technologies Ag Systems and methods for asymmetric cryptographic accessory authentication
JP5552541B2 (ja) * 2009-12-04 2014-07-16 クリプトグラフィ リサーチ, インコーポレイテッド 検証可能な耐漏洩性暗号化および復号化
WO2011109460A2 (en) * 2010-03-02 2011-09-09 Liberty Plug-Ins, Inc. Method and system for using a smart phone for electrical vehicle charging
TW201201041A (en) 2010-06-21 2012-01-01 Zhe-Yang Zhou Data security method and system
CN102546584B (zh) * 2010-11-01 2015-05-27 微软公司 附件特定的用户体验的调用
EP2469902B1 (en) 2010-12-23 2015-12-16 BlackBerry Limited Mobile device for authenticating a device accessory
US9557981B2 (en) * 2011-07-26 2017-01-31 Ford Global Technologies, Llc Method and apparatus for automatic module upgrade
US20130031261A1 (en) * 2011-07-29 2013-01-31 Bradley Neal Suggs Pairing a device based on a visual code
US8494165B1 (en) * 2012-01-18 2013-07-23 Square, Inc. Secure communications between devices using a trusted server
FI124237B (fi) * 2012-04-05 2014-05-15 Tosibox Oy Tietoturvallinen etäyhteydellä suoritettava toimintaoikeuden myöntömenettely
US20140068744A1 (en) * 2012-09-06 2014-03-06 Plantronics, Inc. Surrogate Secure Pairing of Devices
US9397980B1 (en) * 2013-03-15 2016-07-19 Microstrategy Incorporated Credential management
US9716708B2 (en) * 2013-09-13 2017-07-25 Microsoft Technology Licensing, Llc Security certificates for system-on-chip security
US9436819B2 (en) * 2014-09-23 2016-09-06 Intel Corporation Securely pairing computing devices
US9760501B2 (en) * 2014-11-05 2017-09-12 Google Inc. In-field smart device updates
US20160134621A1 (en) * 2014-11-12 2016-05-12 Qualcomm Incorporated Certificate provisioning for authentication to a network
US10250590B2 (en) * 2015-08-31 2019-04-02 Samsung Electronics Co., Ltd. Multi-factor device registration for establishing secure communication

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110271296A1 (en) * 2006-08-18 2011-11-03 Sony Electronics Inc. Automatically reconfigurable multimedia system with interchangeable personality adapters
US20080196086A1 (en) * 2007-02-09 2008-08-14 Sony Corporation, A Japanese Corporation Method and apparatus for authorizing a communication interface
KR20090065336A (ko) * 2007-12-17 2009-06-22 한국전자통신연구원 디바이스 인증방법 및 그 시스템
US20110126005A1 (en) * 2009-11-24 2011-05-26 Microsoft Corporation Dynamic configuration of connectors for system-level communications
US20110167262A1 (en) * 2010-01-04 2011-07-07 Pillar Ventures, Llc Identification and authorization of communication devices

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180096699A (ko) * 2016-01-10 2018-08-29 애플 인크. 보안 디바이스 페어링
US10951419B2 (en) 2016-01-10 2021-03-16 Apple Inc. Secure device pairing
US11601287B2 (en) 2016-01-10 2023-03-07 Apple Inc. Secure device pairing
KR20190080285A (ko) 2017-12-28 2019-07-08 신진퓨처필름주식회사 태양광의 차폐 성능을 개선하기 위한 광학 구조체 및 이의 제조 방법

Also Published As

Publication number Publication date
US20150358169A1 (en) 2015-12-10
US9660815B2 (en) 2017-05-23
EP2951976A1 (en) 2015-12-09
CN105308925A (zh) 2016-02-03
EP2951976B1 (en) 2018-10-17
JP2016510564A (ja) 2016-04-07
US20170230356A1 (en) 2017-08-10
US9948636B2 (en) 2018-04-17
US10284544B2 (en) 2019-05-07
JP6364026B2 (ja) 2018-07-25
US20180227295A1 (en) 2018-08-09
KR102221065B1 (ko) 2021-02-25
US9124434B2 (en) 2015-09-01
CN105308925B (zh) 2019-04-09
US20140223174A1 (en) 2014-08-07
WO2014120695A1 (en) 2014-08-07

Similar Documents

Publication Publication Date Title
KR102221065B1 (ko) 컴퓨팅 디바이스 부속물 보안화
US9875368B1 (en) Remote authorization of usage of protected data in trusted execution environments
JP6719079B2 (ja) 情報機器、データ処理システム、データ処理方法およびコンピュータプログラム
US11625460B1 (en) Security platform
US20190050598A1 (en) Secure data storage
US9858401B2 (en) Securing transactions against cyberattacks
JP2022527757A (ja) 物理複製困難関数を使用したコンピューティングデバイスのidの生成
JP2019531567A (ja) 装置認証のシステム及び方法
CN109313690A (zh) 自包含的加密引导策略验证
TW202038123A (zh) 使用密鑰之身份驗證
CN103051451A (zh) 安全托管执行环境的加密认证
US11418499B2 (en) Password security
TWI679551B (zh) 進程的身份認證方法和裝置
WO2020186457A1 (zh) 网络摄像机的认证方法和装置
US11615207B2 (en) Security processor configured to authenticate user and authorize user for user data and computing system including the same
CN106992978B (zh) 网络安全管理方法及服务器
JP2010182070A (ja) 情報処理装置及び情報処理方法及びプログラム
US9177123B1 (en) Detecting illegitimate code generators
CN103827877A (zh) 用于剽窃保护的方法以及执行装置
CN110602058B (zh) 芯片激活装置、方法及计算机可读存储介质
CN117349854A (zh) 固态硬盘的防泄漏方法、装置、电子设备及存储介质
CN111385793A (zh) 指令发送方法、系统、电子设备及存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant