JP2021503208A - 集積回路パーソナリゼーション - Google Patents

集積回路パーソナリゼーション Download PDF

Info

Publication number
JP2021503208A
JP2021503208A JP2020524045A JP2020524045A JP2021503208A JP 2021503208 A JP2021503208 A JP 2021503208A JP 2020524045 A JP2020524045 A JP 2020524045A JP 2020524045 A JP2020524045 A JP 2020524045A JP 2021503208 A JP2021503208 A JP 2021503208A
Authority
JP
Japan
Prior art keywords
integrated circuit
encryption key
integrated circuits
file
encrypted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020524045A
Other languages
English (en)
Inventor
ベロン,セバスチャン
ファヴィ,クローディオ
オーティエ,ローン
マチェティ,マルコ
ペリーヌ,ジェローム
Original Assignee
ナグラビジョン エス アー
ナグラビジョン エス アー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ナグラビジョン エス アー, ナグラビジョン エス アー filed Critical ナグラビジョン エス アー
Publication of JP2021503208A publication Critical patent/JP2021503208A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]

Abstract

集積回路及び複数の集積回路を構成する方法が開示されている。各々の集積回路は、各集積回路に特有な暗号化キーを含む。各暗号化キーは、物理複製困難関数と、暗号化キーと連携したデータ、例えば、物理複製困難関数を用いて暗号化キーを生成するための指示を含む構成メッセージを使用して、それぞれの集積回路上で生成することができる。集積回路に特有な暗号化キーは、集積回路上で保存されない。複数の集積回路の各々は、集積回路に特有なそれぞれの暗号化キーによって暗号化されるデータファイルを用いて、構成される。【選択図】図7

Description

