(57)【要約】  情報処理装置（１００）は、削除対象の情報を格納している不揮発性記憶装置と、ウェアレベリングを実行するウェアレベリング実行部（１２０）と、削除対象の情報を削除させるための指示である第１の削除指示を取得する取得部（１１０）と、第１の削除指示が取得された場合、情報処理装置（１００）を再起動する再起動部（１８０）と、再起動後、ウェアレベリング実行部（１２０）がウェアレベリングを実行する前に、削除対象の情報を削除する削除部（１９０）と、を有する。
2021024374.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置であって、
削除対象の情報を格納している不揮発性記憶装置と、
ウェアレベリングを実行するウェアレベリング実行部と、
前記削除対象の情報を削除させるための指示である第１の削除指示を取得する取得部と、
前記第１の削除指示が取得された場合、前記情報処理装置を再起動する再起動部と、
前記再起動後、前記ウェアレベリング実行部が前記ウェアレベリングを実行する前に、前記削除対象の情報を削除する削除部と、
を有する情報処理装置。
【請求項２】
前記第１の削除指示が取得された場合、削除の実行を示す削除実行情報を生成する生成部をさらに有し、
前記再起動部は、前記削除実行情報が生成された場合、前記情報処理装置を前記再起動し、
前記削除部は、前記削除実行情報が生成されている場合、前記再起動後、前記ウェアレベリング実行部が前記ウェアレベリングを実行する前に、前記削除対象の情報を削除する、
請求項１に記載の情報処理装置。
【請求項３】
前記不揮発性記憶装置は、前記削除対象の情報が格納されている第１の記憶領域を有し、
前記削除部は、前記第１の記憶領域に格納されている前記削除対象の情報を削除する、
請求項１又は２に記載の情報処理装置。
【請求項４】
プロセッサを有し、
前記ウェアレベリング実行部は、前記プロセッサが実行するオペレーションシステムのモジュールとして実現され、
前記削除部は、前記プロセッサが実行するブートローダのモジュールとして実現される、
請求項１から３のいずれか１項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関する。
【背景技術】
【０００２】
情報処理装置には、重要な情報が格納されている。例えば、重要な情報とは、秘密鍵、デジタル証明書などである。このように、重要な情報が情報処理装置に格納されているため、情報処理装置が廃棄される場合、重要な情報を完全に削除する必要がある。例えば、非特許文献１には、秘密鍵などの重要な情報が残留しないように、重要な情報を完全に削除する機能の実装について記載されている。【０００３】
重要な情報は、不揮発性記憶装置に格納されている。例えば、不揮発性記憶装置は、書込み回数に制限がある記憶装置である。例えば、当該記憶装置は、フラッシュメモリである。当該記憶装置が用いられる場合、当該記憶装置の寿命を延ばすため、ウェアレベリングが用いられる。ウェアレベリングが用いられることで、分散した書込みが、当該記憶装置に対して行われる。【０００４】
ウェアレベリングが用いられている場合、当該記憶装置に格納されている重要な情報が完全に削除されないことがある。そこで、ウェアレベリング機能の解除、及びウェアレベリング機能の再設定を行う情報処理装置が提案されている（特許文献１を参照）。【０００５】
また、サーバなどの情報処理装置では、Ｌｉｎｕｘ（登録商標）などの汎用ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が使用されている。ブートローダが起動された後、汎用ＯＳは、ウェアレベリング機能をサポートしているファイルシステムで記憶装置を初期化する。なお、例えば、当該ファイルシステムは、ＪＦＦＳ（Ｊｏｕｒｎａｌｉｎｇ  Ｆｌａｓｈ  Ｆｉｌｅ  Ｓｙｓｔｅｍ）、ＪＦＦＳ２などである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１５−２０４０７３号公報
【非特許文献】
【０００７】
【非特許文献１】「ＦＩＰＳ  ＰＵＢ  １４０−２  ＳＥＣＵＲＩＴＹ  ＲＥＱＵＩＲＥＭＥＮＴＳ  ＦＯＲ  ＣＲＹＰＴＯＧＲＡＰＨＩＣ  ＭＯＤＵＬＥＳ」、２００２年
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、情報処理装置は、ウェアレベリング機能の解除、及びウェアレベリング機能の再設定ができないプログラムを有している場合がある。例えば、当該プログラムは、ＬｉｎｕｘなどのＯＳである。
情報処理装置がウェアレベリング機能の解除、及びウェアレベリング機能の再設定を行う場合、当該プログラムを改造する必要がある。しかし、当該プログラムを改造することは、困難である。そのため、当該プログラムを改造せずに、フラッシュメモリなどの記憶装置に格納されている重要な情報である削除対象の情報を削除することは、困難である。【０００９】
本発明の目的は、削除対象の情報を容易に削除することである。
【課題を解決するための手段】
【００１０】
本発明の一態様に係る情報処理装置が提供される。情報処理装置は、削除対象の情報を格納している不揮発性記憶装置と、ウェアレベリングを実行するウェアレベリング実行部と、前記削除対象の情報を削除させるための指示である第１の削除指示を取得する取得部と、前記第１の削除指示が取得された場合、前記情報処理装置を再起動する再起動部と、前記再起動後、前記ウェアレベリング実行部が前記ウェアレベリングを実行する前に、前記削除対象の情報を削除する削除部と、を有する。
【発明の効果】
【００１１】
本発明によれば、削除対象の情報を容易に削除することができる。
【図面の簡単な説明】
【００１２】
【図１】情報処理装置が有するハードウェアの構成を示す図である。
【図２】情報処理装置の構成を示す機能ブロック図である。
【図３】情報処理装置が実行する処理のフローチャートを示す図（その１）である。
【図４】情報処理装置が実行する処理のフローチャートを示す図（その２）である。
【図５】削除処理のフローチャートを示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら実施の形態を説明する。以下の実施の形態は、例にすぎず、本発明の範囲内で種々の変更が可能である。
【００１４】
実施の形態．
図１は、情報処理装置が有するハードウェアの構成を示す図である。情報処理装置１００は、削除制御方法を実行する装置である。情報処理装置１００は、情報通信機器と表現してもよい。
情報処理装置１００は、ＳｏＣ（Ｓｙｓｔｅｍ  ｏｎ  Ｃｈｉｐ）１０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０３、フラッシュメモリ１０４、及び通信インタフェース１０５を有する。
【００１５】
ＳｏＣ１０１は、情報処理装置１００全体を制御する。ＳｏＣ１０１は、プロセッサとも言う。ＳｏＣ１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、マイコンなどでもよい。また、ＳｏＣ１０１は、データ転送機能を有する。例えば、Ｅｔｈｅｒｎｅｔ（登録商標）に基づく複数のＩ／Ｆが存在する場合、ＳｏＣ１０１は、複数のＩ／Ｆ間でデータを転送する。また、ＳｏＣ１０１は、有線通信によって取得したデータを無線通信で転送してもよい。
【００１６】
ＲＡＭ１０２は、情報処理装置１００の主記憶装置である。また、ＲＡＭ１０２は、プログラムを実行する際に使用される値を一時的に格納する。ＲＯＭ１０３は、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスなどを記憶する装置である。
【００１７】
フラッシュメモリ１０４は、不揮発性記憶装置である。詳細には、フラッシュメモリ１０４は、書込み回数に制限がある記憶装置である。フラッシュメモリ１０４に格納されているデータは、情報処理装置１００が電源ＯＦＦの状態になっても、消えない。
フラッシュメモリ１０４は、第１の記憶領域１０４ａと第２の記憶領域１０４ｂを有する。第１の記憶領域１０４ａは、削除対象の情報を格納する領域である。例えば、削除対象の情報は、秘密鍵、デジタル証明書などである。第１の記憶領域１０４ａは、予め決められた領域でもよい。また、後述するように、第１の記憶領域１０４ａは、削除対象の情報を格納するタイミングで決められてもよい。
【００１８】
第２の記憶領域１０４ｂは、削除対象以外の情報を格納する領域である。例えば、削除対象以外の情報は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスなどである。なお、第２の記憶領域１０４ｂは、ＲＯＭ１０３に確保された領域でもよいし、フラッシュメモリ１０４以外のフラッシュメモリの領域でもよい。フラッシュメモリ１０４以外のフラッシュメモリの図示は、省略されている。
【００１９】
また、フラッシュメモリ１０４は、ＯＳ１０４ｃとブートローダ１０４ｄとを記憶する。ＯＳ１０４ｃは、ウェアレベリング機能を有する。例えば、ＯＳ１０４ｃは、ＬｉｎｕｘなどのＯＳである。ブートローダ１０４ｄは、ウェアレベリング機能を有さない。ＯＳ１０４ｃとブートローダ１０４ｄとは、ＲＯＭ１０３に格納されていてもよい。
【００２０】
通信インタフェース１０５は、外部装置と通信するためのインタフェースである。通信インタフェース１０５は、Ｅｔｈｅｒｎｅｔ（登録商標）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、シリアルバス、ＲＳ４８５などを用いて、外部装置と通信する。また、通信インタフェース１０５は、ＰＣＩ  Ｅｘｐｒｅｓｓ、ＳＤＩＯなどのバスを経由し、ＷｉＦｉ（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）などに基づいて、外部装置と通信することができる。
【００２１】
図２は、情報処理装置の構成を示す機能ブロック図である。情報処理装置１００は、取得部１１０、ウェアレベリング実行部１２０、領域管理部１３０、情報格納部１４０、情報削除部１５０、削除確認部１６０、生成部１７０、再起動部１８０、及び削除部１９０を有する。
【００２２】
取得部１１０、領域管理部１３０、情報格納部１４０、情報削除部１５０、削除確認部１６０、生成部１７０、及び再起動部１８０の一部又は全部は、情報処理装置１００が有するプロセッサによって実現してもよい。
【００２３】
取得部１１０、領域管理部１３０、情報格納部１４０、情報削除部１５０、削除確認部１６０、生成部１７０、及び再起動部１８０の一部又は全部は、情報処理装置１００が有するプロセッサが実行するプログラムのモジュールとして実現してもよい。例えば、プロセッサ１０１が実行するプログラムは、削除制御プログラムとも言う。例えば、削除制御プログラムは、記録媒体に記録されている。なお、削除制御プログラムには、ブートローダ１０４ｄが含まれる。
【００２４】
ウェアレベリング実行部１２０は、情報処理装置１００が有するプロセッサが実行するＯＳ１０４ｃのモジュールとして実現してもよい。
削除部１９０は、情報処理装置１００が有するプロセッサが実行するブートローダ１０４ｄのモジュールとして実現してもよい。
【００２５】
取得部１１０は、削除対象の情報の登録指示を取得する。また、取得部１１０は、削除指示又は完全削除指示を取得する。ここで、削除指示は、ウェアレベリング実行部１２０が機能している状態で削除処理を情報削除部１５０に実行させるための指示である。なお、当該削除指示は、第２の削除指示とも言う。完全削除指示は、ウェアレベリング実行部１２０が機能していない状態で削除処理を削除部１９０に実行させるための指示である。なお、完全削除指示は、第１の削除指示とも言う。また、第１の削除指示は、削除対象の情報を削除させるための指示である。
取得部１１０は、削除対象の情報をフラッシュメモリ１０４の中から取得してもよいし、削除対象の情報をＲＡＭ１０２又はＲＯＭ１０３の中から取得してもよい。
【００２６】
ウェアレベリング実行部１２０は、ウェアレベリングを実行する。領域管理部１３０は、第１の記憶領域１０４ａと第２の記憶領域１０４ｂを管理する。
情報格納部１４０は、削除対象の情報を第１の記憶領域１０４ａに格納する。情報格納部１４０の詳細な機能については、後で説明する。
【００２７】
情報削除部１５０は、取得部１１０が削除指示を取得した場合、削除処理を実行する。削除確認部１６０は、取得部１１０が完全削除指示を取得した場合、削除の確認を行う。
生成部１７０は、完全削除指示が取得された場合、削除実行情報を生成する。削除実行情報は、削除の実行を示す情報である。削除実行情報を生成することは、完全削除を示すフラグにｔｒｕｅを設定することと同じ意味である。そこで、以下、削除実行情報を生成することは、フラグにｔｒｕｅを設定することと呼ぶ。
【００２８】
再起動部１８０は、完全削除指示が取得された場合、情報処理装置１００を再起動する。詳細には、再起動部１８０は、フラグにｔｒｕｅが設定された場合、情報処理装置１００を再起動する。すなわち、再起動部１８０は、削除実行情報が生成された場合、情報処理装置１００を再起動する。
【００２９】
削除部１９０は、再起動後、ウェアレベリング実行部１２０がウェアレベリングを実行する前に、削除対象の情報を削除する。詳細には、削除部１９０は、フラグにｔｒｕｅが設定されている場合、再起動後、ウェアレベリング実行部１２０がウェアレベリングを実行する前に、削除対象の情報を削除する。すなわち、削除部１９０は、削除実行情報が生成されている場合、再起動後、ウェアレベリング実行部１２０がウェアレベリングを実行する前に、削除対象の情報を削除する。
【００３０】
また、削除部１９０が実行する処理は、次のように表現してもよい。削除部１９０は、ウェアレベリング実行部１２０がウェアレベリングを実行可能な状態になる前に、削除対象の情報を予め決められた情報で上書きして削除する。なお、例えば、予め決められた情報は、０を示す情報又は乱数に基づく数字である。
【００３１】
このように、情報処理装置１００は、フラグにｔｒｕｅが設定されている場合、削除対象の情報を削除する。また、情報処理装置１００は、フラグにｆａｌｓｅが設定されている場合、削除処理を実行しない。情報処理装置１００は、フラグによって、削除処理の制御を実現できる。
【００３２】
次に、情報処理装置１００が実行する処理について、フローチャートを用いて説明する。
図３は、情報処理装置が実行する処理のフローチャートを示す図（その１）である。
（ステップＳ１１）取得部１１０は、削除対象の情報の登録指示を取得したか否かを判定する。ここで、取得部１１０は、情報処理装置１００に接続する外部装置から当該登録指示を取得してもよい。また、取得部１１０は、ユーザの入力操作により、当該登録指示を取得してもよい。すなわち、取得部１１０は、ＷＥＢブラウザ、ｔｅｌｎｅｔなどによって、当該登録指示を取得してもよい。ここで、当該登録指示は、削除対象の情報を第１の記憶領域１０４ａに登録させるための指示である。例えば、当該登録指示は、秘密鍵を第１の記憶領域１０４ａに登録させるための指示である。
当該登録指示を取得した場合、取得部１１０は、処理をステップＳ１２に進める。完全削除指示又は削除指示を取得した場合、取得部１１０は、処理をステップＳ２１に進める。
【００３３】
（ステップＳ１２）取得部１１０は、当該登録指示に基づいて、削除対象の情報を取得する。取得部１１０は、削除対象の情報を情報格納部１４０に送信する。また、取得部１１０は、ＲＡＭ１０２、ＲＯＭ１０３、又はフラッシュメモリ１０４に削除対象の情報を格納してもよい。そして、情報格納部１４０は、ＲＡＭ１０２、ＲＯＭ１０３、又はフラッシュメモリ１０４の中から削除対象の情報を読み出す。
【００３４】
（ステップＳ１３）情報格納部１４０は、削除対象の情報のフォーマットが正常であるか否かを判定する。例えば、秘密鍵及びデジタル証明書のファイル形式が誤っている場合、情報格納部１４０は、フォーマットが正常でないと判定する。また、例えば、デジタル証明書が期限切れの場合、情報格納部１４０は、フォーマットが正常でないと判定する。
【００３５】
削除対象の情報のフォーマットが正常でない場合、情報格納部１４０は、処理をステップＳ１４に進める。削除対象の情報のフォーマットが正常である場合、情報格納部１４０は、処理をステップＳ１５に進める。
【００３６】
（ステップＳ１４）情報格納部１４０は、フォーマットエラーを出力する。そして、情報格納部１４０は、処理を終了する。
（ステップＳ１５）情報格納部１４０は、削除対象の情報を第１の記憶領域１０４ａに格納する。このように、削除対象の情報が、フラッシュメモリ１０４に格納される。
また、情報格納部１４０は、削除対象以外の情報を第２の記憶領域１０４ｂに格納してもよい。
【００３７】
図４は、情報処理装置が実行する処理のフローチャートを示す図（その２）である。
（ステップＳ２１）取得部１１０は、完全削除指示を取得したか否かを判定する。ここで、取得部１１０は、外部装置から完全削除指示を取得してもよい。また、取得部１１０は、ユーザの入力操作により、完全削除指示を取得してもよい。すなわち、取得部１１０は、ＷＥＢブラウザ、ｔｅｌｎｅｔなどによって、完全削除指示を取得してもよい。また、取得部１１０は、シリアル通信によって、完全削除指示を取得してもよい。
完全削除指示が取得された場合、取得部１１０は、処理をステップＳ２２に進める。削除指示が取得された場合、取得部１１０は、処理をステップＳ２３に進める。
【００３８】
（ステップＳ２２）削除確認部１６０は、削除の確認を示す情報を出力する。これにより、情報処理装置１００は、削除の確認を示す情報を表示する。または、外部装置は、削除の確認を示す情報を表示する。例えば、削除の確認を示す情報は、ポップアップで表示されてもよい。
ユーザは、削除を容認する操作を行うものとする。取得部１１０は、削除の容認を示す情報を取得する。
（ステップＳ２３）情報処理装置１００は、削除処理を行う。
【００３９】
図５は、削除処理のフローチャートを示す図である。図５の処理は、ステップＳ２３に対応する。
（ステップＳ３１）領域管理部１３０は、削除対象の情報が第１の記憶領域１０４ａに格納されているかを確認する。領域管理部１３０は、取得部１１０が完全削除指示を取得したか否かを判定する。取得部１１０が完全削除指示を取得した場合、領域管理部１３０は、処理をステップＳ３２に進める。取得部１１０が削除指示を取得した場合、領域管理部１３０は、処理をステップＳ３６に進める。
【００４０】
（ステップＳ３２）生成部１７０は、完全削除を示すフラグにｔｒｕｅを設定する。当該フラグは、第１の記憶領域１０４ａ又は第２の記憶領域１０４ｂに確保された領域で実現される。なお、当該フラグの初期設定は、ｆａｌｓｅである。
（ステップＳ３３）再起動部１８０は、フラグにｔｒｕｅが設定された場合、情報処理装置１００を再起動する。
【００４１】
（ステップＳ３４）削除部１９０は、当該フラグにｔｒｕｅが設定されていることを確認する。削除部１９０は、第１の記憶領域１０４ａに格納されている削除対象の情報を完全削除する。例えば、削除部１９０は、第１の記憶領域１０４ａの全てに０を書込む。当該書込み方法は、ゼロクリアとも言う。また、例えば、削除部１９０は、第１の記憶領域１０４ａに乱数に基づく数字を書込む。削除部１９０は、これら以外の方法で削除対象の情報を削除してもよい。削除部１９０は、削除対象の情報が削除されているかを確認してもよい。なお、削除は、消去と表現してもよい。
【００４２】
このように、情報処理装置１００は、第１の記憶領域１０４ａに格納されている削除対象の情報を削除する。
削除部１９０は、当該フラグにｆａｌｓｅを設定する。
【００４３】
（ステップＳ３５）ウェアレベリング実行部１２０は、ウェアレベリングを実行可能な状態に設定する。例えば、ウェアレベリング実行部１２０は、第１の記憶領域１０４ａを設定する。ウェアレベリング実行部１２０は、ファイルシステムで第１の記憶領域１０４ａを認識できるようにするため、第１の記憶領域１０４ａを初期化する。ウェアレベリング実行部１２０は、ウェアレベリングを実行可能な状態に設定する。これにより、ウェアレベリング実行部１２０は、ウェアレベリングを実行できる。
【００４４】
（ステップＳ３６）情報削除部１５０は、ウェアレベリング実行部１２０が実行可能な状態で、第１の記憶領域１０４ａに格納されている削除対象の情報を削除する。そして、情報削除部１５０は、処理を終了する。
【００４５】
実施の形態によれば、ウェアレベリング機能を有するＯＳ１０４ｃが起動する前に、ブートローダ１０４ｄが起動する。そして、ブートローダ１０４ｄで実現される削除部１９０は、第１の記憶領域１０４ａに格納されている削除対象の情報を削除する。
このように、情報処理装置１００は、ＯＳ１０４ｃを改造せずに、削除対象の情報を削除できる。よって、情報処理装置１００は、削除対象の情報を容易に削除することができる。
【符号の説明】
【００４６】
１００  情報処理装置、  １０１  ＳｏＣ、  １０２  ＲＡＭ、  １０３  ＲＯＭ、  １０４  フラッシュメモリ、  １０４ａ  第１の記憶領域、  １０４ｂ  第２の記憶領域、  １０４ｃ  ＯＳ、  １０４ｄ  ブートローダ、  １０５  通信インタフェース、  １１０  取得部、  １２０  ウェアレベリング実行部、  １３０  領域管理部、  １４０  情報格納部、  １５０  情報削除部、  １６０  削除確認部、  １７０  生成部、  １８０  再起動部、  １９０  削除部。
【図１】
2021024374.tif 000003
【図２】
2021024374.tif 000004
【図３】
2021024374.tif 000005
【図４】
2021024374.tif 000006
【図５】
2021024374.tif 000007
【国際調査報告】
2021024374.tif 000008
2021024374.tif 000009
2021024374.tif 000010