(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-05-10
(45)【発行日】2023-05-18
(54)【発明の名称】埋め込まれたルートオブトラストシークレットで生成される集積回路の個人化
(51)【国際特許分類】
G06F 21/64 20130101AFI20230511BHJP
G06K 19/073 20060101ALI20230511BHJP
G06F 21/62 20130101ALI20230511BHJP
G06F 21/60 20130101ALI20230511BHJP
【FI】
G06F21/64
G06K19/073
G06F21/62 345
G06F21/60 320
【外国語出願】
(21)【出願番号】P 2019107524
(22)【出願日】2019-06-07
【審査請求日】2022-04-07
(32)【優先日】2018-06-17
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】509174196
【氏名又は名称】ソニー セミコンダクタ イスラエル リミテッド
(74)【代理人】
【識別番号】100086461
【氏名又は名称】齋藤 和則
(72)【発明者】
【氏名】イユーダ ベン-サイモン
(72)【発明者】
【氏名】オマール ボヴィニック
(72)【発明者】
【氏名】アヴィシャイ シャラガ
【審査官】平井 誠
(56)【参考文献】
【文献】米国特許出願公開第2018/0150044(US,A1)
【文献】特表2017-514255(JP,A)
【文献】特表2015-522976(JP,A)
【文献】米国特許出願公開第2017/0104750(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/64
G06K 19/073
G06F 21/62
G06F 21/60
(57)【特許請求の範囲】
【請求項1】
集積回路(IC)であって:
ルートオブトラスト(RoT)シークレットで事前にプログラムされた不揮発性記憶要素と;そして
プロセッサと;
を有し、
前記プロセッサは:
前記RoTシークレットに基づいて安全に保護されたデータ画像を安全でないリンクを介して受信するステップであって、前記データ画像はユーザ個人データを生成するためのアプリケーションプログラムを少なくとも含む、ステップと;
受信した前記データ画像が信頼できることを、前記RoTシークレットを使用して検証するステップに応答して、前記アプリケーションプログラムをインストールするステップと;
前記アプリケーションプログラムを実行して、前記IC内で安全に前記ユーザ個人データを生成するステップと;そして
安全なスキームを使用して前記ユーザ個人データを報告するステップと;
を実行するように構成される、
ことを特徴とする集積回路(IC)。
【請求項2】
前記事前にプログラムされたRoTシークレットを有する前記ICは、スマートカード、クレジットカード、および加入者識別モジュール(SIM)カードを含むリストから選択された複数の異なる装置に適用可能である、ことを特徴とする請求項1に記載のIC。
【請求項3】
前記アプリケーションプログラムは、特定のベンダに適した個人データを前記IC用に生成するベンダ固有のプログラム、または複数の異なるベンダに適した個人データを前記IC用に生成する汎用プログラムを含む、ことを特徴とする請求項1に記載のIC。
【請求項4】
前記プロセッサは、ベンダであって、前記ICが当該ベンダに対して個人化されている、ベンダにより提供される、ユーザ固有情報を含む別のデータ画像を受信するように構成される、ことを特徴とする請求項1に記載のIC。
【請求項5】
前記プロセッサは、不揮発性メモリ(NVM)装置に結合され、そしてここにおいて前記プロセッサは、(i)前記アプリケーションプログラムを使用して生成された前記ユーザ個人データ、および、(ii)前記データ画像または別のデータ画像内に提供された他の個人データ、の1つまたはそれ以上を前記NVM装置に記憶するように構成される、ことを特徴とする請求項1に記載のIC。
【請求項6】
前記プロセッサは、1つまたは複数の暗号方式および、1つまたは複数のそれぞれの暗号鍵を使用して、報告されるべき前記ユーザ個人データを保護するように構成され、ここで前記暗号鍵は、前記データ画像内または前記RoTシークレット内に提供され、または、鍵合意方式を使用して、前記ユーザ個人データが報告されるプロセッサと合意される、ことを特徴とする請求項1に記載のIC。
【請求項7】
前記受信したデータ画像は、前記RoTシークレット内の署名検証鍵とマッチする署名生成鍵を使用して生成された画像署名を含み、そして前記プロセッサは、前記RoTシークレットの前記署名検証鍵を使用して前記画像署名を検証することによって、前記受信したデータ画像が信頼できることを検証する、ように構成される、ことを特徴とする請求項1に記載のIC。
【請求項8】
前記プロセッサは、前記ICが前記ユーザ個人データで一意に個人化されたことを検証するために、前記ユーザ個人データを報告するように構成される、ことを特徴とする請求項1に記載のIC。
【請求項9】
ルートオブトラスト(RoT)シークレットで事前にプログラムされた不揮発性記憶要素を有する集積回路(IC)において、
前記RoTシークレットに基づいて安全に保護されているデータ画像を、安全でないリンクを介して受信するステップであって、前記データ画像はユーザ個人データを生成するためのアプリケーションプログラムを少なくとも含む、ステップと;
前記受信したデータ画像が信頼できることを、前記RoTシークレットを使用して検証するステップに応答して前記アプリケーションプログラムをインストールするステップと;
前記アプリケーションプログラムを実行して、前記IC内で安全に前記ユーザ個人データを生成するステップと;そして
安全なスキームを使用して前記ユーザ個人データを報告するステップと;
を有することを特徴とする方法。
【請求項10】
前記事前にプログラムされたRoTシークレットを有する前記ICは、スマートカード、クレジットカード、および加入者識別モジュール(SIM)カードを含むリストから選択される、複数の異なる装置に適用可能である、ことを特徴とする請求項9に記載の方法。
【請求項11】
前記アプリケーションプログラムは、特定のベンダに適したIC個人データを生成するベンダ固有プログラム、または複数の異なるベンダに適したIC個人データを生成する汎用プログラムを含む、ことを特徴とする請求項9に記載の方法。
【請求項12】
ベンダであって、前記ICが当該ベンダに対して個人化されている、ベンダにより提供される、ユーザ固有情報を含む別のデータ画像を受信するステップをさらに有する、ことを特徴とする請求項9に記載の方法。
【請求項13】
前記ICは、不揮発性メモリ(NVM)装置に結合されたプロセッサを有し、そして前記方法は前記プロセッサによって、前記NVM装置内に、(i)前記アプリケーションプログラムを使用して生成された前記ユーザ個人データ、および、(ii)前記データ画像または別のデータ画像内に提供された他の個人データ、の1つまたはそれ以上を記憶するステップを有する、ことを特徴とする請求項9に記載の方法。
【請求項14】
前記ユーザ個人データを報告するステップは、1つまたは複数の暗号方式および、1つまたは複数のそれぞれの暗号鍵を使用して、報告されるべき前記ユーザ個人データを保護するステップを有し、ここで前記暗号鍵は、前記データ画像内または前記RoTシークレット内に提供され、または、鍵合意方式を使用して、前記ユーザ個人データが報告されるプロセッサと合意される、ことを特徴とする請求項9に記載の方法。
【請求項15】
前記受信データ画像は、前記RoTシークレット内の署名検証鍵とマッチする署名生成鍵を使用して生成された画像署名を含み、そして前記受信したデータ画像が信頼できることを検証するステップは、前記RoTシークレットの前記署名検証鍵を使用して前記画像署名を検証するステップを有する、ことを特徴とする請求項9に記載の方法。
【請求項16】
前記ユーザ個人データを報告するステップは、前記ICが前記ユーザ個人データで一意に個人化されたことを検証するために、前記ユーザ個人データを報告するステップを有する、ことを特徴とする請求項9に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書で説明される実施形態は、一般に集積回路に関し、特に、埋め込まれたルートオブトラストのシークレットで生成される集積回路を個人化するための方法およびシステムに関する。
【0002】
(関連アプリケーションとの相互参照)
本出願は、2018年6月17日に出願された米国暫定特許出願第62/686,015号(特許文献1)の利益を主張し、その開示は参照により本明細書に組み込まれる。
【背景技術】
【0003】
様々な用途における集積回路は、現場に配備される前に個人情報を供給される。そのような用途には、例えば、クレジットカード、SIMカードおよび他の種類のスマートカードに使用される集積回路が含まれる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【0005】
本明細書に記載される実施形態は、不揮発性記憶要素とプロセッサとを有する集積回路(IC)を提供する。不揮発性記憶要素は、ルートオブトラスト(RoT)シークレットで事前にプログラムされる。プロセッサは、RoTシークレットに基づいて安全に保護されたデータ画像を安全でないリンクを介して受信するように構成され、ここでデータ画像はユーザ個人データを生成するためのアプリケーションプログラムを少なくとも含む。プロセッサはさらに、受信したデータ画像が信頼できることを、RoTシークレットを使用して検証するステップに応答して、アプリケーションプログラムをインストールし、アプリケーションプログラムを実行してIC内で安全にユーザ個人データを生成し、そして安全なスキームを使用してユーザ個人データを報告する、ように構成される。
【0006】
いくつかの実施形態にでは、事前にプログラムされたRoTシークレットを有するICは、スマートカード、クレジットカード、および加入者識別モジュール(SIM)カードを含むリストから選択された複数の異なる装置に適用可能である。他の実施形態では、アプリケーションプログラムは、特定のベンダに適した個人データをIC用に生成するベンダ固有のプログラム、または複数の異なるベンダに適した個人データをIC用に生成する汎用プログラムを含む。さらに他の実施形態では、プロセッサは、ベンダであって、前記ICが当該ベンダに対して個人化されている、ベンダにより提供される、ユーザ固有情報を含む別のデータ画像を受信するように構成される。
【0007】
一実施形態では、プロセッサは、不揮発性メモリ(NVM)装置に結合され、そしてここにおいてプロセッサは、(i)アプリケーションプログラムを使用して生成されたユーザ個人データ、および、(ii)データ画像または別のデータ画像内に提供された他の個人データ、の1つまたはそれ以上をNVM装置に記憶するように構成される。別の実施形態では、プロセッサは、1つまたは複数の暗号方式および1つまたは複数のそれぞれの暗号鍵を使用して、報告されるべきユーザ個人データを保護するように構成され、ここで暗号鍵は、データ画像内またはRoTシークレット内に提供され、または、鍵合意方式を使用して、ユーザ個人データが報告されるプロセッサと合意される。さらに別の実施形態では、受信したデータ画像は、RoTシークレット内の署名検証鍵とマッチする署名生成鍵を使用して生成された画像署名を含み、そしてプロセッサは、RoTシークレットの署名検証鍵を使用して画像署名を検証することによって、受信したデータ画像が信頼できることを検証する、ように構成される。
【0008】
いくつかの実施形態では、プロセッサは、ICがユーザ個人データで一意に個人化されたことを検証するために、ユーザ個人データを報告するように構成される。
【0009】
本明細書に記載された実施形態によれば、ルートオブトラスト(RoT)シークレットで事前にプログラムされた不揮発性記憶要素を有する集積回路(IC)において、RoTシークレットに基づいて安全に保護されているデータ画像を、安全でないリンクを介して受信するステップであって、データ画像はユーザ個人データを生成するためのアプリケーションプログラムを少なくとも含む、ステップを有する方法がさらに提供される。アプリケーションプログラムは、受信したデータ画像が信頼できることを、RoTシークレットを使用して検証するステップに応答してインストールされる。アプリケーションプログラムは、IC内で安全にユーザ個人データを生成するために実行される。ユーザ個人データは、安全なスキームを使用して報告される。
【図面の簡単な説明】
【0010】
これらのおよび他の実施形態は、図面と併せた、実施形態の以下の詳細な説明からより完全に理解されるであろう:
【
図1】本明細書に記載の実施形態による、埋め込まれたルートオブトラスト(RoT)シークレットで生成された集積回路(IC)を含むモジュール、およびICを個人化するために実行されるプロセスを概略的に示すブロック図である。そして
【
図2】本明細書に記載の実施形態による、埋め込まれたRoTシークレットを用いて生産されたICの個人化のための方法を概略的に示すフローチャートである。
【発明を実施するための形態】
【0011】
(概要)
様々な用途では、現場で使用される前に固有の個人情報をICにプロビジョニングする必要がある。基礎となる用途に応じて、例えば、いくつか挙げると、個人情報は、ICのIDを検証し、ICが許可された装置内に存在することを確認し、ICとの通信を許可するために使用することができる。個人情報をICにプロビジョニングするプロセスは、「個人化プロセス」とも呼ばれる。個人データをプロビジョニングされるICは、「個人化されるIC」とも呼ばれる。
【0012】
個人化されるICの例は、所有者データで個人化されるクレジットカード、カード固有データで個人化される加入者識別モジュール(SIM)カード、それはそのSIMカードをユーザカウントにリンクするためにセルラネットワークによって後に使用される、および、他の種類のスマートカードやその他の適切なアプリケーションに使用されるIC、を含む。
【0013】
本明細書に記載される実施形態は、信頼できる個人化プロセスを実行するための改善されたシステムおよび方法を提供する。一般に、信頼できると見なされるためには、個人化プロセスは、許可されていないエンティティによって実行される可能性があるさまざまな攻撃に対して回復力があるべきである。信頼できる個人化における主要な要件は、例えばクローンまたは複製ICを生産するために、プロビジョニングされた個人情報が盗まれることから保護されることを確証することである。さらに、ICは、偽の情報でICを個人化しようとする攻撃から保護されている必要がある。
【0014】
原則として、重要な物理的および論理的セキュリティを提供する個人化スキームは、起こり得る広範囲の攻撃から保護されている、認証されそして信頼できる生産サイト内で実行されうる。信頼できる生産現場では、機密情報は通常、専用のローカルサーバによって作成され、そしてICにプロビジョニングされる。個人化されたICのレポートは、検証のためにカード所有者に安全に送信される。しかし、信頼できる生産現場でICの個人化を行うことは複雑で高価であり、そして例えば低電力広域(LPWA)ネットワークで動作するモノのインターネット(IoT)装置などの低コスト装置を個人化するのには不適切であり得る。
【0015】
開示された技術では、個人化されるICは、埋め込まれたルートオブトラスト(RoT)シークレットで事前生産される。RoTシークレットは、例えば、個人化スキームの後の段階で、個人情報を内部で生成するためのアプリケーションプログラムを含む、データ画像をICにロードするために使用される。信頼できるドメインはICそれ自体であるので、個人化プロセスは信頼できないサイトで実行されうる。
【0016】
ICが、生産時にルートオブトラスト(RoT)シークレットで事前にプログラムされた不揮発性記憶素子を有する実施形態を検討する。一実施形態では、RoTシークレットの事前プログラミングは、信頼できる生産サイトで実行される。RoTシークレットで事前プログラムされたICは、複数の異なるデバイスに適用できる。ICは、RoTシークレットに基づいて安全に保護されているデータ画像を、安全でないリンクを介して受信するように構成されたプロセッサをさらに備える。典型的にはICのICベンダによって生成されるデータ画像は、ユーザ個人データを生成するためのアプリケーションプログラムを少なくとも含む。いくつかの実施形態では、アプリケーションプログラムは、ICによって必要とされる個人情報の一部のみを生成するように設計されているが、識別情報などの他の個人データは画像内に提供されうる。プロセッサは、受信したデータ画像が信頼できることをRoTシークレットを使用して検証することに応答して、アプリケーションプログラムをインストールし、そしてアプリケーションプログラムを実行してIC内に安全なユーザ個人データを生成する。個人化に続いて、プロセッサは、安全なスキームを使用して、個人化に関連する情報をICベンダに報告する。
【0017】
本出願の文脈、および特許請求の範囲において、「ICベンダ」という用語は、個人化されるICにロードするための保護されたデータ画像を生成する、任意の適切なエンティティを本明細書において意味する。そのようなエンティティは、実際のICベンダ、またはSIMベンダ、クレジットカードベンダ、またはICに対して個人化される信頼できるアプリケーションの任意のベンダ、などの別のエンティティであり得る。
【0018】
データ画像は、場合によっては別々のデータ画像に常駐する、ベンダ固有の部分とユーザ固有の部分とを有することができる。ベンダ固有の部分には、そのベンダが使用しているICに共通の情報が含まれる。ベンダ固有情報は、オペレーティングシステム(OS)、1つまたは複数のアプリケーションプログラム、すべてのユーザ間で共有される共通の構成などを含むことができる。ユーザ固有部分は、ICおよび/またはユーザのID、モバイルネットワークにアクセスするための資格情報などを含むことができる。ユーザ固有の情報、および場合によってはベンダ固有の情報も、機密情報を構成すると見なされる。いくつかの実施形態では、ICは、ユーザ固有部分の個人情報のうちの少なくともいくつかを内部で生成する。これにより、この個人化情報を含む特定の画像を複数のICにロードしようとする不正な試みに対する保護を提供できる。
【0019】
いくつかの実施形態では、受信したデータ画像は所与のICベンダによって提供され、そのデータ画像内のアプリケーションプログラムは、その所与のICベンダの要求に沿ったIC用の個人データを生成する、ベンダ固有のアプリケーションプログラムを含む。代替的または追加的に、データ画像で提供されるアプリケーションプログラムは、複数の異なるベンダのICのための個人データを生成する、汎用アプリケーションプログラムを含む。いくつかの実施形態では、プロセッサは、ICベンダによって提供されたユーザ固有の情報を含む別のデータ画像を受け取る。
【0020】
プロセッサは、不揮発性メモリ(NVM)装置に、(i)アプリケーションプログラムを使用して生成されたユーザ個人データ、および(ii)そのデータ画像(または別のデータ画像)に提供された他の個人データ、の1つまたは複数を安全に記憶するように構成される。NVMは、IC内に、またはICの外部、例えばICが含まれるモジュール内に存在してもよい。
【0021】
一実施形態では、データ画像は、RoTシークレット内の署名検証鍵とマッチする署名生成鍵を使用して生成される画像署名を使用して保護される。この実施形態では、プロセッサは、RoTシークレットの署名検証鍵を使用して画像署名を検証することによって、受信したデータ画像が信頼できることを検証する。いくつかの実施形態では、プロセッサは、ICベンダに知られているそれぞれの暗号鍵とマッチする暗号鍵を使用して、1つまたは複数の暗号方式をレポート情報に適用することによって、ICのユーザ個人データを例えばICベンダに報告する。暗号鍵は、データ画像内に、RoTシークレット内に、または他の任意の適切な鍵合意スキームを使用して提供することができる。
【0022】
開示された技術では、IC自体が信頼できるドメインとして機能する。これにより、信頼できないサイトで信頼できる個人化を実行することが可能になり、これは信頼できる生産サイトでの従来の個人化と比較してはるかに単純で費用効果が高く、スケーラブルである。生産時にICに埋め込まれたRoTシークレットは様々な用途に適しており、したがって開示された個人化プロセスは特定のICハードウェアとベンダ画像との間の生産前のマッチングを必要としない。
【0023】
(システムの説明)
図1は、本明細書に記載の実施形態に基づく、埋め込まれたルートオブトラスト(RoT)シークレット28で生成された集積回路(IC)24を含むモジュール20、およびそのICを個人化するために実行されるプロセスを概略的に示すブロック図である。
【0024】
モジュール20は、例えば、クレジットカード、SIMカード、スマートカード、または安全な個人化を必要とする他の適切な種類の個人化アプリケーションを含みうる。IC24はRoTシークレット28で生成され、RoTシークレット28はIC内で任意の適切な種類の不揮発性メモリ(NVM)要素30内に記憶されている。NVM要素30は、例えばワンタイムプログラマブル(OTP)記憶要素、不揮発性メモリセルのアレイ、ヒューズアレイ、などを含むことができる。
【0025】
後述するように、ICは、信頼できる方法でデータ画像を受け取るためにRoTシークレットを使用し、ここでデータ画像は内部的個人化のために使用される。「データ画像」は、本明細書では簡潔さのために「画像」とも呼ばれる。異なるアプリケーションは異なるそれぞれの種類の画像を必要としうるが、共通のRoTシークレット28は複数の異なる種類の画像に使用され、そのことは、開示された個人化方式のスケーラビリティに寄与する。
【0026】
RoTシークレット28は、以下のような様々な種類の情報を含み得る:
・プロセッサによって実行されるソフトウェアの真性を保証するセキュアブートを実行するための公開鍵。後述するように、ソフトウェアは、RoTシークレットに基づく画像署名で署名されたデータ画像内に受信される。
・データ画像の内容を保護するための1つ以上の暗号鍵。
・接続されたピア(例えば、ピアサーバ)を認証するためのルート認証局(CA)の公開鍵。
・外部エンティティによるICの構成証明および認証のための、楕円曲線暗号(ECC)証明書や秘密鍵などの個人ID/鍵。
【0027】
個人化プロセスでは、生産時にICに埋め込まれたRoTシークレットと、ICにロードされる画像を保護するために使用されるRoTシークレットとのマッチングが必要であることに注意が必要である。埋め込まれたRoTシークレットとは異なるRoTシークレットに基づいて保護された画像は、そのICによって拒否される。
【0028】
本開示の文脈において、RoTシークレットに関する用語「マッチング」は、ICに埋め込まれたRoTシークレット、およびICのための保護された画像を生成するエンティティが、暗号化および復号、署名の生成および検証などのような、それぞれの補足的な暗号化操作を適用するための、それぞれのマッチングする暗号鍵の1つ以上のペアを有することを意味する。
【0029】
IC24は、オペレーティングシステム(OS)36および、内部個人化に使用されるアプリケーションプログラム40を含む1つまたは複数のアプリケーションプログラム40のような様々なプログラムを実行するように構成される、プロセッサ32を備える。
【0030】
IC24は、外部サーバ50と通信するためのインタフェース(IF)44をさらに備える。例えば、プロセッサは、IF44を介してサーバ50から画像データを受信し、IF44を介して個人化情報をサーバに送信する。インタフェース(IF)44は、例えばユニバーサルシリアルバス(USB)、ユニバーサル非同期送信-受信機(UART)またはイーサネット(登録商標)リンクのような適切なリンクまたはバスを有しうる。
【0031】
この例では、IC24は適切なリンクまたはバス56を介して不揮発性メモリ(NVM)54に結合されている。代替の実施形態では、NVM54はIC24内に実装される。NVM54は、例えば、フラッシュメモリなどの任意の適切なタイプの不揮発性メモリからなる。いくつかの実施形態では、プロセッサは、アプリケーションプログラム40によって生成された個人情報および画像内に提供された個人データのような個人データ58をNVM54に記憶する。個人データ58は、NVM54に安全に記憶される。例えば、いくつかの実施形態では、NVM54は安全なメモリを含む。他の実施形態では、NVM54は安全なメモリではなく、ICは任意の適切な暗号技術を使用して個人データ58をNVM54に安全に記憶する。
【0032】
図1はさらに、IC生産者60およびICベンダ64を示しており、これらについては以下でさらに詳細に説明する。
図1に示される例示的な画像78および79もまた以下で説明される。
【0033】
(効率的なIC個人化プロセス)
次に、IC24を個人化するために実行されるプロセスについて説明する。個人化プロセスは、IC生産者60、ICベンダ64、サーバ50、およびIC24などの様々な要素間の相互作用を含む。
図1のプロセスは、IC24の外部の要素が関わる、個人化プロセス全体の部分を網羅する。IC24内で実行される部分については、以下の
図2で説明する。
【0034】
上述のように、「ICベンダ」という用語は、本明細書では、IC個人化のために保護された画像を生成するか、そうでなければ提供するあらゆるエンティティを指す。いくつかの実施形態では、ICベンダ64の機能は、IC生産者60内または他の任意の適切なサーバ内で実行することができる。
【0035】
図1の水平方向の点線は、(点線より上の)信頼できるサイトで実行される個人化プロセスの部分と、(点線より下の)信頼できないサイトで実行される部分とを区別する。
【0036】
図1の例示的なプロセスは、一連の番号付けされたステップとして説明される。プロセスは、RoTシークレット生成ステップ70で、IC生産者60がRoTシークレットを生成することで始まる。いくつかの実施形態では、IC生産者は、複数のIC(例えば要求に応じて)に対して同じまたは異なるそれぞれのRoTシークレットを生成することができる。上記のように、同じRoTシークレットを複数の異なるアプリケーションおよび使用事例に使用できる。IC生産者60はさらに、RoTシークレットプロビジョニングステップ74において、ステップ70で生成されたRoTシークレットを各生成ICにプロビジョニングして、RoTシークレット28が埋め込まれたIC24を生成する。
【0037】
画像生成ステップ76において、ICベンダは、基礎となるアプリケーションに従って画像を生成する。いくつかの実施形態では、ICベンダは、ベンダ固有の画像78と別個のユーザ固有の画像79とを生成する。
【0038】
図1の例では、ベンダ固有の画像78は、それぞれOS36およびアプリケーションプログラム40としてプロセッサ32によって実行される、OS80と1つまたは複数のアプリケーションプログラム81とを含むことができる。 IC24がSIMカードを含む実施形態では、ベンダ固有の画像はモバイルネットワークオペレータ(MNO)プロファイル82をさらに含むことができ、それは、例えば、MNOによって必要とされるネットワークパラメータ、ファイルシステム、およびMNOアプレットを指定する。いくつかの実施形態では、ベンダ固有の画像は、後述するように、安全なレポートを作成するためにICによって使用される、出力鍵84を含む。ユーザ固有画像79は、ユーザIDのようなユーザ個人データ86を含む。IC24がSIMカードを含む実施形態では、ユーザIDは国際移動体加入者識別番号(IMSI)を含み得る。
【0039】
画像保護ステップ88で、ICベンダ64は、サーバ50に一時的に記憶される保護された画像90を生成する。いくつかの実施形態では、ICベンダはステップ76で生成された画像を暗号化し、そして暗号化画像にそれぞれの画像署名で署名することによって保護された画像を生成する。他の実施形態では、ICベンダは最初に画像に署名し、次に署名された画像を暗号化する。ICベンダは、画像保護のために任意の適切な暗号化および署名方式を使用することができる。例示的な暗号化方式は、カウンタモード(AES-CTR)で構成された高度暗号化標準(AES)を含み、そして例示的な署名方式は、楕円曲線デジタル署名アルゴリズム(ECDSA)を含む。暗号化および署名動作は、IC24に埋め込まれたRoTシークレット内のそれぞれの暗号鍵とマッチする秘密暗号鍵を使用する。ICベンダは保護された画像をサーバ50に配信し、サーバ50はそれをローカルに記憶する。サーバは通常、複数のIC宛ての複数の保護された画像のバッチを記憶する。後に、サーバは、上述のように、選択された保護された画像をICのインタフェース(IF)44を介してIC24に送信する。
【0040】
なお、本個人化プロセスによれば、画像を保護するためにICベンダによって使用される鍵とマッチする鍵を有するRoTシークレットで生成されたICのみが、ICベンダによって生成および保護された画像を受け入れることができる。ICベンダは、RoTシークレットで指定された対称および非対称の資格情報の任意の適切な組み合わせを使用して、画像を暗号化し署名することができる。
【0041】
図1のモジュール20およびIC24の構成は一例として与えられており、これらは純粋に概念的な明確さのために選択されている。代替実施形態では、他の適切なモジュールおよびIC構成もまた使用され得る。プロセッサ32、NVM54、およびインタフェース(IF)44などのモジュール20およびIC24のいくつかの要素は、ハードウェア内、たとえば1つまたは複数の特定用途向け集積回路(ASIC)またはフィールドプログラマブルゲートアレイ(FPGA)内に実装することができる。追加的または代替的に、IC24のいくつかの要素は、ソフトウェアを使用して、またはハードウェア要素とソフトウェア要素の組み合わせを使用して実装することができる。
【0042】
図1に示される例示的なシステム構成では、IC24およびNVM54は2つの別々の集積回路(IC)として実装される。しかしながら、他の実施形態では、IC24およびNVM54は、単一のマルチチップパッケージ(MCP)またはシステムオンチップ(SoC)内の別々の半導体ダイ上に統合されてもよく、そして内部バスによって相互接続されてもよい。さらに代替として、NVM54は、IC24が配置されているのと同じダイ上に存在してもよい。そのような実施形態では、IC24自体がモジュール20として機能する。
【0043】
いくつかの実施形態では、モジュール20およびIC24のそれぞれのいくつかの機能は、汎用プロセッサ、例えば、本明細書に記載の機能を実行するようにソフトウェアでプログラムされているプロセッサ32によって実行することができる。ソフトウェアは、例えばネットワークを介して電子形式で関連プロセッサにダウンロードすることができ、あるいは代替的にまたは付加的に、磁気、光学、または電子メモリなどの非一過性有形媒体に提供され、および/または記憶されうる。
【0044】
NVM要素30は、RoTシークレット28を記憶するための任意の適切な種類の不揮発性記憶装置を含み得る。NVM54は、フラッシュメモリなどの任意の適切な種類の不揮発性記憶装置であり得る。
【0045】
明確にするために、本開示の原理を理解するのに必要ではない要素、例えば様々なインタフェース、アドレス指定回路、タイミングおよびシーケンス回路およびデバッグ回路は、明確化のため図から省略されている。
【0046】
図2は、本明細書で記載される実施形態による、埋め込まれたRoTシークレット28で生成されたIC24の内部的個人化のための方法を概略的に示すフローチャートである。この方法は、IC24のプロセッサ32によって実行されるものとして記載される。
【0047】
この方法は、画像保護ステップ150において、プロセッサ32が保護された画像を受信することから始まる。受信された画像は、IC内に埋め込まれているRoTシークレット28に基づいて保護される。一実施形態では、サーバ50はICベンダ64から1つまたは複数の保護された画像を受け取り、プロセッサ32はIF44を介してサーバ50から保護された画像を受け取る。保護された画像は上述のように暗号化および署名される。この画像はOS(36)とアプリケーションプログラム(40)を含む。いくつかの実施形態では、サーバ50は、1つまたは複数の保護された画像をローカルに記憶し、そして後に、選択された画像をICに送信する。
【0048】
署名検証ステップ154において、プロセッサ32は、画像に署名するためにICベンダによって使用された鍵とマッチするRoTシークレット28の関連する鍵を使用して、保護された画像の画像署名を検証する。プログラムインストールステップ158において、画像署名が首尾よく検証されたとき、プロセッサは、ICベンダによって画像を暗号化するために使用された鍵とマッチするRoTシークレット28内の関連する鍵を使用して画像を解読する。代替実施形態では、プロセッサは最初に画像を解読し、次に署名を検証する。そして、プロセッサは、解読した画像からアプリケーションプログラム40を抽出して、そして抽出されたアプリケーションプログラムをインストールする。一実施形態では、アプリケーションプログラムを抽出してインストールする前に、プロセッサは、解読された画像からOS80(および/または他のソフトウェア要素)を抽出し、それをOS36としてICにインストールする。
【0049】
個人データ生成ステップ162において、プロセッサは、個人データを生成するためのアプリケーションプログラムを実行する。アプリケーションプログラムは、特定のICベンダ向けに設計されていてもよく、したがって実行されると、特定のICベンダの要求に従って個人データを生成する。あるいは、アプリケーションプログラムは、複数の異なるICベンダに適した個人データを生成する汎用プログラムを含む。いくつかの実施形態では、プロセッサは、ベンダ固有プログラムと汎用アプリケーションプログラムの両方を使用して個人データを作成する。
【0050】
アプリケーションプログラムを実行することによって、プロセッサはユーザ固有のデータおよびカード固有のデータを生成する。例えば、ICがSIMカードを含む実施形態では、プロセッサは、SIMカードがモバイルネットワークにアクセスするために使用できる特定の信用情報および鍵を生成する。アプリケーションプログラムによって生成された個人データは、ユーザ固有の画像内で受信された移動体通信事業者(MNO)IDなどの識別情報を含むことができる。
【0051】
個人データ記憶ステップ166において、プロセッサは、画像内に受信された個人データと、アプリケーションプログラムによって生成された個人データとの両方を、NVM54に安全に記憶し、それは個人データ58として示される。これでIC24自体の個人化が完了する。一実施形態では、NVM54は安全なメモリを含み、NVM54に記憶されている個人データ58は安全に保護されている。別の実施形態では、NVM54は安全なメモリではなく、プロセッサは任意の適切な暗号化方法および鍵を使用して個人データを安全に記憶する。
【0052】
レポート作成ステップ170において、プロセッサは、IC個人化フェーズを要約する個人化レポートを(例えば、ICベンダに対して)作成する。いくつかの実施形態では、プロセッサは、受け取ったID、IC ID、および/またはアプリケーションプログラムによって生成された1つまたは複数の鍵などの情報を個人化レポートに含める。IC IDは、IC自体のベンダ固有の識別子である。プロセッサは、個人化レポートに、ICベンダに関連する他の適切な情報を含めることができる。
【0053】
いくつかの実施形態では、プロセッサは、暗号化、完全性検証、および認証などの1つまたは複数の暗号方式を使用してレポートデータを保護することによって、安全なレポート94を作成する。例えば、プロセッサは、適切な暗号鍵を使用して選択された暗号方式をレポートデータに適用することができる。暗号鍵は、保護された画像内または埋め込まれたRoTシークレット内においてICに提供されうる。代替として、プロセッサは、他の任意の適切な鍵合意方式を使用して、レポートデータに、ICベンダと合意した暗号鍵を使用して暗号方式を適用する。
【0054】
報告ステップ174で、プロセッサは、安全なレポート94をICベンダ64にサーバ50を介して間接的に送信する。プロセッサは、安全なレポートを、インタフェース(IF)44を介してサーバ50に送信し、サーバ50は通常、複数のそれぞれのICの複数の安全なレポート94をローカルに記憶する。後の適切な時点で、サーバはICベンダに、複数のそれぞれ個別の個人化されたICのバッチに対応する複数の安全なレポートを送る。ステップ174の後、方法は終了する。
【0055】
個人化プロセスを終了した後、IC24(またはIC24を含むモジュール24)は現場で動作する準備ができている。基礎となる用途に応じて、現在NVM54に記憶され、IC24にアクセス可能な個人データは、例えば関連サービスプロバイダによって、ICの識別を検証し、ICが許可された装置に存在することを確認し、そしてICとの通信を許可するために使用されうる。
【0056】
(個人化ログファイルの管理)
いくつかの実施形態では、ICベンダは、安全なレポートを生成するために使用された暗号化方法とは逆の動作と順序で、安全なレポートに対し暗号化方法を適用することによりレポートデータを回復する。いくつかの実施形態では、ICベンダは、プロセッサと合意した暗号鍵および署名鍵とマッチする、復号鍵および署名検証鍵を使用してそれぞれの安全なレポートを検証し(例えば、完全性および認証の検証を適用)、そして解読する。ICベンダは、複数のICの個人化プロセスを要約したログファイルを作成する。ICベンダは通常、ICの複製を避けるために、個人化に使用された各画像を使用済みとしてマークする。
【0057】
いくつかの実施形態では、ICベンダはログファイルをスキャンして、画像内で指定された個人化データのような共通の個人データで、複数のICが個人化された複製イベント、例えば複数のSIMカードに共通のIMSIを誤って割り当てるイベント、を識別する。ICベンダは複製ICを失効または無効なICとしてマークする。ICベンダは、有効な個人化ICのリストを、例えばICにロードされた個人化アプリケーションの所有者、に送信する。
【0058】
例えば、ICがSIMカードを含む場合、SIMベンダは、うまく個人化された有効なSIMカードを移動体通信事業者(MNO)に報告し、そしてMNOは、これらのSIMカードを有効な加入者として受け入れるように、ネットワークデータベース(例えば、ホームロケーションレジスタ-HLR内の)を構成する。
【0059】
上述の実施形態は例として与えられており、他の適切な実施形態も使用可能である。例えば、上述の実施形態では、ICベンダがデータ画像を生成し、そしてこれらの画像を信頼できるように処理しているが、これらの動作の少なくとも一部はICベンダ以外のエンティティにより実行されるか、参画されうる。
【0060】
上記の実施形態では、ICを送信先とする保護された画像、およびICベンダを送信先とする保護されたレポートが、一時的に外部サーバに記憶される。この構成は必須ではなく、代替の実施形態では、ICは保護された画像を直接ICベンダから受信し、および/または保護レポートを直接ICベンダに送信する。
【0061】
上述の実施形態は、その全機能がスマートカードのアプリケーションを実行するICに限定されない。開示された実施形態は、モデム、全地球測位システム(GPS)受信機、および例えばSIMのような用途で使用されるような他のロジック、などの様々な要素を含みうるICにも適用可能である。
【0062】
上述の実施形態は例として引用され、そして添付の特許請求の範囲は、上記で具体的に示され、そして記載されたものに限定されないことが理解されるであろう。むしろ、その範囲は、上記の記載を読んだ当業者に想起される、先行技術に開示されていない、上記の様々な特徴の組み合わせおよびサブ組み合わせの両方を含む。参照により本特許出願に組み込まれる文書は、本出願の不可欠な部分と見なされるべきである。本明細書において明示的または黙示的になされる定義と組み込まれた文書における定義が矛盾する場合は、本明細書における定義のみが考慮されるべきである。