IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 新唐科技股▲ふん▼有限公司の特許一覧

<>
  • 特許-秘密データの多段階のプロビジョニング 図1
  • 特許-秘密データの多段階のプロビジョニング 図2
  • 特許-秘密データの多段階のプロビジョニング 図3
  • 特許-秘密データの多段階のプロビジョニング 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-12
(45)【発行日】2024-04-22
(54)【発明の名称】秘密データの多段階のプロビジョニング
(51)【国際特許分類】
   H04L 9/10 20060101AFI20240415BHJP
   H04L 9/32 20060101ALI20240415BHJP
   H04L 9/14 20060101ALI20240415BHJP
   G06F 21/64 20130101ALI20240415BHJP
【FI】
H04L9/10 A
H04L9/32 200B
H04L9/14
G06F21/64
【請求項の数】 10
(21)【出願番号】P 2022078609
(22)【出願日】2022-05-12
(65)【公開番号】P2022183033
(43)【公開日】2022-12-08
【審査請求日】2022-05-12
(31)【優先権主張番号】17/331,665
(32)【優先日】2021-05-27
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】508197206
【氏名又は名称】新唐科技股▲ふん▼有限公司
(74)【代理人】
【識別番号】110000291
【氏名又は名称】弁理士法人コスモス国際特許商標事務所
(72)【発明者】
【氏名】モラヴ,ダン
(72)【発明者】
【氏名】ハーシュマン,ジヴ
(72)【発明者】
【氏名】タナミ,オーレン
【審査官】中里 裕正
(56)【参考文献】
【文献】特開2003-051817(JP,A)
【文献】特開2000-122931(JP,A)
【文献】特開2007-096268(JP,A)
【文献】米国特許出願公開第2012/0250429(US,A1)
【文献】米国特許出願公開第2016/0171223(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/10
H04L 9/32
H04L 9/14
G06F 21/64
(57)【特許請求の範囲】
【請求項1】
電子機器をプロビジョニングするシステムであって、
前記システムは、
複数の集積回路(IC)チップが製造された半導体ウェハ上のコンタクトパッドと接触するように構成され、各チップは、セキュアメモリとプログラマブル論理を含み、前記セキュアメモリに少なくとも2つの鍵を格納し、前記少なくとも2つの鍵を用いてデータにデジタル署名を計算するように構成された電気プローブ、
前記ウェハをダイシングした後、各前記チップのコンタクトピンに接続するように構成されたコネクタ、および
それぞれの第1の鍵を前記半導体ウェハに適用された前記電気プローブを介して、各前記チップの前記セキュアメモリにプロビジョニングするように構成され、前記ウェハのダイシング後、前記コネクタと前記コンタクトピンを介して各前記チップの前記セキュアメモリにそれぞれの第2の鍵をプロビジョニングし、各前記チップから、前記それぞれの第1の鍵および第2の鍵の両方を用いて前記論理によって計算されたデジタル署名を有する、それぞれのプロビジョニングレポートを受信し、前記デジタル署名に基づいて前記プロビジョニングを検証する少なくとも1つのプロビジョニングアプライアンスを含むシステム。
【請求項2】
前記それぞれの第1の鍵をプロビジョニングするステップは、前記電気プローブを用いて前記ウェハ上の前記チップを試験するプロセス中に行われる請求項に記載のシステム。
【請求項3】
前記それぞれの第2の鍵をプロビジョニングするステップは、各前記チップを試験するプロセス中に行われる請求項に記載のシステム。
【請求項4】
前記少なくとも1つのプロビジョニングアプライアンスは、前記それぞれの第1の鍵をプロビジョニングする第1のプロビジョニングアプライアンス、および前記それぞれの第2の鍵をプロビジョニングする第2のプロビジョニングアプライアンスを含み、前記第2のプロビジョニングアプライアンスは、前記第1のプロビジョニングアプライアンスとは分離して独立している請求項に記載のシステム。
【請求項5】
前記それぞれのプロビジョニングレポートは、信頼できる署名で署名されたプログラムコードを、各前記チップにロードした後、各前記チップから各前記チップに受信され、前記プログラマブル論理によって実行する請求項に記載のシステム。
【請求項6】
各チップから受信された前記それぞれのプロビジョニングレポートは、前記チップとの通信に用いるためのそれぞれの公開鍵を含み、前記公開鍵は、前記それぞれの第1の鍵と第2の鍵の両方を用いて署名される請求項に記載のシステム。
【請求項7】
前記それぞれのプロビジョニングレポートは、前記それぞれの第1の鍵および第2の鍵に関して各前記チップによって生成された第1および第2のセキュリティ証明書を含む請求項に記載のシステム。
【請求項8】
前記第1および第2のセキュリティ証明書をリポジトリに格納するように構成され、前記第1および第2のセキュリティ証明書の重複がないか前記リポジトリを定期的にチェックし、重複が検出されたとき、警告を発する請求項に記載のシステム。
【請求項9】
集積回路チップであって、
セキュアメモリ、および
少なくとも第1および第2の鍵を受信するように構成され、前記鍵を前記セキュアメモリに格納し、前記それぞれの第1の鍵と第2の鍵の両方を用いて、デジタル署名を計算して出力するプログラマブル論理を含み、
前記プログラマブル論理は、信頼できる署名で署名されたプログラムコードを前記チップにロードした後、前記プログラマブル論理によって実行するデジタル署名を含むプロビジョニングレポートを出力するように構成され、
前記プログラマブル論理によって出力された前記プロビジョニングレポートは、前記チップとの通信に用いるための公開鍵を含み、前記公開鍵は、前記第1の鍵と前記第2の鍵の両方を用いた前記デジタル署名を用いて前記プログラマブル論理によって署名される集積回路チップ。
【請求項10】
前記プロビジョニングレポートは、前記それぞれの第1の鍵および第2の鍵に関して前記プログラマブル論理によって生成された第1および第2のセキュリティ証明書を含む請求項に記載のチップ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、集積回路装置に関するものであり、特に、そのような装置に秘密データをプロビジョニングするための方法およびシステム、ならびにそのような方法によってプロビジョニングされた装置に関するものである。
【背景技術】
【0002】
鍵プロビジョニングは、鍵またはその他の安全な情報をシステムオンチップ(SoC)集積回路(IC)などの電子機器に挿入するプロセスである。暗号鍵がICチップにプロビジョニングされると、安全な動作を検証し、鍵が設置された(installed)チップと製品を認証し、且つチップと製品の両方を改ざんから保護するように用いられることができる。このようなチップは通常、セキュアメモリと論理回路を含み、暗号鍵がプロビジョニングされてチップのメモリに保存されると、デジタル署名に基づいて検証されることができるが、鍵自体の秘密部分は抽出されることができないようにする。
【0003】
鍵は通常、厳重なセキュリティのもとで製造プロセスの一部としてICチップにプロビジョニングされ、悪意のある者が鍵にアクセスできないようにする。必要なセキュリティレベルを維持することは、装置が複数のエンティティを含む可能性のある多段階のプロセスで製造およびプロビジョニングされるとき、複雑になる可能性がある。このため、ICの製造段階で鍵がプロビジョニングされることが望ましく、システムレベルのアセンブリよりも安全であると考えられる。
【0004】
これに関して、例えば、電子回路の製造における安全なプロビジョニングのための方法が説明されている(特許文献参照)。第1のエンティティ(例えば、チップメーカー)は、1つ以上の秘密値を回路のコピーに埋め込む。第2のエンティティ(例えば、OEM)は: 1)コード署名公開鍵(code signing public key)からトラストアンカーを導出する; 2)トラストアンカーを第1の回路のコピーに埋め込む; 3)第1の回路のコピーが、トラストアンカーと埋め込まれた秘密値から導出された秘密鍵を生成させるようにする; 4)コード署名秘密鍵を用いてプロビジョニングコードに署名する; 且つ5)コード署名公開鍵、トラストアンカー、および署名されたプロビジョニングコードを第3のエンティティ(例えば、製品メーカー)に送信する。第3のエンティティは、トラストアンカーを第2の回路のコピーに埋め込み、その回路のコピーが: 1)秘密鍵を生成させ; 2)コード署名公開鍵を用いて、署名されたプロビジョニングコードの署名を検証し; 且つ3)プロビジョニングコードを起動するようにさせる。OEMは、第1の回路のコピーとチャレンジ/レスポンスプロトコルを用いて、第2の回路のコピーを認証することができる。
【先行技術文献】
【特許文献】
【0005】
【文献】米国特許第9430658号明細書
【発明の概要】
【発明が解決しようとする課題】
【0006】
集積回路装置に秘密データをプロビジョニングするための方法およびシステム、ならびにそのような方法によってプロビジョニングされた装置を提供する。
【課題を解決するための手段】
【0007】
以下に記載される本発明の実施形態は、電子機器をプロビジョニングする方法、ならびにそのプロビジョニングを実行するシステム、およびその方法によってプロビジョニングできる装置を提供する。
【0008】
従って、本発明の実施形態による、電子機器をプロビジョニングする方法が提供される。本方法は、複数の集積回路(IC)チップが製造された半導体ウェハを提供するステップを含む。各チップは、セキュアメモリとプログラマブル論理を含み、セキュアメモリに少なくとも2つの鍵を格納し、少なくとも2つの鍵を用いてデータにデジタル署名を計算するように構成される。それぞれの第1の鍵は、半導体ウェハ上のコンタクトパッドに適用された電気プローブを介して各チップのセキュアメモリにプロビジョニングされる。ウェハのダイシング後、それぞれの第2の鍵がチップのコンタクトピンを介して各チップのセキュアメモリにプロビジョニングされる。それぞれのプロビジョニングレポートは、それぞれの第1の鍵および第2の鍵の両方を用いて論理によって計算されたデジタル署名を有する、各チップから受信される。プロビジョニングは、デジタル署名に基づいて検証される。
【0009】
開示された実施形態では、それぞれの第1の鍵のプロビジョニングは、電気プローブを用いてウェハ上のチップを試験するプロセス中に行われる。追加的または代替的に、それぞれの第2の鍵のプロビジョニングは、各チップを試験するプロセス中に行われる。
【0010】
開示された実施形態では、それぞれの第1の鍵のプロビジョニングは、第1のプロビジョニングアプライアンスによって実行され、それぞれの第2の鍵のプロビジョニングは、第1のプロビジョニングアプライアンスとは分離して独立し、第2のプロビジョニングアプライアンスによって実行されている。。
【0011】
いくつかの実施形態では、本方法は、信頼できる署名で署名されたプログラムコードを、各チップにロードし、プログラマブル論理によって実行するステップを含み、それぞれのプロビジョニングレポートは、プログラムコードをロードした後、各チップから受信される。追加的または代替的に、それぞれのプロビジョニングレポートを受信するステップは、各チップから、チップとの通信に用いるためのそれぞれの公開鍵を受信するステップを含み、公開鍵は、それぞれの第1の鍵と第2の鍵の両方を用いて署名される。
【0012】
さらに追加的または代替的に、それぞれのプロビジョニングレポートを受信するステップは、それぞれの第1の鍵および第2の鍵に関して各チップによって生成された第1および第2のセキュリティ証明書を受信するステップを含む。開示された実施形態では、第1および第2のセキュリティ証明書をリポジトリに格納し、第1および第2のセキュリティ証明書の重複がないかリポジトリを定期的にチェックし、重複が検出されたとき、警告を発する。
【0013】
本発明の一実施形態によれば、電子機器をプロビジョニングするシステムも提供される。このシステムには、複数の集積回路(IC)チップが製造された半導体ウェハ上のコンタクトパッドと接触するように構成された電気プローブを含む。各チップは、セキュアメモリとプログラマブル論理を含み、セキュアメモリに少なくとも2つの鍵を格納し、少なくとも2つの鍵を用いてデータにデジタル署名を計算するように構成される。コネクタは、ウェハをダイシングした後、各チップのコンタクトピンに接続するように構成される。少なくとも1つのプロビジョニングアプライアンスは、それぞれの第1の鍵を半導体ウェハに適用された電気プローブを介して、各チップのセキュアメモリにプロビジョニングするように構成され、ウェハのダイシング後、コネクタとコンタクトピンを介して各チップのセキュアメモリにそれぞれの第2の鍵をプロビジョニングし、各チップから、それぞれの第1の鍵および第2の鍵の両方を用いて論理によって計算されたデジタル署名を有する、それぞれのプロビジョニングレポートを受信し、デジタル署名に基づいてプロビジョニングを検証する。
【0014】
本発明の一実施形態によれば、セキュアメモリおよびプログラマブル論理を含む集積回路チップがさらに提供され、プログラマブル論理は、少なくとも第1および第2の鍵を受信するように構成され、第1および第2の鍵はチップの製造プロセスにおける異なる、第1および第2の段階でプロビジョニングされ、鍵をセキュアメモリに格納し、それぞれの第1の鍵と第2の鍵の両方を用いて、デジタル署名を計算して出力する。
【0015】
いくつかの実施形態では、プログラマブル論理は、信頼できる署名で署名されたプログラムコードをチップにロードした後、プログラマブル論理によって実行するデジタル署名を含むプロビジョニングレポートを出力するように構成される。開示された実施形態では、チップとの通信に用いるための公開鍵を含み、公開鍵は、第1の鍵と第2の鍵の両方を用いたデジタル署名を用いてプログラマブル論理によって署名される。追加的または代替的に、プロビジョニングレポートは、それぞれの第1の鍵および第2の鍵に関してプログラマブル論理によって生成された第1および第2のセキュリティ証明書を含む。
【0016】
添付の図面とともに以下の詳細な説明及び実施例を検討することで、本発明をより完全に理解できる。
【図面の簡単な説明】
【0017】
図1図1は、本発明の実施形態による、ウェハレベルでICチップをプロビジョニングするシステムを概略的に示すブロック図である。
図2図2は、本発明の実施形態による、ダイシング後にICチップをプロビジョニングするシステムを概略的に示すブロック図である。
図3図3は、本発明の実施形態による、ウェハレベルでICチップをプロビジョニングする方法を概略的に示すラダー図である。
図4図4は、本発明の実施形態による、ダイシング後にICチップをプロビジョニングおよび検証する方法を概略的に示すラダー図である。
【発明を実施するための形態】
【0018】
セキュアICチップは、鍵がチップ上のメモリにプロビジョニングされると、その鍵が不正なアクセスおよび使用から保護されるように設計されている。しかしながら、製造プロセス中に、チップメーカーの不誠実な従業員などの悪意のある内部関係者が、プロビジョニングアプライアンスに保存されている鍵の値にアクセスできる可能性がある。(「プロビジョニングアプライアンス」という用語は、本明細書の文脈および特許請求の範囲において、鍵および関連データをチップに転送するときに用いられる生産設備を指すために用いられる。)次いで、ICチップがコンピュータ化されたシステムに統合されたとき、盗まれた鍵の値は攻撃者に用いられて、システム全体を危険にさらす、または本物のように見える不正なシステムを構築する可能性がある。
【0019】
本明細書で説明される本発明の実施形態は、多段階のプロビジョニングアプローチを適用することによってこの問題に対処している:2つ(またはそれ以上)の異なる鍵が製造プロセスの異なる段階でチップにプロビジョニングされ、次いで両方の鍵がプロビジョニングを検証するときに一緒に用いられる。攻撃者が鍵のいずれか一つにアクセスできたとしても、チップまたはチップが統合されているシステムを攻撃する目的には不十分であり、即ち、十分な情報を抽出して、例えば偽の装置を認証するなど、鍵の不正使用を可能にしても不十分である。プロビジョニングプロセス自体は、全ての鍵情報にアクセスできるプロセス内に、単一点(即ち、単一の時間または場所)がもはや存在しないため、同時に悪意のある内部関係者に対する脆弱性が低くなる。
【0020】
以下に説明される実施形態は、複数のICチップが製造されている半導体ウェハから始まる。各ICチップは、セキュアメモリとプログラマブル論理を含み、プログラマブル論理は、少なくとも2つの鍵をセキュアメモリに格納し、これらの鍵を用いてデータのデジタル署名を計算するように構成される。それぞれの第1の鍵は、半導体ウェハ上のコンタクトパッドに適用された電気プローブを介して各チップのセキュアメモリに、例えば、ウェハレベルの試験のプロセス中にプロビジョニングアプライアンスによってプロビジョニングされる。ウェハが個々のチップにダイシングされた後、例えば個々のチップを試験するプロセス中に、それぞれの第2の鍵がチップのコンタクトピンを介して各チップのセキュアメモリにプロビジョニングされる。この後者の段階は、第1の鍵のプロビジョニングに用いられるプロビジョニングアプライアンスとは分離した、且つ独立したプロビジョニングアプライアンスで実行されることができ、さらには異なる施設にあっても実行されることができる。悪意のある者は、完全な鍵情報を得るために、プロビジョニングのこれらの分離した段階の両方にアクセスする必要がある。
【0021】
プロビジョニングプロセスの整合性を検証し、安全な運用でチップを次いで用いることができるように、各チップは、第1の鍵と第2の鍵の両方を用いて、チップ上のプログラマブル論理によって計算されたデジタル署名を有するプロビジョニングレポートを生成して出力する。この段階では、プログラマブル論理は通常、公開鍵と秘密鍵のペアを生成し、プロビジョニングレポートの一部として、第1と第2の鍵で署名された公開鍵を出力し、秘密鍵(または前述の鍵のペアを導出するために用いられる秘密)の所有権を証明し、従ってチップが本物であることを立証する。あるいは、プロビジョニングレポートは、受信者がデジタル署名を受信し、よってチップが第1の鍵と第2の鍵の両方を含むことを検証できる任意の他の適切な形式をとってもよい。両方の鍵がこの方法で検証されると、例えば、チップが製品に統合された後のデジタル署名の後続の検証は、全ての秘密情報がチップ内に安全に保存されて、改ざんされることができないことがわかっているため、2つの鍵のうちの1つだけを用いて行なわれることができる。
【0022】
本実施形態のもう1つの利点は、プロビジョニングの検証が、IC製造および試験施設において全てのICプロビジョニングのプロセスが完了した後にのみ行われることである。装置の製造と試験の段階において、プロビジョニングアプライアンスとチップ間で事前のハンドシェイクは必要なく; 且つウェハレベルでのプロビジョニングの第1の段階は、完全に一方向であり、プロビジョニングされたチップからプロビジョニングアプライアンスへの応答が必要ないということを意味する。従って、2段階のプロビジョニングプロトコルに固有の複雑さが増しているにもかかわらず、実際のプロビジョニングは、標準の製造プロセスの一部として既存の試験装置を用い行われることができ、プロセス全体における遅延はほとんど、または全く生じない。
【0023】
図1は、本発明の実施形態による、半導体ウェハ32上に製造されたICチップ22をプロビジョニングするシステム20を概略的に示すブロック図である。各チップ22は、セキュアメモリ24およびプログラマブルセキュリティ論理30を含み、これらは、複数の鍵をメモリ24に格納し、前記鍵を用いてデータに対してデジタル署名を計算するように構成される。論理30は、他の機能と同様に、安全な暗号演算を行うことができ、通常、プログラマブルマイクロコントローラまたはマイクロプロセッサコアを含み、適切なプログラムコードの制御下で動作する。代替的または追加的に、論理30は、配線(hard-wired)および/またはプログラマブルデジタル論理回路(programmable digital logic circuits)を含む。論理30は、例えば、ウェハ32上のコンタクトパッドの形式でインターフェース28に接続され、インターフェース28を介して、データおよび他の信号がチップ22間で転送されることができる。
【0024】
セキュアメモリ24は、論理30によってのみアクセスされることができるワンタイムプログラマブル(OTP)メモリまたは電気的にプログラム可能な読み取り専用メモリ(ROM)などの不揮発性メモリ(NVM)を含む。メモリ24は、以下に説明されるように、後続のプログラミング段階でグローバルシークレットとして用いるために、ウェハ32の製造中にメモリにプログラムされるか、または論理に設計されるハードウェアキー26を含む。これらのプログラミング段階の過程では、論理30は、(少なくとも)2つの追加の鍵をセキュアメモリ24に格納し、鍵を用いて1つ以上のデジタル署名を計算する。メモリ24は、通常、ファームウェアおよび/またはソフトウェアコードなどのプログラムコード、ならびにデータを格納するための追加の不揮発性および/または揮発性ランダムアクセスメモリ(RAM)を含む。
【0025】
プロビジョニングアプライアンス34は、プローブ42を介して各チップ22の セキュアメモリ24にそれぞれの第1の鍵をプロビジョニングし、プローブ42は、ウェハ32の各チップ上のコンタクトパッドと接触する。従って、この第1の鍵は、以下「回路プローブ」(Circuit Probe; CP)鍵と呼ばれる。プローブ42は、アプライアンス34がプロビジョニングの目的で結合されたウェハ試験システム(図示せず)の一部であり得る。前述のように、このプロビジョニングは、例えば製造のウェハソート段階で欠陥のあるチップを検出するために用いられる試験など、標準的なウェハスケールの試験レジメン(regimen)の一部として利便的に行なわれることができる。または、CP鍵のプロビジョニングは、任意のテスト段階とは独立して行なわれることができる。
【0026】
プロビジョニングアプライアンスは安全な製造の分野で知られており、この種の任意の適切なアプライアンスは、システム20で用いられることができる。描かれた実施形態では、プロビジョニングアプライアンス34は、中央処理装置(CPU)38を有する安全で、信頼できるコンピュータ、およびプログラミング命令とデータを含むメモリ36を含む。チップ22にプロビジョニングされたCP鍵の安全性と完全性を確保するために、アプライアンス34は、改ざん防止のハードウェアセキュリティモジュール(HSM)40を含み、鍵値および他のデータを生成し、暗号化し、且つプローブ42を介してチップ22に転送する。各CP鍵は、ハードウェアキー26を用いてHSM40により暗号化され、次いで、鍵の真正性を証明する付随するデジタル証明書とともにバイナリラージオブジェクト(BLOB)としてチップ22に転送される。(選択的に、デジタル証明書も暗号化されることができる。)HSM40は、HSMによって保護された署名鍵を用いてデジタル証明書に署名する。論理30は、ハードウェアキー26を用いてBLOBを復号化および解析し、CP鍵をメモリ24に格納する。
【0027】
図2は、本発明の実施形態による、ICチップ22をプロビジョニングするシステム50を概略的に示すブロック図である。システム50では、ウェハ32(図1)は、チップ22を分離するようにダイシングされており、チップは、パッケージ化されているか、または電子機器に統合するように準備されている。この段階では、例えば、チップ22は、回路基板52の上、例えばテストフィクスチャまたはチップが統合される実際の装置に実装されることができる。この構成では、インターフェース28は、チップパッケージまたはダイ上のコンタクトピンに接続され、従って、回路基板52上のトレースにはんだ付けされることができる。あるいは、システム50が適用されて、回路基板を介してではなく、個々のチップを直接プロビジョニングすることができる。いずれの場合も、パッケージのタイプに応じて、コンタクトピンは、例えば、ICパッケージのピン(legs)またはICダイのはんだバンプ、または当技術分野で知られている他の適切な種類のチップ接続の形式をとることができ、または、当技術分野で知られている任意の他の適切な種類のチップ接続の形式をとることもできる。
【0028】
プロビジョニングアプライアンス54は、コネクタ62を介して、各チップ22のセキュアメモリ24にそれぞれの第2の鍵をプロビジョニングし、チップ22のコンタクトピンと直接、または回路基板52を介して接触する(図2を参照)。アプライアンス54は、アプライアンス34(図1)と同様に、CPU58およびセキュアメモリ56を有する安全で信頼できるコンピュータ、およびHSM60を含む。コネクタ62は、最終試験システムの一部であるか、または外部委託されたアセンブリおよび試験用のシステム(図示せず)の一部であってもよく、アプライアンス54は、プロビジョニングのために前記システムと結合される。従って、アプライアンス54によってプロビジョニングされる鍵は、以下、「最終試験」(final test(FT))鍵と呼ばれる。同じプロビジョニングアプライアンスがCP鍵とFT鍵の両方のプロビジョニングに用いられることができるが、悪意のある内部関係者による潜在的な攻撃を阻止するために、アプライアンス34とアプライアンス54が分離して独立していることが有利である。
【0029】
図3は、本発明の実施形態による、ウェハレベルでICチップをプロビジョニングする方法を概略的に示すラダー図である。明確且つ具体的にするために、この方法は、ここでは、システム20(図1)、特にチップ22(「被試験デバイス」またはDUTと呼ばれる)およびプロビジョニングアプライアンス(PA)34を参照して説明される。代替的に、本方法は、本明細書を読めば当業者には明らかであるように、他のシステム構成で行われることもできる。
【0030】
プローブ42を介してチップ22に接続した後、プロビジョニングアプライアンス34は、CPダウンロードステップ70で、それぞれのCP鍵およびCP鍵の真正性を証明するデジタル証明書を含むBLOBをチップ22にダウンロードする。証明書は、保護された署名鍵を用いてHSM40によって署名される。BLOBは、チップ22のハードウェアキー26を用いて暗号化され、HSM40によって保護された鍵のコピーを用いて暗号化される。CP復号化ステップ72では、チップ22内の論理30は、ハードウェアキー26を用いてBLOBを復号化し、復号化されたBLOBを解析してCP鍵を抽出する。CPストレージステップ74では、論理30は、CP鍵をセキュアメモリ24に格納する。
【0031】
論理30は、ステップ74でCP鍵を格納した後、適切なプログラムコードがチップ22にロードされ、論理30によって実行された後にのみ、論理30がCP鍵にアクセスするようにプログラムされている。チップ22のこの動作モードは、生産(PROD)状態と呼ばれる。この構成の特徴により、ウェハレベルでのCP鍵への任意のさらなるアクセスまたは使用を防止する。
【0032】
図4は、本発明の実施形態による、ダイシング後にICチップ22をプロビジョニングおよび検証する方法を概略的に示すラダー図である。再度、明確且つ具体的にするために、この方法は、ここでは、システム50(図2)、特にチップ22およびプロビジョニングアプライアンス54を参照して説明される。代替的に、本方法は、本明細書を読めば当業者には明らかであるように、他のシステム構成で行われることもできる。
【0033】
コードローディングステップ80では、プロビジョニングアプライアンス54は、コネクタ62を介してチップ22に、上述したPROD状態に入ることを信号で送り、チップにプログラムコード、例えばファームウェアコードの形式でダウンロードする。このコードは、信頼できるデジタル署名とともに送信され、これにより、チップ22の論理30が、コードが真正で信頼できることを検証することができるようにする。論理30は、適切に認証されていないコードを受信してロードしない。FTダウンロードステップ82では、プロビジョニングアプライアンス54は、それぞれのFT鍵およびHSM60によって署名されたFT鍵の真正性を証明するデジタル証明書を含むBLOBをチップ22にダウンロードする。BLOBは、チップ22のハードウェアキー26を用いて再度暗号化される(または、ステップ80とステップ82の順序を逆にすることもできる)。
【0034】
FT復号化ステップ84では、チップ22内の論理30は、ハードウェアキー26を用いてBLOBを復号化し、復号化されたBLOBを解析してFT鍵を抽出し、FT鍵をセキュアメモリ24にも格納する。
【0035】
鍵生成ステップ86では、論理30は、チップ22との通信に続いて用いるための公開鍵/秘密鍵のペアを生成する。例えば、論理30は、チップ22上の乱数発生器からシード値を受信し、次いで、公開鍵と秘密鍵を生成するために、鍵導出関数(KDF)をシード値に用いる。ここでは、公開鍵は「ID鍵」と呼ぶ。署名生成ステップ88では、論理30は、セキュアメモリ24に格納されているCP鍵およびFT鍵の両方を用いて、ID鍵の上方にデジタル署名を生成する。このデジタル署名は、例えば、それぞれCP鍵およびFT鍵で計算された2つのサブ署名を含むことができるか、または代替的にサブ署名は、デジタル署名に連結されるか、でなければデジタル署名に混合されることができる。
【0036】
レポートステップ(reporting step)90では、ステップ80からステップ88が完了した後、論理30は、コネクタ62を介してプロビジョニングレポートをプロビジョニングアプライアンス54に生成および出力する。前記レポートは、チップ22が、ステップ70および82でCPおよびFT鍵と、ステップ86で生成されたID鍵と、ステップ88で計算されたデジタル署名とを受信したCPおよびFT証明書を含む。プロビジョニングアプライアンス54は、ID鍵および証明書の有効性を検証するために、証明書およびデジタル署名をチェックする。前述のように、チップ22はこの領域で用いられるように検証されてリリースされ、次いでこの検証後にのみサービスを受けることができ、CP鍵とFT鍵の両方がメモリ24に正常にプロビジョニングされた場合にのみ完了することができる。
【0037】
いくつかの実施形態では、長期的な安全性を高めるために、プロビジョニングアプライアンス54は、レポート格納ステップ92では、プロビジョニングレポートおよび対応するCPおよびFT証明書のペアをリポジトリに転送し、格納する。例えば、プロビジョニングアプライアンスは、ネットワークを介してレポートおよび証明書をサーバ94に送信することができ、証明書を含むデータベースを維持する。サーバ94は、ペアチェックステップ96において、CPおよびFTセキュリティ証明書のペアの重複がないかリポジトリを定期的にチェックする。重複が検出されたとき、サーバ94は、例えば、チップ22の製造業者に警告を発する。このようなアラートは、以前の秘密値を再利用して、チップ22のセキュリティを侵害しようとする試み、例えばリプレイ攻撃を検出して警告するのに有用である。このような使われ方をしないようにガードするために、サーバ94および/またはプロビジョニングアプライアンス54は、侵害された鍵および証明書の「失効リスト」を維持することができ、且つ問題の鍵および証明書に関連する後続のクエリに応じてこのリストを参照することができる。
【0038】
上述の実施形態は、例として引用されており、以下の特許請求の範囲は、上述に具体的に開示および記載された内容に限定されないことに留意されたい。むしろ、この範囲は、上述の様々な特徴のコンビネーションおよびサブコンビネーションの両方、ならびに前述の説明を読んで当業者が知るであろう、先行技術に開示されていないその変更および修正を含む。
【符号の説明】
【0039】
20 ICチップをプロビジョニングするシステム
22 チップ
24 セキュアメモリ
26 ハードウェアキー
28 インターフェース
30 プログラマブルセキュリティ論理
32 半導体ウェハ
34 プロビジョニングアプライアンス
36 メモリ
38 中央処理装置(CPU)
40 ハードウェアセキュリティモジュール(HSM)
42 プローブ
50 システム
52 回路基板
54 プロビジョニングアプライアンス
56 セキュアメモリ
58 中央処理装置(CPU)
60 ハードウェアセキュリティモジュール(HSM)
62 コネクタ
80 コードローディングステップ
82 FTダウンロードステップ
84 FT復号化ステップ
86 鍵生成ステップ
88 署名生成ステップ
90 レポートステップ
92 レポート格納ステップ
94 サーバ
96 ペアチェックステップ
図1
図2
図3
図4