記憶装置
【構成】RAM18に設けられたメモリブロックBLK(K)(K:0〜2)には、2つの期限が設定される。ブロック番号“K”が記述された書き込み要求を受信すると、メモリブロックBLK(K)にデータが書き込まれる。また、ブロック番号“K”が記述された読み出し要求が受信されると、メモリブロックBLK(K)からデータが読み出される。CPU161は、メモリブロックBLK(K)へのデータ書き込みが完了する毎に、メモリブロックBLK(K)に設定された2つの期限を延長する。CPU161はまた、早い方の期限の到来が検知されたときデータ読み出しを制限し、遅い方の期限の到来が検知されたときメモリブロックBLK(K)を初期化する。
【効果】データ管理性能が向上する。
【効果】データ管理性能が向上する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、記憶装置に関し、特にメモリへのデータ書き込みおよびメモリからのデータ読み出しを制御する機能を有する、記憶装置に関する。
【背景技術】
【0002】
この種の記憶装置の一例が、特許文献1に開示されている。この背景技術によれば、パーソナルコンピュータからUSB端子を介して取り込んだデータは、揮発性メモリとしてのRAMに格納される。タイマ部は、ユーザの選択した時間が経過すると、リフレッシュ回路に対するRAMのリフレッシュを停止させる。これにより、データおよび暗号化に用いるユーザの暗証番号もすべて完全に消去される。記憶装置の分解等の異常自体が発生したときも、RAMへの電源の供給が絶たれ、データの消去が行われる。これによって、所定の情報処理装置から取り外して一時的に保存するようなデータを、特定の事象が発生したとき確実に消去することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−59228号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、背景技術では、RAMに格納されたデータがリフレッシュの停止によって完全に消去される。このため、データの管理性能に限界がある。
【0005】
それゆえに、この発明の主たる目的は、データの管理性能を高めることができる、記憶装置を提供することである。
【課題を解決するための手段】
【0006】
この発明に従う記憶装置(10:実施例で相当する参照符号。以下同じ)は、第1期限と第1期限に遅れる第2期限とが設定されたメモリ(18)、書き込み要求に応答してメモリにデータを書き込む書き込み手段(S9)、読み出し要求に応答してメモリからデータを読み出す読み出し手段(S19)、書き込み手段によるデータ書き込みが実行される毎に第1期限および第2期限を延長する延長手段(S1, S13)、第1期限の到来が検知されたとき読み出し手段によるデータ読み出しを制限する第1制限手段(S41, S71)、および第2期限の到来が検知されたときメモリに格納されたデータを消去する消去手段(S43, S73)を備える。
【0007】
好ましくは、第1期限の非到来に対応して読み出し手段によるデータ読み出しを許可する許可手段(S39, S69)がさらに備えられる。
【0008】
好ましくは、メモリは第1期限および第2期限が各々に設定された複数の格納領域を有し、書き込み手段,読み出し手段,延長手段,制限手段および消去手段は格納領域毎に処理を実行する。
【0009】
さらに好ましくは、第1期限および/または第2期限の到来を複数の格納領域について検出する処理を周期的に実行する第1検出手段(S35~S37)、および第1期限および/または第2期限の到来を書き込み手段の書き込み先について検出する処理を書き込み要求に応答して実行する第2検出手段(S65~S67)がさらに備えられる。
【0010】
より好ましくは、複数の格納領域のうち空き状態の格納領域に対応して第1検出手段および第2検出手段を停止する停止手段(S29, S59)がさらに備えられる。
【0011】
好ましくは、第1精度で時刻を測定する第1測定手段(14)、第1精度よりも低い第2精度で時刻を測定する第2測定手段(162)、第1測定手段によって測定された時刻と第2測定手段によって測定された時刻との差分を周期的に検出する検出手段(S81~S85)、および検出手段によって検出された差分の変動量が基準を上回るとき読み出し手段によるデータ読み出しを制限する第2制限手段(S91~S93)がさらに備えられる。
【0012】
好ましくは、メモリは揮発性であり、メモリをバックアップするバッテリ(20)がさらに備えられる。
【0013】
この発明に従うメモリアクセス制御プログラムは、第1期限と第1期限に遅れる第2期限とが設定されたメモリ(18)を備える記憶装置(10)のプロセッサ(161)に、書き込み要求に応答してメモリにデータを書き込む書き込みステップ(S9)、読み出し要求に応答してメモリからデータを読み出す読み出しステップ(S19)、書き込みステップによるデータ書き込みが実行される毎に第1期限および第2期限を延長する延長ステップ(S1, S13)、第1期限の到来が検知されたとき読み出しステップによるデータ読み出しを制限する制限ステップ(S41, S71)、および第2期限の到来が検知されたときメモリに格納されたデータを消去する消去ステップ(S43, S73)を実行させるための、メモリアクセス制御プログラムである。
【0014】
この発明に従うメモリアクセス制御方法は、第1期限と第1期限に遅れる第2期限とが設定されたメモリ(18)を備える記憶装置(10)によって実行されるメモリアクセス制御方法であって、書き込み要求に応答してメモリにデータを書き込む書き込みステップ(S9)、読み出し要求に応答してメモリからデータを読み出す読み出しステップ(S19)、書き込みステップによるデータ書き込みが実行される毎に第1期限および第2期限を延長する延長ステップ(S1, S13)、第1期限の到来が検知されたとき読み出しステップによるデータ読み出しを制限する制限ステップ(S41, S71)、および第2期限の到来が検知されたときメモリに格納されたデータを消去する消去ステップ(S43, S73)を備える。
【発明の効果】
【0015】
この発明によれば、メモリに設定された第1期限および第2期限は、データ書き込みが実行される毎に延長される。したがって、データ書き込みが頻繁に実行される限り、第1期限および第2期限が到来することはなく、データ読み出しが許可される。ただし、データ書き込みの中断によって第1期限が到来するとデータ読み出しが制限され、さらに第2期限が到来するとメモリに格納されたデータが消去される。これによって、有意なデータの消去をできるだけ防止しつつ、データの機密性を高めることができる。こうしてデータ管理性能が向上する。
【0016】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0017】
【図1】この発明の一実施例の基本的構成を示すブロック図である。
【図2】この発明の一実施例の構成を示すブロック図である。
【図3】図2実施例によって参照されるテーブルの構成の一例を示す図解図である。
【図4】図2実施例の動作の一部を示す図解図である。
【図5】(A)は正規時刻の変化を示すタイミング図であり、(B)は簡易時刻の変化を示すタイミング図であり、(C)は時間差の変化を示すタイミング図である。
【図6】図2実施例の動作の他の一部を示す図解図である。
【図7】図2実施例に適用されるCPUの動作の一部を示すフロー図である。
【図8】図2実施例に適用されるCPUの動作の他の一部を示すフロー図である。
【図9】図2実施例に適用されるCPUの動作のその他の一部を示すフロー図である。
【図10】図2実施例に適用されるCPUの動作のさらにその他の一部を示すフロー図である。
【図11】図2実施例に適用されるCPUの動作の他の一部を示すフロー図である。
【発明を実施するための形態】
【0018】
以下、この発明の実施の形態を図面を参照しながら説明する。
[基本的構成]
【0019】
図1を参照して、この実施例の記憶装置は、基本的に次のように構成される。メモリ1には、第1期限と第1期限に遅れる第2期限とが設定される。書き込み手段2は、書き込み要求に応答してメモリにデータを書き込む。読み出し手段3は、読み出し要求に応答してメモリからデータを読み出す。延長手段4は、書き込み手段によるデータ書き込みが実行される毎に第1期限および第2期限を延長する。第1制限手段5は、第1期限の到来が検知されたとき読み出し手段3によるデータ読み出しを制限する。消去手段6は、第2期限の到来が検知されたときメモリ1に格納されたデータを消去する。
【0020】
メモリ1に設定された第1期限および第2期限は、データ書き込みが実行される毎に延長される。したがって、データ書き込みが頻繁に実行される限り、第1期限および第2期限が到来することはなく、データ読み出しが許可される。ただし、データ書き込みの中断によって第1期限が到来するとデータ読み出しが制限され、さらに第2期限が到来するとメモリ1に格納されたデータが消去される。これによって、有意なデータの消去をできるだけ防止しつつ、データの機密性を高めることができる。こうしてデータ管理性能が向上する。
[実施例]
【0021】
図2を参照して、この実施例の記憶装置10は、バッテリ20を含む。I/F12,正規時計14,アクセス制御回路16およびRAM18は、バッテリ20によって常時バックアップされる。なお、正規時計14の精度は、アクセス制御回路16に設けられた簡易時計162の精度よりも高い。
【0022】
アクセス制御回路16に設けられたCPU161は、バッテリ20からの給電によって起動したとき、設定を初期化する。これによって、フラグFLGおよび変数Nが“0”に設定され、アクセス制御回路16に設けられたテーブルTBL(図3参照)が以下の要領で設定される。
【0023】
閾値TM_ED1(0)〜TM_ED1(2)はメモリブロックBLK(0)〜BLK(2)からのデータ読み出しを制限する時期を定義するパラメータに相当し、閾値TM_ED2(0)〜TM_ED2(2)はメモリブロックBLK(0)〜BLK(2)を初期化する時期を定義するパラメータに相当する。なお、閾値TM_ED1(0)〜TM_ED1(2)はそれぞれ閾値TM_ED2(0)〜TM_ED2(2)よりも小さく、読み出し制限時期は初期化時期よりも早く到来する。
【0024】
閾値TM_ED1(0)〜TM_ED1(2)はそれぞれ既定値TE10〜TE12(TE10〜TE12:たとえば168時間)に設定され、閾値TM_ED2(0)〜TM_ED2(2)はそれぞれTE20〜TE22(TE20〜TE22:たとえば336時間)に設定される。さらに、変数CONFIG(0)〜CONFIG(2)は“0”に設定され、スイッチSW(0)〜SW(2)はオン状態に設定される。
【0025】
閾値TM_ED1(0),RM_ED2(0),変数CONFIG(0)およびスイッチSW(0)はRAM18のメモリブロックBLK(0)に割り当てられ、閾値TM_ED1(1),RM_ED2(1),変数CONFIG(1)およびスイッチSW(1)はRAM18のメモリブロックBLK(1)に割り当てられ、そして閾値TM_ED1(2),RM_ED2(2),変数CONFIG(2)およびスイッチSW(2)はRAM18のメモリブロックBLK(2)に割り当てられる。
【0026】
変数CONFIG(0)〜CONFIG(2)は、メモリブロックBLK(0)〜BLK(2)に有意なデータが存在するか否かを識別するためのパラメータに相当し、“0”が有意なデータの不存在を示す一方、“1”が有意なデータの存在を示す。スイッチSW(0)〜SW(2)は、メモリブロックBLK(0)〜BLK(2)からのデータ読み出しの許可/制限を識別するためのパラメータに相当し、オン状態が許可を示す一方、オフ状態が制限を示す。フラグFLGおよび変数Nについては後述する。
【0027】
外部PCから発行されたアクセス要求は、I/F12によって受信され、アクセス制御回路16に与えられる。CPU161は、アクセス要求に記述されたブロック番号を変数Kに設定し、アクセス要求に記述されたアクセス態様に従ってメモリブロックBLK(K)にアクセスする。なお、後述する変数LおよびMは、変数Kと同様、メモリブロックBLK(0)〜BLK(2)のいずれか1つを指定するための変数に相当する。
【0028】
アクセス要求に記述されたアクセス態様が“ライト”であれば、アクセス要求に付随するデータがRAM18に設けられたメモリブロックBLK(K)に書き込まれる。データ書き込みが完了すると、メモリブロックBLK(K)に有意なデータが存在することを表明するべく、変数CONFIG(K)が“1”に設定される。さらに、正規時計14が示す時刻つまり正規時刻が検出され、検出された正規時刻が基準時刻TM_REF(K)として設定される。
【0029】
一方、アクセス要求に記述されたアクセス態様が“リード”であれば、スイッチSW(K)がオン状態であることを条件として、メモリブロックBLK(K)に格納されたデータが読み出される。読み出されたデータは、I/F12によって外部PCに送出される。
【0030】
CPU161はまた、指定周期(=たとえば15分)の到来に応答して、或いは外部PCによって発行されたアクセス要求の受信に応答して、モード制御処理を起動する。
【0031】
モード制御処理の起動原因が指定周期の到来であれば、変数Lが“0”〜“2”の各々に設定され、変数CONFIG(L)が“1”を示す場合に以下の処理が実行される。
【0032】
まず、正規時計14が示す時刻が現在時刻TM_1として検出され、現在時刻TM_1から基準時刻TM_REF(L)を減算して得られる値が時間差T_DIFFとして算出される。算出された時間差T_DIFFは、閾値TM_ED1(L)およびTM_ED2(L)の各々と比較される。
【0033】
時間差T_DIFFが閾値TM_ED1(L)を下回れば、閾値TM_ED1(L)によって定義された期限は到来していないとみなされ、スイッチSW(L)がオン状態に設定される。時間差T_DIFFが閾値TM_ED1(L)に達すると、閾値TM_ED1(L)によって定義された期限が到来したとみなされ、スイッチSW(L)がオフ状態に変更される。
【0034】
時間差T_DIFFが閾値TM_ED2(L)に達すると、閾値TM_ED2(L)によって定義された期限が到来したとみなされ、メモリブロックBLK(L)が初期化される。さらに、有意なデータがメモリブロックBLK(L)に存在しないことを表明するべく、変数CONFIG(L)が“0”に設定される。
【0035】
モード制御処理の起動原因がアクセス要求の受信であれば、アクセス要求に記述されたブロック番号が変数Mに設定され、特定条件が満足されることを条件として以下の処理が実行される。なお、特定条件とは、受信したアクセス要求に記述されたアクセス態様が“リード”でかつ変数CONFIG(M)が“1”を示すという条件に相当する。
【0036】
上述と同様、まず、正規時計14が示す時刻が現在時刻TM_1として検出され、現在時刻TM_1から基準時刻TM_REF(M)を減算して得られる値が時間差T_DIFFとして算出される。
【0037】
算出された時間差T_DIFFが閾値TM_ED1(M)を下回れば、閾値TM_ED1(M)によって定義された期限は到来していないとみなされ、スイッチSW(M)がオン状態に設定される。時間差T_DIFFが閾値TM_ED1(M)に達すると、閾値TM_ED1(M)によって定義された期限が到来したとみなされ、スイッチSW(M)がオフ状態に変更される。
【0038】
算出された時間差T_DIFFが閾値TM_ED2(M)に達すると、閾値TM_ED2(M)によって定義された期限が到来したとみなされ、メモリブロックBLK(M)が初期化される。さらに、有意なデータがメモリブロックBLK(M)に存在しないことを表明するべく、変数CONFIG(M)が“0”に更新される。
【0039】
したがって、メモリブロックBLK(2)に対するデータ書き込みが閾値TM_ED1(2)を下回る期間を隔てて2回行われたとき、基準値TM_REF(2),時間差T_DIFF(2),スイッチSW(2)は図4に示す要領で更新される。
【0040】
図4によれば、2回目のデータ書き込みに応答して基準値TM_REF(2)が更新されることで、閾値TM_ED1(2)によって定義される期限が延長される。この期限延長の結果、スイッチSW(2)はオン状態を維持する。ただし、3回目のデータ書き込みは実行されないため、その後に算出される時間差T_DIFF(2)はいずれ、閾値TM_ED1(2)を上回り、さらに閾値TM_ED2(2)を上回る。
【0041】
この結果、スイッチSW(2)は、閾値TM_ED1(2)に対応するタイミングでオン状態からオフ状態に変更される。また、メモリブロックBLK(2)は、閾値TM_ED1(2)に対応するタイミングで初期化される。スイッチSW(2)をオフ状態に変更することで、メモリブロックBLK(2)からのデータ読み出しが制限される。また、メモリブロックBLK(2)の初期化によって、メモリブロックBLK(2)に格納されたデータが消去される。
【0042】
CPU161はさらに、別の指定周期(=たとえば5分)の到来に応答して不正検知処理を実行する。不正検知処理ではまず、正規時計14が示す時刻が現在時刻CTM1(N)として検出され(図5(A)参照)、簡易時計162が示す時刻が現在時刻CTM2(N)として検出される(図5(B)参照)。さらに、現在時刻CTM1(N)から現在時刻CTM2(N)を減算して得られる値が、時間差DTM(N)として検出される(図5(C)参照)。変数Nが“0”であれば、時間差DTM(N)の値は基準値DTMsaveに設定される(図5(C)参照)。設定が完了すると、変数Nがインクリメントされ、その後に不正検知処理が終了される。
【0043】
変数Nが“1”以上であれば、時間差DTM(N)と基準値DTMsaveとの差分絶対値が“ΔDTM(N)”として算出される(図6参照)。算出された差分絶対値ΔDTM(N)は、閾値REF(=たとえば1時間)と比較される。
【0044】
差分絶対値ΔDTM(N)が閾値REF以下であれば、変数Nがインクリメントされ、その後に不正検知処理が終了される。これに対して、差分絶対値ΔDTM(N)が閾値REFを上回れば、正規時計14に対して不正な操作が行われたとみなされ、スイッチSW(0)〜SW(2)がオフ状態に変更される。これによって、メモリブロックBLK(0)〜BLK(2)からのデータ読み出しが制限される。不正検知処理は、スイッチSW(0)〜SW(2)の設定変更の後に終了される。
【0045】
CPU161は、図7に示すアクセス制御処理を継続的に実行し、図8〜図10に示すモード制御処理を指定周期(=たとえば15分)の到来またはアクセス要求の受信に応答して実行し、そして図11に示す不正検知処理を別の指定周期(=たとえば5分)の到来に応答して実行する。
【0046】
図7を参照して、ステップS1では設定を初期化する。この結果、フラグFLGおよび変数Nが“0”に設定される。さらに、図3に示すテーブルTBL上で、閾値TM_ED1(0)〜TM_ED1(2)がそれぞれ既定値TE10〜TE12に設定され、閾値TM_ED2(0)〜TM_ED2(2)がそれぞれ既定値TE20〜TE22に設定され、変数CONFIG(0)〜CONFIG(2)が“0”に設定され、そしてスイッチSW(0)〜SW(2)がオン状態に設定される。
【0047】
ステップS3では、外部PCからアクセス要求が与えられたか否かを判別する。判別結果がNOからYESに更新されるとステップS5に進み、アクセス要求に記述されたブロック番号を変数Kに設定する。ステップS7ではアクセス要求に記述されたアクセス態様が“ライト”および“リード”のいずれであるかを判別し、“ライト”に対応してステップS9に進む一方、“リード”に対応してステップS15に進む。
【0048】
ステップS9では、アクセス要求に付随するデータをRAM18に設けられたメモリブロックBLK(K)に書き込む。データ書き込みが完了すると、メモリブロックBLK(K)に有意なデータが存在することを表明するべく、ステップS11で変数CONFIG(K)を“1”に設定する。ステップS13では、正規時計14が示す時刻つまり正規時刻を検出し、検出した正規時刻を基準時刻TM_REF(K)として設定する。設定が完了すると、ステップS3に戻る。
【0049】
ステップS15では後述するステップS57〜S75の処理が完了するまで待機し、ステップS17ではスイッチSW(K)がオン状態であるか否かを判別する。判別結果がNOであればそのままステップS3に戻り、判別結果がYESであればステップS19の処理を経てステップS3に戻る。ステップS19では、メモリブロックBLK(K)に格納されたデータを読み出し、読み出されたデータをI/F12に与える。
【0050】
図8を参照して、ステップS21では、モード制御処理の起動原因が指定周期の到来およびアクセス要求の受信のいずれであるかを判別する。起動原因が指定周期の到来であればステップS23に進み、起動原因がアクセス要求の受信であればステップS57に進む。
【0051】
ステップS23ではフラグFLGが“0”であるか否かを判別し、判別結果がNOであればステップS25で変数Lを“0”に設定する一方、判別結果がYESであればステップS27で変数Lの値を変数Lsaveに設定する。ステップS29では、変数CONFIG(L)が“1”であるか否かを判別し、判別結果がNOであればそのままステップS47に進む一方、判別結果がYESであればステップS31〜S45を経てステップS47に進む。
【0052】
ステップS31では、正規時計14が示す時刻を現在時刻TM_1として検出する。ステップS33では、現在時刻TM_1から基準時刻TM_REF(L)を減算して得られる値を時間差T_DIFFとして算出する。ステップS35では算出された時間差T_DIFFが閾値TM_ED1(L)を下回るか否かを判別し、ステップS37では算出された時間差T_DIFFが閾値TM_ED2(L)を下回るか否かを判別する。
【0053】
ステップS35の判別結果がYESであれば、閾値TM_ED1(L)によって定義された期限は到来していないとみなし、ステップS39でスイッチSW(L)をオン状態に設定する。ステップS35の判別結果がNOでかつステップS37の判別結果がYESであれば、閾値TM_ED1(L)によって定義された期限が到来したとみなし、ステップS41でスイッチSW(L)をオフ状態に設定する。
【0054】
ステップS35の判別結果およびステップS37の判別結果のいずれもがNOであれば、閾値TM_ED2(L)によって定義された期限が到来したとみなし、ステップS43でメモリブロックBLK(L)を初期化する。ステップS45では、有意なデータがメモリブロックBLK(L)に存在しないことを表明するべく、変数CONFIG(L)を“0”に設定する。ステップS39,S41またはS45の処理が完了すると、ステップS47に進む。
【0055】
ステップS47では、変数Lをインクリメントする。ステップS49では変数Lが“2”を上回るか否かを判別し、ステップS51では外部PCによって発行されたアクセス要求を受信した否かを判別する。ステップS49の判別結果およびステップS51の判別結果のいずれもNOであれば、ステップS29に戻る。ステップS49の判別結果がYESであれば、ステップS53でフラグFLGを“0”に設定し、その後に処理を終了する。
【0056】
ステップS51の判別結果がYESであれば、モード制御処理の途中でアクセス要求が受信されたとして、ステップS55で変数Lの値を変数Lsaveに設定しかつフラグFLGを“1”に設定する。ステップS57では受信したアクセス要求に記述されたブロック番号を変数Mに設定し、ステップS59では特定条件が満足されるか否かを判別する。ここで、特定条件とは、受信したアクセス要求に記述されたアクセス態様が“リード”で、かつ変数CONFIG(M)が“1”を示すという条件に相当する。
【0057】
ステップS59の判別結果がNOであればそのまま処理を終了し、ステップS59の判別結果がYESであればステップS61〜S75で上述のステップS31〜S45と同様の処理を実行してから処理を終了する。
【0058】
図11を参照して、ステップS81では正規時計14が示す時刻を現在時刻CTM1(N)として検出し、ステップS83では簡易時計162が示す時刻を現在時刻CTM2(N)として検出する。ステップS85では現在時刻CTM1(N)から現在時刻CTM2(N)を減算して得られる値を時間差DTM(N)として検出し、ステップS87では変数Nが“1”以上であるか否かを判別する。
【0059】
ステップS87の判別結果がNOであればステップS95に進み、時間差DTM(N)の値を基準値DTMsaveに設定する。設定が完了すると、ステップS97で変数Nをインクリメントし、その後に処理を終了する。
【0060】
ステップS87の判別結果がYESであればステップS89に進み、時間差DTM(N)と基準値DTMsaveとの差分絶対値を“ΔDTM(N)”として算出する。ステップS91では算出された差分絶対値ΔDTM(N)が閾値REFを上回るか否かを判別し、判別結果がNOであればステップS97で変数Nをインクリメントしてから処理を終了する一方、判別結果がYESであればステップS93でスイッチSW(0)〜SW(2)をオフ状態に設定してから処理を終了する。
【0061】
以上の説明から分かるように、RAM18に設けられたメモリブロックBLK(K)(K:0〜2)には、2つの期限が設定される。CPU161は、ブロック番号“K”が記述された書き込み要求に応答してメモリブロックBLK(K)にデータを書き込み(S9)、ブロック番号“K”が記述された読み出し要求に応答してメモリブロックBLK(K)からデータを読み出す(S19)。CPU161はまた、メモリブロックBLK(K)へのデータ書き込みが完了する毎に、基準時刻TM_REF(K)を更新する(S13)。この結果、メモリブロックBLK(K)に設定された2つの期限が延長される。CPU161は、早い方の期限の到来が検知されたときデータ読み出しを制限するべくスイッチSW(K)をオフ状態に設定し(S41, S71)、遅い方の期限の到来が検知されたときメモリブロックBLK(K)を初期化する(S43, S73)。メモリブロックBLK(K)に格納されたデータは、初期化によって消去される。
【0062】
メモリブロックBLK(K)に設定された2つの期限は、データ書き込みが実行される毎に延長される。したがって、データ書き込みが頻繁に実行される限り、これらの期限が到来することはなく、データ読み出しが許可される。ただし、データ書き込みの中断によって早い方の期限が到来するとデータ読み出しが制限され、さらに遅い方の期限が到来するとメモリブロックBLK(K)に格納されたデータが消去される。これによって、有意なデータの消去をできるだけ防止しつつ、データの機密性を高めることができる。こうしてデータ管理性能が向上する。
【0063】
なお、この実施例の記憶装置としては、USBメモリなどの外部PCから着脱自在な小型の記憶装置が想定される。
【符号の説明】
【0064】
10 …記憶装置
12 …I/F
14 …正規時計
16 …アクセス制御回路
18 …RAM
【技術分野】
【0001】
この発明は、記憶装置に関し、特にメモリへのデータ書き込みおよびメモリからのデータ読み出しを制御する機能を有する、記憶装置に関する。
【背景技術】
【0002】
この種の記憶装置の一例が、特許文献1に開示されている。この背景技術によれば、パーソナルコンピュータからUSB端子を介して取り込んだデータは、揮発性メモリとしてのRAMに格納される。タイマ部は、ユーザの選択した時間が経過すると、リフレッシュ回路に対するRAMのリフレッシュを停止させる。これにより、データおよび暗号化に用いるユーザの暗証番号もすべて完全に消去される。記憶装置の分解等の異常自体が発生したときも、RAMへの電源の供給が絶たれ、データの消去が行われる。これによって、所定の情報処理装置から取り外して一時的に保存するようなデータを、特定の事象が発生したとき確実に消去することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−59228号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、背景技術では、RAMに格納されたデータがリフレッシュの停止によって完全に消去される。このため、データの管理性能に限界がある。
【0005】
それゆえに、この発明の主たる目的は、データの管理性能を高めることができる、記憶装置を提供することである。
【課題を解決するための手段】
【0006】
この発明に従う記憶装置(10:実施例で相当する参照符号。以下同じ)は、第1期限と第1期限に遅れる第2期限とが設定されたメモリ(18)、書き込み要求に応答してメモリにデータを書き込む書き込み手段(S9)、読み出し要求に応答してメモリからデータを読み出す読み出し手段(S19)、書き込み手段によるデータ書き込みが実行される毎に第1期限および第2期限を延長する延長手段(S1, S13)、第1期限の到来が検知されたとき読み出し手段によるデータ読み出しを制限する第1制限手段(S41, S71)、および第2期限の到来が検知されたときメモリに格納されたデータを消去する消去手段(S43, S73)を備える。
【0007】
好ましくは、第1期限の非到来に対応して読み出し手段によるデータ読み出しを許可する許可手段(S39, S69)がさらに備えられる。
【0008】
好ましくは、メモリは第1期限および第2期限が各々に設定された複数の格納領域を有し、書き込み手段,読み出し手段,延長手段,制限手段および消去手段は格納領域毎に処理を実行する。
【0009】
さらに好ましくは、第1期限および/または第2期限の到来を複数の格納領域について検出する処理を周期的に実行する第1検出手段(S35~S37)、および第1期限および/または第2期限の到来を書き込み手段の書き込み先について検出する処理を書き込み要求に応答して実行する第2検出手段(S65~S67)がさらに備えられる。
【0010】
より好ましくは、複数の格納領域のうち空き状態の格納領域に対応して第1検出手段および第2検出手段を停止する停止手段(S29, S59)がさらに備えられる。
【0011】
好ましくは、第1精度で時刻を測定する第1測定手段(14)、第1精度よりも低い第2精度で時刻を測定する第2測定手段(162)、第1測定手段によって測定された時刻と第2測定手段によって測定された時刻との差分を周期的に検出する検出手段(S81~S85)、および検出手段によって検出された差分の変動量が基準を上回るとき読み出し手段によるデータ読み出しを制限する第2制限手段(S91~S93)がさらに備えられる。
【0012】
好ましくは、メモリは揮発性であり、メモリをバックアップするバッテリ(20)がさらに備えられる。
【0013】
この発明に従うメモリアクセス制御プログラムは、第1期限と第1期限に遅れる第2期限とが設定されたメモリ(18)を備える記憶装置(10)のプロセッサ(161)に、書き込み要求に応答してメモリにデータを書き込む書き込みステップ(S9)、読み出し要求に応答してメモリからデータを読み出す読み出しステップ(S19)、書き込みステップによるデータ書き込みが実行される毎に第1期限および第2期限を延長する延長ステップ(S1, S13)、第1期限の到来が検知されたとき読み出しステップによるデータ読み出しを制限する制限ステップ(S41, S71)、および第2期限の到来が検知されたときメモリに格納されたデータを消去する消去ステップ(S43, S73)を実行させるための、メモリアクセス制御プログラムである。
【0014】
この発明に従うメモリアクセス制御方法は、第1期限と第1期限に遅れる第2期限とが設定されたメモリ(18)を備える記憶装置(10)によって実行されるメモリアクセス制御方法であって、書き込み要求に応答してメモリにデータを書き込む書き込みステップ(S9)、読み出し要求に応答してメモリからデータを読み出す読み出しステップ(S19)、書き込みステップによるデータ書き込みが実行される毎に第1期限および第2期限を延長する延長ステップ(S1, S13)、第1期限の到来が検知されたとき読み出しステップによるデータ読み出しを制限する制限ステップ(S41, S71)、および第2期限の到来が検知されたときメモリに格納されたデータを消去する消去ステップ(S43, S73)を備える。
【発明の効果】
【0015】
この発明によれば、メモリに設定された第1期限および第2期限は、データ書き込みが実行される毎に延長される。したがって、データ書き込みが頻繁に実行される限り、第1期限および第2期限が到来することはなく、データ読み出しが許可される。ただし、データ書き込みの中断によって第1期限が到来するとデータ読み出しが制限され、さらに第2期限が到来するとメモリに格納されたデータが消去される。これによって、有意なデータの消去をできるだけ防止しつつ、データの機密性を高めることができる。こうしてデータ管理性能が向上する。
【0016】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0017】
【図1】この発明の一実施例の基本的構成を示すブロック図である。
【図2】この発明の一実施例の構成を示すブロック図である。
【図3】図2実施例によって参照されるテーブルの構成の一例を示す図解図である。
【図4】図2実施例の動作の一部を示す図解図である。
【図5】(A)は正規時刻の変化を示すタイミング図であり、(B)は簡易時刻の変化を示すタイミング図であり、(C)は時間差の変化を示すタイミング図である。
【図6】図2実施例の動作の他の一部を示す図解図である。
【図7】図2実施例に適用されるCPUの動作の一部を示すフロー図である。
【図8】図2実施例に適用されるCPUの動作の他の一部を示すフロー図である。
【図9】図2実施例に適用されるCPUの動作のその他の一部を示すフロー図である。
【図10】図2実施例に適用されるCPUの動作のさらにその他の一部を示すフロー図である。
【図11】図2実施例に適用されるCPUの動作の他の一部を示すフロー図である。
【発明を実施するための形態】
【0018】
以下、この発明の実施の形態を図面を参照しながら説明する。
[基本的構成]
【0019】
図1を参照して、この実施例の記憶装置は、基本的に次のように構成される。メモリ1には、第1期限と第1期限に遅れる第2期限とが設定される。書き込み手段2は、書き込み要求に応答してメモリにデータを書き込む。読み出し手段3は、読み出し要求に応答してメモリからデータを読み出す。延長手段4は、書き込み手段によるデータ書き込みが実行される毎に第1期限および第2期限を延長する。第1制限手段5は、第1期限の到来が検知されたとき読み出し手段3によるデータ読み出しを制限する。消去手段6は、第2期限の到来が検知されたときメモリ1に格納されたデータを消去する。
【0020】
メモリ1に設定された第1期限および第2期限は、データ書き込みが実行される毎に延長される。したがって、データ書き込みが頻繁に実行される限り、第1期限および第2期限が到来することはなく、データ読み出しが許可される。ただし、データ書き込みの中断によって第1期限が到来するとデータ読み出しが制限され、さらに第2期限が到来するとメモリ1に格納されたデータが消去される。これによって、有意なデータの消去をできるだけ防止しつつ、データの機密性を高めることができる。こうしてデータ管理性能が向上する。
[実施例]
【0021】
図2を参照して、この実施例の記憶装置10は、バッテリ20を含む。I/F12,正規時計14,アクセス制御回路16およびRAM18は、バッテリ20によって常時バックアップされる。なお、正規時計14の精度は、アクセス制御回路16に設けられた簡易時計162の精度よりも高い。
【0022】
アクセス制御回路16に設けられたCPU161は、バッテリ20からの給電によって起動したとき、設定を初期化する。これによって、フラグFLGおよび変数Nが“0”に設定され、アクセス制御回路16に設けられたテーブルTBL(図3参照)が以下の要領で設定される。
【0023】
閾値TM_ED1(0)〜TM_ED1(2)はメモリブロックBLK(0)〜BLK(2)からのデータ読み出しを制限する時期を定義するパラメータに相当し、閾値TM_ED2(0)〜TM_ED2(2)はメモリブロックBLK(0)〜BLK(2)を初期化する時期を定義するパラメータに相当する。なお、閾値TM_ED1(0)〜TM_ED1(2)はそれぞれ閾値TM_ED2(0)〜TM_ED2(2)よりも小さく、読み出し制限時期は初期化時期よりも早く到来する。
【0024】
閾値TM_ED1(0)〜TM_ED1(2)はそれぞれ既定値TE10〜TE12(TE10〜TE12:たとえば168時間)に設定され、閾値TM_ED2(0)〜TM_ED2(2)はそれぞれTE20〜TE22(TE20〜TE22:たとえば336時間)に設定される。さらに、変数CONFIG(0)〜CONFIG(2)は“0”に設定され、スイッチSW(0)〜SW(2)はオン状態に設定される。
【0025】
閾値TM_ED1(0),RM_ED2(0),変数CONFIG(0)およびスイッチSW(0)はRAM18のメモリブロックBLK(0)に割り当てられ、閾値TM_ED1(1),RM_ED2(1),変数CONFIG(1)およびスイッチSW(1)はRAM18のメモリブロックBLK(1)に割り当てられ、そして閾値TM_ED1(2),RM_ED2(2),変数CONFIG(2)およびスイッチSW(2)はRAM18のメモリブロックBLK(2)に割り当てられる。
【0026】
変数CONFIG(0)〜CONFIG(2)は、メモリブロックBLK(0)〜BLK(2)に有意なデータが存在するか否かを識別するためのパラメータに相当し、“0”が有意なデータの不存在を示す一方、“1”が有意なデータの存在を示す。スイッチSW(0)〜SW(2)は、メモリブロックBLK(0)〜BLK(2)からのデータ読み出しの許可/制限を識別するためのパラメータに相当し、オン状態が許可を示す一方、オフ状態が制限を示す。フラグFLGおよび変数Nについては後述する。
【0027】
外部PCから発行されたアクセス要求は、I/F12によって受信され、アクセス制御回路16に与えられる。CPU161は、アクセス要求に記述されたブロック番号を変数Kに設定し、アクセス要求に記述されたアクセス態様に従ってメモリブロックBLK(K)にアクセスする。なお、後述する変数LおよびMは、変数Kと同様、メモリブロックBLK(0)〜BLK(2)のいずれか1つを指定するための変数に相当する。
【0028】
アクセス要求に記述されたアクセス態様が“ライト”であれば、アクセス要求に付随するデータがRAM18に設けられたメモリブロックBLK(K)に書き込まれる。データ書き込みが完了すると、メモリブロックBLK(K)に有意なデータが存在することを表明するべく、変数CONFIG(K)が“1”に設定される。さらに、正規時計14が示す時刻つまり正規時刻が検出され、検出された正規時刻が基準時刻TM_REF(K)として設定される。
【0029】
一方、アクセス要求に記述されたアクセス態様が“リード”であれば、スイッチSW(K)がオン状態であることを条件として、メモリブロックBLK(K)に格納されたデータが読み出される。読み出されたデータは、I/F12によって外部PCに送出される。
【0030】
CPU161はまた、指定周期(=たとえば15分)の到来に応答して、或いは外部PCによって発行されたアクセス要求の受信に応答して、モード制御処理を起動する。
【0031】
モード制御処理の起動原因が指定周期の到来であれば、変数Lが“0”〜“2”の各々に設定され、変数CONFIG(L)が“1”を示す場合に以下の処理が実行される。
【0032】
まず、正規時計14が示す時刻が現在時刻TM_1として検出され、現在時刻TM_1から基準時刻TM_REF(L)を減算して得られる値が時間差T_DIFFとして算出される。算出された時間差T_DIFFは、閾値TM_ED1(L)およびTM_ED2(L)の各々と比較される。
【0033】
時間差T_DIFFが閾値TM_ED1(L)を下回れば、閾値TM_ED1(L)によって定義された期限は到来していないとみなされ、スイッチSW(L)がオン状態に設定される。時間差T_DIFFが閾値TM_ED1(L)に達すると、閾値TM_ED1(L)によって定義された期限が到来したとみなされ、スイッチSW(L)がオフ状態に変更される。
【0034】
時間差T_DIFFが閾値TM_ED2(L)に達すると、閾値TM_ED2(L)によって定義された期限が到来したとみなされ、メモリブロックBLK(L)が初期化される。さらに、有意なデータがメモリブロックBLK(L)に存在しないことを表明するべく、変数CONFIG(L)が“0”に設定される。
【0035】
モード制御処理の起動原因がアクセス要求の受信であれば、アクセス要求に記述されたブロック番号が変数Mに設定され、特定条件が満足されることを条件として以下の処理が実行される。なお、特定条件とは、受信したアクセス要求に記述されたアクセス態様が“リード”でかつ変数CONFIG(M)が“1”を示すという条件に相当する。
【0036】
上述と同様、まず、正規時計14が示す時刻が現在時刻TM_1として検出され、現在時刻TM_1から基準時刻TM_REF(M)を減算して得られる値が時間差T_DIFFとして算出される。
【0037】
算出された時間差T_DIFFが閾値TM_ED1(M)を下回れば、閾値TM_ED1(M)によって定義された期限は到来していないとみなされ、スイッチSW(M)がオン状態に設定される。時間差T_DIFFが閾値TM_ED1(M)に達すると、閾値TM_ED1(M)によって定義された期限が到来したとみなされ、スイッチSW(M)がオフ状態に変更される。
【0038】
算出された時間差T_DIFFが閾値TM_ED2(M)に達すると、閾値TM_ED2(M)によって定義された期限が到来したとみなされ、メモリブロックBLK(M)が初期化される。さらに、有意なデータがメモリブロックBLK(M)に存在しないことを表明するべく、変数CONFIG(M)が“0”に更新される。
【0039】
したがって、メモリブロックBLK(2)に対するデータ書き込みが閾値TM_ED1(2)を下回る期間を隔てて2回行われたとき、基準値TM_REF(2),時間差T_DIFF(2),スイッチSW(2)は図4に示す要領で更新される。
【0040】
図4によれば、2回目のデータ書き込みに応答して基準値TM_REF(2)が更新されることで、閾値TM_ED1(2)によって定義される期限が延長される。この期限延長の結果、スイッチSW(2)はオン状態を維持する。ただし、3回目のデータ書き込みは実行されないため、その後に算出される時間差T_DIFF(2)はいずれ、閾値TM_ED1(2)を上回り、さらに閾値TM_ED2(2)を上回る。
【0041】
この結果、スイッチSW(2)は、閾値TM_ED1(2)に対応するタイミングでオン状態からオフ状態に変更される。また、メモリブロックBLK(2)は、閾値TM_ED1(2)に対応するタイミングで初期化される。スイッチSW(2)をオフ状態に変更することで、メモリブロックBLK(2)からのデータ読み出しが制限される。また、メモリブロックBLK(2)の初期化によって、メモリブロックBLK(2)に格納されたデータが消去される。
【0042】
CPU161はさらに、別の指定周期(=たとえば5分)の到来に応答して不正検知処理を実行する。不正検知処理ではまず、正規時計14が示す時刻が現在時刻CTM1(N)として検出され(図5(A)参照)、簡易時計162が示す時刻が現在時刻CTM2(N)として検出される(図5(B)参照)。さらに、現在時刻CTM1(N)から現在時刻CTM2(N)を減算して得られる値が、時間差DTM(N)として検出される(図5(C)参照)。変数Nが“0”であれば、時間差DTM(N)の値は基準値DTMsaveに設定される(図5(C)参照)。設定が完了すると、変数Nがインクリメントされ、その後に不正検知処理が終了される。
【0043】
変数Nが“1”以上であれば、時間差DTM(N)と基準値DTMsaveとの差分絶対値が“ΔDTM(N)”として算出される(図6参照)。算出された差分絶対値ΔDTM(N)は、閾値REF(=たとえば1時間)と比較される。
【0044】
差分絶対値ΔDTM(N)が閾値REF以下であれば、変数Nがインクリメントされ、その後に不正検知処理が終了される。これに対して、差分絶対値ΔDTM(N)が閾値REFを上回れば、正規時計14に対して不正な操作が行われたとみなされ、スイッチSW(0)〜SW(2)がオフ状態に変更される。これによって、メモリブロックBLK(0)〜BLK(2)からのデータ読み出しが制限される。不正検知処理は、スイッチSW(0)〜SW(2)の設定変更の後に終了される。
【0045】
CPU161は、図7に示すアクセス制御処理を継続的に実行し、図8〜図10に示すモード制御処理を指定周期(=たとえば15分)の到来またはアクセス要求の受信に応答して実行し、そして図11に示す不正検知処理を別の指定周期(=たとえば5分)の到来に応答して実行する。
【0046】
図7を参照して、ステップS1では設定を初期化する。この結果、フラグFLGおよび変数Nが“0”に設定される。さらに、図3に示すテーブルTBL上で、閾値TM_ED1(0)〜TM_ED1(2)がそれぞれ既定値TE10〜TE12に設定され、閾値TM_ED2(0)〜TM_ED2(2)がそれぞれ既定値TE20〜TE22に設定され、変数CONFIG(0)〜CONFIG(2)が“0”に設定され、そしてスイッチSW(0)〜SW(2)がオン状態に設定される。
【0047】
ステップS3では、外部PCからアクセス要求が与えられたか否かを判別する。判別結果がNOからYESに更新されるとステップS5に進み、アクセス要求に記述されたブロック番号を変数Kに設定する。ステップS7ではアクセス要求に記述されたアクセス態様が“ライト”および“リード”のいずれであるかを判別し、“ライト”に対応してステップS9に進む一方、“リード”に対応してステップS15に進む。
【0048】
ステップS9では、アクセス要求に付随するデータをRAM18に設けられたメモリブロックBLK(K)に書き込む。データ書き込みが完了すると、メモリブロックBLK(K)に有意なデータが存在することを表明するべく、ステップS11で変数CONFIG(K)を“1”に設定する。ステップS13では、正規時計14が示す時刻つまり正規時刻を検出し、検出した正規時刻を基準時刻TM_REF(K)として設定する。設定が完了すると、ステップS3に戻る。
【0049】
ステップS15では後述するステップS57〜S75の処理が完了するまで待機し、ステップS17ではスイッチSW(K)がオン状態であるか否かを判別する。判別結果がNOであればそのままステップS3に戻り、判別結果がYESであればステップS19の処理を経てステップS3に戻る。ステップS19では、メモリブロックBLK(K)に格納されたデータを読み出し、読み出されたデータをI/F12に与える。
【0050】
図8を参照して、ステップS21では、モード制御処理の起動原因が指定周期の到来およびアクセス要求の受信のいずれであるかを判別する。起動原因が指定周期の到来であればステップS23に進み、起動原因がアクセス要求の受信であればステップS57に進む。
【0051】
ステップS23ではフラグFLGが“0”であるか否かを判別し、判別結果がNOであればステップS25で変数Lを“0”に設定する一方、判別結果がYESであればステップS27で変数Lの値を変数Lsaveに設定する。ステップS29では、変数CONFIG(L)が“1”であるか否かを判別し、判別結果がNOであればそのままステップS47に進む一方、判別結果がYESであればステップS31〜S45を経てステップS47に進む。
【0052】
ステップS31では、正規時計14が示す時刻を現在時刻TM_1として検出する。ステップS33では、現在時刻TM_1から基準時刻TM_REF(L)を減算して得られる値を時間差T_DIFFとして算出する。ステップS35では算出された時間差T_DIFFが閾値TM_ED1(L)を下回るか否かを判別し、ステップS37では算出された時間差T_DIFFが閾値TM_ED2(L)を下回るか否かを判別する。
【0053】
ステップS35の判別結果がYESであれば、閾値TM_ED1(L)によって定義された期限は到来していないとみなし、ステップS39でスイッチSW(L)をオン状態に設定する。ステップS35の判別結果がNOでかつステップS37の判別結果がYESであれば、閾値TM_ED1(L)によって定義された期限が到来したとみなし、ステップS41でスイッチSW(L)をオフ状態に設定する。
【0054】
ステップS35の判別結果およびステップS37の判別結果のいずれもがNOであれば、閾値TM_ED2(L)によって定義された期限が到来したとみなし、ステップS43でメモリブロックBLK(L)を初期化する。ステップS45では、有意なデータがメモリブロックBLK(L)に存在しないことを表明するべく、変数CONFIG(L)を“0”に設定する。ステップS39,S41またはS45の処理が完了すると、ステップS47に進む。
【0055】
ステップS47では、変数Lをインクリメントする。ステップS49では変数Lが“2”を上回るか否かを判別し、ステップS51では外部PCによって発行されたアクセス要求を受信した否かを判別する。ステップS49の判別結果およびステップS51の判別結果のいずれもNOであれば、ステップS29に戻る。ステップS49の判別結果がYESであれば、ステップS53でフラグFLGを“0”に設定し、その後に処理を終了する。
【0056】
ステップS51の判別結果がYESであれば、モード制御処理の途中でアクセス要求が受信されたとして、ステップS55で変数Lの値を変数Lsaveに設定しかつフラグFLGを“1”に設定する。ステップS57では受信したアクセス要求に記述されたブロック番号を変数Mに設定し、ステップS59では特定条件が満足されるか否かを判別する。ここで、特定条件とは、受信したアクセス要求に記述されたアクセス態様が“リード”で、かつ変数CONFIG(M)が“1”を示すという条件に相当する。
【0057】
ステップS59の判別結果がNOであればそのまま処理を終了し、ステップS59の判別結果がYESであればステップS61〜S75で上述のステップS31〜S45と同様の処理を実行してから処理を終了する。
【0058】
図11を参照して、ステップS81では正規時計14が示す時刻を現在時刻CTM1(N)として検出し、ステップS83では簡易時計162が示す時刻を現在時刻CTM2(N)として検出する。ステップS85では現在時刻CTM1(N)から現在時刻CTM2(N)を減算して得られる値を時間差DTM(N)として検出し、ステップS87では変数Nが“1”以上であるか否かを判別する。
【0059】
ステップS87の判別結果がNOであればステップS95に進み、時間差DTM(N)の値を基準値DTMsaveに設定する。設定が完了すると、ステップS97で変数Nをインクリメントし、その後に処理を終了する。
【0060】
ステップS87の判別結果がYESであればステップS89に進み、時間差DTM(N)と基準値DTMsaveとの差分絶対値を“ΔDTM(N)”として算出する。ステップS91では算出された差分絶対値ΔDTM(N)が閾値REFを上回るか否かを判別し、判別結果がNOであればステップS97で変数Nをインクリメントしてから処理を終了する一方、判別結果がYESであればステップS93でスイッチSW(0)〜SW(2)をオフ状態に設定してから処理を終了する。
【0061】
以上の説明から分かるように、RAM18に設けられたメモリブロックBLK(K)(K:0〜2)には、2つの期限が設定される。CPU161は、ブロック番号“K”が記述された書き込み要求に応答してメモリブロックBLK(K)にデータを書き込み(S9)、ブロック番号“K”が記述された読み出し要求に応答してメモリブロックBLK(K)からデータを読み出す(S19)。CPU161はまた、メモリブロックBLK(K)へのデータ書き込みが完了する毎に、基準時刻TM_REF(K)を更新する(S13)。この結果、メモリブロックBLK(K)に設定された2つの期限が延長される。CPU161は、早い方の期限の到来が検知されたときデータ読み出しを制限するべくスイッチSW(K)をオフ状態に設定し(S41, S71)、遅い方の期限の到来が検知されたときメモリブロックBLK(K)を初期化する(S43, S73)。メモリブロックBLK(K)に格納されたデータは、初期化によって消去される。
【0062】
メモリブロックBLK(K)に設定された2つの期限は、データ書き込みが実行される毎に延長される。したがって、データ書き込みが頻繁に実行される限り、これらの期限が到来することはなく、データ読み出しが許可される。ただし、データ書き込みの中断によって早い方の期限が到来するとデータ読み出しが制限され、さらに遅い方の期限が到来するとメモリブロックBLK(K)に格納されたデータが消去される。これによって、有意なデータの消去をできるだけ防止しつつ、データの機密性を高めることができる。こうしてデータ管理性能が向上する。
【0063】
なお、この実施例の記憶装置としては、USBメモリなどの外部PCから着脱自在な小型の記憶装置が想定される。
【符号の説明】
【0064】
10 …記憶装置
12 …I/F
14 …正規時計
16 …アクセス制御回路
18 …RAM
【特許請求の範囲】
【請求項1】
第1期限と前記第1期限に遅れる第2期限とが設定されたメモリ、
書き込み要求に応答して前記メモリにデータを書き込む書き込み手段、
読み出し要求に応答して前記メモリからデータを読み出す読み出し手段、
前記書き込み手段によるデータ書き込みが実行される毎に前記第1期限および前記第2期限を延長する延長手段、
前記第1期限の到来が検知されたとき前記読み出し手段によるデータ読み出しを制限する第1制限手段、および
前記第2期限の到来が検知されたとき前記メモリに格納されたデータを消去する消去手段を備える、記憶装置。
【請求項2】
前記第1期限の非到来に対応して前記読み出し手段によるデータ読み出しを許可する許可手段をさらに備える、請求項1記載の記憶装置。
【請求項3】
前記メモリは前記第1期限および前記第2期限が各々に設定された複数の格納領域を有し、
前記書き込み手段,前記読み出し手段,前記延長手段,前記制限手段および前記消去手段は前記格納領域毎に処理を実行する、請求項1または2記載の記憶装置。
【請求項4】
前記第1期限および/または前記第2期限の到来を前記複数の格納領域について検出する処理を周期的に実行する第1検出手段、および
前記第1期限および/または前記第2期限の到来を前記書き込み手段の書き込み先について検出する処理を前記書き込み要求に応答して実行する第2検出手段をさらに備える、請求項3記載の記憶装置。
【請求項5】
前記複数の格納領域のうち空き状態の格納領域に対応して前記第1検出手段および前記第2検出手段を停止する停止手段をさらに備える、請求項4記載の記憶装置。
【請求項6】
第1精度で時刻を測定する第1測定手段、
前記第1精度よりも低い第2精度で時刻を測定する第2測定手段、
前記第1測定手段によって測定された時刻と前記第2測定手段によって測定された時刻との差分を周期的に検出する検出手段、および
前記検出手段によって検出された差分の変動量が基準を上回るとき前記読み出し手段によるデータ読み出しを制限する第2制限手段をさらに備える、請求項1ないし5のいずれかに記載の記憶装置。
【請求項7】
前記メモリは揮発性であり、
前記メモリをバックアップするバッテリをさらに備える、請求項1ないし6のいずれかに記載の記憶装置。
【請求項8】
第1期限と前記第1期限に遅れる第2期限とが設定されたメモリを備える記憶装置のプロセッサに、
書き込み要求に応答して前記メモリにデータを書き込む書き込みステップ、
読み出し要求に応答して前記メモリからデータを読み出す読み出しステップ、
前記書き込みステップによるデータ書き込みが実行される毎に前記第1期限および前記第2期限を延長する延長ステップ、
前記第1期限の到来が検知されたとき前記読み出しステップによるデータ読み出しを制限する制限ステップ、および
前記第2期限の到来が検知されたとき前記メモリに格納されたデータを消去する消去ステップを実行させるための、メモリアクセス制御プログラム。
【請求項9】
第1期限と前記第1期限に遅れる第2期限とが設定されたメモリを備える記憶装置によって実行されるメモリアクセス制御方法であって、
書き込み要求に応答して前記メモリにデータを書き込む書き込みステップ、
読み出し要求に応答して前記メモリからデータを読み出す読み出しステップ、
前記書き込みステップによるデータ書き込みが実行される毎に前記第1期限および前記第2期限を延長する延長ステップ、
前記第1期限の到来が検知されたとき前記読み出しステップによるデータ読み出しを制限する制限ステップ、および
前記第2期限の到来が検知されたとき前記メモリに格納されたデータを消去する消去ステップを備える、メモリアクセス制御方法。
【請求項1】
第1期限と前記第1期限に遅れる第2期限とが設定されたメモリ、
書き込み要求に応答して前記メモリにデータを書き込む書き込み手段、
読み出し要求に応答して前記メモリからデータを読み出す読み出し手段、
前記書き込み手段によるデータ書き込みが実行される毎に前記第1期限および前記第2期限を延長する延長手段、
前記第1期限の到来が検知されたとき前記読み出し手段によるデータ読み出しを制限する第1制限手段、および
前記第2期限の到来が検知されたとき前記メモリに格納されたデータを消去する消去手段を備える、記憶装置。
【請求項2】
前記第1期限の非到来に対応して前記読み出し手段によるデータ読み出しを許可する許可手段をさらに備える、請求項1記載の記憶装置。
【請求項3】
前記メモリは前記第1期限および前記第2期限が各々に設定された複数の格納領域を有し、
前記書き込み手段,前記読み出し手段,前記延長手段,前記制限手段および前記消去手段は前記格納領域毎に処理を実行する、請求項1または2記載の記憶装置。
【請求項4】
前記第1期限および/または前記第2期限の到来を前記複数の格納領域について検出する処理を周期的に実行する第1検出手段、および
前記第1期限および/または前記第2期限の到来を前記書き込み手段の書き込み先について検出する処理を前記書き込み要求に応答して実行する第2検出手段をさらに備える、請求項3記載の記憶装置。
【請求項5】
前記複数の格納領域のうち空き状態の格納領域に対応して前記第1検出手段および前記第2検出手段を停止する停止手段をさらに備える、請求項4記載の記憶装置。
【請求項6】
第1精度で時刻を測定する第1測定手段、
前記第1精度よりも低い第2精度で時刻を測定する第2測定手段、
前記第1測定手段によって測定された時刻と前記第2測定手段によって測定された時刻との差分を周期的に検出する検出手段、および
前記検出手段によって検出された差分の変動量が基準を上回るとき前記読み出し手段によるデータ読み出しを制限する第2制限手段をさらに備える、請求項1ないし5のいずれかに記載の記憶装置。
【請求項7】
前記メモリは揮発性であり、
前記メモリをバックアップするバッテリをさらに備える、請求項1ないし6のいずれかに記載の記憶装置。
【請求項8】
第1期限と前記第1期限に遅れる第2期限とが設定されたメモリを備える記憶装置のプロセッサに、
書き込み要求に応答して前記メモリにデータを書き込む書き込みステップ、
読み出し要求に応答して前記メモリからデータを読み出す読み出しステップ、
前記書き込みステップによるデータ書き込みが実行される毎に前記第1期限および前記第2期限を延長する延長ステップ、
前記第1期限の到来が検知されたとき前記読み出しステップによるデータ読み出しを制限する制限ステップ、および
前記第2期限の到来が検知されたとき前記メモリに格納されたデータを消去する消去ステップを実行させるための、メモリアクセス制御プログラム。
【請求項9】
第1期限と前記第1期限に遅れる第2期限とが設定されたメモリを備える記憶装置によって実行されるメモリアクセス制御方法であって、
書き込み要求に応答して前記メモリにデータを書き込む書き込みステップ、
読み出し要求に応答して前記メモリからデータを読み出す読み出しステップ、
前記書き込みステップによるデータ書き込みが実行される毎に前記第1期限および前記第2期限を延長する延長ステップ、
前記第1期限の到来が検知されたとき前記読み出しステップによるデータ読み出しを制限する制限ステップ、および
前記第2期限の到来が検知されたとき前記メモリに格納されたデータを消去する消去ステップを備える、メモリアクセス制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−212297(P2012−212297A)
【公開日】平成24年11月1日(2012.11.1)
【国際特許分類】
【出願番号】特願2011−77320(P2011−77320)
【出願日】平成23年3月31日(2011.3.31)
【出願人】(000001889)三洋電機株式会社 (18,308)
【Fターム(参考)】
【公開日】平成24年11月1日(2012.11.1)
【国際特許分類】
【出願日】平成23年3月31日(2011.3.31)
【出願人】(000001889)三洋電機株式会社 (18,308)
【Fターム(参考)】
[ Back to top ]