しかし、上記特許文献1に開示されたメモリシステムによると、周辺温度や電源電圧等のメモリ装置の動作環境要素が変動すると、メモリ装置の消費電流も変動するため、判定精度が低下するという問題がある。
また、上記特許文献1には、ホスト装置によってメモリ装置の真贋判定を実行する態様についてのみ開示されている。しかし、不正使用の態様としては、非正規品のメモリ装置が使用される場合に限らず、正規品のメモリ装置に格納されたコンテンツデータを不正コピー等する目的で、非正規品のホスト装置が使用される場合もある。従って、不正コピー等からコンテンツデータを適切に保護するためには、ホスト装置が非正規品である場合にはメモリシステムの動作を停止させる必要がある。そのためには、メモリ装置において、ホスト装置が正規品であるか否かを判定する機能や、ホスト装置及びメモリ装置の各々において、自身が正規品であるか否かを自ら判定(自己真贋判定)する機能が望まれる。
本発明はかかる事情に鑑みて成されたものであり、被判定装置の動作環境要素が変動した場合であっても、被判定装置の真贋判定を高精度に実行することが可能な、情報処理装置及び被判定装置の真贋判定方法を得ることを目的とするものである。
本発明の第1の態様に係る情報処理装置は、被判定装置の真贋判定機能を備える情報処理装置であって、前記被判定装置に電源を供給する電源供給部と、前記電源供給部から前記被判定装置に流れる電流を測定する電流測定部と、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得する電流値取得部と、前記電流値取得部によって取得された複数の実測電流値に基づいて、実測電流値情報を作成する実測電流値情報作成部と、前記実測電流値情報作成部によって作成された実測電流値情報と、正規品又は非正規品に関して予め作成された基準電流値情報とを比較する電流値情報比較部と、前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間に関して前記実測電流値情報作成部によって作成された第1の実測電流値情報と、第1の所定期間に関して予め作成された第1の基準電流値情報との、前記電流値情報比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定する真贋判定部と、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成され、前記実測電流値情報作成部は、前記電流値取得部によって取得された複数の実測電流値を時系列順に配列することにより、実測電流値情報としての実測電流値パターンを作成するパターン作成部を有し、前記電流値情報比較部は、前記パターン作成部によって作成された実測電流値パターンと、基準電流値情報としての基準電流値パターンとを比較するパターン比較部を有し、基準電流値パターンは、前記被判定装置の動作環境要素に起因して変動する複数域の電流値パターンに基づいて作成され、前記真贋判定部は、第1の所定期間に関する第1の実測電流値パターンと第1の基準電流値パターンとの前記パターン比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定し、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する高域側許容誤差及び低域側許容誤差とによって規定され、期待値パターンは、標準域電流値パターンに基づいて設定され、高域側許容誤差は、高域電流値パターンと標準域電流値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと標準域電流値パターンとの差に基づいて設定されることを特徴とするものである。
第1の態様に係る情報処理装置によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第1の態様に係る情報処理装置によれば、真贋判定部は、第1の所定期間に関する第1の実測電流値パターンと第1の基準電流値パターンとのパターン比較部による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。非正規品は粗悪品であることが多いため、非正規品の消費電流の絶対値は正規品のそれより大きい場合が多い。第1の態様に係る情報処理装置によれば、真贋判定部は、消費電流の変化率パターンではなく実測電流値パターンと基準電流値パターンとを比較するため、たとえ正規品と非正規品とで消費電流の変化率パターンが近似している場合であっても、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第1の態様に係る情報処理装置によれば、高域側許容誤差は、高域電流値パターンと標準域電流値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと標準域電流値パターンとの差に基づいて設定される。従って、高域側許容誤差と低域側許容誤差との合計許容誤差を必要最小限に抑制できるため、被判定装置の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第2の態様に係る情報処理装置は、被判定装置の真贋判定機能を備える情報処理装置であって、前記被判定装置に電源を供給する電源供給部と、前記電源供給部から前記被判定装置に流れる電流を測定する電流測定部と、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得する電流値取得部と、前記電流値取得部によって取得された複数の実測電流値に基づいて、実測電流値情報を作成する実測電流値情報作成部と、前記実測電流値情報作成部によって作成された実測電流値情報と、正規品又は非正規品に関して予め作成された基準電流値情報とを比較する電流値情報比較部と、前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間に関して前記実測電流値情報作成部によって作成された第1の実測電流値情報と、第1の所定期間に関して予め作成された第1の基準電流値情報との、前記電流値情報比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定する真贋判定部と、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成され、前記実測電流値情報作成部は、前記電流値取得部によって取得された複数の実測電流値を時系列順に配列することにより、実測電流値情報としての実測電流値パターンを作成するパターン作成部を有し、前記電流値情報比較部は、前記パターン作成部によって作成された実測電流値パターンと、基準電流値情報としての基準電流値パターンとを比較するパターン比較部を有し、基準電流値パターンは、前記被判定装置の動作環境要素に起因して変動する複数域の電流値パターンに基づいて作成され、前記真贋判定部は、第1の所定期間に関する第1の実測電流値パターンと第1の基準電流値パターンとの前記パターン比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定し、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する高域側許容誤差及び低域側許容誤差とによって規定され、期待値パターンは、標準域電流値パターン、高域電流値パターン、及び低域電流値パターンの平均に基づいて設定され、高域側許容誤差は、高域電流値パターンと期待値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと期待値パターンとの差に基づいて設定されることを特徴とするものである。
第2の態様に係る情報処理装置によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第2の態様に係る情報処理装置によれば、真贋判定部は、第1の所定期間に関する第1の実測電流値パターンと第1の基準電流値パターンとのパターン比較部による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。非正規品は粗悪品であることが多いため、非正規品の消費電流の絶対値は正規品のそれより大きい場合が多い。第2の態様に係る情報処理装置によれば、真贋判定部は、消費電流の変化率パターンではなく実測電流値パターンと基準電流値パターンとを比較するため、たとえ正規品と非正規品とで消費電流の変化率パターンが近似している場合であっても、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第2の態様に係る情報処理装置によれば、期待値パターンは、標準域電流値パターン、高域電流値パターン、及び低域電流値パターンの平均に基づいて設定される。従って、標準域電流値パターンをそのまま期待値パターンとして設定する場合と比較して、高域側許容誤差と低域側許容誤差との差を小さくできるため、被判定装置の真贋判定精度を向上することが可能となる。しかも、高域側許容誤差は、高域電流値パターンと期待値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと期待値パターンとの差に基づいて設定される。従って、高域側許容誤差と低域側許容誤差との合計許容誤差を必要最小限に抑制できるため、被判定装置の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第3の態様に係る情報処理装置は、信号処理回路と前記信号処理回路に電源を供給する電源供給部とを有する被判定装置の真贋判定機能を備える情報処理装置であって、前記電源供給部から前記信号処理回路に流れる電流を測定する電流測定部と、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得する電流値取得部と、前記電流値取得部によって取得された複数の実測電流値に基づいて、実測電流値情報を作成する実測電流値情報作成部と、前記実測電流値情報作成部によって作成された実測電流値情報と、正規品又は非正規品に関して予め作成された基準電流値情報とを比較する電流値情報比較部と、前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間に関して前記実測電流値情報作成部によって作成された第1の実測電流値情報と、第1の所定期間に関して予め作成された第1の基準電流値情報との、前記電流値情報比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定する真贋判定部と、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成されることを特徴とするものである。
第3の態様に係る情報処理装置によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
本発明の第4の態様に係る情報処理装置は、自身を被判定装置とする真贋判定機能を備える情報処理装置であって、信号処理回路と、前記信号処理回路に電源を供給する電源供給部と、前記電源供給部から前記信号処理回路に流れる電流を測定する電流測定部と、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得する電流値取得部と、前記電流値取得部によって取得された複数の実測電流値に基づいて、実測電流値情報を作成する実測電流値情報作成部と、前記実測電流値情報作成部によって作成された実測電流値情報と、正規品又は非正規品に関して予め作成された基準電流値情報とを比較する電流値情報比較部と、前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間に関して前記実測電流値情報作成部によって作成された第1の実測電流値情報と、第1の所定期間に関して予め作成された第1の基準電流値情報との、前記電流値情報比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定する真贋判定部と、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成されることを特徴とするものである。
第4の態様に係る情報処理装置によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
本発明の第5の態様に係る情報処理装置は、第3又は第4の態様に係る情報処理装置において特に、前記実測電流値情報作成部は、前記電流値取得部によって取得された複数の実測電流値を時系列順に配列することにより、実測電流値情報としての実測電流値パターンを作成するパターン作成部を有し、前記電流値情報比較部は、前記パターン作成部によって作成された実測電流値パターンと、基準電流値情報としての基準電流値パターンとを比較するパターン比較部を有し、基準電流値パターンは、前記被判定装置の動作環境要素に起因して変動する複数域の電流値パターンに基づいて作成され、前記真贋判定部は、第1の所定期間に関する第1の実測電流値パターンと第1の基準電流値パターンとの前記パターン比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定することを特徴とするものである。
第5の態様に係る情報処理装置によれば、真贋判定部は、第1の所定期間に関する第1の実測電流値パターンと第1の基準電流値パターンとのパターン比較部による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。非正規品は粗悪品であることが多いため、非正規品の消費電流の絶対値は正規品のそれより大きい場合が多い。第5の態様に係る情報処理装置によれば、真贋判定部は、消費電流の変化率パターンではなく実測電流値パターンと基準電流値パターンとを比較するため、たとえ正規品と非正規品とで消費電流の変化率パターンが近似している場合であっても、被判定装置の真贋判定を高精度に実行することが可能となる。
本発明の第6の態様に係る情報処理装置は、第5の態様に係る情報処理装置において特に、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する許容誤差とによって規定されることを特徴とするものである。
第6の態様に係る情報処理装置によれば、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する許容誤差とによって規定される。従って、個体差やノイズ等に起因して正規品の実測電流値パターンが期待値パターンからわずかにずれた場合であっても、そのような正規品が誤って非正規品と判定される事態を回避することができる。
本発明の第7の態様に係る情報処理装置は、第5又は第6の態様に係る情報処理装置において特に、基準電流値パターンは、動作環境要素毎に作成された複数の基準電流値パターンを含むことを特徴とするものである。
第7の態様に係る情報処理装置によれば、基準電流値パターンは、動作環境要素毎に作成された複数の基準電流値パターンを含む。従って、複数の基準電流値パターンの各々においては、高域側許容誤差と低域側許容誤差との合計許容誤差を必要最小限に抑制できるため、被判定装置の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第8の態様に係る情報処理装置は、第7の態様に係る情報処理装置において特に、複数の基準電流値パターンに関して、同一の許容誤差が設定されることを特徴とするものである。
第8の態様に係る情報処理装置によれば、複数の基準電流値パターンに関して同一の許容誤差が設定される。従って、複数の基準電流値パターンの各々に対して個別に許容誤差が設定される場合と比較すると、基準電流値パターンの実装コストを削減することが可能となる。
本発明の第9の態様に係る情報処理装置は、第7の態様に係る情報処理装置において特に、複数の基準電流値パターンには、異なる許容誤差が設定された少なくとも二つの基準電流値パターンが含まれることを特徴とするものである。
第9の態様に係る情報処理装置によれば、複数の基準電流値パターンには、異なる許容誤差が設定された少なくとも二つの基準電流値パターンが含まれる。従って、複数の基準電流値パターンの各々に対して個別に許容誤差を設定することによって、各々の許容誤差を最小限に抑えることができるため、被判定装置の真贋判定精度を向上することが可能となる。
本発明の第10の態様に係る情報処理装置は、第5又は第6の態様に係る情報処理装置において特に、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する高域側許容誤差及び低域側許容誤差とによって規定され、期待値パターンは、標準域電流値パターンに基づいて設定され、高域側許容誤差は、高域電流値パターンと標準域電流値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと標準域電流値パターンとの差に基づいて設定されることを特徴とするものである。
第10の態様に係る情報処理装置によれば、高域側許容誤差は、高域電流値パターンと標準域電流値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと標準域電流値パターンとの差に基づいて設定される。従って、高域側許容誤差と低域側許容誤差との合計許容誤差を必要最小限に抑制できるため、被判定装置の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第11の態様に係る情報処理装置は、第5又は第6の態様に係る情報処理装置において特に、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する高域側許容誤差及び低域側許容誤差とによって規定され、期待値パターンは、標準域電流値パターン、高域電流値パターン、及び低域電流値パターンの平均に基づいて設定され、高域側許容誤差は、高域電流値パターンと期待値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと期待値パターンとの差に基づいて設定されることを特徴とするものである。
第11の態様に係る情報処理装置によれば、期待値パターンは、標準域電流値パターン、高域電流値パターン、及び低域電流値パターンの平均に基づいて設定される。従って、標準域電流値パターンをそのまま期待値パターンとして設定する場合と比較して、高域側許容誤差と低域側許容誤差との差を小さくできるため、被判定装置の真贋判定精度を向上することが可能となる。しかも、高域側許容誤差は、高域電流値パターンと期待値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと期待値パターンとの差に基づいて設定される。従って、高域側許容誤差と低域側許容誤差との合計許容誤差を必要最小限に抑制できるため、被判定装置の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第12の態様に係る情報処理装置は、第5又は第6の態様に係る情報処理装置において特に、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する高域側許容誤差及び低域側許容誤差とによって規定され、期待値パターンは、標準域電流値パターン、高域電流値パターン、及び低域電流値パターンの平均に基づいて設定され、高域側許容誤差及び低域側許容誤差は、高域電流値パターン及び低域電流値パターンのうち期待値パターンとの差が大きいものと、期待値パターンとの差に基づいて、等しく設定されることを特徴とするものである。
第12の態様に係る情報処理装置によれば、期待値パターンは、標準域電流値パターン、高域電流値パターン、及び低域電流値パターンの平均に基づいて設定される。従って、標準域電流値パターンをそのまま期待値パターンとして設定する場合と比較して、高域側許容誤差と低域側許容誤差との差を小さくできるため、被判定装置の真贋判定精度を向上することが可能となる。しかも、高域側許容誤差及び低域側許容誤差は等しい値に設定されるため、高域側許容誤差及び低域側許容誤差を個別の値に設定する場合と比較して、基準電流値パターンの実装コストを削減することが可能となる。電流値の変化が比較的小さい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第13の態様に係る情報処理装置は、第5又は第6の態様に係る情報処理装置において特に、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する高域側許容誤差及び低域側許容誤差とによって規定され、期待値パターンは、高域電流値パターンと低域電流値パターンとの平均に基づいて設定され、高域側許容誤差及び低域側許容誤差は、高域電流値パターン又は低域電流値パターンと、期待値パターンとの差に基づいて、等しく設定されることを特徴とするものである。
第13の態様に係る情報処理装置によれば、期待値パターンは、高域電流値パターンと低域電流値パターンとの平均に基づいて設定される。従って、標準域電流値パターンをそのまま期待値パターンとして設定する場合と比較して、高域側許容誤差と低域側許容誤差との差を小さくできるため、被判定装置の真贋判定精度を向上することが可能となる。しかも、高域側許容誤差及び低域側許容誤差は等しい値に設定されるため、高域側許容誤差及び低域側許容誤差を個別の値に設定する場合と比較して、基準電流値パターンの実装コストを削減することが可能となる。電流値の変化が比較的小さい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第14の態様に係る情報処理装置は、第1、第2、第5〜第13のいずれか一つの態様に係る情報処理装置において特に、前記実測電流値情報作成部は、前記電流値取得部によって取得された複数の実測電流値に基づいて、実測拡散値を算出する拡散値算出部をさらに有し、前記電流値情報比較部は、前記拡散値算出部によって算出された実測拡散値と、正規品又は非正規品を対象として予め求められた基準拡散値とを比較する拡散値比較部をさらに有し、基準拡散値は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値パターンに基づいて求められ、前記真贋判定部は、第1判定処理として、第1の実測電流値パターンと第1の基準電流値パターンとの前記パターン比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定し、第1判定処理において第1の実測電流値パターンと第1の基準電流値パターンとが一致しない場合に、第2判定処理として、第1の所定期間に関して前記拡散値算出部によって算出された第1の実測拡散値と、第1の所定期間に関して予め求められた第1の基準拡散値との、前記拡散値比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定することを特徴とするものである。
第14の態様に係る情報処理装置によれば、実測電流値パターンと基準電流値パターンとの比較による第1判定処理と、実測拡散値と基準拡散値との比較による第2判定処理との二段階の判定処理を行うことにより、いずれか一方の判定処理のみを行う場合と比較して、真贋判定精度を向上することが可能となる。特に、製品の個体差や突発的ノイズ等に起因して実測電流値パターンと基準電流値パターンとが瞬間的に大きく相違したことが原因で第1判定処理において非正規品と判定された正規品を、第2判定処理において救済することが可能となる。
本発明の第15の態様に係る情報処理装置は、第1、第2、第5〜第14のいずれか一つの態様に係る情報処理装置において特に、前記パターン比較部は、実測電流値パターンを構成する複数の実測電流値と、基準電流値パターンを構成する複数の基準電流値とをそれぞれ比較し、前記真贋判定部は、第1の所定期間に関する全ての実測電流値が、対応する基準電流値と一致しているか否かによって、前記被判定装置が正規品であるか非正規品であるかを判定することを特徴とするものである。
第15の態様に係る情報処理装置によれば、真贋判定部は、第1の所定期間に関する全ての実測電流値が、対応する基準電流値と一致しているか否かによって、被判定装置が正規品であるか非正規品であるかを判定する。従って例えば、非正規品が、実測電流値パターンの一部において正規品のそれと異なる場合であっても、そのような非正規品を高精度に排除することが可能となる。
本発明の第16の態様に係る情報処理装置は、第1、第2、第5〜第14のいずれか一つの態様に係る情報処理装置において特に、前記パターン比較部は、実測電流値パターンを構成する複数の実測電流値と、基準電流値パターンを構成する複数の基準電流値とをそれぞれ比較し、前記真贋判定部は、第1の所定期間に関する全ての実測電流値のうち、対応する基準電流値と一致する実測電流値の割合が第1のしきい値以上であるか否かによって、前記被判定装置が正規品であるか非正規品であるかを判定することを特徴とするものである。
第16の態様に係る情報処理装置によれば、真贋判定部は、第1の所定期間に関する全ての実測電流値のうち、対応する基準電流値と一致する実測電流値の割合が第1のしきい値以上であるか否かによって、被判定装置が正規品であるか非正規品であるかを判定する。従って例えば、突発的なノイズ等に起因して正規品の実測電流値が瞬間的に増減した場合であっても、正規品が誤って非正規品と判定される事態を回避することが可能となる。
本発明の第17の態様に係る情報処理装置は、第1、第2、第5〜第16のいずれか一つの態様に係る情報処理装置において特に、前記パターン作成部による実測電流値パターンの作成処理、及び、前記パターン比較部による実測電流値パターンと基準電流値パターンとの比較処理は、N回(Nは複数)実行され、前記真贋判定部は、前記パターン比較部によるN回の比較処理のうち、実測電流値パターンが基準電流値パターンに一致していると判定された割合が第2のしきい値以上であるか否かによって、前記被判定装置が正規品であるか非正規品であるかを判定することを特徴とするものである。
第17の態様に係る情報処理装置によれば、真贋判定部は、パターン作成部による実測電流値パターンの作成処理、及び、パターン比較部による実測電流値パターンと基準電流値パターンとの比較処理を複数N回実行し、パターン比較部によるN回の比較処理のうち、実測電流値パターンが基準電流値パターンに一致していると判定された割合が第2のしきい値以上であるか否かによって、被判定装置が正規品であるか非正規品であるかを判定する。このように、パターン作成部及びパターン比較部による一連の処理を複数N回繰り返して実行し、パターン比較部によるN回の比較結果に基づいて被判定装置の真贋判定を行うことにより、判定精度を向上することが可能となる。
本発明の第18の態様に係る情報処理装置は、第1、第2、第5〜第17のいずれか一つの態様に係る情報処理装置において特に、前記真贋判定部はさらに、複数の所定期間のうち第2の所定期間に関して前記パターン作成部によって作成された第2の実測電流値パターンと、第2の所定期間に関して予め求められた第2の基準電流値パターンとの、前記パターン比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定することを特徴とするものである。
第18の態様に係る情報処理装置によれば、真贋判定部はさらに、複数の所定期間のうち第2の所定期間に関してパターン作成部によって作成された第2の実測電流値パターンと、第2の所定期間に関して予め求められた第2の基準電流値パターンとの、パターン比較部による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。このように、第1の所定期間のみならず第2の所定期間に関しても実測電流値パターンと基準電流値パターンとの比較を行うことにより、第1の所定期間及び第2の所定期間の双方の比較結果に基づいて被判定装置の真贋判定を行うことができるため、判定精度をより向上することが可能となる。
本発明の第19の態様に係る情報処理装置は、第1、第2、第5〜第18のいずれか一つの態様に係る情報処理装置において特に、基準電流値パターンは前記被判定装置の記憶部に記憶されていることを特徴とするものである。
第19の態様に係る情報処理装置によれば、基準電流値パターンは被判定装置の記憶部に記憶されている。被判定装置の基準電流値パターンは、デバイスの構造や製造プロセス等に依存するため、デバイス毎に異なる。従って、ある被判定装置に関して求めた基準電流値パターンを、その被判定装置の記憶部に記憶しておくことにより、デバイス毎に異なる基準電流値パターンを簡易に管理することが可能となる。
本発明の第20の態様に係る情報処理装置は、第3又は第4の態様に係る情報処理装置において特に、前記実測電流値情報作成部は、前記電流値取得部によって取得された複数の実測電流値に基づいて、実測電流値情報としての実測拡散値を算出する拡散値算出部を有し、前記電流値情報比較部は、前記拡散値算出部によって算出された実測拡散値と、基準電流値情報としての基準拡散値とを比較する拡散値比較部を有し、基準拡散値は、前記被判定装置の動作環境要素に起因して変動する複数域の基準電流値に基づいて求められ、前記真贋判定部は、第1の所定期間に関する第1の実測拡散値と第1の基準拡散値との前記拡散値比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定することを特徴とするものである。
第20の態様に係る情報処理装置によれば、真贋判定部は、第1の所定期間に関する第1の実測拡散値と第1の基準拡散値との拡散値比較部による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。従って、実測電流値と基準電流値とを比較する場合と比較して、瞬間的異常値に起因する影響を緩和できるため、製品の個体差や突発的ノイズ等に起因して実測電流値と基準電流値とが瞬間的に大きく相違する場合であっても、真贋判定の精度が低下する事態を回避又は抑制することが可能となる。
本発明の第21の態様に係る情報処理装置は、被判定装置の真贋判定機能を備える情報処理装置であって、前記被判定装置に電源を供給する電源供給部と、前記電源供給部から前記被判定装置に流れる電流を測定する電流測定部と、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得する電流値取得部と、前記電流値取得部によって取得された複数の実測電流値に基づいて、実測電流値情報を作成する実測電流値情報作成部と、前記実測電流値情報作成部によって作成された実測電流値情報と、正規品又は非正規品に関して予め作成された基準電流値情報とを比較する電流値情報比較部と、前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間に関して前記実測電流値情報作成部によって作成された第1の実測電流値情報と、第1の所定期間に関して予め作成された第1の基準電流値情報との、前記電流値情報比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定する真贋判定部と、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成され、前記実測電流値情報作成部は、前記電流値取得部によって取得された複数の実測電流値に基づいて、実測電流値情報としての実測拡散値を算出する拡散値算出部を有し、前記電流値情報比較部は、前記拡散値算出部によって算出された実測拡散値と、基準電流値情報としての基準拡散値とを比較する拡散値比較部を有し、基準拡散値は、前記被判定装置の動作環境要素に起因して変動する複数域の基準電流値に基づいて求められ、前記真贋判定部は、第1の所定期間に関する第1の実測拡散値と第1の基準拡散値との前記拡散値比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定することを特徴とするものである。
第21の態様に係る情報処理装置によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第21の態様に係る情報処理装置によれば、真贋判定部は、第1の所定期間に関する第1の実測拡散値と第1の基準拡散値との拡散値比較部による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。従って、実測電流値と基準電流値とを比較する場合と比較して、瞬間的異常値に起因する影響を緩和できるため、製品の個体差や突発的ノイズ等に起因して実測電流値と基準電流値とが瞬間的に大きく相違する場合であっても、真贋判定の精度が低下する事態を回避又は抑制することが可能となる。
本発明の第22の態様に係る情報処理装置は、第20又は第21の態様に係る情報処理装置において特に、実測拡散値及び基準拡散値は、分散又は標準偏差であることを特徴とするものである。
第22の態様に係る情報処理装置によれば、拡散値として分散又は標準偏差を用いることにより、電流値のばらつき度合いが簡易かつ適切に表された拡散値を得ることができる。
本発明の第23の態様に係る情報処理装置は、第20〜第22のいずれか一つの態様に係る情報処理装置において特に、標準域の複数の基準電流値と、高域の複数の基準電流値と、低域の複数の基準電流値とに基づいて、全域に共通する基準拡散値が設定されることを特徴とするものである。
第23の態様に係る情報処理装置によれば、全域に共通する基準拡散値が設定されるため、基準拡散値の実装コストを削減することが可能となる。電流値の変化が比較的小さい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第24の態様に係る情報処理装置は、第20〜第22のいずれか一つの態様に係る情報処理装置において特に、標準域の複数の基準電流値に基づいて、標準域に関する基準拡散値が設定され、高域の複数の基準電流値に基づいて、高域に関する基準拡散値が設定され、低域の複数の基準電流値に基づいて、低域に関する基準拡散値が設定されることを特徴とするものである。
第24の態様に係る情報処理装置によれば、標準域の複数の基準電流値に基づいて、標準域に関する基準拡散値が設定され、高域の複数の基準電流値に基づいて、高域に関する基準拡散値が設定され、低域の複数の基準電流値に基づいて、低域に関する基準拡散値が設定される。従って、標準域、高域、及び低域の各々に関して個別に基準拡散値を設定できるため、被判定装置の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第25の態様に係る情報処理装置は、第20〜第24のいずれか一つの態様に係る情報処理装置において特に、前記真贋判定部はさらに、複数の所定期間のうち第2の所定期間に関して前記拡散値算出部によって算出された第2の実測拡散値と、第2の所定期間に関して予め求められた第2の基準拡散値との、前記拡散値比較部による比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定することを特徴とするものである。
第25の態様に係る情報処理装置によれば、真贋判定部はさらに、複数の所定期間のうち第2の所定期間に関して拡散値算出部によって算出された第2の実測拡散値と、第2の所定期間に関して予め求められた第2の基準拡散値との、拡散値比較部による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。このように、第1の所定期間のみならず第2の所定期間に関しても実測拡散値と基準拡散値との比較を行うことにより、第1の所定期間及び第2の所定期間の双方の比較結果に基づいて被判定装置の真贋判定を行うことができるため、判定精度をより向上することが可能となる。
本発明の第26の態様に係る情報処理装置は、第1、第2、第5〜第25のいずれか一つの態様に係る情報処理装置において特に、複数の所定期間の中から第1の所定期間を可変に設定する期間設定部をさらに備えることを特徴とするものである。
第26の態様に係る情報処理装置によれば、期間設定部は、複数の所定期間の中から第1の所定期間を可変に設定する。従って、被判定装置の真贋判定を実行する対象となる第1の所定期間を期間設定部によって静的又は動的に変更できるため、第三者による判定アルゴリズムの解析をより困難化することが可能となる。
本発明の第27の態様に係る情報処理装置は、第18又は第25の態様に係る情報処理装置において特に、複数の所定期間の中から第2の所定期間を可変に設定する期間設定部をさらに備えることを特徴とするものである。
第27の態様に係る情報処理装置によれば、期間設定部は、複数の所定期間の中から第2の所定期間を可変に設定する。従って、被判定装置の真贋判定を実行する対象となる第2の所定期間を期間設定部によって静的又は動的に変更できるため、第三者による判定アルゴリズムの解析をより困難化することが可能となる。
本発明の第28の態様に係る被判定装置の真贋判定方法は、被判定装置の真贋判定機能を備え、前記被判定装置に電源を供給する電源供給部と、前記電源供給部から前記被判定装置に流れる電流を測定する電流測定部と、を有する情報処理装置において、前記被判定装置が正規品であるか非正規品であるかを判定する、被判定装置の真贋判定方法であって、(A)前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間において、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得するステップと、(B)前記ステップ(A)によって取得された複数の実測電流値に基づいて、実測電流値情報を作成するステップと、(C)前記ステップ(B)によって作成された第1の実測電流値情報と、正規品又は非正規品に関して予め作成された第1の基準電流値情報との比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定するステップと、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成され、前記ステップ(B)では、前記ステップ(A)によって取得された複数の実測電流値を時系列順に配列することにより、実測電流値情報としての実測電流値パターンが作成され、前記ステップ(C)では、前記ステップ(B)によって作成された実測電流値パターンと、基準電流値情報としての基準電流値パターンとが比較され、基準電流値パターンは、前記被判定装置の動作環境要素に起因して変動する複数域の電流値パターンに基づいて作成され、前記ステップ(C)では、第1の所定期間に関して前記ステップ(B)によって作成された第1の実測電流値パターンと、第1の基準電流値パターンとの比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかが判定され、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する高域側許容誤差及び低域側許容誤差とによって規定され、期待値パターンは、標準域電流値パターンに基づいて設定され、高域側許容誤差は、高域電流値パターンと標準域電流値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと標準域電流値パターンとの差に基づいて設定されることを特徴とするものである。
第28の態様に係る被判定装置の真贋判定方法によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第28の態様に係る被判定装置の真贋判定方法によれば、第1の所定期間に関する第1の実測電流値パターンと第1の基準電流値パターンとのパターン比較部による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかが判定される。非正規品は粗悪品であることが多いため、非正規品の消費電流の絶対値は正規品のそれより大きい場合が多い。第27の態様に係る被判定装置の真贋判定方法によれば、消費電流の変化率パターンではなく実測電流値パターンと基準電流値パターンとが比較されるため、たとえ正規品と非正規品とで消費電流の変化率パターンが近似している場合であっても、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第28の態様に係る被判定装置の真贋判定方法によれば、高域側許容誤差は、高域電流値パターンと標準域電流値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと標準域電流値パターンとの差に基づいて設定される。従って、高域側許容誤差と低域側許容誤差との合計許容誤差を必要最小限に抑制できるため、被判定装置の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第29の態様に係る被判定装置の真贋判定方法は、被判定装置の真贋判定機能を備え、前記被判定装置に電源を供給する電源供給部と、前記電源供給部から前記被判定装置に流れる電流を測定する電流測定部と、を有する情報処理装置において、前記被判定装置が正規品であるか非正規品であるかを判定する、被判定装置の真贋判定方法であって、(A)前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間において、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得するステップと、(B)前記ステップ(A)によって取得された複数の実測電流値に基づいて、実測電流値情報を作成するステップと、(C)前記ステップ(B)によって作成された第1の実測電流値情報と、正規品又は非正規品に関して予め作成された第1の基準電流値情報との比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定するステップと、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成され、前記ステップ(B)では、前記ステップ(A)によって取得された複数の実測電流値を時系列順に配列することにより、実測電流値情報としての実測電流値パターンが作成され、前記ステップ(C)では、前記ステップ(B)によって作成された実測電流値パターンと、基準電流値情報としての基準電流値パターンとが比較され、基準電流値パターンは、前記被判定装置の動作環境要素に起因して変動する複数域の電流値パターンに基づいて作成され、前記ステップ(C)では、第1の所定期間に関して前記ステップ(B)によって作成された第1の実測電流値パターンと、第1の基準電流値パターンとの比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかが判定され、基準電流値パターンは、期待値パターンと、当該期待値パターンに対する高域側許容誤差及び低域側許容誤差とによって規定され、期待値パターンは、標準域電流値パターン、高域電流値パターン、及び低域電流値パターンの平均に基づいて設定され、高域側許容誤差は、高域電流値パターンと期待値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと期待値パターンとの差に基づいて設定されることを特徴とするものである。
第29の態様に係る被判定装置の真贋判定方法によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第29の態様に係る被判定装置の真贋判定方法によれば、第1の所定期間に関する第1の実測電流値パターンと第1の基準電流値パターンとのパターン比較部による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかが判定される。非正規品は粗悪品であることが多いため、非正規品の消費電流の絶対値は正規品のそれより大きい場合が多い。第28の態様に係る被判定装置の真贋判定方法によれば、消費電流の変化率パターンではなく実測電流値パターンと基準電流値パターンとが比較されるため、たとえ正規品と非正規品とで消費電流の変化率パターンが近似している場合であっても、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第29の態様に係る被判定装置の真贋判定方法によれば、期待値パターンは、標準域電流値パターン、高域電流値パターン、及び低域電流値パターンの平均に基づいて設定される。従って、標準域電流値パターンをそのまま期待値パターンとして設定する場合と比較して、高域側許容誤差と低域側許容誤差との差を小さくできるため、被判定装置の真贋判定精度を向上することが可能となる。しかも、高域側許容誤差は、高域電流値パターンと期待値パターンとの差に基づいて設定され、低域側許容誤差は、低域電流値パターンと期待値パターンとの差に基づいて設定される。従って、高域側許容誤差と低域側許容誤差との合計許容誤差を必要最小限に抑制できるため、被判定装置の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
本発明の第30の態様に係る被判定装置の真贋判定方法は、被判定装置の真贋判定機能を備え、前記被判定装置に電源を供給する電源供給部と、前記電源供給部から前記被判定装置に流れる電流を測定する電流測定部と、を有する情報処理装置において、前記被判定装置が正規品であるか非正規品であるかを判定する、被判定装置の真贋判定方法であって、(A)前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間において、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得するステップと、(B)前記ステップ(A)によって取得された複数の実測電流値に基づいて、実測電流値情報を作成するステップと、(C)前記ステップ(B)によって作成された第1の実測電流値情報と、正規品又は非正規品に関して予め作成された第1の基準電流値情報との比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定するステップと、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成され、前記ステップ(B)では、前記ステップ(A)によって取得された複数の実測電流値に基づいて、実測電流値情報としての実測拡散値が算出され、前記ステップ(C)では、前記ステップ(B)によって算出された実測拡散値と、基準電流値情報としての基準拡散値とが比較され、基準拡散値は、前記被判定装置の動作環境要素に起因して変動する複数域の基準電流値に基づいて求められ、前記ステップ(C)では、第1の所定期間に関する第1の実測拡散値と第1の基準拡散値との比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかが判定されることを特徴とするものである。
第30の態様に係る被判定装置の真贋判定方法によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
また、第30の態様に係る被判定装置の真贋判定方法によれば、第1の所定期間に関する第1の実測拡散値と第1の基準拡散値との比較結果に基づいて、被判定装置が正規品であるか非正規品であるかが判定される。従って、実測電流値と基準電流値とを比較する場合と比較して、瞬間的異常値に起因する影響を緩和できるため、製品の個体差や突発的ノイズ等に起因して実測電流値と基準電流値とが瞬間的に大きく相違する場合であっても、真贋判定の精度が低下する事態を回避又は抑制することが可能となる。
本発明の第31の態様に係る被判定装置の真贋判定方法は、信号処理回路と前記信号処理回路に電源を供給する電源供給部とを有する被判定装置の真贋判定機能を備え、前記電源供給部から前記信号処理回路に流れる電流を測定する電流測定部を有する情報処理装置において、前記被判定装置が正規品であるか非正規品であるかを判定する、被判定装置の真贋判定方法であって、(A)前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間において、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得するステップと、(B)前記ステップ(A)によって取得された複数の実測電流値に基づいて、実測電流値情報を作成するステップと、(C)前記ステップ(B)によって作成された第1の実測電流値情報と、正規品又は非正規品に関して予め作成された第1の基準電流値情報との比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定するステップと、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成されることを特徴とするものである。
第31の態様に係る被判定装置の真贋判定方法によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
本発明の第32の態様に係る被判定装置の真贋判定方法は、自身を被判定装置とする真贋判定機能を備え、信号処理回路と、前記信号処理回路に電源を供給する電源供給部と、前記電源供給部から前記信号処理回路に流れる電流を測定する電流測定部と、を有する情報処理装置において、前記被判定装置が正規品であるか非正規品であるかを判定する、被判定装置の真贋判定方法であって、(A)前記被判定装置の動作期間を区分した複数の所定期間のうち第1の所定期間において、複数の測定タイミングで前記電流測定部によって測定された複数の実測電流値を、前記電流測定部から取得するステップと、(B)前記ステップ(A)によって取得された複数の実測電流値に基づいて、実測電流値情報を作成するステップと、(C)前記ステップ(B)によって作成された第1の実測電流値情報と、正規品又は非正規品に関して予め作成された第1の基準電流値情報との比較結果に基づいて、前記被判定装置が正規品であるか非正規品であるかを判定するステップと、を備え、基準電流値情報は、前記被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成されることを特徴とするものである。
第32の態様に係る被判定装置の真贋判定方法によれば、基準電流値情報は、被判定装置の動作環境要素に起因して変動する複数域の電流値情報に基づいて作成される。従って、被判定装置の動作環境要素が変動した場合であっても、その変動は基準電流値情報に反映されているため、被判定装置の真贋判定を高精度に実行することが可能となる。
本発明によれば、被判定装置の動作環境要素が変動した場合であっても、被判定装置の真贋判定を高精度に実行することが可能となる。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。
<実施の形態1>
図1は、本発明の実施の形態1に係るメモリシステム1の構成を示す図である。図1に示すようにメモリシステム1は、ホスト装置2と、ホスト装置2に着脱自在に接続されたメモリ装置3とを備えて構成されている。ホスト装置2は、例えばパーソナルコンピュータ等の第1の情報処理装置であり、メモリ装置3は、ホスト装置2から電源供給を受けて動作する第2の情報処理装置、例えばフラッシュメモリのメモリカードである。他の例として、第1の情報処理装置はプリンタ又は複合機の本体であり、第2の情報処理装置はトナーカートリッジである。あるいは、第1の情報処理装置はゲーム機の本体であり、第2の情報処理装置はゲームプログラムが格納されたメモリカードである。
本実施の形態では、メモリ装置3の真贋判定をホスト装置2が実行する態様、つまり、ホスト装置2等の第1の情報処理装置が判定装置であり、メモリ装置3等の第2の情報処理装置が被判定装置である態様について説明する。
図2は、ホスト装置2の構成を簡略化して示す図である。図2に示すようにホスト装置2は、SoC(System on a Chip)111、電源制御部112、電流値測定回路113、及びメモリインタフェース114を備えて構成されている。SoC111は、ホスト装置2側の信号処理回路である。SoC111は、バス121を介して相互に接続された、CPU122、復号器123、期待値格納メモリ124、GPIO(General Purpose Input/Output)125、ADC(Analog to Digital Converter)126、コマンドバッファ127、データバッファ128、及び、ROM又はRAM等の記憶部129を備えて構成されている。記憶部129には、プログラム801が格納されている。ホスト装置2は、自身に接続されたメモリ装置3を動作させるための電源を、電源VCC1(電源供給部)から電源制御部112及び抵抗素子Rを介してメモリ装置3に供給する。電流値測定回路113は、抵抗素子Rの両端電圧を測定することにより、電源VCC1からメモリ装置3に流れる電流の電流値を測定する。
図3は、メモリ装置3の構成を簡略化して示す図である。図3に示すようにメモリ装置3は、メモリコントローラ131とメモリコア132とを備えて構成されている。メモリコントローラ131は、メモリ装置3側の信号処理回路である。メモリコントローラ131は、ホストインタフェース141、デコーダ142、及びメモリコアインタフェース143を備えて構成されている。メモリコア132の特定のアドレス領域には、後述する期待値データ901が格納されている。
図4は、図2に示したプログラム801をCPU122が実行することによって実現される機能を示す図である。図4に示すように、記憶部129から読み出したプログラム801をCPU122が実行することによって、CPU122は、ホスト装置2に接続されているメモリ装置3が正規品であるか非正規品であるかを判定する判定部150として機能する。換言すれば、プログラム801は、情報処理装置としてのホスト装置2に搭載されるコンピュータを、判定部150として機能させるためのプログラムである。
図4に示すように判定部150は、期間設定部151、電流値取得部152、パターン作成部153、パターン比較部154、及び真贋判定部155として機能する。なお、判定部150の機能は、CPU122によるソフトウェア処理によって実現する場合に限らず、専用回路等を用いたハードウェア処理によって実現しても良い。
メモリ装置3の正規品(純正品)と非正規品(偽造品)とでは、半導体デバイスの構造や製造プロセス等が異なるため、消費電流特性が顕著に相違する。本実施の形態に係るホスト装置2は、メモリ装置3の消費電流値(絶対値)を実測することによって実測電流値情報を作成し、その実測電流値情報と、正規品又は非正規品に関する既知の基準電流値情報とを比較することによって、自身に接続されているメモリ装置3が正規品であるか非正規品であるかの真贋判定を行う。以下、図面を参照しながら詳細に説明する。
図5は、メモリ装置3の消費電流特性の一例を示す図である。図5に示すように、メモリ装置3の通常動作期間は処理内容に応じて複数の期間Pに区分することができる。図5に示した例では、通常動作期間はこの順に並ぶ8つの期間P1〜P8に区分されている。例えば、期間P1は起動直後のパワーオン期間であり、期間P2は各種設定を初期化するための初期化期間であり、期間P3,P6はスタンバイ期間であり、期間P4は相互認証に向けての鍵交換期間であり、期間P5は交換した鍵を用いて相互認証を行う認証期間であり、期間P7はアプリケーションの実行期間であり、期間P8はシャットダウンに向けてのパワーオフ期間である。期間Pの他の例としては、コマンド入力期間、メモリコアアクセス期間、データ読み出し期間、データ書き込み期間、データ消去期間、及びデータ通信期間等が想定される。
正規品のメモリ装置3であれば、実装される半導体デバイスの種類や各デバイスの製造プロセスが厳密に管理されているため、各期間P1〜P8におけるメモリ装置3の消費電流特性はほぼ一定である。そこで、各期間P1〜P8の消費電流特性を示す情報が工場出荷前に作成されて、暗号化された期待値データ901(図3参照)として、メモリコア132の特定のアドレス領域に格納されている。本実施の形態の例では、期間P1〜P8の各々に関する基準電流値パターンが、期待値データ901としてメモリコア132に格納されている。基準電流値パターンは、消費電流を所定のサンプリング周波数でサンプリングすることによって得られる消費電流値の遷移パターンである。
なお、排除対象となる非正規品が既に特定されている場合には、正規品に関する基準電流値パターンに代えて、非正規品に関する基準電流値パターンをメモリコア132に格納しても良い。例えば、正規品に関する基準電流値パターンを用いる場合には、実測電流値パターン(詳細は後述する)と基準電流値パターンとが一致するか否かによって、メモリ装置3が正規品であるか否かを判定できる。非正規品に関する基準電流値パターンを用いる場合には、実測電流値パターンと基準電流値パターンとが一致するか否かによって、メモリ装置3が非正規品であるか否かを判定できる。本実施の形態及び後述の各変形例では、正規品に関する基準電流値パターンを用いる例について説明する。
本実施の形態では、メモリ装置3の動作環境要素に起因して変動する複数域の電流値パターンに基づいて、基準電流値パターンが作成される。動作環境要素としては、周辺温度、電源電圧、クロック周波数、及び経年劣化等が想定される。以下の説明では動作環境要素として周辺温度に着目し、メモリ装置3が動作する際の周辺温度が常温(20℃前後)、高温(50℃前後)、及び低温(0℃前後)の3つの温度領域に分類されている例について説明する。但し、4つ以上の温度領域に分類されていても良い。また、一つの動作環境要素の変動に限らず、複数の動作環境要素の変動に基づいて基準電流値パターンを作成しても良い。
図6は、基準電流値パターンの第1の設定例を示す図である。図5に示した期間P1〜P8の各々に関して、常温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして、標準域電流値パターンK0が作成される。そして、標準域電流値パターンK0が、期待値パターンPとして設定される。
また、低温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして、高域電流値パターンK1が作成され、高温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして、低域電流値パターンK2が作成される。ここで、「高域」とは標準域よりも消費電流値が大きくなる方向の領域を意味し、「低域」とは標準域よりも消費電流値が小さくなる方向の領域を意味する。そして、高域電流値パターンK1及び低域電流値パターンK2に含まれる全ての測定ポイントのうち、期待値パターンPとの差が最大となる測定ポイントが特定され、その最大差に相当する値、又はその最大差よりもわずかに大きい値が、高域側及び低域側の双方の許容誤差Qとして設定される。
これにより、期待値パターンPと許容誤差Qとによって規定される基準電流値パターンRが作成される。この例の場合、基準電流値パターンRの高域側許容値はP+Qとなり、低域側許容値はP−Qとなる。
図7は、基準電流値パターンの第2の設定例を示す図である。図5に示した期間P1〜P8の各々に関して、常温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして、標準域電流値パターンK0が作成される。そして、標準域電流値パターンK0が、期待値パターンPとして設定される。
また、低温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして、高域電流値パターンK1が作成される。そして、高域電流値パターンK1に含まれる全ての測定ポイントのうち、期待値パターンPとの差が最大となる測定ポイントが特定され、その最大差に相当する値、又はその最大差よりもわずかに大きい値が、高域側許容誤差QHとして設定される。
また、高温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして、低域電流値パターンK2が作成される。そして、低域電流値パターンK2に含まれる全ての測定ポイントのうち、期待値パターンPとの差が最大となる測定ポイントが特定され、その最大差に相当する値、又はその最大差よりもわずかに大きい値が、低域側許容誤差QLとして設定される。
これにより、期待値パターンPと高域側許容誤差QHと低域側許容誤差QLとによって規定される基準電流値パターンRが作成される。この例の場合、基準電流値パターンRの高域側許容値はP+QHとなり、低域側許容値はP−QLとなる。
図8は、基準電流値パターンの第3の設定例を示す図である。図5に示した期間P1〜P8の各々に関して、常温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして標準域電流値パターンK0が作成され、標準域電流値パターンK0が標準域期待値パターンP0として設定される。また、低温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして高域電流値パターンK1が作成され、高域電流値パターンK1が高域期待値パターンP1として設定される。また、高温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして低域電流値パターンK2が作成され、低域電流値パターンK2が低域期待値パターンP2として設定される。
そして、メモリ装置3の動作温度領域を全て包含するように、標準域期待値パターンP0、高域期待値パターンP1、及び低域期待値パターンP2の各々を中心として、高域側及び低域側の両方向に拡がる許容誤差Qが設定される。
これにより、標準域期待値パターンP0と許容誤差Qとによって規定される標準域基準電流値パターンR0と、高域期待値パターンP1と許容誤差Qとによって規定される高域基準電流値パターンR1と、低域期待値パターンP2と許容誤差Qとによって規定される低域基準電流値パターンR2とが作成される。この例の場合、標準域基準電流値パターンR0の高域側許容値はP0+Qとなり、低域側許容値はP0−Qとなる。また、高域基準電流値パターンR1の高域側許容値はP1+Qとなり、低域側許容値はP1−Qとなる。また、低域基準電流値パターンR2の高域側許容値はP2+Qとなり、低域側許容値はP2−Qとなる。
なお、図8に示した例では、標準域期待値パターンP0、高域期待値パターンP1、及び低域期待値パターンP2の全てのパターンに関して同一の値の許容誤差Qが設定されたが、各々のパターン毎に異なる値の許容誤差を設定しても良い。この場合、複数の基準電流値パターンR0〜R2の各々に対して個別に許容誤差Q0〜Q2を設定することによって、許容誤差Q0〜Q2の各々を最小限に抑えることができるため、被判定装置の真贋判定精度を向上することが可能となる。また、図8に示した例では、高域側許容誤差及び低域側許容誤差として同一の値の許容誤差Qが設定されたが、高域側許容誤差及び低域側許容誤差として異なる値の許容誤差を設定しても良い。この場合、高域側許容誤差及び低域側許容誤差の各々を最小限に抑えることができるため、被判定装置の真贋判定精度を向上することが可能となる。
図9は、基準電流値パターンの第4の設定例を示す図である。図5に示した期間P1〜P8の各々に関して、常温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして標準域電流値パターンK0が作成され、低温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして高域電流値パターンK1が作成され、高温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして低域電流値パターンK2が作成される。そして、標準域電流値パターンK0、高域電流値パターンK1、及び低域電流値パターンK2を平均化した電流値パターンが、期待値パターンPとして設定される。
そして、高域電流値パターンK1に含まれる全ての測定ポイントのうち、期待値パターンPとの差が最大となる測定ポイントが特定され、その最大差に相当する値、又はその最大差よりもわずかに大きい値が、高域側許容誤差QHとして設定される。
また、低域電流値パターンK2に含まれる全ての測定ポイントのうち、期待値パターンPとの差が最大となる測定ポイントが特定され、その最大差に相当する値、又はその最大差よりもわずかに大きい値が、低域側許容誤差QLとして設定される。
これにより、期待値パターンPと高域側許容誤差QHと低域側許容誤差QLとによって規定される基準電流値パターンRが作成される。この例の場合、基準電流値パターンRの高域側許容値はP+QHとなり、低域側許容値はP−QLとなる。
図10は、基準電流値パターンの第5の設定例を示す図である。図5に示した期間P1〜P8の各々に関して、常温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして標準域電流値パターンK0が作成され、低温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして高域電流値パターンK1が作成され、高温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして低域電流値パターンK2が作成される。そして、標準域電流値パターンK0、高域電流値パターンK1、及び低域電流値パターンK2を平均化した電流値パターンが、期待値パターンPとして設定される。
そして、高域電流値パターンK1及び低域電流値パターンK2に含まれる全ての測定ポイントのうち、期待値パターンPとの差が最大となる測定ポイントが特定され、その最大差に相当する値、又はその最大差よりもわずかに大きい値が、高域側及び低域側の双方の許容誤差Qとして設定される。
これにより、期待値パターンPと許容誤差Qとによって規定される基準電流値パターンRが作成される。この例の場合、基準電流値パターンRの高域側許容値はP+Qとなり、低域側許容値はP−Qとなる。
図11は、基準電流値パターンの第6の設定例を示す図である。図5に示した期間P1〜P8の各々に関して、低温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして高域電流値パターンK1が作成され、高温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして低域電流値パターンK2が作成される。そして、高域電流値パターンK1と低域電流値パターンK2とを平均化した電流値パターンが、期待値パターンPとして設定される。
そして、高域電流値パターンK1及び低域電流値パターンK2に含まれる全ての測定ポイントのうち、期待値パターンPとの差が最大となる測定ポイントが特定され、その最大差に相当する値、又はその最大差よりもわずかに大きい値が、高域側及び低域側の双方の許容誤差Qとして設定される。
これにより、期待値パターンPと許容誤差Qとによって規定される基準電流値パターンRが作成される。この例の場合、基準電流値パターンRの高域側許容値はP+Qとなり、低域側許容値はP−Qとなる。
図12は、ホスト装置2によるメモリ装置3の真贋判定処理の流れを示すフローチャートである。メモリ装置3がホスト装置2に接続されると、まずステップSP101においてCPU122(期間設定部151)は、期間P1〜P8の中から、真贋判定の実行対象となる少なくとも一つの判定対象期間(以下「第1の所定期間」と称す)を設定する。期間設定部151は、期間P1〜P8のうち、消費電流値及びその変化量が大きく、また消費電力の変化態様がデバイスに依存して特徴的である期間を判定対象期間として設定する。本実施の形態の例では、パワーオン期間である期間P1が第1の所定期間として設定されたものとする。期間設定部151は、予め定められた規則に従って第1の所定期間を静的に変更することができ、あるいは、真贋判定の累積実行回数やメモリシステム1の稼働状況等に応じて第1の所定期間を動的に変更することができる。
また、期間設定部151は、第1の所定期間に対して実行する真贋判定の処理内容を設定する。本実施の形態の例では、「電流値パターン同士の比較処理」が、真贋判定の処理内容として設定される。但し、電流値パターン同士の比較処理がデフォルト処理として実行される場合には、この設定は省略しても良い。
次にステップSP102においてCPU122は、電源制御部112に電源供給を開始させるための制御コマンドを、GPIO125にセットする。当該制御コマンドはGPIO125から電源制御部112に入力され、電源制御部112は、電源VCC1からメモリ装置3への電源供給を開始する。
次にステップSP103においてCPU122は、メモリ装置3から所望の期待値データ901を読み出すための読み出しコマンドを、コマンドバッファ127にセットする。当該読み出しコマンドは、コマンドバッファ127からメモリインタフェース114を介してメモリ装置3に送信される。ホストインタフェース141は、ホスト装置2から受信した当該読み出しコマンドを、デコーダ142に入力する。デコーダ142は、入力された当該読み出しコマンドをデコードすることにより、所望の期待値データ901の読み出しアドレスをメモリコアインタフェース143に入力する。当該読み出しアドレスはメモリコアインタフェース143からメモリコア132に入力され、これによって、所望の期待値データ901がメモリコア132から読み出される。本実施の形態の例では、真贋判定の処理内容が「期間P1を対象とする電流値パターン同士の比較処理」に設定されているため、期間P1に関する基準電流値パターンRがメモリコア132から読み出される。例えば図7に示した設定例が採用されている場合には、期間P1に関する期待値パターンP、高域側許容誤差QH、及び低域側許容誤差QLが、所望の期待値データ901としてメモリコア132から読み出される。
読み出された期待値データ901は、暗号化された状態で、メモリコアインタフェース143及びホストインタフェース141を介してホスト装置2に送信される。メモリインタフェース114は、メモリ装置3から受信した期待値データ901を、データバッファ128を介して復号器123に入力する。復号器123は、暗号化されている期待値データ901を復号化する。復号化された期待値データ901は、期待値格納メモリ124に格納される。本実施の形態の例では、期間P1に関する期待値パターンP、高域側許容誤差QH、及び低域側許容誤差QLが、期待値格納メモリ124に格納される。
パワーオン期間である期間P1が第1の所定期間として設定されているため、次にステップSP104においてCPU122は、電源制御部112に電源供給を停止させるための制御コマンドを、GPIO125にセットする。当該制御コマンドはGPIO125から電源制御部112に入力され、電源制御部112は、電源VCC1からメモリ装置3への電源供給を停止する。
次にステップSP105においてCPU122は、電源制御部112に電源供給を開始させるための制御コマンドを、GPIO125にセットする。当該制御コマンドはGPIO125から電源制御部112に入力され、電源制御部112は、電源VCC1からメモリ装置3への電源供給を開始する。これにより、パワーオン期間である期間P1が開始される。
次にステップSP106においてCPU122は、ADC126を駆動する。電源VCC1からメモリ装置3への電源供給が開始されたことにより、抵抗素子Rに電流が流れる。電流値測定回路113は、抵抗素子Rの両端電圧を所定のサンプリング周波数(例えば1MHz〜数MHz)でサンプリングすることによって、電源VCC1からメモリ装置3へ流れる電流の電流値を実測する。実測された電流値は、図示しないプリアンプによって増幅された後、ADC126によってAD変換され、その後、電流値取得部152によってCPU122に順次入力される。なお、ADC126によるAD変換よりも前にプリアンプによって実測電流値を増幅する上記の構成に代えて、ADC126によるAD変換よりも後に乗算器によって実測電流値を増幅する構成を採用しても良い。
次にステップSP107においてCPU122(パターン作成部153)は、電流値取得部152によって順次取得された複数の実測電流値を時系列順に配列することによって、期間P1に関するメモリ装置3の実測電流値パターンを作成する。
次にステップSP108においてCPU122(パターン比較部154)は、期待値格納メモリ124から期待値パターンP、高域側許容誤差QH、及び低域側許容誤差QL(つまり基準電流値パターンR)を読み出して取得する。
次にステップSP109においてCPU122(パターン比較部154)は、パターン作成部153によって作成された実測電流値パターンと、期待値格納メモリ124から読み出した基準電流値パターンRとを比較する。
図13は、実測電流値パターンZ及び基準電流値パターンRの一例を示す図である。ここでは、図7に示した設定例が採用された場合を想定している。電流値測定回路113のサンプリング周波数が1MHz〜数MHzであり、期間P1の長さが数m秒〜数十m秒である場合には、実際には実測電流値パターンZ及び基準電流値パターンRはそれぞれ数十万個〜数百万個の実測電流値Y及び基準電流値Xによって構成される。しかし図13では説明の簡単化のため、実測電流値パターンZ及び基準電流値パターンRがそれぞれ7個の実測電流値Y01〜Y07及び基準電流値X01〜X07によって構成された例を示している。パターン比較部154は、それぞれ対応する実測電流値Y01〜Y07と基準電流値X01〜X07との差が、期待値格納メモリ124から読み出した許容誤差(Y>Xの場合は高域側許容誤差QH、Y<Xの場合は低域側許容誤差QL)以下であるか否かを比較する。
次にステップSP110においてCPU122(真贋判定部155)は、実測電流値Yと基準電流値Xとの差の全てが許容誤差以下であるか否かを判定する。そして真贋判定部155は、これらの差の全てが許容誤差以下である場合(つまり完全一致する場合)には、ホスト装置2に接続されているメモリ装置3は正規品であると判定して、真贋判定処理を終了する。図13に示した例では、実測電流値Y01〜Y07と基準電流値X01〜X07とが完全一致するため、メモリ装置3は正規品であると判定される。
なお、図6,7,9,10,11に示した設定例が採用されている場合には、パターン比較部154は実測電流値パターンZと基準電流値パターンRとを比較する。また、図8に示した設定例が採用されている場合には、パターン比較部154は、実測電流値パターンZと基準電流値パターンR0〜R2とを比較し、真贋判定部155は、実測電流値パターンZが基準電流値パターンR0〜R2のいずれか一つと一致している場合には、メモリ装置3は正規品であると判定する。
一方、少なくとも一つの差が許容誤差を超える場合(つまり完全一致しない場合)には、真贋判定部155は、ホスト装置2に接続されているメモリ装置3は非正規品であると判定して、非正規品であるメモリ装置3を排除するための処理を開始する。例えば、電源制御部112に電源供給を停止させるための制御コマンドをGPIO125にセットすることにより、電源VCC1からメモリ装置3への電源供給を停止する。
なお、以上の説明では、実測電流値Yと基準電流値Xとの差を求める演算、及び、各電流値の差が許容誤差以下であるか否かの演算を、CPU122のソフトウェア処理によって実行する例について述べた。しかし、電流値測定回路113の膨大なサンプリング数に起因してCPU122の処理負荷が増大することを回避すべく、これらの演算は、専用の演算器を用いたハードウェア処理によって実行しても良い。
図14は、ホスト装置2の他の構成例を示す図である。SoC111に演算器130が実装されている。実測電流値Yと基準電流値Xとの差を求める演算、及び、各電流値の差が許容誤差以下であるか否かの演算は、演算器130によって実行され、それらの演算の結果が演算器130からCPU122に入力される。
このように本実施の形態に係るホスト装置2(情報処理装置)によれば、基準電流値パターンR(基準電流値情報)は、メモリ装置3(被判定装置)の動作環境要素に起因して変動する複数域の電流値パターンKに基づいて作成される。従って、メモリ装置3の動作環境要素が変動した場合であっても、その変動は基準電流値パターンRに反映されているため、メモリ装置3の真贋判定を高精度に実行することが可能となる。
また、本実施の形態に係るホスト装置2によれば、基準電流値パターンRは、期待値パターンPと、当該期待値パターンPに対する許容誤差Q,QH,QLとによって規定される。従って、個体差やノイズ等に起因して正規品の実測電流値パターンが期待値パターンPからわずかにずれた場合であっても、そのような正規品が誤って非正規品と判定される事態を回避することができる。
また、本実施の形態に係るホスト装置2によれば、真贋判定部155は、期間P1(第1の所定期間)に関する第1の実測電流値パターンと第1の基準電流値パターンとのパターン比較部154による比較結果に基づいて、メモリ装置3が正規品であるか非正規品であるかを判定する。非正規品は粗悪品であることが多いため、非正規品の消費電流の絶対値は正規品のそれより大きい場合が多い。本実施の形態に係るホスト装置2によれば、真贋判定部155は、消費電流の変化率パターンではなく実測電流値パターンと基準電流値パターンとを比較するため、たとえ正規品と非正規品とで消費電流の変化率パターンが近似している場合であっても、メモリ装置3の真贋判定を高精度に実行することが可能となる。
また、図7に示した例によれば、高域側許容誤差QHは、高域電流値パターンK1と標準域電流値パターンK0との差に基づいて設定され、低域側許容誤差QLは、低域電流値パターンK2と標準域電流値パターンK0との差に基づいて設定される。従って、高域側許容誤差QHと低域側許容誤差QLとの合計許容誤差(QH+QL)を必要最小限に抑制できるため、メモリ装置3の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間(パワーオン期間等)を判定対象期間として設定する場合に、特に有効となる。
また、図8に示した例によれば、基準電流値パターンRは、動作環境要素(この例の場合は温度領域)毎に作成された、相補する複数の基準電流値パターンR0〜R2を含む。従って、複数の基準電流値パターンR0〜R2の各々においては、高域側許容誤差と低域側許容誤差との合計許容誤差(2Q)を必要最小限に抑制できるため、メモリ装置3の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
また、図8に示した例によれば、複数の基準電流値パターンR0〜R2に関して同一の許容誤差Qが設定される。従って、複数の基準電流値パターンR0〜R2の各々に対して個別に許容誤差が設定される場合と比較すると、基準電流値パターンR0〜R2の実装コストを削減することが可能となる。
また、図9に示した例によれば、期待値パターンPは、標準域電流値パターンK0、高域電流値パターンK1、及び低域電流値パターンK2の平均に基づいて設定される。従って、標準域電流値パターンK0をそのまま期待値パターンPとして設定する場合と比較して、高域側許容誤差QHと低域側許容誤差QLとの差を小さくできるため、メモリ装置3の真贋判定精度を向上することが可能となる。しかも、高域側許容誤差QHは、高域電流値パターンK1と期待値パターンPとの差に基づいて設定され、低域側許容誤差QLは、低域電流値パターンK2と期待値パターンPとの差に基づいて設定される。従って、高域側許容誤差QHと低域側許容誤差QLとの合計許容誤差(QH+QL)を必要最小限に抑制できるため、メモリ装置3の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
また、図10に示した例によれば、期待値パターンPは、標準域電流値パターンK0、高域電流値パターンK1、及び低域電流値パターンK2の平均に基づいて設定される。従って、標準域電流値パターンK0をそのまま期待値パターンPとして設定する場合と比較して、高域側許容誤差と低域側許容誤差との差を小さくできるため、メモリ装置3の真贋判定精度を向上することが可能となる。しかも、高域側許容誤差及び低域側許容誤差は等しい値(Q)に設定されるため、高域側許容誤差及び低域側許容誤差を個別の値に設定する場合と比較して、基準電流値パターンRの実装コストを削減することが可能となる。電流値の変化が比較的小さい期間を判定対象期間として設定する場合に、特に有効となる。
また、図11に示した例によれば、期待値パターンPは、高域電流値パターンK1と低域電流値パターンK2との平均に基づいて設定される。従って、標準域電流値パターンK0をそのまま期待値パターンPとして設定する場合と比較して、高域側許容誤差と低域側許容誤差との差を小さくできるため、メモリ装置3の真贋判定精度を向上することが可能となる。しかも、高域側許容誤差及び低域側許容誤差は等しい値(Q)に設定されるため、高域側許容誤差及び低域側許容誤差を個別の値に設定する場合と比較して、基準電流値パターンRの実装コストを削減することが可能となる。電流値の変化が比較的小さい期間を判定対象期間として設定する場合に、特に有効となる。
また、本実施の形態に係るホスト装置2によれば、真贋判定部155は、第1の所定期間に関する全ての実測電流値Yが、対応する基準電流値Xと一致しているか否かによって、メモリ装置3が正規品であるか非正規品であるかを判定する。従って例えば、非正規品が、実測電流値パターンの一部において正規品のそれと異なる場合であっても、そのような非正規品を高精度に排除することが可能となる。
また、本実施の形態に係るホスト装置2によれば、基準電流値パターンRはメモリ装置3のメモリコア132(記憶部)に記憶されている。メモリ装置3の基準電流値パターンRは、デバイスの構造や製造プロセス等に依存するため、デバイス毎に異なる。従って、あるメモリ装置3に関して求めた基準電流値パターンRを、そのメモリ装置3のメモリコア132に記憶しておくことにより、デバイス毎に異なる基準電流値パターンRを簡易に管理することが可能となる。
以下、上記実施の形態1に対する様々な変形例について説明する。以下に述べる変形例は、変形例同士を任意に組み合わせて適用することが可能であり、また、後述する実施の形態2〜5に対して適用することも可能である。
<変形例1−1>
上記実施の形態1では、真贋判定部155は、期間P1に関する全ての実測電流値Y01〜Y07が、対応する基準電流値X01〜X07と完全一致している場合に、メモリ装置3が正規品であると判定した。
これに対して本変形例に係る真贋判定部155は、期間P1に関する全ての実測電流値Y01〜Y07のうち、対応する基準電流値X01〜X07と一致する実測電流値Yの割合が第1のしきい値以上である場合に、メモリ装置3が正規品であると判定し、一方、当該割合が第1のしきい値未満である場合に、メモリ装置3が非正規品であると判定する。第1のしきい値は、要求される判定精度等に応じて最適値がステップSP101において併せて設定され、少なくとも51%以上の値に設定される。
本変形例に係るホスト装置2によれば、真贋判定部155は、期間P1に関する全ての実測電流値Y01〜Y07のうち、対応する基準電流値X01〜X07と一致する実測電流値Yの割合が第1のしきい値以上であるか否かによって、メモリ装置3が正規品であるか非正規品であるかを判定する。従って例えば、突発的なノイズ等に起因して正規品の実測電流値Y01〜Y07が瞬間的に増減した場合であっても、正規品が誤って非正規品と判定される事態を回避することが可能となる。
本変形例に係るホスト装置2によれば、真贋判定部155は、第1の所定期間に関する全ての実測電流値Yのうち、対応する基準電流値Xと一致する実測電流値Yの割合が第1のしきい値以上であるか否かによって、メモリ装置3が正規品であるか非正規品であるかを判定する。従って例えば、突発的なノイズ等に起因して正規品の実測電流値Yが瞬間的に増減した場合であっても、正規品が誤って非正規品と判定される事態を回避することが可能となる。
<変形例1−2>
上記実施の形態1では、パターン作成部153は実測電流値パターンを一回だけ作成し、パターン比較部154は実測電流値パターンと基準電流値パターンとを一回だけ比較し、真贋判定部155はパターン比較部154による一回だけの比較結果に基づいてメモリ装置3の真贋判定を行った。
これに対して本変形例に係る真贋判定部155は、パターン比較部154による複数回の比較結果に基づいてメモリ装置3の真贋判定を行う。
図15は、ホスト装置2によるメモリ装置3の真贋判定処理の流れを示すフローチャートである。ステップSP109に引き続き、ステップSP150において真贋判定部155は、パターン比較部154による実測電流値パターンと基準電流値パターンとの比較処理が、所定のN回(Nは複数)実行されたか否かを判定する。
N回の比較処理が実行されていない場合には、CPU122は、ステップSP104〜SP109の処理を再度実行する。一方、N回の比較処理が実行された場合には、CPU122は、ステップSP110の処理に移行する。
ステップSP110において真贋判定部155は、パターン比較部154によるN回の比較処理のうち、実測電流値パターンが基準電流値パターンに一致していると判定された割合が第2のしきい値以上である場合に、メモリ装置3が正規品であると判定し、一方、当該割合が第2のしきい値未満である場合に、メモリ装置3が非正規品であると判定する。所定回数Nの値は、要求される判定精度等に応じて最適値がステップSP101において併せて設定される。また、第2のしきい値は、要求される判定精度等に応じて最適値がステップSP101において併せて設定され、少なくとも51%以上の値に設定される。
本変形例に係るホスト装置2によれば、真贋判定部155は、電流値取得部152による実測電流値の取得処理、パターン作成部153による実測電流値パターンの作成処理、及びパターン比較部154による実測電流値パターンと基準電流値パターンとの比較処理を複数N回実行し、パターン比較部154によるN回の比較処理のうち、実測電流値パターンが基準電流値パターンに一致していると判定された割合が第2のしきい値以上であるか否かによって、メモリ装置3が正規品であるか非正規品であるかを判定する。このように、電流値取得部152、パターン作成部153、及びパターン比較部154による一連の処理を複数N回繰り返して実行し、パターン比較部154によるN回の比較結果に基づいてメモリ装置3の真贋判定を行うことにより、判定精度を向上することが可能となる。
<変形例1−3>
上記実施の形態1では、期間設定部151は、メモリ装置3の動作期間を区分した複数の期間P1〜P8のうち一つの期間P1のみを、判定対象期間として設定した。
これに対して本変形例に係る期間設定部151は、期間P1〜P8のうちの複数の期間を、判定対象期間として設定する。
図16は、メモリ装置3の消費電流特性の一例を示す図である。この例において期間設定部151は、パワーオン期間である期間P1(第1の所定期間)と鍵交換期間である期間P4(第2の所定期間)とを、ステップSP101において判定対象期間として設定する。期間設定部151は、予め定められた規則に従って第1の所定期間及び第2の所定期間を静的に変更することができ、あるいは、真贋判定の累積実行回数やメモリシステム1の稼働状況等に応じて第1の所定期間及び第2の所定期間を動的に変更することができる。
また、ステップSP101において期間設定部151は、期間P1,P4の各々に対して実行する真贋判定の処理内容を設定する。本変形例の例では、「電流値パターン同士の比較処理」が、真贋判定の処理内容としていずれも設定される。
ステップSP103では、期間P1,P4の各々に関する基準電流値パターン(期待値パターン及び許容誤差値を示すデータ)が、所望の期待値データ901としてメモリコア132から読み出される。これらの情報は、メモリ装置3からホスト装置2に送信され、復号器123によって復号化された後、期待値格納メモリ124に格納される。
電流値取得部152は、期間P1,P4の各々に関して実測電流値の取得処理を実行し、パターン作成部153は、期間P1,P4の各々に関して実測電流値パターンの作成処理を実行し、パターン比較部154は、期間P1,P4の各々に関して実測電流値パターンと基準電流値パターンとの比較処理を実行する。
真贋判定部155は、期間P1に関するパターン比較部154による比較結果と、期間P4に関するパターン比較部154による比較結果とに基づいて、メモリ装置3が正規品であるか非正規品であるかを判定する。例えば、期間P1,P4の双方において、実測電流値パターンと基準電流値パターンとが一致する場合には、メモリ装置3が正規品であると判定し、一方、期間P1,P4の少なくとも一方において、実測電流値パターンと基準電流値パターンとが一致しない場合には、メモリ装置3が非正規品であると判定する。
本変形例に係るホスト装置2によれば、真贋判定部155はさらに、期間P4(第2の所定期間)に関してパターン作成部153によって作成された実測電流値パターン(第2の実測電流値パターン)と、期間P4に関して予め求められた基準電流値パターン(第2の基準電流値パターン)との、パターン比較部154による比較結果に基づいて、メモリ装置3が正規品であるか非正規品であるかを判定する。このように、期間P1のみならず期間P4に関しても実測電流値パターンと基準電流値パターンとの比較を行うことにより、期間P1,P4の双方の比較結果に基づいてメモリ装置3の真贋判定を行うことができるため、判定精度をより向上することが可能となる。
<実施の形態2>
上記実施の形態1では、真贋判定部155は、実測電流値パターンと基準電流値パターンとの比較結果に基づいて、メモリ装置3の真贋判定を行った。これに対して本実施の形態に係る真贋判定部155は、実測拡散値と基準拡散値との比較結果に基づいて、メモリ装置3の真贋判定を行う。
図17は、図2に示したプログラム801をCPU122が実行することによって実現される機能を示す図である。図17に示すように、記憶部129から読み出したプログラム801をCPU122が実行することによって、CPU122は、ホスト装置2に接続されているメモリ装置3が正規品であるか非正規品であるかを判定する判定部250として機能する。換言すれば、プログラム801は、情報処理装置としてのホスト装置2に搭載されるコンピュータを、判定部250として機能させるためのプログラムである。
図17に示すように判定部250は、期間設定部251、電流値取得部252、拡散値算出部253、拡散値比較部254、及び真贋判定部255として機能する。ここで「拡散値」とは、複数の値のばらつき度合いを表す指標を意味する。なお、判定部250の機能は、CPU122によるソフトウェア処理によって実現する場合に限らず、専用回路等を用いたハードウェア処理によって実現しても良い。
メモリ装置3の正規品(純正品)と非正規品(偽造品)とでは、半導体デバイスの構造や製造プロセス等が異なるため、消費電流特性が顕著に相違する。また、製品の個体差や突発的ノイズ等に起因して、メモリ装置3の消費電流特性が瞬間的に大きく変動するという事態を想定する必要もある。本実施の形態に係るホスト装置2は、所定期間においてメモリ装置3の消費電流値を実測し、それによって得られた複数の実測電流値の拡散値(実測拡散値)を算出する。そして、その実測拡散値と、正規品又は非正規品に関する既知の基準拡散値とを比較することによって、自身に接続されているメモリ装置3が正規品であるか非正規品であるかの真贋判定を行う。以下、図面を参照しながら詳細に説明する。
上記の通り、正規品のメモリ装置3であれば、実装される半導体デバイスの種類や各デバイスの製造プロセスが厳密に管理されているため、図5に示した各期間P1〜P8におけるメモリ装置3の消費電流特性はほぼ一定である。そこで、各期間P1〜P8の消費電流特性を示す情報が工場出荷前に作成されて、暗号化された期待値データ901(図3参照)として、メモリコア132の特定のアドレス領域に格納されている。本実施の形態の例では、期間P1〜P8の各々に関する基準拡散値が、期待値データ901としてメモリコア132に格納されている。基準拡散値は、消費電流を所定のサンプリング周波数でサンプリングすることによって得られる複数の消費電流値の拡散値である。
なお、排除対象となる非正規品が既に特定されている場合には、正規品に関する基準拡散値に代えて、非正規品に関する基準拡散値をメモリコア132に格納しても良い。正規品に関する基準拡散値を用いる場合には、実測拡散値(詳細は後述する)と基準拡散値とが一致するか否かによって、メモリ装置3が正規品であるか否かを判定できる。非正規品に関する基準拡散値を用いる場合には、実測拡散値と基準拡散値とが一致するか否かによって、メモリ装置3が非正規品であるか否かを判定できる。本実施の形態及び後述の各変形例では、正規品に関する基準拡散値を用いる例について説明する。
本実施の形態では、メモリ装置3の動作環境要素に起因して変動する複数域の電流値パターンに基づいて、基準拡散値が算出される。以下の説明では動作環境要素として周辺温度に着目し、メモリ装置3が動作する際の周辺温度が常温(20℃前後)、高温(50℃前後)、及び低温(0℃前後)の3つの温度領域に分類されている例について説明する。
図18は、基準拡散値の第1の設定例を示す図である。この例において、拡散値は分散又は標準偏差であり、以下の例では分散を用いる。標準偏差は、分散の平方根をとることで算出できる。
図5に示した期間P1〜P8の各々に関して、常温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして標準域電流値パターンK0が作成され、低温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして高域電流値パターンK1が作成され、高温でメモリ装置3を動作させた際の消費電流値の遷移パターンとして低域電流値パターンK2が作成される。図18では、説明の簡単化のため、標準域電流値パターンK0に含まれる基準電流値X01〜X10と、高域電流値パターンK1に含まれる基準電流値X11〜X20と、低域電流値パターンK2に含まれる基準電流値X21〜X30とを示している。
標準域電流値パターンK0に含まれる基準電流値X01〜X10の平均値A0を求め、各基準電流値X01〜X10と平均値A0との差を2乗することによって得られる値の総和を、総数で除算することによって、分散V0を算出する。また、高域電流値パターンK1に含まれる基準電流値X11〜X20の平均値A1を求め、各基準電流値X11〜X20と平均値A1との差を2乗することによって得られる値の総和を、総数で除算することによって、分散V1を算出する。また、低域電流値パターンK2に含まれる基準電流値X21〜X30の平均値A2を求め、各基準電流値X21〜X30と平均値A2との差を2乗することによって得られる値の総和を、総数で除算することによって、分散V2を算出する。
そして、分散V0〜V2の平均値を求めることによって、基準拡散値として分散Vを算出する。また、基準電流値の分布態様等に応じて、分散Vに対してプラスマイナス数%からプラスマイナス数10%の範囲内で最適な許容誤差値が設定される。
なお、J個(Jは任意の複数)の標準域電流値パターンK01〜K0Jを作成し、各パターンの分散V01〜V0Jを算出し、その平均値を分散V0としても良い。同様に、複数J個の高域電流値パターンK11〜K1Jを作成し、各パターンの分散V11〜V1Jを算出し、その平均値を分散V1としても良い。同様に、複数J個の低域電流値パターンK21〜K2Jを作成し、各パターンの分散V21〜V2Jを算出し、その平均値を分散V2としても良い。
また、分散V0(又は分散V01〜V0J)と分散Vとの差、分散V1(又は分散V11〜V1J)と分散Vとの差、及び分散V2(又は分散V21〜V2J)と分散Vとの差をそれぞれ算出し、これらの差のうち最大のものを、分散Vに対する許容誤差値として設定しても良い。
図19は、基準拡散値の第2の設定例を示す図である。この例においても、拡散値は分散又は標準偏差であり、以下の例では分散を用いる。
標準域電流値パターンK0に含まれる基準電流値X01〜X10の平均値A0を求め、各基準電流値X01〜X10と平均値A0との差を2乗することによって得られる値の総和を、総数で除算することによって、標準域の基準拡散値として分散V0を算出する。また、基準電流値の分布態様等に応じて、分散V0に対してプラスマイナス数%からプラスマイナス数10%の範囲内で最適な許容誤差値が設定される。なお、複数J個の標準域電流値パターンK01〜K0Jを作成し、各パターンの分散V01〜V0Jを算出し、その平均値を分散V0としても良い。また、分散V01〜V0Jと分散V0との差をそれぞれ算出し、これらの差のうち最大のものを、分散V0に対する許容誤差値として設定しても良い。
また、高域電流値パターンK1に含まれる基準電流値X11〜X20の平均値A1を求め、各基準電流値X11〜X20と平均値A1との差を2乗することによって得られる値の総和を、総数で除算することによって、高域の基準拡散値として分散V1を算出する。また、基準電流値の分布態様等に応じて、分散V1に対してプラスマイナス数%からプラスマイナス数10%の範囲内で最適な許容誤差値が設定される。なお、複数J個の高域電流値パターンK11〜K1Jを作成し、各パターンの分散V11〜V1Jを算出し、その平均値を分散V1としても良い。また、分散V11〜V1Jと分散V1との差をそれぞれ算出し、これらの差のうち最大のものを、分散V1に対する許容誤差値として設定しても良い。
また、低域電流値パターンK2に含まれる基準電流値X21〜X30の平均値A2を求め、各基準電流値X21〜X30と平均値A2との差を2乗することによって得られる値の総和を、総数で除算することによって、低域の基準拡散値として分散V2を算出する。また、基準電流値の分布態様等に応じて、分散V2に対してプラスマイナス数%からプラスマイナス数10%の範囲内で最適な許容誤差値が設定される。なお、複数J個の低域電流値パターンK21〜K2Jを作成し、各パターンの分散V21〜V2Jを算出し、その平均値を分散V2としても良い。また、分散V21〜V2Jと分散V2との差をそれぞれ算出し、これらの差のうち最大のものを、分散V2に対する許容誤差値として設定しても良い。
図20は、ホスト装置2によるメモリ装置3の真贋判定処理の流れを示すフローチャートである。メモリ装置3がホスト装置2に接続されると、まずステップSP201においてCPU122(期間設定部251)は、期間P1〜P8の中から、真贋判定の実行対象となる少なくとも一つの判定対象期間(以下「第1の所定期間」と称す)を設定する。本実施の形態の例では、パワーオン期間である期間P1が第1の所定期間として設定されたものとする。また、期間設定部251は、第1の所定期間に対して実行する真贋判定の処理内容を設定する。本実施の形態の例では、「拡散値同士の比較処理」が、真贋判定の処理内容として設定される。但し、拡散値同士の比較処理がデフォルト処理として実行される場合には、この設定は省略しても良い。
次にステップSP202においてCPU122は、電源制御部112に電源供給を開始させるための制御コマンドを、GPIO125にセットする。当該制御コマンドはGPIO125から電源制御部112に入力され、電源制御部112は、電源VCC1からメモリ装置3への電源供給を開始する。
次にステップSP203においてCPU122は、メモリ装置3から所望の期待値データ901を読み出すための読み出しコマンドを、コマンドバッファ127にセットする。当該読み出しコマンドは、コマンドバッファ127からメモリインタフェース114を介してメモリ装置3に送信される。ホストインタフェース141は、ホスト装置2から受信した当該読み出しコマンドを、デコーダ142に入力する。デコーダ142は、入力された当該読み出しコマンドをデコードすることにより、所望の期待値データ901の読み出しアドレスをメモリコアインタフェース143に入力する。当該読み出しアドレスはメモリコアインタフェース143からメモリコア132に入力され、これによって、所望の期待値データ901がメモリコア132から読み出される。
本実施の形態の例では、真贋判定の処理内容が「期間P1を対象とする拡散値同士の比較処理」に設定されているため、期間P1に関する基準拡散値と、それに対応する所定の許容誤差値を示すデータとが、所望の期待値データ901としてメモリコア132から読み出される。例えば図18に示した設定例が採用されている場合には、期間P1に関する分散Vと許容誤差値を示すデータとが、所望の期待値データ901としてメモリコア132から読み出される。
読み出された期待値データ901は、暗号化された状態で、メモリコアインタフェース143及びホストインタフェース141を介してホスト装置2に送信される。メモリインタフェース114は、メモリ装置3から受信した期待値データ901を、データバッファ128を介して復号器123に入力する。復号器123は、暗号化されている期待値データ901を復号化する。復号化された期待値データ901は、期待値格納メモリ124に格納される。本実施の形態の例では、期間P1に関する基準拡散値(分散V)と、それに対応する所定の許容誤差値を示すデータとが、期待値格納メモリ124に格納される。
パワーオン期間である期間P1が第1の所定期間として設定されているため、次にステップSP204においてCPU122は、電源制御部112に電源供給を停止させるための制御コマンドを、GPIO125にセットする。当該制御コマンドはGPIO125から電源制御部112に入力され、電源制御部112は、電源VCC1からメモリ装置3への電源供給を停止する。
次にステップSP205においてCPU122は、電源制御部112に電源供給を開始させるための制御コマンドを、GPIO125にセットする。当該制御コマンドはGPIO125から電源制御部112に入力され、電源制御部112は、電源VCC1からメモリ装置3への電源供給を開始する。これにより、パワーオン期間である期間P1が開始される。
次にステップSP206においてCPU122は、ADC126を駆動する。電源VCC1からメモリ装置3への電源供給が開始されたことにより、抵抗素子Rに電流が流れる。電流値測定回路113は、抵抗素子Rの両端電圧を所定のサンプリング周波数でサンプリングすることによって、電源VCC1からメモリ装置3へ流れる電流の電流値を実測する。実測された電流値は、図示しないプリアンプによって増幅された後、ADC126によってAD変換され、その後、電流値取得部252によってCPU122に順次入力される。
次にステップSP207においてCPU122(拡散値算出部253)は、電流値取得部252によって順次取得された複数の実測電流値に基づいて、実測拡散値を算出する。具体的には、期間P1に含まれる複数の実測電流値に基づいて所定の基準値(本実施の形態の例では複数の実測電流値の平均値A)を算出し、各実測電流値と平均値Aとの差を2乗することによって得られる値の総和を、総数で除算することによって、期間P1に関するメモリ装置3の実測拡散値を算出する。
次にステップSP208においてCPU122(拡散値比較部254)は、期待値格納メモリ124から基準拡散値と許容誤差値を示すデータとを読み出して取得する。
次にステップSP209においてCPU122(拡散値比較部254)は、拡散値算出部253によって算出された実測拡散値と、期待値格納メモリ124から読み出した基準拡散値とを比較する。
なお、図18に示した設定例が採用されている場合には、拡散値比較部254は、実測拡散値である分散と、基準拡散値である分散Vとを比較する。また、図19に示した設定例が採用されている場合には、拡散値比較部254は、実測拡散値である分散と、基準拡散値である分散V0〜V2とを比較する。
次にステップSP210においてCPU122(真贋判定部255)は、実測拡散値と基準拡散値との差が、期待値格納メモリ124から読み出した許容誤差値以下であるか否かを判定する。そして真贋判定部254は、実測拡散値と基準拡散値との差が許容誤差値以下である場合には、実測拡散値は基準拡散値に一致していると判定し、一方、両拡散値の差が許容誤差値を超える場合には、実測拡散値は基準拡散値に一致していないと判定する。
真贋判定部255は、実測拡散値が基準拡散値に一致している場合には、ホスト装置2に接続されているメモリ装置3は正規品であると判定して、真贋判定処理を終了する。
一方、実測拡散値が基準拡散値に一致していない場合には、真贋判定部255は、ホスト装置2に接続されているメモリ装置3は非正規品であると判定して、非正規品であるメモリ装置3を排除するための処理を開始する。例えば、電源制御部112に電源供給を停止させるための制御コマンドをGPIO125にセットすることにより、電源VCC1からメモリ装置3への電源供給を停止する。
このように本実施の形態に係るホスト装置2によれば、真贋判定部255は、第1の所定期間に関する第1の実測拡散値と第1の基準拡散値との拡散値比較部254による比較結果に基づいて、メモリ装置3が正規品であるか非正規品であるかを判定する。従って、実測電流値と基準電流値とを比較する場合と比較して、瞬間的異常値に起因する影響を緩和できるため、製品の個体差や突発的ノイズ等に起因して実測電流値と基準電流値とが瞬間的に大きく相違する場合であっても、真贋判定の精度が低下する事態を回避又は抑制することが可能となる。
また、図18,19に示した例によれば、拡散値として分散V(又は標準偏差)を用いることにより、電流値のばらつき度合いが簡易かつ適切に表された拡散値を得ることができる。
また、図18に示した例によれば、全域に共通する分散Vが設定されるため、基準拡散値の実装コストを削減することが可能となる。電流値の変化が比較的小さい期間を判定対象期間として設定する場合に、特に有効となる。
また、図19に示した例によれば、標準域の基準電流値X01〜X10に基づいて標準域に関する分散V0が設定され、高域の基準電流値X11〜X20に基づいて高域に関する分散V1が設定され、低域の基準電流値X21〜X30に基づいて低域に関する分散V2が設定される。従って、標準域、高域、及び低域の各々に関して個別に基準拡散値を設定できるため、メモリ装置3の真贋判定精度をより向上することが可能となる。電流値の変化が比較的大きい期間を判定対象期間として設定する場合に、特に有効となる。
また、本実施の形態に係るホスト装置2によれば、基準拡散値はメモリ装置3のメモリコア132(記憶部)に記憶されている。メモリ装置3の基準拡散値は、デバイスの構造や製造プロセス等に依存するため、デバイス毎に異なる。従って、あるメモリ装置3に関して求めた基準拡散値を、そのメモリ装置3のメモリコア132に記憶しておくことにより、デバイス毎に異なる基準拡散値を簡易に管理することが可能となる。
以下、上記実施の形態2に対する様々な変形例について説明する。以下に述べる変形例は、変形例同士を任意に組み合わせて適用することが可能であり、また、後述する実施の形態3〜5に対して適用することも可能である。
<変形例2−1>
図21は、図2に示したプログラム801をCPU122が実行することによって実現される機能を示す図である。図4に示した構成に対して、拡散値算出部253及び拡散値比較部254が追加されている。
図22は、本変形例に係る真贋判定処理の流れを示すフローチャートである。まずステップE1において判定部350は、第1判定処理として、上記実施の形態1と同様に、実測電流値パターンと基準電流値パターンとを比較することによってメモリ装置3の真贋判定を行う。その際、真贋判定部155は、判定対象期間に含まれる全ての比較ポイントのうち、実測電流値Yが基準電流値Xに一致していないと判定した比較ポイントの数(NGポイント数M)をカウントする。
次にステップE2において真贋判定部155は、NGポイント数Mと所定の閾値Th1とを比較する。閾値Th1は、例えば、判定対象期間に含まれる比較ポイントの総数の1%の値に設定されている。そして、NGポイント数Mが閾値Th1未満である場合には、実測電流値パターンは基準電流値パターンに一致し、この例の場合にはメモリ装置3は正規品であると判定して、第2判定処理を実行することなく真贋判定処理を終了する。
一方、NGポイント数Mが閾値Th1以上である場合には、次にステップE3において真贋判定部155は、NGポイント数Mと所定の閾値Th2とを比較する。閾値Th2は、例えば、判定対象期間に含まれる比較ポイントの総数の3%の値に設定されている。そして、NGポイント数Mが閾値Th2以上である場合には、実測電流値パターンは基準電流値パターンに一致せず、この例の場合にはメモリ装置3は非正規品であると判定して、第2判定処理を実行することなく真贋判定処理を終了する。
一方、NGポイント数Mが閾値Th2未満である場合には、次にステップE4において判定部350は、第2判定処理として、上記実施の形態2で述べた真贋判定処理(つまり、実測拡散値と基準拡散値との比較による真贋判定処理)を実行する。そして、第2判定処理の結果として、メモリ装置3が正規品であるか非正規品であるかを判定する。
本変形例に係るホスト装置2によれば、実測電流値パターンと基準電流値パターンとの比較による第1判定処理と、実測拡散値と基準拡散値との比較による第2判定処理との二段階の判定処理を行うことにより、いずれか一方の判定処理のみを行う場合と比較して、真贋判定の精度を向上することが可能となる。特に、製品の個体差や突発的ノイズ等に起因して実測電流値パターンと基準電流値パターンとが瞬間的に大きく相違したことが原因で第1判定処理において非正規品と判定された正規品を、第2判定処理において救済することが可能となる。
また、本変形例に係るホスト装置2によれば、真贋判定部155は、実測電流値Yと基準電流値Xとが一致しないNGポイント数M(又はNGポイント率)が、第1の閾値Th1未満である場合、又は、第2の閾値Th2以上である場合には、第2判定処理を実行しない。従って、実測電流値パターンと基準電流値パターンとが完全に一致する場合(閾値Th1未満)や大きく異なる場合(閾値Th2以上)には第2判定処理の実行を省略できるため、救済する必要のないメモリ装置3に対して無駄な処理が実行される事態を回避することが可能となる。
<変形例2−2>
上記実施の形態2では、期間設定部251は、メモリ装置3の動作期間を区分した複数の期間P1〜P8のうち一つの期間P1のみを、判定対象期間として設定した。
これに対して本変形例に係る期間設定部251は、期間P1〜P8のうちの複数の期間を、判定対象期間として設定する。
図23は、メモリ装置3の消費電流特性の一例を示す図である。この例において期間設定部251は、パワーオン期間である期間P1(第1の所定期間)と鍵交換期間である期間P4(第2の所定期間)とを、ステップSP201において判定対象期間として設定する。期間設定部251は、第1の所定期間及び第2の所定期間を、予め定められた規則に従って静的に選択することができ、あるいは、真贋判定の累積実行回数やメモリシステム1の稼働状況等に応じて動的に選択することができる。
また、ステップSP201において期間設定部251は、期間P1,P4の各々に対して実行する真贋判定の処理内容を設定する。本変形例の例では、「拡散値同士の比較処理」が、真贋判定の処理内容としていずれも設定される。
ステップSP203では、期間P1に関する第1の基準拡散値と、それに対応する第1の許容誤差値を示すデータと、期間P4に関する第2の基準拡散値と、それに対応する第2の許容誤差値を示すデータとが、所望の期待値データ901としてメモリコア132から読み出される。これらの情報は、メモリ装置3からホスト装置2に送信され、復号器123によって復号化された後、期待値格納メモリ124に格納される。
電流値取得部252は、期間P1に関して第1の実測電流値の取得処理を実行し、拡散値算出部253は、期間P1に関して第1の実測拡散値の算出処理を実行する。また、電流値取得部252は、期間P4に関して第2の実測電流値の取得処理を実行し、拡散値算出部253は、期間P4に関して第2の実測拡散値の算出処理を実行する。
真贋判定部255は、期間P1に関する第1の実測拡散値と第1の基準拡散値との比較結果と、期間P4に関する第2の実測拡散値と第2の基準拡散値との比較結果とに基づいて、メモリ装置3が正規品であるか非正規品であるかを判定する。例えば、期間P1,P4の双方において、実測拡散値と基準拡散値とが一致する場合には、メモリ装置3が正規品であると判定し、一方、期間P1,P4の少なくとも一方において、実測拡散値と基準拡散値とが一致しない場合には、メモリ装置3が非正規品であると判定する。
本変形例に係るホスト装置2によれば、真贋判定部255はさらに、複数の所定期間P1〜P8のうちの期間P4(第2の所定期間)に関して拡散値算出部253によって算出された第2の実測拡散値と、期間P4に関して正規品又は非正規品を対象として予め求められた第2の基準拡散値との比較結果に基づいて、メモリ装置3が正規品であるか非正規品であるかを判定する。このように、第1の所定期間のみならず第2の所定期間に関しても実測拡散値と基準拡散値との比較を行うことにより、第1の所定期間及び第2の所定期間の双方の比較結果に基づいてメモリ装置3の真贋判定を行うことができるため、判定精度をより向上することが可能となる。
<実施の形態3>
本実施の形態では、ホスト装置2の真贋判定をメモリ装置3が実行する態様、つまり、メモリ装置3等の第2の情報処理装置が判定装置であり、ホスト装置2等の第1の情報処理装置が被判定装置である態様について説明する。
図24は、ホスト装置2の構成を簡略化して示す図である。図24に示すようにホスト装置2は、SoC211及びメモリインタフェース212を備えて構成されている。
SoC211は、バス221を介して相互に接続された、CPU222、コマンドバッファ223、及びデータバッファ224を備えて構成されている。SoC211には、電源VCC2(電源供給部)から抵抗素子Rを介して駆動電源が供給される。
図25は、メモリ装置3の構成を簡略化して示す図である。図25に示すようにメモリ装置3は、メモリコントローラ231、メモリコア232、電流値測定回路233、及び認証制御回路234を備えて構成されている。メモリコントローラ231は、ホストインタフェース241、デコーダ242、及びメモリコアインタフェース243を備えて構成されている。電流値測定回路233は、ホスト装置2の抵抗素子Rの両端電圧を測定することにより、電源VCC2からSoC211に流れる電流の電流値を測定する。メモリコア232の所定のアドレス領域には、期待値データ902が格納されている。なお、期待値データ902は、メモリコア232とは異なる不揮発性メモリに格納されていても良い。
図26は、認証制御回路234の構成を示す図である。図26の接続関係で示すように、認証制御回路234は、バス251を介して相互に接続された、CPU252、復号器253、期待値格納メモリ254、GPIO255、電源制御部256、ADC257、及び、ROM又はRAM等の記憶部258を備えて構成されている。記憶部258には、プログラム802が格納されている。
図27は、図26に示したプログラム802をCPU252が実行することによって実現される機能を示す図である。記憶部258から読み出したプログラム802をCPU252が実行することによって、CPU252は、ホスト装置2が正規品であるか非正規品であるかを判定する判定部450として機能する。換言すれば、プログラム802は、第2の情報処理装置としてのメモリ装置3に搭載されるコンピュータを、判定部450として機能させるためのプログラムである。図27に示すように判定部450は、期間設定部451、電流値取得部452、パターン作成部453、パターン比較部454、及び真贋判定部455として機能する。なお、判定部450の機能は、CPU252によるソフトウェア処理によって実現する場合に限らず、専用回路等を用いたハードウェア処理によって実現しても良い。
電流値測定回路233は、電源VCC2からSoC211に流れる電流を測定する。電流値取得部452は、複数の測定タイミングで電流値測定回路233によって測定された複数の実測電流値を、電流値測定回路233から取得する。パターン作成部453は、電流値取得部452によって取得された複数の実測電流値に基づいて、実測電流値パターンを作成する。パターン比較部454は、パターン作成部453によって作成された実測電流値パターンと、正規品又は非正規品に関して予め作成された基準電流値パターンとを比較する。基準電流値パターンは、被判定装置の動作環境要素に起因して変動する複数域の電流値パターンに基づいて作成される。真贋判定部455は、判定対象期間に関してパターン作成部453によって作成された実測電流値パターンと、判定対象期間に関して予め作成された基準電流値パターンとの、パターン比較部454による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。
このように本実施の形態に係るメモリ装置3(情報処理装置)によれば、基準電流値パターンR(基準電流値情報)は、ホスト装置2(被判定装置)の動作環境要素に起因して変動する複数域の電流値パターンKに基づいて作成される。従って、ホスト装置2の動作環境要素が変動した場合であっても、その変動は基準電流値パターンRに反映されているため、ホスト装置2の真贋判定を高精度に実行することが可能となる。
<実施の形態4>
本実施の形態では、ホスト装置2の真贋判定をホスト装置2自身が実行する態様、つまり、ホスト装置2等の第1の情報処理装置が判定装置かつ被判定装置である態様について説明する。
図28は、ホスト装置2の構成を簡略化して示す図である。図28に示すようにホスト装置2は、SoC311、電源制御部312、電流値測定回路313、メモリインタフェース314、及び不揮発性の記憶部315を備えて構成されている。記憶部315には、期待値データ903が格納されている。
SoC311は、バス321を介して相互に接続された、CPU322、復号器323、期待値格納メモリ324、GPIO325、ADC326、コマンドバッファ327、データバッファ328、及び、ROM又はRAM等の記憶部329を備えて構成されている。記憶部329には、プログラム803が格納されている。SoC311には、電源VCC3(電源供給部)から抵抗素子Rを介して駆動電源が供給される。電流値測定回路313は、抵抗素子Rの両端電圧を測定することにより、電源VCC3からSoC311に流れる電流の電流値を測定する。
図29は、メモリ装置3の構成を簡略化して示す図である。図29に示すようにメモリ装置3は、メモリコントローラ331とメモリコア332とを備えて構成されている。メモリコントローラ331は、ホストインタフェース341、デコーダ342、及びメモリコアインタフェース343を備えて構成されている。
図30は、図28に示したプログラム803をCPU322が実行することによって実現される機能を示す図である。記憶部329から読み出したプログラム803をCPU322が実行することによって、CPU322は、ホスト装置2が正規品であるか非正規品であるかを判定する判定部550として機能する。換言すれば、プログラム803は、第1の情報処理装置としてのホスト装置2に搭載されるコンピュータを、判定部550として機能させるためのプログラムである。図30に示すように判定部550は、期間設定部551、電流値取得部552、パターン作成部553、パターン比較部554、及び真贋判定部555として機能する。なお、判定部550の機能は、CPU322によるソフトウェア処理によって実現する場合に限らず、専用回路等を用いたハードウェア処理によって実現しても良い。
電流値測定回路313は、電源VCC3からSoC311に流れる電流を測定する。電流値取得部552は、複数の測定タイミングで電流値測定回路313によって測定された複数の実測電流値を、電流値測定回路313から取得する。パターン作成部553は、電流値取得部552によって取得された複数の実測電流値に基づいて、実測電流値パターンを作成する。パターン比較部554は、パターン作成部553によって作成された実測電流値パターンと、正規品又は非正規品に関して予め作成された基準電流値パターンとを比較する。基準電流値パターンは、被判定装置の動作環境要素に起因して変動する複数域の電流値パターンに基づいて作成される。真贋判定部555は、判定対象期間に関してパターン作成部553によって作成された実測電流値パターンと、判定対象期間に関して予め作成された基準電流値パターンとの、パターン比較部554による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。
このように本実施の形態に係るホスト装置2(情報処理装置)によれば、基準電流値パターンR(基準電流値情報)は、ホスト装置2(被判定装置)の動作環境要素に起因して変動する複数域の電流値パターンKに基づいて作成される。従って、ホスト装置2の動作環境要素が変動した場合であっても、その変動は基準電流値パターンRに反映されているため、ホスト装置2の真贋判定を高精度に実行することが可能となる。
<実施の形態5>
本実施の形態では、メモリ装置3の真贋判定をメモリ装置3自身が実行する態様、つまり、メモリ装置3等の第2の情報処理装置が判定装置かつ被判定装置である態様について説明する。
図31は、メモリ装置3の構成を簡略化して示す図である。図3に示した構成に対して、電流値測定回路333及び認証制御回路334が追加されている。メモリコントローラ331には、電源VCC4(電源供給部)から抵抗素子Rを介して駆動電源が供給される。電流値測定回路333は、抵抗素子Rの両端電圧を測定することにより、電源VCC4からメモリコントローラ331に流れる電流の電流値を測定する。メモリコア332の所定のアドレス領域には、期待値データ904が格納されている。なお、期待値データ904は、メモリコア332とは異なる不揮発性メモリに格納されていても良い。
図32は、認証制御回路334の構成を示す図である。図2に示したSoC111と同様に、認証制御回路334は、バス361を介して相互に接続された、CPU362、復号器363、期待値格納メモリ364、GPIO365、電源制御部366、ADC367、及び、ROM又はRAM等の記憶部368を備えて構成されている。記憶部368には、プログラム804が格納されている。
図33は、図32に示したプログラム804をCPU362が実行することによって実現される機能を示す図である。記憶部368から読み出したプログラム804をCPU362が実行することによって、CPU362は、メモリ装置3が正規品であるか非正規品であるかを判定する判定部650として機能する。換言すれば、プログラム804は、第2の情報処理装置としてのメモリ装置3に搭載されるコンピュータを、判定部650として機能させるためのプログラムである。図33に示すように判定部650は、期間設定部651、電流値取得部652、パターン作成部653、パターン比較部654、及び真贋判定部655として機能する。なお、判定部650の機能は、CPU362によるソフトウェア処理によって実現する場合に限らず、専用回路等を用いたハードウェア処理によって実現しても良い。
電流値測定回路333は、電源VCC4からメモリコントローラ331に流れる電流を測定する。電流値取得部652は、複数の測定タイミングで電流値測定回路333によって測定された複数の実測電流値を、電流値測定回路333から取得する。パターン作成部653は、電流値取得部652によって取得された複数の実測電流値に基づいて、実測電流値パターンを作成する。パターン比較部654は、パターン作成部653によって作成された実測電流値パターンと、正規品又は非正規品に関して予め作成された基準電流値パターンとを比較する。基準電流値パターンは、被判定装置の動作環境要素に起因して変動する複数域の電流値パターンに基づいて作成される。真贋判定部655は、判定対象期間に関してパターン作成部653によって作成された実測電流値パターンと、判定対象期間に関して予め作成された基準電流値パターンとの、パターン比較部654による比較結果に基づいて、被判定装置が正規品であるか非正規品であるかを判定する。
このように本実施の形態に係るメモリ装置3(情報処理装置)によれば、基準電流値パターンR(基準電流値情報)は、メモリ装置3(被判定装置)の動作環境要素に起因して変動する複数域の電流値パターンKに基づいて作成される。従って、メモリ装置3の動作環境要素が変動した場合であっても、その変動は基準電流値パターンRに反映されているため、メモリ装置3の真贋判定を高精度に実行することが可能となる。