(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-13
(45)【発行日】2022-01-13
(54)【発明の名称】情報処理システム、情報処理装置、及び情報処理装置の制御方法
(51)【国際特許分類】
H04L 9/10 20060101AFI20220105BHJP
G06F 21/55 20130101ALI20220105BHJP
G06F 21/60 20130101ALI20220105BHJP
【FI】
H04L9/10 A
G06F21/55 380
G06F21/60 320
(21)【出願番号】P 2019035028
(22)【出願日】2019-02-27
【審査請求日】2021-03-02
(31)【優先権主張番号】P 2018042625
(32)【優先日】2018-03-09
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】591128453
【氏名又は名称】株式会社メガチップス
(74)【代理人】
【識別番号】100067828
【氏名又は名称】小谷 悦司
(74)【代理人】
【識別番号】100115381
【氏名又は名称】小谷 昌崇
(74)【代理人】
【識別番号】100136353
【氏名又は名称】高尾 建吾
(72)【発明者】
【氏名】菅原 崇彦
(72)【発明者】
【氏名】松山 直樹
(72)【発明者】
【氏名】岸田 治展
【審査官】中里 裕正
(56)【参考文献】
【文献】特開2010-62635(JP,A)
【文献】特開2013-45201(JP,A)
【文献】特開2014-48893(JP,A)
【文献】特表2014-512753(JP,A)
【文献】国際公開第2017/172318(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/10
G06F 21/55
G06F 21/60
(57)【特許請求の範囲】
【請求項1】
第1の暗号復号処理部を含む処理回路を有する情報処理装置と、
前記情報処理装置に接続され、第2の暗号復号処理部を有する付属装置と、
を備え、
前記情報処理装置は、
前記処理回路に電源を供給する第1の電源供給部と、
前記第1の電源供給部から前記処理回路に流れる電流を測定する第1の電流測定部と、
前記第1の電流測定部による電流の測定結果に基づいて、前記情報処理装置の電源グリッチを検出する検出部と、
前記検出部が前記情報処理装置の電源グリッチを検出した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止する制御部と、
をさらに有する、情報処理システム。
【請求項2】
前記制御部は、前記検出部が前記情報処理装置の電源グリッチを検出している間、前記情報処理装置から前記付属装置への暗号化データの送信停止状態を継続する、請求項1に記載の情報処理システム。
【請求項3】
前記情報処理装置は、前記付属装置の正当性を認証するための認証処理を実行する第1の認証処理部をさらに有し、
前記制御部は、前記検出部が前記情報処理装置の電源グリッチを検出した後、前記第1の認証処理部に認証処理を実行させる、請求項2に記載の情報処理システム。
【請求項4】
前記情報処理装置は、
前記付属装置に電源を供給する第2の電源供給部と、
前記第2の電源供給部から前記付属装置に流れる電流を測定する第2の電流測定部と、
をさらに有し、
前記第1の認証処理部は、
前記付属装置を認証するための所定の電力消費動作を、通常動作に付加して前記付属装置に実行させ、
前記付属装置が前記電力消費動作を実行している期間に前記第2の電流測定部によって測定された実測電流値と、正規品の前記付属装置が前記電力消費動作を実行した場合の電流値である既知の基準電流値とに基づいて、前記付属装置の正当性を認証する、請求項3に記載の情報処理システム。
【請求項5】
前記第1の認証処理部は、
前記第2の電流測定部によって測定された複数の実測電流値を時系列順に配列することによって、実測電流値パターンを作成するパターン作成部と、
前記パターン作成部によって作成された実測電流値パターンと、基準電流値が時系列順に配列された既知の基準電流値パターンとを比較するパターン比較部と、
を有し、
前記パターン比較部による比較結果に基づいて、前記付属装置の正当性を認証する、請求項4に記載の情報処理システム。
【請求項6】
前記制御部は、前記情報処理装置から前記付属装置への暗号化データの送信を停止した後、前記検出部が前記情報処理装置の電源グリッチを検出せず、かつ、前記第1の認証処理部による認証処理が成功した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を再開する、請求項3~5のいずれか一つに記載の情報処理システム。
【請求項7】
前記検出部はさらに、前記第2の電流測定部による電流の測定結果に基づいて、前記付属装置の電源グリッチを検出し、
前記制御部はさらに、前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止する、請求項4又は5に記載の情報処理システム。
【請求項8】
前記制御部はさらに、前記検出部が前記付属装置の電源グリッチを検出している間、前記付属装置から前記情報処理装置への暗号化データの送信停止状態を継続する、請求項7に記載の情報処理システム。
【請求項9】
前記付属装置は、前記情報処理装置の正当性を認証するための認証処理を実行する第2の認証処理部をさらに有し、
前記制御部は、前記検出部が前記付属装置の電源グリッチを検出した後、前記第2の認証処理部に認証処理を実行させる、請求項8に記載の情報処理システム。
【請求項10】
前記制御部は、前記付属装置から前記情報処理装置への暗号化データの送信を停止した後、前記検出部が前記付属装置の電源グリッチを検出せず、かつ、前記第2の認証処理部による認証処理が成功した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を再開する、請求項9に記載の情報処理システム。
【請求項11】
第1の暗号復号処理部を有する情報処理装置と、
前記情報処理装置に接続され、第2の暗号復号処理部を有する付属装置と、
を備え、
前記情報処理装置は、
前記付属装置に電源を供給する電源供給部と、
前記電源供給部から前記付属装置に流れる電流を測定する電流測定部と、
前記電流測定部による電流の測定結果に基づいて、前記付属装置の電源グリッチを検出する検出部と、
前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止する制御部と、
をさらに有する、情報処理システム。
【請求項12】
前記制御部は、前記検出部が前記付属装置の電源グリッチを検出している間、前記付属装置から前記情報処理装置への暗号化データの送信停止状態を継続する、請求項11に記載の情報処理システム。
【請求項13】
前記付属装置は、前記情報処理装置の正当性を認証するための認証処理を実行する認証処理部をさらに有し、
前記制御部は、前記検出部が前記付属装置の電源グリッチを検出した後、前記認証処理部に認証処理を実行させる、請求項12に記載の情報処理システム。
【請求項14】
前記制御部は、前記付属装置から前記情報処理装置への暗号化データの送信を停止した後、前記検出部が前記付属装置の電源グリッチを検出せず、かつ、前記認証処理部による認証処理が成功した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を再開する、請求項13に記載の情報処理システム。
【請求項15】
第1の暗号復号処理部を含む処理回路を有する情報処理装置と、
前記情報処理装置に接続され、第2の暗号復号処理部を有する付属装置と、
を備え、
前記情報処理装置は、
前記処理回路及び前記付属装置に電源を供給する電源供給部と、
前記電源供給部から前記処理回路及び前記付属装置に流れる電流を測定する電流測定部と、
前記電流測定部による電流の測定結果に基づいて、前記情報処理装置及び前記付属装置の電源グリッチを検出する検出部と、
前記検出部が前記情報処理装置の電源グリッチを検出した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止し、前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止する制御部と、
をさらに有する、情報処理システム。
【請求項16】
前記制御部は、
前記検出部が前記情報処理装置の電源グリッチを検出している間、前記情報処理装置から前記付属装置への暗号化データの送信停止状態を継続し、
前記検出部が前記付属装置の電源グリッチを検出している間、前記付属装置から前記情報処理装置への暗号化データの送信停止状態を継続する、請求項15に記載の情報処理システム。
【請求項17】
前記情報処理装置は、前記付属装置の正当性を認証するための認証処理を実行する第1の認証処理部をさらに有し、
前記付属装置は、前記情報処理装置の正当性を認証するための認証処理を実行する第2の認証処理部をさらに有し、
前記制御部は、
前記検出部が前記情報処理装置の電源グリッチを検出した後、前記第1の認証処理部に認証処理を実行させ、
前記検出部が前記付属装置の電源グリッチを検出した後、前記第2の認証処理部に認証処理を実行させる、請求項16に記載の情報処理システム。
【請求項18】
前記制御部は、
前記情報処理装置から前記付属装置への暗号化データの送信を停止した後、前記検出部が前記情報処理装置の電源グリッチを検出せず、かつ、前記第1の認証処理部による認証処理が成功した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を再開し、
前記付属装置から前記情報処理装置への暗号化データの送信を停止した後、前記検出部が前記付属装置の電源グリッチを検出せず、かつ、前記第2の認証処理部による認証処理が成功した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を再開する、請求項17に記載の情報処理システム。
【請求項19】
前記第1の暗号復号処理部と前記制御部とは、同一のダイに形成されている、請求項1~18のいずれか一つに記載の情報処理システム。
【請求項20】
前記第1の暗号復号処理部と前記制御部とは、異なるダイに形成されている、請求項1~18のいずれか一つに記載の情報処理システム。
【請求項21】
第1の暗号復号処理部を有する処理回路を備える情報処理装置であって、
前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、
前記情報処理装置は、
前記処理回路に電源を供給する電源供給部と、
前記電源供給部から前記処理回路に流れる電流を測定する電流測定部と、
前記電流測定部による電流の測定結果に基づいて、前記情報処理装置の電源グリッチを検出する検出部と、
前記検出部が前記情報処理装置の電源グリッチを検出した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止する制御部と、
をさらに備える、情報処理装置。
【請求項22】
第1の暗号復号処理部を備える情報処理装置であって、
前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、
前記情報処理装置は、
前記付属装置に電源を供給する電源供給部と、
前記電源供給部から前記付属装置に流れる電流を測定する電流測定部と、
前記電流測定部による電流の測定結果に基づいて、前記付属装置の電源グリッチを検出する検出部と、
前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止する制御部と、
をさらに備える、情報処理装置。
【請求項23】
第1の暗号復号処理部を有する処理回路を備える情報処理装置であって、
前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、
前記情報処理装置は、
前記処理回路及び前記付属装置に電源を供給する電源供給部と、
前記電源供給部から前記処理回路及び前記付属装置に流れる電流を測定する電流測定部と、
前記電流測定部による電流の測定結果に基づいて、前記情報処理装置及び前記付属装置の電源グリッチを検出する検出部と、
前記検出部が前記情報処理装置の電源グリッチを検出した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止し、前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止する制御部と、
をさらに備える、情報処理装置。
【請求項24】
第1の暗号復号処理部を有する処理回路を備える情報処理装置の制御方法であって、
前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、
(A)前記情報処理装置が備える電源供給部から前記処理回路に電源を供給するステップと、
(B)前記電源供給部から前記処理回路に流れる電流を測定するステップと、
(C)前記ステップ(B)による電流の測定結果に基づいて、前記情報処理装置の電源グリッチを検出するステップと、
(D)前記ステップ(C)によって前記情報処理装置の電源グリッチが検出された場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止するステップと、
を備える、情報処理装置の制御方法。
【請求項25】
第1の暗号復号処理部を有する処理回路を備える情報処理装置の制御方法であって、
前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、
(A)前記情報処理装置が備える電源供給部から前記付属装置に電源を供給するステップと、
(B)前記電源供給部から前記付属装置に流れる電流を測定するステップと、
(C)前記ステップ(B)による電流の測定結果に基づいて、前記付属装置の電源グリッチを検出するステップと、
(D)前記ステップ(C)によって前記付属装置の電源グリッチが検出された場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止するステップと、
を備える、情報処理装置の制御方法。
【請求項26】
第1の暗号復号処理部を有する処理回路を備える情報処理装置の制御方法であって、
前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、
(A)前記情報処理装置が備える電源供給部から前記処理回路及び前記付属装置に電源を供給するステップと、
(B)前記電源供給部から前記処理回路及び前記付属装置に流れる電流を測定するステップと、
(C)前記ステップ(B)による電流の測定結果に基づいて、前記情報処理装置及び前記付属装置の電源グリッチを検出するステップと、
(D)前記ステップ(C)によって前記情報処理装置の電源グリッチが検出された場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止し、前記ステップ(C)によって前記付属装置の電源グリッチが検出された場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止するステップと、
を備える、情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理装置、及び情報処理装置の制御方法に関する。
【背景技術】
【0002】
現在使用されている暗号方式は、暗号学的な解析手法に対して計算量的に安全であるとされている。しかし、実際に暗号化装置に暗号モジュールを実装する場合には、消費電力や処理時間のような、実装に依存したリークが発生する。そのような動作状況を様々な物理的手段で観察することにより、秘密鍵等の秘密情報を不正に取得しようとするサイドチャネル攻撃の脅威が増している。
【0003】
サイドチャネル攻撃の一つとして、暗号システムに対して意図的に誤動作を発生させ、誤動作時の出力を解析することによって秘密情報を推定するフォールト攻撃が報告されている。また、フォールト攻撃の具体的手法の一つとして、暗号システムを駆動するための電源電圧に対して異常電圧(電源グリッチ)を瞬間的に加えることによって、暗号システムを誤動作させる方法が報告されている。
【0004】
そのため近年では、フォールト攻撃に対する種々の対策が提案されており、例えば、暗号化処理の実行開始タイミングを意図的にずらすことによって解析を困難化する、ランダム遅延による対策(下記非特許文献1)や、入力に対して同一の暗号アルゴリズムを複数回実行する、複製による対策(下記非特許文献2)が提案されている。
【先行技術文献】
【非特許文献】
【0005】
【文献】Jasper G. J. van Woudenberg、他2名、”Practical optical fault injection on secure microcontrollers”、[online]、平成30年2月14日検索、インターネット<https://www.riscure.com/uploads/2017/09/Practical-optical-fault-injection-on-secure-microcontrollers.pdf>
【文献】Alessandro Barenghi、他3名、”Countermeasures against fault attacks on software implemented AES”、[online]、平成30年2月14日検索、インターネット<https://www.researchgate.net/publication/221148201_Countermeasures_against_fault_attacks_on_software_implemented_AES>
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、上述したランダム遅延による対策や複製による対策を暗号システムに実装した場合には、実際にフォールト攻撃を受けているか否かに拘わらず、アプリケーションの実行時にこれらの対策処理が常時稼働するため、暗号システムの処理レイテンシが増大するとともに、システムパフォーマンスが低下する。
【0007】
本発明はかかる事情に鑑みて成されたものであり、フォールト攻撃に対する効果的な対策を簡易に実装することが可能な、情報処理システム、情報処理装置、及び情報処理装置の制御方法を得ることを目的とするものである。
【課題を解決するための手段】
【0008】
本発明の第1の態様に係る情報処理システムは、第1の暗号復号処理部を含む処理回路を有する情報処理装置と、前記情報処理装置に接続され、第2の暗号復号処理部を有する付属装置と、を備え、前記情報処理装置は、前記処理回路に電源を供給する第1の電源供給部と、前記第1の電源供給部から前記処理回路に流れる電流を測定する第1の電流測定部と、前記第1の電流測定部による電流の測定結果に基づいて、前記情報処理装置の電源グリッチを検出する検出部と、前記検出部が前記情報処理装置の電源グリッチを検出した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止する制御部と、をさらに有することを特徴とするものである。
【0009】
第1の態様に係る情報処理システムによれば、第1の電流測定部は、第1の電源供給部から処理回路に流れる電流を測定し、検出部は、第1の電流測定部による電流の測定結果に基づいて情報処理装置の電源グリッチを検出する。これにより、情報処理装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部は、検出部が情報処理装置の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部が情報処理装置の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、情報処理装置の電源グリッチが検出された場合には、制御部は、情報処理装置から付属装置への暗号化データの送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0010】
本発明の第2の態様に係る情報処理システムは、第1の態様に係る情報処理システムにおいて特に、前記制御部は、前記検出部が前記情報処理装置の電源グリッチを検出している間、前記情報処理装置から前記付属装置への暗号化データの送信停止状態を継続することを特徴とするものである。
【0011】
第2の態様に係る情報処理システムによれば、制御部は、検出部が情報処理装置の電源グリッチを検出している間、情報処理装置から付属装置への暗号化データの送信停止状態を継続する。従って、フォールト攻撃のために電源グリッチが繰り返された場合であっても、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、確実に防止することが可能となる。
【0012】
本発明の第3の態様に係る情報処理システムは、第2の態様に係る情報処理システムにおいて特に、前記情報処理装置は、前記付属装置の正当性を認証するための認証処理を実行する第1の認証処理部をさらに有し、前記制御部は、前記検出部が前記情報処理装置の電源グリッチを検出した後、前記第1の認証処理部に認証処理を実行させることを特徴とするものである。
【0013】
第3の態様に係る情報処理システムによれば、制御部は、検出部が情報処理装置の電源グリッチを検出した後、第1の認証処理部に認証処理を実行させる。従って、誤った暗号化データを抜き取るべく情報処理装置から付属装置への暗号化データの送信を再開させるためには、攻撃者は第1の認証処理部による認証処理を突破する必要があるため、攻撃者によるフォールト攻撃をさらに困難化することが可能となる。
【0014】
本発明の第4の態様に係る情報処理システムは、第3の態様に係る情報処理システムにおいて特に、前記情報処理装置は、前記付属装置に電源を供給する第2の電源供給部と、前記第2の電源供給部から前記付属装置に流れる電流を測定する第2の電流測定部と、をさらに有し、前記第1の認証処理部は、前記付属装置を認証するための所定の電力消費動作を、通常動作に付加して前記付属装置に実行させ、前記付属装置が前記電力消費動作を実行している期間に前記第2の電流測定部によって測定された実測電流値と、正規品の前記付属装置が前記電力消費動作を実行した場合の電流値である既知の基準電流値とに基づいて、前記付属装置の正当性を認証することを特徴とするものである。
【0015】
第4の態様に係る情報処理システムによれば、第1の認証処理部は、付属装置を認証するための所定の電力消費動作を、通常動作に付加して付属装置に実行させ、付属装置が電力消費動作を実行している期間に第2の電流測定部によって測定された実測電流値と、正規品の付属装置が電力消費動作を実行した場合の電流値である既知の基準電流値とに基づいて、付属装置の正当性を認証する。従って、非正規品の付属装置が電力消費動作を実行できない場合には、実測電流値は基準電流値に一致しないため、第1の認証処理部によって付属装置の認証を容易に実行することができる。また、非正規品の付属装置が電力消費動作を実行できたとしても、デバイス構造や製造プロセスの相違等に起因して正規品と非正規品とでは消費電力特性が相違するため、非正規品の実測電流値は正規品の基準電流値に一致しない。従って、第1の認証処理部によって付属装置の認証を容易に実行することができる。しかも、付属装置を認証するための電力消費動作は、付属装置の通常動作そのものではなく、通常動作に付加される独立的な動作であるため、消費電流値及びその変化態様等が顕著となる恣意的な電力消費動作を付属装置に実行させることができる。その結果、第1の認証処理部による付属装置の認証精度を向上することが可能となる。
【0016】
本発明の第5の態様に係る情報処理システムは、第4の態様に係る情報処理システムにおいて特に、前記第1の認証処理部は、前記第2の電流測定部によって測定された複数の実測電流値を時系列順に配列することによって、実測電流値パターンを作成するパターン作成部と、前記パターン作成部によって作成された実測電流値パターンと、基準電流値が時系列順に配列された既知の基準電流値パターンとを比較するパターン比較部と、を有し、前記パターン比較部による比較結果に基づいて、前記付属装置の正当性を認証することを特徴とするものである。
【0017】
第5の態様に係る情報処理システムによれば、パターン比較部は、パターン作成部によって作成された実測電流値パターンと、基準電流値が時系列順に配列された既知の基準電流値パターンとを比較し、第1の認証処理部は、パターン比較部による比較結果に基づいて、付属装置の正当性を認証する。非正規品は粗悪品であることが多いため、非正規品の消費電流の絶対値は正規品のそれより大きい場合が多い。第5の態様に係る情報処理システムによれば、第1の認証処理部は、消費電流の変化率パターンではなく実測電流値パターンと基準電流値パターンとを比較するため、たとえ正規品と非正規品とで消費電流の変化率パターンが近似している場合であっても、付属装置の認証を高精度に実行することが可能となる。
【0018】
本発明の第6の態様に係る情報処理システムは、第3~第5のいずれか一つの態様に係る情報処理システムにおいて特に、前記制御部は、前記情報処理装置から前記付属装置への暗号化データの送信を停止した後、前記検出部が前記情報処理装置の電源グリッチを検出せず、かつ、前記第1の認証処理部による認証処理が成功した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を再開することを特徴とするものである。
【0019】
第6の態様に係る情報処理システムによれば、制御部は、検出部が情報処理装置の電源グリッチを検出せず、かつ、第1の認証処理部による認証処理が成功した場合に、情報処理装置から付属装置への暗号化データの送信を再開する。従って、フォールト攻撃が終了した後には、第1の認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。また、静電気等の突発性ノイズに起因して情報処理装置の電源グリッチが検出された場合には、第1の認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。
【0020】
本発明の第7の態様に係る情報処理システムは、第4又は第5の態様に係る情報処理システムにおいて特に、前記検出部はさらに、前記第2の電流測定部による電流の測定結果に基づいて、前記付属装置の電源グリッチを検出し、前記制御部はさらに、前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止することを特徴とするものである。
【0021】
第7の態様に係る情報処理システムによれば、第2の電流測定部は、第2の電源供給部から付属装置に流れる電流を測定し、検出部は、第2の電流測定部による電流の測定結果に基づいて付属装置の電源グリッチを検出する。これにより、付属装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部は、検出部が付属装置の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部が付属装置の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、付属装置の電源グリッチが検出された場合には、制御部は、付属装置から情報処理装置への暗号化データの送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0022】
本発明の第8の態様に係る情報処理システムは、第7の態様に係る情報処理システムにおいて特に、前記制御部はさらに、前記検出部が前記付属装置の電源グリッチを検出している間、前記付属装置から前記情報処理装置への暗号化データの送信停止状態を継続することを特徴とするものである。
【0023】
第8の態様に係る情報処理システムによれば、制御部は、検出部が付属装置の電源グリッチを検出している間、付属装置から情報処理装置への暗号化データの送信停止状態を継続する。従って、フォールト攻撃のために電源グリッチが繰り返された場合であっても、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、確実に防止することが可能となる。
【0024】
本発明の第9の態様に係る情報処理システムは、第8の態様に係る情報処理システムにおいて特に、前記付属装置は、前記情報処理装置の正当性を認証するための認証処理を実行する第2の認証処理部をさらに有し、前記制御部は、前記検出部が前記付属装置の電源グリッチを検出した後、前記第2の認証処理部に認証処理を実行させることを特徴とするものである。
【0025】
第9の態様に係る情報処理システムによれば、制御部は、検出部が付属装置の電源グリッチを検出した後、第2の認証処理部に認証処理を実行させる。従って、誤った暗号化データを抜き取るべく付属装置から情報処理装置への暗号化データの送信を再開させるためには、攻撃者は第2の認証処理部による認証処理を突破する必要があるため、攻撃者によるフォールト攻撃をさらに困難化することが可能となる。
【0026】
本発明の第10の態様に係る情報処理システムは、第9の態様に係る情報処理システムにおいて特に、前記制御部は、前記付属装置から前記情報処理装置への暗号化データの送信を停止した後、前記検出部が前記付属装置の電源グリッチを検出せず、かつ、前記第2の認証処理部による認証処理が成功した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を再開することを特徴とするものである。
【0027】
第10の態様に係る情報処理システムによれば、制御部は、検出部が付属装置の電源グリッチを検出せず、かつ、第2の認証処理部による認証処理が成功した場合に、付属装置から情報処理装置への暗号化データの送信を再開する。従って、フォールト攻撃が終了した後には、第2の認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。また、静電気等の突発性ノイズに起因して付属装置の電源グリッチが検出された場合には、第2の認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。
【0028】
本発明の第11の態様に係る情報処理システムは、第1の暗号復号処理部を有する情報処理装置と、前記情報処理装置に接続され、第2の暗号復号処理部を有する付属装置と、を備え、前記情報処理装置は、前記付属装置に電源を供給する電源供給部と、前記電源供給部から前記付属装置に流れる電流を測定する電流測定部と、前記電流測定部による電流の測定結果に基づいて、前記付属装置の電源グリッチを検出する検出部と、前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止する制御部と、をさらに有することを特徴とするものである。
【0029】
第11の態様に係る情報処理システムによれば、電流測定部は、電源供給部から付属装置に流れる電流を測定し、検出部は、電流測定部による電流の測定結果に基づいて付属装置の電源グリッチを検出する。これにより、付属装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部は、検出部が付属装置の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部が付属装置の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、付属装置の電源グリッチが検出された場合には、制御部は、付属装置から情報処理装置への暗号化データの送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0030】
本発明の第12の態様に係る情報処理システムは、第11の態様に係る情報処理システムにおいて特に、前記制御部は、前記検出部が前記付属装置の電源グリッチを検出している間、前記付属装置から前記情報処理装置への暗号化データの送信停止状態を継続することを特徴とするものである。
【0031】
第12の態様に係る情報処理システムによれば、制御部は、検出部が付属装置の電源グリッチを検出している間、付属装置から情報処理装置への暗号化データの送信停止状態を継続する。従って、フォールト攻撃のために電源グリッチが繰り返された場合であっても、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、確実に防止することが可能となる。
【0032】
本発明の第13の態様に係る情報処理システムは、第12の態様に係る情報処理システムにおいて特に、前記付属装置は、前記情報処理装置の正当性を認証するための認証処理を実行する認証処理部をさらに有し、前記制御部は、前記検出部が前記付属装置の電源グリッチを検出した後、前記認証処理部に認証処理を実行させることを特徴とするものである。
【0033】
第13の態様に係る情報処理システムによれば、制御部は、検出部が付属装置の電源グリッチを検出した後、認証処理部に認証処理を実行させる。従って、誤った暗号化データを抜き取るべく付属装置から情報処理装置への暗号化データの送信を再開させるためには、攻撃者は認証処理部による認証処理を突破する必要があるため、攻撃者によるフォールト攻撃をさらに困難化することが可能となる。
【0034】
本発明の第14の態様に係る情報処理システムは、第13の態様に係る情報処理システムにおいて特に、前記制御部は、前記付属装置から前記情報処理装置への暗号化データの送信を停止した後、前記検出部が前記付属装置の電源グリッチを検出せず、かつ、前記認証処理部による認証処理が成功した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を再開することを特徴とするものである。
【0035】
第14の態様に係る情報処理システムによれば、制御部は、検出部が付属装置の電源グリッチを検出せず、かつ、認証処理部による認証処理が成功した場合に、付属装置から情報処理装置への暗号化データの送信を再開する。従って、フォールト攻撃が終了した後には、認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。また、静電気等の突発性ノイズに起因して付属装置の電源グリッチが検出された場合には、認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。
【0036】
本発明の第15の態様に係る情報処理システムは、第1の暗号復号処理部を含む処理回路を有する情報処理装置と、前記情報処理装置に接続され、第2の暗号復号処理部を有する付属装置と、を備え、前記情報処理装置は、前記処理回路及び前記付属装置に電源を供給する電源供給部と、前記電源供給部から前記処理回路及び前記付属装置に流れる電流を測定する電流測定部と、前記電流測定部による電流の測定結果に基づいて、前記情報処理装置及び前記付属装置の電源グリッチを検出する検出部と、前記検出部が前記情報処理装置の電源グリッチを検出した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止し、前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止する制御部と、をさらに有することを特徴とするものである。
【0037】
第15の態様に係る情報処理システムによれば、電流測定部は、電源供給部から処理回路及び付属装置に流れる電流を測定し、検出部は、電流測定部による電流の測定結果に基づいて情報処理装置及び付属装置の電源グリッチを検出する。これにより、情報処理装置及び付属装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部は、検出部が情報処理装置又は付属装置の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部が情報処理装置及び付属装置の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、制御部は、情報処理装置の電源グリッチが検出された場合には情報処理装置から付属装置への暗号化データの送信を停止し、付属装置の電源グリッチが検出された場合には付属装置から情報処理装置への暗号化データの送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0038】
本発明の第16の態様に係る情報処理システムは、第15の態様に係る情報処理システムにおいて特に、前記制御部は、前記検出部が前記情報処理装置の電源グリッチを検出している間、前記情報処理装置から前記付属装置への暗号化データの送信停止状態を継続し、前記検出部が前記付属装置の電源グリッチを検出している間、前記付属装置から前記情報処理装置への暗号化データの送信停止状態を継続することを特徴とするものである。
【0039】
第16の態様に係る情報処理システムによれば、制御部は、検出部が情報処理装置の電源グリッチを検出している間、情報処理装置から付属装置への暗号化データの送信停止状態を継続し、検出部が付属装置の電源グリッチを検出している間、付属装置から情報処理装置への暗号化データの送信停止状態を継続する。従って、フォールト攻撃のために電源グリッチが繰り返された場合であっても、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、確実に防止することが可能となる。
【0040】
本発明の第17の態様に係る情報処理システムは、第16の態様に係る情報処理システムにおいて特に、前記情報処理装置は、前記付属装置の正当性を認証するための認証処理を実行する第1の認証処理部をさらに有し、前記付属装置は、前記情報処理装置の正当性を認証するための認証処理を実行する第2の認証処理部をさらに有し、前記制御部は、前記検出部が前記情報処理装置の電源グリッチを検出した後、前記第1の認証処理部に認証処理を実行させ、前記検出部が前記付属装置の電源グリッチを検出した後、前記第2の認証処理部に認証処理を実行させることを特徴とするものである。
【0041】
第17の態様に係る情報処理システムによれば、制御部は、検出部が情報処理装置の電源グリッチを検出した後、第1の認証処理部に認証処理を実行させる。従って、誤った暗号化データを抜き取るべく情報処理装置から付属装置への暗号化データの送信を再開させるためには、攻撃者は第1の認証処理部による認証処理を突破する必要があるため、攻撃者によるフォールト攻撃をさらに困難化することが可能となる。また、制御部は、検出部が付属装置の電源グリッチを検出した後、第2の認証処理部に認証処理を実行させる。従って、誤った暗号化データを抜き取るべく付属装置から情報処理装置への暗号化データの送信を再開させるためには、攻撃者は第2の認証処理部による認証処理を突破する必要があるため、攻撃者によるフォールト攻撃をさらに困難化することが可能となる。
【0042】
本発明の第18の態様に係る情報処理システムは、第17の態様に係る情報処理システムにおいて特に、前記制御部は、前記情報処理装置から前記付属装置への暗号化データの送信を停止した後、前記検出部が前記情報処理装置の電源グリッチを検出せず、かつ、前記第1の認証処理部による認証処理が成功した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を再開し、前記付属装置から前記情報処理装置への暗号化データの送信を停止した後、前記検出部が前記付属装置の電源グリッチを検出せず、かつ、前記第2の認証処理部による認証処理が成功した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を再開することを特徴とするものである。
【0043】
第18の態様に係る情報処理システムによれば、制御部は、検出部が情報処理装置の電源グリッチを検出せず、かつ、第1の認証処理部による認証処理が成功した場合に、情報処理装置から付属装置への暗号化データの送信を再開する。従って、フォールト攻撃が終了した後には、第1の認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。また、静電気等の突発性ノイズに起因して情報処理装置の電源グリッチが検出された場合には、第1の認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。また、制御部は、検出部が付属装置の電源グリッチを検出せず、かつ、第2の認証処理部による認証処理が成功した場合に、付属装置から情報処理装置への暗号化データの送信を再開する。従って、フォールト攻撃が終了した後には、第2の認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。また、静電気等の突発性ノイズに起因して付属装置の電源グリッチが検出された場合には、第2の認証処理部による認証処理が成功したことを条件として情報処理システムの通常動作が再開されるため、システムの可用性を向上することが可能となる。
【0044】
本発明の第19の態様に係る情報処理システムは、第1~第18のいずれか一つの態様に係る情報処理システムにおいて特に、前記第1の暗号復号処理部と前記制御部とは、同一のダイに形成されていることを特徴とするものである。
【0045】
第19の態様に係る情報処理システムによれば、第1の暗号復号処理部と制御部とは同一のダイに形成されている。従って、第1の暗号復号処理部と制御部とが異なるダイに形成されている場合と比較すると、部品点数及び製造コストを削減することが可能となる。また、第1の暗号復号処理部と制御部との間でセキュア通信を行う必要がないため、システムを簡略化することが可能となる。
【0046】
本発明の第20の態様に係る情報処理システムは、第1~第18のいずれか一つの態様に係る情報処理システムにおいて特に、前記第1の暗号復号処理部と前記制御部とは、異なるダイに形成されていることを特徴とするものである。
【0047】
第20の態様に係る情報処理システムによれば、第1の暗号復号処理部と制御部とは異なるダイに形成されている。従って、攻撃者は第1の暗号復号処理部のみならず制御部をも解析対象とする必要があるため、攻撃者による解析をさらに困難化することが可能となる。
【0048】
本発明の第21の態様に係る情報処理装置は、第1の暗号復号処理部を有する処理回路を備える情報処理装置であって、前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、前記情報処理装置は、前記処理回路に電源を供給する電源供給部と、前記電源供給部から前記処理回路に流れる電流を測定する電流測定部と、前記電流測定部による電流の測定結果に基づいて、前記情報処理装置の電源グリッチを検出する検出部と、前記検出部が前記情報処理装置の電源グリッチを検出した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止する制御部と、をさらに備えることを特徴とするものである。
【0049】
第21の態様に係る情報処理装置によれば、電流測定部は、電源供給部から処理回路に流れる電流を測定し、検出部は、電流測定部による電流の測定結果に基づいて情報処理装置の電源グリッチを検出する。これにより、情報処理装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部は、検出部が情報処理装置の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部が情報処理装置の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、情報処理装置の電源グリッチが検出された場合には、制御部は、情報処理装置から付属装置への暗号化データの送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0050】
本発明の第22の態様に係る情報処理装置は、第1の暗号復号処理部を備える情報処理装置であって、前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、前記情報処理装置は、前記付属装置に電源を供給する電源供給部と、前記電源供給部から前記付属装置に流れる電流を測定する電流測定部と、前記電流測定部による電流の測定結果に基づいて、前記付属装置の電源グリッチを検出する検出部と、前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止する制御部と、をさらに備えることを特徴とするものである。
【0051】
第22の態様に係る情報処理装置によれば、電流測定部は、電源供給部から付属装置に流れる電流を測定し、検出部は、電流測定部による電流の測定結果に基づいて付属装置の電源グリッチを検出する。これにより、付属装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部は、検出部が付属装置の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部が付属装置の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、付属装置の電源グリッチが検出された場合には、制御部は、付属装置から情報処理装置への暗号化データの送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0052】
本発明の第23の態様に係る情報処理装置は、第1の暗号復号処理部を有する処理回路を備える情報処理装置であって、前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、前記情報処理装置は、前記処理回路及び前記付属装置に電源を供給する電源供給部と、前記電源供給部から前記処理回路及び前記付属装置に流れる電流を測定する電流測定部と、前記電流測定部による電流の測定結果に基づいて、前記情報処理装置及び前記付属装置の電源グリッチを検出する検出部と、前記検出部が前記情報処理装置の電源グリッチを検出した場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止し、前記検出部が前記付属装置の電源グリッチを検出した場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止する制御部と、をさらに備えることを特徴とするものである。
【0053】
第23の態様に係る情報処理装置によれば、電流測定部は、電源供給部から処理回路及び付属装置に流れる電流を測定し、検出部は、電流測定部による電流の測定結果に基づいて情報処理装置及び付属装置の電源グリッチを検出する。これにより、情報処理装置及び付属装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部は、検出部が情報処理装置又は付属装置の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部が情報処理装置及び付属装置の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、制御部は、情報処理装置の電源グリッチが検出された場合には情報処理装置から付属装置への暗号化データの送信を停止し、付属装置の電源グリッチが検出された場合には付属装置から情報処理装置への暗号化データの送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0054】
本発明の第24の態様に係る情報処理装置の制御方法は、第1の暗号復号処理部を有する処理回路を備える情報処理装置の制御方法であって、前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、(A)前記情報処理装置が備える電源供給部から前記処理回路に電源を供給するステップと、(B)前記電源供給部から前記処理回路に流れる電流を測定するステップと、(C)前記ステップ(B)による電流の測定結果に基づいて、前記情報処理装置の電源グリッチを検出するステップと、(D)前記ステップ(C)によって前記情報処理装置の電源グリッチが検出された場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止するステップと、を備えることを特徴とするものである。
【0055】
第24の態様に係る情報処理装置の制御方法によれば、ステップ(B)では、電源供給部から処理回路に流れる電流が測定され、ステップ(C)では、ステップ(B)による電流の測定結果に基づいて情報処理装置の電源グリッチが検出される。これにより、情報処理装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、ステップ(D)では、ステップ(C)によって情報処理装置の電源グリッチが検出された場合に、フォールト攻撃の対策処理が実行される。従って、ステップ(C)によって情報処理装置の電源グリッチが検出されない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、ステップ(C)によって情報処理装置の電源グリッチが検出された場合には、ステップ(D)によって情報処理装置から付属装置への暗号化データの送信が停止される。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0056】
本発明の第25の態様に係る情報処理装置の制御方法は、第1の暗号復号処理部を有する処理回路を備える情報処理装置の制御方法であって、前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、(A)前記情報処理装置が備える電源供給部から前記付属装置に電源を供給するステップと、(B)前記電源供給部から前記付属装置に流れる電流を測定するステップと、(C)前記ステップ(B)による電流の測定結果に基づいて、前記付属装置の電源グリッチを検出するステップと、(D)前記ステップ(C)によって前記付属装置の電源グリッチが検出された場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止するステップと、を備えることを特徴とするものである。
【0057】
第25の態様に係る情報処理装置の制御方法によれば、ステップ(B)では、電源供給部から付属装置に流れる電流が測定され、ステップ(C)では、ステップ(B)による電流の測定結果に基づいて付属装置の電源グリッチが検出される。これにより、付属装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、ステップ(D)では、ステップ(C)によって付属装置の電源グリッチが検出された場合に、フォールト攻撃の対策処理が実行される。従って、ステップ(C)によって付属装置の電源グリッチが検出されない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、ステップ(C)によって付属装置の電源グリッチが検出された場合には、ステップ(D)によって付属装置から情報処理装置への暗号化データの送信が停止される。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0058】
本発明の第26の態様に係る情報処理装置の制御方法は、第1の暗号復号処理部を有する処理回路を備える情報処理装置の制御方法であって、前記情報処理装置には、第2の暗号復号処理部を備える付属装置が接続され、(A)前記情報処理装置が備える電源供給部から前記処理回路及び前記付属装置に電源を供給するステップと、(B)前記電源供給部から前記処理回路及び前記付属装置に流れる電流を測定するステップと、(C)前記ステップ(B)による電流の測定結果に基づいて、前記情報処理装置及び前記付属装置の電源グリッチを検出するステップと、(D)前記ステップ(C)によって前記情報処理装置の電源グリッチが検出された場合に、前記情報処理装置から前記付属装置への暗号化データの送信を停止し、前記ステップ(C)によって前記付属装置の電源グリッチが検出された場合に、前記付属装置から前記情報処理装置への暗号化データの送信を停止するステップと、を備えることを特徴とするものである。
【0059】
第26の態様に係る情報処理装置の制御方法によれば、ステップ(B)では、電源供給部から処理回路及び付属装置に流れる電流が測定され、ステップ(C)では、ステップ(B)による電流の測定結果に基づいて情報処理装置及び付属装置の電源グリッチが検出される。これにより、情報処理装置及び付属装置の電源グリッチを簡易かつ確実に検出することが可能となる。また、ステップ(D)では、ステップ(C)によって情報処理装置又は付属装置の電源グリッチが検出された場合に、フォールト攻撃の対策処理が実行される。従って、ステップ(C)によって情報処理装置及び付属装置の電源グリッチが検出されない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因する情報処理システムの処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、ステップ(C)によって情報処理装置の電源グリッチが検出された場合には、ステップ(D)によって情報処理装置から付属装置への暗号化データの送信が停止され、ステップ(C)によって付属装置の電源グリッチが検出された場合には、ステップ(D)によって付属装置から情報処理装置への暗号化データの送信が停止される。従って、フォールト攻撃の解析対象となる誤った暗号化データが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【発明の効果】
【0060】
本発明によれば、フォールト攻撃に対する効果的な対策を簡易に実装することが可能となる。
【図面の簡単な説明】
【0061】
【
図2】ホスト装置の構成を簡略化して示す図である。
【
図3】CPUによって実現される機能の一部を示す図である。
【
図4】メモリ装置の構成を簡略化して示す図である。
【
図5】メモリ装置からのコンテンツデータの読み出し処理を示す図である。
【
図6】コマンド送信期間に電源グリッチが検出された場合の処理を示す図である。
【
図7】コンテンツデータ送信期間に電源グリッチが検出された場合の処理を示す図である。
【
図8】変形例に係るホスト装置の構成を簡略化して示す図である。
【
図9】ホスト装置の構成を簡略化して示す図である。
【
図12】メモリ装置の構成を簡略化して示す図である。
【
図13】ホスト装置によるメモリ装置の認証処理を示すフローチャートである。
【
図14】実測電流値パターン及び基準電流値パターンの一例を示す図である。
【発明を実施するための形態】
【0062】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。
【0063】
<実施の形態1>
図1は、本発明の実施の形態1に係るメモリシステム1の構成を示す図である。
図1に示すようにメモリシステム1は、ホスト装置2と、ホスト装置2に着脱自在に接続されたメモリ装置3とを備えて構成されている。ホスト装置2は、例えばパーソナルコンピュータ等の情報処理装置であり、メモリ装置3は、ホスト装置2から電源供給を受けて動作する付属装置、例えばフラッシュメモリのメモリカードである。他の例として、情報処理装置はプリンタ又は複合機の本体であり、付属装置はトナーカートリッジである。あるいは、情報処理装置はゲーム機の本体であり、付属装置はゲームプログラムが格納されたメモリカードである。
【0064】
図2は、ホスト装置2の構成を簡略化して示す図である。
図2に示すようにホスト装置2は、SoC(System on a Chip)11、電源供給部12、電流値測定回路13、及びメモリインタフェース14を備えて構成されている。SoC11は、バス21を介して相互に接続された、CPU22、暗号・復号器23、閾値格納メモリ24、実測値格納メモリ25、ADC(Analog to Digital Converter)26、コマンドバッファ27、及びデータバッファ28を備えて構成されている。電源供給部12は、SoC11及びメモリ装置3を動作させるための電源電圧VCCを、抵抗素子Rを介してSoC11及びメモリ装置3に供給する。電流値測定回路13は、抵抗素子Rの両端電圧を測定することにより、電源供給部12からSoC11及びメモリ装置3に流れる電流の電流値を測定する。なお、ハードウェアとしての暗号・復号器23を実装する上記の構成に代えて、CPU22がソフトウェア処理として暗号化処理及び復号化処理を実行する構成としても良い。また、電流値測定回路13は、SoC11内に実装されていても良い。
【0065】
図3は、CPU22によって実現される機能の一部を示す図である。
図3に示すようにCPU22は、検出部31、制御部32、及び認証処理部33として機能する。なお、検出部31、制御部32、及び認証処理部33は、CPU22とは別個の、専用のハードウェア回路として構成されていても良い。
【0066】
図4は、メモリ装置3の構成を簡略化して示す図である。
図4に示すようにメモリ装置3は、ホストインタフェース41、暗号・復号器42、メモリコントローラ43、メモリコアインタフェース44、及びメモリコア45を備えて構成されている。メモリコントローラ43は、認証処理部51を有している。メモリコア45には、画像や音声等の任意のコンテンツデータが格納されている。また、メモリコア45の特定のアドレス領域には、後述する閾値データ100が格納されている。
【0067】
図5は、メモリシステム1の通常動作に含まれる、メモリ装置3からのコンテンツデータの読み出し処理を示す図である。まずコマンド準備期間P1においてCPU22は、メモリ装置3から所望のコンテンツデータを読み出すためのリードコマンドを生成して発行する。
【0068】
次にコマンド送信期間P2において暗号・復号器23は、CPU22が発行したリードコマンドを暗号化することによって暗号化リードコマンドを生成し、当該暗号化リードコマンドをコマンドバッファ27にセットする。当該暗号化リードコマンドは、コマンドバッファ27からメモリインタフェース14を介してメモリ装置3に送信される。ホストインタフェース41は、ホスト装置2から受信した暗号化リードコマンドを、暗号・復号器42に入力する。暗号・復号器42は、入力された暗号化リードコマンドを復号化することにより、リードコマンドをメモリコントローラ43に入力する。メモリコントローラ43は、入力されたリードコマンドをデコードする。
【0069】
次にデータ読み出し期間P3においてメモリコントローラ43は、コンテンツデータのリードアドレスをメモリコアインタフェース44に入力する。当該リードアドレスはメモリコアインタフェース44からメモリコア45に入力され、これによって、所望のコンテンツデータがメモリコア45から読み出される。読み出されたコンテンツデータは、メモリコアインタフェース44を介してメモリコントローラ43に入力される。
【0070】
次にコンテンツデータ送信期間P4においてメモリコントローラ43は、コンテンツデータを暗号・復号器42に入力する。暗号・復号器42は、入力されたコンテンツデータを暗号化することによって暗号化コンテンツデータを生成し、当該暗号化コンテンツデータをホストインタフェース41に入力する。ホストインタフェース41は、入力された暗号化コンテンツデータをホスト装置2に送信する。メモリインタフェース14は、メモリ装置3から受信した暗号化コンテンツデータを、データバッファ28を介して暗号・復号器23に入力する。暗号・復号器23は、入力された暗号化コンテンツデータを復号化する。
【0071】
次にデータ処理期間P5において暗号・復号器23は、復号化したコンテンツデータをCPU22に入力し、CPU22は入力されたコンテンツデータを処理する。
【0072】
ここで、フォールト攻撃による攻撃対象は、ホスト装置2の暗号・復号器23、及び、メモリ装置3の暗号・復号器42である。具体的には、コマンド送信期間P2に電源電圧VCCに電源グリッチを加えることによって誤った暗号化コマンドを発生させ、又は、データ送信期間P4に電源電圧VCCに電源グリッチを加えることによって誤った暗号化コンテンツデータを発生させ、このようにして発生させた誤った暗号化コマンド又は暗号化コンテンツデータを抜き取って解析することが、フォールト攻撃の目的となる。
【0073】
また、ホスト装置2及びメモリ装置3がいずれも正規品であれば、実装される半導体デバイスの種類や各デバイスの製造プロセスが厳密に管理されているため、コマンド送信期間P2におけるSoC11及びメモリ装置3の消費電力特性はほぼ一定であり、また、コンテンツデータ送信期間P4におけるSoC11及びメモリ装置3の消費電力特性もほぼ一定である。
【0074】
そこで本実施の形態に係るメモリシステム1においては、
図5に示すように、コマンド送信期間P2において電源供給部12からSoC11及びメモリ装置3に流れる電流の最小値よりわずかに小さい値として閾値L1が設定され、コマンド送信期間P2において電源供給部12からSoC11及びメモリ装置3に流れる電流の最大値よりわずかに大きい値として閾値H1が設定される。また、コンテンツデータ送信期間P4において電源供給部12からSoC11及びメモリ装置3に流れる電流の最小値よりわずかに小さい値として閾値L2が設定され、コンテンツデータ送信期間P4において電源供給部12からSoC11及びメモリ装置3に流れる電流の最大値よりわずかに大きい値として閾値H2が設定される。これらの閾値L1,H1,L2,H2は工場出荷前に設定されて、暗号化された閾値データ100(
図4参照)として、メモリコア45の特定のアドレス領域に格納されている。
【0075】
メモリ装置3がホスト装置2に接続されて電源供給が開始されると、CPU22は、メモリ装置3から閾値データ100を読み出すためのリードコマンドを発行して、当該リードコマンドをコマンドバッファ27にセットする。当該リードコマンドは、コマンドバッファ27からメモリインタフェース14を介してメモリ装置3に送信される。ホストインタフェース41は、ホスト装置2から受信した当該リードコマンドを、メモリコントローラ43に入力する。メモリコントローラ43は、入力されたリードコマンドをデコードすることにより、閾値データ100のリードアドレスをメモリコアインタフェース44に入力する。当該リードアドレスはメモリコアインタフェース44からメモリコア45に入力され、これによって、閾値データ100がメモリコア45から読み出される。読み出された閾値データ100は、暗号化された状態で、メモリコアインタフェース44及びホストインタフェース41を介してホスト装置2に送信される。メモリインタフェース14は、メモリ装置3から受信した閾値データ100を、データバッファ28に格納する。CPU22は、データバッファ28に格納されている閾値データ100を暗号・復号器23に転送し、暗号・復号器23は、暗号化されている閾値データ100を復号化する。CPU22は、復号化された閾値データ100を、閾値格納メモリ24に転送する。以上の処理により、メモリ装置3から読み出した閾値データ100が閾値格納メモリ24に格納される。
【0076】
図3を参照して、制御部32は、メモリ装置3からのコンテンツデータの読み出し処理を開始する前に、ADC26を駆動する。
【0077】
コマンド送信期間P2において電流値測定回路13によって測定された実測電流値は、ADC26によってアナログ値からディジタル値に変換された後、実測値格納メモリ25に格納される。検出部31は、コマンド送信期間P2における実測電流値と、閾値格納メモリ24に格納されている閾値L1,H1とを逐次比較する。そして、実測電流値が閾値L1未満又は閾値H1超となった場合には、ホスト装置2の暗号・復号器23を攻撃対象とする電源グリッチが加えられたことを検出し、一方、実測電流値が閾値L1以上かつ閾値H1以下である場合には、当該電源グリッチが加えられていないことを検出する。
【0078】
同様に、コンテンツデータ送信期間P4において電流値測定回路13によって測定された実測電流値は、ADC26によってアナログ値からディジタル値に変換された後、実測値格納メモリ25に格納される。検出部31は、コンテンツデータ送信期間P4における実測電流値と、閾値格納メモリ24に格納されている閾値L2,H2とを逐次比較する。そして、実測電流値が閾値L2未満又は閾値H2超となった場合には、メモリ装置3の暗号・復号器42を攻撃対象とする電源グリッチが加えられたことを検出し、一方、実測電流値が閾値L2以上かつ閾値H2以下である場合には、当該電源グリッチが加えられていないことを検出する。
【0079】
図6は、コマンド送信期間P2に電源グリッチが検出された場合の処理を示す図である。コマンド送信期間P2内の時刻T1に電源電圧VCCに電源グリッチ(この例の場合はLowグリッチ)が加えられたことにより、時刻T1における実測電流値が閾値L1未満となっている。これにより検出部31は、時刻T1にホスト装置2の電源グリッチを検出する。
【0080】
検出部31がホスト装置2の電源グリッチを検出すると、制御部32は、暗号・復号器23、コマンドバッファ27、及びメモリインタフェース14の少なくとも一つからの暗号化コマンドの出力動作を停止することにより、ホスト装置2からメモリ装置3への暗号化コマンドの送信を直ちに停止する。例えば暗号・復号器23からの暗号化コマンドの出力動作を停止する場合には、暗号・復号器23への動作クロックの入力を強制的に停止することにより、又は、暗号・復号器23への駆動電源の供給を強制的に停止することにより、暗号・復号器23によるコマンドの暗号化処理自体を停止すれば良い。その後、制御部32は、認証処理部33,51にホスト装置2とメモリ装置3との相互認証を実行させる。ホスト装置2の認証処理部33はメモリ装置3の正当性を認証し、メモリ装置3の認証処理部51はホスト装置2の正当性を認証する。認証処理としては、AES等の現代暗号を用いたチャレンジアンドレスポンス方式の認証処理等を用いることができる。
【0081】
認証処理部33によるメモリ装置3の認証の結果が失敗(FAIL)である場合には、制御部32は、ホスト装置2からメモリ装置3への暗号化コマンドの送信を引き続き停止する。一方、認証処理部33によるメモリ装置3の認証の結果が成功(PASS)である場合には、制御部32はメモリシステム1の通常動作を再開し、送信が停止されたコマンドに関してCPU22によるコマンドの発行処理からやり直す。通常動作が再開された後も、検出部31は、コマンド送信期間P2における実測電流値と、閾値格納メモリ24に格納されている閾値L1,H1とを逐次比較する。そして、検出部31がホスト装置2の電源グリッチを再び検出すると、上記と同様に制御部32は、ホスト装置2からメモリ装置3への暗号化コマンドの送信を直ちに停止した後、認証処理部33,51に相互認証を実行させる。これにより、ホスト装置2を攻撃対象とするフォールト攻撃が継続されて検出部31がホスト装置2の電源グリッチを検出し続ける限り、ホスト装置2からメモリ装置3への暗号化コマンドの送信停止状態が継続される。認証処理部33によるメモリ装置3の認証が成功したことによりメモリシステム1の通常動作が再開され、かつ、その後に検出部31がホスト装置2の電源グリッチを検出しない場合に、ホスト装置2からメモリ装置3への暗号化コマンドの送信が適切に再開されることになる。
【0082】
図7は、コンテンツデータ送信期間P4に電源グリッチが検出された場合の処理を示す図である。コンテンツデータ送信期間P4内の時刻T2に電源電圧VCCに電源グリッチ(この例の場合はHighグリッチ)が加えられたことにより、時刻T2における実測電流値が閾値H2超となっている。これにより検出部31は、時刻T2にメモリ装置3の電源グリッチを検出する。
【0083】
検出部31がメモリ装置3の電源グリッチを検出すると、制御部32は、暗号・復号器42及びホストインタフェース41の少なくとも一方からの暗号化コンテンツデータの出力動作を停止することにより、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信を直ちに停止する。例えば暗号・復号器42からの暗号化コンテンツデータの出力動作を停止する場合には、暗号・復号器42への動作クロックの入力を強制的に停止することにより、又は、暗号・復号器42への駆動電源の供給を強制的に停止することにより、暗号・復号器42によるコンテンツデータの暗号化処理自体を停止すれば良い。その後、制御部32は、認証処理部33,51にホスト装置2とメモリ装置3との相互認証を実行させる。
【0084】
認証処理部51によるホスト装置2の認証の結果が失敗(FAIL)である場合には、制御部32は、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信を引き続き停止する。一方、認証処理部51によるホスト装置2の認証の結果が成功(PASS)である場合には、制御部32はメモリシステム1の通常動作を再開し、送信が停止されたコンテンツデータに関してCPU22によるコマンドの発行処理からやり直す。通常動作が再開された後も、検出部31は、コンテンツデータ送信期間P4における実測電流値と、閾値格納メモリ24に格納されている閾値L2,H2とを逐次比較する。そして、検出部31がメモリ装置3の電源グリッチを再び検出すると、上記と同様に制御部32は、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信を直ちに停止した後、認証処理部33,51に相互認証を実行させる。これにより、メモリ装置3を攻撃対象とするフォールト攻撃が継続されて検出部31がメモリ装置3の電源グリッチを検出し続ける限り、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信停止状態が継続される。認証処理部51によるホスト装置2の認証が成功したことによりメモリシステム1の通常動作が再開され、かつ、その後に検出部31がメモリ装置3の電源グリッチを検出しない場合に、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信が適切に再開されることになる。
【0085】
本実施の形態に係るメモリシステム1(情報処理システム)によれば、電流値測定回路13(電流測定部)は、電源供給部12からSoC11(処理回路)及びメモリ装置3(付属装置)に流れる電流を測定し、検出部31は、電流値測定回路13による電流の測定結果に基づいてホスト装置2(情報処理装置)及びメモリ装置3の電源グリッチを検出する。これにより、ホスト装置2及びメモリ装置3の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部32は、検出部31がホスト装置2又はメモリ装置3の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部31がホスト装置2及びメモリ装置3の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因するメモリシステム1の処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、制御部32は、ホスト装置2の電源グリッチが検出された場合にはホスト装置2からメモリ装置3への暗号化コマンド(暗号化データ)の送信を停止し、メモリ装置3の電源グリッチが検出された場合にはメモリ装置3からホスト装置2への暗号化コンテンツデータ(暗号化データ)の送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化コマンド及び誤った暗号化コンテンツデータが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0086】
また、本実施の形態に係るメモリシステム1によれば、制御部32は、検出部31がホスト装置2の電源グリッチを検出している間、ホスト装置2からメモリ装置3への暗号化コマンドの送信停止状態を継続し、検出部31がメモリ装置3の電源グリッチを検出している間、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信停止状態を継続する。従って、フォールト攻撃のために電源グリッチが繰り返された場合であっても、フォールト攻撃の解析対象となる誤った暗号化コマンド及び誤った暗号化コンテンツデータが攻撃者によって抜き取られることを、確実に防止することが可能となる。
【0087】
また、本実施の形態に係るメモリシステム1によれば、制御部32は、検出部31がホスト装置2の電源グリッチを検出した後、認証処理部33(第1の認証処理部)に認証処理を実行させる。従って、誤った暗号化コマンドを抜き取るべくホスト装置2からメモリ装置3への暗号化コマンドの送信を再開させるためには、攻撃者は認証処理部33による認証処理を突破する必要があるため、攻撃者によるフォールト攻撃をさらに困難化することが可能となる。また、制御部32は、検出部31がメモリ装置3の電源グリッチを検出した後、認証処理部51(第2の認証処理部)に認証処理を実行させる。従って、誤った暗号化コンテンツデータを抜き取るべくメモリ装置3からホスト装置2への暗号化コンテンツデータの送信を再開させるためには、攻撃者は認証処理部51による認証処理を突破する必要があるため、攻撃者によるフォールト攻撃をさらに困難化することが可能となる。
【0088】
また、本実施の形態に係るメモリシステム1によれば、制御部32は、検出部31がホスト装置2の電源グリッチを検出せず、かつ、認証処理部33による認証処理が成功した場合に、ホスト装置2からメモリ装置3への暗号化コマンドの送信を再開する。従って、フォールト攻撃が終了した後には、認証処理部33による認証処理が成功したことを条件としてメモリシステム1の通常動作が再開されるため、システムの可用性を向上することが可能となる。また、静電気等の突発性ノイズに起因してホスト装置2の電源グリッチが検出された場合には、認証処理部33による認証処理が成功したことを条件としてメモリシステム1の通常動作が再開されるため、システムの可用性を向上することが可能となる。また、制御部32は、検出部31がメモリ装置3の電源グリッチを検出せず、かつ、認証処理部51による認証処理が成功した場合に、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信を再開する。従って、フォールト攻撃が終了した後には、認証処理部51による認証処理が成功したことを条件としてメモリシステム1の通常動作が再開されるため、システムの可用性を向上することが可能となる。また、静電気等の突発性ノイズに起因してメモリ装置3の電源グリッチが検出された場合には、認証処理部51による認証処理が成功したことを条件としてメモリシステム1の通常動作が再開されるため、システムの可用性を向上することが可能となる。
【0089】
図8は、本実施の形態の変形例に係るホスト装置2の構成を簡略化して示す図である。
図8に示すようにホスト装置2は、SoC11、SoC制御部90、電源供給部12、電流値測定回路13、及びメモリインタフェース14を備えて構成されている。SoC制御部90とSoC11とは、異なるダイ(ICチップ)に形成されている。SoC11は、バス21を介して相互に接続された、CPU22、暗号・復号器23、コマンドバッファ27、及びデータバッファ28を備えて構成されている。SoC制御部90は、バス91を介して相互に接続された、ADC26、検出部31、制御部32、認証処理部33、閾値格納メモリ24、及び実測値格納メモリ25を備えて構成されている。なお、電流値測定回路13は、SoC制御部90内に実装されていても良い。
【0090】
検出部31がホスト装置2の電源グリッチを検出すると、制御部32は、暗号・復号器23、コマンドバッファ27、及びメモリインタフェース14の少なくとも一つからの暗号化コマンドの出力動作を停止することにより、あるいは、SoC11全体の動作を停止することにより、ホスト装置2からメモリ装置3への暗号化コマンドの送信を直ちに停止する。例えば、SoC11への駆動電源の供給を強制的に停止することによって、SoC11全体の動作を停止することができる。
【0091】
本変形例によれば、SoC11とSoC制御部90とは異なるダイに形成されている。従って、攻撃者はSoC11のみならずSoC制御部90をも解析対象とする必要があるため、攻撃者による解析をさらに困難化することが可能となる。
【0092】
一方、
図2に示した構成によれば、CPU22(検出部31、制御部32、及び認証処理部33)と暗号・復号器23とが同一のダイ(SoC11)に形成されている。従って、両者が異なるダイに形成されている構成(
図8)と比較すると、部品点数及び製造コストを削減することが可能となる。また、SoC11とSoC制御部90との間でセキュア通信を行う必要がないため、システムを簡略化することが可能となる。
【0093】
<実施の形態2>
以下、本発明の実施の形態2に係るメモリシステム1について、上記実施の形態1との相違点を中心に説明する。
【0094】
図9は、ホスト装置2の構成を簡略化して示す図である。
図9に示すようにホスト装置2は、SoC11、電源供給部12A,12B、電流値測定回路13A,13B、及びメモリインタフェース14を備えて構成されている。SoC11は、バス21を介して相互に接続された、CPU22、暗号・復号器23、閾値格納メモリ24、実測値格納メモリ25、ADC26A,26B、コマンドバッファ27、データバッファ28、期待値格納メモリ61、及び実測値格納メモリ62を備えて構成されている。電源供給部12Aは、SoC11を動作させるための電源電圧VCCを、抵抗素子RAを介してSoC11に供給する。電流値測定回路13Aは、抵抗素子RAの両端電圧を測定することにより、電源供給部12AからSoC11に流れる電流の電流値を測定する。電源供給部12Bは、メモリ装置3を動作させるための電源電圧VCCを、抵抗素子RBを介してメモリ装置3に供給する。電流値測定回路13Bは、抵抗素子RBの両端電圧を測定することにより、電源供給部12Bからメモリ装置3に流れる電流の電流値を測定する。なお、電流値測定回路13A,13Bは、SoC11内に実装されていても良い。
【0095】
本実施の形態に係るメモリシステム1においては、コマンド送信期間P2において電源供給部12AからSoC11に流れる電流の最小値よりわずかに小さい値として閾値L1が設定され、コマンド送信期間P2において電源供給部12AからSoC11に流れる電流の最大値よりわずかに大きい値として閾値H1が設定される。本実施の形態では、閾値L1,H1の設定に際してメモリ装置3の消費電力を考慮する必要がないため、上記実施の形態1と比較して、閾値L1,H1を当該最小値及び当該最大値に近接して設定することができ、その結果、ホスト装置2に対する電源グリッチの検出精度が向上する。また、コンテンツデータ送信期間P4において電源供給部12Bからメモリ装置3に流れる電流の最小値よりわずかに小さい値として閾値L2が設定され、コンテンツデータ送信期間P4において電源供給部12Bからメモリ装置3に流れる電流の最大値よりわずかに大きい値として閾値H2が設定される。本実施の形態では、閾値L2,H2の設定に際してホスト装置2の消費電力を考慮する必要がないため、上記実施の形態1と比較して、閾値L2,H2を当該最小値及び当該最大値に近接して設定することができ、その結果、メモリ装置3に対する電源グリッチの検出精度が向上する。
【0096】
図3を参照して、制御部32は、メモリ装置3からのコンテンツデータの読み出し処理を開始する前に、ADC26A,26Bを駆動する。
【0097】
コマンド送信期間P2において電流値測定回路13Aによって測定された実測電流値は、ADC26Aによってアナログ値からディジタル値に変換された後、実測値格納メモリ25に格納される。検出部31は、コマンド送信期間P2における実測電流値と、閾値格納メモリ24に格納されている閾値L1,H1とを逐次比較する。そして、実測電流値が閾値L1未満又は閾値H1超となった場合には、ホスト装置2の暗号・復号器23を攻撃対象とする電源グリッチが加えられたことを検出し、一方、実測電流値が閾値L1以上かつ閾値H1以下である場合には、当該電源グリッチが加えられていないことを検出する。
【0098】
同様に、コンテンツデータ送信期間P4において電流値測定回路13Bによって測定された実測電流値は、ADC26Bによってアナログ値からディジタル値に変換された後、実測値格納メモリ25に格納される。検出部31は、コンテンツデータ送信期間P4における実測電流値と、閾値格納メモリ24に格納されている閾値L2,H2とを逐次比較する。そして、実測電流値が閾値L2未満又は閾値H2超となった場合には、メモリ装置3の暗号・復号器42を攻撃対象とする電源グリッチが加えられたことを検出し、一方、実測電流値が閾値L2以上かつ閾値H2以下である場合には、当該電源グリッチが加えられていないことを検出する。
【0099】
検出部31がホスト装置2又はメモリ装置3の電源グリッチを検出した後の処理は、上記実施の形態1と同様である。但し、本実施の形態においては、認証処理部33がメモリ装置3の正当性を認証するにあたり、現代暗号を用いた認証処理に代えて、あるいは現代暗号を用いた認証処理に加えて、以下に述べる認証方法を用いることができる。
【0100】
図10は、認証処理部33が有する機能を示す図である。
図10に示すように認証処理部33は、制御部71及び判定部72として機能する。
【0101】
図11は、判定部72が有する機能を示す図である。
図11に示すように判定部72は、期待値取得部81、実測値取得部82、パターン作成部83、及びパターン比較部84として機能する。
【0102】
図12は、メモリ装置3の構成を簡略化して示す図である。メモリコア45の特定のアドレス領域には、期待値データ200が格納されている。
【0103】
メモリ装置3の正規品と非正規品とでは、半導体デバイスの構造や製造プロセス等が異なるため、消費電流特性が顕著に相違する。本実施の形態に係るホスト装置2において、制御部71は、メモリ装置3を認証するための所定の電力消費動作を、通常動作に付加してメモリ装置3に実行させる。また、判定部72は、メモリ装置3が電力消費動作を実行している期間に電流値測定回路13Bによって測定された実測電流値と、正規品のメモリ装置3が電力消費動作を実行した場合の電流値である既知の基準電流値とに基づいて、メモリ装置3が正規品であるか非正規品であるかを判定する。具体的には以下の通りである。
【0104】
ホスト装置2の制御部71は、メモリ装置3を認証するための所定の電力消費動作を、メモリ装置3のメモリコントローラ43に実行させる。具体的には、メモリコントローラ43が備える複数のロジック回路のうちの特定ロジック回路に、予め定められた特定動作を実行させることにより、その特定動作に伴う消費電力を発生させる。電力消費動作の実行対象となる特定ロジック回路としては、上記特定動作に伴う消費電流値が比較的大きく、かつその変化態様が特徴的であるものが望ましい。
【0105】
正規品のメモリ装置3であれば、実装される半導体デバイスの種類や各デバイスの製造プロセスが厳密に管理されているため、電力消費動作によって特定ロジック回路が特定動作を実行した場合の消費電流特性はほぼ一定である。そこで、電力消費動作に伴う消費電流特性を示す情報が工場出荷前に作成されて、暗号化された期待値データ200(
図12参照)として、メモリコア45の特定のアドレス領域に格納されている。本実施の形態の例では、電力消費動作の実行に伴う消費電流値を所定のサンプリング周波数でサンプリングすることによって得られる消費電流値の遷移パターン(基準電流値パターン)が、期待値データ200としてメモリコア45に格納されている。
【0106】
図13は、ホスト装置2によるメモリ装置3の認証処理を示すフローチャートである。まずステップSP101において制御部71は、メモリ装置3から期待値データ200を読み出すためのリードコマンドを発行して、当該リードコマンドをコマンドバッファ27にセットする。当該リードコマンドは、コマンドバッファ27からメモリインタフェース14を介してメモリ装置3に送信される。ホストインタフェース41は、ホスト装置2から受信したリードコマンドを、メモリコントローラ43に入力する。メモリコントローラ43は、入力されたリードコマンドをデコードすることにより、期待値データ200のリードアドレスをメモリコアインタフェース44に入力する。当該リードアドレスはメモリコアインタフェース44からメモリコア45に入力され、これによって、期待値データ200がメモリコア45から読み出される。本実施の形態の例では、正規品に関する基準電流値パターンと、所定の許容誤差値を示すデータとが、期待値データ200としてメモリコア45から読み出される。許容誤差値は、基準電流値パターンにおける電流値の分布態様等に応じて、プラスマイナス数%からプラスマイナス10数%の範囲内で最適な値が予め設定されている。読み出された期待値データ200は、暗号化された状態で、メモリコアインタフェース44及びホストインタフェース41を介してホスト装置2に送信される。メモリインタフェース14は、メモリ装置3から受信した期待値データ200を、データバッファ28に格納する。制御部71は、データバッファ28に格納されている期待値データ200を暗号・復号器23に転送し、暗号・復号器23は、暗号化されている期待値データ200を復号化する。制御部71は、復号化された期待値データ200を、期待値格納メモリ61に転送する。以上の処理により、基準電流値パターンと許容誤差値を示すデータとが、期待値格納メモリ61に格納される。その後、制御部71はADC26Bを駆動する。
【0107】
次にステップSP102において制御部71は、電力消費動作を実行させるための制御コマンドを発行して、当該制御コマンドをコマンドバッファ27にセットする。当該制御コマンドは、メモリコントローラ43が備える複数のロジック回路のうちの特定ロジック回路に、予め定められた特定動作を実行させるためのコマンドである。また、当該特定動作を実行すべき期間も当該制御コマンドによって指定されており、例えば、特定動作の実行期間として「スタンバイ期間」が指定される。当該制御コマンドは、コマンドバッファ27からメモリインタフェース14を介してメモリ装置3に送信される。ホストインタフェース41は、ホスト装置2から受信した当該制御コマンドを、メモリコントローラ43に入力する。メモリコントローラ43は、入力された制御コマンドをデコードすることにより、当該制御コマンドで指定された特定動作を実行させる制御命令を、当該制御コマンドで指定された特定ロジック回路に入力する。当該特定ロジック回路は、チップセレクト信号がネゲートされることによってメモリ装置3がスタンバイ期間に移行したことを認識すると、上記制御命令によって指示された特定動作の実行を開始する。当該特定動作(即ち電力消費動作)は、メモリ装置3のスタンバイ期間においてバックグラウンド動作として実行される。
【0108】
次にステップSP103において、実測値取得部82は実測電流値を取得する。具体的には以下の通りである。メモリ装置3が電力消費動作を開始すると、それに伴う電流がホスト装置2の電源供給部12Bから抵抗素子RBを介してメモリ装置3に流れる。電流値測定回路13Bは、抵抗素子RBの両端電圧を所定のサンプリング周波数(例えば1MHz~数MHz)でサンプリングすることによって、電源供給部12Bからメモリ装置3に流れる電流の電流値を実測する。実測された電流値は、ADC26Bによってアナログ値からディジタル値に変換される。制御部71は、ディジタル値に変換された実測電流値を、実測値格納メモリ62に格納する。実測値取得部82は、実測値格納メモリ62に格納されている実測電流値を、実測値格納メモリ62から取得する。
【0109】
次にステップSP104においてパターン作成部83は、実測値取得部82によって取得された実測電流値を時系列順に配列することによって、実測電流値パターンを作成する。
【0110】
次にステップSP105において期待値取得部81は、期待値格納メモリ61から基準電流値パターンと許容誤差値を示すデータとを取得する。
【0111】
次にステップSP106においてパターン比較部84は、パターン作成部83によって作成された実測電流値パターンと、期待値取得部81によって取得された基準電流値パターンとを比較する。
【0112】
図14は、実測電流値パターン及び基準電流値パターンの一例を示す図である。電流値測定回路13Bのサンプリング周波数が1MHz~数MHzであり、測定対象期間の長さが数m秒~数十m秒である場合には、実際には実測電流値パターン及び基準電流値パターンはそれぞれ数十万個~数百万個の電流値によって構成される。しかし
図14では説明の簡単化のため、実測電流値パターン及び基準電流値パターンがそれぞれ7個の実測電流値X01~X07及び基準電流値Y01~Y07によって構成された例を示している。パターン比較部84は、対応する実測電流値X01~X07と基準電流値Y01~Y07とのそれぞれの差と、期待値取得部81によって取得された許容誤差値とをそれぞれ比較する。
【0113】
次にステップSP107においてパターン比較部84は、実測電流値X01~X07と基準電流値Y01~Y07との差の全てが許容誤差値以下であるか否かを判定する。そしてパターン比較部84は、これらの差の全てが許容誤差値以下である場合(つまり完全一致する場合)には、ホスト装置2に接続されているメモリ装置3は正規品であると判定する。
図14に示した例では、実測電流値X01~X07と基準電流値Y01~Y07とが完全一致するため、メモリ装置3は正規品であると判定される。
【0114】
一方、少なくとも一つの差が許容誤差値を超える場合(つまり完全一致しない場合)には、パターン比較部84は、ホスト装置2に接続されているメモリ装置3は非正規品であると判定する。
【0115】
本実施の形態に係るメモリシステム1によれば、電流値測定回路13A(第1の電流測定部)は、電源供給部12A(第1の電源供給部)からSoC11に流れる電流を測定し、検出部31は、電流値測定回路13Aによる電流の測定結果に基づいてホスト装置2の電源グリッチを検出する。これにより、ホスト装置2の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部32は、検出部31がホスト装置2の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部31がホスト装置2の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因するメモリシステム1の処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、ホスト装置2の電源グリッチが検出された場合には、制御部32は、ホスト装置2からメモリ装置3への暗号化データの送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化コマンドが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0116】
また、本実施の形態に係るメモリシステム1によれば、制御部32は、検出部31がホスト装置2の電源グリッチを検出している間、ホスト装置2からメモリ装置3への暗号化コマンドの送信停止状態を継続する。従って、フォールト攻撃のために電源グリッチが繰り返された場合であっても、フォールト攻撃の解析対象となる誤った暗号化コマンドが攻撃者によって抜き取られることを、確実に防止することが可能となる。
【0117】
また、本実施の形態に係るメモリシステム1によれば、制御部32は、検出部31がホスト装置2の電源グリッチを検出した後、認証処理部33に認証処理を実行させる。従って、誤った暗号化コマンドを抜き取るべくホスト装置2からメモリ装置3への暗号化コマンドの送信を再開させるためには、攻撃者は認証処理部33による認証処理を突破する必要があるため、攻撃者によるフォールト攻撃をさらに困難化することが可能となる。
【0118】
また、本実施の形態に係るメモリシステム1によれば、認証処理部33は、メモリ装置3を認証するための所定の電力消費動作を、通常動作に付加してメモリ装置3に実行させ、メモリ装置3が電力消費動作を実行している期間に電流値測定回路13Bによって測定された実測電流値と、正規品のメモリ装置3が電力消費動作を実行した場合の電流値である既知の基準電流値とに基づいて、メモリ装置3の正当性を認証する。従って、非正規品のメモリ装置3が電力消費動作を実行できない場合には、実測電流値は基準電流値に一致しないため、認証処理部33によってメモリ装置3の認証を容易に実行することができる。また、非正規品のメモリ装置3が電力消費動作を実行できたとしても、デバイス構造や製造プロセスの相違等に起因して正規品と非正規品とでは消費電力特性が相違するため、非正規品の実測電流値は正規品の基準電流値に一致しない。従って、認証処理部33によってメモリ装置3の認証を容易に実行することができる。しかも、メモリ装置3を認証するための電力消費動作は、メモリ装置3の通常動作そのものではなく、通常動作に付加される独立的な動作であるため、消費電流値及びその変化態様等が顕著となる恣意的な電力消費動作をメモリ装置3に実行させることができる。その結果、認証処理部33によるメモリ装置3の認証精度を向上することが可能となる。
【0119】
また、本実施の形態に係るメモリシステム1によれば、パターン比較部84は、パターン作成部83によって作成された実測電流値パターンと、基準電流値が時系列順に配列された既知の基準電流値パターンとを比較し、認証処理部33は、パターン比較部84による比較結果に基づいて、メモリ装置3の正当性を認証する。非正規品は粗悪品であることが多いため、非正規品の消費電流の絶対値は正規品のそれより大きい場合が多い。本実施の形態に係るメモリシステム1によれば、認証処理部33は、消費電流の変化率パターンではなく実測電流値パターンと基準電流値パターンとを比較するため、たとえ正規品と非正規品とで消費電流の変化率パターンが近似している場合であっても、メモリ装置3の認証を高精度に実行することが可能となる。
【0120】
また、本実施の形態に係るメモリシステム1によれば、制御部32は、検出部31がホスト装置2の電源グリッチを検出せず、かつ、認証処理部33による認証処理が成功した場合に、ホスト装置2からメモリ装置3への暗号化コマンドの送信を再開する。従って、フォールト攻撃が終了した後には、認証処理部33による認証処理が成功したことを条件としてメモリシステム1の通常動作が再開されるため、システムの可用性を向上することが可能となる。また、静電気等の突発性ノイズに起因してホスト装置2の電源グリッチが検出された場合には、認証処理部33による認証処理が成功したことを条件としてメモリシステム1の通常動作が再開されるため、システムの可用性を向上することが可能となる。
【0121】
また、本実施の形態に係るメモリシステム1によれば、電流値測定回路13Bは、電源供給部12Bからメモリ装置3に流れる電流を測定し、検出部31は、電流値測定回路13Bによる電流の測定結果に基づいてメモリ装置3の電源グリッチを検出する。これにより、メモリ装置3の電源グリッチを簡易かつ確実に検出することが可能となる。また、制御部32は、検出部31がメモリ装置3の電源グリッチを検出した場合に、フォールト攻撃の対策処理を実行する。従って、検出部31がメモリ装置3の電源グリッチを検出しない場合にはフォールト攻撃の対策処理は実行されないため、当該対策処理が常時実行されることに起因するメモリシステム1の処理レイテンシの増大及びシステムパフォーマンスの低下を回避することが可能となる。さらに、メモリ装置3の電源グリッチが検出された場合には、制御部32は、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信を停止する。従って、フォールト攻撃の解析対象となる誤った暗号化コンテンツデータが攻撃者によって抜き取られることを、効果的に防止することが可能となる。
【0122】
また、本実施の形態に係るメモリシステム1によれば、制御部32は、検出部31がメモリ装置3の電源グリッチを検出している間、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信停止状態を継続する。従って、フォールト攻撃のために電源グリッチが繰り返された場合であっても、フォールト攻撃の解析対象となる誤った暗号化コンテンツデータが攻撃者によって抜き取られることを、確実に防止することが可能となる。
【0123】
また、本実施の形態に係るメモリシステム1によれば、制御部32は、検出部31がメモリ装置3の電源グリッチを検出した後、認証処理部51に認証処理を実行させる。従って、誤った暗号化コンテンツデータを抜き取るべくメモリ装置3からホスト装置2への暗号化コンテンツデータの送信を再開させるためには、攻撃者は認証処理部51による認証処理を突破する必要があるため、攻撃者によるフォールト攻撃をさらに困難化することが可能となる。
【0124】
また、本実施の形態に係るメモリシステム1によれば、制御部32は、検出部31がメモリ装置3の電源グリッチを検出せず、かつ、認証処理部51による認証処理が成功した場合に、メモリ装置3からホスト装置2への暗号化コンテンツデータの送信を再開する。従って、フォールト攻撃が終了した後には、認証処理部51による認証処理が成功したことを条件としてメモリシステム1の通常動作が再開されるため、システムの可用性を向上することが可能となる。また、静電気等の突発性ノイズに起因してメモリ装置3の電源グリッチが検出された場合には、認証処理部51による認証処理が成功したことを条件としてメモリシステム1の通常動作が再開されるため、システムの可用性を向上することが可能となる。
【0125】
なお、本実施の形態においても
図8に示した構成と同様に、SoC11とSoC制御部90とを異なるダイに形成しても良い。その場合、ADC26A,26B、検出部31、制御部32、認証処理部33、閾値格納メモリ24、実測値格納メモリ25、期待値格納メモリ61、及び実測値格納メモリ62は、SoC制御部90内に実装される。また、電流値測定回路13A,13BをSoC制御部90内に実装しても良い。検出部31がホスト装置2の電源グリッチを検出すると、制御部32は、暗号・復号器23、コマンドバッファ27、及びメモリインタフェース14の少なくとも一つからの暗号化コマンドの出力動作を停止することにより、あるいは、SoC11全体の動作を停止することにより、ホスト装置2からメモリ装置3への暗号化コマンドの送信を直ちに停止する。
【符号の説明】
【0126】
1 メモリシステム
2 ホスト装置
3 メモリ装置
11 SoC
12,12A,12B 電源供給部
13,13A,13B 電流値測定回路
22 CPU
23,42 暗号・復号器
31 検出部
32,71 制御部
33,51 認証処理部
43 メモリコントローラ
45 メモリコア
72 判定部
81 期待値取得部
82 実測値取得部
83 パターン作成部
84 パターン比較部
90 SoC制御部
100 閾値データ
200 期待値データ