本開示は、集積回路パーソナリゼーションに関する。包括的ではなく、更に詳細には、本開示は、集積回路に特有な暗号キーによって暗号化されたパーソナル化ファイルを使用する。
集積回路は、一般的には、複数の集積回路を備えるウェハーにおいて作製される。典型的には、集積回路セットはウェハー上で試験され、成功裏な試験時に、集積回路セットは、例えば、印刷回路基板上ではんだ付けされるスマートカードモジュール又はボールグリッドアレイの上で、切断され、かつ、包装される。次に、集積回路が、集積回路のエンドユーザーに関するアプリケーションコード及びデータベースを書き込むために、例えば、パーソナル化ファイルを用いて、構成される。パーソナル化ファイルは、一般的には、専有情報(proprietary information)を含むものである。
典型的には、集積回路のパーソナリゼーションは、製作とは異なる場所で実施され、また、パーソナル化データの所有者が如何なる専有情報へのアクセスの許可も望まない当事者によって、実施される場合がある。如何なる専有情報も保護するために、パーソナル化データの所有者によって提供されるハードウェアセキュリティモジュールが、包装された集積回路の構成中、パーソナル化ファイルを保護するために使用できる。しかしながら、ハードウェアセキュリティモジュールは、構成プロセスに対して、コスト及び煩雑さを付加する。
以下に、図面を参照しながら、例示により、特定の実施形態について説明する。
各々が特定の暗号キーと連携する複数の集積回路を伴う環境を示す。 特定の暗号キーを各集積回路に連携させる方法のフローチャートを示す。 特定の暗号キーを各集積回路に連携させる別の方法のフローチャートを示す。 パーソナル化ファイルが暗号化される環境を示す。 複数の暗号化されたパーソナル化ファイルを生成する方法のフローチャートを示す。 集積回路が構成される環境を示す。 集積回路を構成する方法のフローチャートを示す。 コンピューティングデバイスの1例の実装のブロック図を示す。
概要で、集積回路と、複数の集積回路を構成する方法が開示されている。各々の集積回路は、それ自体に特有な暗号化キーを具備する。各々の暗号化キーは、物理複製困難関数及び暗号化キーと連携したデータ、例えば、物理複製困難関数を用いて暗号化キーを生成するための指示を含む構成メッセージを使用して、それぞれの集積回路上で生成することができる。集積回路に特有な暗号化キーは、集積回路上に保存されない。複数の集積回路の各々は、集積回路に特有なそれぞれの暗号化キーによって暗号化されたデータファイルを用いて、構成される。
開示の幾つかの態様において、複数の集積回路を構成する方法は、例えばパーソナル化デバイスにおいて、複数の集積回路を受け取ることを含む。各集積回路は、物理複製困難関数及び集積回路に特有な暗号化キーと連携したデータを保存するメモリーを具備する。本方法は複数の暗号化されたファイルを受け取ることを含む。各々の暗号化されたファイルは、複数の集積回路の各々に特有な暗号化キーによって、暗号化されている。上記の方法は、複数の暗号化されたファイルの各々について、それぞれの集積回路へ暗号化されたファイルを送信することを含む。本方法は、複数の暗号化されたファイルの各々について、暗号化キーと連携したデータ及びその物理複製困難関数を用いて、それぞれの集積回路に暗号化キーを生成させることを更に含む。複数の暗号化されたファイルの各々について、それぞれの集積回路は、生成した暗号化キーを用いて暗号化されたファイルを復号化させられ、復号化された各ファイルは、それぞれの集積回路を構成するために使用される。
各々の暗号化されたファイルが1つの集積回路に特有であるので、暗号化されたファイルは、「マッチング」する1つ、即ち、対応する暗号化キーを生成するように配置された1つの集積回路以外の集積回路を構成するためには、使用できない。更に、集積回路に特有な暗号化キーは、集積回路上に保存されないので、暗号化キーは、集積回路の外部から暗号化されたファイルを復号化するために、集積回路のメモリーから読み取ることができない。集積回路のメモリーが、保存されたデータ、例えば、集積回路に特有な暗号化キーと連携したデータを検索するために読み取られたとしても、暗号化キーは、集積回路上に直接的には保存されていないので、決定されることができない。異なる集積回路の相異する物理複製困難関数によって使用されるデータが、当該集積回路に対して暗号化されたパーソナル化ファイルを復号化するための正確なキーを生成しないので、暗号化キーは、データを用いて、異なる集積回路上で回復することもできない。従って、専有アプリケーションデータのような暗号化されたファイル内の如何なるデータも、その暗号化されたファイルにアクセスする当事者による許可されていないアクセスから保護される。更に、暗号化されたファイルは、集積回路の追加コピーをパーソナル化するために使用することもできず、よって、パーソナル化された集積回路の数を制御することができる。
本開示の更なる態様は、上記の方法の諸ステップを実施するように構成されたプロセッサと、コンピュータシステムに上記方法の諸ステップを実施させるためのコンピュータ実行可能指示を有する非一時的なコンピュータ可読媒体と、プログラムがコンピュータによって実行された際に、コンピュータに上記方法の諸ステップを実施させる指示を含むコンピュータプログラム製品を備えるシステムに関する。
開示の幾つかの態様では、集積回路は、物理複製困難関数と、暗号化キーと連携したデータを保存するメモリーと、プロセッサを備える。プロセッサは、暗号化キーによって暗号化された暗号化ファイルを受信するように構成される。プロセッサは、物理複製困難関数を用いて暗号化キーを生成し、かつ、暗号化キーを用いて暗号化されたファイルを復号化するように構成される。プロセッサは、集積回路を構成するために復号化されたファイルを使用するように構成される。
物理複製困難関数は、集積回路におけるリングオシレータのような電子的構成要素の1つ又は複数の物理量を決定することにより、それらの構成要素におけるランダム変動を利用する関数である。物理複製困難関数は、そのような関数から導出される値が予測及び/又は再生不可能であり、かつ、当該関数が組み込まれる基板の物理特性に特有であることを主たる理由として、例えば、予め定義された特定の識別子を構成する関数を生成することにより複製することが、極めて困難であり、又は不可能でさえもある。
図1を参照すると、ウェハーボックス100は、テスター102に接続されている。ウェハーボックス100は、プロセッサ104と、暗号化キーデータベース106と、テスターインタフェース108を備える。ウェハーボックス100は、テスター102を介してウェハーとの通信を管理し、かつ、予めプログラム化されたタスクを実行するように配置されている。プロセッサ104は、暗号化キーデータベース106とテスターインタフェース108との間で調整するように構成される。暗号化キーデータベース106は、複数の暗号化キーを含む。暗号化キーデータベース106は、図3を参照しながら説明するように、集積回路から受け取る所定の暗号化キー及び/又は暗号化キーが入力される。テスターインタフェース108は、テスター102と通信するように配置されている。
テスター102は、プロセッサ120と、ウェハーボックスインタフェース122と、ウェハーインタフェース124と、ウェハー126を備える。プロセッサ120は、ウェハーボックスインタフェース122とウェハーインタフェース124との間で調整するように構成されている。ウェハーボックスインタフェース122は、テスターインタフェース108を介してウェハーボックス100と通信するように配置されている。ウェハーインタフェース124は、ウェハーインタフェース124とウェハー126との間で通信するように配置されている。「通常」の使用では、テスター102は、例えば、機能欠陥に対する試験のために所定のテストパターンを集積回路128へ適用することにより、ウェハー126上に存在する集積回路128の各々をプローブするように配置されている。
ウェハー126は、複数の集積回路128を具備する。各々の集積回路128は、物理複製困難関数と、メモリー、例えば、非揮発性メモリーを備える。複数の集積回路128の各々は、それぞれの暗号化キーと連携する。集積回路に特有な暗号化キーは、集積回路上に保存されない。その代わり、各集積回路について、構成メッセージが集積回路のメモリー内に保存される。構成メッセージは、集積回路128の物理複製困難関数によって処理される際に、集積回路に特有な暗号化キーが生成されるように配置されている。例えば、物理複製困難関数は、割り当てられた暗号化キーを生成するために、リングオシレータのチャレンジ/応答ペア、例えば、128ビットの暗号化キーに対しては128個のチャレンジ/応答ペア、又は256ビットの暗号化キーに対しては256個のチャレンジ/応答ペアが使用できるような複数のリングオシレータを含むことができ、また、構成メッセージは、暗号化キーを生成するために必要な一連のチャレンジ/応答ペアを含むことができる。
リングオシレータRO−PUFが非限定的な例ではなく、Delay−PUF、バタフライPUF、SRAM−PUF、等のような如何なる他の手段も使用できることに留意すべきである。
幾つかの実施形態では、暗号化キーは、US2014/0376717又はEP2816757に記載されているように、各々の集積回路128に割り当てられ、それら文献は、共に、本明細書に完全に組み込まれている。
幾つかの実施形態では、図2を参照しながら説明されているように、暗号化キーは、各集積回路128に割り当てられ、また、各構成メッセージは、それぞれの集積回路に対して決定される。暗号化キーの割当ては、ウェハーが作製される際、ウェハー126の試験中に、実施することができる。
図2を参照すると、ステップ202において、ウェハーボックス100のプロセッサ104は、キーデータベース106からの暗号化キーを各集積回路に割り当てる。キーデータベース106は、識別子のような情報、例えば、各暗号化キーが割り当てられた集積回路のうち、暗号化キーの連続番号又は暗号学的ハッシュを含むように更新されることができる。
ステップ204において、ウェハーボックス100は、物理複製困難関数のコンポーネントの安定なチャレンジ/応答ペアを決定するために、各集積回路128の物理複製困難関数を試験する。安定したチャレンジ/応答ペアは、チャレンジされる際に、一貫して同一の応答を生み出す。ステップ206において、ウェハーボックス100のプロセッサ104は、割り当てられた暗号化キーを生成するために必要なリングオシレータの安定した一連のチャレンジ/応答ペアを含む構成メッセージを決定する。この方法において、構成メッセージは、集積回路に特有な暗号化キーを一貫して生成するように、物理複製困難関数によって、遅延して処理されることができる。ステップ208において、ウェハーボックス100は、構成メッセージをそれぞれの集積回路へ送信し、かつ、各集積回路128に、その構成メッセージをメモリー内に保存させる。
他の実施形態では、集積回路に暗号化キーが割り当てられると、当該キーは対応する集積回路に送付される。次いで、各集積回路は、その物理複製困難関数のコンポーネントの安定したチャレンジ/応答ペアを決定する。次に、各集積回路は、その割り当てられたキーを生成するために必要な構成メッセージを決定する。換言すれば、ステップ204及び206は、ウェハーボックス100よりもむしろ、集積回路の各プロセッサによって実行することができる。
別の方法では、構成メッセージは、図3を参照しながら説明されるように、暗号化キーを生成するために、各集積回路に対してランダムに生成することができ、かつ、使用することができる。
暗号化キーの生成は、ウェハーが作製される際、ウェハー126の試験中に、実施することができる。
図3を参照すると、ステップ302において、ウェハーボックス100は、物理複製困難関数のコンポーネントの安定したチャレンジ/応答ペアを決定するために、各集積回路128の物理複製困難関数を試験する。安定したチャレンジ/応答ペアは、チャレンジされる際に、一貫して同一の応答を生み出す。ステップ304において、ウェハーボックス100のプロセッサ104は、一連のランダムな安定したチャレンジ/応答ペアを含む各集積回路に対する構成メッセージを決定する。ステップ306において、ウェハーボックス100は、各構成メッセージをそれぞれの集積回路へ送付する。随意のステップ308において、ウェハーボックス100は、各集積回路128に、その物理複製困難関数を用いて受信構成メッセージを処理することにより、当該各集積回路に特有な暗号化キーを生成させる。随意のステップ310において、ウェハーボックス100は、各集積回路128に、ステップ308において生成された各集積回路に特有な暗号化キーをウェハーボックス100へ送付させ、また、ウェハーボックス100は、生成された暗号化キーを受信する。ウェハーボックス100は、各暗号化キーをキーデータベース106内に保存する。
他の実施形態では、ウェハーボックス100によって実施されるステップ302及び304の代わりに、各集積回路が、当該各集積回路における物理複製困難関数のコンポーネントの安定したチャレンジ/応答ペアを決定し、次いで、一連のランダムな安定したチャレンジ/応答ペアを含む構成メッセージを決定する。次に、ステップ308から310までが、上記したように、複数の集積回路の各々に特有な暗号化キーを生成し、かつ、保存するために、実施される。
複数の集積回路128の各々に特有な暗号化キーは、各集積回路についてそれぞれのパーソナル化ファイルを暗号化するために使用される。パーソナル化ファイルは、集積回路が、例えば、支払いスマートカード又はテレビジョンセットトップボックス用のスマートカードとて使用されることを可能にするアプリケーションデータを含む。パーソナル化ファイルは、エンクリプタによって暗号化することができる。
図4を参照すると、エンクリプタ400は、プロセッサ402と、キーデータベース404と、パーソナル化ファイルデータベース406を備える。プロセッサ402は、キーデータベース404とパーソナル化ファイルデータベース406との間で調整するように構成されている。キーデータベース404は、複数の集積回路128の各々に特有な暗号化キーを含み、かつ、ウェハーボックス100のキーデータベース106のコピーであり得る。例えば、ウェハーボックス100のキーデータベース106は、インターネットを使用して、又は非一時的なコンピュータ可読媒体を介して、エンクリプタ400のキーデータベース404にコピーすることができる。パーソナル化ファイルデータベース406は、暗号化されるパーソナル化ファイル及びパーソナル化ファイルの暗号化バージョンを含む。各パーソナル化ファイルは、集積回路における全てに共通なデータと、各集積回路に特有なデータを含む。
図5を参照して、パーソナル化ファイルの暗号化プロセスを説明する。ステップ502において、エンクリプタ400のプロセッサ402は、暗号化すべきパーソナル化ファイルを、パーソナル化ファイルデータベース406から受け取る。ステップ504において、プロセッサ402は、複数の暗号化キーをキーデータベース404から受け取る。ステップ506において、プロセッサ402は、各バージョンがそれぞれの暗号化キーによって暗号化されるパーソナル化ファイルの相異する暗号化されたバージョンを生成する。ステップ508において、暗号化されたパーソナル化ファイルの相異するバージョンは、パーソナル化ファイルデータベース406内に保存される。暗号化されたパーソナル化ファイルの相異するバージョンは、各バージョンが係る特有の集積回路の識別子と連携させて、保存することができる。
次に、暗号化されたパーソナル化ファイルは、例えば、集積回路をパーソナル化するためのパーソナル化デバイス又はサービスプロバイダーに配布することができる。暗号化は、パーソナル化ファイル内の専有アプリケーション、専有暗号化キー、等の如何なるデータも、許可されないアクセスから保護する。
図6を参照すると、パーソナル化デバイス602は、集積回路128に接続されている。集積回路128は、プロセッサ604と、メモリー606と、物理複製困難関数608と、パーソナル化デバイスインタフェース610を備える。プロセッサ604は、メモリー606、物理複製困難関数608及びパーソナル化デバイスインタフェース610間で調整するように構成される。メモリー606は、物理複製困難関数608によって処理される際に、集積回路に特有な暗号化キーを生成する構成メッセージを保存すように、配置されている。幾つかの実施形態では、メモリー606は、相異する物理メモリー、又は同一型式若しくは相異型式間に分散される。
パーソナル化デバイスインタフェース610は、パーソナル化デバイス602と通信するように配置されている。他の実施形態では、集積回路128は、パーソナル化デバイス602と通信するための、汎用の入力/出力を含む。幾つかの実施形態では、集積回路128は、パーソナル化デバイス602への接続の前にウェハー126から切断され、かつ、スマートカード又はその他の容器内に包装される。
パーソナル化デバイスは、プロセッサ620と、集積回路インタフェース622と、パーソナル化ファイルデータベース624を備える。プロセッサ620は、集積回路インタフェース622とパーソナル化ファイルデータベース624との間で調整するように構成される。パーソナル化ファイルデータベース624は、パーソナル化ファイルの暗号化されたバージョンを含む。パーソナル化ファイルの暗号化されたバージョンは、インターネットを使用して、又は非一時的なコンピュータ可読媒体を介して、エンクリプタ400のパーソナル化ファイルデータベース406から得ることができる。パーソナル化ファイルデータベース624は、パーソナル化ファイルの非暗号化バージョンを含まない。集積回路インタフェース622は、集積回路128と通信するように配置されている。パーソナル化デバイス602は、一度に1つの集積回路を構成する、又は同時に複数の集積回路を構成するように、配置できる。
図7を参照して、複数の集積回路128の構成プロセスを説明する。ステップ702において、複数の集積回路は、パーソナル化デバイス602の集積回路インタフェース622で受け取られる、即ち、集積回路128は、一度に1つ、一度に幾つか、又はすべて同時に、パーソナル化デバイス602に接続される。ステップ704において、複数の暗号化されたパーソナル化ファイルは、パーソナル化デバイス602で受信され、かつ、パーソナル化ファイルデータベース624内に保存される。複数の暗号化されたパーソナル化ファイルの各々は、暗号化キーに関して、複数の集積回路のそれぞれ1つに対応する。換言すれば、暗号化される各々の異なるファイルは、複数の集積回路のそれぞれ1つによって生成できる暗号化キーによって、暗号化される。
ステップ706において、パーソナル化デバイス602は、各集積回路と通信し、かつ、各集積回路から、対応する暗号化されたパーソナル化ファイルに対する要求を受信する。その要求は、連携する暗号化されたパーソナル化ファイルを検索するために、パーソナル化デバイス602のプロセッサ620がパーソナル化ファイルデータベース624内で調べることができる各集積回路の識別子を含む場合がある。他の実施形態では、パーソナル化デバイス602は、暗号化されたファイルの全てのバージョンを各集積回路へ送信し、集積回路は復号化可能なバージョンがどれかを決定する。
ステップ708において、パーソナル化デバイス602は、複数の暗号化されたパーソナル化ファイルの各々を、それぞれの集積回路128へ送信する。ステップ710において、パーソナル化デバイス602は、集積回路128における各パーソナル化ファイルに、メモリー606内に保存された構成メッセージ及び物理複製困難関数608を用いて、特有の暗号化キーを生成させる。ステップ712において、パーソナル化デバイス602は、各集積回路128に、ステップ810において生成した暗号化キーを使用して、ステップ708において送付された暗号化されたパーソナル化ファイルを復号化させる。ステップ714において、パーソナル化デバイス602は、各集積回路128に、パーソナル化ファイルに従ってそれ自体を構成させる。
従って、パーソナル化ファイルは、各集積回路128上で復号化される。構成メッセージが集積回路128のメモリー606から調べられたとしても、暗号化キーは、集積回路内に直接的に保存されておらず、また、物理複製困難関数が同一には複製し難いので、解読できない。更に、各々の暗号化されたパーソナル化ファイルは1つの集積回路に特有であるので、暗号化されたパーソナル化ファイルは、対応する構成メッセージ及び物理複製困難関数を含むもの以外の集積回路を構成するために使用できず、よって、例えば、必要数のパーソナル化された集積回路を生成するのに所要な数のみの暗号化されたパーソナル化ファイルを配布することにより、パーソナル化された集積回路の数を制御することができる。
図8は、コンピューティングデバイス800の1例の実装のブロック図を示し、コンピューティングデバイスに本明細書に論述した1つ又は複数の方法論を実施させるための一組の指示を実行することができる。別の実装例では、コンピューティングデバイスは、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネット又はインターネットにおいて、別のマシーンに接続される(例えば、ネットワーク化される)ことができる。コンピューティングデバイスは、クライアント・サーバーネットワーク環境におけるサーバー又はクライアントマシーンのキャパシティ内で、若しくはピア・ツー・ピア(又は分散)ネットワーク環境におけるピアマシーンとして、作動することができる。コンピューティングデバイスは、パーソナルコンピュータ(PC)、タブレットコンピュータ、セットトップボックス(STB)、ウェブ機器、サーバー、ネットワークルーター、スイッチ又はブリッジ、又は当該マシーンによって行われるアクションを特定する一組の(連続的又は別形態の)指示を実行可能なマシーンであり得る。更に、単一のみのコンピューティングデバイスが図示されているが、用語「コンピューティングデバイス」は、本明細書に論述した方法の何れか1つ又は複数を実施するために、一組(又は複数組)の指示を個別又は共同で実行する何らかのマシーン(例えば、コンピュータ)の集合体を含むものとしても解釈されるべきである。
一例のコンピューティングデバイス800は、処理デバイス802と、メインメモリー804(例えば、リードオンリーメモリー(ROM)、フラッシュメモリー、同期DRAM(SDRAM)又はラムバスDRAM(RDRAM)、等のようなダイナミックランダム・アクセスメモリー(DRAM))と、スタティックメモリー806(例えば、フラッシュメモリー、スタティックランダム・アクセスメモリー(SRAM)、等)と、互いにバス830を介して通信する二次メモリー(例えば、データ保存デバイス818)を含む。
更に詳細には、処理デバイス802は、マイクロプロセッサ、中央処理ユニット、等のような1つ又は複数の汎用プロセッサを提示する。更に詳細には、処理デバイス802は、複合指示セットコンピューティング(CISC)マイクロプロセッサ、縮小指示セットコンピューティング(RISC)マイクロプロセッサ、超長指示ワード(VLIW)マイクロプロセッサ、他の指示セットを実施するプロセッサ、又は組合せの指示セットを実施するプロセッサであり得る。処理デバイス802は、特定用途向け集積回路(ASIC)、 フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ、等のような1つ又は複数の専用処理デバイスでもあり得る。処理デバイス802は、本明細書に論述した操作及びステップを実施するための処理ロジック(指示822)を実行するように、構成される。
コンピューティングデバイス800は、ネットワークインタフェースデバイス808を更に備えることができる。コンピューティングデバイス800は、ビデオディスプレイユニット810(例えば、液晶ディスプレイ(LCD))と、英数字入力デバイス812(例えば、キーボード又はタッチスクリーン)と、カーソル制御装置814(例えば、マウス又はタッチスクリーン)と、オーディオデバイス816(例えば、スピーカー)も含むことができる。
データ保存デバイス818は、1つ又は複数の機械可読記憶媒体(若しくは、更に具体的には、1つ又は複数の非一時的なコンピュータ可読記憶媒体)828を含むことができ、その記憶媒体に、本明細書に記述した方法論又は機能の何れか1つ又は複数を具現化する1セット又は複数セットの指示822が保存される。また、指示822は、コンピュータシステム800、メインメモリー804及びコンピュータ可読記憶媒体も構成する処理デバイス802による当該指示の実行中、完全に又は少なくとも部分的に、メインメモリー804及び/又は処理デバイス800内に存在することができる。
上記した様々な方法は、コンピュータプログラムによって実施することができる。コンピュータプログラムは、コンピュータに対して、上記した様々な方法の1つ又は複数の機能を実施することを指示するように配置されたコンピュータコードを含むことができる。そのような方法を実施するためのコンピュータプログラム及び/又はコードは、1つ又は複数のコンピュータ可読媒体、若しくは、更に一般的には、コンピュータプログラム製品上で、コンピュータのような装置に提供することができる。コンピュータ可読媒体は、一時的又は非一時的なものであり得る。1つ又は複数のコンピュータ可読媒体は、例えば、電子的、磁気的、光学的、電磁的、赤外又は半導体のシステム若しくは、例えば、インターネット上でコードをダウンロードするデータ伝送用の伝搬媒体であり得る。別の仕様では、1つ又は複数のコンピュータ可読媒体は、半導体又はソリッドステートメモリー、磁気テープ、可動コンピュータディスケット、ランダム・アクセスメモリー(RAM)、リードオンリーメモリー(ROM)、硬質な磁気ディスク、及びCD−ROM、CD−R/W、DVD又はブルーレイディスクのような光ディスク、等の1つ又は複数の物理的なコンピュータ可読媒体の形態をなすことができる。
実装において、本明細書に記載されたモジュール、コンポーネント及びその他の特徴は、ディスクリートコンポーネントとして実装するか、ASICS、FPGA、DSP又は同様なデバイスのようなハードウェアコンポーネントの機能に統合できる。
「ハードウェアコンポーネント」は、所定の操作を実施可能な有形の(又は非一時的な)物理的コンポーネント(例えば、1つ又は複数のプロセッサセット)であって、所定の物理的仕様で構成又は配置できる。ハードウェアコンポーネントは、所定の操作を実施するように永久的に構成された専用の回路又はロジックを含むことができる。ハードウェアコンポーネントは、フィールドプログラマブルゲートアレイ(FPGA)又はASICのような専用プロセッサであり得る、又は当該プロセッサを含むことができる。ハードウェアコンポーネントは、所定の操作を実施するようにソフトウェアによって一時的に構成されたプログラマブルロジック又は回路も含むことができる。
従って、文言「ハードウェアコンポーネント」は、所定の仕様で操作する又は本明細書に記載された所定の操作を実施するように物理的に構築され、永久的に構成され(例えば、固定され)又は一時的に構成される(例えば、プログラム化される)ことができる有形の実体を包含するものとして理解されるべきである。
そのうえ、モジュール及びコンポーネントは、ハードウェアデバイス内のファームウェア又は機能回路として実装できる。更に、モジュール及びコンポーネントは、ハードウェアデバイスとソフトウェアコンポーネントの組合せで、又はソフトウェア(例えば、機械可読媒体又は伝送媒体内に保存或いは埋設されたコード)のみにおいて、実装することができる。
別の形態で具体的に記述されていない限り、以下の論述から明らかなように、説明全体を通じて、「受信する(受け取る)(receiving)」、「決定する(determining)」、「比較する(comparing)」、「生成する(generating)」、「送信(送付)する(sending)」、「識別する(identifying)」、等の用語を用いた論述は、コンピュータシステムのレジスター及びメモリー内の物理的(電子的)量として表示されるデータを操作し、かつ、そのデータを、コンピュータシステムのメモリー又はレジスター若しくは情報記憶、伝送又は表示デバイスのようなその他のもの内の物理的量として同様に表示されるその他のデータへ変換するコンピュータシステム又は類似の電子コンピューティングデバイスのアクション及びプロセスについて言及していることを認知すべきである。
上記の説明は、例示を意図し、これに限定されるものではないことを理解すべきである。当業者には、上記の説明を読んで、理解されたた折に、多数のその他の実装が明らかとなるはずである。本開示について、特定例の実施態様を参照して説明してきたが、本開示は説明した実施態様に限定されず、添付のクレームの神髄及び範囲内での改変及び変更が実施可能である。従って、明細書及び図面は、限定的な意味というよりもむしろ、例示的な意味でみなされるべきである。従って、本開示の範囲は、添付のクレームの権利範囲と等価な全範囲と共に、クレームを参照して、判断されるべきである。
例えば、各集積回路に特有な暗号化キーは、(集積回路上で直接的には保存されないが)パーソナル化ファイル以外の集積回路に対して意図されたデータを暗号化/復号化するために使用できる。

