(57)【要約】      （修正有）【課題】環境の変化を受けにくく、特性劣化の小さい、安定性のあるPUF(Physical Unclonable Function)を生成する情報処理装置を提供する。【解決手段】所定の素子からの出力データを複数回読み込む出力データ取得部１０２と、出力データ取得部１０２で読み込まれた出力データの平均値を算出する平均値算出部１０３と、平均値算出部１０３で算出された平均値の中央値を算出する中央値算出部１０４と、中央値と平均値を比較することでPUFを生成するPUF生成部１００とを備える。所定の素子は、イメージセンサであり、出力データ取得部１０２は、イメージセンサが遮光された状態のときに、イメージセンサからの出力データを読み込む。【選択図】図６
2017118229.tif 000002
【特許請求の範囲】
【請求項１】
所定の素子からの出力データを複数回読み込む読み込み部と、
前記読み込み部で読み込まれた前記出力データの平均値を算出する平均値算出部と、
前記平均値算出部で算出された前記平均値の中央値を算出する中央値算出部と、
前記中央値と前記平均値を比較することでPUF(Physical Unclonable Function)を生成するPUF生成部と
を備える情報処理装置。
【請求項２】
前記所定の素子は、イメージセンサであり、
前記読み込み部は、前記イメージセンサが遮光された状態のときに、前記イメージセンサからの前記出力データを読み込む
請求項１に記載の情報処理装置。
【請求項３】
前記所定の素子は、OPB（optical black）領域内のイメージセンサである
請求項１に記載の情報処理装置。
【請求項４】
前記所定の素子は、イメージセンサであり、
前記読み込み部は、メカシャッタが閉じられた状態のときに、前記イメージセンサからの前記出力データを読み込む
請求項１に記載の情報処理装置。
【請求項５】
前記所定の素子は、記憶素子である
請求項１に記載の情報処理装置。
【請求項６】
前記PUF生成部は、前記平均値が前記中央値よりも大きい場合、第１の値に変換し、前記平均値が前記中央値よりも小さい場合、第２の値に変換することで、前記PUFを生成する
請求項１に記載の情報処理装置。
【請求項７】
温度と前記中央値が関連付けられたテーブルを記憶し、
前記PUF生成部は、計測された温度に関連付けられている中央値を前記テーブルから読み出し、前記平均値と比較することで、前記PUFを生成する
請求項１に記載の情報処理装置。
【請求項８】
半導体ICである
請求項１に記載の情報処理装置。
【請求項９】
他の装置からの指示があったとき、前記PUFを生成する
請求項１に記載の情報処理装置。
【請求項１０】
前記所定の素子は、イメージセンサであり、
前記PUF生成部で生成されたPUFは、前記イメージセンサで撮像された画像のデータに含ませられる
請求項１に記載の情報処理装置。
【請求項１１】
所定の素子からの出力データを複数回読み込み、
読み込まれた前記出力データの平均値を算出し、
算出された前記平均値の中央値を算出し、
前記中央値と前記平均値を比較することでPUF(Physical Unclonable Function)を生成する
ステップを含む情報処理方法。
【請求項１２】
コンピュータに、
所定の素子からの出力データを複数回読み込み、
読み込まれた前記出力データの平均値を算出し、
算出された前記平均値の中央値を算出し、
前記中央値と前記平均値を比較することでPUF(Physical Unclonable Function)を生成する
ステップを含む処理を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法、プログラムに関し、特に、環境の変化を受けにくく、特性劣化の小さい、安定性のあるPUF(Physical Unclonable Function)を生成することができるようにした情報処理装置、情報処理方法、プログラムに関する。
【背景技術】
【０００２】
近年、ICタグ、認証セキュリティシステム、LSIの偽造防止等にPUFが用いられている。例として、SRAMを用いたSmart Card（非特許文献１）やアービターPUFがある。また、製品化には至っていないものとして、RTN(Random Telegraph Noise)を利用したPUF技術（非特許文献２）が報告されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】<Protecting next-generation Smart Card ICs with SRAM-based PUFs,Document order number: 9397 750 17366,www.nxp.com,February 2013>
【非特許文献２】<Jiezhi Chen, Tetsufumi Tanamoto, Hiroki Noguchi and Yuichiro Mitani, ”Further Investigations on Traps Stabilities in Random Telegraph Signal Noise and the Application to a Novel Concept Physical Unclonable Function (PUF) with Robust Reliabilities”, Toshiba Corporation, VLSI Technology (VLSI Technology), 2015 Symposium on,T40 - T41,16-18 June 2015>
【発明の概要】
【発明が解決しようとする課題】
【０００４】
提案されているPUFの技術には、SRAMセルの電源投入直後のビットパターンを利用するもの、トランジスタの閾値電圧のばらつきによる信号遅延時間の差を利用するものなどがある。しかしながら、SRAM遅延を利用した技術の場合、トランジスタの閾値ばらつきを利用するため電気的ストレスにより酸化膜品質に経時劣化が起こるなどの要因から、設定したIDが徐々に変化する可能性があった。
【０００５】
また、RTNを用いたPUFの技術では、高温化においてRTN特性がランダムに変化してしまう可能性がある。また信号が微弱であるため、微小電流読み出し用に回路が別途必要となる。
【０００６】
本開示は、このような状況に鑑みてなされたものであり、環境の変化を受けにくく、特性劣化の小さい、安定性のあるPUFを生成することができるものである。
【課題を解決するための手段】
【０００７】
本技術の一側面の情報処理装置は、所定の素子からの出力データを複数回読み込む読み込み部と、前記読み込み部で読み込まれた前記出力データの平均値を算出する平均値算出部と、前記平均値算出部で算出された前記平均値の中央値を算出する中央値算出部と、前記中央値と前記平均値を比較することでPUF(Physical Unclonable Function)を生成するPUF生成部とを備える。
【０００８】
本技術の一側面の情報処理方法は、所定の素子からの出力データを複数回読み込み、読み込まれた前記出力データの平均値を算出し、算出された前記平均値の中央値を算出し、前記中央値と前記平均値を比較することでPUF(Physical Unclonable Function)を生成するステップを含む。
【０００９】
本技術の一側面のプログラムは、コンピュータに、所定の素子からの出力データを複数回読み込み、読み込まれた前記出力データの平均値を算出し、算出された前記平均値の中央値を算出し、前記中央値と前記平均値を比較することでPUF(Physical Unclonable Function)を生成するステップを含む処理を実行させるためのプログラムである。
【００１０】
本技術の一側面の情報処理装置、情報処理方法、並びにプログラムにおいては、所定の素子からの出力データが複数回読み込まれ、読み込まれた出力データの平均値が算出され、算出された平均値の中央値が算出され、中央値と平均値が比較されることでPUFが生成される。
【発明の効果】
【００１１】
本技術の一側面によれば、環境の変化を受けにくく、特性劣化の小さい、安定性のあるPUFを生成することができる。
【００１２】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【００１３】
【図１】本技術を適用した情報処理システムの一実施の形態の構成を示す図である。
【図２】撮像装置の構成を示す図である。
【図３】イメージセンサの構成を示す図である。
【図４】画素の断面図である。
【図５】画素部の構成について説明するための図である。
【図６】PUF生成部の構成について説明するための図である。
【図７】PUF処理装置の構成について説明するための図である。
【図８】第１のPUFの生成処理について説明するためのフローチャートである。
【図９】第２のPUFの生成処理について説明するためのフローチャートである。
【図１０】テーブルの作成処理について説明するためのフローチャートである。
【図１１】PUFの生成処理について説明するためのフローチャートである。
【図１２】第３のPUFの生成処理について説明するためのフローチャートである。
【図１３】判定処理について説明するためのフローチャートである。
【図１４】メモリの構成を示す図である。
【図１５】記憶素子の構造について説明するための図である。
【図１６】イメージセンサの使用例について説明するための図である。
【発明を実施するための形態】
【００１４】
以下に、本技術を実施するための形態（以下、実施の形態という）について説明する。
【００１５】
以下に説明する本技術は、PUF（Physical unclonable function）を生成し、その生成されたPUFをセキュリティ技術などに適用するときなどに適用できる。PUFとは、例えば、ICチップの製造工程にて発生する、シリコンの結晶パターンなどによる個体差を、PUFとしてデジタル情報に変換し、ICチップを識別することができる技術である。
【００１６】
PUFは、発生パターンが予測困難であり、かつ恒久的に維持されるという特長があるため、半導体の回路パターンが不正コピーされても、PUFを複製することは困難である。このような特徴をいかし、PUF技術は特別な暗号技術を用いることなく、低コストでありながら高度な真贋判定や偽造防止などのセキュリティ技術として活用できる。
【００１７】
以下の説明においては、PUFを、イメージセンサ（撮像素子）を用いて生成する場合を例に挙げて説明する。またイメージセンサ以外の、例えば、メモリなどに対しても本技術を適用でき、メモリなどに対して本技術を適用した場合についても後述する。
【００１８】
＜情報処理システムの構成＞
図１は、本技術が適用される情報処理システムの一実施の形態の構成を示す図である。図１に示した情報処理システムは、撮像装置１１とPUF処理装置１３を含む。撮像装置１１は、デジタルスチルカメラなど画像を撮像する装置であり、イメージセンサを含む構成とされている。撮像装置１１は、画像を撮像し、画像データ１２を生成する。
【００１９】
撮像装置１１は、所定のタイミング、例えば、撮像装置１１の電源がオンにされたタイミング、画像が撮像されるタイミング、画像が撮像され、画像データ１２が所定の記憶部に記憶されるタイミングなどに、PUF２１を生成し、画像データ１２に含ませる。画像データ１２にPUF２１を含ませる場合、例えば、撮像されたときの日時や露光情報などの撮像情報とともに含ませることができる。
【００２０】
PUF処理装置１３は、撮像装置１１から得られるPUF２２と画像データ１２に含まれるPUF２１を比較することで、画像データ１２が、撮像装置１１で撮像された画像であるか否かの判定を行う。PUF処理装置１３が判定を行うとき、PUF処理装置１３は、撮像装置１１に対してPUFの生成を指示し、その結果、撮像装置１１側で生成されたPUF２２を、PUF処理装置１３は取得する。
【００２１】
なおここで示したPUFの使用例は一例である。PUF処理装置１３でPUFを用いた判定を行う以外のPUFを用いた処理が行われるように構成することも可能である。
【００２２】
また、撮像装置１１とPUF処理装置１３との通信は、NFC（Near Field Communication）を用いて行うことができる。NFCは、ISOで規定された国際標準の近距離無線通信技術であり、タイプA、タイプB、FeliCa（登録商標）、ISO15693の通信方式に対応し、非接触ICカード機能やリーダ／ライタ機能、端末間通信機能などが利用できる通信方式である。
【００２３】
＜撮像装置の構成＞
図２は、撮像装置１１の構成例を示す図である。図２の撮像装置１１は、例えば、デジタルスチルカメラやビデオカメラ等の撮像装置や、スマートフォンやタブレット型端末等の携帯端末装置などの電子機器である。
【００２４】
図２において、撮像装置１１は、イメージセンサ３１、DSP回路３２、表示部３３、操作部３４、フレームメモリ３５、記録部３６、及び、電源部３７から構成される。また、撮像装置１１において、DSP回路３２、表示部３３、操作部３４、フレームメモリ３５、記録部３６、及び、電源部３７は、バスライン３８を介して相互に接続されている。
【００２５】
イメージセンサ３１は、図３を参照して後述するような構成を有している。イメージセンサ３１は、光学レンズ系（不図示）を介して被写体からの入射光（像光）を取り込んで、撮像面上に結像された入射光の光量を画素単位で電気信号に変換して画素信号として出力する。
【００２６】
DSP回路３２は、イメージセンサ３１から供給される信号を処理する信号処理回路である。DSP回路３２は、イメージセンサ３１からの信号を処理して得られる画像データを出力する。フレームメモリ３５は、DSP回路３２により処理された画像データを、フレーム単位で一時的に保持する。
【００２７】
表示部３３は、例えば、液晶パネルや有機ＥＬ（Electro Luminescence）パネル等のパネル型表示装置からなり、イメージセンサ３１で撮像された動画又は静止画を表示する。記録部３６は、イメージセンサ３１で撮像された動画又は静止画の画像データを、半導体メモリやハードディスク等の記録媒体に記録する。
【００２８】
操作部３４は、ユーザによる操作に従い、撮像装置１１が有する各種の機能についての操作指令を出力する。電源部３７は、DSP回路３２、フレームメモリ３５、表示部３３、記録部３６、及び、操作部３４の動作電源となる各種の電源を、これら供給対象に対して適宜供給する。
【００２９】
＜イメージセンサの構成＞
図３に、イメージセンサ３１の構成例を示す。図３に示したイメージセンサ３１は、ＣＭＯＳイメージセンサである。本例のイメージセンサ３１は、図３に示すように、半導体基板、例えばシリコン基板に光電変換部を含む複数の画素４２が規則的に２次元的に配列された画素部４３と、周辺回路部とを有して構成される。画素４２は、光電変換部と、複数の画素トランジスタ（いわゆるＭＯＳトランジスタ）を有して成る。
【００３０】
複数の画素トランジスタは、例えば転送トランジスタ、リセットトランジスタおよび増幅トランジスタの３つのトランジスタで構成することができる。その他、選択トランジスタ追加して４つのトランジスタで構成することもできる。単位画素の等価回路は通常と同様であるので、詳細説明は省略する。また、画素としては、複数の光電変換部が転送トランジスタを除く他の画素トランジスタを共有し、且つフローティングディフージョンを共有する、いわゆる画素共有構造を適用することもできる。
【００３１】
周辺回路部は、垂直駆動回路４４と、カラム信号処理回路４５と、水平駆動回路４６と、出力回路４７と、制御回路４８などを有して構成される。
【００３２】
制御回路４８は、入力クロックと、動作モードなどを指令するデータを受け取り、また撮像装置１１の内部情報などのデータを出力する。すなわち、制御回路４８では、垂直同期信号、水平同期信号およびマスタクロックに基づいて、垂直駆動回路４４、カラム信号処理回路４５および水平駆動回路４６などの動作の基準となるクロック信号や制御信号を生成する。そして、これらの信号を垂直駆動回路４４、カラム信号処理回路４５および水平駆動回路４６等に入力する。
【００３３】
垂直駆動回路４４は、例えばシフトレジスタによって構成され、画素駆動配線を選択し、選択された画素駆動配線に画素を駆動するためのパルスを供給し、行単位で画素を駆動する。すなわち、垂直駆動回路４４は、画素部４３の各画素４２を行単位で順次垂直方向に選択走査し、垂直信号線４９を通して各画素４２の光電変換素子となる例えばフォトダイオードにおいて受光量に応じて生成した信号電荷に基づく画素信号をカラム信号処理回路４５に供給する。
【００３４】
カラム信号処理回路４５は、画素４２の例えば列ごとに配置されており、１行分の画素４２から出力される信号を画素列ごとにノイズ除去などの信号処理を行う。すなわちカラム信号処理回路４５は、画素４２固有の固定パターンノイズを除去するためのＣＤＳや、信号増幅、ＡＤ変換等の信号処理を行う。カラム信号処理回路４５の出力段には水平選択スイッチ（図示せず）が水平信号線５０との間に接続されて設けられる。
【００３５】
水平駆動回路４６は、例えばシフトレジスタによって構成され、水平走査パルスを順次出力することによって、カラム信号処理回路４５の各々を順番に選択し、カラム信号処理回路４５の各々から画素信号を水平信号線５０に出力させる。
【００３６】
出力回路４７は、カラム信号処理回路４５の各々から水平信号線５０を通して順次に供給される信号に対し、信号処理を行って出力する。例えば、バッファリングだけする場合もあるし、黒レベル調整、列ばらつき補正、各種デジタル信号処理などが行われる場合もある。入出力端子５１は、外部と信号のやりとりをする。
【００３７】
＜画素の構造＞
図４は、図２の画素４２の構造を模式的に示す断面図である。図４の画素４２は、裏面照射型のＣＭＯＳイメージセンサを構成している。
【００３８】
以下に説明する図４に示した構成は一例であり、他の構成、例えば、以下に説明する各層だけでなく、他の層が追加されたり、または以下に説明する層のうちのいずれかの層が削除されたりするような構成であっても、以下に説明する本技術は適用できる。
【００３９】
また、ここでは、裏面照射型のＣＭＯＳイメージセンサを例に挙げて説明するが、表面照射型のイメージセンサや、有機光電膜を含む縦型分光型のイメージセンサなどにも本技術は適用できる。また、画素部と周辺部が同一チップ内に形成されているイメージセンサ、画素部と周辺部が異なるチップに形成され，それらのチップが積層されている積層型イメージセンサなどにも本技術は適用できる。
【００４０】
図４に示した画素４２においては、支持基板６１の上に、絶縁層と金属からなる配線層６２が配置され、配線層６２の上にシリコン基板６３が配置されている。支持基板６１は、シリコン、ガラスエポキシ、ガラス、プラスチックなどが用いられる。シリコン基板６３には、各画素の光電変換部としての複数のフォトダイオード６４（光学素子）が、所定の間隔で形成されている。
【００４１】
シリコン基板６３及びフォトダイオード６４の上には、絶縁物からなる保護膜６５が形成されている。保護膜６５の上には、隣接する画素への光の漏れ込みを防止するための遮光膜６６が、隣接するフォトダイオード６４の間に形成されている。
【００４２】
保護膜６５及び遮光膜６６の上には、カラーフィルタを形成する領域を平坦化するための平坦化膜６７が形成されている。平坦化膜６７の上には、カラーフィルタ層６８が形成されている。カラーフィルタ層６８には、複数のカラーフィルタが画素毎に設けられており、各カラーフィルタの色は、例えば、ベイヤ配列に従って並べられている。
【００４３】
カラーフィルタ層６８の上には、第１の有機材料層６９が形成されている。この第１の有機材料層６９は、アクリル系樹脂材料、スチレン系樹脂材料、エポキシ系樹脂材料などが用いられる。第１の有機材料層６９の上には、マイクロレンズ７０が形成されている。
【００４４】
マイクロレンズ７０上部には、カバーガラス７１が第２の有機材料層７２を介して接着されている。カバーガラス７１は、ガラスに限らず、樹脂などの透明板が用いられても良い。マイクロレンズ７０とカバーガラス７１との間に、水分や不純物の浸入を防止するための保護膜が形成されてもよい。第２の有機材料層７２は、第１の有機材料層６９と同じく、アクリル系樹脂材料、スチレン系樹脂材料、エポキシ系樹脂材料などが用いられる。
【００４５】
＜画素部の構成＞
図５は、画素部４３の構成を示す図である。画素部４３は、有効画素領域９１と遮光画素領域（以下、OPB（optical black）領域９２と記述する）とから構成されている。有効画素領域９１は、画素部４３の大部分を占め、画像信号として出力するための実データを検出するための画素が配列されている領域であり、そのサイズは出力する画像信号の画角に応じて決定される。
【００４６】
OPB領域９２は、画素部４３の一端を占め、有効画素領域９１で検出される画像信号を補正するための補正データを検出するための画素が配列されている領域であり、そのサイズを大きくすることにより補正データの精度を上げることができる。
【００４７】
なお、ここでは図５に示したように、有効画素領域９１の一端にOPB領域９２が設けられている例を挙げて説明を続けるが、OPB領域９２を、有効画素領域９１の両端に設けた構成や、縦方向と横方向にそれぞれ設けた構成とすることもできる。また以下に説明する本技術は、OPB領域９２が設けられている位置や大きさによらず適用可能である。
【００４８】
OPB領域９２は、有効画素領域９１で得られる画素信号の輝度レベルを決定するための基準となる黒基準レベルを得るために設けられている領域である。OPB領域９２は、遮光膜（金属による遮光板など）で入射光を遮蔽した領域に設けられた画素４２であり、この画素４２から得られる信号レベルを黒基準として採用し、上記したように輝度レベルが決定される。
【００４９】
OPB領域９２内の画素４２は、遮光された画素であるため、外因に左右されない画素である。OPB領域９２内の画素４２に対して、有効画素領域９１内の画素４２は、入射光に応じて光を電気信号に変換するために開口されており、入射光の強度により出力信号が変化し、外因に左右される画素である。
【００５０】
以下に説明するPUFの生成の一例として、イメージセンサ３１内のOPB領域９２内に配置されている画素４２からの信号を用いて行われる例を挙げて説明する。上記したように、OPB領域９２内に配置されている画素４２は、外因に左右されないため、外因に左右されずにPUFを生成することが可能となる。またPUFは、イメージセンサ３１を形成する部分の半導体中の欠陥のバラつきにより各画素４２からの出力データが異なることを利用して生成される。この半導体中の欠陥の箇所、大きさ、個数などは、温度に依存しないため、そのような半導体中の欠陥を利用して生成するPUFも、温度に依存せずに生成することが可能となる。さらに、経時劣化が起きづらいため、時間経過によらず変わらないPUFを生成することができる。
【００５１】
また、イメージセンサ３１の一部として設けられているOPB領域９２内の画素からの信号を用いてPUFを生成するため、PUFを生成するための新たな回路などを追加するようなことなく、既存の構成を応用することで、PUFを生成することが可能となる。
【００５２】
なお、温度変化や時間の経過によらず、変わらないPUFを生成することができるとは、例えば、PUF処理装置１３でPUFを用いた判定を行うとき、その判定が同一の結果となる範囲内での変化は含まれる。換言すれば、例えば、所定の温度のときのPUF（第１のPUFとする）とその温度よりも高い温度のときのPUF（第２のPUFとする）を比較したとき、第１のPUFと第２のPUFは全く同じである場合は勿論、第１のPUFと第２のPUFは異なるが誤差（許容範囲）内であり、判定結果としては、第１のPUFと第２のPUFは同一であると判定される場合も含まれる。
【００５３】
＜撮像装置の機能＞
図６は、撮像装置１１の機能ブロック図である。撮像装置１１は、PUFの生成に関わる機能としてPUF生成部１００を備え、PUF生成部１００は、PUF生成指示部１０１、出力データ取得部１０２、平均値算出部１０３、中央値算出部１０４、変換部１０５、および出力部１０６を含む。
【００５４】
図６に示したPUF生成部１００は、撮像装置１１のPUFの生成に関わる機能であり、撮像装置１１は、撮像する機能など他の機能を有していることは言うまでもない。また、ここでは、撮像装置１１が、PUFの生成に関わる機能を有しているとして説明を続けるが、図６に示した機能を有するPUF生成部１００として単体で構成される情報処理装置であっても良い。
【００５５】
またPUF生成部１００を構成する情報処理装置は、半導体ICとすることも可能である。また、PUF生成部１００は、コンピュータに所定のプログラムを実行させることで実現される機能とすることも可能である。
【００５６】
PUF生成指示部１０１は、図６内の各機能に対してPUFの生成を指示する。PUF生成指示部１０１は、例えば、撮像装置１１が起動されたタイミング、画像が撮像されたタイミング、画像データが記録部３６（図２）に記録されるタイミング、PUF処理装置１３から指示があったタイミングなどのタイミングで、PUFの生成指示を出す。
【００５７】
出力データ取得部１０２は、OPB領域９２内の画素４２からの出力データを取得する。出力データ取得部１０２による出力データの取得は、１回のPUFの生成において、複数回行われる。例えば、１０回行われるとして以下の説明を続ける。なお、後述するように、有効画素領域９１内の画素４２からの出力データで、PUFを生成する場合、出力データ取得部１０２は、有効画素領域９１内の画素４２からの出力データを取得する。また後述するように、メモリなどからの出力データを取得し、PUFを生成するように構成することも可能であり、そのようにした場合、出力データ取得部１０２は、メモリからの出力データを取得する。
【００５８】
平均値算出部１０３は、OPB領域９２内の同一画素４２から１０回読み出された出力データの平均値を、画素４２毎に算出する。
【００５９】
中央値算出部１０４は、平均値算出部１０３で算出された平均値の集合から、中央値を算出する。
【００６０】
変換部１０５は、中央値と各画素４２の平均値を比較し、中央値よりも大きい平均値を１に変換し、中央値よりも小さい平均値を０に変換する。なおここでは、中央値よりも大きい平均値を１に変換し、中央値よりも小さい平均値を０に変換するとして説明を続けるが、中央値よりも大きい平均値を０に変換し、中央値よりも小さい平均値を１に変換するようにしても良い。また、中央値と同じ平均値は、１に変換するように設定しても、０に変換するように設定しても、どちらに設定しても良い。
【００６１】
出力部１０６は、生成されたPUFを出力する。例えば、撮像された画像の画像データ１２に含ませる場合、画像データ１２が出力（記録）されるときに、その画像データ１２に含まれるように出力される。また、PUF処理装置１３からの指示によりPUFが生成された場合、PUF処理装置１３に対して出力される。
【００６２】
＜PUF処理装置の機能＞
次に、PUF処理装置１３の機能について説明を加える。図７は、PUF処理装置１３の機能ブロックである。PUF処理装置１３は、PUF生成指示部１５１、PUF取得部１５２、比較部１５３、および判定部１５４を含む構成とされている。
【００６３】
PUF生成指示部１５１は、撮像装置１１に対してPUFの生成を指示する。撮像装置１１は、PUF処理装置１３のPUF生成指示部１５１からPUFの生成の指示があった場合、PUFを生成する。このように、撮像装置１１は、指示があったときにPUFを生成する構成とされ、PUFを記憶している構成とはされていない。PUFを記憶しない構成とすることで、撮像装置１１からPUFが不正に読み出されることを防ぐことが可能となる。
【００６４】
PUF取得部１５２は、PUF生成指示部１５１の指示により、撮像装置１１側で生成されたPUF２２（図１）を取得する。またPUF取得部１５２は、画像データ１２に含まれるPUF２１（図１）も取得する。
【００６５】
比較部１５３は、PUF取得部１５２で取得されたPUF２１とPUF２２を比較する。その比較結果は、判定部１５４に供給される。
【００６６】
判定部１５４は、供給された比較結果を参照し、PUF２１とPUF２２が同一である、または同一ではないとの判定結果を出し、図示していない後段の処理部や、判定結果を表示する表示部などに出力する。
【００６７】
比較の結果、PUF２１とPUF２２が同一であると判定された場合、PUF２１を含む画像データ１２は、PUF２２を供給してきた撮像装置１１で撮像された画像の画像データであると判定できる。また、PUF２１とPUF２２が同一ではないと判定された場合、PUF２１を含む画像データ１２は、PUF２２を供給してきた撮像装置１１で撮像された画像の画像データではないと判定できる。
【００６８】
＜第１のPUFの生成処理＞
図８に示したフローチャートを参照し、図６に示したPUF生成部１００で行われる第１のPUFの生成処理について説明を加える。
【００６９】
図８に示したフローチャートの処理は、PUF生成指示部１０１から、PUF生成の指示が出されたときに開始される。PUF生成指示部１０１から、PUF生成の指示が出されるのは、上記したようなタイミングである。
【００７０】
ステップＳ１０１において、出力データ取得部１０２は、OPB領域９２内の各画素４２から、所定の回数だけ、出力データを読み込む。例えば、所定の回数とは、１０回である。この場合、出力データ取得部１０２は、１０回、OPB領域９２内の各画素４２からの出力データを読み込む。
【００７１】
なお、出力データが読み出される画素４２は、OPB領域９２内の全画素が対象とされても良いし、OPB領域９２内の所定数の画素が対象とされても良い。
【００７２】
ステップＳ１０２において、平均値算出部１０３により、各画素４２から取得された出力データの平均値が算出される。例えば、ここでは１０回の出力データの読み込みが行われるため、１０回の読み込みで読み込まれた出力データの平均値が算出される。
【００７３】
平均値（平均画素出力）を算出するのは、ランダムな成分による出力のバラつきを除外するためである。よって、出力データの読み込み回数は、ランダムな成分による出力のバラつきを除外できる回数であれば良く、上記した１０回に限らない。また、平均値以外の方法で、ランダムな成分による出力のバラつきが除外される方法を適用することも可能である。
【００７４】
ステップＳ１０３において、中央値算出部１０４により、算出された各画素４２の出力データの平均値の集合から、中央値が算出される。例えば、OPB領域９２内の１００個の画素４２から出力データが読み込まれ、１００個の画素４２の出力データの平均値が算出された場合、１００個の平均値の中央値が算出される。
【００７５】
中央値は、例えば、１００個の平均値の平均値が算出されることで算出されるようにしても良い。または１００個の平均値のうち、最も高い頻度で算出された平均値を中央値としても良い。
【００７６】
ステップＳ１０４において、変換部１０５により、中央値と各画素４２の平均値が比較されることで、PUFが生成される。具体的には、中央値と各画素４２の平均値を比較し、中央値よりも大きい平均値を１に変換し、中央値よりも小さい平均値を０に変換し、その変換後のデータ（データ列）がPUFとされる。
【００７７】
このようにしてPUFが生成される。すなわちイメージセンサ３１内のOPB領域９２内に配置されている画素４２（撮像素子）からの信号を用いてPUFが生成される。OPB領域９２内に配置されている画素４２は、外因に左右されないため、外因に左右されずにPUFを生成することが可能となる。
【００７８】
またPUFは、イメージセンサ３１を形成する部分の半導体中の欠陥のバラつきにより各画素４２からの出力データが異なることを利用して生成される。この半導体中の欠陥の箇所、大きさ、個数などは、温度に依存しないため、そのような半導体中の欠陥を利用して生成するPUFも、温度に依存せずに生成することが可能となる。さらに、経時劣化が起きづらいため、時間が経過によらず変わらないPUFを生成することができる。
【００７９】
また、イメージセンサ３１の一部として設けられているOPB領域９２内の画素からの信号を用いてPUFを生成するため、PUFを生成するための新たな回路などを追加するようなことなく、既存の構成を応用することで、PUFを生成することが可能となる。
【００８０】
＜第２のPUFの生成処理＞
次に、図９乃至図１１に示したフローチャートを参照し、図６に示したPUF生成部１００で行われる第２のPUFの生成処理について説明を加える。
【００８１】
第２のPUFの生成処理においては、テーブルが作成され、そのテーブルが参照されて、PUFが生成される。すなわち、ステップＳ２０１（図９）において、テーブルの作成処理が実行され、その処理にて作成されたテーブルが参照されて、ステップＳ２０２において、PUFの生成処理が実行される。
【００８２】
図１０は、ステップＳ２０１において実行されるテーブル作成処理について説明するためのフローチャートである。
【００８３】
ステップＳ２２１乃至Ｓ２２３の各処理は、中央値を導き出すための処理であり、ステップＳ１０１乃至Ｓ１０３（図８）と同様の処理であるため、その説明は省略する。ただし、ステップＳ２２１乃至Ｓ２２３の処理は、所定の温度下で行われ、その温度と算出された中央値が関連付けられてテーブルが作成される。
【００８４】
すなわち、ステップＳ２２４において、ステップＳ２２３の処理で算出された中央値が、その時点でのイメージセンサ３１の温度（イメージセンサ３１の周りの環境温度またはイメージセンサ３１の基板の温度）と関連付けられてテーブルに書き込まれる。
【００８５】
ステップＳ２２５において、テーブルは完成したか否かが判定される。テーブルは完成したと判定されるのは、テーブルに書き込む温度として設定されている全ての温度に対して、中央値を算出した場合である。例えば、温度として、０度から６０度までの５度おきの中央値を記憶したテーブルを作成したい場合、０度、５度、１０度、・・・６０度まで、順に中央値が算出され、テーブルに温度と関連付けられて書き込まれる。
【００８６】
このようにした場合、０度から６０度までの中央値がそれぞれ書き込まれたテーブルが作成されたか否かが判定されることで、ステップＳ２２５における判定処理が行われる。
【００８７】
ステップＳ２２５において、テーブルは完成していないと判定された場合、イメージセンサ３１の周りの温度（イメージセンサ３１の基板の温度）が変更され、変更後の温度下で、ステップＳ２２１乃至Ｓ２２４の処理が繰り返され、変更後の温度下での中央値が算出され、テーブルに書き込まれる。
【００８８】
一方、ステップＳ２２５において、テーブルは完成したと判定された場合、ステップＳ２２６に処理は進められ、作成されたテーブルがメモリなどの記憶部（不図示）に記憶される。テーブルが記憶される記憶部は、PUF生成部１００の機能の１つとして設けられ、撮像装置１１内（イメージセンサ３１内）に設けられているようにすることができる。
【００８９】
図１０に示したテーブルの作成処理は、イメージセンサ３１が製造されるとき（またはイメージセンサ３１を含む撮像装置１１が製造されるとき）に実行される。また、図１０に示したテーブルの作成処理は、１度だけ実行されれば良く、ステップＳ２０２（図９）におけるPUFの生成処理が実行される毎に行われる処理ではない。
【００９０】
また、ステップＳ２２５における判定は、PUF生成部１００（PUF生成部１００を含むイメージセンサ３１）の製造装置側（製造装置を管理している管理者）で行われる判定である。
【００９１】
テーブルを記憶している撮像装置１１に対してPUFの生成が指示されると、ステップＳ２０２において、PUFの生成処理が実行される。ステップＳ２０２において実行されるPUFの生成処理について、図１１のフローチャートを参照して説明する。
【００９２】
ステップＳ２４１乃至Ｓ２４４の各処理は、図８に示した第１のPUF生成処理と基本的に同様に行われるため、その詳細な説明は省略する。ただしステップＳ２４３において、中央値がテーブルから読み出される点が異なる。
【００９３】
ステップＳ２４３において、中央値算出部１０４は、既に算出され、テーブルに記載されている中央値を、テーブルから読み出す。読み出される中央値は、その時点での温度に関連付けられている中央値である。よって、イメージセンサ３１（撮像装置１１）は、温度を計測するためのセンサを備え、そのセンサで得られた温度に対応する中央値が、テーブルから読み出される。
【００９４】
このように、中央値が温度と関連付けられてテーブルに記憶され、PUFの生成時に、そのテーブルが参照されてPUFが生成されるようにすることも可能である。
【００９５】
第２のPUFの生成処理においては、温度と中央値が関連付けられたテーブルがイメージセンサ３１（撮像装置１１）で記憶されるが、仮に、イメージセンサ３１から、テーブルが不正に読み出されたとしても、その読み出されたテーブルからはPUFを生成することはできない。
【００９６】
PUFは、上記したように、OPB領域９２内の各画素の出力データの平均値が無ければ、生成することができないため、テーブルだけが不正に取得されてしまったとしても、PUFが生成されてしまうようなことを防ぐことが可能である。よって、PUFを用いたセキュリティなどに影響を与えることはない。よって、PUFをセキュリティに用いた場合であり、中央値が書き込まれたテーブルを用いるような場合であっても、セキュリティを低下させるようなことを防ぐことが可能である。
【００９７】
また、テーブル自体は、温度と中央値が１対１対応のテーブルであるため、テーブルを記憶するための記憶容量自体は小さくて良い。
【００９８】
このようにしてPUFが生成されるようにした場合も、イメージセンサ３１内のOPB領域９２内に配置されている画素４２からの信号を用いてPUFが生成されるため、外因に左右されずにPUFを生成することが可能である。
【００９９】
また温度と中央値を関連付けたテーブルを作成し、記憶し、PUFの生成時に参照されるようにすることで、温度変化により、PUFが変わるようなことがあっても、その変化を吸収したPUFの生成を行うことが可能となる。よって、温度変化によらず、PUFの生成や、生成されたPUFを用いた判定処理をより精度良く行うことが可能となる。
【０１００】
また上記した実施の形態と同じく、経時劣化が起きづらいため、時間経過によらないPUFを生成することができる。また、イメージセンサ３１の一部として設けられているOPB領域９２内の画素からの信号を用いてPUFを生成するため、PUFを生成するための新たな回路などを追加するようなことなく、既存の構成を応用することで、PUFを生成することが可能となる。
【０１０１】
＜第３のPUF生成処理＞
次に、図１２に示したフローチャートを参照し、図６に示したPUF生成部１００で行われる第３のPUFの生成処理について説明を加える。
【０１０２】
上述した第１、第２のPUFの生成処理は、PUFを生成するとき、OPB領域９２内の画素４２からの出力データを用いて生成した。第３のPUFの生成処理においては、有効画素領域９１内の画素４２からの出力データが用いられてPUFが生成される。
【０１０３】
有効画素領域９１内の画素４２からの出力データを用いてPUFを生成するため、第３のPUFの生成処理は、画素部４３が、図５に示したように有効画素領域９１とOPB領域９２を含む構成とされている場合と、画素部４３が、有効画素領域９１のみを有する構成とされている場合の両方に適用できる。
【０１０４】
画素部４３が、有効画素領域９１とOPB領域９２から構成される場合、有効画素領域９１内の画素４２が用いられてPUFが生成される。同じく、画素部４３が、有効画素領域９１のみから構成される場合、その有効画素領域９１内の画素４２が用いられてPUFが生成される。
【０１０５】
ステップＳ３０１において、メカシャッタが閉じた状態にされる。PUF生成指示部１０１は、PUFの生成の指示を出すとき、メカシャッタが閉じている状態であるか否かを確認し、開いている状態であれば、メカシャッタを制御する制御部（不図示）に対して、閉じるように指示を出す。
【０１０６】
ステップＳ３０２において、メカシャッタが閉じられた状態で、有効画素領域９１内の画素４２からの出力データが所定の回数だけ読み込まれる。この処理は、例えば、図８のステップＳ１０１の処理と同様であり、ステップＳ１０１では、OPB領域９２内の画素４２からの出力データが読み込まれたのに対して、ステップＳ３０２では、有効画素領域９１内の画素４２からの出力データが読み込まれる点が異なる。
【０１０７】
このように、メカシャッタが閉じられた状態で、有効画素領域９１内の画素４２からの出力データが読み込まれることで、遮光された状態で有効画素領域９１内の画素４２からの出力データを取得することができ、OPB領域９２内の画素４２からの出力データが読み込まれる場合と同様に、外因による影響がない状態で、画素４２からの出力データを取得することが可能となる。
【０１０８】
出力データが読み込まれる画素４２は、有効画素領域９１内の全ての画素４２を対象としても良いし、有効画素領域９１内の一部の画素４２を対象としても良い。また、上記した実施の形態と同じく、読み込みが行われる回数は、例えば、１０回である。
【０１０９】
ステップＳ３０３において、各画素４２の出力データの平均値が算出される。ステップＳ３０４において、平均値の中央値が算出される。そして、ステップＳ３０５において、中央値と平均値が比較され、PUFが生成される。
【０１１０】
ステップＳ３０３乃至Ｓ３０５における処理は、図８に示したステップＳ１０２乃至Ｓ１０４の処理と同様に行われるため、その詳細な説明は省略する。
【０１１１】
このようにしてPUFが生成されるようにした場合も、イメージセンサ３１内の有効画素領域９１内に配置されている画素４２からの信号であり、遮光した状態のときに得られる信号を用いてPUFが生成されるため、外因に左右されずにPUFを生成することが可能となる。
【０１１２】
またPUFは、イメージセンサ３１を形成する部分の半導体中の欠陥のバラつきにより各画素４２からの出力データが異なることを利用して生成される。この半導体中の欠陥の箇所、大きさ、個数などは、温度に依存しないため、そのような半導体中の欠陥を利用して生成するPUFも、温度に依存せずに生成することが可能となる。さらに、経時劣化が起きづらいため、時間が経過によらず変わらないPUFを生成することができる。
【０１１３】
また、イメージセンサ３１の一部として設けられている有効画素領域９１内の画素からの信号を用いてPUFを生成するため、PUFを生成するための新たな画素などを追加するようなことなく、既存の構成を応用することで、PUFを生成することが可能となる。
【０１１４】
なお、第２のPUFの生成処理と第３のPUFの生成処理を組み合わせても良い。すなわち、有効画素領域９１内の画素４２が用いられて、中央値と温度を関連付けたテーブルが作成され、そのテーブルが参照され、有効画素領域９１内の画素４２からの出力データの平均値が比較されることで、PUFが生成されるようにすることも可能である。
【０１１５】
なお、上記した実施の形態においては、画素部４３を構成する有効画素領域９１またはOPB領域９２内の画素４２を用いてPUFを生成する場合を例に挙げて説明したが、PUFを生成するための専用の画素を設け、上記したようにしてPUFが生成されるようにすることも可能である。
【０１１６】
＜PUF処理装置の判定処理＞
次に、第１乃至第３のPUF生成処理のいずれかの処理で生成されたPUFを用いて判定を行うPUF処理装置１３の判定処理について、図１３のフローチャートを参照して説明する。
【０１１７】
ステップＳ４０１において、PUF生成指示部１５１は、撮像装置１１（撮像装置１１内のPUF生成部１００）に対して、PUFの生成を指示する。PUF生成部１００は、PUFの生成の指示を受けると、上記した第１乃至第３のPUF生成処理のいずれかの処理を実行することで、PUFを生成する。
【０１１８】
ステップＳ４０２において、PUF取得部１５２は、撮像装置１１側で生成されたPUF２２（図１）を取得する。ステップＳ４０１における撮像装置１１への指示や、ステップＳ４０２におけるPUFの取得は、ネットワークを介して行われたり、NFCなどの近距離無線通信を用いて行われたりする。
【０１１９】
ステップＳ４０３において、PUF取得部１５２は、画像データ１２に含まれるPUF２１（図１）も取得する。
【０１２０】
ステップＳ４０４において、比較部１５３は、取得されたPUF２１とPUF２２を比較し、比較結果を判定部１５４に供給する。比較はハミング距離が算出されることで行われる。ハミング距離とは、等しい文字数を持つ二つの文字列の中で、対応する位置にある異なった文字の個数である。例えば、“１０１１１０１”と“１００１００１”のハミング距離は、“２”となる。
【０１２１】
PUFは、０と１の文字列であると捕らえることができ、PUF２１とPUF２２を比較し、ハミング距離が算出される。
【０１２２】
ステップＳ４０５において、判定部１５４は、比較部１５３による比較結果、この場合、ハミング距離を参照し、PUF２１とPUF２２が同一であるか否かを判定する。例えば、判定部１５４は、ハミング距離が、全体母数の３０％以下である場合には、PUF２１とPUF２２は同一であると判定し、３０％以上である場合には、PUF２１とPUF２２は同一ではないと判定する。
【０１２３】
例えば、PUF２１とPUF２２は同一であると判定されたときには、画像データ１２は、撮像装置１１で撮像されたと特定でき、PUF２１とPUF２２は同一ではないと判定されたときには、画像データ１２は、撮像装置１１以外の撮像装置１１で撮像されたと特定できる。
【０１２４】
このことを利用し、例えば、ネット上で公開されている画像が、撮影装置１１で撮影された画像であるか否かを判定することができ、例えば、許諾を受けて公開しているのか否かを判定し、不正に公開している場合には、何らかの処置をとるようにすることができる。
【０１２５】
上記したPUFの生成は、イメージセンサ３１（撮像素子）を用いて行う場合を例に挙げ、イメージセンサ３１を備える装置として撮像装置１１を例に挙げて説明した。撮像装置１１としては、静止画像を撮像するカメラであっても良いし、動画像を撮像するカメラであっても良い。またイメージセンサ３１を備えるスキャナなどにも上記した本技術を適用できる。
【０１２６】
また、イメージセンサ３１にPUF生成部１００の機能を持たせる場合を例に挙げて説明したが、PUF生成部１００の機能を有する半導体ＩＣとすることも可能である。
【０１２７】
上記した実施の形態においては、OPB領域９２内の画素、または有効画素領域９１を遮光した状態のときの画素からの出力データを用いてPUFを生成した。このことを換言すれば、イメージセンサ３１が受光していないときにイメージセンサ３１（画素）から出力される出力データを用いてPUFを生成している。
【０１２８】
このことから、メモリなどの記憶素子に対しても本技術を適用することができる。メモリ（記憶素子）にデータが記憶されていない状態または記憶されている状態のときであり、メモリに信号が供給されていないときに、メモリからの信号を読み出し、その信号を用いてPUFを生成することができる。
【０１２９】
＜メモリへの適用例＞
図１４に、メモリの構成例を示す。記憶セル３００は、記憶素子３０１とアクセストランジスタ３０２とにより構成されており、この記憶セル３００を複数行、複数列に並べた記憶セルアレイ３０３が形成されている。各記憶セル３００には、ワード線３０４、ビット線３０５および第１電源線３０６および第２電源線３０７が接続されている。
【０１３０】
各ワード線３０４には、ロウアドレスデコーダ３０８が接続され、ビット線３０５には、カラムアドレスデコーダ３０９が接続されている。ロウアドレスデコーダ３０８とカラムアドレスデコーダ３０９によって、記憶セルアレイ３０３の中から、書き込み、消去もしくは読み出しの対象となる記憶セル３００が選択されるようになっている。また、各ビット線３０５には、センスアンプ（不図示）が接続されており、センスアンプによって、選択された記憶セル３００から読み出されたデータが検出されるように構成されている。
【０１３１】
このメモリへのデータの書き込みは、選択される記憶セル３００に所定の電圧を印加することにより行われる。すなわち、記憶セルアレイ３０３のうち書き込み対象の記憶セル３００が接続された列が選択され、そのビット線３０５にデータ書き込みのための電圧が印加される一方、他のビット線には、その電圧が記憶セルに印加されてもデータ書き込みが発生しないような電圧が印加される。
【０１３２】
同時に、書き込み対象の記憶セル３００が接続された段が選択され、そのワード線３０４に当該記憶セル３００のアクセストランジスタ３０２がオンして当該記憶セル３００へのデータ書き込みが可能となるような制御電圧が印加される一方、他のワード線には、それに接続された記憶セルへのデータ書き込みが行われないようにアクセストランジスタ３０２を制御する電圧が印加される。これにより、選択されていない記憶セルに期待していないデータ書き込みが行われることを防止しつつ、選択した記憶セル３００にのみ所望のデータ書き込み電圧を与えてデータ書き込みを行うことが可能とされている。
【０１３３】
図１５は、記憶セル３００の記憶素子３０１の構造を示す図である。記憶素子３０１は、下部電極３２３と上部電極３２６の間に高抵抗層３２４とイオン源層３２５を有する。下部電極３２３は、例えば、ＣＭＯＳ（Complementary Metal Oxide Semiconductor ）回路が形成されたシリコン基板３２１上に設けられ、ＣＭＯＳ回路部分との接続部とすることができる。
【０１３４】
記憶素子３０１は、このシリコン基板３２１上に、下部電極３２３、高抵抗層３２４、イオン源層３２５および上部電極３２６を、この順に積層したものである。下部電極３２３は、シリコン基板３２１上に形成された絶縁層３２２の開口内に埋設されている。高抵抗層３２４、イオン源層３２５および上部電極３２６は同じ平面パターンに形成されている。下部電極３２３は、高抵抗層３２４よりも狭く、高抵抗層３２４の一部と電気的に接続されている。
【０１３５】
このような構成を有する記憶セル３００に対して書き込みが行われる場合、上部電極３２６に正電位（＋電位）が印加されると共に、下部電極３２３に負電位（−電位）または零電位が印加される。上部電極３２６と下部電極３２３にそれぞれ所定の電位が印加されると、イオン源層３２５からＣｕ，ＡｇおよびＺｎのうち少なくとも一種類の金属元素がイオン化して高抵抗層３２４内を拡散していき、下部電極３２３側で電子と結合して析出したり、あるいは、高抵抗層３２４の内部に拡散した状態でとどまる。
【０１３６】
その結果、高抵抗層３２４の内部に、Ｃｕ，ＡｇおよびＺｎのうち少なくとも一種類の金属元素を多量に含む電流パスが形成されたり、若しくは、高抵抗層３２４の内部に、Ｃｕ，ＡｇおよびＺｎのうち少なくとも一種類の金属元素による欠陥が多数形成されたりすることで、高抵抗層３２４の抵抗値が低くなる。このとき、イオン源層３２５の抵抗値は、高抵抗層３２４の記録前の抵抗値に比べて元々低いので、高抵抗層３２４の抵抗値が低くなることにより、記憶素子３０１全体の抵抗値も低くなる。このとき記憶素子３０１全体の抵抗が書き込み抵抗となる。
【０１３７】
その後、上部電極３２６および下部電極３２３への印加電位を零にすると、記憶素子３０１の低抵抗状態が保持される。このようにして情報の書き込みが行われる。
【０１３８】
消去を行う場合、上部電極３２６に負電位（−電位）が印加されると共に、下部電極３２３に正電位（＋電位）または零電位が印加される。上部電極３２６と下部電極３２３にそれぞれ所定の電位が印加されると、高抵抗層３２４内に形成されていた電流パス、あるいは不純物準位を構成する、Ｃｕ，ＡｇおよびＺｎのうち少なくとも一種類の金属元素がイオン化して、高抵抗層３２４内を移動してイオン源層３２５側に戻る。
【０１３９】
その結果、高抵抗層３２４内から、電流パス、若しくは、欠陥が消滅して、高抵抗層３２４の抵抗値が高くなる。このとき、イオン源層３２５の抵抗値は元々低いので、高抵抗層３２４の抵抗値が高くなることにより、記憶素子３０１全体の抵抗値も高くなる。このときの記憶素子３０１全体の抵抗が消去抵抗となる。
【０１４０】
その後、上部電極３２６と下部電極３２３への印加電位が零にされると、記憶素子３０１の高抵抗状態が保持される。このようにして記録された情報の消去が行われる。このような過程が繰返し行われることにより、記憶素子３０１に情報の記録（書き込み）と、記録された情報の消去を繰り返し行うことができる。
【０１４１】
このように構成されるメモリにおいても、上記したPUFの生成処理を適用することができる。シリコン基板３２１などを用いた素子、例えば、図１５に示した記憶素子３０１や、図４に示した画素４２においては、電圧が印加されていない状態や、光を受光していない状態のときでも、固体バラつきによる信号が発生している。この固体バラつきによる信号を利用してPUFを生成することができる。
【０１４２】
上記したメモリにおいては、例えば、処理対象とされている記憶素子３０１（全記憶素子または一部の記憶素子）に対して書き込みまたは消去の処理を実行した後、すなわち処理対象とされている記憶素子３０１が、記憶している状態または記憶してない状態のどちらかで同一状況下にされた後、処理対象とされている記憶素子３０１から出力される信号が読み込まれる。
【０１４３】
このような読み込みは、上記したOPB領域９２内の画素４２からの読み込みに対応しており、複数回行われる。そして、各記憶素子３０１から読み込まれた信号の平均値が算出され、各記憶素子３０１の平均値の集合から中央値が算出され、その中央値と平均値の比較によりPUFが生成される。すなわち、イメージセンサ３１を用いてPUFを生成する場合と同様の処理で、PUFを生成することが可能となる。
【０１４４】
メモリを用いてPUFを生成するようにした場合、例えば、テキストデータ、画像データ、音声データなど各種のデータに、メモリを用いて生成されたPUFを含ませるようにすることができる。
【０１４５】
例えば、所定のパーソナルコンピュータで生成されたテキストデータに、そのパーソナルコンピュータで生成されたPUFを含ませるようにする。そして、PUFを含むテキストデータが再生されるときには、テキストデータに含まれているPUFとパーソナルコンピュータで生成されるPUFとが一致していなければ、再生されないようにすることができる。このようにすることで、特定のパーソナルコンピュータでなければ、テキストデータを再生することができなくなり、不正にテキストデータが利用されるようなことを防ぐことが可能となる。
【０１４６】
本技術が適用されるメモリは、上記したメモリ以外に、例えば、抵抗変化型のメモリやスピン型のメモリなどにも適用できる。
【０１４７】
上記した本技術は、記憶素子や撮像素子などの素子の個体バラつきにより発生する信号を用いて、PUFを生成するため、上記した記憶素子や撮像素子以外の個体バラつきがある素子に対しても適用できる。
【０１４８】
＜撮像装置の使用例＞
図１６は、イメージセンサ３１の使用例を示す図である。
【０１４９】
上述したイメージセンサ３１は、例えば、以下のように、可視光や、赤外光、紫外光、Ｘ線等の光をセンシングする様々なケースに使用することができる。すなわち、図１６に示すように、上述した、鑑賞の用に供される画像を撮影する鑑賞の分野だけでなく、例えば、交通の分野、家電の分野、医療・ヘルスケアの分野、セキュリティの分野、美容の分野、スポーツの分野、又は、農業の分野などにおいて用いられる装置でも、イメージセンサ３１を使用することができる。
【０１５０】
具体的には、上述したように、鑑賞の分野において、例えば、デジタルカメラやスマートフォン、カメラ機能付きの携帯電話機等の、鑑賞の用に供される画像を撮影するための装置で、イメージセンサ３１を使用することができる。
【０１５１】
交通の分野において、例えば、自動停止等の安全運転や、運転者の状態の認識等のために、自動車の前方や後方、周囲、車内等を撮影する車載用センサ、走行車両や道路を監視する監視カメラ、車両間等の測距を行う測距センサ等の、交通の用に供される装置で、イメージセンサ３１を使用することができる。
【０１５２】
家電の分野において、例えば、ユーザのジェスチャを撮影して、そのジェスチャに従った機器操作を行うために、テレビ受像機や冷蔵庫、エアーコンディショナ等の家電に供される装置で、イメージセンサ３１を使用することができる。また、医療・ヘルスケアの分野において、例えば、内視鏡や、赤外光の受光による血管撮影を行う装置等の、医療やヘルスケアの用に供される装置で、イメージセンサ３１を使用することができる。
【０１５３】
セキュリティの分野において、例えば、防犯用途の監視カメラや、人物認証用途のカメラ等の、セキュリティの用に供される装置で、イメージセンサ３１を使用することができる。また、美容の分野において、例えば、肌を撮影する肌測定器や、頭皮を撮影するマイクロスコープ等の、美容の用に供される装置で、イメージセンサ３１を使用することができる。
【０１５４】
スポーツの分野において、例えば、スポーツ用途等向けのアクションカメラやウェアラブルカメラ等の、スポーツの用に供される装置で、イメージセンサ３１を使用することができる。また、農業の分野において、例えば、畑や作物の状態を監視するためのカメラ等の、農業の用に供される装置で、イメージセンサ３１を使用することができる。
【０１５５】
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。例えば、上述した複数の実施の形態の全て又は一部を組み合わせた形態を採用することができる。
【０１５６】
また、本技術は、以下のような構成をとることができる。
（１）
所定の素子からの出力データを複数回読み込む読み込み部と、
前記読み込み部で読み込まれた前記出力データの平均値を算出する平均値算出部と、
前記平均値算出部で算出された前記平均値の中央値を算出する中央値算出部と、
前記中央値と前記平均値を比較することでPUF(Physical Unclonable Function)を生成するPUF生成部と
を備える情報処理装置。
（２）
前記所定の素子は、イメージセンサであり、
前記読み込み部は、前記イメージセンサが遮光された状態のときに、前記イメージセンサからの前記出力データを読み込む
前記（１）に記載の情報処理装置。
（３）
前記所定の素子は、OPB（optical black）領域内のイメージセンサである
前記（１）または（２）に記載の情報処理装置。
（４）
前記所定の素子は、イメージセンサであり、
前記読み込み部は、メカシャッタが閉じられた状態のときに、前記イメージセンサからの前記出力データを読み込む
前記（１）または（２）に記載の情報処理装置。
（５）
前記所定の素子は、記憶素子である
前記（１）に記載の情報処理装置。
（６）
前記PUF生成部は、前記平均値が前記中央値よりも大きい場合、第１の値に変換し、前記平均値が前記中央値よりも小さい場合、第２の値に変換することで、前記PUFを生成する
前記（１）乃至（５）のいずれかに記載の情報処理装置。
（７）
温度と前記中央値が関連付けられたテーブルを記憶し、
前記PUF生成部は、計測された温度に関連付けられている中央値を前記テーブルから読み出し、前記平均値と比較することで、前記PUFを生成する
前記（１）乃至（６）のいずれかに記載の情報処理装置。
（８）
半導体ICである
前記（１）乃至（７）のいずれかに記載の情報処理装置。
（９）
他の装置からの指示があったとき、前記PUFを生成する
前記（１）乃至（８）のいずれかに記載の情報処理装置。
（１０）
前記所定の素子は、イメージセンサであり、
前記PUF生成部で生成されたPUFは、前記イメージセンサで撮像された画像のデータに含ませられる
前記（１）に記載の情報処理装置。
（１１）
所定の素子からの出力データを複数回読み込み、
読み込まれた前記出力データの平均値を算出し、
算出された前記平均値の中央値を算出し、
前記中央値と前記平均値を比較することでPUF(Physical Unclonable Function)を生成する
ステップを含む情報処理方法。
（１２）
コンピュータに、
所定の素子からの出力データを複数回読み込み、
読み込まれた前記出力データの平均値を算出し、
算出された前記平均値の中央値を算出し、
前記中央値と前記平均値を比較することでPUF(Physical Unclonable Function)を生成する
ステップを含む処理を実行させるためのプログラム。
【符号の説明】
【０１５７】
１１  撮像装置，  １２  画像データ，  １３  PUF処理装置，  ２１，２２  PUF，  ３１  イメージセンサ，  ９１  有効画素領域，  ９２  OPB領域，  １００  PUF生成部，  １０１  PUF生成指示部，  １０２  出力データ取得部，  １０３  平均値算出部，  １０４  中央値算出部，  １０５  変換部，  １０６  出力部，  １５１  PUF生成指示部，  １５２  PUF取得部，  １５３  比較部，  １５４  判定部
【図１】
2017118229.tif 000003
【図２】
2017118229.tif 000004
【図３】
2017118229.tif 000005
【図４】
2017118229.tif 000006
【図５】
2017118229.tif 000007
【図６】
2017118229.tif 000008
【図７】
2017118229.tif 000009
【図８】
2017118229.tif 000010
【図９】
2017118229.tif 000011
【図１０】
2017118229.tif 000012
【図１１】
2017118229.tif 000013
【図１２】
2017118229.tif 000014
【図１３】
2017118229.tif 000015
【図１４】
2017118229.tif 000016
【図１５】
2017118229.tif 000017
【図１６】
2017118229.tif 000018