JP6095330B2 - 情報処理装置及びその制御方法、プログラム - Google Patents

情報処理装置及びその制御方法、プログラム Download PDF

Info

Publication number
JP6095330B2
JP6095330B2 JP2012249427A JP2012249427A JP6095330B2 JP 6095330 B2 JP6095330 B2 JP 6095330B2 JP 2012249427 A JP2012249427 A JP 2012249427A JP 2012249427 A JP2012249427 A JP 2012249427A JP 6095330 B2 JP6095330 B2 JP 6095330B2
Authority
JP
Japan
Prior art keywords
hibernation
memory
area
security
processing apparatus
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.)
Active
Application number
JP2012249427A
Other languages
English (en)
Other versions
JP2014098977A (ja
Inventor
横山 英彦
英彦 横山
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2012249427A priority Critical patent/JP6095330B2/ja
Priority to CN201310557477.5A priority patent/CN103810434B/zh
Priority to US14/078,601 priority patent/US9384355B2/en
Publication of JP2014098977A publication Critical patent/JP2014098977A/ja
Application granted granted Critical
Publication of JP6095330B2 publication Critical patent/JP6095330B2/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data

Description

本発明は、情報処理装置及びその制御方法、プログラムに関し、特に、ハイバネーション実行時のセキュリティ管理に関するものである。
パーソナルコンピュータ(PC)等の情報処理装置や当該装置上で動作するプログラムに対して複数の機能が付加されるのに伴い、各機能を有効にするための処理が追加され、電源投入から装置が利用可能になるまでの起動時間が長くなる傾向にある。起動時間を短縮する技術の一つとして、ハイバネーション技術が挙げられる。ハイバネーション技術を用いた場合、例えば、情報処理装置では、電源断の直前に、CPUレジスタやDRAMなどの揮発性メモリに保存されているデータをハードディスク等の不揮発性メモリに保存する。そして、装置の起動時に、不揮発性メモリに保存されたデータを揮発性メモリに書き戻す。これにより、電源断の直前の動作状態が実現されることから、ハードウェアやソフトウェアの初期化処理を行う必要があるコールドブートと比べて、起動時間を短縮することが可能となる。
しかしながら、揮発性メモリ上の全てのデータを不揮発性メモリに保存する場合、当該データに機密情報が含まれていることもあるため、不揮発性メモリからデータを取り出して解析することにより、機密情報が漏洩する可能性がある。このような問題に対処するため、秘密分散法を用いて揮発性メモリ上のデータを分散する技術が提案されている(例えば、特許文献1参照)。
特開2009−139990号公報
しかしながら、揮発性メモリの全てのデータが機密情報である場合は稀であることから、データ配置に手を加えることは一定のオーバヘッドを伴う。
また、情報処理装置では、様々なアプリケーションプログラムが動作するため、暗号化しようとすると、データ全体を対象にせざるを得ず、暗号化や復号化の処理に時間がかかってしまう。
本発明は、上記問題に鑑みて成されたものであり、ハイバネーション状態への移行時であっても、不揮発性メモリに保存されたデータから機密情報が漏洩することを防止する情報処理装置及びその制御方法、プログラムを提供することを目的とする。
上記目的を達成するために、本発明の情報処理装置は、ハイバネーション機能を備え、揮発性メモリと不揮発性メモリとを有する情報処理装置において、前記ハイバネーション機能によりハイバネーション状態に移行する前に、前記揮発性メモリに保存されているデータを前記不揮発性メモリに保存するハイバネーション手段と、前記揮発性メモリに割り当てられたメモリ領域がセキュリティ領域か否かを判定するセキュリティ領域判定手段とを備え、前記ハイバネーション手段は、前記セキュリティ領域判定手段によりセキュリティ領域でないと判定されたメモリ領域に保存されたデータのみを前記不揮発性メモリに保存し、前記ハイバネーション手段は、さらに、前記ハイバネーション機能によるハイバネーション状態からの復帰時に、前記不揮発性メモリに保存されていたデータを前記揮発性メモリに書き戻す際に、前記揮発性メモリに割り当てられたメモリ領域の先頭アドレスと対応付けられた通知関数を呼び出して、前記セキュリティ領域に保存されていたデータを再生成することを特徴とする。
本発明によれば、ハイバネーション状態に移行する前に、揮発性メモリに保存されていたデータのうち機密情報が含まれていないデータのみを不揮発性メモリに保存する。これにより、ハイバネーション状態への移行時であっても、不揮発性メモリに保存されたデータから機密情報が漏洩することを防止することができる。
本発明の第1の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。 アプリケーションによりDRAM103に割り当てられるメモリ領域の一例を示す図である。 メモリマネージャによりDRAM103に割り当てられるメモリ領域の一例を示す図である。 メモリマネージャによるDRAM103のメモリ領域割り当て処理を示すフローチャートである。 情報処理装置100における装置停止処理の一例を示すフローチャートである。 情報処理装置100における装置起動処理の一例を示すフローチャートである。 本発明の第1の実形態におけるハイバネーション移行処理の一例を示すフローチャートである。 本発明の第1の実施形態におけるハイバネーション復帰処理の一例を示すフローチャートである。 本発明の第2の実施形態におけるハイバネーション移行処理の一例を示すフローチャートである。 本発明の第2の実施形態におけるハイバネーション復帰処理の一例を示すフローチャートである。 情報処理装置100における通知関数の処理の一例を示すフローチャートである。
以下、本発明の実施の形態を図面を参照して詳細に説明する。
[第1の実施形態]
図1は、本発明の第1の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。
情報処理装置100は、ブートROM101、CPU102、DRAM103、ビデオコントローラ104、LANコントローラ106、LAN_I/F107、USBコントローラ108、ディスクコントローラ111、SSD112、HDD113を備える。また、情報処理装置100の本体は、表示手段であるディスプレイ装置105、操作手段であるキーボード109やマウス110に接続されている。
電源ONにより情報処理装置100に電力が供給されると、CPU102は、ブートROM101に保存された初期化プログラムを実行する。初期化プログラムによる初期化処理を実行した後、CPU102は、SSD(Solid State Drive)112やHDD113に保存されたプログラムを、揮発性メモリであるDRAM103にコピーして逐次実行する。不揮発性メモリであるSSD112やHDD113には、情報処理装置100を制御するためのオペレーティングシステム(OS)や各種アプリケーションプログラム、プログラムファイルやデータファイルが保存される。
ビデオコントローラ104は、ディスプレイ装置105に出力する画面情報を制御する。LAN(Local Area Network)コントローラ106は、LAN_I/F107を介して接続されたネットワークとの間で情報の授受を行う。
USBコントローラ108は、接続されたキーボード109やマウス110等の操作装置の制御を行う。ディスクコントローラ111は、SSD112やHDD113の制御を行う。
情報処理装置100は、ハイバネーション機能を備える。ハイバネーション機能とは、上述したように、装置がハイバネーション状態移行時に、揮発性メモリであるDRAM103に保存されているデータを不揮発性メモリであるSSD112やHDD113に保存する。そして、ハイバネーション状態からの復帰時に、SSD112やHDD113に保存されていたデータをDRAM103に書き戻して、装置の状態を電源断前の状態に復元する機能である。
本実施形態では、ハイバネーション状態移行時にDRAM103からHDD113等に保存され、ハイバネーション状態からの復帰時にHDD113等からDRAM103に書き戻されるデータをハイバネーションデータとも呼ぶ。このハイバネーションデータは、DRAM103に保存されていたデータからセキュリティデータが除外されたものであり、ハイバネーション状態移行時に生成される。
次に、情報処理装置100上で動作するアプリケーションプログラム(以下、単に「アプリケーション」とも呼ぶ。)によりDRAM103に割り当てられるメモリ領域の一例について説明する。
図2は、アプリケーションによりDRAM103に割り当てられるメモリ領域の一例を示す図である。
アプリケーションからメモリ領域の割り当て要求を受けると、OSは、DRAM103のうち利用可能な未使用のメモリ領域を検出し、そのメモリ領域の先頭アドレスをアプリケーションに返却する。例えば、図示のメモリ領域202,203がアプリケーションのメモリ領域として割り当てられる。一般的に、アプリケーションからのメモリ領域の割り当て要求に対して、DRAM103内のメモリ領域が非連続に分割されて割り当てられてしまう。そのため、ハイバネーション状態移行時に、各メモリ領域に保存されているデータに対してセキュリティデータを含むか否かを判定する必要がある。
図3は、メモリマネージャによりDRAM103に割り当てられるメモリ領域の一例を示す図である。
情報処理装置100では、メモリ領域を管理する不図示のメモリマネージャ(メモリ領域管理手段)がOSに対して要求することで、図示のように、システム設計時に設定されたサイズ分のメモリ領域302が装置起動時に割り当てられる。メモリ領域302は、管理ブロック303とアプリケーションへの割り当て領域304から構成される。
管理ブロック303は、メモリ領域の先頭アドレス305、メモリ領域の領域サイズ306、及び通知関数アドレス307から構成される管理エントリーが複数集まったものである。通知関数は、ハイバネーション状態からの復帰時に呼び出され、データ初期化のきっかけとなる。
1つ目の管理エントリーには、アプリケーションへの割り当て領域304の先頭アドレスと領域サイズが設定される。2つ目以降の管理エントリーには、アプリケーションからのメモリ領域の割り当て要求に対して割り当てられたメモリ領域と対応付けられた先頭アドレス、領域サイズ、及び通知関数のアドレスが設定される。
図4は、メモリマネージャによるDRAM103のメモリ領域割り当て処理を示すフローチャートである。
メモリマネージャは、アプリケーションからメモリ領域の割り当て要求があると、要求に含まれる引数が正常かどうかを判定する(ステップS401)。正常でないと判定した場合は、エラーを返却して(ステップS402)、本処理を終了する。
一方、ステップS401で引数が正常であると判定した場合、メモリマネージャは、予め確保されたメモリ領域302に、要求されたサイズ分のメモリ領域を割り当てることができるかどうかを判定する(ステップS403)。この判定は、図3の管理ブロック303を検索することで、割り当て領域304のうち空き領域サイズと要求サイズとの比較により行われる。
ステップS403で要求サイズ分のメモリ領域を割り当てることができないと判定した場合は、エラーを返却して(ステップS402)、本処理を終了する。一方、ステップS403で要求サイズ分のメモリ領域を割り当てることができると判定した場合(ステップS403でYES)、ステップS404へ進む。
ステップS404では、メモリマネージャは、割り当てるメモリ領域の先頭アドレスと領域サイズ及び要求に含まれる通知関数のアドレスが設定された管理エントリーを管理ブロック303に追加する。
次に、メモリマネージャは、割り当てたメモリ領域の先頭アドレスをアプリケーションに返却して(ステップS405)、本処理を終了する。
図5は、情報処理装置100における装置停止処理の流れを示すフローチャートである。図6は、情報処理装置100における装置起動処理の流れを示すフローチャートである。なお、図示の処理は、CPU102が実行するものとする。
図5において、情報処理装置100の操作者や管理者等から停止指示があると、CPU102は、CPU102内のレジスタ(不図示)やDRAM103にキャッシュされているデータをHDD113等に書き込むことで状態を確定させる(ステップS501)。
次に、ステップS502では、CPU102は、停止モードがハイバネーションモードか通常モードかを判定する。停止モードについては、情報処理装置100の操作者等がディスプレイ装置105等を介して予め設定し、その設定情報がHDD113等に保存されている。CPU102は、保存されている設定情報を参照することで停止モードがハイバネーションモードか通常モードかの判定を行う。なお、停止モードには、ハイバネーションモードと通常モードの2種類があるものとするが、他のモードがあってもよい。
ステップS502で停止モードがハイバネーションモードであると判定した場合、ハイバネーション移行処理が実行され(ステップS503)、ステップS504に進む。ステップS503のハイバネーション移行処理の詳細については後述する。
ステップS502で停止モードが通常モードであると判定した場合、ステップS504に進み、CPU102は、情報処理装置100に搭載された各種ハードウェアの終了処理を行って装置を停止状態にする。
図6において、操作者等から起動要求があると、CPU102は、ブートROM101から読み出したOSにより、情報処理装置100に搭載された各種ハードウェアの初期化処理を行い、ハードウェアを利用可能な状態とする(ステップS601)。
次に、ステップS602では、CPU102は、図5のステップS502と同様に、停止モードがハイバネーションモードか通常モードかを判定する。停止モードがハイバネーションモードであると判定した場合、ハイバネーション復帰処理が実行(ステップS603)された後、本処理を終了する。ステップS603のハイバネーション復帰処理の詳細については後述する。
一方、ステップS602において停止モードが通常モードであると判定した場合、CPU102は、アプリケーションをHDD113等からDRAM103に読み込んで実行(ステップS604)して、本処理を終了する。
次に、図5のステップS503におけるハイバネーション移行処理と図6のステップS603におけるハイバネーション復帰処理について図7及び図8を用いて説明する。
図7は、図5のステップS503におけるハイバネーション移行処理の一例を示すフローチャートである。
ステップS701では、CPU102は、DRAM103に割り当てられたメモリ領域のうち、先頭の揮発領域ブロックから順にセキュリティ領域か否かを判定する。ここで揮発領域ブロックとは、ハイバネーションデータ生成時に、一度にDRAM103に保存されたデータを読み込む単位(サイズ)である。セキュリティ領域か否かの判定は、対象となる揮発領域ブロックが、メモリマネージャにより割り当てられた割り当て領域304に含まれるか否かで行われる。メモリマネージャは、アプリケーションからメモリ領域の割り当て要求があると、割り当て領域304内のメモリ領域が割り当てられることから、このメモリ領域はセキュリティ領域と判定される。そして、このメモリ領域に保存されているデータはハイバネーションデータには書き込まれない。
一方、メモリマネージャによらずメモリ領域の割り当てが行われた場合は、DRAM103内の何れの領域にメモリ領域が割り当てられるかが不定になるので、この領域はセキュリティ領域では無いと判定される。そして、この領域に保存されているデータは、ハイバネーションデータに書き込まれる。ステップS701は、CPU102はセキュリティ領域判定手段として機能する。
ステップS701で揮発領域ブロックがセキュリティ領域であると判定した場合、CPU102は、当該揮発領域ブロックを1ブロック分スキップして(ステップS702)、ステップS704へ進む。なお、DRAM103のうち、割り当て領域304をセキュリティ領域として判断して当該領域をスキップするが、管理ブロック303はスキップされることはない。つまり、管理ブロック303のデータはハイバネーションデータに含まれることになる。
一方、ステップS702で揮発領域ブロックがセキュリティ領域ではないと判定した場合、ステップS703に進む。
ステップS703では、CPU102は、当該揮発領域ブロックに保存されているデータをハイバネーションデータに書き込む。そして、対象となる揮発領域ブロックを1つ進める(ステップS704)。
次に、ステップS705では、CPU102は、揮発領域の終端に達したかどうかを判定する。揮発領域の終端とは、DRAM103の終端を指す。ステップS705で終端に達していないと判定した場合、ステップS701の処理に戻る一方、終端に達している判定した場合、CPU102は、生成したハイバネーションデータをHDD113等に保存して(ステップS706)、リターンする。
このように、DRAM103内の先頭から終端まで、揮発領域ブロック分ずつセキュリティ領域かどうかを判定し、当該領域に保存されているデータをハイバネーションデータに書き込む処理を繰り返し行う。
図8は、図6のステップS603におけるハイバネーション復帰処理の一例を示すフローチャートである。
ステップS801では、CPU102は、HDD113等に保存されているハイバネーションデータを1ブロック分だけDRAM103に書き戻す。ここでいうブロックとは、上述した揮発領域ブロックを意味する。
次に、ステップS802では、CPU102は、ハイバネーションデータにおける対象となるブロックを1ブロック分先に進め、ステップS803でハイバネーションデータの終端に達したかどうかを判定する。ステップS803でハイバネーションデータの終端に達していないと判定した場合、ステップS801の処理に戻る。
一方、ステップS803でハイバネーションデータの終端に達していると判定した場合、ステップS804へ進む。
ステップS804では、メモリマネージャの制御により、管理ブロック303の2つ目以降の管理エントリーを参照して、通知関数アドレス307に基づく通知関数を呼び出してセキュリティデータを再生成して、リターンする。このように、アプリケーションが通知関数を呼び出すことでセキュリティデータが再生成される。
通知関数は、割り当てられたメモリ領域がハイバネーション移行処理によりクリアされることから、ハイバネーション復帰処理が完了した後に呼び出されている。例えば、暗号化を行うプログラムが暗号鍵を保持するためにメモリ領域を利用している場合の通知関数の処理を図11に示す。
通知関数の処理では、まず、鍵情報の構築が行われ(ステップS1101)、鍵情報を当該メモリ領域に書き込む(ステップS1102)といった処理が実行される。
メモリ領域毎に用途は異なるため、その用途により通知関数の処理は異なり、例えば、メモリ領域を一時的な情報の保持に用いている場合は、メモリ領域には利用する毎に値が設定されるため、通知関数の処理として何も行わないこともあり得る。
本実施形態によれば、アプリケーションからのメモリ領域の割り当て要求に対して、メモリマネージャが予め確保されたメモリ領域からメモリ領域を割り当てるようにする。そして、ハイバネーションデータ生成時に、予め確保されたメモリ領域のデータをハイバネーションデータに含ませないようにして、ハイバネーション状態からの復帰時には、ハイバネーションデータを揮発性メモリに書き戻す。その後、メモリ領域の割り当て要求と共に渡された通知関数を呼び出すことで、アプリケーションによりセキュリティデータを再生成する。このように、セキュリティデータがハイバネーションデータに含まれないことから、HDD113等の不揮発性メモリを取り外してハイバネーションデータを抽出することにより機密情報が漏えいすることを抑止することが可能となる。
[第2の実施形態]
本発明の第2の実施の形態では、図1に示す構成が上記第1の実施の形態と同じであり、第1の実施の形態と同様の部分については、同一の符号を用いてその説明を省略する。以下に、上記第1の実施の形態と異なる点のみを説明する。
本発明の第2の実施形態に係る情報処理装置は、データを暗号化及び復号化するセキュリティ装置に接続することができる。ハイバネーション状態移行時に揮発性メモリに保存されているデータをセキリュティ装置により暗号化してハイバネーションデータを生成する。そして、ハイバネーション状態からの復帰時には、不揮発性メモリに保存されている、暗号化されたハイバネーションデータをセキリュティ装置により復号化して揮発性メモリに書き戻す構成を有する。
図9は、本発明の第2の実施形態におけるハイバネーション移行処理の一例を示すフローチャートである。
ステップS901では、CPU102は、装置100本体にセキュリティ装置(不図示)が接続されているか否かを判定する。ステップS901では、CPU102はセキュリティ有無判定手段として機能する。
ステップS901でセキュリティ装置が接続されていないと判定した場合は、図7に示した第1の実施形態におけるハイバネーション移行処理が実行される(ステップS902)。一方、ステップS901でセキュリティ装置が接続されていると判定した場合には、セキュリティ装置によりDRAM103に保存されている全てのデータが暗号化され(ステップS903)、ハイバネーションデータが生成される(ステップS904)。CPU102は、ステップS904で生成されたハイバネーションデータをHDD113等に保存して(ステップS905)、本処理を終了する。
図10は、本発明の第2の実施形態におけるハイバネーション復帰処理の一例を示すフローチャートである。
ステップS1001では、CPU102は、装置100本体にセキュリティ装置が接続されているか否かを判定する。ステップS1001では、CPU102はセキュリティ有無判定手段として機能する。
ステップS1001でセキュリティ装置が接続されていないと判定した場合は、図8に示した第1の実施形態におけるハイバネーション復帰処理が実行される(ステップS1002)。一方、ステップS1001でセキュリティ装置が接続されていると判定した場合には、HDD113等に保存されていたハイバネーションデータが読み出されてセキュリティ装置により復号化される(ステップS1003)。そして、DRAM103に書き戻される(ステップS1004)。その後、装置100が起動状態に復帰する。
なお、本実施形態では、情報処理装置にセキュリティ装置(セキュリティ手段)を接続する形態について説明するが、情報処理装置にデータを暗号化及び復号化するセキュリティ機能を付加する構成であってもよい。この場合、ステップS901,S1001では、セキュリティ機能の有無を判定する構成となる。また、セキュリティ装置による暗号化、復号化の方法はどのような方法であってもよい。
本実施形態によれば、情報処理装置100にセキュリティ装置が接続されている場合には、ハイバネーション状態移行時に、揮発性メモリに保存されているデータを暗号化してハイバネーションデータを生成する。そして、ハイバネーション状態から復帰時に、ハイバネーションデータをセキュリティ装置で復号化して、揮発性メモリに書き戻す。このように、情報処理装置がセキュリティ機能を有する場合には、揮発性メモリに機密情報が保存されていても、暗号化されてハイバネーションデータに書き込まれるため、ハイバネーションデータからの機密情報の漏洩を防止することが可能となる。
[第3の実施形態]
本発明の第3の実施の形態では、図1に示す構成が上記第1の実施の形態と同じであり、第1の実施の形態と同様の部分については、同一の符号を用いてその説明を省略する。以下に、上記第1の実施の形態と異なる点のみを説明する。
上記第1及び第2の実施形態では、一時的に揮発性メモリ或いは不揮発性メモリに保持されたセキュリティ情報が漏洩する場合もある。そこで、セキュリティ領域に保存されているデータを完全消去処理する。完全消去処理とは、使用したデータを削除する時或いはシステム終了時に、完全消去対象となるデータやファイルに対して、オールゼロや乱数等の特定パターンで上書きを行うものである。
本実施形態における情報処理装置100では、完全消去処理が有効になっている場合、アプリケーションへの割り当て領域304を完全消去対象として完全消去処理後に、通常のハイバネーション処理を行う。そして、揮発性メモリに保存されている全データをハイバネーションデータに保存した後に、情報処理装置100をハイバネーション状態とする。そして、ハイバネーション状態から復帰時には、図8に示したハイバネーション復帰処理を行うようにする。
本実施形態によれば、完全消去処理が有効になっている場合に、アプリケーションへの割り当て領域304を完全消去処理対象として完全消去処理を行った後、通常のハイバネーション処理を行う。そして、揮発性メモリに保存されている全データをハイバネーションデータに保存する。さらに、ハイバネーション状態からの復帰時に、第1の実施形態におけるハイバネーションデータの揮発性メモリへの書き戻しと、アプリケーションに対する通知を行う。ハイバネーションデータには完全消去処理により無効化されたデータが含まれるため、機密情報が漏えいすることを抑止することが可能となる。
上記第1から第3の実施形態では、本発明を情報処理装置に適用した形態について説明したが、これ限定されず、画像形成装置や画像処理装置、その他の電子機器等に対しても適用可能であり、上述した本発明の効果が得られることは言うまでもない。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
100 情報処理装置
102 CPU
103 DRAM
113 HDD

Claims (7)

  1. ハイバネーション機能を備え、揮発性メモリと不揮発性メモリとを有する情報処理装置において、
    前記ハイバネーション機能によりハイバネーション状態に移行する前に、前記揮発性メモリに保存されているデータを前記不揮発性メモリに保存するハイバネーション手段と、
    前記揮発性メモリに割り当てられたメモリ領域がセキュリティ領域か否かを判定するセキュリティ領域判定手段とを備え、
    前記ハイバネーション手段は、前記セキュリティ領域判定手段によりセキュリティ領域でないと判定されたメモリ領域に保存されたデータのみを前記不揮発性メモリに保存し、
    前記ハイバネーション手段は、さらに、前記ハイバネーション機能によるハイバネーション状態からの復帰時に、前記不揮発性メモリに保存されていたデータを前記揮発性メモリに書き戻す際に、前記揮発性メモリに割り当てられたメモリ領域の先頭アドレスと対応付けられた通知関数を呼び出して、前記セキュリティ領域に保存されていたデータを再生成することを特徴とする情報処理装置。
  2. 前記通知関数は、前記揮発性メモリに割り当てられたメモリ領域の前記先頭アドレスと対応付けられた通知関数アドレスが設定され、前記ハイバネーション状態からの復帰時に呼び出される、データ初期化のきっかけとなる関数であり、
    前記揮発性メモリに割り当てられたメモリ領域の前記先頭アドレスと対応付けて前記通知関数を管理するメモリ領域管理手段をさらに備えることを特徴とする請求項1に記載の情報処理装置。
  3. 前記セキュリティ領域判定手段は、前記揮発性メモリのメモリ領域のうち前記メモリ領域管理手段により管理された領域をセキュリティ領域と判定することを特徴とする請求項2に記載の情報処理装置。
  4. データを暗号化及び復号化するセキュリティ手段の有無を判定するセキュリティ有無判定手段をさらに備え、
    前記セキュリティ有無判定手段によりセキュリティ手段がないと判定された場合、前記ハイバネーション手段は、前記セキュリティ領域判定手段によりセキュリティ領域でないと判定されたメモリ領域に保存されたデータのみを前記不揮発性メモリに保存するデータとすることを特徴とする請求項1乃至のいずれか1項に記載の情報処理装置。
  5. 前記ハイバネーション手段は、前記セキュリティ領域判定手段によりセキュリティ領域でないと判定されたメモリ領域に保存されたデータを消去することを特徴とする請求項1乃至のいずれか1項に記載の情報処理装置。
  6. ハイバネーション機能を備え、揮発性メモリと不揮発性メモリとを有する情報処理装置の制御方法において、
    前記ハイバネーション機能によりハイバネーション状態に移行する前に、前記揮発性メモリに保存されているデータを前記不揮発性メモリに保存するハイバネーション工程と、
    前記揮発性メモリに割り当てられたメモリ領域がセキュリティ領域か否かを判定するセキュリティ領域判定工程と、
    前記セキュリティ領域判定工程にてセキュリティ領域でないと判定されたメモリ領域に保存されたデータのみを前記不揮発性メモリに保存する保存工程と
    前記ハイバネーション機能によるハイバネーション状態からの復帰時に、前記不揮発性メモリに保存されていたデータを前記揮発性メモリに書き戻す際に、前記揮発性メモリに割り当てられたメモリ領域の先頭アドレスと対応付けられた通知関数を呼び出して、前記セキュリティ領域に保存されていたデータを再生成する再生成工程と
    を備えることを特徴とする制御方法。
  7. 請求項に記載の制御方法を情報処理装置に実行させるためのコンピュータに読み取り可能なプログラム。
JP2012249427A 2012-11-13 2012-11-13 情報処理装置及びその制御方法、プログラム Active JP6095330B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012249427A JP6095330B2 (ja) 2012-11-13 2012-11-13 情報処理装置及びその制御方法、プログラム
CN201310557477.5A CN103810434B (zh) 2012-11-13 2013-11-11 具有休眠功能的信息处理装置及其控制方法
US14/078,601 US9384355B2 (en) 2012-11-13 2013-11-13 Information processing apparatus with hibernation function, control method therefor, and storage medium storing control program therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012249427A JP6095330B2 (ja) 2012-11-13 2012-11-13 情報処理装置及びその制御方法、プログラム

Publications (2)

Publication Number Publication Date
JP2014098977A JP2014098977A (ja) 2014-05-29
JP6095330B2 true JP6095330B2 (ja) 2017-03-15

Family

ID=50683107

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012249427A Active JP6095330B2 (ja) 2012-11-13 2012-11-13 情報処理装置及びその制御方法、プログラム

Country Status (3)

Country Link
US (1) US9384355B2 (ja)
JP (1) JP6095330B2 (ja)
CN (1) CN103810434B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6391439B2 (ja) * 2014-11-21 2018-09-19 キヤノン株式会社 情報処理装置、サーバ装置、情報処理システム、制御方法及びコンピュータプログラム
CN105847221B (zh) * 2015-01-14 2019-10-11 宇龙计算机通信科技(深圳)有限公司 一种安全信息的管理方法、装置及终端
US10108820B2 (en) * 2015-01-20 2018-10-23 Mediatek Inc. Snapshot data and hibernation data processing methods and devices
CN106933751B (zh) * 2015-12-29 2019-12-24 澜起科技股份有限公司 用于保护动态随机访问存储器的方法和设备
JP6720776B2 (ja) * 2016-08-26 2020-07-08 コニカミノルタ株式会社 画像処理装置、起動制御方法および起動制御プログラム
JP6949338B2 (ja) 2019-01-09 2021-10-13 サイエンスパーク株式会社 電子データ管理装置、電子データ管理システム、そのためのプログラム及び記録媒体
US11681797B2 (en) * 2019-08-28 2023-06-20 Micron Technology, Inc. Row activation prevention using fuses

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7313825B2 (en) * 2000-11-13 2007-12-25 Digital Doors, Inc. Data security system and method for portable device
US7392415B2 (en) * 2002-06-26 2008-06-24 Intel Corporation Sleep protection
US7478248B2 (en) * 2002-11-27 2009-01-13 M-Systems Flash Disk Pioneers, Ltd. Apparatus and method for securing data on a portable storage device
JP4375980B2 (ja) * 2003-03-11 2009-12-02 株式会社エヌ・ティ・ティ・ドコモ マルチタスク実行システム及びマルチタスク実行方法
US7650515B2 (en) * 2006-02-06 2010-01-19 Panasonic Corporation Secure processing device, method and program
GB2446658B (en) * 2007-02-19 2011-06-08 Advanced Risc Mach Ltd Hibernating a processing apparatus for processing secure data
US8898412B2 (en) * 2007-03-21 2014-11-25 Hewlett-Packard Development Company, L.P. Methods and systems to selectively scrub a system memory
JP2008269024A (ja) * 2007-04-16 2008-11-06 Toshiba Corp メモリ消去プログラム、装置及び方法
JP2009139990A (ja) 2007-12-03 2009-06-25 Internatl Business Mach Corp <Ibm> 情報の不正取得を防止する技術
JP2009146067A (ja) * 2007-12-12 2009-07-02 Fujitsu Ltd ファイルアクセス認証システム、ファイルアクセス認証方法およびファイルアクセス認証プログラム
JP5446439B2 (ja) * 2008-07-24 2014-03-19 富士通株式会社 通信制御装置、データ保全システム、通信制御方法、およびプログラム
US8892860B2 (en) * 2008-10-03 2014-11-18 Hewlett-Packard Development Company, L.P. Clearing secure system resources in a computing device
JP5304345B2 (ja) * 2009-03-11 2013-10-02 富士通株式会社 コンテンツ処理装置、コンテンツ処理システム、およびコンテンツ処理プログラム
US8250379B2 (en) * 2009-10-13 2012-08-21 Microsoft Corporation Secure storage of temporary secrets
US10360143B2 (en) * 2010-07-01 2019-07-23 Qualcomm Incorporated Parallel use of integrated non-volatile memory and main volatile memory within a mobile device
GB201105222D0 (en) * 2011-03-29 2011-05-11 Becrypt Ltd Dual environment computing system and method and system for providing a dual environment computing system
KR101155451B1 (ko) * 2011-08-31 2012-06-15 테세라, 인코포레이티드 Dram 보안 소거
US8984316B2 (en) * 2011-12-29 2015-03-17 Intel Corporation Fast platform hibernation and resumption of computing systems providing secure storage of context data

Also Published As

Publication number Publication date
JP2014098977A (ja) 2014-05-29
US20140137263A1 (en) 2014-05-15
CN103810434A (zh) 2014-05-21
CN103810434B (zh) 2017-04-12
US9384355B2 (en) 2016-07-05

Similar Documents

Publication Publication Date Title
JP6095330B2 (ja) 情報処理装置及びその制御方法、プログラム
US8924739B2 (en) System and method for in-place encryption
US7895394B2 (en) Storage system
JP2012150803A (ja) 効率的なボリューム暗号化
AU2012204448A1 (en) System and method for in-place encryption
EP2161673A1 (en) Method and system for protecting data
US20110213954A1 (en) Method and apparatus for generating minimum boot image
EP2065805A1 (en) Secured live software migration
US8886963B2 (en) Secure relocation of encrypted files
EP2477132A2 (en) Apparatus and method for managing digital rights using virtualization technique
US8364985B1 (en) Buffer-caches for caching encrypted data via copy-on-encrypt
JP5184041B2 (ja) ファイルシステム管理装置およびファイルシステム管理プログラム
Chang et al. Mobipluto: File system friendly deniable storage for mobile devices
JP2012018501A (ja) 情報処理装置、情報処理装置の制御方法、プログラム
KR20230062556A (ko) 플래시 메모리 로컬 퍼지
JP2015141603A (ja) 画像処理装置およびその制御方法、並びにプログラム
JP2009223787A (ja) 情報処理装置及び方法、並びにプログラム
JP2009020871A (ja) 外部記憶装置
TWI775284B (zh) 記憶系統、其控制方法及資訊處理系統
JP2010009553A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
CN115079960B (zh) 数据的处理方法、加速卡及数据处理系统
CN113343265B (zh) 一种密钥配置方法、装置和相关设备
JP6399821B2 (ja) 情報処理装置、情報処理方法、およびコンピュータプログラム
JP6351397B2 (ja) 情報処理装置および情報処理方法、およびコンピュータプログラム
JP6212891B2 (ja) 仮想化システム、仮想サーバ、仮想ディスク配置方法、及び仮想ディスク配置プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151109

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161011

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161212

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: 20170117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170214

R151 Written notification of patent or utility model registration

Ref document number: 6095330

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151