Claims (15)

  1. 複数の集積回路を構成する方法であって、
    各集積回路が物理複製困難関数及び集積回路に特有な暗号化キーと連携したデータを保存するメモリーを含む、複数の集積回路を受け取ることと、
    各々の暗号化されたファイルが前記複数の集積回路のそれぞれ1つに特有な暗号化キーで暗号化されている、複数の暗号化されたファイルを受け取ることと、
    前記複数の暗号化されたファイルの各々について、
    前記暗号化されたファイルを前記それぞれの集積回路へ送付し、
    前記それぞれの集積回路に、前記暗号化キーと連携した前記データ及び前記物理複製困難関数を用いて、暗号化キーを生成させ、
    前記それぞれの集積回路に、前記生成した暗号化キーを用いて、前記暗号化されたファイルを復号化させ、
    前記それぞれの集積回路を構成するために前記復号化されたファイルを使用することと、を含む方法。
  2. 前記それぞれの集積回路を構成するために前記復号化されたファイルを使用することが、前記復号化されたファイルを前記集積回路の前記メモリー内に保存することを含む、請求項1に記載の方法。
  3. 前記それぞれの集積回路を構成するために前記復号化されたファイルを使用することが、前記集積回路を構成するためのデータを決定し、かつ、前記集積回路を構成するための前記データを前記集積回路の前記メモリー内に保存することを含む、請求項1又は2の何れかに記載の方法。
  4. 前記物理複製困難関数が複数のリングオシレータを含み、また、前記集積回路に特有な前記暗号化キーと連携した前記データが前記複数のリングオシレータの一連のチャレンジ・応答ペアを含む、請求項1〜3の何れかに記載の方法。
  5. 前記それぞれの集積回路へ前記暗号化されたファイルを送付する前に、前記複数の暗号化されたファイルの各々から、前記それぞれの集積回路に特有な前記暗号化されたファイルに対する要求を受け取ることを含む、請求項1〜4の何れかに記載の方法。
  6. 複数の集積回路を構成するためのシステムであって、
    複数の集積回路を受け取るように構成された集積回路インタフェースであって、各集積回路は、物理複製困難関数と、前記集積回路に特有な暗号化キーと連携したデータを保存するメモリーとを含む集積回路インタフェースと、
    複数の暗号化されたファイルを含むパーソナル化ファイルデータベースであって、各々の暗号化されたファイルは、前記複数の集積回路のそれぞれ1つに特有な前記暗号化キーによって暗号化されているパーソナル化ファイルデータベースと、
    プロセッサであって、前記複数の暗号化されたファイルの各々について、
    前記暗号化されたファイルを前記それぞれの集積回路へ送付し、
    前記それぞれの集積回路に、前記暗号化キーと連携した前記データ及び前記物理複製困難関数を用いて、暗号化キーを生成させ、
    前記それぞれの集積回路に、前記生成した暗号化キーを用いて、前記暗号化されたファイルを復号化させ、
    かつ、前記それぞれの集積回路を構成するために前記復号化されたファイルを使用するよう構成されたプロセッサと、を含むシステム。
  7. 前記それぞれの集積回路を構成するために前記復号化されたファイルを使用することが、前記復号化されたファイルを前記集積回路の前記メモリー内に保存することを含む、請求項6に記載のシステム。
  8. 前記それぞれの集積回路を構成するために前記復号化されたファイルを使用することが、前記集積回路を構成するためのデータを決定し、かつ、前記集積回路を構成するための前記データを前記集積回路の前記メモリー内に保存することを含む、請求項6又は7の何れかに記載のシステム。
  9. 前記物理複製困難関数が複数のリングオシレータを含み、また、前記集積回路に特有な前記暗号化キーと連携した前記データが前記複数のリングオシレータの一連のチャレンジ・応答ペアを含む、請求項6〜8の何れかに記載のシステム。
  10. 前記プロセッサが、前記暗号化されたファイルを前記それぞれの集積回路へ送付する前に、前記複数の暗号化されたファイルの各々から、前記それぞれの集積回路に特有な前記暗号化されたファイルに対する要求を受け取るよう構成された、請求項6〜9の何れかに記載のシステム。
  11. 集積回路であって、
    物理複製困難関数と、
    暗号化キーと連携したデータを保存するメモリーと、
    プロセッサと、を備えており、
    前記プロセッサが、
    前記暗号化キーによって暗号化されている暗号化されたファイルを受け取り、
    前記物理複製困難関数及び前記暗号化キーと連携した前記データを用いて暗号化キーを生成し、
    前記暗号化キーを用いて前記暗号化されたファイルを復号化し、かつ、
    前記集積回路を構成するために前記復号化されたファイルを使用する、集積回路。
  12. 前記物理複製困難関数が複数のリングオシレータを含み、また、前記集積回路に特有な前記暗号化キーと連携した前記データが前記複数のリングオシレータの一連のチャレンジ・応答ペアを含む、請求項11に記載の集積回路。
  13. 請求項11又は12の何れかに記載の集積回路を含むセットトップボックスに適したスマートカード。
  14. コンピュータシステムに請求項1〜5の何れかに記載の方法のステップを実施させるためのコンピュータ実行可能指示を有する1つ又は複数の非一時的なコンピュータ可読媒体。
  15. 請求項11又は12の何れかに記載の集積回路の製造において使用されるネットリスト。
