(57)【要約】【課題】安全性の高い認証コードを生成する電子装置を提供する。【解決手段】電子装置は、第１回路と、第２回路と、前記第１回路に電気的に接続される第１接合部と、前記第２回路に電気的に接続される第２接合部と、前記第１回路又は前記第１接合部に接続され、前記第１回路及び前記第１接合部の第１電気特性を計測する第１計測回路と、前記第２回路又は前記第２接合部に接続され、前記第２回路及び前記第２接合部の第２電気特性を計測する第２計測回路と、前記第１計測回路及び前記第２計測回路に接続され、前記第１計測回路及び前記第２計測回路によってそれぞれ計測された前記第１電気特性及び前記第２電気特性に基づいて識別子を生成する識別子生成部とを含む。【選択図】図１
2019213015.tif 000002
【特許請求の範囲】
【請求項１】
第１回路と、
第２回路と、
前記第１回路に電気的に接続される第１接合部と、
前記第２回路に電気的に接続される第２接合部と、
前記第１回路又は前記第１接合部に接続され、前記第１回路及び前記第１接合部の第１電気特性を計測する第１計測回路と、
前記第２回路又は前記第２接合部に接続され、前記第２回路及び前記第２接合部の第２電気特性を計測する第２計測回路と、
前記第１計測回路及び前記第２計測回路に接続され、前記第１計測回路及び前記第２計測回路によってそれぞれ計測された前記第１電気特性及び前記第２電気特性に基づいて識別子を生成する識別子生成部と
を含む、電子装置。
【請求項２】
前記第１電気特性は、前記第１回路及び前記第１接合部の抵抗値及び容量値であり、前記第２電気特性は、前記第２回路及び前記第２接合部の抵抗値及び容量値である、請求項１記載の電子装置。
【請求項３】
前記第１接合部及び前記第２接合部を介して前記第１回路及び前記第２回路に電気的にそれぞれ接続される配線基板をさらに含み、
前記第１接合部、前記第１回路、及び前記第１計測回路がこの順番で接続される第１接続回路と、前記第２接合部、前記第２回路、及び前記第２計測回路がこの順番で接続される第２接続回路とは、前記識別子生成部と前記配線基板との間で並列に接続される、請求項１又は２記載の電子装置。
【請求項４】
前記第１接合部及び前記第２接合部は、バンプ、ビア、又はパッドである、請求項１乃至３のいずれか一項記載の電子装置。
【請求項５】
前記第１回路と前記第２回路は、１つの半導体チップの内部で電気的に分離された回路である、請求項１乃至４のいずれか一項記載の電子装置。
【請求項６】
前記識別子生成部は、前記半導体チップに設けられる、請求項５記載の電子装置。
【請求項７】
前記識別子生成部、前記第１計測回路、及び前記第２計測回路が実装される配線基板をさらに含み、
前記第１計測回路には、前記第１接合部を介して前記第１回路が接続され、
前記第２計測回路には、前記第２接合部を介して前記第２回路が接続される、請求項１又は２記載の電子装置。
【請求項８】
前記第１回路と前記第２回路は、１つの半導体チップの内部で電気的に分離された回路である、請求項７記載の電子装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子装置に関する。
【背景技術】
【０００２】
従来より、第１不揮発性メモリと第１メモリコントローラとを備える第１メモリ装置と、第２不揮発性メモリと第２メモリコントローラとを備える第２メモリ装置とを備える半導体記憶装置がある。
【０００３】
前記第２メモリコントローラは、前記第１不揮発性メモリの認証に用いられる第１パラメータを前記第２不揮発性メモリから読み出して第１参照値を取得する第２メモリ装置側管理部を備える。
【０００４】
前記第１メモリコントローラは、前記第１不揮発性メモリに記憶された第１チャレンジ値を取得し、取得した第１チャレンジ値を用いて物理的複製困難関数を計算して前記第１メモリコントローラの固有値を取得する第１固有値計算部を備える。また、前記第２メモリ装置側管理部により取得された第１参照値と、前記第１メモリコントローラの固有値とを用いて前記第１不揮発性メモリを認証する第１認証部と、前記第１認証部により前記第１不揮発性メモリが認証された場合、ホスト装置からのコマンドに応じて、前記第１不揮発性メモリからのデータの読み出し又は前記第１不揮発性メモリへのデータの書き込みを実行する第１アクセス制御部とを備える。
【０００５】
前記第２メモリコントローラは、さらに、前記第１認証部により前記第１不揮発性メモリが認証された場合、前記ホスト装置からのコマンドに応じて、前記第２不揮発性メモリからのデータの読み出し又は前記第２不揮発性メモリへのデータの書き込みを実行する第２アクセス制御部を備える（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１６−１４４１７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、従来の半導体記憶装置は、１個の第１不揮発性メモリに記憶された第１チャレンジ値を用いて固有値を取得するため、認証時に固有値の複雑さ（解読の困難さ）が十分ではなく、安全性が不十分になるおそれがある。
【０００８】
そこで、安全性の高い認証コードを生成する電子装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の実施の形態の電子装置は、第１回路と、第２回路と、前記第１回路に電気的に接続される第１接合部と、前記第２回路に電気的に接続される第２接合部と、前記第１回路又は前記第１接合部に接続され、前記第１回路及び前記第１接合部の第１電気特性を計測する第１計測回路と、前記第２回路又は前記第２接合部に接続され、前記第２回路及び前記第２接合部の第２電気特性を計測する第２計測回路と、前記第１計測回路及び前記第２計測回路に接続され、前記第１計測回路及び前記第２計測回路によってそれぞれ計測された前記第１電気特性及び前記第２電気特性に基づいて識別子を生成する識別子生成部とを含む。
【発明の効果】
【００１０】
安全性の高い認証コードを生成する電子装置を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態の電子装置１００を示す断面図である。
【図２】本実施の形態にかかる電子装置における計測回路及び識別子生成回路による識別子の生成方法の具体例を説明するための図である。
【図３】（Ａ）、（Ｂ）は、本実施の形態にかかる電子装置における計測回路及び識別子生成回路による識別子の生成方法の具体例を説明するための図である。
【図４】（Ａ）、（Ｂ）は、本実施の形態にかかる電子装置における計測回路及び識別子生成回路による識別子の生成方法の具体例を説明するための図である。
【図５】本実施の形態にかかる電子装置における計測回路及び識別子生成回路による識別子の生成方法の具体例を説明するための図である。
【図６】（Ａ）、（Ｂ）は、本実施の形態にかかる電子装置における計測回路及び識別子生成回路による識別子の生成方法の具体例を説明するための図である。
【図７】（Ａ）、（Ｂ）は、本実施の形態にかかる電子装置における計測回路及び識別子生成回路による識別子の生成方法の具体例を説明するための図である。
【図８】本実施の形態にかかる電子装置における計測回路及び識別子生成回路による識別子の生成方法の具体例を説明するための図である。
【図９】本実施の形態にかかる電子装置における計測回路及び識別子生成回路による識別子の生成方法の具体例を説明するための図である。
【図１０】認証コードを示す図である。
【図１１】実施の形態の変形例の電子装置１００Ｍ１を示す断面図である。
【図１２】実施の形態の変形例の電子装置１００Ｍ２を示す断面図である。
【発明を実施するための形態】
【００１２】
以下、本発明の電子装置を適用した実施の形態について説明する。
【００１３】
＜実施の形態＞
図１は、実施の形態の電子装置１００を示す断面図である。電子装置１００は、配線基板１１０、接合部１２０、及び半導体チップ１３０を含む。
【００１４】
配線基板１１０は、接合部１２０を介して半導体チップ１３０を実装するパッケージ基板であり、例えば、ＦＲ−４(Flame  Retardant  type  4)規格の配線基板である。配線基板１１０の内層の電源層には、電圧Ｖｄｄを出力する電源Ｖｄｄが接続されており、電源Ｖｄｄから接合部１２０を介して半導体チップ１３０に電力が供給される。
【００１５】
接合部１２０は、半導体チップ１３０を配線基板１１０に接合（接続）する、パッド、Ｃ４バンプ又はマイクロバンプのようなバンプ、Ｃｕピラー等のようなピラーバンプ、ビア等である。接合部１２０は、抵抗値を有するため、図１では接合部１２０に抵抗器の記号を記す。また、接合部１２０は、寄生容量等による容量値を有する。ＳＲＡＭ１３１及び接合部１２０の抵抗値及び容量値には、製造ばらつきに起因する物理的なばらつきがある。抵抗値及び容量値のばらつきは、ランダムな値である。
【００１６】
半導体チップ１３０は、ＳＲＡＭ(Static  Random  Access  Memory)１３１、計測回路１３２、認証コード生成回路１３３、及び封止部１３４を有する。半導体製造技術によって作成されるＬＳＩ(Large  Scale  Integration)回路によって実現されるＳＲＡＭ１３１、計測回路１３２、及び認証コード生成回路１３３は、樹脂製の封止部１３４によって封止されてパッケージ化されている。
【００１７】
ＳＲＡＭ１３１及び計測回路１３２は、Ｎ個（Ｎは２以上の整数）ずつ設けられ、1個ずつで組になっている。このため、Ｎ組のＳＲＡＭ１３１及び計測回路１３２があるが、図１には２組のみを示し、その他の組を省略する。Ｎ個のＳＲＡＭ１３１は、１つの半導体チップで構築されるＳＲＡＭに含まれるメモリ素子を電気的に分離されたＮ個の領域に分割したものである。なお、認証コード生成回路１３３は、１個である。
【００１８】
以下では、図示する２組のＳＲＡＭ１３１及び計測回路１３２を区別する場合には、ＳＲＡＭ１３１−１、１３１−２、及び、計測回路１３２−１、１３２−２と称す。また、同様に、２組のＳＲＡＭ１３１−１、１３１−２、及び、計測回路１３２−１、１３２−２に接続される接合部１２０を区別する場合には、接合部１２０−１、１２０−２と称す。
【００１９】
Ｎ組のＳＲＡＭ１３１及び計測回路１３２は、それぞれ、Ｎ組に対応して設けられる接合部１２０を介して配線基板１１０に電気的に接続されており、Ｎ組の接合部１２０、ＳＲＡＭ１３１、及び計測回路１３２は、配線基板１１０と認証コード生成回路１３３との間で互いに並列に設けられている。
【００２０】
また、Ｎ組のＳＲＡＭ１３１及び計測回路１３２は、各組に対応する接合部１２０を介して配線基板１１０から電力供給を受ける。電源ＶｄｄからＮ組のＳＲＡＭ１３１及び計測回路１３２に電力を供給するＮ個の電源回路は、電源Ｖｄｄに対して互いに並列に接続されている。
【００２１】
このため、Ｎ組の接合部１２０、ＳＲＡＭ１３１、及び計測回路１３２は、配線基板１１０と認証コード生成回路１３３との間では、回路として互いに独立している。
【００２２】
ＳＲＡＭ１３１は、一例として、１２８ビットの容量を有し、各ＳＲＡＭ１３１の１２８個のピン（端子）は、対応する計測回路１３２に接続されている。ＳＲＡＭ１３１には、接合部１２０を介して配線基板１１０から電圧Ｖｄｄが供給される。
【００２３】
計測回路１３２は、ＳＲＡＭ１３１の１２８個のピンを１個ずつ選択し、抵抗値と容量値を計測するリードライト機能を有する回路である。１２８個のピンから測定するＳＲＡＭ１３１の抵抗値及び容量値には、ばらつきがある。また、ＳＲＡＭ１３１に接続される接合部１２０の抵抗値及び容量値にもばらつきがある。
【００２４】
このため、計測回路１３２が１２８個のピンを介して計測する抵抗値と容量値の組み合わせは、各ＳＲＡＭ１３１及び各接合部１２０によって固有の抵抗値及び容量値になる。
【００２５】
認証コード生成回路１３３は、計測回路１３２によって計測されるＮ組のＳＲＡＭ１３１及び接合部１２０の固有の抵抗値及び容量値を抵抗値の閾値及び容量値の閾値とそれぞれ比較することにより、１又は０に２値化した抵抗値のコード及び容量値のコードを生成する。
【００２６】
認証コード生成回路１３３は、さらに、２組のＳＲＡＭ１３１及び接合部１２０から得られた抵抗値のコードと容量値のコードとを組み合わせて、認証コード（物理認証コード）を生成する。
【００２７】
計測回路１３２によって１２８個のピンから計測される抵抗値と容量値を所定の閾値で２値化して得る１２８桁の抵抗値のコード及び容量値のコードは、同一データを生成することが略不可能なデータであるため、ＰＵＦ(Physical  Unclonable  Function：物理的な複製防止機能)によって生成されたデータとして利用することができる。
【００２８】
また、２組のＳＲＡＭ１３１及び接合部１２０から得られた１２８桁の抵抗値のコード及び容量値のコードを組み合わせて生成される認証コードは、２組の抵抗値のコード及び容量値のコードの各々よりも、さらに複雑さが増しており、さらに複製が困難である。
【００２９】
電子装置１００は、２組のＳＲＡＭ１３１及び接合部１２０から得られる抵抗値のコードと容量値のコードとを組み合わせて、認証コードを生成する。このような認証コードは、略複製が不可能であるため、セキュリティレベルが非常に高い認証コードとして利用できるものである。
【００３０】
ここでは、一例として、認証コード生成回路１３３が、計測回路１３２−１と１３２−２によって計測される、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値と、ＳＲＡＭ１３１−２及び接合部１２０−２の抵抗値及び容量値とに基づいて、認証コードを生成する形態について説明する。
【００３１】
ＳＲＡＭ１３１−１は、第１回路の一例であり、接合部１２０−１は、第１接合部の一例であり、計測回路１３２−１は、第１計測回路の一例である。また、ＳＲＡＭ１３１−２は、第２回路の一例であり、接合部１２０−２は、第２接合部の一例であり、計測回路１３２−２は、第２計測回路の一例である。また、互いに接続されたＳＲＡＭ１３１−１、計測回路１３２−１、及び接合部１２０−１は、第１接続回路の一例であり、互いに接続されたＳＲＡＭ１３１−２、計測回路１３２−２、及び接合部１２０−２は、第２接続回路の一例である。
【００３２】
また、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値は、第１電気特性の一例であり、ＳＲＡＭ１３１−２及び接合部１２０−２の抵抗値及び容量値は、第２電気特性の一例である。
【００３３】
次に、認証コードの生成に用いる第１コード及び第２コードの生成方法について説明する。第１コード及び第２コードは、認証コード生成回路１３３によって生成される。
【００３４】
ＳＲＡＭ１３１−１及び接合部１２０−１についての第１コードは、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値から生成され、ＳＲＡＭ１３１−２及び接合部１２０−２についての第１コードは、ＳＲＡＭ１３１−２及び接合部１２０−２の抵抗値から生成される。
【００３５】
また、ＳＲＡＭ１３１−１及び接合部１２０−１についての第２コードは、ＳＲＡＭ１３１−１及び接合部１２０−１の容量値から生成され、ＳＲＡＭ１３１−２及び接合部１２０−２についての第２コードは、ＳＲＡＭ１３１−２及び接合部１２０−２の容量値から生成される。
【００３６】
認証コード生成回路１３３は、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値から生成される第１コードと、ＳＲＡＭ１３１−１及び接合部１２０−１の容量値から生成される第２コードとに基づいて、第１中間コードを生成する。
【００３７】
また、認証コード生成回路１３３は、ＳＲＡＭ１３１−２及び接合部１２０−２の抵抗値から生成される第１コードと、ＳＲＡＭ１３１−２及び接合部１２０−２の容量値から生成される第２コードとに基づいて、第２中間コードを生成する。
【００３８】
さらに、認証コード生成回路１３３は、第１中間コードと、第２中間コードとに基づいて、認証コードを生成する。ここでは、認証コード生成回路１３３が第１中間コードと第２中間コードとを生成してから、第１中間コードと第２中間コードとに基づいて、認証コードを生成する形態について説明する。
【００３９】
しかしながら、認証コード生成回路１３３は、第１中間コードと第２中間コードとを生成せずに、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値から生成される第１コードと、ＳＲＡＭ１３１−１及び接合部１２０−１の容量値から生成される第２コードと、ＳＲＡＭ１３１−２及び接合部１２０−２の抵抗値から生成される第１コードと、ＳＲＡＭ１３１−２及び接合部１２０−２の容量値から生成される第２コードとに基づいて、直接的に認証コードを生成してもよい。
【００４０】
なお、認証コード生成回路１３３は、識別子生成部の一例であり、認証コードは、識別子の一例である。
【００４１】
また、ＳＲＡＭ１３１は１２８個のピンを有するため、本来であれば、１２８桁の第１コード及び第２コードが生成されることになるが、ここでは説明を簡単にするために、４９桁の第１コード及び第２コードを生成する形態について説明する。
【００４２】
また、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値から生成される第１コードと、ＳＲＡＭ１３１−２及び接合部１２０−２の抵抗値から生成される第１コードとは、同様の手法で生成されるため、第１コードについては、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値から生成する方法について説明する。
【００４３】
また、ＳＲＡＭ１３１−１及び接合部１２０−１の容量値から生成される第２コードと、ＳＲＡＭ１３１−２及び接合部１２０−２の容量値から生成される第２コードとは、同様の手法で生成されるため、第２コードについても、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値から生成する方法について説明する。
【００４４】
図２は、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値を計測した結果を示している。この結果、抵抗値は、平均値が１．６０Ωであり、最大値が１．９８Ωであり、最小値が１．２３Ωであった。また、容量値は、平均値が５．５４ｆＦであり、最大値が１０．１８ｆＦであり、最小値が７．３５ｆＦであった。
【００４５】
そして、図２に示すように、抵抗値と容量値のプロットの分散、即ち、抵抗値と容量値の関係は構造的な関係を示し、抵抗値が低い場合は容量値が高いという傾向（相関）があった。
【００４６】
また、計測回路１３２−１は、計測されたＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値を、ＳＲＡＭ１３１−１のピンの番号（メモリ領域の番地に対応した番号）に対応づけて記憶する。
【００４７】
つまり、計測回路１３２−１は、図３（Ａ）に示すように、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値をＳＲＡＭ１３１−１のピンの番号に対応づけてマッピング（２次元マッピング）し、ＳＲＡＭ１３１−１のピンの番号に応じた抵抗値のテーブルデータ（Ｒテーブル）を作成する。
【００４８】
また、計測回路１３２−１は、図３（Ｂ）に示すように、ＳＲＡＭ１３１−１及び接合部１２０−１の容量値をＳＲＡＭ１３１−１のピンの番号に対応づけてマッピング（２次元マッピング）し、ＳＲＡＭ１３１−１のピンの番号に応じた容量値のテーブルデータ（Ｃテーブル）を作成する。
【００４９】
ここでは、縦横（列方向及び行方向）７個ずつ並べられた合計４９個のＳＲＡＭ１３１−１及び接合部１２０−１のそれぞれの抵抗値及び容量値からテーブルデータが作成されるため、７行×７列のテーブルデータとなる。
【００５０】
また、認証コード生成回路１３３は、計測回路１３２−１によって計測され、ＳＲＡＭ１３１−１のピンの番号に対応づけて記憶されたＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値から第１中間コードを生成する。
【００５１】
ここでは、まず、認証コード生成回路１３３は、計測回路１３２−１によって計測され、ＳＲＡＭ１３１−１のピンの番号に対応づけて記憶されたＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値に「０」又は「１」を割り当てて第１コードを生成するとともに、計測回路１３２−１によって計測され、ＳＲＡＭ１３１−１のピンの番号に対応づけて記憶されたＳＲＡＭ１３１−１及び接合部１２０−１の容量値に「０」又は「１」を割り当てて第２コードを生成する。
【００５２】
ここで、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値への「０」又は「１」の割り当ては、例えば、設計値（例えば設計値の中心値）又は平均値（例えばチップ毎の平均値）などを閾値とし、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値が閾値よりも小さいか大きいかによって「０」又は「１」を割り当てるようにすればよい。
【００５３】
なお、閾値よりも小さい抵抗値及び容量値に「０」、閾値以上の抵抗値及び容量値に「１」を割り当ててもよいし、逆に、閾値よりも小さい抵抗値及び容量値に「１」、閾値以上の抵抗値及び容量値に「０」を割り当ててもよい。また、閾値は、どの位置に設定してもよい。
【００５４】
ここでは、認証コード生成回路１３３は、図４（Ａ）に示すように、ＳＲＡＭ１３１−１のピンの番号に応じた抵抗値のテーブルデータ（Ｒテーブル）において抵抗値に設計値を閾値として「０」又は「１」を割り当て、これらを番地の順番で並べて、第１コードを生成する。
【００５５】
ここでは、縦横（列方向及び行方向）７個ずつ並べられた合計４９個のＳＲＡＭ１３１−１及び接合部１２０−１のそれぞれの抵抗値に設計値を閾値として「０」又は「１」を割り当て、これらを順番に並べるため、第１コードは、「０」、「１」を含む４９桁の数列となる。
【００５６】
また、認証コード生成回路１３３は、図４（Ｂ）に示すように、ＳＲＡＭ１３１−１のピンの番号に応じた容量値のテーブルデータ（Ｃテーブル）において容量値に設計値を閾値として「０」又は「１」を割り当て、これらを番地の順番で並べて、第２コードを生成する。
【００５７】
ここでは、縦横（列方向及び行方向）７個ずつ並べられた合計４９個のＳＲＡＭ１３１−１及び接合部１２０−１のそれぞれの容量値に設計値を閾値として「０」又は「１」を割り当て、これらを順番に並べるため、第２コードは、「０」、「１」を含む４９桁の数列となる。
【００５８】
ここで、図６（Ａ）は、上述のようにして計測回路１３２−１によって計測されたＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値（Ｒ）と、抵抗値の発生の頻度との関係を示す図であり、図６（Ｂ）は、上述のようにして計測回路１３２−１によって計測されたＳＲＡＭ１３１−１及び接合部１２０−１の容量値（Ｃ）と、容量値の発生の頻度との関係を示す図である。
【００５９】
例えば、ＳＲＡＭ１３１−１のピンの番号に応じた抵抗値のテーブルデータにおいてＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値に設計値を閾値として「０」又は「１」を割り当てる場合、図６（Ａ）に示すように、設計値は１．４５であるため、抵抗値が１．４５よりも小さい場合に「０」を割り当て、抵抗値が１．４５以上の場合に「１」を割り当てる。この結果、図４（Ａ）に示すようなテーブルデータが作成される。そして、このテーブルデータに割り当てられた「０」、「１」を順番に並べて、「０」、「１」を含む４９桁の数列によって構築される第１コードを生成する。
【００６０】
また、例えば、ＳＲＡＭ１３１−１のピンの番号に応じた容量値のテーブルデータにおいてＳＲＡＭ１３１−１及び接合部１２０−１の容量値に設計値を閾値として「０」又は「１」を割り当てる場合、図６（Ｂ）に示すように、設計値は５．８０であるため、容量値が５．８０よりも小さい場合に「０」を割り当て、容量値が５．８０以上の場合に「１」を割り当てる。この結果、図４（Ｂ）に示すようなテーブルデータが作成される。そして、このテーブルデータに割り当てられた「０」、「１」を順番に並べて、「０」、「１」を含む４９桁の数列によって構築される第２コードを生成する。
【００６１】
そして、認証コード生成回路１３３は、上述のようにして生成した第１コードを構成する４９桁の「０」、「１」を含む数列に、第２コードを構成する４９桁の「０」、「１」を含む数列を合わせて、図５に示すように、９８桁の「０」、「１」を含む数列によって構築される第１中間コードを生成する。
【００６２】
ここで、図５は、上述のようにしてＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値に設計値を閾値として「０」又は「１」を割り当てることによって生成された第１中間コードを示している。
【００６３】
なお、ここでは、ＰＵＦが製造ばらつきに基づいているというコンセプトと合致するように、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値に設計値を閾値として「０」又は「１」を割り当てているが、例えば、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値に平均値を閾値として「０」又は「１」を割り当てる場合には、以下のようになる。
【００６４】
つまり、例えば、ＳＲＡＭ１３１−１のピンの番号に応じた抵抗値のテーブルデータにおいてＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値に平均値を閾値として「０」又は「１」を割り当てる場合、図６（Ａ）に示すように、平均値は１．６０であるため、抵抗値が１．６０よりも小さい場合に「０」を割り当て、抵抗値が１．６０以上の場合に「１」を割り当てる。この結果、図７（Ａ）に示すようなテーブルデータが作成される。そして、このテーブルデータに割り当てられた「０」、「１」を順番に並べて、「０」、「１」を含む４９桁の数列によって構築される第１コードを生成する。
【００６５】
また、例えば、ＳＲＡＭ１３１−１のピンの番号に応じた容量値のテーブルデータにおいてＳＲＡＭ１３１−１及び接合部１２０−１の容量値に平均値を閾値として「０」又は「１」を割り当てる場合、図６（Ｂ）に示すように、平均値は５．５４であるため、容量値が５．５４よりも小さい場合に「０」を割り当て、容量値が５．５４以上の場合に「１」を割り当てる。この結果、図７（Ｂ）に示すようなテーブルデータが作成される。そして、このテーブルデータに割り当てられた「０」、「１」を順番に並べて、「０」、「１」を含む４９桁の数列によって構築される第２コードを生成する。
【００６６】
そして、認証コード生成回路１３３は、上述のようにして生成した第１コードを構成する４９桁の「０」、「１」を含む数列に、第２コードを構成する４９桁の「０」、「１」を含む数列を合わせて、図８に示すように、９８桁の「０」、「１」を含む数列によって構築される第１中間コードを生成する。
【００６７】
ここで、図８は、上述のようにしてＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値に平均値を閾値として「０」又は「１」を割り当てることによって生成された第１中間コードを示している。
【００６８】
このようにして、図９に示すように、認証コード生成回路１３３は、ＳＲＡＭ１３１−１のピンの番号に応じた抵抗値のテーブルデータ（Ｒテーブル）を作成するとともに、ＳＲＡＭ１３１−１のピンの番号に応じた容量値のテーブルデータ（Ｃテーブル）を作成し、ＳＲＡＭ１３１−１のピンの番号に応じた抵抗値のテーブルデータ（Ｒテーブル）において抵抗値に「０」又は「１」を割り当てるとともに、ＳＲＡＭ１３１−１のピンの番号に応じた容量値のテーブルデータ（Ｃテーブル）において容量値に「０」又は「１」を割り当て、これらを組み合わせて第１中間コードを生成する。
【００６９】
また、認証コード生成回路１３３は、上述のように第１中間コードを生成した方法と同様の方法によって、ＳＲＡＭ１３１−２及び接合部１２０−２の抵抗値から生成される第１コードと、ＳＲＡＭ１３１−２及び接合部１２０−２の容量値から生成される第２コードとに基づいて、第２中間コードを生成する。
【００７０】
そして、認証コード生成回路１３３は、第１中間コードと第２中間コードとに基づいて、認証コードを生成する。図１０は、認証コードを示す図である。認証コード生成回路１３３は、９８桁の第１中間コードと、９８桁の第２中間コードとを組み合わせて、１９６桁の認証コードを生成する。より具体的には、９８桁の第１中間コードの後に、９８桁の第２中間コードを付け加えることで、１９６桁の認証コードを生成している。
【００７１】
ここでは、説明を簡単にするために、４９桁の第１コード及び第２コードを生成する形態について説明したが、ＳＲＡＭ１３１−１及び１３１−２は、それぞれ１２８個のピンを有するため、第１コード及び第２コードは、１２８桁のデータであり、第１中間コードは、２５６桁のデータになる。このため、２５６桁の第１中間コードと、２５６桁の第２中間コードとを組み合わせて生成される認証コードは、５１２桁のデータとなる。
【００７２】
以上のように、認証コード生成回路１３３は、ＳＲＡＭ１３１−１及び接合部１２０−１の抵抗値及び容量値から、ＳＲＡＭ１３１−１及び接合部１２０−１についての第１コード及び第２コードを生成し、第１コード及び第２コードから第１中間コードを生成する。
【００７３】
また、認証コード生成回路１３３は、ＳＲＡＭ１３１−２及び接合部１２０−２の抵抗値及び容量値から、ＳＲＡＭ１３１−２及び接合部１２０−２についての第１コード及び第２コードを生成し、第１コード及び第２コードから第２中間コードを生成する。
【００７４】
そして、認証コード生成回路１３３は、第１中間コードと、第２中間コードとに基づいて、認証コードを生成する。
【００７５】
すなわち、認証コードは、２つのＳＲＡＭ１３１−１及び１３１−２の抵抗値及び容量値のばらつきと、２つの接合部１２０−１及び１２０−２の抵抗値及び容量値のばらつきとに基づいて生成される。
【００７６】
このため、認証コードは、２つのＳＲＡＭ１３１−１及び１３１−２の固有の抵抗値及び容量値と、２つの接合部１２０−１及び１２０−２の固有の抵抗値及び容量値とに基づいて生成される。
【００７７】
従って、認証コードは、同一データを生成することが略不可能なデータであり、ＰＵＦによって生成されたデータとして利用することができる、非常にセキュリティレベルの高いデータである。
【００７８】
従って、実施の形態によれば、安全性の高い認証コードを生成する電子装置１００を提供することができる。
【００７９】
また、ＳＲＡＭ１３１−１及び１３１−２は、ともに抵抗値及び容量値を計測可能な回路であるため、第１コードと第２コードを同様に生成することができ、第１中間コードと第２中間コードについても同様に生成することができる。このため、認証コードを生成しやすい。
【００８０】
ところで、上述のように構成しているのは、以下の理由による。
【００８１】
近年、半導体集積回路（ＬＳＩ；Large-Scale  Integration）が形成されている半導体装置は、多くの形態が製品化され、普及していくとともに、機密性の高い重要な情報がその中に入っているケースも増えている。
【００８２】
また、携帯電話又はタブレット端末には、使用者本人の個人情報が入っており、業務で使用するようなコンピュータ等では、顧客情報といった業務上の秘密情報が入っており、これらが漏えいしてしまうというセキュリティ社会上の問題も増加の一途をたどっている。
【００８３】
また、暗号化されたモジュールの安全性は、暗号システムと暗号回路が重要であり、年々、サイドチェネル攻撃の進化からセキュリティの高さを維持していくことが必要である。外部からの攻撃には、物理的に耐タンパ性を上げることが効果的である。
【００８４】
近年のネットワーク認証は、従来のイーサネット（登録商標）上の２重、３重の論理ネットワークからブロックチェーンの台頭によって、セキュリティレベルが格段に向上すると予想されている。
【００８５】
しかしながら、ＩｏＴ（Internet  of  Things）機器（電子機器）の物理ノードでは、セキュリティレベルは従来のままで取り残されている。
【００８６】
ＩｏＴ機器（デバイス）のセキュリティでは、論理ネットワーク側の認証が必要となるが、将来、ＩｏＴ機器の増加によって爆発的に情報処理量が増加すると、より複雑なセキュリティと相まって、ボトルネックとなりやすい。
【００８７】
Fintechに代表される論理ネットワークの整備が進むと、ブロックチェーンによってバッテリレスタイマの課題は解消される。
【００８８】
しかしながら、ＩｏＴ機器の数だけ論理認証が進み、処理速度又はキャパシティに不満が出てくることが考えられる。
【００８９】
このため、ＩｏＴデバイス側だけで論理アドレスから物理アドレスの利用へ切り替え、更に、物理アドレスはハードウエア（ＨＷ）が持つ個別の指紋を有することで、高速化が期待される。そして、ＩｏＴデバイス同士の論理認証を介さない直接的な物理認証だけで機器間のセキュアな通信が可能となる。
【００９０】
ＨＷでのセキュリティには外からは見えない秘密鍵が必要であり、物理複製不可能機能（ＰＵＦ）を用いる方法が用いられる。ＰＵＦは、デバイスが持つばらつきを利用して物理アドレス（認証コード）を作成する。
【００９１】
物理的なばらつきはランダムな製造ばらつきを利用するために、同じばらつきを再現すること（クローン化）はほぼ不可能であり、認証の複雑さは膨大な数のエントロピーを発生することが可能である。
【００９２】
物理認証のためのＰＵＦは、例えばＲＡＭ（Random  access  memory）のばらつきを利用したもの、又は、インバータの遅延ばらつきを利用したものなどがあり、デバイス回路に搭載あるいはパッケージング時にエンベデットとして搭載される。
【００９３】
よりＩｏＴ機器の低コスト化を図るために、オンチップデバイス搭載にはフロントエンドプロセスの追加がないことが望ましい。
【００９４】
また、例えばＲＡＭなどを利用したオンチップのＰＵＦは、情報エントロピーが膨大になるほどチップ内の専有面積を脅かす。
【００９５】
一方、最近の半導体製造はサプライチェーンを利用して製造される。ハードウエアのトロイの木馬に代表されるように、第３国でデバイスに不正規の機能を仕込まれてバックドアとして利用されたり、セキュリティ認証コードをそのまま読み取られたりすることも考えられる。このため、製造サプライチェーンの観点から、ＰＵＦの発生をアセンブリ段階で仕込むことが望ましい。
【００９６】
そこで、ＩｏＴ機器同士を安全に製造し、且つ、低コストで認証する機器を提供できるようにしたい。
【００９７】
また、例えばインバータ又はリングオシレータの信号遅延ばらつきを利用したアービターＰＵＦは一般的に知られている。
【００９８】
信号遅延はＭＯＳＦＥＴ又は配線の容量と抵抗の積に関係し、遅延時間のばらつきは容量又は抵抗だけのばらつきより小さくなる。
【００９９】
ここでは、配線の製造ばらつきを例に挙げて説明しているが、端子コンタクトで使用するバンプ（接合部）でも同様のことが言える。
【０１００】
そこで、上述の実施の形態のように構成することで、抵抗値のばらつき、容量値のばらつきを別々に読み取り、各々のばらつきから２次元マッピングし、これらを合わせることで、認証コード（認証コード）の数のエントロピーを拡大させ（例えば２倍に増やし）、ばらつきを利用した認証コードを数多く生成することを可能としている。また、アセンブリ工程で認証コードを発生させることが可能となり、製造段階からセキュアな電子装置（デバイス）の提供を可能としている。
【０１０１】
なお、以上では、電子装置１００が、２組のＳＲＡＭ１３１−１及び接合部１２０−１から得られる抵抗値のコードと容量値のコードとを組み合わせて、認証コードを生成する形態について説明した。
【０１０２】
しかしながら、電子装置１００は、３組以上のＳＲＡＭ１３１−１及び接合部１２０−１から得られる抵抗値のコードと容量値のコードとを組み合わせて、認証コードを生成してもよい。
【０１０３】
また、以上では、ＳＲＡＭ１３１に、接合部１２０を介して配線基板１１０が接続される形態について説明した。認証コードを生成する際に計測する抵抗値には、接合部１２０が接続される配線基板１１０の抵抗値及び容量値のばらつきが含まれるものとして捉えてもよい。
【０１０４】
また、配線基板１１０の代わりに、電子素子又は半導体チップ等を含むパッケージのような電子部品、又は、インターポーザのような複雑な配線回路を有するものが接続されていてもよい。
【０１０５】
また、以上では、ＳＲＡＭ１３１−１及び１３１−２がともに１２８ビットである形態について説明したが、ビット数は１２８ビットに限られない。また、ＳＲＡＭ１３１−１とＳＲＡＭ１３１−２のビット数は異なっていてもよい。
【０１０６】
また、以上では、９８桁の第１中間コードの後に、９８桁の第２中間コードを付け加えることで、１９６桁の認証コードを生成する形態について説明したが、第１中間コードと第２中間コードに基づく認証コードの生成方法は、このような方法に限られない。例えば、第２中間コードの後に第１中間コードを付け加えて認証コードを生成してもよいし、第１中間コードと第２中間コードとを１桁ずつ交互に組み込むことで、認証コードを生成してもよい。
【０１０７】
また、以上では、半導体チップ１３０がＳＲＡＭ１３１−１を含む形態について説明したが、半導体チップ１３０が含む回路は、ＳＲＡＭ１３１−１に限られるものではなく、例えば、インバータであってもよい。
【０１０８】
図１１は、実施の形態の変形例の電子装置１００Ｍ１を示す断面図である。電子装置１００Ｍ１は、配線基板１１０、接合部１２０、及び半導体チップ１３０Ｍ１を含み、半導体チップ１３０Ｍ１は、図１に示すＮ個のＳＲＡＭ１３１の代わりに、Ｎ個のインバータ１３１Ｍ１を有する。Ｎ個のインバータ１３１Ｍ１は、１つの半導体チップで構築されるインバータに含まれるインバータ素子を電気的に分離されたＮ個の領域に分割したものである。図１１には、Ｎ個のインバータ１３１Ｍ１のうちのインバータ１３１Ｍ１−１、１３１Ｍ１−２を示す。インバータ１３１Ｍ１−１は、第１回路の一例であり、インバータ１３１Ｍ１−２は、第２回路の一例である。
【０１０９】
インバータ１３１Ｍ１は、一例として、１２８個のインバータ素子がセレクタと交互に接続された回路であり、入力信号に対して１２８通りの遅延時間を与えることができる回路である。各インバータ素子が入力信号に与える遅延時間は、各インバータ素子の抵抗値（Ｒ）と容量値（Ｃ）とに基づく時定数ＲＣによって決まり、製造ばらつきに起因する抵抗値（Ｒ）と容量値（Ｃ）が存在するため、時定数ＲＣにもばらつきが存在する。
【０１１０】
また、各インバータ素子が入力信号に与える遅延時間には、インバータ１３１Ｍ１に接続される接合部１２０の抵抗値及び容量値のばらつきによるばらつきが含まれる。
【０１１１】
このため、電子装置１００Ｍ１は、インバータ１３１Ｍ１及び接合部１２０の時定数ＲＣのばらつきを利用して、認証コードを生成する。インバータ１３１Ｍ１の場合、計測回路１３２で抵抗値（Ｒ）と容量値（Ｃ）を別々に計測するのではなく、時定数ＲＣを計測するため、電子装置１００が生成する第１コード及び第２コードのうちの一方のみが存在することになる。このため、電子装置１００Ｍ１が時定数ＲＣから生成する認証コードは、電子装置１００が生成する認証コードに比べると、桁数が半分になる。
【０１１２】
具体的には、１２８個のインバータ素子を有するインバータ１３１Ｍ１−１、１３１Ｍ１−２を用いる場合には、２５６桁の認証コードを生成することになる。
【０１１３】
認証コードは、接合部１２０−１及び１２０−２に接続される２つのインバータ１３１Ｍ１−１、１３１Ｍ１−２の固有の時定数ＲＣに基づいて生成されるため、同一データを生成することが略不可能なデータであり、ＰＵＦによって生成されたデータとして利用することができる、非常にセキュリティレベルの高いデータである。
【０１１４】
なお、認証コードの桁数を増やす場合には、認証コードの生成に利用するインバータ１３１Ｍ１の数を増やせばよい。
【０１１５】
また、以上では、半導体チップ１３０が計測回路１３２と認証コード生成回路１３３を有する形態について説明したが、配線基板１１０に設けられていてもよい。図１２は、実施の形態の変形例の電子装置１００Ｍ２を示す断面図である。
【０１１６】
電子装置１００Ｍ２は、配線基板１１０Ｍ、接合部１２０Ｍ、及び半導体チップ１３０Ｍ２を含む。配線基板１１０Ｍは、Ｎ個の計測回路１１１Ｍと１個の認証コード生成回路１１２Ｍを有する。半導体チップ１３０Ｍ２は、Ｎ個のＳＲＡＭ１３１Ｍ２を有する。図１２には、Ｎ個のＳＲＡＭ１３１Ｍ２のうちのＳＲＡＭ１３１Ｍ２−１、１３１Ｍ２−２を示す。Ｎ個のＳＲＡＭ１３１Ｍ２は、１つのＳＲＡＭのチップに含まれるメモリ素子を電気的に分離されたＮ個の領域に分割したものである。
【０１１７】
接合部１２０Ｍは、Ｎ個のＳＲＡＭ１３１Ｍ２に対応して設けられており、各ＳＲＡＭ１３１Ｍ２の１２８個のピンを配線基板１１０Ｍの計測回路１１１Ｍに接続している。図１２には、Ｎ個の接合部１２０Ｍのうちの接合部１２０Ｍ−１、１２０Ｍ−２を示す。なお、図１２では、電源Ｖｄｄを省略する。
【０１１８】
Ｎ個の計測回路１１１Ｍは、Ｎ個の接合部１２０Ｍ及びＮ個のＳＲＡＭ１３１Ｍ２の抵抗値及び容量値を計測し、認証コード生成回路１１２Ｍに出力する。認証コード生成回路１１２Ｍは、Ｎ個の接合部１２０Ｍ及びＮ個のＳＲＡＭ１３１Ｍ２の抵抗値及び容量値に基づいて、認証コードを生成する。
【０１１９】
このように、電子装置１００Ｍ２は、配線基板１１０Ｍに計測回路１１１Ｍと認証コード生成回路１１２Ｍが設けられている構成であってもよく、接合部１２０Ｍ及びＳＲＡＭ１３１Ｍ２の抵抗値及び容量値のばらつきを利用して、電子装置１００(図１参照)と同様に認証コードを生成することができる。
【０１２０】
以上、本発明の例示的な実施の形態の電子装置について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形又は変更が可能である。
【０１２１】
以上の実施の形態に関し、さらに以下の付記を開示する。
(付記１）
第１回路と、
第２回路と、
前記第１回路に電気的に接続される第１接合部と、
前記第２回路に電気的に接続される第２接合部と、
前記第１回路又は前記第１接合部に接続され、前記第１回路及び前記第１接合部の第１電気特性を計測する第１計測回路と、
前記第２回路又は前記第２接合部に接続され、前記第２回路及び前記第２接合部の第２電気特性を計測する第２計測回路と、
前記第１計測回路及び前記第２計測回路に接続され、前記第１計測回路及び前記第２計測回路によってそれぞれ計測された前記第１電気特性及び前記第２電気特性に基づいて識別子を生成する識別子生成部と
を含む、電子装置。
(付記２）
前記第１電気特性は、前記第１回路及び前記第１接合部の抵抗値及び容量値であり、前記第２電気特性は、前記第２回路及び前記第２接合部の抵抗値及び容量値である、付記１記載の電子装置。
(付記３）
前記第１接合部及び前記第２接合部を介して前記第１回路及び前記第２回路に電気的にそれぞれ接続される配線基板をさらに含み、
前記第１接合部、前記第１回路、及び前記第１計測回路がこの順番で接続される第１接続回路と、前記第２接合部、前記第２回路、及び前記第２計測回路がこの順番で接続される第２接続回路とは、前記識別子生成部と前記配線基板との間で並列に接続される、付記１又は２記載の電子装置。
(付記４）
前記第１接合部及び前記第２接合部は、バンプ、ビア、又はパッドである、付記１乃至３のいずれか一項記載の電子装置。
(付記５）
前記第１回路と前記第２回路は、１つの半導体チップの内部で電気的に分離された回路である、付記１乃至４のいずれか一項記載の電子装置。
(付記６）
前記識別子生成部は、前記半導体チップに設けられる、付記５記載の電子装置。
(付記７）
前記識別子生成部、前記第１計測回路、及び前記第２計測回路が実装される配線基板をさらに含み、
前記第１計測回路には、前記第１接合部を介して前記第１回路が接続され、
前記第２計測回路には、前記第２接合部を介して前記第２回路が接続される、付記１又は２記載の電子装置。
(付記８）
前記第１回路と前記第２回路は、１つの半導体チップの内部で電気的に分離された回路である、付記７記載の電子装置。
【符号の説明】
【０１２２】
１００  電子装置
１１０  配線基板
１２０、１２０−１、１２０−２  接合部
１３０、１３０Ｍ１、１３０Ｍ２  半導体チップ
１３１、１３１−１、１３１−２  ＳＲＡＭ
１３２、１３２−１、１３２−２  計測回路
１３３  認証コード生成回路
１３４  封止部
１００Ｍ１  電子装置
１３０Ｍ１  半導体チップ
１３１Ｍ１、１３１Ｍ１−１、１３１Ｍ１−２  インバータ
１００Ｍ２  電子装置
１１０Ｍ  配線基板
１２０Ｍ、１２０Ｍ−１、１２０Ｍ−２  接合部
１３０Ｍ２  半導体チップ
１３１Ｍ２、１３１Ｍ２−１、１３１Ｍ２−２  ＳＲＡＭ
【図１】
2019213015.tif 000003
【図２】
2019213015.tif 000004
【図３】
2019213015.tif 000005
【図４】
2019213015.tif 000006
【図５】
2019213015.tif 000007
【図６】
2019213015.tif 000008
【図７】
2019213015.tif 000009
【図８】
2019213015.tif 000010
【図９】
2019213015.tif 000011
【図１０】
2019213015.tif 000012
【図１１】
2019213015.tif 000013
【図１２】
2019213015.tif 000014