(57)【特許請求の範囲】
【請求項１】
機密データを記憶するように適合されたメモリ回路と、
NFCプロトコルを使用して情報を送信および受信するように適合されたNFCインターフェースと、
前記メモリ回路および前記NFCインターフェースに通信可能に結合された処理回路と
を備えるデバイスであって、前記処理回路は、
複数のプロバイダから複数のプロバイダ識別(PID)番号を受信することであって、各PID番号が異なるプロバイダに関連付けられる、受信することと、
前記メモリ回路に前記PID番号を記憶することと、
受信され記憶された各PID番号に複数の特権マスクのうちの1つの特権マスクを割り当てることであって、前記複数の特権マスクのうちの各特権マスクが、前記機密データの限定的部分を、前記複数のプロバイダのうちの1つのプロバイダがアクセス可能なものとして指定し、各特権マスクが、前記機密データの前記限定的部分が前記プロバイダによってアクセスされるときに前記デバイスおよび前記プロバイダが従うべき特定のレスポンスプロトコルをさらに指定する、割り当てることと
を行うように適合される、デバイス。
【請求項２】
前記処理回路は、
各プロバイダに、前記プロバイダに関連する前記PID番号に割り当てられた前記特権マスクに基づいて、前記プロバイダに関連する前記機密データの前記部分を送信するようにさらに適合される、請求項1に記載のデバイス。
【請求項３】
前記処理回路は、
受信され記憶された各PID番号に前記特権マスクを割り当てる前に、所望のレベルの機密データアクセスを示す特権マスク要求を各プロバイダから受信する
ようにさらに適合される、請求項1に記載のデバイス。
【請求項４】
前記処理回路に通信可能に結合された物理的クローン不能機能(PUF)回路をさらに備え、前記PUF回路が、入力チャレンジへの出力レスポンスを生成するように適合され、前記処理回路は、
前記PUF回路への入力チャレンジとして前記複数のPID番号のうちの1つまたは複数のPID番号を提供することと、
入力チャレンジとして前記1つまたは複数のPID番号を提供したことに応答して、前記PUF回路から1つまたは複数のPUF出力レスポンスを受信することであって、前記PUF出力レスポンスが互いに異なり、異なるプロバイダに関連付けられる、受信することと
を行うようにさらに適合される、請求項1に記載のデバイス。
【請求項５】
前記処理回路は、
前記異なるプロバイダに関連する前記1つまたは複数のPUF出力レスポンスを少なくとも部分的に使用して、1つまたは複数のプロバイダを認証する
ようにさらに適合される、請求項4に記載のデバイス。
【請求項６】
前記処理回路は、セキュリティ構成に従って少なくとも第1のプロバイダを登録するようにさらに適合され、それにより前記処理回路に、
前記第1のプロバイダから第1のPID番号を受信することであって、前記第1のPID番号が前記第1のプロバイダを識別する、受信することと、
前記メモリ回路に前記第1のPID番号を記憶することと、
前記第1のPID番号に第1の特権マスクを割り当てることであって、前記第1の特権マスクが、前記機密データの少なくとも一部分を第1のプロバイダ機密データとして指定する、割り当てることと、
前記デバイスに関連するユーザ識別(UID)番号を前記第1のプロバイダに送信することであって、前記UID番号が前記デバイスを識別する、送信することと
を行わせる、請求項1に記載のデバイス。
【請求項７】
前記処理回路は、前記セキュリティ構成に従って前記第1のプロバイダを確認するようにさらに適合され、それにより前記処理回路に、
前記第1のプロバイダから前記第1のPID番号を受信することと、
前記第1のPID番号に割り当てられた前記第1の特権マスクを適用して、前記第1のプロバイダが入手できる前記機密データを前記第1のプロバイダ機密データに限定することと、
前記第1のプロバイダに前記UID番号および前記第1のプロバイダ機密データを送信することと
を行わせる、請求項6に記載のデバイス。
【請求項８】
前記処理回路に通信可能に結合された物理的クローン不能機能(PUF)回路をさらに備え、前記PUF回路が、入力チャレンジへの出力レスポンスを生成するように適合され、前記処理回路は、セキュリティ構成に従って少なくとも第1のプロバイダを登録するようにさらに適合され、それにより前記処理回路に、
前記第1のプロバイダから第1のメッセージを受信することであって、前記第1のメッセージが第1のPID番号と前記第1のPID番号および第1の乱数r1のハッシュとを含み、前記第1のPID番号が前記第1のプロバイダを識別する、受信することと、
前記メモリ回路に前記第1のPID番号を記憶することと、
前記第1のPID番号に第1の特権マスクを割り当てることであって、前記第1の特権マスクが、前記機密データの少なくとも一部分を第1のプロバイダ機密データとして指定する、割り当てることと、
入力チャレンジとして前記PUF回路に前記第1のPID番号および前記第1の乱数r1の前記ハッシュを提供して、第1のノイズレスポンスkeを取得することと、
ヘルパーデータ生成関数を実行して、前記第1のノイズレスポンスkeに関連するヘルパーデータheを生成することと、
前記第1のプロバイダに第2のメッセージを送信することであって、前記第2のメッセージがユーザ識別(UID)番号と、前記第1のノイズレスポンスkeと、前記ヘルパーデータheとを含み、前記UID番号が前記デバイスを識別する、送信することと
を行わせる、請求項1に記載のデバイス。
【請求項９】
前記処理回路は、前記セキュリティ構成に従って前記第1のプロバイダを確認するようにさらに適合され、それにより前記処理回路に、
前記第1のプロバイダから第3のメッセージを受信することであって、前記第3のメッセージが前記第1のPID番号と、前記第1の乱数r1と、前記第1のPID番号および前記第1の乱数r1の前記ハッシュとを含む、受信することと、
前記第1のPID番号に割り当てられた前記第1の特権マスクを適用して、前記第1のプロバイダが入手できる前記機密データを前記第1のプロバイダ機密データに限定することと、
入力チャレンジとして前記PUF回路に前記第1のPID番号および前記第1の乱数r1の前記ハッシュを提供して、ターゲット生成の第2のノイズレスポンスkv_tを取得することと、
前記ヘルパーデータ生成関数を実行して、前記ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvを生成することと、
前記UID番号、前記ヘルパーデータhv、前記ターゲット生成の第2のノイズレスポンスkv_t、および第2の乱数r2のハッシュを含む値u1を計算することと、
前記第1のプロバイダに第4のメッセージを送信することであって、前記第4のメッセージが前記UID番号と、前記値u1と、前記第2の乱数r2と、前記ヘルパーデータhvと、前記第1のプロバイダ機密データとを含む、送信することと
を行わせる、請求項8に記載のデバイス。
【請求項１０】
前記処理回路は、セキュリティ構成に従って前記第1のプロバイダを確認するようにさらに適合され、それにより前記処理回路に、
前記第1のプロバイダに前記UID番号を送信することと、
前記第1のプロバイダから第3のメッセージを受信することであって、前記第3のメッセージが前記第1のPID番号と、前記第1の乱数r1と、前記第1のPID番号および前記第1の乱数r1の前記ハッシュとを含む、受信することと、
入力チャレンジとして前記PUF回路に前記第1のPID番号および前記第1の乱数r1の前記ハッシュを提供して、ターゲット生成の第2のノイズレスポンスkv_tを取得することと、
前記ヘルパーデータ生成関数を実行して、前記ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvを生成することと、
前記第1のプロバイダに第4のメッセージを送信することであって、前記第4のメッセージが第2の乱数r2と前記ヘルパーデータhvとを含み、前記第2の乱数r2が前記第1の乱数r1とは異なる、送信することと、
前記第1のプロバイダから第5のメッセージを受信することであって、前記第5のメッセージが第3の乱数r3と値u1とを含み、前記第3の乱数が前記第1の乱数r1とも前記第2の乱数r2とも異なり、前記値u1が前記UID番号、プロバイダ生成の第2のノイズレスポンスkv_p、前記第2の乱数r2、および前記第3の乱数r3のハッシュに基づく、受信することと、
前記UID番号、前記ターゲット生成の第2のノイズレスポンスkv_t、前記第2の乱数r2、および前記第3の乱数r3のハッシュに基づいて値u2を計算することと、
受信された前記値u1および計算された前記値u2に基づいて前記第1のプロバイダを認証することと、
前記第1のPID番号に割り当てられた前記第1の特権マスクを適用して、前記第1のプロバイダが入手できる前記機密データを前記第1のプロバイダ機密データに限定することと、
前記第1のプロバイダに第6のメッセージを送信することであって、前記第6のメッセージが前記第1のプロバイダ機密データと、前記UID番号、前記ターゲット生成の第2のノイズレスポンスkv_t、および前記第3の乱数r3のハッシュとを含む、送信することと
を行わせる、請求項8に記載のデバイス。
【請求項１１】
前記処理回路は、
前記第1のプロバイダに前記第6のメッセージを送信する前に、暗号キーとして前記ターゲット生成の第2のノイズ応答kv_tにより、前記第6のメッセージにおける前記第1のプロバイダ機密データを暗号化する
ようにさらに適合される、請求項10に記載のデバイス。
【請求項１２】
デバイスにおいて動作可能な方法であって、
複数のプロバイダから複数のプロバイダ識別(PID)番号を受信するステップであって、各PID番号が異なるプロバイダに関連付けられる、ステップと、
メモリ回路に前記PID番号を記憶するステップと、
受信され記憶された各PID番号に複数の特権マスクのうちの1つの特権マスクを割り当てるステップであって、前記複数の特権マスクのうちの各特権マスクが、機密データの限定的部分を、前記複数のプロバイダのうちの1つのプロバイダがアクセス可能なものとして指定し、各特権マスクが、前記機密データの前記限定的部分が前記プロバイダによってアクセスされるときに前記デバイスおよび前記プロバイダが従うべき特定のレスポンスプロトコルをさらに指定する、ステップと
を含む方法。
【請求項１３】
受信され記憶された各PID番号に前記特権マスクを割り当てる前に、所望のレベルの機密データアクセスを示す特権マスク要求を各プロバイダから受信するステップ
をさらに含む、請求項12に記載の方法。
【請求項１４】
PUF回路への入力チャレンジとして前記複数のPID番号のうちの1つまたは複数のPID番号を提供するステップと、
入力チャレンジとして前記1つまたは複数のPID番号を提供したことに応答して、前記PUF回路から1つまたは複数のPUF出力レスポンスを受信するステップであって、前記PUF出力レスポンスが互いに異なり、異なるプロバイダに関連付けられる、ステップと
をさらに含む、請求項12に記載の方法。
【請求項１５】
前記異なるプロバイダに関連する前記1つまたは複数のPUF出力レスポンスを少なくとも部分的に使用して、1つまたは複数のプロバイダを認証するステップ
をさらに含む、請求項14に記載の方法。
【請求項１６】
直接かつ/または間接的に情報を近距離無線通信(NFC)ターゲットデバイスに送信し、NFCターゲットデバイスから受信するように適合された通信インターフェースと、
メモリ回路と、
前記通信インターフェースおよび前記メモリ回路に通信可能に結合された処理回路と
を備えるサーバであって、前記処理回路は、
前記NFCターゲットデバイスにプロバイダ識別(PID)番号を送信することであって、前記PID番号が、前記サーバに関連付けられるプロバイダに関連付けられ、前記PID番号が他のプロバイダのPID番号とは異なる、送信することと、
前記NFCターゲットデバイスに特権マスク要求を送信することであって、前記特権マスク要求が、前記PID番号に関連付けられるべき所望の特権マスクを示し、前記所望の特権マスクが、前記NFCターゲットデバイスに記憶された機密データの限定的部分を、前記プロバイダに関連付けられ、前記サーバによってアクセス可能なプロバイダ機密データとして指定し、前記所望の特権マスクが、前記機密データの前記限定的部分が前記サーバによってアクセスされるときに前記サーバおよび前記NFCターゲットデバイスが従うべき特定のレスポンスプロトコルをさらに指定する、送信することと、
前記NFCターゲットデバイスに関連するユーザ識別(UID)番号を前記NFCターゲットデバイスから受信することであって、前記UID番号が前記NFCターゲットデバイスを識別する、受信することと、
前記メモリ回路に前記UID番号を記憶することと
を行うように適合される、サーバ。
【請求項１７】
前記NFCターゲットデバイスに前記PID番号を送信することと、前記NFCターゲットデバイスに前記特権マスク要求を送信することと、前記UID番号を受信し記憶することとは、セキュリティ構成に従って前記NFCターゲットデバイスに前記プロバイダを登録し、前記処理回路は、前記セキュリティ構成に従って前記NFCターゲットデバイスを確認するようにさらに適合され、それにより前記処理回路に、
前記NFCターゲットデバイスに前記PID番号を送信することと、
前記NFCターゲットデバイスから第1のメッセージを受信することであって、前記第1のメッセージが前記UID番号と前記プロバイダ機密データとを含む、受信することと、
前記第1のメッセージに受信された前記UID番号が前記メモリ回路に記憶された前記UID番号と合致することを確認することと、
受信された前記プロバイダ機密データを受け入れることと
を行わせる、請求項16に記載のサーバ。
【請求項１８】
前記処理回路は、セキュリティ構成に従って前記NFCターゲットデバイスに登録するようにさらに適合され、それにより前記処理回路に、
前記NFCターゲットデバイスに第1のメッセージを送信することであって、前記第1のメッセージが前記PID番号と前記PID番号および第1の乱数r1のハッシュとを含む、送信することと、
前記NFCターゲットデバイスから第2のメッセージを受信することであって、前記第2のメッセージが前記UID番号と、第1のノイズレスポンスkeと、前記第1のノイズレスポンスkeに関連するヘルパーデータheとを含む、受信することと、
前記第1のノイズレスポンスkeおよび前記ヘルパーデータheに基づいて復元関数を実行して、物理的クローン不能機能(PUF)レスポンスkを復元することと、
前記メモリ回路に前記レスポンスkを記憶することとを行わせ、前記処理回路は、前記セキュリティ構成に従って前記NFCターゲットデバイスを確認するようにさらに適合され、それにより前記処理回路に、
前記NFCターゲットデバイスに第3のメッセージを送信することであって、前記第3のメッセージが前記PID番号と、前記第1の乱数r1と、前記PID番号および前記第1の乱数r1の前記ハッシュとを含む、送信することと、
前記NFCターゲットデバイスから第4のメッセージを受信することであって、前記第4のメッセージが前記UID番号と、値u1と、前記第1の乱数r1とは異なる第2の乱数r2と、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvと、前記プロバイダ機密データとを含む、を受信することと、
前記NFCターゲットデバイスの前記UID番号に基づいて、前記PUFレスポンスkを取得することと、
前記PUFレスポンスkおよび前記ヘルパーデータhvに基づいて前記復元関数を実行して、プロバイダ生成の第2のノイズレスポンスkv_pを復元することと、
前記UID番号、前記ヘルパーデータhv、前記プロバイダ生成の第2のノイズレスポンスkv_p、および前記第2の乱数r2のハッシュに基づいて値u2を計算することと、
受信された前記値u1および計算された前記値u2に基づいて前記NFCターゲットデバイスを認証することと、
受信された前記プロバイダ機密データを受け入れることと
を行わせる、請求項16に記載のサーバ。
【請求項１９】
前記処理回路は、セキュリティ構成に従って前記NFCターゲットデバイスに登録するようにさらに適合され、それにより前記処理回路に、
前記NFCターゲットデバイスに第1のメッセージを送信することであって、前記第1のメッセージが前記PID番号と前記PID番号および第1の乱数r1のハッシュとを含む、送信することと、
前記NFCターゲットデバイスから第2のメッセージを受信することであって、前記第2のメッセージが前記UID番号と、第1のノイズレスポンスkeと、前記第1のノイズレスポンスkeに関連するヘルパーデータheとを含む、受信することと、
前記第1のノイズレスポンスkeおよび前記ヘルパーデータheに基づいて復元関数を実行して、物理的クローン不能機能(PUF)レスポンスkを復元することと、
前記メモリ回路に前記レスポンスkを記憶することとを行わせ、前記処理回路は、前記セキュリティ構成に従って前記NFCターゲットデバイスを確認するようにさらに適合され、それにより前記処理回路に、
前記NFCターゲットデバイスから前記UID番号を受信することと、
前記NFCターゲットデバイスから受信された前記UID番号が前記メモリ回路に記憶された前記UID番号と合致することを確認することと、
前記NFCターゲットデバイスに第3のメッセージを送信することであって、前記第3のメッセージが前記PID番号と、前記第1の乱数r1と、前記PID番号および前記第1の乱数r1の前記ハッシュとを含む、送信することと、
前記NFCターゲットデバイスから第4のメッセージを受信することであって、前記第4のメッセージが、前記第1の乱数r1とは異なる第2の乱数r2と、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvとを含む、受信することと、
前記NFCターゲットデバイスの前記UID番号に基づいて、前記PUFレスポンスkを取得することと、
前記PUFレスポンスkおよび前記ヘルパーデータhvに基づいて前記復元関数を実行して、プロバイダ生成の第2のノイズレスポンスkv_pを復元することと、
前記UID番号、前記プロバイダ生成の第2のノイズレスポンスkv_p、前記第2の乱数r2、および前記第1の乱数r1とも前記第2の乱数r2とも異なる第3の乱数r3のハッシュに基づいて値u1を計算することと、
前記NFCターゲットデバイスに第5のメッセージを送信することであって、前記第5のメッセージが前記値u1と前記第3の乱数r3とを含む、送信することと、
前記NFCターゲットデバイスから第6のメッセージを受信することであって、前記第6のメッセージが前記プロバイダ機密データと、前記UID番号、前記ターゲット生成の第2のノイズレスポンスkv_t、および前記第3の乱数r3のハッシュに基づく値u2とを含む、受信することと、
前記UID番号、前記プロバイダ生成の第2のノイズレスポンスkv_p、および前記第3の乱数r3のハッシュに基づいて値u3を計算することと、
受信された前記値u2および計算された前記値u3に基づいて前記NFCターゲットデバイスを認証することと、
受信された前記プロバイダ機密データを受け入れることと
を行わせる、請求項16に記載のサーバ。
【請求項２０】
前記プロバイダ機密データは、前記ターゲット生成の第2のノイズレスポンスkv_tによって暗号化され、前記処理回路は、
前記プロバイダ生成の第2のノイズレスポンスkv_pを使用して受信された前記プロバイダ機密データを解読するようにさらに適合される、請求項19に記載のサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、内容全体が参照により本明細書に組み込まれる、2015年2月3日に米国特許商標庁に出願された非仮出願第14/613,169号の優先権および利益を主張する。
【０００２】
様々な特徴は、一般に、セキュリティプロトコルおよびデバイスに関し、より詳細には、統合型近距離無線通信(NFC)インフラストラクチャのためのセキュリティプロトコルおよびデバイスに関する。
【背景技術】
【０００３】
NFCは、通常は10cm以下の距離を必要とする短距離ワイヤレス技術のセットである。NFCは、13.56MHzでISO/IEC18000-3エアインターフェース上で、現在では106kbit/sから424kbit/sの範囲のレートで動作する。NFCは、イニシエータおよびターゲットを伴う。NFCターゲットは、NFCイニシエータによる読取りおよび/または書込みが可能なデータを記憶することができるメモリ回路を含み得る。イニシエータは、NFCターゲットに電力供給できる無線周波数(RF)電界を能動的に生成し、NFCターゲットは、それ自体の電力源を有しない受動デバイスであることが多い。そのため、そのような受動NFCターゲットは、バッテリーを必要としないタグ、ステッカー、またはカードなどの非常に単純なフォームファクタを取り得る。
【０００４】
NFCアプリケーションのための1つの一般的な使用は、特定のアプリケーション、サービス、または目的に関連する情報を含むNFCターゲットカードを発行することである。したがって、ユーザは、異なるアプリケーション、サービス、または目的に関連する情報をそれぞれ記憶している多くの異なるNFCカードを携帯することがある。だが、そうすることは実際には、特に多くのカードを携帯しているユーザにとっては面倒なことになり得る。
【０００５】
結果として、多くの異なるアプリケーション、サービス、および目的に関連する情報を単一のNFCカードが記憶する統合型NFCカードアーキテクチャが提案されている。たとえば、統合型NFCカードは、ユーザの生年月日、社会保障番号、電話番号、年齢、住所、異なるサービスまたはマーチャントに関連するアカウント情報、クレジットカード番号、マーチャント/サービス報酬プログラムカード情報などを記憶し得る。単一のNFCカード上に様々な情報を記憶する能力は、通常であれば別々の個々のNFCカード上にそのような情報を記憶する必要があったかもしれないユーザにとってかなりの実益があり得る。
【０００６】
しかしながら、統合型NFCカードに関しては、特定のアプリケーション、サービス、または目的に関連付けられるNFCイニシエータがNFCカードに問い合わせ、それに関連する情報を取得するが、逆に、またはそのような関連情報に加えて、イニシエータに関連付けられないNFCカード上に記憶されたデータをイニシエータが意図的または無意図的に取得する場合に、セキュリティ問題が生じる。たとえば、スーパーマーケットに関連付けられるNFCイニシエータが、スーパーマーケット報酬カード番号を取得する意図を持ってユーザのNFCカードに問い合わせることがある。このデータに加えて、NFCイニシエータは、たとえば、電話番号、住所、社会保障番号、運転免許証番号など、およびNFCカード上に記憶された任意の他の機密データを含む、スーパーマーケットアカウント番号に関係しないデータを読み取ることが可能なことがある。
【０００７】
別のセキュリティ問題は、NFCカード「クローニング」を対象とする。不正な第三者が、元のNFCカードを、元のNFCカードのユーザに関連付けられない別の偽NFCカードにそのデータすべてをコピーすることによってクローニングすることを試みる可能性がある。次いで不正な第三者は、クローニングされた偽NFCカードを原物として通し、それによって、アクセスすべきでないモノおよびサービスにアクセスすることを試みる可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
NFCターゲット上に記憶され得る様々なタイプのデータのセキュリティを実現する統合型NFCターゲットアーキテクチャのためのセキュリティプロトコルおよびデバイスが必要である。具体的には、サービスおよびマーチャントなどのエンティティが、当該エンティティに関連付けられないか、またはアクセス不能であるべきNFCターゲット上に記憶された機密データにアクセスすることを妨げるのを助けるセキュリティプロトコルおよびデバイスが必要である。さらに、カードクローニングを妨害するのを助けるセキュリティプロトコルおよびデバイスが必要である。その上、NFCターゲットとサービスプロバイダ/マーチャントの両方の相互認証を行い、それによってサービスプロバイダおよびマーチャントがNFCターゲットに機密データを提供する前にNFCターゲットのアイデンティティを確認することができるセキュリティプロトコルおよびデバイスも必要である。
【課題を解決するための手段】
【０００９】
1つの特徴は、機密データを記憶するように適合されたメモリ回路と、近距離無線通信(NFC)プロトコルを使用して情報を送信および受信するように適合されたNFCインターフェースと、メモリ回路およびNFCインターフェースに通信可能に結合された処理回路とを備えるNFCターゲットデバイスを提供する。処理回路は、複数のプロバイダから複数のプロバイダ識別(PID)番号を受信することであって、各PID番号が異なるプロバイダに関連付けられる、受信することと、メモリ回路にPID番号を記憶することと、受信され記憶された各PID番号に複数の特権マスクのうちの1つの特権マスクを割り当てることであって、複数の特権マスクのうちの各特権マスクが、機密データの少なくとも一部分を、複数のプロバイダのうちの1つのプロバイダに関連するものとして指定する、割り当てることとを行うように適合される。一態様によれば、処理回路は、各プロバイダに、プロバイダに関連するPID番号に割り当てられた特権マスクに基づいて、プロバイダに関連する機密データの一部分を送信するようにさらに適合される。別の態様によれば、処理回路は、受信され記憶された各PID番号に特権マスクを割り当てる前に、所望のレベルの機密データアクセスを示す特権マスク要求を各プロバイダから受信するようにさらに適合される。
【００１０】
一態様によれば、NFCターゲットデバイスは、処理回路に通信可能に結合された物理的クローン不能機能(PUF:physical unclonable function)回路をさらに備え、PUF回路が、入力チャレンジへの出力レスポンスを生成するように適合され、処理回路は、PUF回路への入力チャレンジとして複数のPID番号のうちの1つまたは複数のPID番号を提供することと、入力チャレンジとして1つまたは複数のPID番号を提供したことに応答して、PUF回路から1つまたは複数のPUF出力レスポンスを受信することであって、PUF出力レスポンスが互いに異なり、異なるプロバイダに関連付けられる、受信することとを行うようにさらに適合される。一態様によれば、処理回路は、異なるプロバイダに関連付けられる1つまたは複数のPUF出力レスポンスを少なくとも部分的に使用して、1つまたは複数のプロバイダを認証するようにさらに適合される。別の態様によれば、処理回路は、セキュリティ構成に従って少なくとも第1のプロバイダを登録するようにさらに適合され、それにより処理回路に、第1のプロバイダから第1のPID番号を受信することであって、第1のPID番号が第1のプロバイダを識別する、受信することと、メモリ回路に第1のPID番号を記憶することと、第1のPID番号に第1の特権マスクを割り当てることであって、第1の特権マスクが、機密データの少なくとも一部分を第1のプロバイダ機密データとして指定する、割り当てることと、NFCターゲットデバイスに関連付けられるユーザ識別(UID)番号を第1のプロバイダに送信することであって、UID番号がNFCターゲットデバイスを識別する、送信することとを行わせる。
【００１１】
一態様によれば、処理回路は、セキュリティ構成に従って第1のプロバイダを確認するようにさらに適合され、それにより処理回路に、第1のプロバイダから第1のPID番号を受信することと、第1のPID番号に割り当てられた第1の特権マスクを適用して、第1のプロバイダが入手できる機密データを第1のプロバイダ機密データに限定することと、第1のプロバイダにUID番号および第1のプロバイダ機密データを送信することとを行わせる。別の態様によれば、NFCターゲットデバイスは、処理回路に通信可能に結合された物理的クローン不能機能(PUF)回路をさらに備え、PUF回路が、入力チャレンジへの出力レスポンスを生成するように適合され、処理回路は、セキュリティ構成に従って少なくとも第1のプロバイダを登録するようにさらに適合され、それにより処理回路に、第1のプロバイダから第1のメッセージを受信することであって、第1のメッセージが第1のPID番号と第1のPID番号および第1の乱数r1のハッシュとを含み、第1のPID番号が第1のプロバイダを識別する、受信することと、メモリ回路に第1のPID番号を記憶することと、第1のPID番号に第1の特権マスクを割り当てることであって、第1の特権マスクが、機密データの少なくとも一部分を第1のプロバイダ機密データとして指定する、割り当てることと、入力チャレンジとしてPUF回路に第1のPID番号および第1の乱数r1のハッシュを提供して、第1のノイズレスポンスkeを取得することと、ヘルパーデータ生成関数を実行して、第1のノイズレスポンスkeに関連付けられるヘルパーデータheを生成することと、第1のプロバイダに第2のメッセージを送信することであって、第2のメッセージがユーザ識別(UID)番号と、第1のノイズレスポンスkeと、ヘルパーデータheとを含み、UID番号がNFCターゲットデバイスを識別する、送信することとを行わせる。
【００１２】
一態様によれば、処理回路は、セキュリティ構成に従って第1のプロバイダを確認するようにさらに適合され、それにより処理回路に、第1のプロバイダから第3のメッセージを受信することであって、第3のメッセージが第1のPID番号と、第1の乱数r1と、第1のPID番号および第1の乱数r1のハッシュとを含む、受信することと、第1のPID番号に割り当てられた第1の特権マスクを適用して、第1のプロバイダが入手できる機密データを第1のプロバイダ機密データに限定することと、入力チャレンジとしてPUF回路に第1のPID番号および第1の乱数r1のハッシュを提供して、ターゲット生成の第2のノイズレスポンスkv_tを取得することと、ヘルパーデータ生成関数を実行して、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvを生成することと、UID番号、ヘルパーデータhv、ターゲット生成の第2のノイズレスポンスkv_t、および第2の乱数r2のハッシュを含む値u1を計算することと、第1のプロバイダに第4のメッセージを送信することであって、第4のメッセージがUID番号と、値u1と、第2の乱数r2と、ヘルパーデータhvと、第1のプロバイダ機密データとを含む、送信することとを行わせる。別の態様によれば、処理回路は、セキュリティ構成に従って第1のプロバイダを確認するようにさらに適合され、それにより処理回路に、第1のプロバイダにUID番号を送信することと、第1のプロバイダから第3のメッセージを受信することであって、第3のメッセージが第1のPID番号と、第1の乱数r1と、第1のPID番号および第1の乱数r1のハッシュとを含む、受信することと、入力チャレンジとしてPUF回路に第1のPID番号および第1の乱数r1のハッシュを提供して、ターゲット生成の第2のノイズレスポンスkv_tを取得することと、ヘルパーデータ生成関数を実行して、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvを生成することと、第1のプロバイダに第4のメッセージを送信することであって、第4のメッセージが第2の乱数r2とヘルパーデータhvとを含み、第2の乱数r2が第1の乱数r1とは異なる、送信することと、第1のプロバイダから第5のメッセージを受信することであって、第5のメッセージが第3の乱数r3と値u1とを含み、第3の乱数が第1の乱数r1とも第2の乱数r2とも異なり、値u1がUID番号、プロバイダ生成の第2のノイズレスポンスkv_p、第2の乱数r2、および第3の乱数r3のハッシュに基づく、受信することと、UID番号、ターゲット生成の第2のノイズレスポンスkv_t、第2の乱数r2、および第3の乱数r3のハッシュに基づいて値u2を計算することと、受信された値u1および計算された値u2に基づいて第1のプロバイダを認証することと、第1のPID番号に割り当てられた第1の特権マスクを適用して、第1のプロバイダが入手できる機密データを第1のプロバイダ機密データに限定することと、第1のプロバイダに第6のメッセージを送信することであって、第6のメッセージが第1のプロバイダ機密データと、UID番号、ターゲット生成の第2のノイズレスポンスkv_t、および第3の乱数r3のハッシュとを含む、送信することとを行わせる。また別の態様によれば、処理回路は、第1のプロバイダに第6のメッセージを送信する前に、暗号キーとしてターゲット生成の第2のノイズレスポンスkv_tにより、第6のメッセージにおける第1のプロバイダ機密データを暗号化するようにさ��に適合される。
【００１３】
別の特徴は、NFCターゲットデバイスにおいて動作可能な方法を提供し、本方法は、複数のプロバイダから複数のプロバイダ識別(PID)番号を受信するステップであって、各PID番号が異なるプロバイダに関連付けられる、ステップと、メモリ回路にPID番号を記憶するステップと、受信され記憶された各PID番号に複数の特権マスクのうちの1つの特権マスクを割り当てるステップであって、複数の特権マスクのうちの各特権マスクが、機密データの少なくとも一部分を、複数のプロバイダのうちの1つのプロバイダに関連するものとして指定する、ステップとを含む。一態様によれば、本方法は、受信され記憶された各PID番号に特権マスクを割り当てる前に、所望のレベルの機密データアクセスを示す特権マスク要求を各プロバイダから受信するステップをさらに含む。別の態様によれば、本方法は、PUF回路への入力チャレンジとして複数のPID番号のうちの1つまたは複数のPID番号を提供するステップと、入力チャレンジとして1つまたは複数のPID番号を提供したことに応答して、PUF回路から1つまたは複数のPUF出力レスポンスを受信するステップであって、PUF出力レスポンスが互いに異なり、異なるプロバイダに関連付けられる、ステップとをさらに含む。また別の態様によれば、本方法は、異なるプロバイダに関連する1つまたは複数のPUF出力レスポンスを少なくとも部分的に使用して、1つまたは複数のプロバイダを認証するステップをさらに含む。
【００１４】
別の特徴は、プロバイダに関連する、近距離無線通信(NFC)インフラストラクチャの一部としてのサーバを提供し、サーバが、直接かつ/または間接的に情報をNFCターゲットデバイスに送信し、NFCターゲットデバイスから受信するように適合された通信インターフェースと、メモリ回路と、通信インターフェースおよびメモリ回路に通信可能に結合された処理回路とを備え、処理回路は、NFCターゲットデバイスにプロバイダ識別(PID)番号を送信することであって、PID番号がプロバイダに関連付けられ、他のプロバイダのPID番号とは異なる、送信することと、NFCターゲットデバイスに特権マスク要求を送信することであって、特権マスク要求が、PID番号に関連付けられる所望の特権マスクを示し、所望の特権マスクが、NFCターゲットデバイスに記憶された機密データの少なくとも一部分を、プロバイダに関連付けられる、サーバによってアクセス可能なプロバイダ機密データとして指定する、送信することと、NFCターゲットデバイスに関連するユーザ識別(UID)番号をNFCターゲットデバイスから受信することであって、UID番号がNFCターゲットデバイスを識別する、受信することと、メモリ回路にUID番号を記憶することとを行うように適合される。一態様によれば、NFCターゲットデバイスにPID番号を送信することと、NFCターゲットデバイスに特権マスク要求を送信することと、UID番号を受信し記憶することとは、セキュリティ構成に従ってNFCターゲットデバイスにプロバイダを登録し、処理回路は、セキュリティ構成に従ってNFCターゲットデバイスを確認するようにさらに適合され、それにより処理回路に、NFCターゲットデバイスにPID番号を送信することと、NFCターゲットデバイスから第1のメッセージを受信することであって、第1のメッセージがUID番号とプロバイダ機密データとを含む、受信することと、第1のメッセージにおいて受信されたUID番号が、メモリ回路に記憶されたUID番号と合致することを確認することと、受信されたプロバイダ機密データを受け入れることとを行わせる。
【００１５】
一態様によれば、処理回路は、セキュリティ構成に従ってNFCターゲットデバイスに登録するようにさらに適合され、それにより処理回路に、NFCターゲットデバイスに第1のメッセージを送信することであって、第1のメッセージがPID番号と、PID番号および第1の乱数r1のハッシュとを含む、送信することと、NFCターゲットデバイスから第2のメッセージを受信することであって、第2のメッセージがUID番号と、第1のノイズレスポンスkeと、第1のノイズレスポンスkeに関連するヘルパーデータheとを含む、受信することと、第1のノイズレスポンスkeおよびヘルパーデータheに基づいて復元関数を実行して、物理的クローン不能機能(PUF)レスポンスkを復元することと、メモリ回路にレスポンスkを記憶することとを行わせ、処理回路は、セキュリティ構成に従ってNFCターゲットデバイスを確認するようにさらに適合され、それにより処理回路に、NFCターゲットデバイスに第3のメッセージを送信することであって、第3のメッセージがPID番号と、第1の乱数r1と、PID番号および第1の乱数r1のハッシュとを含む、送信することと、NFCターゲットデバイスから第4のメッセージを受信することであって、第4のメッセージがUID番号と、値u1と、第1の乱数r1とは異なる第2の乱数r2と、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvと、プロバイダ機密データとを含む、受信することと、NFCターゲットデバイスのUID番号に基づいてPUFレスポンスkを取得することと、PUFレスポンスkおよびヘルパーデータhvに基づいて復元関数を実行して、プロバイダ生成の第2のノイズレスポンスkv_pを復元することと、UID番号、ヘルパーデータhv、プロバイダ生成の第2のノイズレスポンスkv_p、および第2の乱数r2のハッシュに基づいて値u2を計算することと、受信された値u1および計算された値u2に基づいてNFCターゲットデバイスを認証することと、受信されたプロバイダ機密データを受け入れることとを行わせる。別の態様によれば、処理回路は、セキュリティ構成に従ってNFCターゲットデバイスに登録するようにさらに適合され、それにより処理回路に、NFCターゲットデバイスに第1のメッセージを送信することであって、第1のメッセージがPID番号と、PID番号および第1の乱数r1のハッシュとを含む、送信することと、NFCターゲットデバイスから第2のメッセージを受信することであって、第2のメッセージがUID番号と、第1のノイズレスポンスkeと、第1のノイズレスポンスkeに関連するヘルパーデータheとを含む、受信することと、第1のノイズレスポンスkeおよびヘルパーデータheに基づいて復元関数を実行して、物理的クローン不能機能(PUF)レスポンスkを復元することと、メモリ回路にレスポンスkを記憶することとを行わせ、処理回路は、セキュリティ構成に従ってNFCターゲットデバイスを確認するようにさらに適合され、それにより処理回路に、NFCターゲットデバイスからUID番号を受信することと、NFCターゲットデバイスから受信されたUID番号が、メモリ回路に記憶されたUID番号と合致することを確認することと、NFCターゲットデバイスに第3のメッセージを送信することであって、第3のメッセージがPID番号と、第1の乱数r1と、PID番号および第1の乱数r1のハッシュとを含む、送信することと、NFCターゲットデバイスから第4のメッセージを受信することであって、第4のメッセージが第1の乱数r1とは異なる第2の乱数r2と、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvとを含む、受信することと、NFCターゲットデバイスのUID番号に基づいてPUFレスポンスkを取得することと、PUFレスポンスkおよびヘルパーデータhvに基づいて復元関数を実行して、プロバイダ生成の第2のノイズレスポンスkv_pを復元することと、UID番号、プロバイダ生成の第2のノイズレスポンスkv_p、第2の乱数r2、および第1の乱数r1とも第2の乱数r2とも異なる第3の乱数r3のハッシュに基づいて値u1を計算することと、NFCターゲットデバイスに第5のメッセージを送信することであって、第5のメッセージが値u1と第3の乱数r3とを含む、送信することと、NFCターゲットデバイスから第6のメッセージを受信することであって、第6のメッセージがプロバイダ機密データと、UID番号、ターゲット生成の第2のノイズレスポンスkv_t、および第3の乱数r3のハッシュに基づく値u2とを含む、受信することと、UID番号、プロバイダ生成の第2のノイズレスポンスkv_p、および第3の乱数r3のハッシュに基づいて値u3を計算することと、受信された値u2および計算された値u3に基づいてNFCターゲットデバイスを認証することと、受信されたプロバイダ機密データを受け入れることとを行わせる。別の態様によれば、プロバイダ機密データは、ターゲット生成の第2のノイズレスポンスkv_tによって暗号化され、処理回路は、プロバイダ生成の第2のノイズレスポンスkv_pを使用して受信されたプロバイダ機密データを解読するようにさらに適合される。
【図面の簡単な説明】
【００１６】
【図１】統合型NFCインフラストラクチャのハイレベル概略ブロック図である。
【図２】登録プロセスを示すNFCインフラストラクチャのハイレベルブロック図である。
【図３】確認プロセスを示すNFCインフラストラクチャのハイレベルブロック図である。
【図４】NFCインフラストラクチャのハイレベル概略ブロック図である。
【図５】NFCカードに記憶された機密データの概略ブロック図である。
【図６】NFCインフラストラクチャのための第1の例示的なセキュリティ構成のプロセスフロー図である。
【図７Ａ】NFCインフラストラクチャのための第2の例示的なセキュリティ構成のプロセスフロー図である。
【図７Ｂ】NFCインフラストラクチャのための第2の例示的なセキュリティ構成のプロセスフロー図である。
【図８Ａ】NFCインフラストラクチャのための第3の例示的なセキュリティ構成のプロセスフロー図である。
【図８Ｂ】NFCインフラストラクチャのための第3の例示的なセキュリティ構成のプロセスフロー図である。
【図９】NFCインフラストラクチャのための第4の例示的なセキュリティ構成のプロセスフロー図である。
【図１０】第1のセキュリティ構成に基づいてNFCターゲットデバイスにおいて生じる登録プロセスのプロセスフロー図である。
【図１１】第1のセキュリティ構成に基づいてNFCターゲットデバイスにおいて生じる確認プロセスのプロセスフロー図である。
【図１２】第2のセキュリティ構成に基づいてNFCターゲットデバイスにおいて生じる登録プロセスのプロセスフロー図である。
【図１３】第2のセキュリティ構成に基づいてNFCターゲットデバイスにおいて生じる確認プロセスのプロセスフロー図である。
【図１４Ａ】第3のセキュリティ構成に基づいてNFCターゲットデバイスにおいて生じる確認プロセスのプロセスフロー図である。
【図１４Ｂ】第3のセキュリティ構成に基づいてNFCターゲットデバイスにおいて生じる確認プロセスのプロセスフロー図である。
【図１５】第1のセキュリティ構成に基づいてサーバにおいて生じる登録プロセスのプロセスフロー図である。
【図１６】第1のセキュリティ構成に基づいてサーバにおいて生じる確認プロセスのプロセスフロー図である。
【図１７】第2のセキュリティ構成に基づいてサーバにおいて生じる登録プロセスのプロセスフロー図である。
【図１８Ａ】第2のセキュリティ構成に基づいてサーバにおいて生じる確認プロセスのプロセスフロー図である。
【図１８Ｂ】第2のセキュリティ構成に基づいてサーバにおいて生じる確認プロセスのプロセスフロー図である。
【図１９Ａ】第3のセキュリティ構成に基づいてサーバにおいて生じる確認プロセスのプロセスフロー図である。
【図１９Ｂ】第3のセキュリティ構成に基づいてサーバにおいて生じる確認プロセスのプロセスフロー図である。
【図２０】NFCカードのPUFの一例の概略ブロック図である。
【図２１】NFCターゲットデバイスの概略ブロック図である。
【図２２】サーバの概略ブロック図である。
【発明を実施するための形態】
【００１７】
以下の説明では、本開示の様々な態様を完全に理解できるように、具体的な詳細が与えられる。しかしながら、各態様がこれらの具体的な詳細なしに実施されてもよいことが、当業者には理解されよう。たとえば、回路および構造は、不必要な詳細で態様を不明瞭にすることを避けるために、ブロック図で示されることがある。他の事例では、周知の回路、構造、および技法は、本開示の態様を不明瞭にしないために、詳細には示されないことがある。「例示的」という語は、本明細書では「例、事例、または例示としての役割を果たすこと」を意味するために使用される。「例示的」として本明細書で説明する任意の実装形態または態様は、必ずしも本開示の他の態様よりも好ましいか、または有利であると解釈されるべきではない。
【００１８】
概要
本明細書で説明するいくつかのシステム、方法、および装置は、機密データを記憶するように適合されたメモリ回路と、NFCプロトコルを使用して情報を送信および受信するように適合されたNFCインターフェースと、処理回路とを含むNFCターゲットデバイスに関する。処理回路は、複数のプロバイダから複数のプロバイダ識別(PID)番号を受信し、各PID番号が異なるプロバイダに関連付けられる。処理回路はまた、メモリ回路に各PID番号を記憶し、受信され記憶された各PID番号に特権マスクを割り当てる。NFCターゲットデバイスはまた、物理的クローン不能機能(PUF)回路を含み得る。処理回路は、さらに、PUF回路に入力チャレンジとして1つまたは複数のPID番号を提供し、PUF回路から1つまたは複数のPUF出力レスポンスを受信し、PUF出力レスポンスが互いに異なり、異なるプロバイダに関連付けられる。
【００１９】
統合型NFCインフラストラクチャのための例示的な装置、方法、およびシステム
図1は、本開示の一態様による統合型NFCインフラストラクチャ100(たとえば、NFCシステム)のハイレベル概略ブロック図を示す。インフラストラクチャ100は、NFCターゲット102と、ワイヤレス通信デバイス(WCD)104と、複数のプロバイダサーバ106a、106b...106nとを含み得る。
【００２０】
一般に、NFCターゲット102は、WCD104と比較して限られたリソースおよび計算能力を有するデバイスであり得る。一例によれば、NFCターゲット102は、限定はしないが、タグ、カード、ステッカー、キーフォブなどの受動NFCターゲットデバイスであり得る。別の例によれば、NFCターゲット102は、それ自体の電力源を有する能動デバイスであり得る。明快かつ単純にするために、NFCターゲット102は、本明細書では「NFCカード」と呼ばれ得る。だが、NFCカード102は、限定はしないが、タグ、ステッカー、キーフォブなどの任意の他のタイプのNFCターゲットデバイスであり得る。
【００２１】
WCD104は、WCD104がNFCプロトコルを使用してNFCカード102に問い合わせ、NFCカード102と通信することができるように、NFCが可能である任意のワイヤレス通信デバイスであり得る。一般に、WCD104は、NFCカード102よりも多くのリソースおよび計算能力を有する。WCD104はまた、ワイヤード通信プロトコル、長距離ワイヤレス通信プロトコル、または他の短距離通信プロトコルを通じて1つまたは複数のサーバ106a、106b...106nおよび他のデバイスと通信することができる。WCD104のいくつかの非限定的な例は、限定はしないが、NFC機能を有するラップトップ、スマートフォン、タブレット、携帯情報端末、デスクトップ端末、スマートウォッチおよび頭部装着ディスプレイを含むウェアラブルデバイスであり得る。
【００２２】
サーバ106a、106b...106nはそれぞれ、限定はしないが、マーチャントまたはサービスのプロバイダなど、異なるプロバイダ118に関連付けられ得る。いくつかの非限定的、非排他的な例としては、第1のサーバ106aは、一定年齢以上の成人にアルコール飲料を出す店舗に関連付けられてよく、第2のサーバ106bは、報酬プログラムを促進するために顧客に会員カードを提供するスーパーマーケットなどのマーチャントに関連付けられてよく、別のサーバ106nは、セキュリティキーカードおよび関連アカウント情報を顧客に割り当てる警備会社などのサービスのプロバイダであり得る。
【００２３】
NFCカード102は、物理的クローン不能機能(PUF)108を含む半導体デバイス(たとえば、チップ)を含む。PUFは、PUFを有するデバイスの1つまたは複数の集積回路(IC)の内部にある製造プロセスばらつきを活用するチップ固有のチャレンジレスポンス機構である。物理的刺激(たとえば、チャレンジ)がPUFに適用されると、PUFは、PUFを採用するデバイスの物理的微細構造との刺激の複雑な対話により予測不可能であるが繰り返し可能な方法でレスポンスを生成する。この厳密な微細構造は、PUFを採用するデバイスの製造中にもたらされる物理的要因に依存し、これは、予測不可能である。1つのデバイスが別の、一見すると同一のデバイスと同じプロセスで製造される場合でも、PUFを採用する各デバイスが、チャレンジをレスポンスにマッピングする一意の予測不可能な方法を有するという点で、PUFはクローニング困難である。したがって、製造プロセスの厳密な制御は実現不可能ではないにしても極めて困難であるので、別のデバイスのPUFと同じチャレンジレスポンス挙動をもつPUFを構築することは非常に非現実的である。
【００２４】
NFCデバイス102は、機密データ110をさらに含む。機密データ110は、カード102のユーザ116に関連するデータおよび/またはプロバイダ118のうちの1つもしくは複数に関連するデータを含み得る。たとえば、機密データ110は、ユーザ116の生年月日、社会保障番号、電話番号、年齢、住所、およびクレジットカード番号を含み得る。機密データ110はまた、たとえば、異なるプロバイダ118に関連するアカウント番号、顧客番号、および/または報酬プログラムアカウントデータを含み得る。機密データ110は、ユーザ116および/またはプロバイダ118が安全に保つことを希望する多くの他のタイプのデータを含み得る。
【００２５】
WCD104は、NFCリーダー112および通信インターフェース114を含む。NFCリーダー112は、WCD104がNFC通信プロトコルを使用してNFCカード102と通信することを可能にする。通信インターフェース114は、たとえば、WCD104がワイヤレスワイドエリアネットワーク(WWAN)、セルラーネットワーク、および/またはWiFi(登録商標)、Zigbee(登録商標)などの短距離通信プロトコルを通じて1つまたは複数のサーバ106a、106b...106nに通信することを可能にするワイヤレス通信インターフェースであり得る。
【００２６】
一態様によれば、WCD104は、ユーザ116に所属および/または関連し得る。たとえば、WCD104は、ユーザ116がNFCカード102に加えて携帯するスマートフォン、ラップトップ、タブレット、携帯情報端末、デスクトップ端末、スマートウォッチおよび頭部装着ディスプレイを含むウェアラブルデバイスであり得る。これによりユーザ116は、WCD104を自らの都合で使用して、NFCカード102との間でデータ110の読取りおよび/または書込みを行うことができる。たとえば、WCD104は、ユーザ116がある種のデータ110を含めるようにNFCカード102をプログラムする(たとえば、データを書き込む)ために使用し得るソフトウェアアプリケーションを含み得る。
【００２７】
別の態様によれば、WCD104は、プロバイダ118に所属および/または関連し得る。たとえば、WCD104は、プロバイダ118のところに位置するスマートフォン、ラップトップ、タブレット、デスクトップ端末、キオスク、スマートウォッチおよび頭部装着ディスプレイを含むウェアラブルデバイス、またはハンドヘルド電子デバイスであり得る。プロバイダ118の従業員またはスタッフは、WCD104を使用して、ユーザ116のNFCカード102との間でデータ110の読取りおよび/または書込みを行うことができる。
【００２８】
図2は、一態様による登録プロセスを示すNFCインフラストラクチャ100のハイレベルブロック図を示す。図示の例では、ユーザがNFCカード102(たとえば、NFCカードA)にプロバイダを登録する。ユーザのNFCカード102に登録された各プロバイダは、NFCカード102がプロバイダとプロバイダのレベルのセキュアデータ110アクセスとの間で区別することができるように、一意のプロバイダ識別番号(PID)により識別される。登録中、プロバイダに関連するサーバ106aが、そのPIDをNFCカード102に提供し得る。サーバ106aはまた、いくつかの場合には、追加データ(たとえば、データ1)を提供し得る。これは、WCD104にPID+データ1を送信し202、次にWCD104がNFCプロトコルを通じてNFCカード102にPID+データ1を送信する204ことによって達成され得る。WCD104がユーザに所属または関連する場合、サーバ106aからPID+データ1を受信する202ことと、ユーザのNFCカード102にPID+データ1を送信する204こととをWCD104に行わせるために、WCD104上に存在するアプリケーション206がユーザによって利用され得る。別の場合には、ユーザのNFCカード102がPID+データ1を受信する204ように、プロバイダのところに位置し、プロバイダに関連するWCD104にユーザが接近することがある。
【００２９】
NFCカード102がPID+データ1を受信する204と、NFCカード102はこのデータを記憶する207ことができる。次いでNFCカード102は、特権マスク(たとえば、セキュリティマスク)を割り当て、PIDに関連付ける208。一態様では、NFCカード102およびプロバイダのサーバ106aは、割り当てられ、PIDに関連付けられる208特権マスクに合意する。特権マスクは、たとえば、NFCカード102上に記憶されたデータ110にプロバイダが後にアクセスしようと試みたときに、プロバイダおよびそのサーバ106aに提供され得る特定のデータ110を画定するのを助ける。
【００３０】
所与のプロバイダに関するNFCカード102において割り当てられる208特権マスクに応じて、NFCカード102は、様々な複雑性およびセキュリティの1つまたは複数のレスポンスを生成し、プロバイダのサーバ106aに戻す形で送信する210。以下でより詳細に説明するように、一態様では、レスポンスは、単に、プロバイダのPIDの受信204に応答して、サーバ106aに戻す形で、NFCカード102に関連するユーザ識別(UID)番号を提供し得る。他の態様では、レスポンス(またはレスポンスのセット)のセキュリティおよび複雑性は、たとえば、NFCカードのPUF108によって生成されるチャレンジへのレスポンスを増加させ、組み込むことができる。
【００３１】
特権マスクによって規定された特定のレスポンスプロトコルにもかかわらず、レスポンスは、WCD104を介してNFCカード102からプロバイダのサーバ106aに送信され210、212得る。前述のように、WCD104がユーザに所属または関連する場合、ユーザは、WCD104上のアプリケーション206を利用して、サーバ106aへのNFCカード102のレスポンスを受信210および送信する212ことができる。次いでサーバ106aは、NFCカード102から受信されたレスポンスをメモリ回路216に記憶する214ことができる。サーバ106aは、サーバ106aが登録するあらゆるNFCカードから受信された異なるレスポンスを記憶することができる。したがって、サーバ106aは、登録されたNFCカードのアイデンティティを識別するエントリおよびその対応するレスポンスを記憶する214。サーバ106aはまた、NFCカード102に送られた204PID+データ1を記憶することができる。一態様によれば、メモリ回路216は、限定はしないが、フラッシュメモリ、磁気ストレージデバイス、ソリッドステートドライブ、光ストレージデバイス、テープなどを含む、任意のタイプの不揮発性記憶媒体であり得る。
【００３２】
図3は、一態様による確認プロセスを示すNFCインフラストラクチャ100のハイレベルブロック図を示す。図示の例では、NFCカード102上のデータ110が、以前登録されたプロバイダに、プロバイダおよび/またはユーザのNFCカード102の真正性を随意に確認した後に提供される。確認プロセス中、プロバイダに関連するサーバ106aが、そのPIDを何らかのデータ(たとえば、データ2)に加えて、NFCカード102に提供し得る。これは、WCD104にPID+データ2を送信し302、次にWCD104がNFCプロトコルを通じてNFCカード102にPID+データ2を送信する304ことによって達成され得る。WCD104がユーザに所属または関連する場合、サーバ106aからPID+データ2を受信する302ことと、ユーザのNFCカード102にPID+データ2を送信する304こととをWCD104に行わせるために、WCD104上に存在するアプリケーション206がユーザによって利用され得る。別の場合には、ユーザのNFCカード102がPID+データ2を受信する304ように、プロバイダのところに位置し、プロバイダに関連するWCD104にユーザが接近することがある。
【００３３】
NFCカード102がPID+データ2を受信する304と、NFCカード102は随意に、PIDおよび/またはデータ2に基づいてサーバ106aを確認する306ことができる。これは、動作を実行することと、サーバ106aに関連する以前記憶されたデータ(たとえば、PIDおよびデータ1)と比較することとによって達成され得る。NFCカード102がサーバ106aの真正性を確認する306と仮定すると、NFCカード102は、PIDに基づいてプロバイダおよび/またはサーバ106aに関連する特権マスクを適用する308。適用される308特権マスクに応じて、NFCカード102は、様々な複雑性およびセキュリティの1つまたは複数のレスポンスを生成し、プロバイダのサーバ106aに戻す形で送信する310。以下でより詳細に説明するように、一態様では、レスポンスは、単に、プロバイダのPID+データ2の受信304に応答して、サーバ106aに戻す形で、NFCカード102に関連するユーザ識別(UID)番号を提供し得る。他の態様では、1つまたは複数のレスポンスのセキュリティおよび複雑性は、たとえば、NFCカードのPUF108によって生成されるチャレンジへのレスポンスを増加させ、組み込むことができる。
【００３４】
特権マスクによって規定された特定のレスポンスプロトコルにもかかわらず、レスポンスは、WCD104を介してNFCカード102からプロバイダのサーバ106aに送信され310、312得る。前述のように、WCD104がユーザに所属または関連する場合、ユーザは、WCD104上のアプリケーション206を利用して、サーバ106aへのNFCカード102のレスポンスを受信310および送信312することができる。サーバ106aは、次いで随意に、NFCカード102から受信されたレスポンスを、たとえば、メモリ回路216に記憶された以前収集されたレスポンスと比較することによって、確認する314ことができる。したがって、確認中にサーバ106aにおいて受信された312レスポンスが、NFCカード102(たとえば、NFCカードA)に関連する以前記憶された214レスポンスデータと合致した場合、NFCカード102は認証され得、NFCカード102から取り出されたデータ110は信頼され得る。
【００３５】
図4は、一態様によるNFCインフラストラクチャ100のハイレベル概略ブロック図を示す。図示の例は、複数のプロバイダのサーバ106a、106b...106nの各々が、NFCカード102(たとえば、NFCカードA)に登録および確認するために、それらを一意に識別する異なるPID(たとえば、PIDA、PIDB、PIDN)を送信し得る方法を示す。このようにして、複数のプロバイダは、それらの一意のPIDを使用してシステムに登録し得る。NFCカード102は、登録されたプロバイダのサーバ106a、106b...106nの各々に関連するデータ402、404、406(たとえば、PID情報および他のデータ)を記憶し得る。各サーバ106a、106b...106nは、NFCカード102に提供されたPIDおよび他のデータに応答してNFCカード102によって生成された一意のレスポンス410、412、414を記憶し得る。これらのレスポンス410、412、414は、サーバ106a、106b...106nがNFCカード102の真正性を後に確認できるように記憶される。サーバ106a、106b...106nは、それらが登録したあらゆる異なるNFCカードのレスポンスを記憶し得る。WCD104は、サーバ106a、106b...106nとNFCカード102との間の通信路として働き得る。
【００３６】
図5は、本開示の一態様による、NFCカード102に記憶された機密データ110の概略ブロック図を示す。機密データ110は、そのいくつかの部分のみが1つまたは複数のプロバイダおよび/またはそれらのサーバに入手可能な、かつ/または関連するものとして指定されるように、特権マスクに従って分配され得る。たとえば、図1、図4、および図5を参照すると、第1のプロバイダ機密データ502は、第1の特権マスクに従って第1のプロバイダ(たとえば、プロバイダA)のサーバ106aに提供(たとえば、送信)され得るNFCカード102に記憶された機密データ110の少なくとも一部分を表し得る。第1のプロバイダ機密データ502は、たとえば、NFCカードユーザの名前、年齢、およびユーザ116の写真を含み得る。したがって、必要なときに、NFCカード102および/またはサーバ106aの正常な認証を仮定すると、多くともこの情報のみが第1のプロバイダのサーバ106aに提供および/または送信され得る。
【００３７】
同様に、第2のプロバイダ機密データ504は、第2の特権マスクに従って第2のプロバイダ(たとえば、プロバイダB)のサーバ106bに提供(たとえば、送信)され得るNFCカード102に記憶された機密データ110の少なくとも一部分を表し得る。第2のプロバイダ機密データ504は、たとえば、第2のプロバイダに関連するNFCカードユーザ116の報酬プログラムカード/アカウント番号を含み得る。したがって、必要なときに、NFCカード102および/またはサーバ106bの正常な認証を仮定すると、多くともこの情報のみが第2のプロバイダのサーバ106bに提供および/または送信され得る。このようにして、機密データ110は、N個の異なるプロバイダおよび/またはサーバに関連付けられるN個のプロバイダ機密データ502、504、506を含み得る。
【００３８】
図6は、一態様によるNFCインフラストラクチャのための第1の例示的なセキュリティ構成600のプロセスフロー図を示す。図1、図5、および図6を参照すると、第1のセキュリティ構成600は、NFCカード102およびサーバ106bの単純な識別を含むNFCインフラストラクチャ100のための第1のレベルのセキュリティを提供する。第1のセキュリティ構成600は、NFCカード102またはサーバ106aのいずれかの暗号認証を必ずしも行うとは限らないという点で単純である。
【００３９】
第1のセキュリティ構成600の登録プロセスは、プロバイダのサーバ106aがNFCカード102に一意のPIDを送信する602ことにより始まり得る。次いでNFCカード102は、受信されたPIDを記憶604し、PIDに関連する特権マスクを割り当てる606ことができる。特権マスクは、たとえば、NFCカード102上に記憶された機密データ110にサーバ106aが後にアクセスしようと試みたときに、サーバ106aに提供され得るプロバイダ機密データ(たとえば、第1のプロバイダ機密データ502)である機密データ110の部分を画定するのを助ける。一態様によれば、NFCカード102およびサーバ106aは、割り当てられるべき特権マスクを、NFCカード102がそれを割り当てる前に交渉する。これは、サーバ106aがNFCカード102に、NFCカード102上に記憶されたいくつかのタイプの機密データ110への所望のレベルのアクセスを示す特権マスク要求を送信することを含み得る。しかしながら、サーバ106aの要求を承認すべきかどうか、またどの特権マスクをサーバ106aのPIDに割り当てる606かを、NFCカード102が最終的に決定し得る。このようにして、NFCカード102は、確認後にサーバ106aが後にアクセスし得るプロバイダ機密データ502にどんな機密データが含まれるかを制御し得る。特権マスクが割り当てられた606後、NFCカード102は、NFCカード102に関連するユーザ識別(UID)番号をサーバ106aに送信する608。UIDは、NFCカード102を一意に識別する一意の番号または値である。次いでサーバ106aは、NFCカード102に関連するUIDを記憶する610。
【００４０】
第1のセキュリティ構成600の確認プロセスは、プロバイダのサーバ106aがそのPIDをNFCカード102に送信する652ことにより始まり得る。次いでNFCカード102は、受信されたPIDに関連する特権マスク設定を調べ、PIDに関連する特権マスクを適用する654ことができる。次いでNFCカード102は、そのユーザ識別(UID)番号と、プロバイダおよび/またはサーバ106aに関連する第1のプロバイダ機密データ502とをサーバ106aに送信する656。次いでサーバ106aは、NFCカード102から受信されたUIDと合致する、記憶されたUID値をサーバ106aが実際に有することを確認する658。有することを確認したと仮定すると、サーバ106aは、受信された第1のプロバイダ機密データ502を受け入れる660ことができる。
【００４１】
図7Aおよび図7Bは、一態様によるNFCインフラストラクチャのための第2の例示的なセキュリティ構成700のプロセスフロー図を示す。図1、図5、図7A、および図7Bを参照すると、第2のセキュリティ構成700は、NFCインフラストラクチャ100のための第2のレベルのセキュリティを提供する。具体的には、第2のセキュリティ構成700は、サーバ106aがNFCカード102のアイデンティティを判断するのを助けるために、NFCカード102を暗号認証することを可能にする。
【００４２】
第2のセキュリティ構成700の登録プロセスは、プロバイダのサーバ106aがPIDとPIDおよび第1の乱数r1のハッシュ(本明細書ではh()として示されるハッシュ関数)(すなわち、h(PID,r1))とを含むメッセージをNFCカード102に送信する702ことにより始まり得る。次いでNFCカード102は、受信されたPIDを記憶し704、PIDに関連する特権マスクを割り当てる706ことができる。一態様によれば、NFCカード102およびサーバ106aは、割り当てられた特権マスクを交渉する(たとえば、サーバ106aは、機密データへの所望のレベルのアクセスを示す特権マスク要求を送信する)。特権マスクが割り当てられた706後、NFCカード102は、そのPUF108をチャレンジとしてh(PID,r1)により実行し708、それによってノイズレスポンスkeを生成する。レスポンスkeは、NFCカード102および/またはPUF108デバイス自体に関連するノイズ(たとえば、熱ノイズ、電気的ノイズなど)に起因して、予想されるクリーン(すなわち、ノイズのない)レスポンスkとはある程度異なるという点で、ノイズがある。したがって、PUF108は、チャレンジh(PID,r1)へのレスポンスkを生成するのが理想だが、ノイズに起因して、実際にはノイズレスポンスkeを生成する。しかしながら、当技術分野で知られているように、ノイズレスポンスに基づくクリーンPUFレスポンスの復元を可能にするために、(本明細書ではGen()として示される)ヘルパーデータ生成関数を使用してヘルパーデータが生成され得る。
【００４３】
NFCカード102がノイズレスポンスkeを生成した後、NFCカード102は、Gen(ke)を実行して710、ヘルパーデータheを生成する。次いでNFCカード102は、そのUIDと、ノイズレスポンスkeと、ヘルパーデータheとを含むメッセージをサーバ106aに送信する712ことができる。次いでサーバ106aは、復元関数(本明細書ではRep()として示される)を実行して、ヘルパーデータheを使用してノイズレスポンスkeからクリーンレスポンスkを復元することができる。したがって、サーバ106aは、Rep(ke,he)を実行して714、クリーンレスポンスkを生成することができる。次いでサーバ106aは、UIDおよびレスポンスkを記憶する716ことができる。
【００４４】
第2のセキュリティ構成700の確認プロセスは、プロバイダのサーバ106aがPIDと、h(PID,r1)と、r1とを含むメッセージをNFCカード102に送信する752ことにより始まり得る。次いでNFCカード102は、受信されたPIDに関連する特権マスク設定を調べ、PIDに関連する特権マスクを適用する754ことができる。次いでNFCカード102は、そのPUF108をチャレンジとしてh(PID,r1)により実行し756、それによってNFCターゲット生成の第2のノイズレスポンスkv_tを生成することができる。第2のノイズレスポンスkv_tと第1のノイズレスポンスkeとは、ノイズの予測不可能な性質に起因して、チャレンジ(h(PID,r1))が同じであっても、異なる。次いでNFCカード102は、Gen(kv_t)を実行して758、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvを生成する。
【００４５】
NFCカード102はまた、h(UID,hv,kv_t,r2)に等しい値u1を生成することができ、r2がr1とは異なる第2の乱数である。次いで、UIDと、u1と、r2と、hv_pと、プロバイダおよび/またはサーバ106aに関連する第1のプロバイダ機密データ502とを含むメッセージが、NFCカード102からサーバ106aに送信される762。
【００４６】
次いでサーバ106aは、受信されたUID値に関連する以前記憶されたクリーンレスポンスkを取り出し764、Rep(k,hv)を実行して766、プロバイダ生成の第2のノイズレスポンスkv_pを復元することができる。NFCカード102およびサーバ106aが両方とも、互いに登録プロセスに参加した同じデバイスである(すなわち、いずれも、異なるデバイスによってなりすまされていない)場合には、ターゲット生成の第2のノイズレスポンスkv_tおよびプロバイダ生成の第2のノイズレスポンスkv_pは同じであるはずである。次いでサーバ106aは、以前復元した766プロバイダ生成の第2のノイズレスポンスkv_pを使用してu2=h(UID,hv,kv_p,r2)を生成して768、NFCカード102から受信した値u1が生成した値u2と合致する(たとえば、等しい)かどうかを確認する770。u1=u2の場合、NFCカード102はサーバ106aによって認証され、サーバ106aは、受信された第1のプロバイダ機密データ502を確実に受け入れる772ことができる。
【００４７】
図8Aおよび図8Bは、一態様によるNFCインフラストラクチャのための第3の例示的なセキュリティ構成800のプロセスフロー図を示す。図1、図5、図8A、および図8Bを参照すると、第3のセキュリティ構成800は、NFCインフラストラクチャ100のための第3のレベルのセキュリティを提供する。具体的には、第3のセキュリティ構成800は、サーバ106aおよびNFCカード102が互いに暗号認証することを可能にする。
【００４８】
第3のセキュリティ構成800の登録プロセスは、プロバイダのサーバ106aがそのPIDとh(PID,r1)とを含むメッセージをNFCカード102に送信する802ことにより始まり得、r1が、生成され、サーバ106aに記憶された第1の乱数である。次いでNFCカード102は、受信されたPIDを記憶804し、PIDに関連する特権マスクを割り当てる806ことができる。一態様によれば、NFCカード102およびサーバ106aは、割り当てられた特権マスクを交渉する(たとえば、サーバ106aは、機密データへの所望のレベルのアクセスを示す特権マスク要求を送信する)。特権マスクが割り当てられた806後、NFCカード102は、そのPUF108をチャレンジとしてh(PID,r1)により実行808し、それによってノイズレスポンスkeを生成する。
【００４９】
NFCカード102がノイズレスポンスkeを生成した後、NFCカード102はGen(ke)を実行して810、ヘルパーデータheを生成する。次いでNFCカード102は、そのUIDと、ノイズレスポンスkeと、ヘルパーデータheとを含むメッセージをサーバ106aに送信する812ことができる。次いでサーバ106aはRep(ke,he)を実行して814、クリーンレスポンスkを生成することができる。サーバ106aは、UIDおよびレスポンスkを記憶する816。
【００５０】
第3のセキュリティ構成800の確認プロセスは、NFCカード102がそのUIDをサーバ106aに送信する852ことにより始まり得る。UIDが存在する(たとえば、UIDに対応する登録エンティティをサーバ106aが有する)ことを確認した845後、サーバ106aは、PIDと、h(PID,r1)と、r1とを含むメッセージをNFCカード102に送信する856。次いでNFCカード102は、そのPUF108をチャレンジとしてh(PID,r1)により実行858し、それによってターゲット生成の第2のノイズレスポンスkv_tを生成することができる。ターゲット生成の第2のノイズレスポンスkv_tは、第1のノイズレスポンスkeとは異なる。次いでNFCカード102はGen(kv_t)を実行して860、第2のノイズレスポンスkv_tに関連するヘルパーデータhvを生成し、ヘルパーデータhvと(第1の乱数r1とは異なる)第2の乱数r2とを含むメッセージをサーバ106aに送信する862。
【００５１】
次いでサーバ106aは、受信されたUID値に関連する以前記憶されたクリーンレスポンスkを取り出し864、Rep(k,hv)を実行して866、プロバイダ生成の第2のノイズレスポンスkv_pを復元する。次いでサーバ106aは、以前復元した866プロバイダ生成の第2のノイズレスポンスkv_pを使用してu1=h(UID,kv_p,r2,r3)を生成する868。第3の乱数r3は、第1および第2の乱数r1、r2とは異なる別の乱数である。次いでu1とr3とを含むメッセージがNFCカード102に送信される870。
【００５２】
次いでNFCカード102は、以前生成した858ターゲット生成の第2のノイズレスポンスkv_tを使用してu2=h(UID,kv_t,r2,r3)を生成し872、サーバ106aから受信した値u1が生成した値u2と合致する(たとえば、等しい)かどうかを確認する874。u1=u2を仮定すると、サーバ106aは認証され、NFCカード102は、u3=h(UID,kv_t,r3)を生成し876、サーバ106aのPIDに関連する特権マスクを適用する878。次いでNFCカード102は、値u3と、プロバイダおよび/またはサーバ106aに関連する第1のプロバイダ機密データ502とをサーバ106aに送信する880。
【００５３】
次いでサーバ106aは、プロバイダ生成の第2のノイズレスポンスkv_pを使用してu4=h(UID,kv_p,r3)を生成し882、NFCカード102から受信した値u3が生成した値u4と合致する(たとえば、等しい)かどうかを確認する884。u3=u4を仮定すると、NFCカード102は認証され、サーバ106aは、受信された第1のプロバイダ機密データ502を確実に受け入れる886ことができる。
【００５４】
図9は、一態様によるNFCインフラストラクチャのための第4の例示的なセキュリティ構成900のプロセスフロー図を示す。図1、図5、図8A、図8B、および図9を参照すると、第4のセキュリティ構成900は、第3のセキュリティ構成800に基づくNFCインフラストラクチャ100のための第4のレベルのセキュリティを提供する。第3のセキュリティ構成800と同様に、第4のセキュリティ構成はまた、サーバ106aおよびNFCカード102が互いに暗号認証することを可能にするが、NFCカード102からサーバ106aに送信された第1のプロバイダ機密データ502の暗号化の追加の特徴を有する。
【００５５】
たとえば、第4のセキュリティ構成900は、第3のセキュリティ構成800のプロセスおよび通信802、804、806、808、810、812、814、816、852、854、856、858、860、862、864、866、868、870、872、874、876、878に基づいてNFCカード102およびサーバ106aの相互認証を含む。ただし、セキュリティの追加の対策として、特権マスクを適用した878後、NFCカード102は、値u3とプロバイダおよび/またはサーバ106aに関連する第1のプロバイダ機密データ502の暗号化(関数Enc()によって示される)バージョンとを含むメッセージを送信する902。第1のプロバイダ機密データ502は、キーとしてターゲット生成の第2のノイズレスポンスkv_tを使用して暗号化される。値u3=u4を確認した884後、サーバ106aは、受信された機密データを受け入れ、サーバ106aが以前生成した866プロバイダ生成の第2のノイズレスポンスkv_pを使用して解読する904。ある場合には、NFCカード102は、キーとしてターゲット生成の第2のノイズレスポンスkv_tを使用して、送信される902メッセージ全体を暗号化することができる。そのような場合、サーバ106aは、u4を生成し、u3=u4を確認する前に、最初に、プロバイダ生成の第2のノイズレスポンスkv_pを使用して、受信されたメッセージを解読する。
【００５６】
図6〜図9に示す例は、NFCカード102とプロバイダのサーバ106aとの間の通信交換を示す。これらの通信交換は、NFCカード102とサーバ106aとの間で直接発生するものとして示されているが、いくつかの態様では、WCD104(図1〜図4参照)は、NFCカード102とサーバ106aとの間の通信仲介として機能し得る(たとえば、NFCを使用してNFCカード102との間でデータを送信/受信し、長距離または短距離通信プロトコルを使用してサーバ106aとの間でデータを送信/受信する)。他の態様では、サーバ106aは、NFCインターフェース自体を有することができ、したがって、NFCを使用してNFCカード102と直接通信することができる。
【００５７】
図10は、本開示の一態様による、第1のセキュリティ構成600に基づいてNFCターゲットデバイス102において生じる登録プロセスのプロセスフロー図1000を示す。まず、NFCターゲットデバイスは、第1のプロバイダから第1のPID番号を受信し、第1のPID番号が第1のプロバイダを識別する1002。次に、NFCターゲットデバイスは、メモリ回路に第1のPID番号を記憶する1004。次いで、ターゲットデバイスは、第1のPID番号に第1の特権マスクを割り当て、第1の特権マスクが、機密データの少なくとも一部分を第1のプロバイダ機密データとして指定する1006。次に、NFCターゲットデバイスは、NFCターゲットデバイスに関連するユーザ識別(UID)番号を第1のプロバイダに送信し、UID番号がNFCターゲットデバイスを識別する1008。
【００５８】
図11は、本開示の一態様による、第1のセキュリティ構成600に基づいてNFCターゲットデバイス102において生じる確認プロセスのプロセスフロー図1100を示す。まず、NFCターゲットデバイスは、第1のプロバイダから第1のPID番号を受信する1102。次に、デバイスは、第1のPID番号に割り当てられた第1の特権マスクを適用して、第1のプロバイダが入手できる機密データを第1のプロバイダ機密データに限定する1104。次いで、ターゲットデバイスは、第1のプロバイダにUID番号および第1のプロバイダ機密データを送信する1106。
【００５９】
図12は、本開示の一態様による、第2のセキュリティ構成700に基づいてNFCターゲットデバイス102において生じる登録プロセスのプロセスフロー図1200を示す。まず、NFCターゲットデバイスは、第1のプロバイダから第1のメッセージを受信し、第1のメッセージが第1のPID番号と第1のPID番号および第1の乱数r1のハッシュとを含み、第1のPID番号が第1のプロバイダを識別する1202。次に、NFCターゲットデバイスは、メモリ回路に第1のPID番号を記憶する1204。次いで、ターゲットデバイスは、第1のPID番号に第1の特権マスクを割り当て、第1の特権マスクが、機密データの少なくとも一部分を第1のプロバイダ機密データとして指定する1206。次に、NFCターゲットデバイスは、入力チャレンジとしてPUF回路に第1のPID番号および第1の乱数r1のハッシュを提供して、第1のノイズレスポンスkeを取得する1208。次いで、ターゲットデバイスは、ヘルパーデータ生成関数を実行して、第1のノイズレスポンスkeに関連するヘルパーデータheを生成する1210。次に、ターゲットデバイスは第1のプロバイダに第2のメッセージを送信し、第2のメッセージがユーザ識別(UID)番号と、第1のノイズレスポンスkeと、ヘルパーデータheとを含み、UID番号がNFCターゲットデバイスを識別する1212。
【００６０】
図13は、本開示の一態様による、第2のセキュリティ構成700に基づいてNFCターゲットデバイス102において生じる確認プロセスのプロセスフロー図1300を示す。まず、NFCターゲットデバイスは、第1のプロバイダから第3のメッセージを受信し、第3のメッセージが第1のPID番号と、第1の乱数r1と、第1のPID番号および第1の乱数r1のハッシュとを含む1302。次いで、ターゲットデバイスは、第1のPID番号に割り当てられた第1の特権マスクを適用して、第1のプロバイダが入手できる機密データを第1のプロバイダ機密データに限定する1304。次に、ターゲットデバイスは、入力チャレンジとしてPUF回路に第1のPID番号および第1の乱数r1のハッシュを提供して、ターゲット生成の第2のノイズレスポンスkv_tを取得する1306。次いで、ターゲットデバイスは、ヘルパーデータ生成関数を実行して、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvを生成する1308。次に、ターゲットデバイスは、UID番号、ヘルパーデータhv、ターゲット生成の第2のノイズレスポンスkv_t、および第2の乱数r2のハッシュを含む値u1を計算する1310。次いで、ターゲットデバイスは、第1のプロバイダに第4のメッセージを送信し、第4のメッセージがUID番号と、値u1と、第2の乱数r2と、ヘルパーデータhvと、第1のプロバイダ機密データとを含む1312。
【００６１】
図14Aおよび図14Bは、本開示の一態様による、第3のセキュリティ構成800に基づいてNFCターゲットデバイス102において生じる確認プロセスのプロセスフロー図1400を示す。まず、NFCターゲットデバイスは、第1のプロバイダにUID番号を送信する1402。次に、ターゲットデバイスは、第1のプロバイダから第3のメッセージを受信し、第3のメッセージが第1のPID番号と、第1の乱数r1と、第1のPID番号および第1の乱数r1のハッシュとを含む1404。次いで、ターゲットデバイスは、入力チャレンジとしてPUF回路に第1のPID番号および第1の乱数r1のハッシュを提供して、ターゲット生成の第2のノイズレスポンスkv_tを取得する1406。次に、ターゲットデバイスは、ヘルパーデータ生成関数を実行して、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvを生成する1408。次いで、ターゲットデバイスは、第1のプロバイダに第4のメッセージを送信し、第4のメッセージが第2の乱数r2とヘルパーデータhvとを含み、第2の乱数r2が第1の乱数r1とは異なる1410。次に、ターゲットデバイスは、第1のプロバイダから第5のメッセージを受信し、第5のメッセージが第3の乱数r3と値u1とを含み、第3の乱数が第1の乱数r1とも第2の乱数r2とも異なり、値u1がUID番号、プロバイダ生成の第2のノイズレスポンスkv_p、第2の乱数r2、および第3の乱数r3のハッシュに基づく1412。
【００６２】
次いで、ターゲットデバイスは、UID番号、ターゲット生成の第2のノイズレスポンスkv_t、第2の乱数r2、および第3の乱数r3のハッシュに基づいて値u2を計算する1414。次に、ターゲットデバイスは、受信された値u1および計算された値u2に基づいて第1のプロバイダを認証する1416。次いで、ターゲットデバイスは、第1のPID番号に割り当てられた第1の特権マスクを適用して、第1のプロバイダが入手できる機密データを第1のプロバイダ機密データに限定する1418。次に、ターゲットデバイスは、第1のプロバイダに第6のメッセージを送信し、第6のメッセージが第1のプロバイダ機密データと、UID番号、ターゲット生成の第2のノイズレスポンスkv_t、および第3の乱数r3のハッシュとを含む1420。
【００６３】
図15は、本開示の一態様による、第1のセキュリティ構成600に基づいてサーバ106aにおいて生じる登録プロセスのプロセスフロー図1500を示す。まず、サーバはNFCターゲットデバイスにプロバイダ識別(PID)番号を提供し、PID番号がプロバイダに関連付けられ、他のプロバイダのPID番号とは異なる1502。次に、サーバはNFCターゲットデバイスに特権マスク要求を送信し、特権マスク要求が、PID番号に関連付けられるべき所望の特権マスクを示し、所望の特権マスクが、NFCターゲットデバイスに記憶された機密データの少なくとも一部分を、プロバイダに関連付けられ、サーバによってアクセス可能なプロバイダ機密データとして指定する1504。次いで、サーバは、NFCターゲットデバイスに関連するユーザ識別(UID)番号をNFCターゲットデバイスから受信し、UID番号がNFCターゲットデバイスを識別する1506。次に、サーバは、メモリ回路にUID番号を記憶する1508。
【００６４】
図16は、本開示の一態様による、第1のセキュリティ構成600に基づいてサーバ106aにおいて生じる確認プロセスのプロセスフロー図1600を示す。まず、サーバはNFCターゲットデバイスにPID番号を送信する1602。次に、サーバは、NFCターゲットデバイスから第1のメッセージを受信し、第1のメッセージがUID番号とプロバイダ機密データとを含む1604。次いで、サーバは、第1のメッセージに受信されたUID番号がメモリ回路に記憶されたUID番号と合致することを確認する1606。次に、サーバは、受信されたプロバイダ機密データを受け入れる1608。
【００６５】
図17は、本開示の一態様による、第2のセキュリティ構成700に基づいてサーバ106aにおいて生じる登録プロセスのプロセスフロー図1700を示す。まず、サーバは、NFCターゲットデバイスに第1のメッセージを送信し、第1のメッセージがPID番号とPID番号および第1の乱数r1のハッシュとを含む1702。次に、サーバは、NFCターゲットデバイスから第2のメッセージを受信し、第2のメッセージがUID番号と、第1のノイズレスポンスkeと、第1のノイズレスポンスkeに関連付けられるヘルパーデータheとを含む1704。次いで、サーバは、受信された第1のノイズレスポンスkeおよびヘルパーデータheに基づいて復元関数を実行して、物理的クローン不能機能(PUF)レスポンスkを復元する1706。次に、サーバは、メモリ回路にレスポンスkを記憶する1708。
【００６６】
図18Aおよび図18Bは、本開示の一態様による、第2のセキュリティ構成700に基づいてサーバ106aにおいて生じる確認プロセスのプロセスフロー図1800を示す。まず、サーバは、NFCターゲットデバイスに第3のメッセージを送信し、第3のメッセージがPID番号と、第1の乱数r1と、PID番号および第1の乱数r1のハッシュとを含む1802。次いで、サーバは、NFCターゲットデバイスから第4のメッセージを受信し、第4のメッセージがUID番号と、値u1と、第1の乱数r1とは異なる第2の乱数r2と、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvと、プロバイダ機密データとを含む1804。次に、サーバは、NFCターゲットデバイスのUID番号に基づいて、PUFレスポンスkを取得する1806。次いで、サーバは、PUFレスポンスkおよびヘルパーデータhvに基づいて復元関数を実行して、プロバイダ生成の第2のノイズレスポンスkv_pを復元する1808。次に、サーバは、UID番号、ヘルパーデータhv、プロバイダ生成の第2のノイズレスポンスkv_p、および第2の乱数r2のハッシュに基づいて値u2を計算する1810。次いで、サーバは、受信された値u1および計算された値u2に基づいてNFCターゲットデバイスを認証する1812。次に、サーバは、受信されたプロバイダ機密データを受け入れる1814。
【００６７】
図19Aおよび図19Bは、本開示の一態様による、第3のセキュリティ構成800に基づいてサーバ106aにおいて生じる確認プロセスのプロセスフロー図1900を示す。まず、サーバは、NFCターゲットデバイスからUID番号を受信する1902。次いで、サーバは、NFCターゲットデバイスから受信されたUID番号がメモリ回路に記憶されたUID番号と合致することを確認する1904。次に、サーバは、NFCターゲットデバイスに第3のメッセージを送信し、第3のメッセージがPID番号と、第1の乱数r1と、PID番号および第1の乱数r1のハッシュとを含む1906。次いで、サーバは、NFCターゲットデバイスから第4のメッセージを受信し、第4のメッセージが、第1の乱数r1とは異なる第2の乱数r2と、ターゲット生成の第2のノイズレスポンスkv_tに関連するヘルパーデータhvとを含む1908。次に、サーバは、NFCターゲットデバイスのUID番号に基づいて、PUFレスポンスkを取得する1910。次いで、サーバは、PUFレスポンスkおよびヘルパーデータhvに基づいて復元関数を実行して、プロバイダ生成の第2のノイズレスポンスkv_pを復元する1912。
【００６８】
次に、サーバは、UID番号、プロバイダ生成の第2のノイズレスポンスkv_p、第2の乱数r2、および第1の乱数r1とも第2の乱数r2とも異なる第3の乱数r3のハッシュに基づいて値u1を計算する1914。次いで、サーバは、NFCターゲットデバイスに第5のメッセージを送信し、第5のメッセージが値u1と第3の乱数r3とを含む1916。次に、サーバは、NFCターゲットデバイスから第6のメッセージを受信し、第6のメッセージがプロバイダ機密データと、UID番号、ターゲット生成の第2のノイズレスポンスkv_t、および第3の乱数r3のハッシュに基づく値u2とを含む1918。次いで、サーバは、UID番号、プロバイダ生成の第2のノイズレスポンスkv_p、および第3の乱数r3のハッシュに基づいて値u3を計算する1920。次に、サーバは、受信された値u2および計算された値u3に基づいてNFCターゲットデバイスを認証する1922。次いで、サーバは、受信されたプロバイダ機密データを受け入れる1924。
【００６９】
図20は、一態様によるNFCカードのPUF108の一例の概略ブロック図を示す。図示のように、PUF108は、リング発振器ベースPUFであり得る。複数のリング発振器(RO)2002が同時に有効化され得、それらの出力が2つ以上のスイッチ(マルチプレクサ)2004、2006に送られる。チャレンジが各スイッチ2004、2006への入力として働き、それにより各スイッチ2004、2006に、複数のRO2002の中から単一のROを選択させる。スイッチ2004、2006に送られるチャレンジは、各スイッチ2004、2006が異なるROを選択するように設計される。選択されたROは、各々が同一であるように製造されている場合でも、若干の半導体レベルの製造ばらつきに起因する、選択されたROに関連する若干異なる共振周波数をそれぞれ有する。PUF出力(レスポンス)は、カウンタ2010、2012によって測定/記憶される、これらの選択されたリング発振器の周波数のペアワイズ比較2008によって生成される。たとえば、第1のカウンタ2010が第2のカウンタ2012よりも高い周波数を検出した場合は論理「1」が生成され得、そうでない場合は論理「0」が生成され得る。このようにして、行われた比較はチャレンジ/レスポンス機構を表し、選択されたROペアがチャレンジであり、RO周波数比較結果がレスポンスである。PUF108を有する異なるが(ほぼ)同等に製造されたNFCカード102に発信された同じチャレンジは、異なるレスポンス値につながる。これは結局、1つのNFCカード102を別のNFCカードから、それらが同じになるように製造されている場合でも識別するのを助ける。
【００７０】
図20に示す例は、NFCカードのPUF108に使用され得るPUFの一例にすぎない。限定はしないが、アービタPUF、SRAM PUFなどを含む多くの他のPUF設計も、NFCカード102のPUF108として使用され得る。
【００７１】
図21は、本開示の一態様によるNFCターゲットデバイス2100の概略ブロック図を示す。NFCターゲットデバイス2100は、PUF回路108、処理回路2102、メモリ回路2104、入力/出力(I/O)インターフェース2106、および/またはNFC通信インターフェース2108を含み得る。1つまたは複数のこれらの構成要素/回路108、2102、2104、2106、2108は、たとえば、通信バス2110を通じて互いに通信可能に結合され得る。NFCターゲットデバイス2100は、それ自体の電力源(図示せず)を有してよく、または代わりにNFCインテロゲータによって提供されたRF放射によって電力供給されるという点で受動的であり得る。
【００７２】
メモリ回路2104は、とりわけ、NFCターゲットデバイス2100のユーザおよび/または1つもしくは複数のプロバイダに関連する機密データを含み得る。たとえば、メモリ回路2104は、図1、図2、図3、図4、図5、図6、図7A、図7B、図8A、図8B、図9、図10、図11、図12、図13、図14A、図14B、図15、図16、図17、図18A、図18B、図19A、および/または図19Bにおいて図示および説明した機密データ110を含み得る。I/Oインターフェース2106は、1つまたは複数のボタン、キーボード、センサー、カメラ、タッチスクリーンなどを含み得る。代わりに、NFCターゲットデバイス2100はI/Oインターフェース2106を有しないことがある。NFC通信インターフェース2108は、NFCターゲットデバイス2100がNFCプロトコルを通じてデータを送信および受信することを可能にする。たとえば、NFC通信インターフェース2108は、NFCターゲットデバイス2100が、NFCインテロゲータを有するWCD104および/またはNFCインテロゲータを備えたサーバ106aと通信することを可能にする。
【００７３】
処理回路2102は一般に、メモリ回路2104上に記憶されたプロセスおよび/またはソフトウェア命令を実行するように適合される。処理回路2102は、複数のプロバイダから複数のプロバイダ識別(PID)番号を受信することであって、各PID番号が異なるプロバイダに関連付けられる、受信すること、メモリ回路2104にPID番号を記憶すること、受信され記憶された各PID番号に複数の特権マスクのうちの1つの特権マスクを割り当てること、各プロバイダに、プロバイダに関連するPID番号に割り当てられた特権マスクに基づいて、プロバイダに関連する機密データの一部分を送信すること、受信され記憶された各PID番号に特権マスクを割り当てる前に、所望のレベルの機密データアクセスを示す特権マスク要求を各プロバイダから受信すること、PUF回路108への入力チャレンジとして複数のPID番号のうちの1つまたは複数のPID番号を提供すること、入力チャレンジとして1つまたは複数のPID番号を提供したことに応答して、PUF回路108から1つまたは複数のPUF出力レスポンスを受信することであって、PUF出力レスポンスが互いに異なり、異なるプロバイダに関連付けられる、受信すること、ならびに/あるいは異なるプロバイダに関連する1つまたは複数のPUF出力レスポンスを少なくとも部分的に使用して、1つまたは複数のプロバイダを認証することを行うように適合され得る。
【００７４】
図22は、本開示の一態様によるサーバ2200の概略ブロック図を示す。サーバ2200は、処理回路2202、メモリ回路2204、入力/出力(I/O)インターフェース2206、および/または通信インターフェース2208を含み得る。1つまたは複数のこれらの構成要素/回路2202、2204、2206、2208は、たとえば、通信バス2210を通じて互いに通信可能に結合され得る。
【００７５】
メモリ回路2204は、とりわけ、NFCカードのUIDおよびPUFレスポンスkを記憶し得る。I/Oインターフェース2206は、キーボード、マウス、タッチスクリーン、カメラ、センサーなどを含み得る。通信インターフェース2208は、サーバ2200が短距離または長距離通信プロトコルを使用してデータを送信および受信することを可能にし、NFCプロトコルにも対応し得る。たとえば、通信インターフェース2208は、サーバ2200がWCD104と通信することを可能にし、サーバ2200がNFCプロトコルを通じてNFCカード102と直接通信することも可能にし得る。
【００７６】
処理回路2202は一般に、メモリ回路2204上に記憶されたプロセスおよび/またはソフトウェア命令を実行するように適合される。処理回路2202は、NFCターゲットデバイスにプロバイダ識別(PID)番号を送信すること、NFCターゲットデバイスに特権マスク要求を送信することであって、特権マスク要求が、PID番号に関連付けられるべき所望の特権マスクを示す、送信すること、NFCターゲットデバイスに関連するユーザ識別(UID)番号をNFCターゲットデバイスから受信すること、および/またはメモリ回路2204にUID番号を記憶することを行うように適合され得る。
【００７７】
図1、図2、図3、図4、図5、図6、図7A、図7B、図8A、図8B、図9、図10、図11、図12、図13、図14A、図14B、図15、図16、図17、図18A、図18B、図19A、図19B、図20、図21、および/または図22に示す構成要素、ステップ、特徴、および/または機能のうちの1つまたは複数は、単一の構成要素、ステップ、特徴もしくは機能に再構成され、かつ/もしくは組み合わされ、またはいくつかの構成要素、ステップ、もしくは機能で具現化され得る。本発明から逸脱することなく、さらなる要素、構成要素、ステップ、および/または機能が付加されてもよい。図1、図2、図3、図4、図5、図20、図21、および/または図22に示す装置、デバイス、および/または構成要素は、図6、図7A、図7B、図8A、図8B、図9、図10、図11、図12、図13、図14A、図14B、図15、図16、図17、図18A、図18B、図19A、および/または図19Bに記載した方法、特徴、またはステップのうちの1つまたは複数を実行するように構成され得る。また、本明細書で説明するアルゴリズムは、効率的にソフトウェアに実装され、かつ/またはハードウェアに組み込まれ得る。
【００７８】
その上、本開示の一態様では、図21に示す処理回路2102は、図6、図7A、図7B、図8A、図8B、図9、図10、図11、図12、図13、図14A、および/または図14Bと関連する本文とに記載したアルゴリズム、方法、および/またはステップを実行するように特に設計かつ/または配線接続される専用プロセッサ(たとえば、特定用途向け集積回路(たとえば、ASIC))であり得る。したがって、そのような専用プロセッサ(たとえば、ASIC)は、図6、図7A、図7B、図8A、図8B、図9、図10、図11、図12、図13、図14A、および/または図14Bに記載したアルゴリズム、方法、および/またはステップを実行するための手段の一例であり得る。
【００７９】
同様に、本開示の別の態様では、図22に示す処理回路2202は、図6、図7A、図7B、図8A、図8B、図9、図15、図16、図17、図18A、図18B、図19A、および/または図19Bと関連する本文とに記載したアルゴリズム、方法、および/またはステップを実行するように特に設計かつ/または配線接続される専用プロセッサ(たとえば、ASIC)であり得る。したがって、そのような専用プロセッサ(たとえば、ASIC)は、図6、図7A、図7B、図8A、図8B、図9、図15、図16、図17、図18A、図18B、図19A、および/または図19Bに記載したアルゴリズム、方法、および/またはステップを実行するための手段の一例であり得る。
【００８０】
また、本開示の態様は、フローチャート、フロー図、構造図またはブロック図として示されるプロセスとして説明される場合があることに留意されたい。フローチャートは動作を逐次プロセスとして説明する場合があるが、動作の多くは並行してまたは同時に実行され得る。加えて、動作の順序は並べ替えられてよい。プロセスは、その動作が完了したときに終了する。プロセスは、方法、関数、プロシージャ、サブルーチン、サブプログラムなどに対応してもよい。プロセスが関数に対応する場合、その終了は呼出し関数またはメイン関数への関数の戻りに対応する。
【００８１】
さらに、記憶媒体は、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光学記憶媒体、フラッシュメモリデバイスおよび/もしくは他の機械可読媒体、およびプロセッサ可読媒体、ならびに/または情報を記憶するためのコンピュータ可読媒体を含む、データを記憶するための1つまたは複数のデバイスを表すことができる。「機械可読媒体」、「コンピュータ可読媒体」、および/または「プロセッサ可読媒体」という用語は、限定はしないが、ポータブルもしくは固定ストレージデバイス、光ストレージデバイス、ならびに、命令および/またはデータを記憶または格納することが可能な様々な他の媒体のような非一時的媒体を含み得る。したがって、本明細書で説明する様々な方法は、「機械可読媒体」、「コンピュータ可読媒体」および/または「プロセッサ可読媒体」に記憶され、1つまたは複数のプロセッサ、機械および/またはデバイスによって実行され得る命令および/またはデータによって、完全にまたは部分的に実装され得る。
【００８２】
さらに、本開示の態様は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、またはそれらの任意の組合せによって実装され得る。ソフトウェア、ファームウェア、ミドルウェアまたはマイクロコードにおいて実装されるとき、必要なタスクを実行するためのプログラムコードまたはコードセグメントは、記憶媒体または他のストレージなどの機械可読媒体内に記憶され得る。プロセッサは、必要なタスクを実行する場合がある。コードセグメントは、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、または命令、データ構造もしくはプログラムステートメントの任意の組合せを表す場合がある。コードセグメントは、情報、データ、引数、パラメータ、またはメモリ内容を渡すことおよび/または受け取ることによって、別のコードセグメントまたはハードウェア回路に結合されてもよい。情報、引数、パラメータ、データなどは、メモリ共有、メッセージパッシング、トークンパッシング、ネットワーク送信などを含む、任意の適切な手段を介して渡されてもよく、転送されてもよく、または送信され得る。
【００８３】
本明細書で開示する例に関して説明する様々な例示的な論理ブロック、モジュール、回路、要素、および/または構成要素は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理構成要素、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、または本明細書で説明する機能を実行するように設計されたそれらの任意の組合せで実装または実行され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来型プロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであり得る。プロセッサはまた、コンピューティング構成要素の組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、いくつかのマイクロプロセッサ、DSPコアと連係した1つもしくは複数のマイクロプロセッサ、または他の任意のそのような構成として実装され得る。
【００８４】
本明細書で開示する例に関連して説明する方法またはアルゴリズムは、処理ユニット、プログラミング命令、または他の指示の形で、ハードウェアにおいて直接、プロセッサによって実行可能なソフトウェアモジュール中で、またはこの両方の組合せで具現化されることがあり、単一のデバイスに含まれること、または複数のデバイスにわたって分散されることがある。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野において既知の任意の他の形態の記憶媒体に存在し得る。プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、記憶媒体がプロセッサに結合され得る。代替的に、記憶媒体は、プロセッサと一体であり得る。
【００８５】
当業者には、本明細書で開示する態様に関して説明する様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップが、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実装されてもよいことが、さらに諒解されよう。ハードウェアおよびソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップが、上では全般的にそれらの機能に関して説明された。そのような機能がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、特定の適用例および全体的なシステムに課される設計制約に依存する。
【００８６】
本明細書で説明する本発明の様々な特徴は、本発明から逸脱することなく、異なるシステム内で実装され得る。本開示のこれまでの態様は例にすぎず、本発明を限定するものと解釈されるべきではないことに留意されたい。本開示の態様の説明は、例示であることを意図しており、特許請求の範囲を限定することは意図していない。したがって、本教示は、他のタイプの装置に容易に適用することが可能であり、多くの代替形態、修正形態、および変更形態が当業者には明らかであろう。
【符号の説明】
【００８７】
100  統合型NFCインフラストラクチャ、インフラストラクチャ、NFCインフラストラクチャ
102  NFCターゲット、NFCカード、NFCデバイス、カード、NFCターゲットデバイス
104  ワイヤレス通信デバイス(WCD)
106a  プロバイダサーバ、サーバ、第1のサーバ
106b  プロバイダサーバ、サーバ、第2のサーバ
106n  プロバイダサーバ、サーバ、別のサーバ
108  物理的クローン不能機能(PUF)、PUF回路、構成要素/回路
110  機密データ、データ、セキュアデータ
112  NFCリーダー
114  通信インターフェース
116  ユーザ、NFCカードユーザ
118  プロバイダ
206  アプリケーション
216  メモリ回路
402  データ
404  データ
406  データ
410  レスポンス
412  レスポンス
414  レスポンス
502  第1のプロバイダ機密データ、プロバイダ機密データ
504  第2のプロバイダ機密データ、プロバイダ機密データ
506  プロバイダ機密データ
600  第1の例示的なセキュリティ構成、第1のセキュリティ構成
700  第2の例示的なセキュリティ構成、第2のセキュリティ構成
800  第3の例示的なセキュリティ構成、第3のセキュリティ構成
900  第4の例示的なセキュリティ構成、第4のセキュリティ構成
1000  プロセスフロー図
1100  プロセスフロー図
1200  プロセスフロー図
1300  プロセスフロー図
1400  プロセスフロー図
1500  プロセスフロー図
1600  プロセスフロー図
1700  プロセスフロー図
1800  プロセスフロー図
1900  プロセスフロー図
2002  リング発振器(RO)
2004  スイッチ(マルチプレクサ)
2006  スイッチ(マルチプレクサ)
2008  ペアワイズ比較
2010  カウンタ、第1のカウンタ
2012  カウンタ、第2のカウンタ
2100  NFCターゲットデバイス
2102  処理回路、構成要素/回路
2104  メモリ回路、構成要素/回路
2106  入力/出力(I/O)インターフェース、構成要素/回路
2108  NFC通信インターフェース、構成要素/回路
2110  通信バス
2200  サーバ
2202  処理回路、構成要素/回路
2204  メモリ回路、構成要素/回路
2206  入力/出力(I/O)インターフェース、構成要素/回路
2208  通信インターフェース、構成要素/回路
2210  通信バス
【図１】
0006374119.tif 000002
【図２】
0006374119.tif 000003
【図３】
0006374119.tif 000004
【図４】
0006374119.tif 000005
【図５】
0006374119.tif 000006
【図６】
0006374119.tif 000007
【図７Ａ】
0006374119.tif 000008
【図７Ｂ】
0006374119.tif 000009
【図８Ａ】
0006374119.tif 000010
【図８Ｂ】
0006374119.tif 000011
【図９】
0006374119.tif 000012
【図１０】
0006374119.tif 000013
【図１１】
0006374119.tif 000014
【図１２】
0006374119.tif 000015
【図１３】
0006374119.tif 000016
【図１４Ａ】
0006374119.tif 000017
【図１４Ｂ】
0006374119.tif 000018
【図１５】
0006374119.tif 000019
【図１６】
0006374119.tif 000020
【図１７】
0006374119.tif 000021
【図１８Ａ】
0006374119.tif 000022
【図１８Ｂ】
0006374119.tif 000023
【図１９Ａ】
0006374119.tif 000024
【図１９Ｂ】
0006374119.tif 000025
【図２０】
0006374119.tif 000026
【図２１】
0006374119.tif 000027
【図２２】
0006374119.tif 000028