次に図1に移ると、認証環境10が示されている。認証環境10では、車両14に対するアクセス及び制御が、車両14とペアリングされる複数のモバイルデバイス16、18に関連して管理される。図示される例では、第1のモバイルデバイス16がキーフォブ(例えばワイヤレスのハードウェアセキュリティトークン)であり、第2のモバイルデバイス18はスマートフォンである。モバイルデバイス16、18は、スマートタブレット、パーソナルデジタルアシスタント(PDA)、メディアプレイヤ、画像化デバイス等のような他のタイプのデバイスを含んでもよく、ユーザ12は、車両14に近づいて対話するときに、モバイルデバイス16、18を自身とともに携行することができる。更に詳細に説明されるように、ユーザ12を認証するために、モバイルデバイス16、18の存在が必要とされることがあり、この場合、認証の成功により、車両14の特定の機能が、ユーザ12に対して利用可能にされ得る。例えばユーザ12が、車両14にアクセスすること(例えばドア及び/又はトランクのロック解除機能)、車両14を始動させること(例えばイグニッション機能)、様々な設定をカスタマイズすること(例えばユーザ設定機能)、車両14を運転すること(例えば車両操作機能)、車両14とデバイスをペアリングすること(例えばデバイスペアリング機能)等を許可される前に、モバイルデバイス16、18の双方の存在が必要とされることがある。したがって、図示される環境10は、車両14のセキュリティが、複数のモバイルデバイス16、18の近接性のステータス(proximity status)に依存する、「マルチファクタ」認証環境を表す。
また、更に詳細に検討されるように、ユーザのポリシー及び/又はプロファイルを使用して、モバイルデバイス16、18の一方しか存在しない場合であっても、車両アクセス及びデバイスペアリングのような特定の機能をユーザに利用可能にしてもよい。さらに、2つのモバイルデバイスが示されているが、車両の機能にアクセスするのに、所与のユーザによって2つより多くのモバイルデバイスが使用されてもよい。例えばユーザ12は、スマートフォン、スマートタブレット及びメディアプレイヤを車両14とペアリングし、スマートフォンを、主(例えば「マスタ」)デバイスとして指定してもよい。この場合、主デバイスは、車両14の他のデバイスとのペアリングに使用され得る。
例えば図2Aは、第1のモバイルデバイス16は存在するが、第2のモバイルデバイス18は存在しない場合に、ユーザ12が車両14に入ることを許可されるという、ポリシーが実装される様子を示している。このようなケースは、第2のモバイルデバイス18を紛失するか盗まれた場合、あるいはユーザ12が単に第2のモバイルデバイス18を持ってくるのを忘れた場合に起こり得る。ポリシーは、ユーザ12に対応するユーザプロファイルとして、あるいは全てのユーザ又はユーザのグループに適用可能なグローバルポリシー(例えばデフォルトのプロファイル)として実装されてよく、このポリシーは、ユーザ12が、該ユーザ12のユーザプロファイルと関連付けられたログイン制約(例えば所定のパスコードを入力すること)を十分満たし、ペアリングプロセスを完了するという条件で、置換デバイス20(例えばスマートフォン)が車両14とペアリングされることを許容してもよい。
同様に、図2Bは、第2のモバイルデバイス18は存在するが、第1のモバイルデバイス16が存在しない場合に、ユーザプロファイルにより、ユーザ12が車両14に入ることが許容され得る様子を示す。このようなケースは、第1のモバイルデバイス16を紛失するか盗まれた場合、あるいはユーザ12が単に第1のモバイルデバイス16を持ってくるのを忘れた場合に起こり得る。ユーザプロファイルは、ユーザ12が、該ユーザ12のユーザプロファイルと関連付けられたログイン制約を十分満たし、ペアリングプロセスを完了するという条件で、置換デバイス22(例えばキーフォブ)が車両14とペアリングされることを許容してもよい。したがって、マルチファクタ認証スキームは、車両14に対して比較的高いセキュリティレベルを維持しつつ、ユーザ12にとってかなり少ないコスト、遅延及び不便性で、新たなファクタを車両14とペアリングすることを可能にすることができる。
次に図3に移ると、論理アーキテクチャ24(24〜24d)が示されている。論理アーキテクチャ24は一般に、例えば車両14(図1、図2A及び図2B)のような車両に、ハードウェア、ソフトウェア、ファームウェア又はその組合せとして組み込まれてよい。図示される例では、第1のファクタモジュール24aは、近接性センサ(図示せず)を使用して、車両に対する第1のモバイルデバイス16の第1の近接性ステータスを決定する。同様に、第2のファクタモジュール24bは、近接性センサを使用して、車両に対する第2のモバイルデバイス18の第2の近接性ステータスを決定することができる。セキュリティモジュール24cは、要求コンポーネント40を有してよい。要求コンポーネント40は、ユーザの要求を、第1のモバイルデバイス16のユーザインタフェース(UI)30(例えばプッシュボタン、スイッチ等)を介して、第2のモバイルデバイス18のUI32(例えばタッチスクリーン、マイクロフォン等)、車両のUI34(例えばドアハンドル、プッシュボタン、タッチスクリーン等)等を介して受信する。セキュリティモジュール24cは、ユーザ要求に応答して、第1の近接性ステータス及び第2の近接性ステータスに少なくとも部分的に基づいて、車両の1つ又は複数の機能26(26a〜26c)のアクセス性を構成することができる。一例において、セキュリティモジュール24cは、1つ又は複数のユーザプロファイル28のようなポリシーを識別する。ユーザプロファイル28の少なくとも1つは、第1のモバイルデバイス16及び/又は第2のモバイルデバイス18(及び当該デバイスに対応するユーザ)に関連付けられることがある。このような場合において、車両機能26は、識別されたユーザプロファイルに更に基づいて構成されてよい。
例えばセキュリティモジュール24cは、拒否コンポーネント36を有する可能性もあり、拒否コンポーネント36は、第1の近接性ステータス及び第2の近接性ステータスがユーザプロファイルのマルチファクタ条件を満たさない場合に、ユーザ要求を拒否する。より具体的には、マルチファクタ条件は、対象の車両機能をユーザに利用可能にするためには、モバイルデバイス16、18(例えばファクタ)が双方存在すべきことを規定することがある。このような場合において、第1の近接性ステータスは第1のモバイルデバイス16が存在することを示しているが、第2の近接性ステータスが第2のモバイルデバイス18が存在していないことを示している場合、マルチファクタ条件は満たされないことになる。同様に、第2の近接性ステータスは第2のモバイルデバイス18が存在することを示しているが、第1の近接性ステータスが第1のモバイルデバイス16が存在していないことを示している場合、マルチファクタ条件は満たされないことになる。
時間ベースの条件や位置ベースの条件のような他の条件を使用してもよい。例えばユーザプロファイルが、対象のユーザ(あるいはグローバルポリシー及び/又はデフォルトプロファイルが実装されている場合は全てのユーザ)は、特定の位置のある範囲(例えば通りのアドレス)内で車両を操作すべきことを規定しており、車両がその範囲外にあると判断した場合、拒否コンポーネント36は、車両の操作を拒否すること(例えば車両のイグニッションを妨げることや、ドライバに警告を与えた後に車両をシャットダウンすること等)がある。別の例として、ユーザプロファイルが、対象のユーザは、ある時間内に車両を操作すべきことを規定しており、現在の時間が指定された時間外であると判断した場合も、拒否コンポーネント36は車両の操作を拒否してよい。加えて、マルチファクタ条件の施行を、継続的に実施してもよい。例えば所与のユーザ要求が許可された後に、要求の許可につながった条件がもう満たされていないと決定した場合、条件の許可を事実上破棄してもよい。したがって、そのようなシナリオにおいても同様に、車両のシャットダウンが実装され得る。他の例には、ドライバが気を取られるシナリオを避けるため、車両を操作している間のラジオの利用の禁止が含まれ得る。
セキュリティモジュール24cは、許可コンポーネント38も有することができ、許可コンポーネント38は、第1の近接性ステータス及び第2の近接性ステータスがユーザプロファイルのマルチファクタ条件を満たす場合に、ユーザ要求を許可する。更に詳細に検討されるように、許可コンポーネント38は、例えば時間制約、位置制約、ログイン制約等のユーザプロファイルの1つ又は複数の制約を対象の車両機能に適用してもよい。特にログイン制約に関して、図示されるアーキテクチャ24は、第1及び第2のモバイルデバイス16、18並びにデバイス20(図2A)、デバイス22(図2B)のような置換デバイスを車両とペアリングするように構成されるペアリングモジュール24dも含む。モバイルデバイス16、18及び置換デバイス20(図2A)、22(図2B)を相互にペアリングしてもよい。双方のファクタが存在する場合、ペアリングモジュール24dは、通常通りにペアリングプロセスを管理してよい。一方、ファクタのうちの1つしか存在しない場合、ペアリングモジュール24dは、車両へ入ることを許可し、次いでペアリングプロセスを進める前にユーザにパスコード(例えば個人識別番号/PIN、パスワード等)を入力するよう促すことがある。
更にペアリングモジュール24dに関して、パスコードは、モバイルデバイス16、18の一方において入力されてよいが、一部の実施形態では、デバイス16、18をペアリングするために車両UI34に直接入力されることを必要としてもよい。別の実施形態では、自動ペアリングが可能であり、この場合、「マスタ」(例えば主)デバイスが拒否されるまで、デフォルトのポリシー及び/又はユーザプロファイルが使用され得る。例えば一方のデバイスが、他のデバイスを一緒に車両とペアリングするために存在すべきマスタ(例えば1つのマスタキーフォブ)であると見なされてよい。一部の実施形態において、ペアリングは、(例えば子供や、未成年者、車両及びスマートフォンの他の非所有者によって操作される権限の少ない(lesser privileged)スマートフォンをペアリングするために)マスタデバイスも存在するときにのみ完了し得る。一部の実施形態において、第2のデバイス(例えばキーフォブではなくスマートフォン)が、他の二次デバイスにおけるユーザ制約の入力を可能にするため、ペアリングの時にマスタデバイスとして識別されることがある。これらの他の二次的な「非マスタ」デバイス(例えば権限の少ないスマートフォン)は、これら自身のユーザ制約を変更することができないことがある。二次デバイスは、デバイス上に格納されるユーザ制約を、Bluetooth(登録商標)、ワイヤレス、NFC(近距離通信)、コンピュータ又は他のドッキングステーションとの同期等のような幾つかの手段により受け取ることができる。ユーザ制約はその後、マスタデバイスが存在する場合を除いて、修正不可能となることがある。
さらに、図示されるセキュリティモジュール24cは、通知コンポーネント42を有する。通知コンポーネント42は、第1の近接性ステータスが第1のモバイルデバイスが存在しないと示すか、又は第2の近接性ステータスが第2のモバイルデバイスが存在しないと示す場合に、第1のモバイルデバイス16のUI30、第2のモバイルデバイス18のUI32及び/又は車両のUI34を介して通知を生成するように構成される。より具体的には、そのような通知は、本物のユーザがファクタのうちの1つがない(例えば忘れたファクタが欠けている)状態で車両を操作しようと試みている場合、並びに許可されていないユーザがファクタのうちの1つがない状態で車両を操作しようと試みている(例えば盗まれたファクタが存在する)場合、特に有益である。通知は、状況に応じて、近くのファクタ(例えばファクタを忘れた場合)及び/又は欠けているファクタ(例えばファクタが盗まれた場合)に送信され得る。
図示される例では、モバイルデバイス16、18はそれぞれ、1つ又は複数のマルチファクタ条件を有するポリシーを格納するポリシーリポジトリ17と、車両のセキュリティモジュール24cから要求を受信し、該要求に応答してポリシーをセキュリティモジュール24cに伝送する無線インタフェース19を含む。一例において、ポリシーはユーザプロファイルである。既に説明したように、所与のマルチファクタ条件は、第1のモバイルデバイス16又は第2のモバイルデバイス18が、車両の機能26へのアクセスの試行中に車両の近くにない場合、車両の機能26をアクセス可能にすべきかどうかを指示することができる。ポリシーは、ペアリングプロセス及び/又は車両の機能26の1つ若しくは複数へのアクセスの試行と関連して、セキュリティモジュール24cに伝送され得る。
更にペアリングプロセスに関して、図示されるモバイルデバイス16、18は、それぞれのデバイスと車両及び/又は他のデバイスをペアリングするように構成されるペアリングモジュール21も含む。一例において、第1のモバイルデバイス16のペアリングモジュール21は、UI30を介してパスコードを受信し、該パスコードがポリシーのログイン制約を満たすかどうか判断し、パスコードがログイン制約を満たす場合、第1のモバイルデバイス16はペアリングされる。同様に、第2のモバイルデバイス18のペアリングモジュール21は、UI32を介してパスコードを受信し、該パスコードがポリシーのログイン制約を満たすかどうか判断し、パスコードがログイン制約を満たす場合、第2のモバイルデバイス18がペアリングされる。あるいは、パスコードがログイン制約を満たすかどうかの判断は、車両によって実行されてもよい。さらに、一部の例において、例えば第1のモバイルデバイス16(例えばキーフォブ)のようなモバイルデバイスは、ログイン認証のエントリをサポートする能力を有しないことがある。このような場合、車両のUI34を使用するか、そのデバイスがマスタデバイスであれば、ログインプロセスを完全にバイパスしてもよい。
図4は、テーブルとして構成される一組のユーザプロファイル28を示す。図示される例では、複数のユーザ(例えば「Dad」、「Mom」、「Sally」)はそれぞれ、プログラム可能/構成可能な様々なプリファレンスを有する。例えばパスコード、車両へのアクセスに必要なファクタの数(「アクセスファクタ」)、車両のイグニッションをアクティブにするのに必要なファクタの数(「始動ファクタ」)、車両を操作するのに必要なファクタの数(「ドライブファクタ」)、位置制約、時間制約等を全て、ユーザごとに定義することができる。さらに、指定されたパラメータを使用して、ユーザ要求を許可するかどうか、並びにユーザ固有の条件を許可された要求に適用するかどうかを決定してもよい。特に注目すべきことは、異なるユーザが異なるポリシーを有してよいことである。例えば図示される例では、MonとDadは、1つのファクタが存在すれば車両を始動させることができ、一方、Sallyのプロファイルは、車両を始動させるためには2つのファクタを必要とする。ユーザプロファイル28の図示されたセットは、テーブルとして構成されているが、ユーザプロファイル28のセットは、関連データベース構造及び/又はリンクリストのような他の公知の構造を用いて、その中に表されるデータをトラックし、管理し、制御し、そして編成してもよい。
次に図5に移ると、マルチファクタ認証環境を管理する方法44が示されている。方法44は、マシン又はコンピュータ読取可能記憶媒体内に格納される論理命令のセット及び/又はファームウェアとして実装されてよく、そのような媒体は、例えばプログラマブル論理アレイ(PLA)、フィールドプログラマブルゲートアレイ(FPGA)、結合プログラマブル論理デバイス(CPLD)のような構成可能なロジックで、特定用途向け集積回路(ASIC)、相補型MOS(CMOS)又はトランジスタ−トランジスタ論理(TTL)技術又はこれらの組合せのような回路技術を使用する固定の機能性の論理ハードウェアによる、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、プログラマブルROM(PROM)、フラッシュメモリ等である。例えば方法44に示される動作を実行するコンピュータプログラムコードを、C++若しくは同様のもののようなオブジェクト指向プログラミング言語及び「C」プログラミング言語若しく類似のプログラミング言語のような従来の手続的プログラミング言語を含む、1つ又は複数のプログラミング言語の任意の組み合わせて書くことができる。さらに、方法44は、上述の回路技術のいずれかを使用する論理アーキテクチャ24(図3)として実装されてもよい。
図示される処理ブロック46は、例えば第1のモバイルデバイス、第2のモバイルデバイス及び車両等のユーザインタフェースを介してユーザ要求を受信することを提供する。ユーザ要求は、ドアのロック解除機能(例えばアクセス要求)、イグニッション機能(例えば始動要求)、ユーザ設定機能(例えばシートのプリファレンス、ラジオのプリファレンス)、車両操作機能(例えばドライブにおけるトランスミッションの配置/管理)、ペアリング機能(例えば置換デバイス)等のような車両の1つ又は複数の機能に対応し得る。ブロック48において、マルチファクタ条件が満たされるかどうかの判断が行われる。上記したように、マルチファクタ条件は、車両に対する第1のモバイルデバイスの第1の近接性ステータス、車両に対する第2のモバイルデバイスの第2の近接性ステータス等を考慮してよく、この場合、マルチファクタ条件は、対象の車両機能をユーザに利用可能にするためには双方のモバイルデバイスが存在すべきことを指定してもよい。マルチファクタ条件が満たされない場合、ブロック52において、ユーザ要求を拒否する。ブロック52は、欠けている、紛失した及び/又は盗まれたモバイルデバイスについて車両の所有者に知らせるために、例えば第1のモバイルデバイス、第2のモバイルデバイス、車両又はこれらの任意の組合せのユーザインタフェースを介して通知を生成することを提供してもよい。
一方、マルチファクタ条件が満たされる場合、図示されるブロック50は、ユーザ要求を許可し、いずれかの関連する制約を要求に適用する。マルチファクタ条件と制約の双方を、ユーザごとに定義して、適切なプロファイル、ポリシー等内に格納してもよい。一例において、制約は、特定の場所においてのみ車両機能が利用可能になるという位置制約である。別の例において、制約は、特定の時間に及び/又は特定の期間の間のみ車両機能が利用可能となるという時間制約である。更に別の例において、制約は、ユーザが所定のパスコードを入力した場合にのみ車両機能が利用可能となるというログイン制約である。ログイン制約は、デバイスのペアリング及びデバイスの置換に特に有益である。
図6は、一実施形態に係るプロセッサコア200を図示している。プロセッサコア200は、マイクロプロセッサ、組み込みプロセッサ、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ又はコードを実行する他のデバイスのような任意のタイプのプロセッサ用のコアであってよい。図6では1つのプロセッサコア200しか図示していないが、代替として、処理要素は、1つより多くの、図6に図示されるプロセッサコア200を含んでもよい。プロセッサコア200はシングルスレッドコアであってよく、あるいは少なくとも1つの実施形態に関して、プロセッサコア200は、コアごとに1つより多くのハードウェアスレッドコンテキスト(すなわち「論理プロセッサ」)を含み得るという点で、マルチスレッド化されてもよい。
図6は、プロセッサ200に結合されたメモリ270も含む。メモリ270は、当業者に公知であるか、あるいは利用可能であるような、(メモリ階層の様々なレイヤを含む)多様なメモリのいずれかであってよい。メモリ270は、プロセッサコア200によって実行される1つ又は複数のコード213命令を含むことがあり、コード213は、上述のような論理アーキテクチャ24(図3)を実装し得る。プロセッサコア200は、コード213によって指示される命令のプログラムシーケンスに従う。したがって、プロセッサコア200は、車両14(図1)のような車両の一部であってよい。プロセッサコア200は、モバイルデバイス16、18(図3)のようなモバイルデバイスにおいて使用されてもよく、これらのデバイスの機能性をサポートする。各命令は、フロントエンド部分210を入力し、1つ又は複数のデコーダ220によって処理され得る。デコーダ220は、その出力として、所定のフォーマットの固定幅のマイクロオペレーションのようなマイクロオペレーションを生成するか、他の命令、マイクロ命令又は元のコード命令を反映する制御信号を生成し得る。図示されたフロントエンド210は、レジスタリネームロジック225及びスケジュールロジック230も含み、これらは一般に、実行のために、リソースを割り当てて変換命令に対応するオペレーションをキューする。
プロセッサ200は、1組の実行ユニット(EU:execution unit)225−1〜225−Nを有する実行ロジック250を含むよう示されている。一部の実施形態は、固有の機能又は機能のセットに専用の複数の実行ユニットを含んでよい。他の実施形態は、1つの実行ユニットのみを含むか、特定の機能を実行することができる1つの実行ユニットを含んでよい。図示される実行ロジック250は、コード命令によって指定されるオペレーションを実行する。
コード命令によって指定されたオペレーションの実行が完了すると、バックエンドロジック260は、コード213の命令を終了(retire)させる。一実施形態において、プロセッサ200は、順不同の実行は許容するが、命令を順番に終了することを要求する。終了ロジック265は、当業者に公知であるような様々な形式を取ることができる(例えば順序付け(re-order)バッファ等)。このようにして、プロセッサコア200は、少なくとも、デコーダによって生成される出力、レジスタリネームロジック225によって用いられるハードウェアレジスタ及びテーブル並びに実行ロジック250によって修正されるいずれかのレジスタ(図示せず)に関して、コード213の実行中に変換される。
図6には図示されていないが、処理要素は、プロセッサコア200とともにチップ上の他の要素を含んでもよい。例えば処理要素は、プロセッサコア200とともにメモリ制御ロジックを含んでもよい。処理要素は、I/O制御ロジックを含んでもよく、及び/又はメモリ制御ロジックと統合されるI/O制御ロジックを含んでもよい。処理要素は1つ又は複数のキャッシュも含み得る。
次に図7を参照すると、本発明の一実施形態に係るシステム1000のブロック図が示されている。一例において、システム1000は、上述の車両14のような車両の一部である。システム1000は、モバイルデバイス16、18(図3)のようなモバイルデバイス内で、これらのデバイスの機能性をサポートするのに使用されてもよい。図7に図示されているのは、マルチプロセッサシステム1000であり、該マルチプロセッサシステム1000は、第1の処理要素1070及び第2の処理要素1080を含む。2つの処理要素1070及び1080が示されているが、システム100の実施形態は、そのような処理要素の1つのみを含むこともある。
システム1000は、ポイントツーポイント相互接続システムとして図示されており、ここでは、第1の処理要素1070及び第2の処理要素1080が、ポイントツーポイント相互接続1050を介して結合される。図7に図示される相互接続のいずれか又は全てを、ポイントツーポイント相互接続ではなく、マルチドロップバスとして実装してもよいことを理解されたい。
図7に示されるように、処理要素1070及び1080はそれぞれ、第1及び第2のプロセッサコア(すなわちプロセッサコア1074a、1074b及びプロセッサコア1084a、1084b)を含むマルチコアプロセッサであってよい。そのようなコア1074a、1074b、1084a、1084bは、上記で図6に関連して説明した手法と同様の手法により命令コードを実行するように構成され得る。
各処理要素1070、1080は、少なくとも1つの共有キャッシュ1896を含み得る。共有キャッシュ1896a、1896bは、それぞれコア1074a、1074b、1084a、1084bのような、プロセッサの1つ又は複数のコンポーネントによって用いられるデータ(例えば命令)を格納することができる。例えば共有キャッシュは、プロセッサのコンポーネントによる高速アクセスのために、メモリ1032、1034(例えばコンピュータ読取可能媒体、コンピュータ読取可能記憶媒体等)内に格納されるデータをローカルにキャッシュすることができる。1つ又は複数の実施形態において、共有キャッシュは、レベル2(L2)、レベル3(L3)、レベル4(L4)又は他のレベルのキャッシュのような1つ又は複数の中間レベルのキャッシュ、最終レベルのキャッシュ(LLC)及び/又はこれらの組合せを含み得る。
2つの処理要素1070、1080のみが示されているが、本発明の範囲はそのように限定されないことは理解されよう。他の実施形態において、1つ又は複数の追加の処理要素を所与のプロセッサに提示してもよい。あるいは、処理要素1070、1080の1つ又は複数が、アクセラレータやフィールドプログラマブルゲートアレイのような、プロセッサ以外の要素であってもよい。例えば追加の処理要素は、第1のプロセッサ1070と同じ追加のプロセッサと、第1のプロセッサ1070のようなプロセッサと異種又は非対称の追加のプロセッサ、(例えばグラフィクスアクセラレータ又はデジタル信号処理(DSP)ユニットのような)アクセラレータ、フィールドプログラマブルゲートアレイ又は任意の他の処理要素を含んでもよい。アーキテクチャ、マイクロアーキテクチャ、熱、電力消費特性等を含むメリットのメトリクスのスペクトルに関して、処理要素1070と1080との間には様々な相違が存在する可能性がある。これらの相違は実質的に、処理要素1070、1080の間の非対称性及び異種性として現れることがある。少なくとも1つの実施形態に関して、様々な処理要素1070、1080が同じダイ・パッケージ内に存在し得る。
第1の処理要素1070は更に、メモリコントローラロジック(MC)1072と、ポイントツーポイント(P−P)インタフェース1076及び1078を含み得る。同様に、第2の処理要素1080も、MC1082と、P−Pインタフェース1086及び1088を含み得る。図7に示されるように、MC1072及び1082は、プロセッサを、それぞれのメモリ、すなわちメモリ1032及びメモリ1034に結合する。メモリ1032及びメモリ1034は、それぞれのプロセッサにローカルに取り付けられるメインメモリの一部であってよい。MCロジック1072及び1082は、処理要素1070及び1080に統合されるよう図示されているが、代替的な実施形態では、MCロジックは、処理要素1070、1080内に統合するのではなく、処理要素1070、1080の外にある別個のロジックとしてもよい。
第1の処理要素1070及び第2の処理要素1080は、それぞれP−P相互接続1076、1086及び1084を介してI/Oサブシステム1090に結合され得る。図7に示されるように、I/Oサブシステム1090は、P−Pインタフェース1094及び1098を含む。さらに、I/Oサブシステム1090は、I/Oサブシステム1090を高性能グラフィクスエンジン1038に結合するインタフェース1092を含む。一実施形態において、バス1049を使用して、グラフィクスエンジン1038をI/Oサブシステム1090に結合してもよい。あるいは、ポイントツーポイント相互接続1039がこれらのコンポーネントを結合してもよい。
続いて、I/Oサブシステム1090は、インタフェース1096を介して第1のバス1016に結合され得る。一実施形態において、第1のバス1016は周辺コンポーネント相互接続(PCI)バス又はPCIエクスプレスバスや別の第三世代のI/O相互接続バスのようなバスとすることができるが、本発明の範囲はこれに限定されない。
図7に示されるように、様々なI/Oデバイス1014は、バスブリッジ1018とともに第1のバス1016に結合されてよく、バスブリッジ1018は、第1のバス1016を第2のバス1020に結合することができる。I/Oデバイス1014は、例えば車両に対するモバイルデバイスの近接性ステータスを決定するのに使用され得る1つ又は複数の近接性センサを含み得る。例えば近接性センサは、近距離通信(NFC)技術、無線自動識別(RFID)技術、赤外線(IR)技術等を組み込むことができる。一実施形態において、第2のバス1020は、ローピンカウント(LPC)バスとすることができる。様々なデバイスを第2のバス1020に結合してもよく、一実施形態において、そのようなデバイスには、例えばキーボード/マウス1012、(図示されないコンピュータネットワークと通信することができる)通信デバイス1026及びディスクドライブやコード1030を含むことができる他の大容量記憶デバイスが含まれる。コード1030は、上述の方法の1つ又は複数の実施形態を実行するための命令を含むことができる。したがって、図示されるコード1030は、論理アーキテクチャ24(図3)を実装することがあり、上述のコード213(図6)と同様のものとすることができる。さらに、オーディオI/O1024を第2のバス1020に結合してもよい。
他の実施形態も考えられることに留意されたい。例えば図7のポイントツーポイントアーキテクチャの代わりに、システムは、マルチドロップバス又は別の上記通信トポロジを実装してもよい。また、図7の要素は、代替として、図7に示される統合チップよりも多くの、あるいは少ないチップを使用して区分化されてもよい。
したがって、本明細書で説明される技術は、スマートフォンやスマートタブレット等のような汎用デバイスを、車両のコンテキストにおける認証目的に使用できるようにすることにより、コストを低減することができる。加えて、多様なデバイスを車両と急きょペアリングすることができるという能力により、紛失するか盗まれた認証デバイスを交換することに関連する遅延も、大幅に低減することができる。さらに、セキュリティ制約を適用するためのカスタマイズ可能なプロファイル及び/又はポリシーの使用は、ユーザにとって非常に利便性の高いものであり、ユーザ経験を実質的に向上させることができる。加えて、モバイルデバイスは、車両と直接通信するように構成され得るので、サーバ及び/又はサービスプロバイダのような媒介を要することなく、近接性ステータスの情報を、汎用のモバイルデバイスと車両との間で直接決定することができる。
例として、車両に対する第1のモバイルデバイスの第1の近接性ステータスを決定する第1のファクタモジュールと、車両に対する第2のモバイルデバイスの第2の近接性ステータスを決定する第2のファクタモジュールとを含む装置が提供され得る。当該装置は、第1の近接性ステータス及び第2の近接性ステータスに少なくとも部分的に基づいて、車両の1つ又は複数の機能のアクセス性を構成する、セキュリティモジュールも含み得る。
さらに、セキュリティモジュールは、第1のモバイルデバイス及び第2のモバイルデバイスの1つ又は複数に関連付けられるポリシーを識別し、アクセス性は、ポリシーに更に基づいて構成される。
さらに、セキュリティモジュールは、第1のモバイルデバイス、第2のモバイルデバイス及び車両のうちの1つ又は複数のユーザインタフェースを介してユーザ要求を受信し、アクセス性は、ユーザ要求に応答して構成される。
また、セキュリティモジュールは、第1の近接性ステータス及び第2の近接性ステータスがポリシーのマルチファクタ条件を満たさない場合に、ユーザ要求を拒否する拒否コンポーネントを含み得る。
加えて、セキュリティモジュールは、第1の近接性ステータス及び第2の近接性ステータスがポリシーのマルチファクタ条件を満たす場合に、ユーザ要求を許可する許可コンポーネントを含み得る。
加えて、許可コンポーネントは、ポリシーの時間制約、ポリシーの位置制約及びポリシーのログイン制約のうちの1つ又は複数を、車両の1つ又は複数の機能のうちの少なくとも1つに適用し得る。
また、セキュリティモジュールは、第1の近接性ステータスが第1のモバイルデバイスが存在していないことを示すか、第2の近接性ステータスが第2のモバイルデバイスが存在していないことを示す場合、第1のモバイルデバイス、第2のモバイルデバイス及び車両のうちの1つ又は複数のユーザインタフェースを介して通知を生成する、通知コンポーネントを含み得る。
さらに、車両の1つ又は複数の機能の少なくとも1つは、ドアのロック解除機能、トランクのロック解除機能、イグニッション機能、ユーザ設定機能、車両操作機能及び置換デバイスのペアリング機能、のうちの1つ又は複数を含み得る。
さらに、上述の装置の例のうちのいずれかは、近接性センサを含んでもよく、第1のファクタモジュールは、近接性センサを使用して第1の近接性ステータスを決定し、第2のファクタモジュールは、近接性センサを使用して第2の近接性ステータスを決定する。
例として方法も含まれ、当該方法では、車両に対する第1のモバイルデバイスの第1の近接性ステータスを決定する。また、当該方法は、車両に対する第2のモバイルデバイスの第2の近接性ステータスを決定するステップと、第1の近接性ステータス及び第2の近接性ステータスに少なくとも部分的に基づいて、車両の1つ又は複数の機能のアクセス性を構成するステップも提供し得る。
さらに、方法は、第1のモバイルデバイス及び第2のモバイルデバイスの1つ又は複数に関連付けられるポリシーを識別するステップを更に含んでもよく、アクセス性は、ポリシーに更に基づいて構成される。
さらに、方法は、第1のモバイルデバイス、第2のモバイルデバイス及び車両のうちの1つ又は複数のユーザインタフェースを介してユーザ要求を受信するステップを更に含んでもよく、アクセス性は、ユーザ要求に応答して構成される。
また、アクセス性を構成するステップは、第1の近接性ステータス及び第2の近接性ステータスが、ポリシーのマルチファクタ条件を満たさない場合にユーザ要求を拒否するステップを含んでもよい。
加えて、アクセス性を構成するステップは、第1の近接性ステータス及び第2の近接性ステータスが、ポリシーのマルチファクタ条件を満たす場合に、ユーザ要求を許可するステップを含んでもよい。
加えて、アクセス性を構成するステップは、ポリシーの時間制約、ポリシーの位置制約及びポリシーのログイン制約のうちの1つ又は複数を、車両の1つ又は複数の機能のうちの少なくとも1つに適用するステップを更に含んでもよい。
また、アクセス性を構成するステップは、第1の近接性ステータスが第1のモバイルデバイスが存在していないことを示すか、第2の近接性ステータスが第2のモバイルデバイスが存在していないことを示す場合、第1のモバイルデバイス、第2のモバイルデバイス及び車両のうちの1つ又は複数のユーザインタフェースを介して通知を生成するステップを含んでもよい。
さらに、上述の方法の例のいずれかにおいて、車両の1つ又は複数の機能の少なくとも1つは、ドアのロック解除機能、トランクのロック解除機能、イグニッション機能、ユーザ設定機能、車両操作機能及び置換デバイスのペアリング機能、のうちの1つ又は複数を含み得る。
例には、プロセッサによって実行されると、車両に、上記の方法の例のいずれかを実行させる命令のセットを有する少なくとも1つのマシン読取可能媒体も含まれ得る。
また、例には、近接性センサと、該近接性センサを使用して、車両に対する第1のモバイルデバイスの第1の近接性ステータスを決定する第1のファクタモジュールとを有するシステムが含まれることがある。当該システムは、近接性センサを使用して、車両に対する第2のモバイルデバイスの第2の近接性ステータスを決定する第2のファクタモジュールと、第1の近接性ステータス及び第2の近接性ステータスに少なくとも部分的に基づいて、車両の1つ又は複数の機能のアクセス性を構成するセキュリティモジュールとを有することができる。
例には、マルチファクタ条件を有するポリシーを格納するポリシーリポジトリを有するモバイルデバイスも含まれ得る。当該モバイルデバイスは、車両のセキュリティモジュールから要求を受信し、該要求に応答してポリシーをセキュリティモジュールに伝送する無線インタフェースも含み得る。
さらに、マルチファクタ条件は、第1のモバイルデバイス又は第2のモバイルデバイスが、車両の近くにない場合、1つ又は複数の機能をアクセス可能にすべきかどうかを指示することがある。
さらに、モバイルデバイスは更に、第1のモバイルデバイスを車両とペアリングするペアリングモジュールを含んでもよい。
また、ペアリングモジュールは、第1のモバイルデバイスのユーザインタフェースを介してパスコードを受信することがあり、第1のモバイルデバイスは、パスコードがポリシーのログイン制約を満たす場合にのみ車両とペアリングされる。
加えて、無線インタフェースは、第1のモバイルデバイスがマスタデバイスであるという通知を受信することがあり、この場合、ポリシーは複数のユーザプロファイルを含む。
加えて、上述のモバイルデバイスの例のいずれかの無線インタフェースは、第1のモバイルデバイス又は第2のモバイルデバイスのいずれかが、車両の1つ又は複数の機能へのアクセスの試行中に、車両の近くにないという通知を受信することがある。
例には、プロセッサによって実行されると、第1のモバイルデバイスに、上記のモバイルデバイスの例に係る方法いずれかを実行させる命令のセットを備える少なくとも1つのマシン読取可能媒体も含まれ得る。
様々な実施形態が、ハードウェア要素、ソフトウェア要素及びその双方の組合せを使用して実装され得る。ハードウェア要素の例には、プロセッサ、マイクロプロセッサ、回路、回路要素(例えばトランジスタ、レジスタ、キャパシタ、インダクタ等)、集積回路、特定用途向け集積回路(ASIC)、プログラマブル論理デバイス(PLD)、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、ロジックゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセット等が含まれ得る。ソフトウェアの例には、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシージャ、ソフトウェアインタフェース、アプリケーションプログラムインタフェース(API)、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、記号又はこれらの任意の組み合わせが含まれ得る。実施形態が、ハードウェア要素及び/又はソフトウェア要素を使用して実装されるかどうかの判断は、所望の計算レート、パワーレベル、ヒートトレランス、処理サイクル量、入力データレート、出力データレート、メモリリソース、データバススピード及び他の設計若しくは性能制約のような、任意の数のファクタによって変化し得る。
少なくとも1つの実施形態の1つ又は複数の態様は、プロセッサ内の様々なロジックを表すマシン読取可能媒体上に格納される表現的命令によって実装されてよく、このような命令は、マシンによって読み取られると、該マシンに、本明細書で説明される技術を実行するロジックを作成させる。「IPコア」として知られるこのような表現は、有形のマシン読取可能媒体に格納され、様々な顧客又は製造施設に供給されて、実際にロジック又はプロセッサを作る制作マシンへとロードされる。
本発明の諸実施形態は、全てのタイプの半導体集積回路(「IC」)チップと使用するのに適用可能である。これらのICチップの例には、限定ではないが、プロセッサ、コントローラ、チップセットコンポーネント、プログラマブル論理アレイ(PLA)、メモリチップ、ネットワークチップ等が含まれる。さらに、図面の一部において、信号の導体線(signal conductor line)が線で表されている。より多くの構成信号経路を示すよう一部が相違するか、構成信号経路の数を示すよう番号ラベルを有するか、及び/又は主な情報の流れの方向を示すよう1つ又は複数の端部に矢印を有することがある。しかしながら、これは限定的に解釈されるべきではない。むしろ、そのような付加的な詳細は、回路のより容易な理解を促進するために、1つ又は複数の例示の実施形態との関連で用いられ得る。いずれかの示される信号線は実際に、追加の情報を有しているか否かに関わらず、複数の方向に進み、かつ例えば異なるペアで実装されるデジタル又はアナログ線、光ファイバ線及び/又はシングルエンド線のような任意の適切な信号スキームで実装され得る、1つ又は複数の信号を備え得る。
例示のサイズ/モデル/値/範囲が与えられているが、本発明の実施形態は同じものに制限されない。製造技術(例えばフォトリソグラフィ)が時間とともに成長すると、より小さいサイズのデバイスが製造され得ることが予想される。加えて、ICチップ及び他のコンポーネントへの周知の電力/接地接続は、説明及び検討の簡潔性並びに本発明の実施形態の特定の態様を曖昧にしないようにするために、図面内に示されていることも、示されていないこともある。さらに、本発明の実施形態を曖昧にするのを回避するために、配置構成をブロック図で示しているが、そのようなブロック図の配置構成の実装に関する仕様は、実施形態が実装されるプラットフォームに大いに依存する、すなわち、そのような仕様は十分に当業者の範囲内にあるべきである。本発明の例示の実施形態を説明するのに具体的な詳細(例えば回路)が示されている場合、本発明の実施形態は、これらの具体的な詳細を用いることなく実施されることが可能であり、あるいはその変形形態を用いて実施されることも可能であることを、当業者は認識されたい。したがって、説明は、限定ではなく例示として見なされるべきである。
一部の実施形態は、例えばマシン又は有形のコンピュータ読取可能媒体又は製品を使用して実装されてよく、これらの媒体又は製品は、マシンによって実行されると、該マシンに諸実施形態に係る方法及び/又は動作を実行させる、命令又は命令のセットを格納し得る。そのようなマシンは、例えば任意の適切な処理プラットフォーム、コンピューティングプラットフォーム、コンピューティングデバイス、処理デバイス、コンピューティングシステム、処理システム、コンピュータ、プロセッサ又は同様のものを含んでよく、またハードウェア及び/又はソフトウェアの任意の適切な組合せを使用して実装されてよい。マシン読取可能な媒体又は製品には、例えば任意の適切なタイプのメモリユニット、メモリデバイス、メモリ製品、メモリ媒体、記憶デバイス、記憶製品、記憶媒体及び/又は記憶ユニット、例えばメモリ、取外し可能又は取外し不可能媒体、消去可能/消去不可能媒体、書き込み可能又は書き換え可能媒体、デジタル又はアナログ媒体、ハードディスク、フロッピー(登録商標)ディスク、コンパクトディスク読み取り専用メモリ(CD−ROM)、記録可能コンパクトディスク(CD−R)、再書き込み可能コンパクトディスク(CD−RW)、光ディスク、磁気媒体、磁気光媒体、取外し可能メモリカード又はディスク、様々なタイプのデジタル多用途ディスク(DVD)、テープ、カセット等が含まれる。命令には、ソースコード、コンパイル済みのコード、翻訳済みのコード、実行可能コード、静的コード、動的コード、暗号化されたコード等のように、任意の適切な高レベル、低レベル、オブジェクト指向、ビジュアル、コンパイル及び/又は翻訳済みプログラミング言語を使用して実装される任意の適切なタイプのコードが含まれ得る。
特段の指定がない限り、「処理する」、「計算する」、「算出する」、「決定する」等のような用語は、コンピュータ若しくはコンピュータシステム又は類似の電子的なコンピューティングデバイスの動作及び/又は処理を指すことを認識されたい。このようなコンピュータ若しくはコンピュータシステム又は類似の電子的なコンピューティングデバイスは、コンピューティングシステム内のレジスタ及び/メモリ内の(例えば電子的)物理的な量として表されるデータを、コンピューティングシステムのメモリ、レジスタ又は他の上記の情報ストレージ、伝送又はディスプレイデバイス内の物理的な量として同様に表される他のデータへ操作及び/又は変換する。諸実施形態は、このコンテキストに限定されない。
「結合する」という用語は、対象のコンポーネント間の任意のタイプの直接的又は間接的な関係を指すのに使用されてよく、電子的、機械的、流体、光、電磁気、電気機械又は他の接続に当てはまることがある。加えて、「第1」、「第2」等の用語は、本明細書において検討を容易にするためだけに使用されるものであり、特段の指定がない限り、特定の時間的又は年代的重要性は有していない。
当業者は、上記の説明から、本発明の諸実施形態の広範な技術を様々な形式で実装することができることを認識するであろう。したがって、本発明の実施形態は、特定の実施例との関連で説明されているが、図面、明細書及び請求項の教示から、当業者には他の修正が明らかになるので、本発明の実施形態の実際の範囲はそのようなものに限定されるべきではない。