JP2020524045A 2017-11-14 2018-11-12 集積回路パーソナリゼーション Pending JP2021503208A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP17201496.1A EP3483772A1 (en) 2017-11-14 2017-11-14 Integrated circuit personalisation with data encrypted with the output of a physically unclonable function
EP17201496.1 2017-11-14
PCT/EP2018/080972 WO2019096748A1 (en) 2017-11-14 2018-11-12 Integrated circuit personalisation

Publications (1)

Publication Number Publication Date
JP2021503208A true JP2021503208A (ja) 2021-02-04

Family

ID=60382048

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020524045A Pending JP2021503208A (ja) 2017-11-14 2018-11-12 集積回路パーソナリゼーション

Country Status (7)

Country Link
US (1) US11206145B2 (ja)
EP (2) EP3483772A1 (ja)
JP (1) JP2021503208A (ja)
KR (2) KR102573943B1 (ja)
CN (1) CN111670443B (ja)
TW (1) TWI783079B (ja)
WO (1) WO2019096748A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT201900017561A1 (it) * 2019-09-30 2021-03-30 St Microelectronics Srl "Procedimento per introdurre dati di personalizzazione in memorie non volatile di una pluralità di circuiti integrati, in particolare in carte a circuito integrato, corrispondente sistema e prodotto informatico"
CN110853696B (zh) * 2019-10-31 2022-06-14 上海华力集成电路制造有限公司 用于静态存储器功能检测的晶圆允收测试模块和方法
KR102311996B1 (ko) * 2020-04-02 2021-10-13 국민대학교산학협력단 미디어 파일에 대한 안티 포렌식 해제 장치 및 방법
KR102319709B1 (ko) * 2020-04-27 2021-11-02 국민대학교산학협력단 데이터베이스 암호화 기반의 안티 포렌식 해제 장치 및 방법

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013046334A (ja) * 2011-08-26 2013-03-04 Meijo University 情報セキュリティシステム,ホスト,デバイス,その制御方法及びそのプログラム
JP2013131867A (ja) * 2011-12-20 2013-07-04 Fujitsu Ltd 個体別情報生成装置及び個体別情報生成方法
JP2013545388A (ja) * 2010-11-30 2013-12-19 インテル・コーポレーション ハードウェアデバイスの鍵プロビジョン方法および装置
US20150143130A1 (en) * 2013-11-18 2015-05-21 Vixs Systems Inc. Integrated circuit provisioning using physical unclonable function
JP2016111446A (ja) * 2014-12-03 2016-06-20 株式会社メガチップス メモリコントローラ、メモリコントローラの制御方法及びメモリシステム
WO2017001530A1 (en) * 2015-06-29 2017-01-05 Nagravision Sa Secure Programming of Secret data
JP2017183944A (ja) * 2016-03-29 2017-10-05 国立研究開発法人産業技術総合研究所 固有情報生成装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7380131B1 (en) * 2001-01-19 2008-05-27 Xilinx, Inc. Copy protection without non-volatile memory
JP4447977B2 (ja) * 2004-06-30 2010-04-07 富士通マイクロエレクトロニクス株式会社 セキュアプロセッサ、およびセキュアプロセッサ用プログラム。
US8514748B2 (en) * 2004-08-18 2013-08-20 Broadcom Corporation Method and system for improved authentication for communications network setup
EP1879322A1 (en) * 2005-04-25 2008-01-16 Matsushita Electric Industrial Co., Ltd. Information security device
US7693596B2 (en) * 2005-12-14 2010-04-06 Dell Products L.P. System and method for configuring information handling system integrated circuits
EP2186250B1 (en) * 2007-08-31 2019-03-27 IP Reservoir, LLC Method and apparatus for hardware-accelerated encryption/decryption
CN101676925B (zh) * 2008-09-16 2011-04-27 联想(北京)有限公司 一种将认证信息置入安全芯片的方法及计算机系统
US8873746B2 (en) * 2010-01-28 2014-10-28 Intel Corporation Establishing, at least in part, secure communication channel between nodes so as to permit inspection, at least in part, of encrypted communication carried out, at least in part, between the nodes
FR2960327B1 (fr) * 2010-05-20 2015-10-16 Oberthur Technologies Procede et systeme d'acces a un circuit integre comprenant une cle personnelle d'authentification
TW201317881A (zh) * 2011-10-26 2013-05-01 Top Victory Invest Ltd 使用觸控模組編輯螢幕顯示選單的方法
US8983073B1 (en) * 2012-02-10 2015-03-17 Xilinx, Inc. Method and apparatus for restricting the use of integrated circuits
US8750502B2 (en) * 2012-03-22 2014-06-10 Purdue Research Foundation System on chip and method for cryptography using a physically unclonable function
US9083323B2 (en) * 2013-02-11 2015-07-14 Qualcomm Incorporated Integrated circuit identification and dependability verification using ring oscillator based physical unclonable function and age detection circuitry
EP2816756A1 (fr) 2013-06-18 2014-12-24 Nagravision S.A. Procédé et dispositif cryptographique unique à fonction physiquement induplicable
JP6182371B2 (ja) * 2013-06-28 2017-08-16 ルネサスエレクトロニクス株式会社 半導体集積回路を含むシステム
US9787480B2 (en) * 2013-08-23 2017-10-10 Qualcomm Incorporated Applying circuit delay-based physically unclonable functions (PUFs) for masking operation of memory-based PUFs to resist invasive and clone attacks
US9366718B2 (en) * 2013-09-12 2016-06-14 Cisco Technology Inc. Detection of disassembly of multi-die chip assemblies
US9262256B2 (en) * 2013-12-24 2016-02-16 Intel Corporation Using dark bits to reduce physical unclonable function (PUF) error rate without storing dark bits location
US9497573B2 (en) * 2015-02-03 2016-11-15 Qualcomm Incorporated Security protocols for unified near field communication infrastructures
US9760737B2 (en) * 2015-06-12 2017-09-12 Qualcomm Incorporated Techniques for integrated circuit data path confidentiality and extensions thereof
US10097348B2 (en) * 2016-03-24 2018-10-09 Samsung Electronics Co., Ltd. Device bound encrypted data
US11303460B2 (en) * 2016-06-29 2022-04-12 Arizona Board Of Regents On Behalf Of Northern Arizona University PUFs from sensors and their calibration

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013545388A (ja) * 2010-11-30 2013-12-19 インテル・コーポレーション ハードウェアデバイスの鍵プロビジョン方法および装置
JP2013046334A (ja) * 2011-08-26 2013-03-04 Meijo University 情報セキュリティシステム,ホスト,デバイス,その制御方法及びそのプログラム
JP2013131867A (ja) * 2011-12-20 2013-07-04 Fujitsu Ltd 個体別情報生成装置及び個体別情報生成方法
US20150143130A1 (en) * 2013-11-18 2015-05-21 Vixs Systems Inc. Integrated circuit provisioning using physical unclonable function
JP2016111446A (ja) * 2014-12-03 2016-06-20 株式会社メガチップス メモリコントローラ、メモリコントローラの制御方法及びメモリシステム
WO2017001530A1 (en) * 2015-06-29 2017-01-05 Nagravision Sa Secure Programming of Secret data
JP2017183944A (ja) * 2016-03-29 2017-10-05 国立研究開発法人産業技術総合研究所 固有情報生成装置

