JP2021140342A - 暗号装置、及び、暗号装置のセルフテスト方法 - Google Patents

暗号装置、及び、暗号装置のセルフテスト方法 Download PDF

Info

Publication number
JP2021140342A
JP2021140342A JP2020036110A JP2020036110A JP2021140342A JP 2021140342 A JP2021140342 A JP 2021140342A JP 2020036110 A JP2020036110 A JP 2020036110A JP 2020036110 A JP2020036110 A JP 2020036110A JP 2021140342 A JP2021140342 A JP 2021140342A
Authority
JP
Japan
Prior art keywords
data
port
encryption
guarantee
software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2020036110A
Other languages
English (en)
Other versions
JP7053700B2 (ja
Inventor
秀明 門司
Hideaki Moji
秀明 門司
雄策 清田
Yusaku Kiyota
雄策 清田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020036110A priority Critical patent/JP7053700B2/ja
Priority to US17/019,433 priority patent/US11263350B2/en
Publication of JP2021140342A publication Critical patent/JP2021140342A/ja
Application granted granted Critical
Publication of JP7053700B2 publication Critical patent/JP7053700B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】暗号モジュールが実行する第1のソフトウェアとは別の第2のソフトウェアを実行するデバイスが第2のソフトウェアのイメージデータの検証を含んだセルフテストを行う機能を有していなくても暗号装置全体を暗号境界とする。【解決手段】暗号装置において、暗号モジュールが、第1のソフトウェアのイメージデータについて、所定の認証要件を満たすための処理である第1の保証チェック処理を実行することに加えて、第2のソフトウェアのイメージデータの少なくとも一部でありデバイスにより所定の要件を満たすための検証がされない検証対象について、上記所定の認証要件を満たすための処理である第2の保証チェック処理を実行する。【選択図】図2

Description

本発明は、概して、暗号装置のセルフテストに関する。
暗号装置に関するセキュリティ要件が規定されており、セキュリティ要件を暗号装置が満たすことで当該暗号装置について認証が取得されることが知られている。取得され得る認証の一例として、FIPS(Federal Information Processing Standards)認証(例えば、FIPS 140)がある。
FIPS140認証の取得のための一つのセキュリティ要件は、FIPS140認証要件となっているテストを暗号装置自らが行うこと、すなわち、FIPS140認証要件となっているセルフテスト(以下、FIPSセルフテスト)を暗号装置が行うことである。
セルフテストに関する技術は、例えば特許文献1に開示されている。特許文献1に開示の半導体装置において、プログラマブルデバイスのテストを、プロセッシングデバイスが行い、メモリデバイスのテストを、プログラマブルデバイスに実現されたビルトインセルフテスト回路を用いてプロセッシングデバイスが行う。
特開2011-82566号公報
FIPS140認証要件となっているテストとして、暗号装置内で実行されるソフトウェア及びファームウェアのイメージデータを所定の要件に従って検証するためのテストがある。
また、FIPS140認証には、幾つかのレベルがある。レベルによって、暗号境界(セキュリティ要件を満たさなければいけない範囲)の大きさや、暗号境界内で満たさなければならない制約が異なる。FIPS140認証の取得のためには、ユーザ所望のレベルに対応した暗号境界に存在する各デバイスについて、FIPSセルフテストが行われなければならない。
レベルが高くなると、暗号境界が大きくなり得る。例えば、FIPS140認証のレベルがレベル1であれば、暗号境界は、暗号装置の一部分でよいが、FIPS140認証のレベルがレベル2であれば、暗号境界は、暗号装置全体とされる。
暗号装置内の全てのデバイスが、FIPSセルフテストを行う機能を有しているとは限らない。例えば、暗号装置ベンダとは異なるベンダにより提供され所定のソフトウェアを実行するデバイスが既に配置されている回路基板上に別のソフトウェアを実行する暗号モジュールを実現することで、暗号装置を実現する方法が考えられる。このような暗号装置において、回路基板における上述の既存デバイスが、当該既存デバイスが実行するソフトウェアの検証を含んだFIPSセルフテストを行う機能を有しているとは限らない。
特許文献1によれば、半導体装置において、プログラマブルデバイスのテスト及びメモリデバイスのテストをプロセッシングデバイスが行うが、特許文献1に開示の半導体装置は、別々のソフトウェアをそれぞれ実行する複数のデバイス(例えば、ソフトウェアAを実行するデバイスXと、ソフトウェアAとは別のソフトウェアBを実行するデバイスY)が混在する装置ではない。故に、特許文献1には、次の課題、すなわち、別々のソフトウェアをそれぞれ実行する複数のデバイスが装置に存在するがそのうちの一部のデバイスがFIPSセルフテスト機能(ソフトウェアのイメージデータを所定の要件に従って検証することを含んだFIPSセルフテストを行う機能)を有しない場合には当該装置を暗号境界とすることができない、という課題はない。従って、特許文献1を基に、当該課題を解決することはできない。
このような問題は、FIPS140認証以外の認証に関しても存在し得る。
暗号化対象のデータを受信し当該データを暗号化する暗号装置が、第1のソフトウェアのイメージデータが格納された第1の記憶領域と、第1のソフトウェアを実行することでデータを暗号化する暗号モジュールと、第2のソフトウェアのイメージデータが格納された第2の記憶領域と、第2のソフトウェアを実行することで所定の処理を実行するデバイスとを備える。暗号モジュールは、第1のソフトウェアのイメージデータについて、所定の認証要件を満たすための処理である第1の保証チェック処理を実行する。暗号モジュールは、第2のソフトウェアのイメージデータの少なくとも一部でありデバイスにより所定の要件を満たすための検証がされない検証対象について、所定の認証要件を満たすための処理である第2の保証チェック処理を実行する。
暗号モジュールが実行する第1のソフトウェアとは別の第2のソフトウェアを実行するデバイスが第2のソフトウェアのイメージデータの検証を含んだセルフテストを行う機能を有していなくても暗号装置全体を暗号境界とすることができる。
実施形態に係る暗号装置を有するストレージシステムを含んだシステム全体の構成を示す。 暗号装置の構成を示す。 PCIe−SWのブートイメージ及びブートCRCの構成を示す。 Power−upテストの流れを示す。
以下、一実施形態を説明する。なお、以下の説明では、同種の要素を区別しないで説明する場合には、参照符号のうちの共通部分を使用し、同種の要素を区別する場合は、参照符号を使用することがある。例えば、PCIeポートを区別しない場合には、「PCIeポート411」と言い、PCIeポートを区別する場合には、「PCIeポート411A」、「PCIeポート411B」のように言うことがある。
図1は、実施形態に係る暗号装置を有するストレージシステムを含んだシステム全体の構成を示す。
ストレージシステム110が、複数(又は一つ)のSSD111と、ホストシステム101が接続されるFE−IF(フロントエンドのインターフェース装置)121と、複数のSSD111が接続される暗号装置128と、FE−IF121及び暗号装置128に接続されたストレージコントローラ112とを有する。暗号装置128は、複数(又は一つ)のSSD111が接続されるPCIe−SW122と、PCIe−SW122に接続された暗号モジュール150とを有する。ストレージコントローラ112は、主記憶メモリ123と、CPU124とを有する。
SSD111は、永続記憶デバイスの一例である。少なくとも一つのSSD111に代えて、他種の永続記憶デバイス(例えば、HDD(Hard Disk Drive))が採用されてもよい。なお、「永続記憶デバイス」とは、典型的には、不揮発性の記憶デバイス(例えば補助記憶デバイス)でよい。
FE−IF121が、ホストシステム101からI/O要求(Input/Output)(例えば、ライト要求又はリード要求)を受信するいわゆるフロントエンドである。本実施形態では、ホストシステム101は、物理的な計算機システムであるが、ホストシステム101は、ストレージシステム110の中又は外の計算リソース群(複数種類の計算リソース)上で実現されるシステム(例えば、仮想マシン)でもよい。
暗号装置128は、本実施形態では、BE−IF(バックエンドのインターフェース装置)に相当する。暗号装置128は、複数(又は一つ)のSSD111が接続されるPCIe−SW(PCIeスイッチ)122と、PCIe−SW122に接続された暗号モジュール150とを有する。暗号モジュール150は、暗号モジュールメモリ151と、FPGA(Field-Programmable Gate Array)152とを有する。暗号モジュールメモリ151は、メモリの一例である。当該メモリは、揮発性メモリであっても不揮発性メモリであってもよい。FPGA152は、デバイスの一例である。FPGA152に代えて、ASICなどのプログラマブルでないデバイスが採用されてもよい。PCIe−SW122は、SSD111と暗号モジュール150間のデータ転送と、暗号モジュール150とストレージコントローラ112間のデータ転送とを中継する。PCIe−SW122に代えて、他種のインターフェースデバイス、例えば、SAS(Serial Attached SCSI)コントローラが採用されてもよい。
ストレージコントローラ112は、主記憶メモリ123と、CPU124とを有する。主記憶メモリ123は、メモリの一例である。当該メモリは、揮発性メモリであっても不揮発性メモリであってもよい。CPU124は、プロセッサの一例である。CPU124には、FE−IF121、暗号装置128及び主記憶メモリ123が接続される。
CPU124が、I/O要求に応答して、I/O対象のデータを、SSD111に対して読み書きする。その際、CPU124は、I/O対象のデータの暗号化又は復号を、暗号モジュール150に依頼する。暗号モジュール150が、当該依頼に応答して、I/O対象のデータを、暗号化又は復号する。
例えば、CPU124が、暗号鍵を管理している。暗号鍵は、共通でもよいし、所定の単位毎に(例えば、CPU124が提供する論理ボリューム毎に、論理ボリュームの論理アドレス範囲毎に、SSD111毎に、又はSSD111の論理アドレス毎に)異なっていてもよい。暗号鍵は、主記憶メモリ123に格納されていてよい。I/O要求がライト要求の場合、例えば次のライト処理が行われる。すなわち、CPU124が、ライト対象データ(平文)を主記憶メモリ123にキャッシュする。CPU124が、暗号装置128に対し、主記憶メモリ123内のライト対象データ(平文)を暗号化して暗号モジュールメモリ151にライトすることを指定した暗号化指示を送信する。当該暗号化指示には、暗号化に用いられる暗号鍵がCPU124により関連付けられている。当該暗号化指示で指定されたライト対象データは、暗号装置128において、FPGA152が、当該暗号化指示に応答して、主記憶メモリ123から暗号モジュールメモリ151へ転送される過程で当該暗号化指示に関連付けられている暗号鍵を用いて暗号化され、暗号モジュールメモリ151にキャッシュされる。暗号化されたライト対象データ(暗号文)が、CPU124、FPGA152及びライト先のSSD111のうちの少なくとも1つにより、ライト先のSSD111にライト(転送)される(例えば、当該暗号文が、CPU124からのライト指示を受けたSSD111により、ライト先のSSD111にDMA転送される)。なお、ライト処理において、主記憶メモリ123から暗号モジュールメモリ151へのライト対象データ(平文)の転送と、暗号モジュールメモリ151からSSD111へのライト対象データ(暗号文)の転送とのうちの少なくとも一方は、DMA(Direct Memory Access)転送でよい。FPGA152が、DMAコントローラとして機能してよい。例えば、CPU124が、ライト指示において、暗号化の指定と、暗号化対象のデータがキャッシュされている領域のアドレスと、当該データの転送先のアドレス(暗号モジュールメモリ151のアドレス)とを指定してよい。主記憶メモリ123から暗号モジュールメモリ151へのデータ(平文)のDMA転送が、当該ライト指示に応答してFPGA152により行われてよい。また、暗号モジュールメモリ151からSSD111へのデータ(暗号文)の転送が、FPGA152又はSSD111により行われてよい。
I/O要求がリード要求の場合、例えば次のリード処理が行われる。すなわち、CPU124が、暗号装置128に対し、SSD111からリード対象データ(暗号文)をリードすることを指定したリード指示を送信する。当該リード指示に応答して、CPU124、FPGA152及びSSD111のうちのうちの少なくとも1つにより、SSD111からリード対象データ(暗号文)が暗号モジュールメモリ151にリード(転送)される(例えば、当該暗号文が、CPU124からのリード指示を受けたSSD111により、ライト先の暗号モジュールメモリ151にDMA転送される)。その後、CPU124が暗号装置128に対し、暗号モジュールメモリ151に転送された暗号文の復号指示を送信する。当該復号指示には、復号に用いられる暗号鍵(すなわち、リード対象データの暗号化に用いられた暗号鍵)がCPU124により関連付けられている。FPGA152が、当該復号指示に関連付けられている暗号鍵を用いて、暗号モジュールメモリ151にキャッシュされたリード対象データ(暗号文)を復号する。FPGA152が、復号されたリード対象データ(平文)を、復号指示に対する応答として返す。返されたリード対象データ(平文)が、主記憶メモリ123にキャッシュされる。CPU124が、主記憶メモリ123にキャッシュされたリード対象データ(平文)を、リード要求に対する応答として返す。このようなリード処理において、SSD111から暗号モジュールメモリ151へのリード対象データ(暗号文)の転送と、暗号モジュールメモリ151から主記憶メモリ123へのリード対象データ(平文)の転送とのうちの少なくとも一方は、DMA転送でよい。FPGA152が、DMAコントローラとして機能してよい。
このように、本実施形態では、ストレージシステム110は、I/O対象のデータを暗号化及び復号する暗号化機能を有している。
暗号化機能は、BE−IFに相当する暗号装置128に代えて、SSD111又はCPU124が持つことが考えられる。
しかし、SSD111が暗号化機能を持つと、SSD111内でデータの暗号化及び復号を行うため暗号鍵をSSD111が持つことになる。このため、SSD111のみが暗号化機能を持つと、SSD111が盗まれた場合、暗号鍵も一緒に盗まれてしまい、盗まれた暗号鍵を用いてデータの復号が可能となり、結果として、データの漏洩が懸念される。
また、CPU124が暗号化機能を持つと、CPU124の負荷が高くなり、結果として、I/O性能の低下が懸念される。
このような理由から、BE−IFが暗号装置128であり暗号化機能を持つことに利点がある。
図2は、暗号装置128の構成を示す。
暗号装置128は、PCIe−SW122及び暗号モジュール150の他に、複数のPCIeポート401と、第1のフラッシュメモリ40と、第2のフラッシュメモリ30と、デバイスリセット線456とを有する。PCIe−SW122が、デバイスの一例である。PCIeポート401が、装置ポートの一例である。第1のフラッシュメモリ40が、第1の記憶領域の一例である。第2のフラッシュメモリ30が、第2の記憶領域の一例である。第1の記憶領域及び第2の記憶領域は、同一のメモリ上にあってもよいし、別々のメモリ上にあってもよい。第1の記憶領域及び第2の記憶領域のいずれも、典型的には不揮発性の領域でよい。
PCIe−SW122は、複数のPCIeポート411(例えば、四つのPCIeポート411A〜411D)と、I2Cポート412(スレーブ)と、ブート制御部431と、PSWプロセッサ420とを有する。PCIeポート411が、デバイスポートの一例である。ブート制御部431は、例えば、ハードウェア回路であってもよいしマイクロコンピュータであってもよい。PSWプロセッサ420は、PCIe−SW122が有するプロセッサ(例えば、CPU(Central Processing Unit))である。
暗号モジュール150は、暗号モジュールメモリ151と、FPGA152とを有する。FPGA152は、PCIeポート491と、I2Cポート492(マスタ)と、ブート制御部471と、FPGAプロセッサ450と、リンク制御レジスタ455とを有する。PCIeポート491が、モジュールポートの一例である。ブート制御部471は、例えば、ハードウェア回路であってもよいしマイクロコンピュータであってもよい。FPGAプロセッサ450は、FPGA152が有するプロセッサ(例えば、CPU)である。リンク制御レジスタ455は、PCIe−SW122と後述のアップストリームPCIeポート401U間をリンクアップの状態とするかリンクダウン(非リンクアップ)の状態とするかを表す値が設定されるレジスタである。
複数のPCIeポート401は、一つ以上(例えば一つ)のアップストリームPCIeポート401Uと、一つ以上(例えば二つ)のダウンストリームPCIeポート401Dとを含む。アップストリームPCIeポート401Uは、アップストリームの装置(本実施形態では、ストレージコントローラ112)に接続されるPCIeポート401である。ダウンストリームPCIeポート401Dは、ダウンストリームの装置(本実施形態では、SSD111)に接続されるPCIeポート401である。
PCIe−SW122のPCIeポート411A(ダウンストリームデバイスポートの一例)が、ダウンストリームPCIeポート401D1に接続されており、同様に、PCIe−SW122のPCIeポート411B(ダウンストリームデバイスポートの一例)が、ダウンストリームPCIeポート401D2に接続されている。PCIe−SW122のPCIeポート411C(アップストリームデバイスポートの一例)が、アップストリームPCIeポート401Uに接続されている。PCIe−SW122のPCIeポート411D(第1のデバイスポートの一例)が、FPGA152のPCIeポート491(第1のモジュールポートの一例)に接続されている。このような接続構成であるため、I/O対象のデータが、PCIe−SW122を経由して、ストレージコントローラ112の主記憶メモリ123と暗号モジュール150の暗号モジュールメモリ151間で転送されたり、暗号モジュール150の暗号モジュールメモリ151とSSD111間で転送されたりする。I/O対象のデータの暗号化又は復号が不要な場合は、I/O対象のデータが、PCIe−SW122を経由して(但し、暗号モジュール150を非経由で)、ストレージコントローラ112の主記憶メモリ123とSSD111間で転送されてよい。
第1のフラッシュメモリ40は、コンフィグレーションデータ42、ブートイメージ43と、ブートCRC(Cyclic Redundancy Check)44と、メインイメージ45と、メインCRC46とを格納する。コンフィグレーションデータ42を基に、FPGA152が構成される。ブートイメージ43は、FPGA152のブートFW(ファームウェア)451のイメージデータである。ブートCRC44は、ブートイメージ43のCRCコードである。FPGA152のメインイメージ45は、メインFW452のイメージデータである。メインCRC46は、メインイメージ45のCRCコードである。ブートFW451とメインFW452の一方又は両方が、第1のソフトウェア(例えば、第1のFW(ファームウェア))の一例である。CRCコードは、EDC(Error Detection Code)の一例である。
FPGA152において、ブート制御部471が、コンフィグレーションデータ42及びコンフィグレーションCRC(コンフィグレーションデータ42のCRCコード(図示せず))をロードし、コンフィグレーションCRCを用いてコンフィグレーションデータ42を検証する。コンフィグレーションデータ42が正常であれば、コンフィグレーションデータ42を基にFPGA152が構築される。ブート制御部471が、ブートCRC44及びブートイメージ43をロードし、ブートCRC44を用いてブートイメージ43を検証する。ブートイメージ43が正常であれば、FPGAプロセッサ450が、ブートFW451を実行する。ブートFW451が、FWロード部461を有する。FWロード部461が、メインCRC46及びメインイメージ45をロードし、メインCRC46を用いてメインイメージ45を検証する。メインイメージ45が正常であれば、FPGAプロセッサ450が、メインFW452を実行する。メインFW452が、既知解テスト部481、EDCチェック部482及びリンク制御部483を有する。既知解テスト部481、EDCチェック部482及びリンク制御部483の各々については、後述する。
第2のフラッシュメモリ30は、ブートイメージ33と、ブートCRC34と、メインイメージ35と、メインCRC36とを格納する。ブートイメージ33は、PCIe−SW122のブートFW421のイメージデータである。ブートCRC34は、ブートイメージ33のCRCコードである。メインイメージ35は、PCIe−SW122のメインFW422のイメージデータである。メインCRC36は、メインイメージ35のCRCコードである。ブートFW421とメインFW422の一方又は両方が、第2のソフトウェア(例えば、第2のFW(ファームウェア))の一例である。本実施形態では、ブートFW421が、第2のソフトウェアの一例である。
PCIe−SW122において、ブート制御部431が、ブートイメージ33をPSWプロセッサ420にロードする。これにより、PSWプロセッサ420が、ブートFW421を実行する。ブートFW421は、FWロード部441を含む。FWロード部441が、メインCRC36及びメインイメージ35をロードし、メインCRC36を用いてメインイメージ35を検証する。メインイメージ35が正常であれば、PSWプロセッサ420が、メインFW422を実行する。
PCIe−SW122の状態の一つとして、リセット状態がある。PCIe−SW122がリセット状態の場合、PCIeポート411A〜411Cの少なくとも一つ、及び、PCIeポート411Dの状態が、データ入出力が不可の状態である。具体的には、例えば、本実施形態では、PCIe−SW122がリセット状態であるとは、PCIeポート411CとアップストリームPCIeポート401U間がリンクアップしていない状態を意味する。PCIeポート411CとアップストリームPCIeポート401U間がリンクアップしていない状態では、PCIeポート411A、411B及び411Dのいずれについても通信が不可である。PCIeポート411CとアップストリームPCIeポート401U間がリンクアップすると(すなわち、リセット状態が解除されると)、PCIeポート411A、411B及び411Dの各々についてデータ入出力が可能となる。なお、PCIeポート411CとアップストリームPCIeポート401U間がリンクアップしていない状態では、PCIeポート411Dについてデータ入出力は不可であるが、I2Cポート412についてデータ入出力は可である。
図2に例示の暗号装置128によれば、暗号装置128は以下のような構成となっている。
PCIe−SW122が搭載済みの既存の回路基板にFPGA152を追加することで、暗号装置ベンダは、既存の回路基板を利用しないことに比べて、暗号装置128を容易に製造することができる。
また、暗号境界が小さい程(暗号境界に存在するコンポーネントの数が少ない程)、認証要件を満たすことが容易であると考えられる。
しかし、FIPS140認証のレベル2によれば、物理的な装置全体が、暗号境界となる。FIPS140認証のレベル2の要件に従う暗号境界を小さくするために暗号装置128を物理的に分離すること(具体的には、既存の回路基板を物理的に分離すること)は難しい。
そして、既存の回路基板におけるPCIe−SW122は、PCIe−SW122にロードされるブートイメージ33及びメインイメージ35の少なくとも一部について、FIPS140認証のレベル2の要件を満たす検証を含んだFIPSセルフテストを行う機能を有していない。例えば、本実施形態では、PCIe−SW122は、ブートイメージ33全体についてFIPSセルフテストを行う機能を有していない。
また、FIPS140認証のレベル2の要件によれば、ソフトウェアの検証を含んだFIPSセルフテストを行う主体は、当該ソフトウェアを実行するデバイスである必要はない。言い換えれば、当該ソフトウェアを実行するデバイス以外の要素が、当該ソフトウェアの検証を含んだFIPSセルフテストを行っても、FIPS140認証のレベル2の要件を満たすことができる。
そこで、本実施形態では、暗号モジュール150が、ブートイメージ33の検証を実行する。ブートイメージ33は、検証対象の一例、具体的には、例えば、ソフトウェアを実行するデバイスによって検証がされない、当該ソフトウェアのイメージデータ、の一例である。これにより、FIPSセルフテストを行う機能を有していないPCIe−SW122を備えた回路基板を含む暗号装置128全体を、暗号境界とすることができる。
具体的には、本実施形態では、PCIe−SW122が搭載済みの既存の回路基板に、コンフィグレーションデータ42とメインイメージ45とが追加されている。コンフィグレーションデータ42がFPGA152(プログラマブルデバイスの一例)にロードされることでFPGA152が構築される。メインイメージ45がFPGA152に実行されることでメインFW452が実現される。メインFW452は、ブートイメージ33の検証(第2の保証チェック処理の一例)を行う機能を有する。これにより、暗号モジュール150が、ブートイメージ33の検証を実行でき、以って、ブートイメージ33についてFIPSセルフテストを行う機能を有していないPCIe−SW122を、暗号境界に含めることができる。なお、PCIe−SW122は、暗号装置128のベンダとは異なるベンダにより提供された製品の一例でよい。
本実施形態では、ブートイメージ33の検証のために、ブートイメージ33のCRCコードであるブートCRC34が、第2のフラッシュメモリ30に追加される(ブートCRC34は、第2のフラッシュメモリ30以外の記憶領域(例えば、第1のフラッシュメモリ40)に追加されてもよい)。EDCチェック部482が、ブートCRC34及びブートイメージ33を第2のフラッシュメモリ30からリード(ロード)し、ブートCRC34を用いてブートイメージ33を検証する。具体的には、FPGA152において、ブートFW451のFWロード部461が、メインCRC46を用いてメインイメージ45を検証すること(第1の保証チェック処理)を完了した後、メインFW452のEDCチェック部482が、ブートCRC34を用いてブートイメージ33を検証する。つまり、メインFW452がFIPSセルフテストをパスした後、FIPSセルフテストにパスしたメインFW452が、PCIe−SW122のブートイメージ33についてFIPSセルフテストを行う。このようにすることで、FIPS140認証のレベル2の要件を満たすための検証を効率的に行うことができる。なお、ブートCRC34を用いてブートイメージ33を検証すること(及び/又は、CRCを用いたその他の検証)は、暗号モジュール150のハードウェア回路により行われてもよい。
FPGA152について、ブートCRC44は、ブートイメージ43を基に算出されることが期待されるCRCコードであり、メインCRC46は、メインイメージ45を基に算出されることが期待されるCRCコードである。ブートイメージ43の検証は、ブートイメージ43を基に算出されたCRCコードがブートCRC44に適合するか否かのチェックを含む。メインイメージ45の検証は、メインイメージ45を基に算出されたCRCコードがメインCRC46に適合するか否かのチェックを含む。同様に、PCIe−SW122について、ブートCRC34は、ブートイメージ33を基に算出されることが期待されるCRCコードである。ブートイメージ33の検証は、ブートイメージ33を基に算出されたCRCコードがブートCRC34に適合するか否かのチェックを含む。このようなブートCRC34が、第2のフラッシュメモリ30に追加される(第2のフラッシュメモリ30に代えて第1のフラッシュメモリ40に追加されてもよい)。このようにすることで、暗号モジュール150が、PCIe−SW122のブートイメージ33の検証を行うことができる。
本実施形態では、図3に示すように、ブートイメージ33が、複数のブートイメージ断片501で構成されている。そして、ブートCRC34が、複数のブートイメージ断片501にそれぞれ対応した期待される複数のCRCコード502で構成されている。すなわち、ブートイメージ断片501毎に、当該ブートイメージ断片501から算出されることが期待されるCRCコード502が用意されている。CRCコード502は、第2の保証コードの一例である。FPGA152において、EDCチェック部482が、ブートイメージ断片501毎に、当該ブートイメージ断片501を基にCRCコードを算出することと、当該CRCコードが当該ブートイメージ断片501に対応したCRCコード502に適合するか否かをチェックすることとを実行する。このように、本実施形態では、ブートイメージ33の検証において、ブートイメージ断片501毎に、検証が行われる。これにより、ブートイメージ33の一部に異常がある場合、ブートイメージ33全体について検証を行うこと無しに、当該異常を検出することができる。なお、複数のCRCコード502の各々のサイズは、FIPS140認証のレベル2の要件で規定されているサイズ要件(16ビット以上)を満たすサイズである。
また、ブートイメージ断片501毎の検証は、暗号モジュール150のリセットであるモジュールリセットから処理再開を短時間で行うことに貢献する。具体的には、例えば、ブートイメージ33全体について検証が完了した後にモジュールリセットが実行された場合、FIPS140認証の要件によれば、ブートイメージ33に関し再度検証が必要とされる。しかし、ブートイメージ33の全体について検証は必要とされていない。そこで、本実施形態では、上述したように、ブートイメージ33もブートCRC34も断片化されている。モジュールリセットが実行された場合には、EDCチェック部482は、複数のブートイメージ断片501のうちの一部のブートイメージ断片501(例えば、先頭のブートイメージ断片501)について、CRCコードを算出することと、当該CRCコードが当該ブートイメージ断片501に対応したCRCコード502に適合するか否かをチェックすることとを実行する。これにより、モジュールリセットから処理再開を短時間で行うことができる。
また、ブートイメージ断片501毎の検証は、ブートイメージ33の検証の低速化を回避することに貢献する。具体的には、EDCチェック部482は、ブートイメージ33及びブートCRC34をPCIe−SW122経由でリードするが、そのブートイメージ33及びブートCRC34をPCIeポート491経由でリードすることができない。なぜなら、FIPS140認証のレベル2の要件を考慮すると、ブートイメージ33の検証が完了していない間は、ダウンストリームPCIeポート401D1及び401D2の状態をデータ入出力が不可の状態にする必要があり、そのために、本実施形態では、ブートイメージ33の検証を含むPower−upテスト(一連のテストの一例)が完了していない間は、アップストリームPCIeポート401UとPCIeポート411Cとの間がリンクアップしていない状態に維持され、結果として、PCIeポート411Dの状態が、データ入出力が不可の状態となるからである。従って、ブートイメージ33及びブートCRC34のリードのために、PCIeポート491とPCIeポート411D間のバスよりも低速のバス、具体的には、I2Cポート492及び412間のバスを使用しなければならない。そこで、本実施形態では、上述したように、ブートイメージ33もブートCRC34も断片化されている。EDCチェック部482は、ブートイメージ断片501毎に、ブートイメージ断片501及びCRCコード502を、I2Cポート492及び412間のバス経由でリードする。これにより、ブートイメージ33の検証の低速化を回避することができる。なお、「Power−upテスト」とは、FIPS140認証の要件となっているテストのうちの一つである。暗号装置128は、Power−up時に本テストを自動実行しなければならない。
本実施形態では、ブートイメージ33の検証が完了していない間はアップストリームPCIeポート401UとPCIeポート411Cとの間をリンクアップしていない状態に維持することを、暗号モジュール150が制御する。これにより、ブートイメージ33の検証が完了していない間はダウンストリームPCIeポート401D1及び401D2の状態をデータ入出力が不可の状態に維持することができ、以って、FIPS140認証のレベル2の要件を満たすことに貢献できる。
具体的には、本実施形態では、リンク制御レジスタ455とデバイスリセット線456とが設けられる。リンク制御レジスタ455は、FPGA152に設けられる。リンク制御レジスタ455は、上述したように、リンクアップ値(リンクアップを意味する値)とリンクダウン値(リンクダウンを意味する値)のいずれかが設定されるレジスタである。デバイスリセット線456は、リンク制御レジスタ455から延びた信号線であり、アップストリームPCIeポート401Uが接続されるPCIeポート411Cに接続されている。デバイスリセット線456は、リンク制御レジスタ455に設定された値を意味する信号(PCIe−SW122のリセット状態が維持であるか解除であるかを表す信号の一例)が流れる信号線である。PCIe−SW122は、リンクダウン値を意味する信号がPCIeポート411Cに入力されている間、PCIeポート411CとアップストリームPCIeポート401Uと間をリンクアップしないように構成されている。PCIe−SW122は、リンクアップ値を意味する信号がPCIeポート411Cに入力された場合に、PCIeポート411CとアップストリームPCIeポート401Uと間をリンクアップするように構成されている。初期的には(例えば、FPGA152の起動時にFPGA152(例えばブート制御部471)により)、リンク制御レジスタ455に、リンクダウン値が設定される。このため、PCIe−SW122のメインFW422が開始可能な状態になっても、リンクダウン値を意味する信号がPCIeポート411Cに入力されている間、PCIeポート411CとアップストリームPCIeポート401Uと間はリンクアップしない。別の言い方をすれば、暗号モジュール150が、Power−upテストが完了するまで、デバイスリセット線456を介して、PCIeポート411CとアップストリームPCIeポート401U間がリンクアップしない状態を維持する。具体的には、リンク制御部483が、Power−upテストが完了するまで、リンク制御レジスタ455の値をリンクダウン値に維持する。このようにして、Power−upテストが完了するまで、暗号モジュール150がPCIeポート411CとアップストリームPCIeポート401U間がリンクアップしない状態を維持でき、以って、FIPS140認証のレベル2の要件を満たすことに貢献できる。Power−upテストが完了した場合、リンク制御部483が、リンク制御レジスタ455の値をリンクアップ値に変更する。
図4は、Power−upテストの流れを示す。
Power−upテストが開始されると、PCIe−SW122とFPGA152が並行して起動する。
PCIe−SW122の起動については、次の通りである。すなわち、ブート制御部431が、ブートイメージ33をPSWプロセッサ420にロードする(S601)。これにより、PSWプロセッサ420がブートFW421を開始する。ブートFW421のFWロード部441が、メインCRC36及びメインイメージ35を第2のフラッシュメモリ30からロードし、メインCRC36を用いてメインイメージ35を検証する。メインイメージ35が正常であれば、PSWプロセッサ420において、ブートFW421が終了し、メインFW422が開始する。メインFW422が開始の状態となっても、PCIeポート411CとアップストリームPCIeポート401U間はリンクアップしない。PCIe−SW122と並行して起動したFPGA152によりリンク制御レジスタ455にリンクダウン値が設定される(PCIe−SW122のリセット状態が維持される)からである。
FPGA152の起動については、以下の通りである。
すなわち、リンク制御レジスタ455の初期値をリンクダウン値に設定することでPCIe−SW122をリセット状態に維持する。ブート制御部471が、コンフィグレーションデータ42及び上述のコンフィグレーションCRCをロードし、コンフィグレーションCRCを用いてコンフィグレーションデータ42を検証する(S611)。コンフィグレーションデータ42が正常であれば、コンフィグレーションデータ42を基にFPGA152が構築される。ブート制御部471が、ブートCRC44及びブートイメージ43をロードし、ブートCRC44を用いてブートイメージ43を検証する(S612)。ブートイメージ43が正常であれば、FPGAプロセッサ450において、ブートFW451が開始する。ブートFW451のFWロード部461が、メインCRC46及びメインイメージ45をロードし、メインCRC46を用いてメインイメージ45を検証する(S613)。メインイメージ45が正常であれば、FPGAプロセッサ450において、ブートFW451が終了し、メインFW452が開始する。
メインFW452の既知解テスト部481が、既知解テスト(例えば、暗号アルゴリズムに対し或る入力がされると期待通りの出力が得られるか否かのテスト)を行う。なお、上述したモジュールリセットがされ処理が再開される場合、既知解テストから開始されてよい。
既知解テストが完了すると、EDCチェック部482が、ブートイメージ断片501毎に、当該ブートイメージ断片501を基にCRCコードを算出することと、当該CRCコードが当該ブートイメージ断片501に対応したCRCコード502に適合するか否かをチェックすることとを実行する。具体的には、例えば、以下の通りである。
(S621)EDCチェック部482が、未リードのCRCコード502のうちのいずれかのCRCコード502(例えば、先頭のCRCコード502)のリード要求を第2のフラッシュメモリ30に送信する。
(S622)S621で送信されたリード要求に応答して、EDCチェック部482が、当該リード要求に従うCRCコード502を受信する。
(S623)EDCチェック部482が、未リードのブートイメージ断片501のうちのいずれかのブートイメージ断片501(例えば、先頭のブートイメージ断片501)のリード要求を第2のフラッシュメモリ30に送信する。
(S624)S623で送信されたリード要求に応答して、EDCチェック部482が、当該リード要求に従うブートイメージ断片501を受信する。
(S625)EDCチェック部482が、S624で受信したブートイメージ断片501を基にCRCコードを算出し、当該CRCコードがS622で受信したCRCコード502に適合するか否かをチェックする。
S625のチェックの結果が否定の場合、Power−upテストが中止する(異常終了する)。ブートイメージ33の検証に限らず、Power−upテストにおけるいずれの検証(メインイメージ35の検証、ブートイメージ43の検証、又は、メインイメージ45の検証)において否定的な結果が得られても、Power−upテストが中止する。
S625のチェックの結果が肯定であり、且つ、未リードのCRCコード502が有れば、S621に処理が戻る。
S625のチェックの結果が肯定であり、且つ、未リードのCRCコード502が無ければ、Power−upテストが終了する(正常終了する)。
その後、リンク制御部483が、PCIe−SW122のリセット状態を解除する(S626)。具体的には、リンク制御部483が、リンク制御レジスタ455に設定されている値を、リンクアップ値に変更する。
以上、一実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲をこの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実行することが可能である。例えば、本発明は、FIPS140認証以外の認証の取得についても適用できる。
128:暗号装置、122:PCIe−SW、150:暗号モジュール

Claims (10)

  1. 暗号化対象のデータを受信し当該データを暗号化する暗号装置であって、
    第1のソフトウェアのイメージデータが格納された第1の記憶領域と、
    前記第1のソフトウェアを実行することでデータを暗号化する暗号モジュールと、
    第2のソフトウェアのイメージデータが格納された第2の記憶領域と、
    前記第2のソフトウェアを実行することで所定の処理を実行するデバイスと
    を備え、
    前記暗号モジュールは、前記第1のソフトウェアのイメージデータについて、所定の認証要件を満たすための処理である第1の保証チェック処理を実行し、
    前記暗号モジュールは、前記第2のソフトウェアのイメージデータの少なくとも一部であり前記デバイスにより前記所定の認証要件を満たすための検証がされない検証対象について、前記所定の認証要件を満たすための処理である第2の保証チェック処理を実行する、
    暗号装置。
  2. 前記第1の保証チェック処理の実行が完了した後、前記暗号モジュールが、前記第2の保証チェック処理を実行する、
    請求項1に記載の暗号装置。
  3. 前記第1の記憶領域が、前記第1のソフトウェアのイメージデータを基に算出されることが期待される第1の保証データを格納しており、
    前記第1の保証チェック処理は、前記第1のソフトウェアのイメージデータを基に保証データを算出することと、当該保証データが前記第1の保証データに適合するか否かをチェックすることとを含み、
    前記第2の保証チェック処理は、前記検証対象を基に保証データを算出することと、当該保証データが前記検証対象を基に算出されることが期待される第2の保証データに適合するか否かをチェックすることとを含み、
    前記第1の記憶領域又は前記第2の記憶領域に、前記第2の保証データが格納される、
    請求項1に記載の暗号装置。
  4. 前記検証対象が、複数の検証対象断片で構成されており、
    前記第2の保証データが、前記複数の検証対象断片にそれぞれ対応した期待される複数の第2の保証コードで構成されており、
    前記暗号モジュールが、前記第2の保証チェック処理において、検証対象断片毎に、当該検証対象断片を基に保証コードを算出することと、当該保証コードが当該検証対象断片に対応した第2の保証コードに適合するか否かをチェックすることとを実行し、
    前記複数の第2の保証コードの各々のサイズは、前記所定の認証要件で規定されているサイズ要件を満たすサイズである、
    請求項3に記載の暗号装置。
  5. 前記検証対象の全体について前記第2の保証チェック処理の実行が完了した後、前記暗号モジュールのリセットであるモジュールリセットが実行された場合、前記認証要件を満たすための処理として、前記暗号モジュールは、前記複数の検証対象断片のうちの一部の検証対象断片について、保証コードを算出することと、当該保証コードが当該検証対象断片に対応した第2の保証コードに適合するか否かをチェックすることとを実行する、
    請求項4に記載の暗号装置。
  6. 前記デバイスが、第1のバスに接続されたポートである第1のデバイスポートと、前記第1のバスよりも第2のバスに接続されたポートである第2のデバイスポートとを有し、
    前記暗号モジュールが、前記第1のバスに接続されたポートである第1のモジュールポートと、前記第2のバスに接続されたポートである第2のモジュールポートとを有し、
    前記第2の保証チェック処理の実行が完了していない場合、前記第1のデバイスポートの状態は、データ入出力が不可の状態であるが、前記第2のデバイスポートの状態は、データ入出力が可の状態であり、
    前記暗号モジュールは、前記第2の保証チェック処理において、検証対象断片毎に、検証対象断片及び第2の保証コードを前記第2のバス経由でリードする、
    請求項4に記載の暗号装置。
  7. アップストリームのポートであるアップストリーム装置ポートと、
    ダウンストリームのポートであるダウンストリーム装置ポートと
    を有し、
    前記デバイスが、前記アップストリーム装置ポートが接続されているバスに接続されるポートであるアップストリームデバイスポートと、前記ダウンストリーム装置ポートが接続されているバスに接続されるポートであるダウンストリームデバイスポートとを有し、
    前記デバイスがリセット状態の場合、前記アップストリームデバイスポートと前記ダウンストリームデバイスポートとの少なくとも一方の状態が、データ入出力が不可の状態であり、
    前記デバイスのリセット状態が解除されている場合、前記アップストリームデバイスポートと前記ダウンストリームデバイスポートとの両方の状態が、データ入出力が可の状態に遷移可能であり、
    前記暗号モジュールが、前記第2の保証チェック処理を含む一連のテストが完了するまで、前記デバイスのリセット状態を維持する、
    請求項1に記載の暗号装置。
  8. 前記デバイスのリセット状態が維持であるか解除であるかを表す信号が流れる信号線であり前記暗号モジュールと前記デバイス間を結ぶ信号線であるデバイスリセット線を有し、
    前記暗号モジュールが、前記一連のテストが完了するまで、前記デバイスリセット線を介して前記デバイスのリセット状態を維持する、
    請求項7に記載の暗号装置。
  9. 所定の認証要件は、FIPS140認証のレベル2の要件であり、
    前記デバイスが搭載済みの既存の回路基板に、プログラマブルデバイスにロードされるコンフィグレーションデータと、当該コンフィグレーションデータがロードされたプログラマブルデバイスに実行されることで前記第2の保証チェック処理を行う前記第1のソフトウェアのイメージデータとが追加されている、
    請求項1に記載の暗号装置。
  10. 永続記憶デバイスと、
    ストレージコントローラと、
    前記永続記憶デバイスと前記ストレージコントローラとに接続された請求項1に記載の暗号装置と
    を備え、
    前記ストレージコントローラが、前記永続記憶デバイスへのライト対象のデータと、当該データの暗号鍵とを送信し、
    前記暗号装置が、前記データと前記暗号鍵とを受信し、当該暗号鍵を用いて当該データを暗号化し、
    当該暗号化されたデータが、前記永続記憶デバイスに転送される、
    ストレージシステム。
JP2020036110A 2020-03-03 2020-03-03 暗号装置、及び、暗号装置のセルフテスト方法 Active JP7053700B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020036110A JP7053700B2 (ja) 2020-03-03 2020-03-03 暗号装置、及び、暗号装置のセルフテスト方法
US17/019,433 US11263350B2 (en) 2020-03-03 2020-09-14 Cryptographic apparatus and self-test method of cryptographic apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020036110A JP7053700B2 (ja) 2020-03-03 2020-03-03 暗号装置、及び、暗号装置のセルフテスト方法

Publications (2)

Publication Number Publication Date
JP2021140342A true JP2021140342A (ja) 2021-09-16
JP7053700B2 JP7053700B2 (ja) 2022-04-12

Family

ID=77555889

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020036110A Active JP7053700B2 (ja) 2020-03-03 2020-03-03 暗号装置、及び、暗号装置のセルフテスト方法

Country Status (2)

Country Link
US (1) US11263350B2 (ja)
JP (1) JP7053700B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7431791B2 (ja) * 2021-12-01 2024-02-15 株式会社日立製作所 ストレージシステム及びデータ処理方法
US20230185482A1 (en) * 2021-12-14 2023-06-15 Micron Technology, Inc. Burn-In Solid State Drives through Generation of Proof of Space Plots in A Manufacturing Facility
US12015706B2 (en) 2021-12-14 2024-06-18 Micron Technology, Inc. Combined cryptographic key management services for access control and proof of space
US11977742B2 (en) 2022-02-02 2024-05-07 Micron Technology, Inc. Solid state drives configurable to use storage spaces of remote devices in activities involving proof of space

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000232442A (ja) * 1999-02-09 2000-08-22 Ntt Data Corp 情報処理方法及びシステム
JP2006065847A (ja) * 2004-08-25 2006-03-09 Microsoft Corp プログラムコードの安全な実行のためのシステムおよび方法
JP2018007215A (ja) * 2016-07-08 2018-01-11 キヤノン株式会社 情報処理装置とその制御方法、及びプログラム
JP2018156505A (ja) * 2017-03-21 2018-10-04 株式会社リコー 情報処理システム、情報処理方法及び情報処理装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6175934B1 (en) * 1997-12-15 2001-01-16 General Electric Company Method and apparatus for enhanced service quality through remote diagnostics
US7181430B1 (en) * 2000-04-28 2007-02-20 Netdeposit, Inc. Method and system for processing financial instrument deposits physically remote from a financial institution
US7386511B2 (en) * 2000-04-28 2008-06-10 Netdeposit Inc. Methods and systems for processing financial instrument deposits
US7392391B2 (en) * 2001-11-01 2008-06-24 International Business Machines Corporation System and method for secure configuration of sensitive web services
US20070107042A1 (en) * 2005-11-04 2007-05-10 Fatima Corona System and method for limiting access to a shared multi-functional peripheral device
US20120069995A1 (en) * 2010-09-22 2012-03-22 Seagate Technology Llc Controller chip with zeroizable root key
JP2011082566A (ja) 2011-01-07 2011-04-21 Renesas Electronics Corp 半導体装置及び電子機器
US9628516B2 (en) * 2013-12-12 2017-04-18 Hewlett Packard Enterprise Development Lp Policy-based data management
JP2019110424A (ja) 2017-12-18 2019-07-04 キヤノン株式会社 暗号処理実行装置及びその制御方法、並びにプログラム
JP2019125944A (ja) 2018-01-17 2019-07-25 キヤノン株式会社 情報処理装置、その制御方法、及びそのプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000232442A (ja) * 1999-02-09 2000-08-22 Ntt Data Corp 情報処理方法及びシステム
JP2006065847A (ja) * 2004-08-25 2006-03-09 Microsoft Corp プログラムコードの安全な実行のためのシステムおよび方法
JP2018007215A (ja) * 2016-07-08 2018-01-11 キヤノン株式会社 情報処理装置とその制御方法、及びプログラム
JP2018156505A (ja) * 2017-03-21 2018-10-04 株式会社リコー 情報処理システム、情報処理方法及び情報処理装置

Also Published As

Publication number Publication date
US11263350B2 (en) 2022-03-01
US20210279371A1 (en) 2021-09-09
JP7053700B2 (ja) 2022-04-12

Similar Documents

Publication Publication Date Title
JP7053700B2 (ja) 暗号装置、及び、暗号装置のセルフテスト方法
EP1754126B1 (en) Enhancing trusted platform module performance
US7558966B2 (en) Notifying remote administrator of platform integrity determination
CN106462509B (zh) 用于保全存取保护方案的设备及方法
US8276199B2 (en) Method and device for secure test port authentication
US20210167960A1 (en) Certifying Authenticity of Stored Code and Code Updates
US10523444B2 (en) Solid state storage device with command and control access
US10720225B2 (en) Information processing apparatus, control method thereof, and storage mediumMD
US11861012B2 (en) Memory device having safety boot capability
WO2015087426A1 (ja) ストレージ装置及びストレージ装置の制御方法
TW201945975A (zh) 使用標準化資料儲存及擷取協定的用於資料加密之方法及設備
US20240184899A1 (en) Methods and apparatus for offloading encryption
CN112558884B (zh) 数据保护方法以及基于NVMe的存储设备
KR20210154803A (ko) 다중 모드 보호 메모리
CN114008617A (zh) 固件防回滚
CN109583197B (zh) 一种可信叠层文件加解密方法
KR20210134053A (ko) 오버-디-에어 업데이트 유효성 확인 방법
US8429423B1 (en) Trusted platform modules
JP7287115B2 (ja) 集積回路及び集積回路の制御方法
JP7051769B2 (ja) 情報処理装置、制御方法、及びプログラム
JP2020149236A (ja) 電子機器及び電子機器の制御方法
US11914735B2 (en) Server with data security measure
US20230020359A1 (en) System, method and apparatus for reducing latency of receiver operations during a containment mode of operation
CN117632279A (zh) 安全启动过程
CN117632280A (zh) 安全启动过程

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200703

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211029

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220329

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220331

R150 Certificate of patent or registration of utility model

Ref document number: 7053700

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150