JP2016510564A - コンピューティングデバイスアクセサリをセキュアにすること - Google Patents

コンピューティングデバイスアクセサリをセキュアにすること Download PDF

Info

Publication number
JP2016510564A
JP2016510564A JP2015556087A JP2015556087A JP2016510564A JP 2016510564 A JP2016510564 A JP 2016510564A JP 2015556087 A JP2015556087 A JP 2015556087A JP 2015556087 A JP2015556087 A JP 2015556087A JP 2016510564 A JP2016510564 A JP 2016510564A
Authority
JP
Japan
Prior art keywords
accessory device
host computing
computing device
host
pairing
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2015556087A
Other languages
English (en)
Other versions
JP6364026B2 (ja
JP2016510564A5 (ja
Inventor
クリシュナムルティ,ハリシュ
ジュ,ミン
トーベン ニールセン,カート
トーベン ニールセン,カート
モリス,マシュー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2016510564A publication Critical patent/JP2016510564A/ja
Publication of JP2016510564A5 publication Critical patent/JP2016510564A5/ja
Application granted granted Critical
Publication of JP6364026B2 publication Critical patent/JP6364026B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/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
    • 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]
    • 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

コンピュータアクセサリデバイスのセキュリティに関する種々の実施形態が開示される。たとえば、1つの非限定的実施形態では、アクセサリデバイスとの相互認証セッションの初期部分を実施し、ホストコンピューティングデバイスおよびアクセサリデバイスに関する情報をコンピュータネットワークを介してリモートペアリングサービスに送るように構成される、ホストコンピューティングデバイスが提供される。ホストコンピューティングデバイスは、応答として、リモートペアリングサービスから、リモートペアリングサービスのプライベート鍵を用いて暗号化されたペアリング証明書を受け取り、リモートペアリングサービスからのペアリング証明書を使用して、アクセサリデバイスとの相互認証を完了するようにさらに構成される。

Description

[0001] 偽造コンピューティングデバイスアクセサリは、正当なアクセサリの製造者および/または販売者に悪影響を与えることがある。したがって、コンピュータアクセサリ偽造の防止を支援するために種々の戦略が使用される。たとえば、いくつかの偽造防止策では、各真正なデバイス上のセキュリティチップを利用する(このセキュリティチップは、ホストコンピュータがデバイスを認証することを可能にする)。
[0002] 真正なアクセサリデバイスであっても、不正な使用の形態に対して脆弱なことがある。たとえば、いくつかのアクセサリデバイスでは、より高価なデバイスがより多くの使用可能な付加価値機能を有するように、使用可能な付加価値機能が異なる様々な価格帯で入手可能な場合がある。これにより、消費者がその必要および/または所望に応じて適切なまたは望ましい製品を選ぶことが可能になり得るが、偽造者および/またはハッカーがより低コストのモデルのデバイス上で許可なしに機能をロック解除するための機会を提供することにもなり得る。
[0003] アクセサリデバイスの部品の製造からアクセサリの消費者の使用に至るまで、コンピュータアクセサリデバイスのセキュリティに関する種々の実施形態が開示される。たとえば、1つの非限定的実施形態では、アクセサリデバイスとの相互認証セッションの初期部分を実施し、ホストコンピューティングデバイスおよびアクセサリデバイスに関する情報をコンピュータネットワークを介してリモートペアリングサービスに送るように構成される、ホストコンピューティングデバイスが提供される。ホストコンピューティングデバイスは、リモートペアリングサービスから、リモートペアリングサービスのプライベート鍵を用いて暗号化されたペアリング証明書を受け取り、リモートペアリングサービスからのペアリング証明書を使用して、アクセサリデバイスとの相互認証を完了するようにさらに構成される。
[0004] この概要は、以下の発明を実施するための形態でさらに説明される概念から選択したものを簡略化した形態で紹介するために設けられている。この概要は、特許請求される主題の主要な特徴または本質的特徴を特定するものではなく、特許請求される主題の範囲を限定するために使用するものでもない。さらに、特許請求される主題は、本開示の任意の部分に記載された任意またはすべての欠点を解決する実装形態に限定されない。
[0005]コンピューティングデバイスおよびアクセサリデバイスの例示的実施形態を示す図である。 [0006]アクセサリデバイス部品製造と最終使用との間の種々の例示的工程を概略的に示すブロック図である。 [0007]部品製造、部品送達、およびデバイス製造においてアクセサリデバイスをセキュアにするための方法の実施形態のフロー図である。 [0008]アクセサリデバイス組み立て中にアクセサリデバイス上のセキュリティチップをアクティブにするための方法の実施形態を示すフロー図である。 [0009]サードパーティリモートペアリングサービスを用いてアクセサリデバイスおよびホストコンピューティングシステムを相互に認証するための方法の実施形態を示すフロー図である。 サードパーティリモートペアリングサービスを介してアクセサリデバイスおよびホストコンピューティングシステムを相互に認証するための方法の実施形態を示すフロー図である。 [0010]相互認証の際の図5Aおよび図5Bの実施形態のアクセサリデバイス、ホストコンピューティングデバイス、およびリモートペアリングサービスの実施形態を概略的に示すブロック図である。 [0011]アクセサリデバイスを認証した後にアクセサリデバイスをロック解除するための方法の実施形態を示すフロー図である。 [0012]図7のアクセサリデバイスの実施形態を概略的に示すブロック図である。 [0013]コンピューティングシステムの例示的実施形態を示すブロック図である。
[0014] 前述のように、いくつかのコンピュータアクセサリ偽造防止方式は、各真正なデバイス上のセキュリティチップを利用するものであり、このセキュリティチップは、ホストコンピュータがデバイスを認証することを可能にする。しかしながら、そのような偽造防止方式は、アクセサリが接続されるホストコンピューティングデバイスのいかなる知識もなしにアクセサリを認証することがある。さらに、セキュリティチップ自体が盗まれるまたは紛失した場合、セキュリティチップが偽造デバイスを作製するために使用されるおそれがある。
[0015] さらに、前述のように、真正なアクセサリデバイスであっても、不正な使用の形態に対して脆弱なことがある。たとえば、いくつかのアクセサリデバイスでは、より高価なデバイスがより多くの使用可能な付加価値機能を有することができるように、使用可能な付加価値機能が異なる様々な価格帯で入手可能な場合がある。これにより、消費者がその必要および/または所望に応じて適切なまたは望ましい製品を選ぶことが可能になり得るが、偽造者および/またはハッカーがより低コストのモデルのデバイス上で許可なしに機能をロック解除して支払いなしに付加価値機能を得る機会を提供することにもなり得る。
[0016] 付加価値機能をセキュアにするための以前の解決策は、ファームウェア更新の前にファームウェアイメージの有効性を検査するために秘密鍵の使用に依拠して、不正な更新を防止することがある。しかしながら、各ファームウェアイメージに署名するのに単一の鍵を用いることは、単一の鍵が知られることになった場合、すべてのシステムが危険にさらされることになり得る。
[0017] したがって、アクセサリの偽造の作製および/または使用の防止に関する種々の問題に対処する実施形態を、本明細書で開示する。たとえば、紛失したまたは盗まれたセキュリティチップの使用を防止するために、いくつかの実施形態は、紛失したまたは盗まれたセキュリティチップが偽造デバイスの作製に使用できないようにセキュリティチップがアクセサリデバイスに組み込まれる工場における個別のセキュリティチップのアクティブ化を対象とする。
[0018] 加えて、実施形態は、コンピューティングデバイスアクセサリおよびホストコンピューティングデバイスの相互認証を対象とする。これは、コンピュータアクセサリのSKU(stock keeping unit:最小在庫管理単位)の識別を容易にすることができる。たとえば、特定のホストとの使用を意図したSKUを認証するために、相互認証を使用することができる一方、異なるホストを意図した別のSKUを認証するために、片方向認証を使用することができる。これはまた、特定のアクセサリデバイスと特定のホストコンピューティングシステムとの間の「ペアリング」機能を可能にすることができる。より詳細に後述されるように、そのようなペアリングは、許可されていないアクセサリおよび/または危険にさらされたコンソールがエコシステムの他の部分と共に動作することを制限されるように、リモートサードパーティサービスによって制御され得る。
[0019] さらに他の実施形態は、付加価値機能の不正なロック解除を防止するためのアクセサリデバイスのセキュアなロック解除を対象とする。より詳細に後述されるように、これらの実施形態では、セキュアなハードウェアモジュールをセキュアではないチップ(たとえば、システムオンチップ(SOC))上で利用して、SOCチップ上のファームウェアではなくセキュリティチップがロック解除プロセスを制御するように、セキュリティチップとSOCとの間のセキュアな相互作用を実現することができる。これは、SOC設計にハードウェアセキュリティモジュールを組み込むことによって、セキュアなSOCチップを作製するセキュリティの専門知識を持たないSOCの製作者を可能にすることができる。
[0020] 図1は、本開示の実施形態によるコンピューティングシステムおよびアクセサリデバイスのための例示的使用環境100を示す。使用環境100は、表示デバイス104と通信するビデオゲームコンソールの形態でコンピューティングデバイス102を備え、コンピューティングデバイス102は、表示デバイス104にビデオコンテンツを出力することができるようにされている。ユーザ106は、1つまたは複数の使用環境センサを介してユーザ106を感知するように構成されたセンサシステムの形態のアクセサリデバイス108を介して、コンピューティングデバイス102と対話するものとして示されている。アクセサリデバイス108は、2次元画像センサ(たとえば、RGBもしくはグレースケールセンサ)、深度画像センサ(たとえば、飛行時間もしくは構造化光深度センサ)、ステレオカメラシステム、1つまたは複数のマイク(たとえば、指向性マイクアレイ)、および/または任意の他の適切なセンサを含むがこれらに限定されない、任意の適切な1つまたは複数のセンサを含むことができる。本明細書ではホストビデオゲームコンソールおよびアクセサリセンサシステムの文脈で説明しているが、開示される実施形態は、任意の適切なホストおよびアクセサリシステムに適用され得ることは理解されよう。
[0021] 図2は、アクセサリデバイスの製造および使用の例示的方法200の種々の工程を示すブロック図である。まず、方法200は、部品製造者において、202および204でそれぞれ示されるように、アクセサリデバイスのセキュリティチップおよび他の部品を製造することを含む。種々の部品は、異なる場所で作製されてよく、次いで、アクセサリデバイス製作のために組立て施設に輸送され得ることは理解されよう。そして、方法200は、206で示されるように、アクセサリを組立てるために使用されるセキュリティチップおよび他の部品をアクセサリデバイス製造者へ輸送することを含む。前述のように、セキュリティチップは、アクセサリデバイス製造施設でアクティブにされるまで非アクティブであるように製造することができ、したがって、セキュリティチップは、アクセサリデバイス製造の前に紛失したまたは盗まれた場合に偽造アクセサリで使用することができない。
[0022] アクセサリデバイス製造施設において、部品製造者から受け取られた部品からアクセサリが製造される。後述するように、各アクセサリのためのセキュリティチップは、そのチップを組み込むアクセサリの製造中または製造後にアクティブにすることができる。次いで、製造されたアクセサリは、それぞれ208および210で、アクセサリの設計者/販売者に移送され、そして消費者に販売される。次いで、消費者が、正規のアクセサリデバイスを適切なホストデバイスに接続することができる。認証およびロック解除されると、使用し楽しむために認証されアクティブにされたアクセサリデバイスが得られる。
[0023] 図3は、アクセサリデバイス製造の前に紛失した、盗まれた、または他の形で不適切に取得されたセキュリティの不正な使用を防止するための方法300の実施形態を示す。簡単に言えば、方法300はプライベート/公開鍵を利用し、公開鍵はセキュリティチップ製造者に提供され、プライベート鍵はセキュアな条件下でアクセサリデバイス製造者に提供される。プライベート鍵は、本明細書では「セキュリティモジュール」と呼ばれる、適切なセキュリティ特性を有する(たとえば、リバースエンジニアリングが難しい)スマートカードまたは他のコンピューティングデバイスの形態で、セキュリティチップ製造者へ提供することができる。さらに、セキュリティモジュールは、該セキュリティモジュールによってアクティブにできるセキュリティチップの数を制限するように実行可能なコードを含むことができる。このようにして、たとえばセキュリティモジュールに記憶されたプライベート鍵の違反等によるセキュリティ違反は、許可されたアクティブ化の数に制限することができ、したがってセキュリティ侵害の影響を制限することができる。さらに、いくつかの実施形態では、セキュリティモジュールは、アクセサリデバイスの異なるSKUに対する異なるプライベート鍵(それぞれが対応する公開鍵を伴う)を含むことができる。
[0024] 方法300は、セキュリティチップ製造者、アクセサリデバイス製造者、およびデバイス設計者/販売者のそれぞれで行われるプロセスを示し、デバイス設計者/販売者は、販売用のアクセサリデバイスを製造するためにアクセサリデバイス製造者を利用する。方法300は、302で、アクセサリデバイスセキュリティチップについて、公開鍵を、またはいくつかの実施形態ではSKU毎の公開鍵をセキュリティチップ製造者に送ることを含み、304で、セキュリティチップ製造者において公開鍵を受け取ることを含む。方法300は、306で、公開鍵毎のプライベート鍵を有するセキュリティモジュールをアクセサリデバイス製造者に送ることをさらに含み、アクセサリデバイス製造者において、308でセキュリティモジュールが受け取られる。
[0025] 方法300は、310で、セキュリティチップを製造することをさらに含み、各セキュリティチップは、適切な公開鍵(たとえば、アクセサリデバイスの意図されたSKUに対する適正な公開鍵)を含む。セキュリティチップは、チップファームウェアが当初は「Activate(アクティブ化)」コマンドのみに応答するように、非アクティブ状態にあるように製造され、アクティブ化が完了するまで、アクティブ化プロセスで使用される動作以外の他のセキュリティチップ動作を行わない。セキュリティチップを組み込んだアクセサリデバイスは、セキュリティチップがアクティブにされアクセサリデバイスが認証されるまでは動作しないことは理解されよう。
[0026] 適切な公開鍵を有する非アクティブのセキュリティチップを製造すると、方法300は、312で、セキュリティチップをアクセサリデバイス製造者に送ることを含み、アクセサリデバイス製造者において、314でセキュリティチップが受け取られる。次に、316で、方法300は、アクセサリデバイスを組み立て、次いでセキュリティチップをアクティブにすることを含む。例示的セキュリティチップアクティブ化プロセスの詳細については、図4を参照して後述する。アクセサリデバイスの製造が完了しセキュリティチップをアクティブにすると、方法300は、318で、アクセサリデバイスを設計者/販売者に送ることを含み、設計者/販売者は、320でデバイスを消費者に販売する。
[0027] 前述のように、いくつかの実施形態では、セキュリティモジュールまたは他のプライベート鍵ストレージデバイスは、セキュリティモジュールによって実行できるセキュリティチップロック解除の数を制限する、実行可能コマンドを含むことができる。したがって、許可された数のセキュリティチップをアクティブにした後、方法300は、322で、そのセキュリティモジュールに対する許可されたセキュリティチップアクティブ化の限度に達することを含む。この例では、新しいセキュリティモジュールがアクセサリデバイス設計者/販売者(もしくは、セキュリティチップ公開/プライベート鍵を管理する他の当事者)から取得されるか、または現在のセキュリティモジュールおよび現在の公開/プライベート鍵の限度が増大されない限り、追加のセキュリティチップがアクティブにされることはない。セキュリティモジュール毎のアクティブにできるセキュリティチップの数に限度を課すことにより、セキュリティモジュールに対するプライベート鍵の違反の悪影響を制限するのを助けることができる。
[0028] いくつかの実施形態では、セキュアな通信チャネルを使用して、セキュリティチップアクティブ化の限度の更新をセキュリティモジュールに送信することができる。したがって、方法300は、(セキュリティモジュールの違反が発生していないことを想定して)そのセキュリティモジュールに対するチップアクティブ化限度を増大する命令を送信することを含む。次いで、方法300は、326で、セキュリティモジュールにおける限度増大を受け取り、328で、追加のセキュリティチップをアクティブにすることを含む。セキュリティモジュール上のプライベート鍵に違反していると決定された場合、違反されたプライベート鍵の代わりに新しい公開/プライベート鍵を生成して、その新しいプライベート鍵を新しいセキュリティモジュールを介してアクセサリデバイス製造者に転送することができることは理解されよう。
[0029] セキュリティチップは、アクセサリ製造の場所で任意の適切なやり方でアクティブにすることができる。図4は、アクセサリデバイス製造者の場所でセキュリティチップをアクティブにするための方法の例示的実施形態を示すフロー図を示す。図4は、セキュリティチップ、アクセサリデバイス、およびアプリケーションのそれぞれで発生するプロセスを示し、アプリケーション(たとえば、コンピュータ上で実行されているスマートカードインターフェースアプリケーション)は、セキュリティモジュールとの通信を可能にするように構成されている。
[0030] 方法400は、402で、チップ識別番号、およびいくつかの実施形態ではセキュリティチップのSKUを求めて、アプリケーションからの要求をセキュリティチップに送ることを含む。セキュリティチップは、404で要求を受け取る。応答して、セキュリティチップは、406で乱数を生成し、408で、乱数、チップ識別番号、およびSKUをアプリケーションに送る。アプリケーションは、410で、この情報を受け取ってセキュリティモジュールに転送し、セキュリティモジュールにおいて、412でこの情報が受け取られる。受信すると、セキュリティモジュールは、414で、適切なプライベート鍵(SKUに対応するプライベート鍵)を用いて乱数、チップID、およびSKUに署名(サイン)し、416で、署名した値をアプリケーションに送る。セキュリティモジュールはさらに、417で示されるように、アクティブ化限度カウンタを減分(または特定の実装形態によっては増分)することができる。他の実施形態では、アクティブ化限度カウンタは、チップアクティブ化が完了した後に減分され得る。
[0031] 続いて、方法400は、418で、署名された値を受け取り、署名された値をセキュリティチップに転送することを含む。次に、セキュリティチップは、420で、製造の際にセキュリティチップ上に含められた公開鍵を使用して、署名された値を検証し、次いで、422で、署名された値が、前もってセキュリティモジュールに送られた適正な値と一致するかどうかを決定する。値が適正でない場合、方法400は、424でセキュリティチップをアクティブにすることを含む。他方で、値が一致しない場合、方法400は、426でセキュリティチップをアクティブにしないことを含む。
[0032] セキュリティチップがアクティブにされた後、アクセサリデバイスは消費者に販売される準備ができる。前述のように、アクセサリデバイスは、追加のセキュリティ条件が満たされるまでアクセサリデバイスが使用されるのを防止するセキュリティ手段を含むことができる。たとえば、アクセサリデバイスは、それが認証されるまでは最初にホストデバイスに接続されたときに機能しないように構成され得る。いくつかの実施形態では、アクセサリデバイスがホストコマンドまたはメッセージに単に応答するように、そのような認証プロセスをホストから駆動することができる。たとえば、コマンドに応じて、アクセサリデバイスは、検証のためにホストにデータを送るか、またはそれが適切な認証プロトコルに正しく従っていることを検証するためにホストから送られたデータを処理する。認証が正常に完了した場合のみ、デバイスは通常の機能を開始することになる。
[0033] いくつかの例では、認証は、アクセサリデバイスがホストを認証しない片方向認証であり得る。他の実施形態では、認証は、ホストとアクセサリデバイスが互いに認証するように相互であり得る。これは、アクセサリデバイスがそのホストと特定的に関連付けられるように、ホストとアクセサリデバイスの「ペアリング」を確立することを可能にすることができる。
[0034] 図5Aおよび図5Bは、ホストコンピューティングデバイスおよびアクセサリデバイスを相互に認証するための方法500の実施形態を示すフロー図を示す。適切なホストおよびアクセサリデバイスの例は、請求項1に示されるビデオゲームコンソールおよびセンサシステムを含むが、これらに限定されない。簡単に図6を参照すると、方法500は、セキュリティチップ602を備えるアクセサリデバイス600と、ホストコンピューティングデバイス604と、相互認証を仲介するリモートペアリングサービス606とのそれぞれで行われるプロセスを示している。相互認証プロトコルの種々の部分がアクセサリデバイスによって行われるものとして説明され得るが、メッセージを処理するエンティティは実際にはデバイス内部のセキュリティチップとすることができ、アクセサリデバイスファームウェアはホストとセキュリティチップの間で単にメッセージを輸送することは理解されよう。これは、中間者攻撃を防止するのを助けることができる。
[0035] 方法502は、502で、「ホストハロー(host hello)」メッセージを、ホストコンピューティングデバイスからアクセサリデバイスに送ることを含み、ここで、ホストハローメッセージはランダムノンス(random nonce)を含む。アクセサリデバイスは、504で、ホストハローメッセージを受け取り、506で、別のランダムノンスを有する「デバイスハロー(device hello)」メッセージを送り、デバイスハローメッセージは、508でホストによって受け取られる。さらに、510で、アクセサリデバイスはまた、セキュリティチップ証明書をホストデバイスに送り、512で、セキュリティチップ証明書は、ホストによって受け取られ、(たとえば、デバイス証明書又はセキュリティチップ証明書を発行した認証局と連絡することにより)検証されて、セキュリティチップ証明書が有効であることが確認される。さらに、いくつかの実施形態では、ホストは、認証のこの初期部分における相互認証セッションの初期部分においてアクセサリデバイスからコンフィギュレーション情報を受け取り、コンフィギュレーション情報を検査することにより、アクセサリデバイスがホストデバイスと共に使用されるのを許可されないことが決定された(たとえば、アクセサリデバイスが不適正なSKUである)場合、認証を拒否することができる。
[0036] 次に、ホストおよびリモートペアリングサービスは、513および514で示されるように、セキュアな接続を確立してペアリングプロセスを開始する。次いで、ホストは、516で示されるように、ペアリング機能を支援するためのペアリングプライベート/公開鍵を取得する。ペアリングプライベート/公開鍵ペアは、ペアリングプロセスの一部として生成する、または事前に構成することができる。プライベート/公開鍵ペアを取得した後、ホストは、518で、セキュリティチップ証明書およびペアリングプライベート鍵をリモートペアリングサービスに送り、それらは、520で受け取られる。
[0037] この情報を受信すると、リモートペアリングサービスは、522で、ペアリングがホストおよびアクセサリデバイスについて許可されるべきかどうかを決定することができる。たとえば、いずれかのデバイスが危険にさらされていることが知られている場合、アクセサリがホストに対する不適正なSKUである場合、および/または他の潜在的問題が知られている場合、524で示されるように、ペアリングを拒否することができる。他方で、522で、ホストとアクセサリデバイスの間のペアリングが許可されることが決定された場合、リモートペアリングサービスは、526で、ペアリング証明書をホストに送ることができ、ここで、ペアリング証明書は、ペアリング公開鍵、および(516でホストによって取得されたペアリング鍵から区別される)ペアリングサービスのプライベート鍵を用いてすべて署名されたセキュリティチップ証明書のダイジェストを含む。リモートペアリングサービスはまた、527で示されるように、ホストデバイスおよびアクセサリデバイスの1つまたは複数を伴う将来のペアリングが許可されるかどうかを決定する際に使用するためのホストデバイスおよびアクセサリデバイスに関する識別情報を記憶することができる。
[0038] ホストは、528で、ペアリング証明書を受け取り、次いで530で、ペアリング証明書を「ホスト証明書(host certificate)」としてアクセサリデバイスに転送する。アクセサリデバイスは、532で、ホスト証明書を受け取り、534で、リモートペアリングサービスの公開鍵を用いてホスト証明書を検証する。この公開鍵は、526でペアリング証明書を暗号化するために使用されたプライベート鍵に対応する。公開鍵を用いてホスト証明書を検証した後、536で示されるように、アクセサリデバイスは、ホスト証明書に含まれる情報を検証することができる。ペアリング証明書内の情報が検証されない場合、ペアリングプロセスを中止することができる。
[0039] ホストはまた、538で、「プリマスターシークレット(pre-master secret)」を生成し、アクセサリデバイス上のセキュリティチップの公開鍵を用いてプリマスターシークレットを暗号化し、したがって、プライベート鍵保有者(たとえば、アクセサリデバイス上のセキュリティチップ)だけがそれを復号することができる。プリマスターシークレットは、乱数など任意の適切な情報を含むことができる。ホストは、541で、プリマスターシークレットをアクセサリデバイスに送り、アクセサリデバイスは、542で、プリマスターシークレットを受け取る。ホストはさらに、544で、プリマスターシークレット、およびホスト/アクセサリ「ハロー(hello)」メッセージ交換中に交換された2つのノンスを用いて、「マスターシークレット(master secret)」を生成する。
[0040] プリマスターシークレットを受信すると、アクセサリデバイスは、548で示されるように、アクセサリデバイスプライベート鍵を用いてプリマスターシークレットを復号することができ、550で示されるように、この値および2つの「ハロー」ノンスからマスターシークレットを導き出すことができる。次に、ホストは、552で、「ホスト証明書検証(host certificate verify)」メッセージを生成し、516で取得したプライベートペアリング鍵を用いてメッセージに署名する。次いで、ホストは、554で、ホスト証明書検証メッセージをアクセサリデバイスに送る。アクセサリデバイスは、556で、ホスト証明書検証メッセージを受け取り、558で、ホスト証明書に含まれたペアリング公開鍵を用いて、ホスト証明書検証メッセージを検証する。これは、ホスト証明書内のペアリング公開鍵が、リモートサービスにペアリング公開鍵を提供した同じデバイスによって送られたということを、アクセサリデバイスによって確認することを可能にする。
[0041] 続けて、560で、ホストは、「ホスト完了(host finished)」メッセージを生成してアクセサリデバイスに送り、アクセサリデバイスは、562でメッセージを受け取る。同様に、564で、アクセサリデバイスは、「デバイス完了(device finished)メッセージ」を生成してアクセサリデバイスに送り、このメッセージは、566でホストによって受け取られる。相互認証プロセスが完了すると、アクセサリデバイスは、通常の機能をロック解除して開始する。方法500の相互認証プロセスは、TLS(トランスポート層セキュリティ)相互認証など他の相互認証プロセスに優る利点を提供することができる。たとえば、方法500を用いると、各ホストおよびデバイスペアはそれ自体の鍵を有するので、1つを危険にさらしても、エコシステムの大規模な破壊につながらない。さらに、ペアリングがオンラインサービスによって制御されるので、オフライン攻撃はプロセスに対して成功することがない。加えて、セキュリティチップそれ自体がアクセサリデバイス側のプロセスを制御するので、セキュリティチップは様々な異なるデバイスで使用することができ、したがって、認証プロセスを他のアクセサリに適合することが可能である。
[0042] 前述のように、いくつかの例では、片方向認証がアクセサリデバイスのロック解除を認証するために利用され得る。そのような認証は、図5A〜5Bを参照して説明した認証と類似し得るが、リモートサービスおよびペアリング証明書に関する工程が省略されており、したがって、プリマスターシークレットメッセージが、ホストでセキュリティチップ証明書を受け取り検証した後にホストからアクセサリに送られる最初のメッセージである。さらに、いくつかの実施形態では、異なるアクセサリSKUが異なる認証プロセスを利用することができる。たとえば、特定のホストとの使用を意図したSKUは相互認証を利用することができる一方、より広い範囲のコンピューティングデバイス(たとえば、PCタイプデバイス)との使用を意図したSKUは片方向認証を利用することができる。そのような実施形態では、デバイスが不適正なSKUであるためにホストが相互認証を拒否した場合、ホストは、アクセサリデバイスの使用を可能にするために片方向認証を行うことができる。任意の適切な片方向認証プロセスが使用されてよいことは理解されよう。
[0043] 図7は、認証後にアクセサリデバイスをロック解除するための方法700の例示的実施形態を示すフロー図を示す。簡単に図8を参照すると、方法700は、アクセサリデバイス804内のセキュリティチップ800およびシステムオンチップ(SOC)802で行われるプロセスを示す。SOCは、セキュアでないファームウェア805と、セキュリティチップ800のセキュアな領域をSOC802内へ拡張するためにSOC上のハードウェアとして実装されたセキュリティハードウェアモジュール806とを備える。セキュリティハードウェアモジュール806は、セキュリティ状態情報をセキュリティチップから直接的にセキュリティハードウェアモジュールにセキュアに転送する能力を追加するために、任意の所望の非セキュア部品に組み込まれてよい。そして、セキュリティハードウェアモジュールはセキュリティ状態を使用して、SOC内の特定の機能を有効または無効にすることができる。
[0044] セキュリティハードウェアモジュールを定義することにより、SOCのセキュリティを確証するための作業の範囲が低減する。SOCの大部分は、信頼できないと見なされ得るが、一方セキュリティハードウェアモジュール(SecurityHardwareModule)は信頼される。さらに、セキュリティハードウェアモジュールのハードウェアブロックの使用は、セキュアな製品の開発の技術的能力および/または経験を有することがないベンダーによって定義されたデバイスに、このハードウェアブロックを組み込むことを可能にすることができる。
[0045] セキュリティハードウェアモジュール806は、任意の適切な部品を備えることができる。たとえば、図示の実施形態では、セキュリティハードウェアモジュール806は、乱数発生器808または他の適切なエントロピー源、ハードウェアスニッフィングインターフェース(hardware sniffing interface)810、および不揮発性メモリ812を備える。乱数発生器808は、セキュリティチップ800に送るためのチャレンジメッセージを定式化する際に使用することができる。ハードウェアスニッフィングインターフェース810は、セキュリティハードウェアモジュール806で受け取られたメッセージが、SOC上の潜在的に危険にさらされたファームウェアからではなくSOCの外部のセキュリティチップ800から受け取られたかどうかを決定するために使用することができる。不揮発性メモリ812は、セキュリティチップとの通信を暗号化するために使用される鍵を記憶するために使用することができる。いくつかの実施形態では、鍵は、セキュリティチップ上に同じ鍵が記憶されるように、対称鍵にすることができ、また、各アクセサリデバイスがそれ自体の対称鍵ペアを有するように、そのセキュリティチップ/SOCペアに対して特定的にすることができる。他の実施形態では、任意の他の適切な鍵を使用することができる。
[0046] 図7を参照すると、方法700は、701で、ロック解除要求を(たとえば、認証が完了した後にホストから)受け取り、702で、SOC上のファームウェアからSOC上のセキュリティハードウェアモジュールへ乱数の生成を求める要求を送ることを含む。応答して、セキュリティハードウェアモジュールは、704で乱数を生成し、706で共有鍵を用いて乱数を暗号化する。次いで708で、暗号化された乱数はファームウェアに提供され、したがって、ファームウェアには、暗号化されたバージョンの乱数のみが分かる。ファームウェアは、710で示されるように、暗号化された乱数を受け取って、暗号化された乱数をセキュリティチップに転送する。セキュリティチップは、712で、暗号化された乱数を受け取り、714で、共有鍵を用いて乱数を復号し、次いで716で、暗号化された乱数に対して演算を行って新しい値を形成する。任意の適切な演算が行われてよい。1つの非限定的例は、2の補数演算である。
[0047] 乱数に対して演算を行って新しい値を生成した後、セキュリティチップは、718で、共有鍵を用いて新しい値を暗号化し、720で、暗号化された新しい値をSOCに送る。SOCは、722で、暗号化された新しい値を受け取り、セキュリティハードウェアモジュールに転送する。セキュリティハードウェアモジュールは、724で、ハードウェアスニッフィングインターフェースを介して、暗号化された新しい値がSOC上の場所から発生したのではなくSOCの外部から受け取られたことを確認する。次に、セキュリティハードウェアモジュールは、728で、暗号化された新しい値を共有鍵を用いて復号し、716で行われた演算の逆演算を行って、乱数の元の値を取得する。次いで、セキュリティハードウェアモジュールは、セキュリティチップが真正であることを保証するために逆演算の結果を元の乱数と比較する。比較が正しい場合、セキュリティハードウェアモジュールはSOCをロック解除することができ、それによりアクセサリデバイスが機能することを可能にする。
[0048] いくつかの実施形態では、セキュリティチップによって送られるロック解除命令は、デバイスがロック解除されるべきであることを示す単一ビットを含むことができる。他の実施形態では、SOCの様々な機能をロック解除するために複数ビットがセキュリティチップによって送られる(たとえば、各ビットが別々の機能を制御する)ことがある。これにより、SKU識別の追加的機構を提供することができる。
[0049] 上記の実施形態は例示のために提示されており、セキュリティチップアクティブ化、相互または片方向認証、およびデバイスロック解除のための任意の他の適切な方法が使用されてもよいことは理解されよう。たとえば、セキュリティチップをアクティブにするための方法の別の例示的実施形態は、以下のようになる。まず、チップ製造時に、セキュリティチップのSKU毎にランダムマスター鍵が生成される。次に、ランダムマスター鍵を使用し、さらにチップ毎IDを使用し、チップ毎アクティブ化鍵を、HMAC−SHA256などのHMACアルゴリズムを使用して導き出すことができる。
[0050] PerChipActivationKey=HMAC−SHA256(MasterKey,PUID)
[0051] チップ毎アクティブ化鍵は、セキュリティチップにセキュアに記憶され、セキュリティチップの外部では読取り不可能である。これは、セキュリティチップ毎に行われるので、すべてのチップが別々のアクティブ化鍵を記憶している。したがって、特定のチップのアクティブ化鍵が危険にさらされても、他のチップは影響されない。これは、アクティブ化鍵に関する攻撃に対する付加的セキュリティを提供するのを助けることができる。
[0052] 次に、アクセサリデバイス製造時に、マスターキーは、セキュリティモジュール(たとえばスマートカード)を介してセキュリティチップ工場からアクセサリデバイス工場へセキュアに移送される。スマートカードは、セキュリティチップ識別番号を入力として受け入れ、セキュリティチップ製造時に使用された同じアルゴリズムを使用してチップ毎アクティブ化鍵を導き出し、アクティブ化鍵を使用して別のダイジェストを生成することができる。
[0053] ActivationDigest=HMAC−SHA256(PerChipActivationKey,PUID+AdditionalTrackingInfo)
[0054] アクティブ化ダイジェスト(activation digest)は、セキュリティチップに対する「Activate(アクティブ化)」コマンドの入力である。セキュリティチップは、この入力を受け取ると、アクティブ化鍵のそれ自体のコピーを使用して同じダイジェストを計算するように構成され得る。ダイジェストが入力に一致した場合、セキュリティチップは、それ自体をアクティブにして通常の機能を開始することができる。
[0055] ActivationDigestの計算において、値「AddtionalTrackingInfo」は、各チップのアクティブ化を追跡するために使用することができる。任意の適切な値が使用されてよい。たとえば、いくつかの実施形態では、AddtionalTrackingInfoは、いくつのセキュリティチップをセキュリティモジュールがアクティブにしたかを記録するシーケンス番号(SequenceNumber)とすることができる。この情報も、以下のようにActivateコマンドの入力としてセキュリティチップに渡すことができる。
[0056] Activate(SMID,SequenceNumber,ActivationDigest)。
[0057] さらに、この情報は、アクティブ化後にチップ内部に安全に記憶することもでき、それにより、後で、セキュリティチップは、任意選択によりこの情報をオンラインシステムに報告することができ、オンラインシステムは、各チップおよびそのアクティブ化ステータスも追跡することができる。これは、セキュリティのさらに別の層を追加することができ、セキュリティモジュールがやはり盗まれ(しかしマスター鍵がまだ開示されていない)場合、オンラインシステムは、盗まれたセキュリティモジュールのいくつのチップがアクティブにされているかを知ることができる。さらに、前述のように、各セキュリティモジュールは、それがいくつかのチップをアクティブにできるかに関して制限することもでき、これは、盗まれたセキュリティモジュールによって引き起こされる損害を減らすために役立つ。セキュリティモジュールは、追加のセキュリティを提供するために保護されたパスワードとすることができる。アクティブ化鍵はこのアクティブ化プロセスについてチップ毎にあるので、盗まれたチップが他のチップを危険にさらすことにならない。
[0058] いくつかの実施形態では、上述の方法およびプロセスが、1つまたは複数のコンピューティングデバイスのコンピューティングシステムに連結され得る。具体的には、そのような方法およびプロセスは、コンピュータアプリケーションプログラムもしくはサービス、アプリケーションプログラミングインターフェース(API)、ライブラリ、および/または他のコンピュータプログラム製品として実装することができる。
[0059] 図9は、上述の方法およびプロセスの1つまたは複数を実施することができるコンピューティングシステム900の非限定的な実施形態を示す。コンピューティングシステム900は簡略化した形態で示されている。実質的に任意のコンピュータアーキテクチャが本開示の範囲から逸脱することなく使用され得ることは理解されよう。様々な実施形態において、コンピューティングシステム900は、メインフレームコンピュータ、サーバコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、ホームエンターテイメントコンピュータ、アクセサリデバイス、ネットワークコンピューティングデバイス、ゲームデバイス、モバイルコンピューティングデバイス、モバイル通信デバイス(たとえばスマートフォン)、スマートカードなどの形態を取ることができる。コンピューティングシステムの例は、種々のアクセサリデバイス、ホストデバイス、およびスマートカード、ならびに上記の他のコンピューティングデバイスを含むが、これらに限定されない。
[0060] コンピューティングシステム900は、論理サブシステム902およびストレージサブシステム904を含む。コンピューティングシステム900は、任意選択により、表示サブシステム906、入力サブシステム908、通信サブシステム910、および/または 図9に図示されない他のコンポーネントを含むことができる。
[0061] 論理サブシステム902は、命令を実行するように構成された1つまたは複数の物理デバイスを含む。たとえば、論理サブシステムは、1つまたは複数のアプリケーション、サービス、プログラム、ルーチン、ライブラリ、オブジェクト、コンポーネント、データ構造、または他の論理構造の部分である命令を実行するように構成することができる。そのような命令は、タスクを実行し、データ型を実装し、1つもしくは複数のコンポーネントの状態を変化させ、または他の形で所望の結果に到達するように実装することができる。
[0062] 論理サブシステムは、ソフトウェア命令を実行するように構成された1つまたは複数のプロセッサを含むことができる。追加的または代替的に、論理サブシステムは、ハードウェアまたはファームウェア命令を実行するように構成された1つまたは複数のハードウェアまたはファームウェア論理マシンを含むことができる。論理サブシステムのプロセッサは、シングルコアであってもマルチコアであってもよく、そこで実行されるプログラムは、順次、並列、または分散処理されるように構成することができる。論理サブシステムは、任意選択により、2つ以上のデバイスにわたり分散された個別のコンポーネントを含むことができ、それらは、遠隔に配置され、および/または協調処理のために構成され得る。論理サブシステムの態様は、クラウドコンピューティング構成で構成された遠隔でアクセス可能なネットワーク化されたコンピューティングデバイスによって仮想化され実行され得る。
[0063] ストレージサブシステム904は、本明細書に記載の方法およびプロセスを実装するように論理サブシステムによって実行可能なデータおよび/または命令を保持するように構成された、1つまたは複数の物理的な非一時的デバイスを含む。そのような方法およびプロセスが実装されたとき、ストレージサブシステム904の状態は、たとえば異なるデータを保持するように、変化することができる。
[0064] ストレージサブシステム904は、取外し可能な媒体および/または内蔵デバイスを含むことができる。ストレージサブシステム904は、特に、光メモリデバイス(たとえば、CD、DVD、HD−DVD、ブルーレイディスクなど)、半導体メモリデバイス(たとえば、RAM、EPROM、EEPROMなど)、および/または磁気メモリデバイス(たとえば、ハードディスクドライブ、フロッピーディスクドライブ、テープドライブ、MRAMなど)を含むことができる。ストレージサブシステム904は、揮発性、不揮発性、動的、静的、読取り/書込み、読取り専用、ランダムアクセス、順次アクセス、位置アドレス可能、ファイルアドレス可能、および/またはコンテンツアドレス可能デバイスを含むことができる。
[0065] ストレージサブシステム904が1つまたは複数の物理デバイスを含むことは理解されよう。しかしながら、いくつかの実施形態では、本明細書に記載の命令の態様は、ストレージデバイスではなく通信媒体を介して、純粋な信号(たとえば、電磁気信号、光信号など)によって伝播することができる。さらに、本開示に関するデータおよび/または他の形態の情報も純粋な信号によって伝播されてよい。
[0066] いくつかの実施形態では、論理サブシステム902およびストレージサブシステム904の態様は、本明細書に記載された機能が実施され得る1つまたは複数のハードウェア論理コンポーネントと一体化することができる。そのようなハードウェア論理コンポーネントは、たとえば、フィールドプログラマブルゲートアレイ(FPGA)、特定用途およびプログラム向け集積回路(program- and application-specific integrated circuits:PASIC/ASIC)、特定用途およびプログラム向け標準品(program- and application-specific standard products:PSSP/ASSP)、システムオンチップ(SOC)システム、ならびにコンプレックスプログラマブルロジックデバイス(complex programmable logic device:CPLD)を含むことができる。
[0067] 用語「モジュール」、「プログラム」、および「エンジン」は、特定の機能を実行するように実装されたコンピューティングシステム900の態様を説明するために使用され得る。いくつかの事例では、モジュール、プログラム、またはエンジンは、ストレージサブシステム904によって保持される命令を実行する論理サブシステム902によってインスタンス化することができる。異なるモジュール、プログラム、および/またはエンジンが、同じアプリケーション、サービス、コードブロック、オブジェクト、ライブラリ、ルーチン、API、関数などからインスタンス化され得ることは理解されよう。同様に、同じモジュール、プログラム、および/またはエンジンが、異なるアプリケーション、サービス、コードブロック、オブジェクト、ルーチン、関数などによってインスタンス化され得る。用語「モジュール」、「プログラム」、および「エンジン」は、実行可能なファイル、データファイル、ライブラリ、ドライバ、スクリプト、データベースレコードなどの単体またはグループを包含することができる。
[0068] 本明細書で使用される場合、「サービス」は、複数のユーザセッションにわたって実行可能なアプリケーションプログラムであることは理解されよう。サービスは、1つまたは複数のシステムコンポーネント、プログラム、および/または他のサービスに利用可能とすることができる。いくつかの実装形態では、サービスは、1つまたは複数のサーバ−コンピューティングデバイス上で実行することができる。
[0069] 表示サブシステム906は、含まれている場合、ストレージサブシステム904により保持されるデータの視覚表示を提供するために使用することができる。この視覚表示は、グラフィカルユーザインターフェース(GUI)の形態を取ることができる。本明細書に記載の方法およびプロセスがストレージサブシステムによって保持されるデータを変更し、それによりストレージサブシステムの状態を変化させるように、表示サブシステム906の状態は、基礎となるデータの変更を視覚的に表すために同様に変化することができる。表示サブシステム906は、仮想的に任意のタイプの技術を利用する1つまたは複数の表示デバイスを含むことができる。そのような表示デバイスは、共有の筐体内で論理サブシステム902および/またはストレージサブシステム904と組み合わせることができ、あるいは表示デバイスは周辺表示デバイスとすることができる。
[0070] 入力サブシステム908は、含まれている場合、キーボード、マウス、タッチスクリーン、ゲームコントローラのような1つまたは複数のユーザ入力デバイスを備える、あるいはそれらとインターフェースをとることができる。いくつかの実施形態では、入力サブシステムは、上述のアクセサリデバイス実施形態のような、選択された自然ユーザ入力(natural user input:NUI)構成要素を備える、あるいはそれとインターフェースをとることができる。そのような構成要素は、内蔵されても周辺機器であってもよく、入力動作の変換および/または処理はボード上またはボード外で扱われてよい。例示的NUI構成要素は、スピーチおよび/または音声認識のためのマイク、機械視覚および/またはジェスチャ認識のための赤外線、色、立体および/または深度カメラ、動き検出および/または意図認識のためのヘッドトラッカ、アイトラッカ、加速度計および/またはジャイロスコープ、ならびに脳活動にアクセスするための電界センシング構成要素を含むことができる。
[0071] 通信サブシステム910は、含まれている場合、コンピューティングシステム900を1つまたは複数の他のコンピューティングデバイスと通信可能に結合するように構成することができる。通信サブシステム910は、1つまたは複数の異なる通信プロトコルに適合した有線または無線通信デバイスを含むことができる。非限定的例として、通信サブシステムは、無線電話網、または有線もしくは無線のローカルエリアもしくは広域ネットワークを介する通信のために構成することができる。いくつかの実施形態では、通信サブシステムは、コンピューティングシステム900が、インターネットなどのネットワークを介して他のデバイスとの間でメッセージを送信および/または受信することを可能にすることができる。
[0072] 本明細書に記載の構成および/または手法は本質的に例示であり、これらの実施形態または例は、多数の変形が可能であるので、限定的な意味で捉えられるべきではないことは理解されよう。本明細書に記載の特定のルーチンまたは方法は、任意の数の処理戦略のうちの1つまたは複数を表し得る。したがって、例示および/もしくは説明された種々の動作は、例示および/もしくは説明された順序で、他の順序で、並列で、または省略されて実施され得る。同様に、上記のプロセスの順序は変更され得る。
[0073] 本開示の主題は、本明細書に開示された種々のプロセス、システムおよび構成、ならびに他の特徴、機能、動作および/または特性、さらにそれらの任意およびすべての均等物のすべての新規で非自明の組み合わせおよび部分的組み合わせを含む。

Claims (10)

  1. 論理サブシステムと、
    命令を記憶したストレージサブシステムと、を備えるホストコンピューティングデバイスであって、
    前記命令は、前記論理サブシステムによって、
    アクセサリデバイスとの相互認証セッションの初期部分を実施し、
    前記ホストコンピューティングデバイスおよび前記アクセサリデバイスに関する情報をコンピュータネットワークを介してリモートペアリングサービスに送り、
    応答として、前記リモートペアリングサービスから、前記リモートペアリングサービスのプライベート鍵を用いて暗号化されたペアリング証明書を受け取り、
    前記リモートペアリングサービスからの前記ペアリング証明書を使用して、前記アクセサリデバイスとの相互認証を完了する
    ように実行可能である、ホストコンピューティングデバイス。
  2. 前記相互認証セッションの前記初期部分を実施することは、
    前記アクセサリデバイスとの接続を確立することと、
    前記アクセサリデバイスからセキュリティチップ証明書を受け取ることと、
    前記セキュリティチップ証明書が有効であることを検証することと
    を含む、請求項1に記載のホストコンピューティングデバイス。
  3. 前記セキュリティチップ証明書が有効であるかどうかを決定することは、前記セキュリティチップ証明書を発行した認証局と連絡を取ることを含む、請求項2に記載のホストコンピューティングデバイス。
  4. 前記ホストコンピューティングデバイスおよび前記アクセサリデバイスに関する前記情報は、ホスト公開鍵および前記セキュリティチップ証明書を含む、請求項2に記載のホストコンピューティングデバイス。
  5. 前記ペアリング証明書を使用して前記相互認証を完了することは、
    前記ペアリング証明書を前記アクセサリデバイスに送ることと、
    アクセサリデバイス公開鍵を用いて暗号化されたプリマスターシークレットを、前記アクセサリデバイスに送ることと、
    前記アクセサリデバイスから応答を受け取ることと、
    ホストに取得されたペアリングプライベート鍵によって暗号化されたホスト証明書検証メッセージを、前記アクセサリデバイスに送ることと、
    前記アクセサリデバイスから、前記ホスト証明書検証メッセージに対する応答を受け取ることと
    を含む、請求項4に記載のホストコンピューティングデバイス。
  6. 前記命令は、前記ペアリングプライベート鍵および対応するペアリング公開鍵を生成するようにさらに実行可能である、請求項5に記載のホストコンピューティングデバイス。
  7. 前記ペアリングプライベート鍵および対応するペアリング公開鍵は、事前に構成される、請求項5に記載のホストコンピューティングデバイス。
  8. 前記命令は、前記論理サブシステムによって、
    前記相互認証セッションの前記初期部分を完了すると、前記アクセサリデバイスが前記ホストコンピューティングデバイスと共に使用されることを許可されるかどうかをさらに決定し、
    前記アクセサリデバイスが前記ホストコンピューティングデバイスと共に使用されることを許可されない場合は、前記相互認証が拒否される、
    ように実行可能である請求項1に記載のホストコンピューティングデバイス。
  9. 前記命令は、前記論理サブシステムによって、
    前記アクセサリデバイスが前記ホストコンピューティングデバイスと共に使用されることを許可されない場合は、前記リモートペアリングサービスを利用しない片方向認証をさらに行うように実行可能である、請求項8に記載のホストコンピューティングデバイス。
  10. 前記アクセサリデバイスが前記ホストコンピューティングデバイスと共に使用されることを許可されるかどうかを決定することは、前記相互認証セッションの前記初期部分において前記アクセサリデバイスから受け取ったコンフィギュレーション情報を検査することを含む、請求項9に記載のホストコンピューティングデバイス。
JP2015556087A 2013-02-01 2014-01-29 コンピューティングデバイスアクセサリをセキュアにすること Active JP6364026B2 (ja)

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 (3)

Publication Number Publication Date
JP2016510564A true JP2016510564A (ja) 2016-04-07
JP2016510564A5 JP2016510564A5 (ja) 2017-02-09
JP6364026B2 JP6364026B2 (ja) 2018-07-25

Family

ID=50231495

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015556087A Active JP6364026B2 (ja) 2013-02-01 2014-01-29 コンピューティングデバイスアクセサリをセキュアにすること

Country Status (6)

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

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015099693A1 (en) * 2013-12-23 2015-07-02 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
JP6773401B2 (ja) 2015-10-05 2020-10-21 任天堂株式会社 周辺機器、無線通信チップ、アプリケーションプログラム、情報処理システム、および情報処理方法
JP6567939B2 (ja) 2015-10-05 2019-08-28 任天堂株式会社 情報処理システム、周辺機器、無線通信チップ、アプリケーションプログラム、および情報処理方法
JP2017073611A (ja) * 2015-10-05 2017-04-13 任天堂株式会社 情報処理システム、無線通信チップ、周辺機器、サーバ、アプリケーションプログラム、および情報処理方法
US10382210B2 (en) * 2016-01-10 2019-08-13 Apple Inc. Secure device pairing
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
KR20190080285A (ko) 2017-12-28 2019-07-08 신진퓨처필름주식회사 태양광의 차폐 성능을 개선하기 위한 광학 구조체 및 이의 제조 방법
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 (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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 データ処理システムおよび電子証明書の生成方法
JP2010502115A (ja) * 2006-08-18 2010-01-21 ソニー株式会社 交換可能なパーソナリティアダプタを備えた自動再構成可能なマルチメディアシステム
JP2010518758A (ja) * 2007-02-09 2010-05-27 ソニー株式会社 通信インターフェイスを許可するための方法及び装置

Family Cites Families (35)

* 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
EP1505765A4 (en) * 2002-06-07 2006-10-04 Sony Corp DATA PROCESSING SYSTEM, DATA PROCESSING DEVICE, DATA PROCESSING METHOD AND COMPUTER PROGRAM
US20070043667A1 (en) * 2005-09-08 2007-02-22 Bahman Qawami Method for secure storage and delivery of media content
US8307414B2 (en) * 2007-09-07 2012-11-06 Deutsche Telekom Ag Method and system for distributed, localized authentication in the framework of 802.11
KR100979205B1 (ko) * 2007-12-17 2010-09-01 한국전자통신연구원 디바이스 인증방법 및 그 시스템
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
US7865629B1 (en) * 2009-11-24 2011-01-04 Microsoft Corporation Configurable connector for system-level communication
KR101714108B1 (ko) * 2009-12-04 2017-03-08 크라이프토그라피 리서치, 인코포레이티드 검증가능 누출 방지 암호화 및 복호화
US9071441B2 (en) * 2010-01-04 2015-06-30 Google Inc. Identification and authorization of communication devices
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 (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007108114A1 (ja) * 2006-03-22 2007-09-27 Matsushita Electric Industrial Co., Ltd. ドメイン参加方法、属性証明書選択方法、通信端末、icカード、ce機器、属性証明書発行局およびコンテンツサーバ
JP2010502115A (ja) * 2006-08-18 2010-01-21 ソニー株式会社 交換可能なパーソナリティアダプタを備えた自動再構成可能なマルチメディアシステム
JP2010518758A (ja) * 2007-02-09 2010-05-27 ソニー株式会社 通信インターフェイスを許可するための方法及び装置
JP2008278086A (ja) * 2007-04-27 2008-11-13 Matsushita Electric Ind Co Ltd データ処理システムおよび電子証明書の生成方法

Also Published As

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

Similar Documents

Publication Publication Date Title
JP6364026B2 (ja) コンピューティングデバイスアクセサリをセキュアにすること
ES2739896T5 (es) Acceso seguro a datos de un dispositivo
CN104639516B (zh) 身份认证方法、设备及系统
TWI817930B (zh) 具有裝置認證的裝置編程系統
US9440158B1 (en) System and method for providing secured wireless communication with an action figure or action figure accessory
TWI700602B (zh) 基於虛擬實境(vr)場景的認證方法、裝置、vr終端及vr伺服端
TWI542183B (zh) 由多租戶服務提供者所為之動態平台重新組配技術
KR20200101211A (ko) 전자 장치 및 이를 이용한 블록 체인의 전자 서명 서비스 방법
CN109313690A (zh) 自包含的加密引导策略验证
CN103051451A (zh) 安全托管执行环境的加密认证
TWI679551B (zh) 進程的身份認證方法和裝置
JP2012074011A5 (ja)
US9684783B2 (en) Self-authentication device and method
WO2020186457A1 (zh) 网络摄像机的认证方法和装置
CN107209838A (zh) 便携式安全设备
KR102436485B1 (ko) 전자 장치 및 전자 장치에서 보안 운영체제 기반 데이터 송수신 방법
CN106992978B (zh) 网络安全管理方法及服务器
CN109728912A (zh) 播放内容安全传输方法、系统以及终端
US11727403B2 (en) System and method for payment authentication
US10225735B2 (en) Systems and methods to authenticate using vehicle
US20170012973A1 (en) Trust framework for secured digital interactions between entities

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161222

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180518

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180531

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180629

R150 Certificate of patent or registration of utility model

Ref document number: 6364026

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250