Also Published As

Publication number Publication date
KR102573943B1 (ko) 2023-09-01
TWI783079B (zh) 2022-11-11
CN111670443B (zh) 2023-08-22
EP3483772A1 (en) 2019-05-15
CN111670443A (zh) 2020-09-15
KR20200087141A (ko) 2020-07-20
EP3710976A1 (en) 2020-09-23
EP3710976B1 (en) 2024-03-27
WO2019096748A1 (en) 2019-05-23
US11206145B2 (en) 2021-12-21
US20200396090A1 (en) 2020-12-17
TW201923646A (zh) 2019-06-16
KR20230129603A (ko) 2023-09-08

Similar Documents

Publication Publication Date Title
KR101897032B1 (ko) 블록체인을 이용한 저작권 보호 장치 및 저작권 보호 방법
CN108932297B (zh) 一种数据查询、数据共享的方法、装置及设备
CN111539813B (zh) 业务行为的回溯处理方法、装置、设备及系统
RU2763516C2 (ru) Генерирование удостоверения аттестации ключа с обеспечением анонимности устройства
US9842062B2 (en) Backup accessible by subset of related devices
US10063372B1 (en) Generating pre-encrypted keys
TWI740409B (zh) 使用密鑰之身份驗證
JP2021503208A (ja) 集積回路パーソナリゼーション
US20170272412A1 (en) Confining data based on location
CN109408486B (zh) 文件发布方法和系统、发布服务器和文件生成装置
WO2019082442A1 (ja) データ登録方法、データ復号方法、データ構造、コンピュータ、及びプログラム
KR20200085095A (ko) 블록체인 기반으로 데이터를 관리하는 전자 장치 및 데이터 관리 방법
US11734394B2 (en) Distributed license encryption and distribution
US20230179404A1 (en) Hybrid cloud-based security service method and apparatus for security of confidential data
US10043015B2 (en) Method and apparatus for applying a customer owned encryption
US20210303702A1 (en) Protection system and protection method for software and firmware or information
JP2013255161A (ja) 暗号鍵更新システム及び鍵更新プログラム
WO2015196810A1 (zh) 一种读写数据库的数据的方法和应用应答装置
CN115470525B (zh) 一种文件保护方法、系统、计算设备及存储介质
JP2017108293A (ja) 半導体集積回路装置およびデータ処理装置
JP5895093B1 (ja) ナンバー復元システム並びに支援装置及び復元支援方法
CN115455378A (zh) 软件许可的控制方法、装置、电子设备及存储介质
KR20230044952A (ko) Ipfs 기반의 파일 보안을 위한 컴퓨팅 방법 및 시스템
CN115795424A (zh) 端口控制方法、系统、计算机设备和计算机可读存储介质
CN115189929A (zh) 授权认证的方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220830

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230322