(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-03-23
(54)【発明の名称】デバイスとリモートサーバとの間の安全な通信
(51)【国際特許分類】
H04L 9/32 20060101AFI20230315BHJP
H04L 9/08 20060101ALI20230315BHJP
H04L 9/10 20060101ALI20230315BHJP
【FI】
H04L9/32 200A
H04L9/08 F
H04L9/10 A
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022546717
(86)(22)【出願日】2021-01-29
(85)【翻訳文提出日】2022-07-29
(86)【国際出願番号】 EP2021052160
(87)【国際公開番号】W WO2021152127
(87)【国際公開日】2021-08-05
(32)【優先日】2020-01-31
(33)【優先権主張国・地域又は機関】EP
(81)【指定国・地域】
(71)【出願人】
【識別番号】522305092
【氏名又は名称】ナグラビジョン エス アー エール エル
【氏名又は名称原語表記】NAGRAVISION SARL
【住所又は居所原語表記】22-24 route de Geneve 1033 Cheseaux-sur-Lausanne Switzerland
(74)【代理人】
【識別番号】100196449
【氏名又は名称】湯澤 亮
(72)【発明者】
【氏名】グレモー, ファビアン
(57)【要約】
【解決手段】 リモートサーバとセキュア要素を装備したデバイスとの間の通信を確保するための方法であって、-デバイス側プロファイルデータが、デバイス内に記憶され、-デバイス側セキュア要素データが、セキュア要素内に記憶され、-画像データが、-リモートサーバ内に記憶されているサーバ側プロファイルデータと、-リモートサーバ内に記憶されているか、又はリモートサーバから取り出し可能である、サーバ側セキュア要素データと含み、方法が、a-デバイスをセキュア要素と関連付けるステップと、b-デバイス側でデバイス鍵材料を生成するステップと、c-リモートサーバに関連付けを報告するステップと、d-リモートサーバ側でサーバ鍵材料を生成するステップと、e-少なくともデバイス鍵材料とサーバ鍵材料との間の比較に基づいて、認証後に、デバイスとリモートサーバとの間の通信を承認するステップとを含む、方法。
【選択図】
図1
【特許請求の範囲】
【請求項1】
リモートサーバとセキュア要素を装備したデバイスとの間の通信を確保するための方法であって、
-デバイス側プロファイルデータが、前記デバイス内及び/又は前記セキュア要素内に記憶され、
-デバイス側セキュア要素データが、前記セキュア要素内に記憶され、
-画像データが、
-前記リモートサーバ内に記憶されているサーバ側プロファイルデータと、
-前記リモートサーバ内に記憶されているか、又は前記リモートサーバから取り出し可能である、サーバ側セキュア要素データと、含み、
前記方法が、
a-前記デバイスを前記セキュア要素と関連付けるステップと、
b-前記デバイス側で、前記デバイス側プロファイルデータ及び前記デバイス側セキュア要素データに基づいてデバイス鍵材料を生成するステップと、
c-前記デバイス側プロファイルデータの一部及び前記デバイス側セキュア要素データの一部を送信することによって、前記リモートサーバに前記関連付けを報告するステップと、
d-報告された前記関連付けからの前記画像データから取り出される、前記サーバ側プロファイルデータ及び前記サーバ側セキュア要素データに基づいて、前記リモートサーバ側でサーバ鍵材料を生成するステップと、
e-少なくとも前記デバイス鍵材料と前記サーバ鍵材料との間の比較に基づいて、認証後に、前記デバイスと前記リモートサーバとの間の通信を承認するステップと、を含む、方法。
【請求項2】
-前記デバイス側プロファイルデータが、デバイス側プロファイル公開データを含み、前記デバイス側セキュア要素データが、デバイス側セキュア要素公開データを含み、
前記リモートサーバに前記関連付けを報告する前記ステップc-が、可読関連付けデータを送信するステップからなり、前記可読関連付けデータが、
-プロファイル公開ID、及び/又はプロファイル公開鍵、並びに/若しくはプロファイル公開証明書などの前記デバイス側プロファイル公開データの少なくとも一部と、
-セキュア要素公開ID、及び/又はセキュア要素公開鍵、並びに/若しくはセキュア要素公開鍵証明書などの前記デバイス側セキュア要素公開データの少なくとも一部と、を含む、請求項1に記載の方法。
【請求項3】
-前記デバイス側プロファイルデータが、プロファイル公開鍵を含み、
-前記デバイス側セキュア要素データが、セキュア要素非公開鍵を含み、
前記ステップd-が、前記リモートサーバに前記関連付けを報告する前記ステップc-の後に、
ステップc-で受信された前記セキュア要素に関連するデータを認証するために、要求を前記リモートサーバから公開鍵インフラストラクチャに送信するか、又はステップc-で受信された前記セキュア要素に関連するデータに関連するセキュア要素公開鍵及び/又はセキュア要素公開鍵証明書を取り出すために、要求を前記リモートサーバから公開鍵管理機関に送信するステップd1-と、
前記公開鍵インフラストラクチャから前記セキュア要素に関連する前記データの認証を受信するか、又はセキュア要素公開鍵及び/又はセキュア要素公開鍵証明書を前記公開鍵管理機関から取り出し、前記リモートサーバの中に記憶するステップd2-と、を含む、請求項1又は2に記載の方法。
【請求項4】
-前記サーバ側プロファイルデータ(SSPD)が、プロファイル非公開鍵を含み、
-前記デバイス鍵材料が、前記プロファイル公開鍵及び前記セキュア要素非公開鍵を用いて前記ステップb-で計算されたデバイス共有秘密であり、
-前記サーバ鍵材料が、ステップd-で生成されたサーバ共有秘密であり、サーバ側に記憶された前記プロファイル非公開鍵並びに前記セキュア要素公開鍵及び/又は前記セキュア要素公開鍵証明書が、ステップd2ーで取り出される、請求項3に記載の方法。
【請求項5】
-ステップa-が、前記デバイスを前記セキュア要素と関連付けた後に、デバイス製造業者データを生成又はインストールし、前記デバイス製造業者データをデバイスの中に記憶するステップa’1-を含み、
-ステップb-が、
-前記セキュア要素非公開鍵を入力として取り込む、少なくとも1つのデバイス共有秘密を計算するステップb’1であって、前記プロファイル公開鍵及び前記デバイス製造業者データが、ステップa’1で生成される、ステップを含み、
-前記関連付けを報告するステップc-が、前記デバイス共有秘密が前記デバイス鍵材料として前記デバイス内に記憶されたままである間に、前記デバイス製造業者データを報告するステップc’1を含み、
-ステップd-が、ステップc’1で受信された前記デバイス製造業者データ、前記プロファイル非公開鍵、前記セキュア要素公開鍵、及び/又は前記セキュア要素公開鍵証明書に基づいて、前記サーバ鍵材料を計算するステップd’1を含む、請求項4に記載の方法。
【請求項6】
前記ステップb’1が、鍵導出関数(KDF)を実行して、前記デバイス共有秘密を計算する、請求項5に記載の方法。
【請求項7】
-ステップa-が、前記デバイスを前記セキュア要素と関連付けた後に、デバイス製造業者データを生成し、前記デバイス製造業者データをデバイスの中に記憶するステップa’’1-を含み、
-ステップb-が、
-前記デバイス共有秘密を計算するステップb’’1と、
-ステップb’’1で計算された前記デバイス共有秘密及びステップa’’1で生成された前記デバイス製造業者データを入力として取り込む、検証トークンを計算するステップb’’2と、を含み、
-前記関連付けを報告するステップc-が、前記デバイス共有秘密が前記デバイス内に記憶されたままである間に、前記検証トークンを報告するステップc’’1を含む、請求項4に記載の方法。
【請求項8】
前記ステップb’’2が、ハッシュベースのメッセージ認証コード(HMAC)を実行して、前記検証トークンを計算する、請求項7に記載の方法。
【請求項9】
-前記デバイス側セキュア要素データが、セキュア要素秘密鍵を含み、
-前記サーバ側セキュア要素データが、前記セキュア要素秘密鍵を含み、
-前記ステップb-が、前記セキュア要素秘密鍵及び前記デバイス側プロファイルデータの少なくとも一部に基づいて、デバイス共有秘密である前記デバイス鍵材料を計算するステップb’’’1を含み、
-前記ステップd-が、前記リモートサーバに前記関連付けを報告する前記ステップc-の後に、
-前記画像データの中から、及び報告された前記関連付けから、少なくとも前記セキュア要素秘密鍵及び前記ステップb’’’1で使用される前記デバイス側プロファイルデータに対応するプロファイルデータを取り出すステップd’’’1と、
-ステップd’’’1で取り出された前記セキュア要素秘密鍵及び前記デバイス側プロファイルデータの一部に基づいて、サーバ共有秘密である前記サーバ鍵材料を計算するステップd’’’2とを含む、請求項1又は2に記載の方法。
【請求項10】
前記デバイスに埋め込まれているデバイス側プロファイルデータが、単一のユーザに向けられたデバイス側公開プロファイルデータと、プロファイル秘密鍵とを含み、
前記デバイス共有秘密の生成が、前記プロファイル秘密鍵を用いて実行される、請求項9に記載の方法。
【請求項11】
前記デバイスに埋め込まれたデバイス側プロファイルデータが、プロファイル又はユーザのセットに向けられ、それに共通している、デバイス側公開プロファイルデータと、前記公開プロファイルデータに関連付けられた単一プロファイル秘密鍵とを含み、
前記デバイス共有秘密の生成が、前記単一プロファイル秘密鍵を用いて実行される、請求項9に記載の方法。
【請求項12】
前記サーバ共有秘密が、
-前記画像データの中から取り出された前記セキュア要素秘密鍵と、
-前記画像データの中から取り出された前記プロファイル秘密鍵とを用いて生成される、請求項10又は11に記載の方法。
【請求項13】
前記リモートサーバと前記デバイスとの間の前記通信を承認する前記ステップe-の前に、前記リモートサーバ側で、少なくとも複数の同一の関連付けの不在をチェックするステップを用いて、前記関連付けの正当性を立証するステップを含む、請求項1~12のいずれか一項に記載の方法。
【請求項14】
前記リモートサーバ側で前記サーバ鍵材料を生成する前記ステップが、前記デバイス側プロファイルデータ(DSPD)の一部及び前記デバイス側セキュア要素データ(DSSED)の一部の報告された前記関連付けが一意であるとして正当性を立証される場合にのみ実行される、請求項13に記載の方法。
【請求項15】
-前記デバイスにデバイス側プロファイルデータを埋め込むこと、及び/又は
-前記セキュア要素にデバイス側セキュア要素データを埋め込むことが、
前記セキュア要素を前記デバイスに関連付ける前記ステップの前に実施される、請求項1~14のいずれか一項に記載の方法。
【請求項16】
前記通信を承認する前記ステップe-が、
-前記リモートサーバに前記デバイス鍵材料を送信するステップ、並びに前記リモートサーバ側で実行される、前記サーバ鍵材料との前記受信されたデバイス鍵材料の比較のステップ、及び/又は
-前記デバイスに前記サーバ鍵材料を送信するステップ、並びに前記デバイス側で実行される、前記受信されたサーバ鍵材料との前記デバイス鍵材料の比較のステップを含む、請求項1~15のいずれか一項に記載の方法。
【請求項17】
システムであって、
-デバイス側プロファイルデータを埋め込むデバイスと、
-デバイス側セキュア要素データを埋め込むセキュア要素と、
-画像データを記憶するリモートサーバであって、
前記リモートサーバ内に記憶されているサーバ側プロファイルデータ(SSPD)と、
前記リモートサーバ内に記憶されているか、又は前記リモートサーバから取り出し可能である、サーバ側セキュア要素データ(SSSED)と、を含む、リモートサーバと、を備え、
前記システムが、請求項1~16のいずれか一項に記載の通信を確保するための方法のステップを実装するように配列される、システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デバイス(相互関連コンピューティングデバイス、機械的及びデジタルマシン、オブジェクト)が、人間から人間又は人間からコンピュータへの相互作用を要求することなく、ネットワーク上でデータを転送する能力を有するように、一意の識別子(unique identifier、UID)を提供される、モノのインターネット(internet of things、IoT)に関する。この文脈では、デバイス(通信及び計算能力を伴うオブジェクト)に、信頼の基点(root of trust、RoT)を実装して基点秘密を利用する、秘密要素を(システムオンチップ(system on chip、SOC)の形態、埋め込み型ユニバーサル集積回路カード(universal integrated circuit card、UICC)の形態、セキュアエンクレーブ、信頼できる実行環境、又は埋め込み型セキュア要素の形態のいずれかで)装備することが公知である。言い換えれば、セキュア要素は、SIM又はeSIM離散チップであり得るが、デバイスのSoCに統合されることもできる(UICC又はSoCセキュアエンクレーブ)。
【0002】
しかしながら、セキュア要素は通常、デバイスの特定の同一性及びプロファイルを用いて安全に個人化される必要がある。デバイス特有のプロファイルは、以下を防止するためにセキュア要素によって関連付けられ、確保される必要がある。
-他のデバイスにおけるデバイスプロファイルのコピー(合法デバイスのクローン)、
-異なるデバイスにおけるデバイスプロファイルのコピー(合法デバイスのエミュレーション)、
-デバイスプロファイルの秘密の公開/開示(合法デバイスを攻撃し、例えば、ユーザ/デバイス通信を観察する)。
【0003】
異なる解決策が、特に、プロファイルが信頼されていない及び/又は安全ではない環境にインストールされるときに、上記の問題を解決するように設計及び実装され、例えば、以下である。
-事前関連付け:デバイスプロファイルが、サービスとしてセキュア要素RoT秘密を使用して、「事前暗号化される」。事前暗号化されたデバイスプロファイルは、次いで、プログラムされるためにデバイス供給チェーンに提供される。しかしながら、サービスが、全ての可能なRoT秘密を用いてデバイス画像を事前暗号化するか、又はプログラムされるセキュア要素を選択若しくはペアリングするように供給チェーンを強制する必要があるという問題が存在する。
-事後関連付け:デバイスプロファイルが、デバイス供給チェーン内に位置するハードウェアセキュリティモジュール(Hardware Security Module、HSM)の生成のために暗号化される。ハードウェアセキュリティモジュール(HSM)の生成は、次いで、セキュア要素RoT秘密を使用して、デバイス画像と動的に関連付けられる/暗号化される。しかしながら、ハードウェアセキュリティモジュール(HSM)が、インストール/維持される必要があり、生成中にデバイスとの特定の動的相互作用を要求するという問題が存在する。
【0004】
事前関連付け及び事後関連付けはまた、セキュア要素が複数の独立したソースをプログラムする必要がある場合に、複数のデバイスプロファイルを容易に関連付けることに失敗する。
【0005】
別のタイプの解決策、すなわち、基本的に、関連付けが典型的には生成ログを使用するシステムにおいて有効であることを検証することからなる、「検証された関連付け」が可能である。この解決策は、供給チェーンに最小の影響を及ぼす。2つの選択肢が可能である。
-デフォルトアクティブ化を伴う検証された関連付け:関連付けは、デフォルトで有効であるとみなされ、重複の場合はシステムによって後で無効にされ得る。
-明示的アクティブ化を伴う検証された関連付け:関連付けは、アクティブ化の前に正当性を立証される必要がある。
【0006】
検証された関連付けに関する問題は、以下である。
-デフォルトアクティブ化を伴う検証された関連付け:監視システムが、設定される必要があり、矛盾を裁定する必要があろう。更に、「不良な」関連付けが、最終的にシステムによって検出されるまで有効であり得る。
-明示的アクティブ化を伴う検証された関連付け:デバイスが「機能的」である前に関連付けの正当性を立証するために、接続又は有効なロギングシステムを必要とする。これは、ロバストなロギングシステムを強制することによって供給チェーンに影響を及ぼすか、又はデバイスが生成された後に行われた場合にデバイスに強力な制限を追加する。
【0007】
要約すると、
-所与のセキュア要素(信頼の基点(RoT)を実装する)が、セキュア要素製造場所で製造され、
-デバイス製造場所で所与のデバイスに関連付けられるように、デバイス製造業者に送られるときに、
-サービスプロバイダに属するリモートサーバに通信するために、
事前若しくは事後関連付けを行う必要なく、セキュア要素製造業者及びデバイス製造業者の2つの供給チェーンをペアリング若しくは動的に連結することなく、及び/又はリモートサーバがサーバプロバイダに属することなく、デバイスとリモートサーバとの間の安全な通信を確保する必要がある。
【0008】
国際公開第2018011078A1号という文書は、サーバと通信する通信デバイスのデュアルネットワーク認証のための方法及びシステムを開示している。本文書では、デバイスは、リモートサーバに送信された応答を生成するためのセキュア要素(SIMカード)を備えることができる。しかしながら、デバイスの製造は、次いで、非公開データのセキュリティを確保するために、完全に安全な環境を使用して行われなければならない。
【0009】
欧州特許第2547050A1号という文書は、認証方法、機器、及びシステムを開示している。しかしながら、本文書は、任意の承認された通信に予備的な認証及び鍵合意ステップ(典型的には、チャレンジレスポンス又はワンタイムパスワード)を開示している。
【発明の概要】
【発明が解決しようとする課題】
【0010】
本発明は、先行技術の上述の欠点に対処し、リモートサーバとセキュア要素を装備したデバイスとの間の通信を確保するための方法を最初に提案し、事前又は事後関連付けを行い、2つの供給チェーンをペアリング若しくは動的に連結する必要なく、デバイス及びセキュア要素の容易な製造を可能にし、依然として、強力な認証を用いて安全な通信を可能にすることを目的とする。
【0011】
この目的で、本開示の第1の態様は、リモートサーバとセキュア要素を装備したデバイスとの間の通信を確保するための方法であって、
-デバイス側プロファイルデータが、デバイス内及び/又はセキュア要素内に記憶され、
-デバイス側セキュア要素データが、セキュア要素内に記憶され、
-画像データが、
-リモートサーバ内に記憶されているサーバ側プロファイルデータと、
-リモートサーバ内に記憶されているか、又はリモートサーバから取り出し可能である、サーバ側セキュア要素データと、含み、
方法が、
a-デバイスをセキュア要素と関連付けるステップと、
b-デバイス側で、デバイス側プロファイルデータ及びデバイス側セキュア要素データに基づいてデバイス鍵材料を生成するステップと、
c-リモートサーバに関連付けを報告するステップと、
d-報告された関連付けからの画像データから取り出される、サーバ側プロファイルデータ及びサーバ側セキュア要素データに基づいて、リモートサーバ側でサーバ鍵材料を生成するステップと、
e-少なくともデバイス鍵材料とサーバ鍵材料との間の比較に基づいて、認証後に、デバイスとリモートサーバとの間の通信を承認するステップと、を含む、方法に関する。
【0012】
上記の実施形態によれば、方法は、関連付けを報告するステップを含む。このステップは、デバイス及びセキュア要素の関連付け又は結合後に実行される。デバイス鍵材料は、デバイス鍵材料が関連付け(例えば、デバイス製造業者によって、又はユーザによって直接実施される)の画像であるように、プロファイルデータからのデータ及びセキュア要素からデータを用いて、デバイス側で生成又は計算される。関連付けがリモートサーバに報告された後、特定のセキュア要素に関連するデータ及びプロファイルデータは、サーバ鍵材料が生成又は計算され得、サーバ鍵材料が関連付けの画像でもあるように、リモートサーバの中に記憶されている画像データから取り出される。その結果として、デバイス鍵材料は、関連付け前にデバイス側で利用可能なデータから計算され、サーバ鍵材料は、関連付け前にサーバ側で利用可能なデータから計算される。最も重要なことは、デバイス鍵材料及びサーバ鍵材料が両方とも関連付けの画像であるように計算されるが、少なくとも一部のデータが関連付けを報告するメッセージの一部ではないことである。したがって、関連付けを報告するメッセージの機密性は、認証ステップのセキュリティを確保するために重要ではない。特に、報告メッセージが第三者によって傍受又は改ざんされる場合でさえも、第三者が関連付けメッセージを何とかして破損する場合にデバイス鍵材料若しくはサーバ鍵材料のいずれかが異なるか、又は計算のための入力の一部が関連付け報告に利用可能ではないため、第三者がデバイス鍵材料若しくはサーバ鍵材料を計算することができなくなるため、認証のセキュリティは危険にさらされないであろう。
【0013】
一実施形態によれば、
-デバイス側プロファイルデータは、デバイス側プロファイル公開データを含み、デバイス側セキュア要素データは、デバイス側セキュア要素公開データを含み、
リモートサーバに関連付けを報告するステップc-は、可読関連付けデータを送信するステップからなり、可読関連付けデータは、
-プロファイル公開ID、及び/又はプロファイル公開鍵、並びに/若しくはプロファイル公開証明書などのデバイス側プロファイル公開データの少なくとも一部と、
-セキュア要素公開ID、及び/又はセキュア要素公開鍵、並びに/若しくはセキュア要素公開鍵証明書などのデバイス側セキュア要素公開データの少なくとも一部とを含む。上記の実施形態によれば、公開データのみが、デバイス側(典型的には、所与のデバイスを所与のセキュア要素に関連付けた後に、デバイス製造業者又はユーザ)からリモートサーバに送信された報告メッセージの一部である。特に、デバイス側からリモートサーバに送信された報告メッセージの中に非公開データも秘密データもないため、関連付けを報告するメッセージを送信するためのセキュリティ及び手順は、高レベルのセキュリティである必要はない。典型的には、関連付けを報告することがデバイス製造プロセス中に行われる場合、一定の動的な相互的かつ安全な接続の必要性はない。
【0014】
一実施形態によれば、
-デバイス側プロファイルデータは、プロファイル公開鍵を含み、
-デバイス側セキュア要素データは、セキュア要素非公開鍵を含み、
-ステップd-は、リモートサーバに関連付けを報告するステップc-の後に、
ステップc-で受信されたセキュア要素に関連するデータを認証するために、要求をリモートサーバから公開鍵インフラストラクチャに送信するか、又はステップc-で受信されたセキュア要素に関連するデータに関連するセキュア要素公開鍵及び/又はセキュア要素公開鍵証明書を取り出すために、要求をリモートサーバから公開鍵管理機関に送信するステップd1-と、
公開鍵インフラストラクチャからセキュア要素に関連するデータの認証を受信するか、又はセキュア要素公開鍵及び/又はセキュア要素公開鍵証明書を公開鍵管理機関から取り出し、リモートサーバの中に記憶するステップd2-とを含む。上記の実施形態によれば、通信スキームは、リモートサーバが単に認証又はセキュア要素公開鍵若しくはセキュア要素公開鍵証明書を公開鍵インフラストラクチャ(PKI)から回収する必要があるため、単純化され、これは、セキュア要素製造業者がセキュア要素をデバイス製造業者に配達する必要がある全体的なプロセスとは対照的に、セキュア要素秘密又は非公開データをサービスプロバイダに属するリモートサーバに安全な様式で送信するために、特定の負担を伴わずに行われ得る。公開鍵管理機関は、典型的には、安全な条件で全てのデバイス又はセキュア要素公開鍵を記憶し、オペレータなどの信頼できるパートナーに配布することができる。
【0015】
一実施形態によれば、
-サーバ側プロファイルデータは、プロファイル非公開鍵を含み、
-デバイス鍵材料は、プロファイル公開鍵及びセキュア要素非公開鍵を用いてステップb-で計算されたデバイス共有秘密であり、
-サーバ鍵材料は、ステップd-で生成されたサーバ共有秘密であり、サーバ側に記憶されたプロファイル非公開鍵並びにセキュア要素公開鍵及び/又はセキュア要素公開鍵証明書は、ステップd2ーで取り出される。非対称暗号化に基づく上記の実施形態によれば、セキュア要素及びリモートサーバの両方は、他のエンティティの公開鍵及びそれらの個別の非公開鍵を記憶する。したがって、両側で計算された鍵材料は、信頼性があり、別の当事者によって計算されることができない。
【0016】
言い換えれば、非対称ベースのシステムの場合、本開示は、リモートサーバとセキュア要素を装備したデバイスとの間の通信を確保するための方法であって、
-デバイス側プロファイルデータ(リモートサーバに関連する第1の非対称暗号システムのプロファイル公開鍵又は証明書を含む)が、デバイス内及び/又はセキュア要素内に記憶され、
-デバイス側セキュア要素データ(セキュア要素に関連する第2の非対称暗号システムのセキュア要素非公開鍵及びセキュア要素公開鍵又は証明書を含む)が、セキュア要素内に記憶され、
-画像データが、
-リモートサーバ内に記憶されているサーバ側プロファイルデータ(リモートサーバに関連する第1の非対称暗号システムのプロファイル非公開鍵を含む)と、
-リモートサーバ内に記憶されているか、リモートサーバから取り出し可能である、サーバ側セキュア要素データ(セキュア要素に関連する第2の非対称暗号システムのセキュア要素公開鍵又は証明書を含む)と、を含み、
方法が、
a-デバイスをセキュア要素と関連付けるステップと、
b-デバイス側プロファイルデータ(第1の非対称暗号システムのプロファイル公開鍵)及びデバイス側セキュア要素データ(第2の非対称暗号システムのセキュア要素非公開鍵)に基づいて、デバイス側でデバイス鍵材料を生成するステップと、
c-(第1の非対称暗号システムのプロファイル公開鍵、及び第2の非対称暗号システムのセキュア要素公開鍵又は証明書を送信することによって)リモートサーバに関連付けを報告するステップと、
d-報告された関連付けからの画像データから、又はその外に取り出される、サーバ側プロファイルデータ(第1の非対称暗号システムのプロファイル非公開鍵)及びサーバ側セキュア要素データ(第2の非対称暗号システムのセキュア要素公開鍵又は証明書)に基づいて、リモートサーバ側でサーバ鍵材料を生成するステップと、
e-少なくともデバイス鍵材料とサーバ鍵材料との間の比較に基づいて、認証後に、デバイスとリモートサーバとの間の通信を承認するステップと、を含む、方法に関する。
【0017】
一実施形態によれば、
-ステップa-は、デバイスをセキュア要素と関連付けた後に、デバイス製造業者データを生成又はインストールし、当該デバイス製造業者データをデバイスの中に記憶するステップa’1-を含み、
-ステップb-は、
-セキュア要素非公開鍵を入力として取り込む、少なくとも1つのデバイス共有秘密を計算するステップb’1であって、プロファイル公開鍵及びデバイス製造業者データが、ステップa’1で生成される、ステップを含み、
-関連付けを報告するステップc-は、デバイス共有秘密がデバイス鍵材料としてデバイス内に記憶されたままである間に、デバイス製造業者データを報告するステップc’1を含み、
-ステップd-は、ステップc’1で受信されたデバイス製造業者データ、プロファイル非公開鍵、セキュア要素公開鍵、及び/又はセキュア要素公開鍵証明書に基づいて、サーバ鍵材料を計算するステップd’1を含む。非対称暗号化を利用して、一部のデータが、デバイス側で生成及び暗号化されることができる。デバイス側で生成されたデータは、サーバ鍵材料にも含まれるために関連付けの報告と同時にリモートサーバに送信されることができる。例えば、生成されたデータが選択されたサービス又は個人化に関連する場合、リモートサーバは、応答して特定のサービス又は個人化を直接提案することができる。
【0018】
一実施形態によれば、複数の鍵が、関連付け及び異なるタイプのデバイス製造業者データ(セキュア要素、オペレータプロファイル、及び製造業者データの間の三重関連付け)から生成されることができる。
【0019】
一実施形態によれば、ステップb’1は、鍵導出関数(KDF)を実行して、デバイス共有秘密を計算する。
【0020】
一実施形態によれば、ステップd’1は、鍵導出関数(KDF)を実行して、サーバ鍵材料を計算する。
【0021】
一実施形態によれば、
-ステップa-は、デバイスをセキュア要素と関連付けた後に、デバイス製造業者データを生成し、当該デバイス製造業者データをデバイスの中に記憶するステップa’’1-を含み、
-ステップb-は、
-デバイス共有秘密を計算するステップb’’1と、
-ステップb’’1で計算されたデバイス共有秘密及びステップa’’1で生成されたデバイス製造業者データを入力として取り込む、検証トークンを計算するステップb’’2と、を含み、
-関連付けを報告するステップc-は、デバイス共有秘密がデバイス内に記憶されたままである間に、検証トークンを報告するステップc’’1を含む。非対称暗号化を利用して、一部のデータが生成され、関連付けの報告と同時にリモートサーバに送信される検証トークンを生成するためにデバイス側で使用されることができる。
【0022】
一実施形態によれば、システムは、少なくとも、第1のプロファイル非公開鍵を記憶する第1のリモートサーバと、第2のプロファイル非公開鍵を記憶する第2のリモートサーバとを備え、
デバイス(又はセキュア要素)は、第1のプロファイル非公開鍵に関連する第1のプロファイル公開鍵、及び第2のプロファイル非公開鍵に関連する第2のプロファイル公開鍵を記憶し、
-ステップb-は、セキュア要素非公開鍵及び第1のプロファイル公開鍵に基づいて第1のデバイス鍵材料を生成するステップb10-と、セキュア要素非公開鍵及び第2のプロファイル公開鍵に基づいて第2のデバイス鍵材料を生成するステップb20-とを含み、
-ステップc-は、第1のプロファイル公開鍵へのセキュア要素の関連付けを第1のリモートサーバに報告するステップc10-と、第2のプロファイル公開鍵へのセキュア要素の関連付けを第2のリモートサーバに報告するステップc20-とを含み、
-ステップd-は、セキュア要素公開鍵及び第1のプロファイル非公開鍵に基づいて、第1のリモートサーバによって第1のサーバ鍵材料を生成するステップd10-と、セキュア要素公開鍵及び第2のプロファイル非公開鍵に基づいて、第2のリモートサーバによって第2のサーバ鍵材料を生成するステップd20-とを含み、
-ステップe-は、少なくとも第1のデバイス鍵材料と第1のサーバ鍵材料との間の比較に基づいて、認証後に、デバイスと第1のリモートサーバとの間の通信を承認するステップe10-、及び/又は少なくとも第2のデバイス鍵材料と第2のサーバ鍵材料との間の比較に基づいて、認証後に、デバイスと第2のリモートサーバとの間の通信を承認するステップe20-を含む。上記の実施形態によれば、第1及び第2のリモートサーバがそれぞれ、それらの独自の個別のプロファイル非公開鍵を有するため、データ又は通信を混合するリスクがない。
【0023】
一実施形態によれば、ステップb’’2は、ハッシュベースのメッセージ認証コード(hash-based message authentication code、HMAC)を実行して、検証トークンを計算する。
【0024】
一実施形態によれば、
-デバイス側セキュア要素データは、セキュア要素秘密鍵を含み、
-サーバ側セキュア要素データは、セキュア要素秘密鍵を含み、
-ステップb-は、セキュア要素秘密鍵及びデバイス側プロファイルデータの少なくとも一部に基づいて、デバイス共有秘密であるデバイス鍵材料を計算するステップb’’’1を含み、
-ステップd-は、リモートサーバに関連付けを報告するステップc-の後に、
-画像データの中から、及び報告された関連付けから、少なくともセキュア要素秘密鍵及びステップb’’’1で使用されるデバイス側プロファイルデータに対応するプロファイルデータを取り出すステップd’’’1と、
-d’’’1で取り出されたセキュア要素秘密鍵及びステップデバイス側プロファイルデータの一部に基づいて、サーバ共有秘密であるサーバ鍵材料を計算するステップd’’’2とを含む。
【0025】
上記の実施形態によれば、セキュア要素秘密鍵は、関連付けの前に、デバイス側及びリモートサーバ側に記憶される。典型的には、サーバ側の画像データは、いくつかのセキュア要素秘密鍵と、プロファイルデータのいくつかのセットとを含む。関連付け後、デバイスは、デバイス共有秘密を計算し、プロファイルデータの所与のセットとの所与のセキュア要素及び所与のデバイスの関連付けを報告した後、リモートサーバはまた、サーバ共有秘密を計算することもできるが、関連付けを報告するステップの間にセキュア要素秘密鍵の交換はない。したがって、関連付けを報告するステップは、デバイス側及びサーバ側で、個別の共有秘密が計算され、ローカルに記憶されるため、高度に確保される必要はない。
【0026】
言い換えれば、上記の態様は、リモートサーバとセキュア要素を装備したデバイスとの間の通信を確保するための方法であって、
-プロファイルデータが、当該デバイスに埋め込まれ、
-セキュア要素公開ID及びセキュア要素秘密鍵が、当該セキュア要素に埋め込まれ、
-プロファイルデータのコピー、セキュア要素公開IDのコピー、及びセキュア要素秘密鍵のコピーを含む、画像データが、リモートサーバ上に記憶され、
方法が、
-プロファイルデータの少なくとも一部と関連付けられたセキュア要素公開IDをリモートサーバに送信することと、
-デバイス側で、セキュア要素秘密鍵及びプロファイルデータの少なくとも一部に基づいて、デバイス共有秘密を生成することと、
-プロファイルデータの少なくとも一部と関連付けられる送信されたセキュア要素公開IDに基づいて、画像データの中から取り出されるデバイス共有秘密とリモートデータとの間の比較に少なくとも基づいて実行される認証後に、リモートサーバとデバイスとの間の通信を承認することと、からなるステップを含む、方法である。
【0027】
上記の方法によれば、セキュア要素秘密鍵(セキュア要素がデバイスに埋め込まれているため利用可能である)及びプロファイルデータの少なくとも一部(デバイスで利用可能にされる)を用いて、デバイス側で共有秘密を計算及び/又は記憶するステップが存在する。すなわち、共有秘密は、セキュア要素自体(実際にはデバイスと結合されるか、若しくはその内側にある)によって/内で、又はセキュア要素とは明確に異なるデバイスのハードウェアによって/内でのいずれかで、計算及び/又は記憶される。また、セキュア要素公開ID(セキュア要素供給業者若しくは製造業者のサーバであるため、リモートサーバ上で利用可能であるか、又はセキュア要素供給業者若しくは製造業者によってリモートサーバに供給されるコピー)、及びプロファイルデータの少なくとも一部(デバイス製造業者のサーバであるため、リモートサーバ内で利用可能であるか、又はデバイス製造業者によってリモートサーバに供給される)も用いて、リモートサーバ側で画像データからリモートデータを取り出す別個の明確に異なるステップも存在する。これらの2つの明確に異なるステップは、同時であるか、又は任意の順序で順次実行され得、単に、デバイスとリモートサーバとの間の任意の通信の前に、これらの2つのステップを実施することが必要である。実際、デバイスとリモートサーバとの間の安全な通信を可能にするために、デバイス共有秘密及びリモートデータ(リモートサーバ上に記憶された画像データから取り出される)が、比較を可能にするために必要とされる。この比較は、デバイス上で生成されたデバイス共有秘密がリモートサーバ側で生成された/取り出されたリモートデータと一致する場合、デバイスが公式セキュア要素に埋め込まれることを確実にする。言及された比較は、方法の最小ステップであり、基本的かつ直接的な比較を含み得るが、他の認証スキーム、及び/又はハッシュ関数などの追加の安全なステップも含み得ることに留意されたい。
【0028】
一実施形態によれば、
当該デバイスに埋め込まれているデバイス側プロファイルデータは、単一のユーザに向けられたデバイス側公開プロファイルデータと、プロファイル秘密鍵とを含み、
デバイス共有秘密の生成は、プロファイル秘密鍵を用いて実行される。秘密データのみが、デバイス共有秘密を生成するために使用される。
【0029】
一実施形態によれば、
当該デバイスに埋め込まれたデバイス側プロファイルデータは、プロファイル又はユーザのセットに向けられ、それに共通している、デバイス側公開プロファイルデータと、公開プロファイルデータに関連付けられた単一プロファイル秘密鍵とを含み、
デバイス共有秘密の生成は、単一プロファイル秘密鍵を用いて実行される。秘密データのみが、本場合ではプロファイル又はユーザのセットに共通しているデバイス共有秘密を生成するために使用される。
実際、この場合の公開プロファイルデータは、複数のプロファイル又はユーザに属するか、又はそれらを表すことができ、これは次いで、単一プロファイルデータを通して取り出されることができる。
【0030】
一実施形態によれば、
サーバ共有秘密は、
-画像データの中から取り出されたセキュア要素秘密鍵と、
-画像データの中から取り出されたプロファイル秘密鍵とを用いて生成される。
【0031】
一実施形態によれば、方法は、リモートサーバとデバイスとの間の通信を承認するステップe-の前に、リモートサーバ側で、少なくとも複数の同一の関連付けの不在をチェックするステップを用いて、関連付けの正当性を立証するステップを含む。この予備ステップは、デバイス、セキュア要素、又はプロファイルデータのクローン/重複がないことを確実にする。
【0032】
特に、方法は、リモートサーバとデバイスとの間の通信を承認するステップの前に、リモートサーバ側で、少なくとも同じセキュア要素公開ID及び/又は同じプロファイルデータを含む複数の関連付けの不在をチェックするステップを用いて、プロファイルデータの少なくとも一部との受信されたセキュア要素公開IDの関連付けの正当性を立証するステップを含む。
【0033】
一実施形態によれば、リモートサーバ側でサーバ鍵材料を生成するステップは、当該デバイス側プロファイルデータの一部及び当該デバイス側セキュア要素データの一部の報告された関連付けが一意であるとして正当性を立証される場合にのみ実行される。この実施形態は、第2又は複数の関連付けの場合のように、認証を強化し、いずれの通信も可能にするリスクが存在しないように、共有秘密が全く生成されない。
【0034】
更に、複数の関連付けの検出及び/又は疑わしい第1の関連付けの検出の場合、第1の生成又は登録若しくは認識された関連付けは、無効にされ、生成されたサーバ鍵材料又はサーバ共有秘密は、無効化及び/又は削除される。したがって、そのようなステップでは、サーバデータベースは、完全には信頼できないデバイス/関連付けとのいずれの通信も回避するように、クローン又は疑わしい関連付けの検出の度に「クリーニング」される。
【0035】
一実施形態によれば、
-当該デバイスにデバイス側プロファイルデータを埋め込むこと、及び/又は
-当該セキュア要素にデバイス側セキュア要素データを埋め込むことは、
セキュア要素をデバイスに関連付けるステップの前に実施される。この実施形態によれば、セキュア要素製造は、デバイス製造とは明確に異なり得、セキュア要素は、例えば、デバイスを製造することのセキュリティレベルよりも高い程度の特定のセキュリティ規格で製造され得る。
【0036】
一実施形態によれば、通信を承認するステップe-は、
-リモートサーバにデバイス鍵材料を送信するステップ、並びにリモートサーバ側で実行される、サーバ鍵材料との受信されたデバイス鍵材料の比較のステップ、及び/又は
-デバイスにサーバ鍵材料を送信するステップ、並びにデバイス側で実行される、受信されたサーバ鍵材料とのデバイス鍵材料の比較のステップを含む。
【0037】
本開示の第2の態様は、
-デバイス側プロファイルデータを埋め込むデバイスと、
-デバイス側セキュア要素データを埋め込むセキュア要素と、
-画像データを記憶するリモートサーバであって、
リモートサーバに記憶されているサーバ側プロファイルデータ(server side profile data、SSPD)と、
リモートサーバ内に記憶されているか、又はリモートサーバから取り出し可能である、サーバ側セキュア要素データ(server side secure element data、SSSED)と、を含む、リモートサーバと、を備える、システムであって、
本開示の第1の態様の通信を確保するための方法のステップを実装するように配列される、システムに関する。
【図面の簡単な説明】
【0038】
本発明の他の特徴及び利点は、添付の図面によって示される、本発明の特定の非制限的な実施例の以下の詳細な説明からより明確に現れるであろう。
【
図1】
図1は、デバイスと、デバイスに埋め込まれたセキュア要素と、第1のリモートサーバと、第2のリモートサーバとを備える、システムを表し、デバイスは、対称暗号化に基づいて、リモートサーバとデバイスとの間の通信を確保するための本発明による方法の一態様を実装するように配列されている。
【
図2】
図2は、
図1のシステムの要素間のリンク及びアクションを示す図を表す。
【
図3】
図3は、デバイスが、デバイス製造業者によって製造され、所与のセキュア要素が、所与のプロファイルデータを記憶する所与のデバイスに関連付けられ、関連付けが、オペレータに報告され、システムが、非対称暗号化に基づいて、オペレータのリモートサーバとデバイスとの間の通信を確保するための本発明による方法の別の態様を実装するように配列される、別のシステムを表す。
【
図4】
図4は、非対称暗号化に依然として基づく、
図3のシステムの代替システムを表す。
【
図5】
図5は、非対称暗号化に依然として基づく、
図4のシステムの代替システムを表す。
【発明を実施するための形態】
【0039】
図1は、デバイス100と、第1のリモートサーバ200と、第2のリモートサーバ300とを備える、システムを表し、デバイス100は、対称暗号化に基づいて、第1のリモートサーバ200とデバイス100との間の通信を確保するための本発明による方法の一態様を実装するように配列されている。
【0040】
デバイス100は、ユーザに、サービス、特に、デバイス100と第1のリモートサーバ200との間の通信によって強化されたサービスを提供することを意図しており、一例として、デバイス100は、電話、スマートフォン、スマートスピーカ、接続型医療デバイス、スマートTVであり得る。一例として、第1のリモートサーバ200は、可能性として、インターネットサービスプロバイダ、又は娯楽コンテンツプロバイダなどの通信プロバイダ若しくはリモートサービスプロバイダ、又は医療プロバイダである、サーバプロバイダに属する。
【0041】
デバイス100は、少なくとも第1のリモートサーバ200と通信するように設計及び製造される。この目的で、デバイス100は、デバイス通信ユニット140と、デバイス100を制御するためのデバイス制御ユニット130とを備える。同様に、第1のリモートサーバ200は、その側で第1のリモートサーバ通信ユニット240及び第1のリモートサーバ制御ユニット230を装備している。
【0042】
考慮するべき重要な点は、デバイス100と第1のリモートサーバ200との間の通信を可能にする前に、(未承認のクローン及び/又は模倣デバイスとの通信、予期しないデータコピー若しくは損失を回避するために)デバイス100が公式の認識されたデバイスであることを確実にするように、デバイス100と第1のリモートサーバ200との間に安全な通信を提供することである。
【0043】
この目的で、システムは、対称暗号化に基づく方法を実行する。特に、デバイス100は、少なくともセキュア要素公開ID及びセキュア要素秘密鍵を含むデータを記憶する、デバイスセキュア要素セクション110(単にセキュア要素であると言え得る)を備える。デバイス100はまた、少なくともプロファイル公開ID及びプロファイル秘密鍵を含むデータを記憶する、デバイスプロファイルデータセクション120も備える。デバイスプロファイルデータセクション120は、複数のプロファイルデータを十分に記憶し得る。デバイスセキュア要素セクション110は、システムオンチップとして提供され得るか、又はデバイス制御ユニット130若しくはデバイス100の別のセクションに直接埋め込まれ得る。
【0044】
同様に、第1のリモートサーバ200は、少なくともセキュア要素公開ID及びセキュア要素秘密鍵を含むデータを記憶する、第1のリモートサーバセキュア要素セクション210を含む。第1のリモートサーバ200は、少なくともプロファイル公開ID及びプロファイル秘密鍵を含むプロファイルデータを記憶する、第1のリモートサーバプロファイルデータセクション220を含む。
【0045】
典型的には、第1のリモートサーバ200がサービスプロバイダによって帰属されると、
-第1のリモートサーバセキュア要素セクション210は、全てのセキュア要素に関連するデータ、すなわち、全てのセキュア要素公開ID、及び生成される全てのセキュア要素秘密鍵を記憶し、
-第1のリモートサーバプロファイルデータセクション220は、全てのプロファイル公開ID、及び生成される全てのプロファイル秘密鍵を含む、全てのプロファイルデータを含む。
【0046】
本明細書の以下で詳述されるように、有利な選択肢は、セキュア要素セクション110が、可能性としてサービスプロバイダとは明確に異なるセキュア要素プロバイダによって製造/提供され、次いで、第2のリモートサーバ300が、セキュア要素プロバイダにおいて提供されることである。所与の例では、第2のリモートサーバ300は、第1のリモートサーバ200と同じアーキテクチャを提示し、
-少なくともセキュア要素公開ID、及びデバイス100のセキュア要素セクション110上に記憶されたセキュア要素秘密鍵を含むデータを記憶する、第2のリモートサーバセキュア要素セクション310と、
-少なくともプロファイル公開ID、及びデバイス100上に記憶されたプロファイル秘密鍵を含むデータを記憶する、第2のリモートサーバプロファイルデータセクション320と、
-第2のリモートサーバ通信ユニット340と、
-第2のリモートサーバ制御ユニット330と、を備える。
【0047】
当然ながら、第1のリモートサーバ200上及び/又は第2のリモートサーバ300上に記憶されたデータは、新しいセキュア要素/プロファイルが作成される度に、十分に更新され得る。
図1に示されるように、通信が、第1のリモートサーバ200と第2のリモートサーバ300との間で確立され得る。
【0048】
最後に、1つだけのリモートサーバがシステム内に提供され得る、すなわち、全てのデータが単一の場所/サーバ内に記憶されることに留意されたい。代替的に、第1のリモートサーバ200及び/又は第2のリモートサーバ300は、必ずしも同じ場所に位置するわけではないサブユニット内でセグメント化される場合もある。
【0049】
デバイス100と第1のリモートサーバ200との間に安全な通信を提供するために、特定の方法が提供され、
図2に表されるステップは、デバイス100の製造及びそのデバイスへのセキュア要素セクション110の結合、並びに第1及び第2のリモートサーバとのデータ交換を例証する。
【0050】
本事例の詳細において、デバイスセキュア要素セクション110は、特定のプラントSE-Mで、セキュア要素プロバイダによって製造及び/又はプログラムされる。故に、ステップSCAの間に、デバイスセキュア要素セクション110は、一意のセキュア要素公開IDをロードされ、最初に第2のリモートサーバ300内で、特に、第2のリモートサーバセキュア要素セクション310内で記憶/生成された一意のセキュア要素秘密鍵をロードされる。セキュア要素データの生成/記憶が正しく管理されていることを確実にするために、特定のセキュリティ規格が、このステップに適用されることができる。次いで、セキュア要素セクション110(「セキュア要素」)は、デバイス100の供給チェーンに送信されることができる。
【0051】
図2の所与の例では、デバイス100は、サービスプロバイダプラントDev-Mにおいて製造及び/又はプログラムされる。ステップSCBでは、デバイス100のデバイスプロファイルセクション120に、プロファイルデータ、すなわち、プロファイル公開IDをロードされ、最初に第1のリモートサーバ200上で生成及び/又は記憶されたプロファイル秘密鍵をロードされる。デバイスセキュア要素セクション110はまた、
図2の下部に示されるように、完全なデバイス100で終了するように、サービスプロバイダプラントDev-Mにおいてデバイス100に結合又は統合される。
【0052】
上記の所与の例では、セキュア要素セクション110は、典型的には、デバイス製造業者に(「セキュア要素」として)容易に送られるように、システムオンチップ(SoC)である。しかしながら、セキュア要素セクション110は、デバイス100のハードウェアの一体部分であり得、そのような場合、ステップSCAは、完全デバイス100上で実行される。
【0053】
デバイス100が完了すると、2つのステップが実行されることができる。片側では、デバイス100(例えば、デバイス制御ユニット130)は、鍵導出関数(Key Derivation Function、KDF)を使用して、セキュア要素秘密鍵(デバイスレベルで利用可能である)及びプロファイル秘密鍵(同様にデバイスレベルで利用可能である)からデバイス共有秘密を生成及び/又は計算することができる。
【0054】
反対側では、ステップSCCにおいて、デバイス100は、(デバイス通信ユニット140を介して)セキュア要素公開ID及びプロファイル公開IDを第1のリモートサーバ200に送信することができる。セキュリティを強化するために、ステップSCDが、セキュア要素公開ID及び/又はプロファイル公開IDがすでに使用されているかどうかをチェックするように実施される。このステップSCD(第1のリモートサーバ200と第2のリモートサーバ300との間の二重矢印によって例証される)では、第1のリモートサーバ200は、受信されたセキュア要素公開ID及びプロファイル公開IDのうちの一方又は他方が第1のリモートサーバ200及び/又は第2のリモートサーバ300にすでに提出されているかどうかをチェックする。
【0055】
重複/クローンがない場合、第1のリモートサーバ200は、その側で、第1のリモートサーバ200上に記憶されたデータからリモートデータを取り出す/生成する/計算する。典型的には、サーバ共有秘密は、使用されるデバイス100と同じ鍵導出関数(KDF)を使用して、セキュア要素秘密鍵(受信されたセキュア要素公開IDとともに、第1のリモートサーバセキュア要素セクション210から第1のリモートサーバ200側で取り出され、かつ利用可能である)及びプロファイル秘密鍵(受信されたプロファイル公開IDとともに、同様に第1のリモートプロファイルデータセクション220から第1のリモートサーバ200側で取り出され、かつ利用可能である)を使用して生成/計算される。
【0056】
デバイス及びサーバ共有秘密が両側で独立して生成されると、ステップSCEでの通信は、例えば、データを交換する前に、デバイス100側で、又は第1のリモートサーバ200側で、若しくは両側で、共有秘密を比較することによって確保されることができる。
【0057】
上記の方法では、セキュア要素製造/プログラミングライン及びデバイス100製造/プログラミングラインを動的にリンクする必要はない。したがって、供給チェーンは、単純なままであり、通信は、依然として確保される。
【0058】
図3は、上記の図のシステムと同様であるが、オペレータOPによってホストされるデバイス100と第1のリモートサーバ200との間の通信を確保するための非対称暗号化に基づく方法を実装する、別のシステムを表す。
【0059】
図3のシステムでは、デバイス製造業者Dev-Mは、ステップO-SEでセキュア要素製造業者SE-Mにセキュア要素SEのバッチを注文することができる。各セキュア要素SE、典型的には、システムオンチップ(SOC)は、典型的には、デバイス側セキュア要素非公開データ(非公開鍵)、及びデバイス側セキュア要素公開データ(セキュア要素ID、及び/又はセキュア要素公開鍵、並びに/若しくはセキュア要素公開鍵証明書など)を含む、デバイス側セキュア要素データを典型的に記憶する。要約すると、セキュア要素SEに埋め込まれたデバイス側セキュア要素データは、非公開又は秘密データ(
図3で「SE sk」と記述される)、及び公開データ(
図3で「SE pk」と記述される)を含む。
【0060】
セキュア要素非公開データは、典型的には、セキュア要素公開データを送信するか、又は公開鍵インフラストラクチャPKIと共有することもできる、セキュア要素製造業者SE-Mによって保持及び記憶される。
【0061】
エンドユーザEUにサービスを提供することが可能なデバイス100を供給するために、デバイス製造業者Dev-Mは、ステップO-OpでオペレータOPにプロファイルのバッチを注文することができる。デバイス側の各プロファイルは、デバイス側プロファイルデータによって定義され(又はそれを含み)、当該デバイス側プロファイルデータは、典型的には、プロファイル公開ID、及び/又はプロファイル公開鍵、並びに/若しくはプロファイル公開証明書などのデバイス側公開データを含む。要約すると、デバイス側では、プロファイルデータは、公開データのみを含む。並行して、オペレータOPは、その側で、送信されたプロファイル公開データ(
図3で「プロファイルpk」と記述される)を含む、サーバ側プロファイルデータを保持するが、オペレータ又はサーバ側で保持される、プロファイル非公開データ、プロファイル非公開鍵(
図3で「プロファイルsk」と記述される)も保持する。
【0062】
デバイス100の製造中に、デバイス製造業者は、セキュア要素SEのバッチから1つのセキュア要素、及びプロファイルのバッチから1つのプロファイルを選び出し、それらをステップa-(
図3では「S.a-」)において所与のデバイス100に関連付ける。関連付けは、場合によっては、エンドユーザUE側で同様に行われ得ることに留意されたい。
【0063】
この関連付けが行われると、2つのステップ「S.b-」及び「S.c-」は、デバイス側で、任意の順序で、又は同時に実行されることができる。
【0064】
デバイス鍵材料DKMを生成するステップb-(
図3では「S.b-」)が、セキュア要素SEによって実行される。詳細には、デバイス共有秘密は、少なくともデバイス側セキュア要素非公開データ、及びデバイス側プロファイルデータの一部を使用して計算される。例えば、デバイス共有秘密は、セキュア要素非公開鍵及びプロファイル公開鍵を使用して計算されることができる。このデバイス共有秘密は、デバイス鍵材料DKMとしてデバイス100のメモリの中に記憶される。
【0065】
オペレータに特定の関連付けを報告するステップc-(
図3では「S.c-」)は、デバイス製造業者Dev-Mによって行われることができる(この報告ステップc-は、エンドユーザEUの手中にあるときにデバイス自体によっても行われ得る)。このステップc-の間に、関連付けは、セキュア要素SEから公開データのみ、及びプロファイルから公開データを送信することによって、報告される。すなわち、ステップc-では、セキュア要素ID、及び/又はセキュア要素公開鍵、及び/又はセキュア要素公開鍵証明書の全て若しくは一部、並びにプロファイル公開ID、及び/又はプロファイル公開鍵、及び/又はプロファイル公開証明書の全て若しくは一部が、所与のプロファイルとの所与のセキュア要素Seの関連付けを所与のデバイス100に報告するために、オペレータOPに送信される。この通信を確保する必要もなく、エンティティとの一定の動的リンクを保持する必要もないように、いずれの非公開又は秘密データも、このステップc-の間に送信されない。
【0066】
関連付けが公開データとともに報告されると、オペレータOPは、
-その独自のソースから所与のプロファイルの非公開プロファイルデータを取り出し、
-信頼できるソースから所与のセキュア要素SEのセキュア要素公開データを認証し、及び/又は取り出すことができる。
【0067】
この目的で、要求が、受信されるセキュア要素に関連するデータを認証するために、リモートサーバから公開鍵インフラストラクチャに送信されることができ、及び/又は通信が、ステップc-の間に受信される関連付けデータで識別される、公開鍵インフラストラクチャからセキュア要素に関連するデータの認証を引き換えに受信するように、公開鍵インフラストラクチャPKIと確立されることができる。代替的に、要求が、ステップc-の間に受信される関連付けデータで識別される、所与のセキュア要素SEの公開鍵又は証明書を取り出すために、リモートサーバから公開鍵管理機関に送信されることができる。PKI又は公開鍵管理機関への接続のステップから認証されるか、又は取り出されるこのデータは、信頼され、サーバ鍵材料SKMを生成するために使用されることができる。PKIへの要求又は接続の送信は、容易、標準的、かつ迅速であるが、代替的に、オペレータOPとセキュア要素製造業者SE-Mとの間の直接接続を包含して、安全な様式でセキュア要素公開データを取り出すことができることに留意されたい。
【0068】
この段階で、オペレータは、サーバ鍵材料SKMが生成され得るように、所与のプロファイルのプロファイル非公開データ及び所与のセキュア要素SEのセキュア要素公開データを手中に有する。詳細には、サーバ鍵材料SKMは、サーバ共有秘密であり、プロファイル非公開鍵及びセキュア要素公開鍵を用いて計算されることができる。このサーバ鍵材料SKMは、本実施例では、オペレータOPによってホストされるホーム加入者サーバHSSであり得る、第1のリモートサーバ200内に記憶されることができる。
【0069】
この段階で、デバイス100とリモートサーバ200との間の通信を承認するステップe-(
図3ではS.e-)が生じ得るように、デバイス鍵材料DKMは、デバイス100側のセキュア要素SEによって計算されており、サーバ鍵材料SKMは、リモートサーバ200側で計算されている。典型的には、ステップe-は、デバイス鍵材料DKMとサーバ鍵材料SKMとの間の比較を(デバイス100側又はリモートサーバ200側で)実行する。当然ながら、クローン/重複関連付けのチェックも、同様に実行されることができる。
【0070】
上記から、以下に留意することができる。
-報告するステップc-は、いずれの非公開データも送信することなく実施され、これは、デバイス製造業者とオペレータとの間に安全な通信を有する必要性を放棄する。
-デバイス鍵材料は、セキュア要素非公開鍵を用いてセキュア要素によって計算され、これは、高レベルのセキュリティを確保する。
-サーバ鍵材料は、プロファイル非公開鍵を用いてオペレータによって計算され、これは、高レベルのセキュリティを確保する。
-サーバ鍵材料は、PKIから取り出されたセキュア要素公開鍵を用いてオペレータによって計算され、これは、依然として高レベルのセキュリティを提供しながら、高レベルの柔軟性を確保する。
【0071】
図4は、
図3の上記のシステムの代替案であるシステムを表す。差異のみが、以下に記載される。
【0072】
デバイス製造業者Dev-M側において記載されるプロセスに加えて、ある特定のデータを生成し、それらをデバイス100の中に記憶することが有用であるか、又は必要であり得る。これらのデバイス製造業者データ(
図4で「デバイスデータ」として示される)は、暗示的認証スキームで使用されることができる。実際、
図4のステップb-では、セキュア要素SEは、例えば、セキュア要素非公開鍵、プロファイル公開鍵、及びデバイス製造業者データに基づいて、デバイス共有秘密を計算する。例えば、デバイス共有秘密は、セキュア要素非公開鍵、プロファイル公開鍵、及びデバイス製造業者データを入力として有する、鍵導出関数KDFの出力であり得る。デバイス共有秘密は、デバイス鍵材料DKMとみなされる。また、関連付け及び異なるタイプのデバイス製造業者データ(例えば、セキュア要素、オペレータプロファイル、及び製造業者データの間の三重関連付け)から生成される、複数の鍵を生成することも可能とみなされ得る。
【0073】
関連付けを報告するステップc-は、関連付けのセキュア要素公開データ及びプロファイル公開データを依然として報告するが、デバイス製造業者データも報告する。
【0074】
これに基づいて、オペレータOPは、
図3に記載される方法のように、セキュア要素公開鍵(PKIから取り出されるか、又は認証される)及びプロファイル非公開鍵に基づいて、サーバ共有秘密を計算することができる。しかしながら、デバイス100の状況をミラーリングして、オペレータOPは、第1のリモートサーバ200側で、デバイス製造業者データも入力として有する、デバイス100と同じ鍵導出関数KDFを使用して、サーバ共有秘密を計算する。サーバ共有秘密は、サーバ鍵材料SKMとみなされる。
【0075】
次いで、ステップe-は、
図3と同様であり、サーバ鍵材料SKMをデバイス鍵材料KDMと比較するデバイス鍵の肯定的な比較によって、通信を承認することができる。
【0076】
図3のシステムと比較して、
図4のシステムは、デバイス100の製造中に特定のデバイス製造業者データを生成し、それをオペレータに送信することを可能にするが、デバイス製造業者データが第2の共有秘密の一部であるため、依然として高レベルのセキュリティを確保する。
【0077】
図5は、非対称暗号化に依然として基づく、
図4のシステムの代替システムを表す。このシステムでは、デバイス製造業者データをデバイス鍵材料及びサーバ鍵材料に埋め込む代わりに、関連付けを報告するステップc-の間にデバイス製造業者データをオペレータに送信し、依然として高レベルのセキュリティを提供することが決定される。
【0078】
詳細には、デバイス製造業者データ(
図5で「デバイスデータ」として表される)は、デバイス100の中に記憶される。ステップb-は、セキュア要素非公開鍵及びプロファイル公開鍵を使用して、デバイス共有秘密であるデバイス鍵材料DKMを計算するステップを含む。この段階で、セキュア要素SE(又はデバイス100)は、以下のように検証トークンを計算することができる:ハッシュベースのメッセージ認証コード(HMAC)が、デバイス製造業者データ上で実行され、鍵導出関数(KDF)の結果が、デバイス共有秘密に適用されることができる。
【0079】
ステップc-の間に、関連付けを定義するセキュア要素公開データ及びプロファイル公開データは、依然としてオペレータOPに報告されるが、検証トークン(
図5で「トークン」として表される)も、オペレータOPに送信される。
【0080】
次いで、オペレータOPは、リモートサーバ側で、依然としてPKIからセキュア要素公開鍵を取り出すことができ、セキュア要素公開鍵及びプロファイル非公開鍵からサーバ共有秘密であるサーバ鍵材料を計算することができる。これが行われると、オペレータはまた、同じハッシュベースのメッセージ認証コード(HMAC)及び同じ鍵導出関数(KDF)を使用して、同様に受信される検証トークンからデバイス製造業者データを取り出すこともできる。検証トークンがプロファイル公開鍵に基づいてデバイス側で計算されているため、セキュリティは、(プロファイル非公開鍵が利用可能であるため)オペレータ側でも確保される。
【0081】
次いで、オペレータは、デバイス製造業者データを信頼して、例えば、サービスのレベルを調整し、強化し、定義することができる。ステップe-は、
図3及び
図4に関して、デバイス鍵材料DKMとサーバ鍵材料SKMとの間の正の一致に基づいて、デバイス100と第1のリモートサーバ200との間の通信を承認する。
【0082】
図4に描写されるシステムと比較して、
図5のシステムは、デバイス製造業者によって生成されたデバイス製造業者データが拡張サイズである場合でさえも、セキュア要素非公開又は公開鍵及びプロファイル公開鍵又は非公開鍵を用いて計算されるものとして、小さいサイズのデバイス及びサーバ鍵材料との通信の承認を実行することを可能にする。その一方で、デバイス製造業者データは、明示的なデータ検証を達成するために、オペレータによって信頼され得る検証トークンの形態で、安全な様式で送信される。
【0083】
上記に記載される全ての場合において、対称又は非対称鍵を用いると、通信は、デバイス鍵材料及びサーバ鍵材料の比較後に承認されることができ、ワンタイムパスワード、チャレンジレスポンス、ユーザIDパスワード暗号化ベースの機構のうちのいずれも必要としないことに留意されたい。実際、デバイス鍵材料及びサーバ鍵材料が両方とも、秘密データ(対称の場合のセキュア要素秘密鍵又はセキュア要素若しくはプロファイル非公開鍵のいずれか)を使用して、各側(デバイス100及びリモートサーバ200)で計算されると、これらの要素(デバイス鍵材料及びサーバ鍵材料)は、任意の更なる通信を承認するために信頼され得る。言い換えれば、関連付けを報告するステップc-の後、任意の更なる通信が、好ましくは、IMSI若しくはIMEI番号の有効性の事前チェック、又はAKAプロセス中の関連付けの使用を伴わずに、デバイス鍵材料及びサーバ鍵材料を比較することによって行われる。
【0084】
当然ながら、当業者には、明らかな改善及び/又は修正が実施され得、それでも添付の特許請求の範囲によって定義される本発明の範囲内であることが理解される。
【手続補正書】
【提出日】2022-08-19
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
リモートサーバとセキュア要素を装備したデバイスとの間の通信を確保するための方法であって、
-デバイス側プロファイルデータが、前記デバイス内及び/又は前記セキュア要素内に記憶され、
-デバイス側セキュア要素データが、前記セキュア要素内に記憶され、
-画像データが、
-前記リモートサーバ内に記憶されているサーバ側プロファイルデータと、
-前記リモートサーバ内に記憶されているか、又は前記リモートサーバから取り出し可能である、サーバ側セキュア要素データと、含み、
前記方法が、
a-前記デバイスを前記セキュア要素と関連付けるステップと、
b-前記デバイス側で、前記デバイス側プロファイルデータ及び前記デバイス側セキュア要素データに基づいてデバイス鍵材料を生成するステップと、
c-前記デバイス側プロファイルデータの一部及び前記デバイス側セキュア要素データの一部を送信することによって、前記リモートサーバに前記関連付けを報告するステップと、
d-報告された前記関連付けからの前記画像データから取り出される、前記サーバ側プロファイルデータ及び前記サーバ側セキュア要素データに基づいて、前記リモートサーバ側でサーバ鍵材料を生成するステップと、
e-少なくとも前記デバイス鍵材料と前記サーバ鍵材料との間の比較に基づいて、認証後に、前記デバイスと前記リモートサーバとの間の通信を承認するステップと、を含む、方法。
【請求項2】
-前記デバイス側プロファイルデータが、デバイス側プロファイル公開データを含み、前記デバイス側セキュア要素データが、デバイス側セキュア要素公開データを含み、
前記リモートサーバに前記関連付けを報告する前記ステップc-が、可読関連付けデータを送信するステップからなり、前記可読関連付けデータが、
-プロファイル公開ID、及び/又はプロファイル公開鍵、並びに/若しくはプロファイル公開証明書などの前記デバイス側プロファイル公開データの少なくとも一部と、
-セキュア要素公開ID、及び/又はセキュア要素公開鍵、並びに/若しくはセキュア要素公開鍵証明書などの前記デバイス側セキュア要素公開データの少なくとも一部と、を含む、請求項1に記載の方法。
【請求項3】
-前記デバイス側プロファイルデータが、プロファイル公開鍵を含み、
-前記デバイス側セキュア要素データが、セキュア要素非公開鍵を含み、
前記ステップd-が、前記リモートサーバに前記関連付けを報告する前記ステップc-の後に、
ステップc-で受信された前記セキュア要素に関連するデータを認証するために、要求を前記リモートサーバから公開鍵インフラストラクチャに送信するか、又はステップc-で受信された前記セキュア要素に関連するデータに関連するセキュア要素公開鍵及び/又はセキュア要素公開鍵証明書を取り出すために、要求を前記リモートサーバから公開鍵管理機関に送信するステップd1-と、
前記公開鍵インフラストラクチャから前記セキュア要素に関連する前記データの認証を受信するか、又はセキュア要素公開鍵及び/又はセキュア要素公開鍵証明書を前記公開鍵管理機関から取り出し、前記リモートサーバの中に記憶するステップd2-と、を含む、請求項1又は2に記載の方法。
【請求項4】
-前記サーバ側プロファイルデータ(SSPD)が、プロファイル非公開鍵を含み、
-前記デバイス鍵材料が、前記プロファイル公開鍵及び前記セキュア要素非公開鍵を用いて前記ステップb-で計算されたデバイス共有秘密であり、
-前記サーバ鍵材料が、ステップd-で生成されたサーバ共有秘密であり、サーバ側に記憶された前記プロファイル非公開鍵並びに前記セキュア要素公開鍵及び/又は前記セキュア要素公開鍵証明書が、ステップd2ーで取り出される、請求項3に記載の方法。
【請求項5】
-ステップa-が、前記デバイスを前記セキュア要素と関連付けた後に、デバイス製造業者データを生成又はインストールし、前記デバイス製造業者データをデバイスの中に記憶するステップa’1-を含み、
-ステップb-が、
-前記セキュア要素非公開鍵を入力として取り込む、少なくとも1つのデバイス共有秘密を計算するステップb’1であって、前記プロファイル公開鍵及び前記デバイス製造業者データが、ステップa’1で生成される、ステップを含み、
-前記関連付けを報告するステップc-が、前記デバイス共有秘密が前記デバイス鍵材料として前記デバイス内に記憶されたままである間に、前記デバイス製造業者データを報告するステップc’1を含み、
-ステップd-が、ステップc’1で受信された前記デバイス製造業者データ、前記プロファイル非公開鍵、前記セキュア要素公開鍵、及び/又は前記セキュア要素公開鍵証明書に基づいて、前記サーバ鍵材料を計算するステップd’1を含む、請求項4に記載の方法。
【請求項6】
前記ステップb’1が、鍵導出関数(KDF)を実行して、前記デバイス共有秘密を計算する、請求項5に記載の方法。
【請求項7】
-ステップa-が、前記デバイスを前記セキュア要素と関連付けた後に、デバイス製造業者データを生成し、前記デバイス製造業者データをデバイスの中に記憶するステップa’’1-を含み、
-ステップb-が、
-前記デバイス共有秘密を計算するステップb’’1と、
-ステップb’’1で計算された前記デバイス共有秘密及びステップa’’1で生成された前記デバイス製造業者データを入力として取り込む、検証トークンを計算するステップb’’2と、を含み、
-前記関連付けを報告するステップc-が、前記デバイス共有秘密が前記デバイス内に記憶されたままである間に、前記検証トークンを報告するステップc’’1を含む、請求項4に記載の方法。
【請求項8】
前記ステップb’’2が、ハッシュベースのメッセージ認証コード(HMAC)を実行して、前記検証トークンを計算する、請求項7に記載の方法。
【請求項9】
-前記デバイス側セキュア要素データが、セキュア要素秘密鍵を含み、
-前記サーバ側セキュア要素データが、前記セキュア要素秘密鍵を含み、
-前記ステップb-が、前記セキュア要素秘密鍵及び前記デバイス側プロファイルデータの少なくとも一部に基づいて、デバイス共有秘密である前記デバイス鍵材料を計算するステップb’’’1を含み、
-前記ステップd-が、前記リモートサーバに前記関連付けを報告する前記ステップc-の後に、
-前記画像データの中から、及び報告された前記関連付けから、少なくとも前記セキュア要素秘密鍵及び前記ステップb’’’1で使用される前記デバイス側プロファイルデータに対応するプロファイルデータを取り出すステップd’’’1と、
-ステップd’’’1で取り出された前記セキュア要素秘密鍵及び前記デバイス側プロファイルデータの一部に基づいて、サーバ共有秘密である前記サーバ鍵材料を計算するステップd’’’2とを含む、請求項1又は2に記載の方法。
【請求項10】
前記デバイスに埋め込まれているデバイス側プロファイルデータが、単一のユーザに向けられたデバイス側公開プロファイルデータと、プロファイル秘密鍵とを含み、
前記デバイス共有秘密の生成が、前記プロファイル秘密鍵を用いて実行される、請求項9に記載の方法。
【請求項11】
前記デバイスに埋め込まれたデバイス側プロファイルデータが、プロファイル又はユーザのセットに向けられ、それに共通している、デバイス側公開プロファイルデータと、前記公開プロファイルデータに関連付けられた単一プロファイル秘密鍵とを含み、
前記デバイス共有秘密の生成が、前記単一プロファイル秘密鍵を用いて実行される、請求項9に記載の方法。
【請求項12】
前記サーバ共有秘密が、
-前記画像データの中から取り出された前記セキュア要素秘密鍵と、
-前記画像データの中から取り出された前記プロファイル秘密鍵とを用いて生成される、請求項10又は11に記載の方法。
【請求項13】
前記リモートサーバと前記デバイスとの間の前記通信を承認する前記ステップe-の前に、前記リモートサーバ側で、少なくとも複数の同一の関連付けの不在をチェックするステップを用いて、前記関連付けの正当性を立証するステップを含む、請求項1~12のいずれか一項に記載の方法。
【請求項14】
前記リモートサーバ側で前記サーバ鍵材料を生成する前記ステップが、前記デバイス側プロファイルデータ(DSPD)の一部及び前記デバイス側セキュア要素データ(DSSED)の一部の報告された前記関連付けが一意であるとして正当性を立証される場合にのみ実行される、請求項13に記載の方法。
【請求項15】
-前記デバイスにデバイス側プロファイルデータを埋め込むこと、及び/又は
-前記セキュア要素にデバイス側セキュア要素データを埋め込むことが、
前記セキュア要素を前記デバイスに関連付ける前記ステップの前に実施される、請求項1~14のいずれか一項に記載の方法。
【請求項16】
前記通信を承認する前記ステップe-が、
-前記リモートサーバに前記デバイス鍵材料を送信するステップ、並びに前記リモートサーバ側で実行される、前記サーバ鍵材料との前記受信されたデバイス鍵材料の比較のステップ、及び/又は
-前記デバイスに前記サーバ鍵材料を送信するステップ、並びに前記デバイス側で実行される、前記受信されたサーバ鍵材料との前記デバイス鍵材料の比較のステップを含む、請求項1~15のいずれか一項に記載の方法。
【請求項17】
システムであって、
-デバイス側プロファイルデータを埋め込むデバイスと、
-デバイス側セキュア要素データを埋め込むセキュア要素と、
-画像データを記憶するリモートサーバであって、
前記リモートサーバ内に記憶されているサーバ側プロファイルデータ(SSPD)と、
前記リモートサーバ内に記憶されているか、又は前記リモートサーバから取り出し可能である、サーバ側セキュア要素データ(SSSED)と、を含む、リモートサーバと、を備え、
前記システムが、請求項1~16のいずれか一項に記載の通信を確保するための方法のステップを実装するように配列される、システム。
【請求項18】
請求項16のシステムのためのデバイスを製造する方法であって、前記方法が、
-デバイス側セキュア要素データを埋め込んでいるセキュア要素を受信するステップと、
-デバイスのデバイスプロファイルセクションに、デバイス側プロファイルデータをロードするステップと、
-セキュア要素をデバイスに結合するステップと、を含む、デバイスを製造する方法。
【請求項19】
デバイス側プロファイルデータ及びデバイス側セキュア要素データに基づいて、デバイス鍵材料を生成及び/又は計算するステップ、を更に含む、請求項18のデバイスを製造する方法。
【請求項20】
リモートサーバに、デバイス側プロファイルデータの一部及びデバイス側セキュア要素データの一部を送信することによって、デバイスへのセキュア要素の結合がもたらす関連付けをリモートサーバに報告するステップ、を更に含む、請求項18又は19のデバイスを製造する方法。
【国際調査報告】