JPH10301856A - ファイルアクセスシステムおよび記録媒体 - Google Patents
ファイルアクセスシステムおよび記録媒体Info
- Publication number
- JPH10301856A JPH10301856A JP10045268A JP4526898A JPH10301856A JP H10301856 A JPH10301856 A JP H10301856A JP 10045268 A JP10045268 A JP 10045268A JP 4526898 A JP4526898 A JP 4526898A JP H10301856 A JPH10301856 A JP H10301856A
- Authority
- JP
- Japan
- Prior art keywords
- file
- data
- read
- encrypted
- write
- 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.)
- Pending
Links
Landscapes
- Storage Device Security (AREA)
Abstract
(57)【要約】
【課題】 本発明は、オープン命令が発行されたファイ
ルの一部のデータに対するアプリケーションから発行さ
れたリード/ライト命令に対してアクセスするファイル
アクセスシステムおよび記録媒体に関し、アクセス依頼
に対応してリード手段あるいはライト手段が暗号化され
ているファイルからアクセス依頼のあった部分を取り出
して復号化あるいは復号化してライトした後に暗号化し
て書き戻し、暗号化されたファイルへのアクセスを高速
かつ簡易にしかも部分的に行い、セキュリティレベルを
高めることを目的とする。 【解決手段】 アプリケーションから発行される前記リ
ード命令に対して、リード処理対象のファイルが暗号化
対象かを判定し、暗号化対象である場合には、暗号化さ
れているファイルのうち、リード命令の処理対象のデー
タを復号化して、リード命令の発行元に返すリード手段
を備えたるように構成する。
ルの一部のデータに対するアプリケーションから発行さ
れたリード/ライト命令に対してアクセスするファイル
アクセスシステムおよび記録媒体に関し、アクセス依頼
に対応してリード手段あるいはライト手段が暗号化され
ているファイルからアクセス依頼のあった部分を取り出
して復号化あるいは復号化してライトした後に暗号化し
て書き戻し、暗号化されたファイルへのアクセスを高速
かつ簡易にしかも部分的に行い、セキュリティレベルを
高めることを目的とする。 【解決手段】 アプリケーションから発行される前記リ
ード命令に対して、リード処理対象のファイルが暗号化
対象かを判定し、暗号化対象である場合には、暗号化さ
れているファイルのうち、リード命令の処理対象のデー
タを復号化して、リード命令の発行元に返すリード手段
を備えたるように構成する。
Description
【0001】
【発明の属する技術分野】本発明は、ファイルにアクセ
スするファイルアクセスシステムおよび記録媒体に関す
るものである。
スするファイルアクセスシステムおよび記録媒体に関す
るものである。
【0002】
【従来の技術】従来、アプリケーションなどからアクセ
ス依頼のあったデータについて、外部記憶装置に格納さ
れているファイルをアクセスしている。この際、ファイ
ルが暗号化されている場合には、ファイル内のデータを
作業ファイルに一旦取り出して復号化した後、当該作業
ファイルをアクセスしてアクセス処理終了後に暗号化し
て外部記憶装置のファイル内に書き戻すようにしてい
た。
ス依頼のあったデータについて、外部記憶装置に格納さ
れているファイルをアクセスしている。この際、ファイ
ルが暗号化されている場合には、ファイル内のデータを
作業ファイルに一旦取り出して復号化した後、当該作業
ファイルをアクセスしてアクセス処理終了後に暗号化し
て外部記憶装置のファイル内に書き戻すようにしてい
た。
【0003】
【発明が解決しようとする課題】上述したように、従来
は、外部記憶装置中のファイルが暗号化されていた場合
には、当該ファイル内の暗号化されているデータを一旦
作業ファイルに取り出して復号化した後、当該作業ファ
イルにアクセスしてアクセス処理を行い、一連の処理が
終了した後、暗号化して元のファイルに書き戻すように
していたため、アクセス依頼に対応してファイルが暗号
化されていると作業ファイル作成や復号化して作業ファ
イルに格納などの処理が必要となり、迅速にファイルに
アクセスできないという問題があった。また、復号化さ
れたデータが作業ファイルに存在しセキュリティに欠け
るという問題もあった。
は、外部記憶装置中のファイルが暗号化されていた場合
には、当該ファイル内の暗号化されているデータを一旦
作業ファイルに取り出して復号化した後、当該作業ファ
イルにアクセスしてアクセス処理を行い、一連の処理が
終了した後、暗号化して元のファイルに書き戻すように
していたため、アクセス依頼に対応してファイルが暗号
化されていると作業ファイル作成や復号化して作業ファ
イルに格納などの処理が必要となり、迅速にファイルに
アクセスできないという問題があった。また、復号化さ
れたデータが作業ファイルに存在しセキュリティに欠け
るという問題もあった。
【0004】本発明は、これらの問題を解決するため、
アクセス依頼に対応してリード手段あるいはライト手段
が暗号化されているファイルからアクセス依頼のあった
部分を取り出して復号化あるいは復号化してライトした
後に暗号化して書き戻し、暗号化されたファイルへのア
クセスを高速かつ簡易にしかも部分的に行い、セキュリ
ティレベルを高めることを目的としている。
アクセス依頼に対応してリード手段あるいはライト手段
が暗号化されているファイルからアクセス依頼のあった
部分を取り出して復号化あるいは復号化してライトした
後に暗号化して書き戻し、暗号化されたファイルへのア
クセスを高速かつ簡易にしかも部分的に行い、セキュリ
ティレベルを高めることを目的としている。
【0005】
【課題を解決するための手段】図1を参照して課題を解
決するための手段を説明する。図1において、アプリケ
ーション1は、アクセス要求を行うものである。このア
プリケーションは既存のアプリケーションであり、この
システムのためにソースコードの変更を行う必要がな
い。
決するための手段を説明する。図1において、アプリケ
ーション1は、アクセス要求を行うものである。このア
プリケーションは既存のアプリケーションであり、この
システムのためにソースコードの変更を行う必要がな
い。
【0006】ファイルシステム3は、アプリケーション
1からのアクセス要求に対応してドライバ4に指示して
アクセス処理を行うものである。ドライバ4は、ファイ
ルの各種処理を行うものであって、ここでは、ファイル
のリード処理を行うリード手段6、ファイルへのデータ
のライト処理を行うライト手段7などから構成されるも
のである。
1からのアクセス要求に対応してドライバ4に指示して
アクセス処理を行うものである。ドライバ4は、ファイ
ルの各種処理を行うものであって、ここでは、ファイル
のリード処理を行うリード手段6、ファイルへのデータ
のライト処理を行うライト手段7などから構成されるも
のである。
【0007】I/O手段9は、外部記憶装置10のファ
イルからデータを読み出したり、書き戻したりなどする
ものである。次に、動作を説明する。
イルからデータを読み出したり、書き戻したりなどする
ものである。次に、動作を説明する。
【0008】リード手段6がアプリケーション1からの
リード要求に対応して、リード要求のあったデータにつ
いて、I/O手段9によって外部記憶装置10中の該当
ファイルから読み出させたデータが暗号化されていたと
きは復号化したデータをリード要求元のアプリケーショ
ン1などに返し、一方、暗号化されていなかったときは
そのままのデータをリード要求元のアプリケーション1
などに返すようにしている。
リード要求に対応して、リード要求のあったデータにつ
いて、I/O手段9によって外部記憶装置10中の該当
ファイルから読み出させたデータが暗号化されていたと
きは復号化したデータをリード要求元のアプリケーショ
ン1などに返し、一方、暗号化されていなかったときは
そのままのデータをリード要求元のアプリケーション1
などに返すようにしている。
【0009】また、ライト手段7がアプリケーション1
からのライト要求に対応して、ライト要求のあったデー
タについて、I/O手段9によって外部記憶装置10中
の該当ファイルから読み出させたデータが暗号化されて
いたときは復号化したデータに対して上書きした後、一
方、暗号化されていなかったときはそのままのデータに
対して上書きした後、I/O手段9によって外部記憶装
置10中の該当ファイルに書き戻させるようにしてい
る。
からのライト要求に対応して、ライト要求のあったデー
タについて、I/O手段9によって外部記憶装置10中
の該当ファイルから読み出させたデータが暗号化されて
いたときは復号化したデータに対して上書きした後、一
方、暗号化されていなかったときはそのままのデータに
対して上書きした後、I/O手段9によって外部記憶装
置10中の該当ファイルに書き戻させるようにしてい
る。
【0010】これらの際に、リード手段6がファイルか
ら読み出した暗号化されていたデータを復号化して同一
サイズのデータにし、あるいはライト手段7が暗号化さ
れていないデータを暗号化して同一サイズのデータにし
てファイルに書き込むようにしている。
ら読み出した暗号化されていたデータを復号化して同一
サイズのデータにし、あるいはライト手段7が暗号化さ
れていないデータを暗号化して同一サイズのデータにし
てファイルに書き込むようにしている。
【0011】また、ユーザ毎あるいはファイル毎にリー
ド手段6による復号化あるいはライト手段7による復号
化/暗号化の可あるいは不可を登録するようにしてい
る。従って、アクセス依頼に対応してリード手段6ある
いはライト手段7が暗号化されているファイルからアク
セス要求のあった部分を取り出して復号化あるいは復号
化してライトした後に暗号化して書き戻すことにより、
暗号化されたファイルへのアクセスを高速かつ簡易にし
かも部分的に行い、セキュリティレベルを高めることが
可能となる。
ド手段6による復号化あるいはライト手段7による復号
化/暗号化の可あるいは不可を登録するようにしてい
る。従って、アクセス依頼に対応してリード手段6ある
いはライト手段7が暗号化されているファイルからアク
セス要求のあった部分を取り出して復号化あるいは復号
化してライトした後に暗号化して書き戻すことにより、
暗号化されたファイルへのアクセスを高速かつ簡易にし
かも部分的に行い、セキュリティレベルを高めることが
可能となる。
【0012】
【発明の実施の形態】次に、図1から図9を用いて本発
明の実施の形態および動作を順次詳細に説明する。ここ
で、図示外の記録媒体あるいは外部記憶装置であるハー
ドディスク装置などから読み出したプログラム、または
回線を介してセンタから転送を受けたプログラムを主記
憶にローディングして起動し、以下に説明する各種処理
を行うようにしている。
明の実施の形態および動作を順次詳細に説明する。ここ
で、図示外の記録媒体あるいは外部記憶装置であるハー
ドディスク装置などから読み出したプログラム、または
回線を介してセンタから転送を受けたプログラムを主記
憶にローディングして起動し、以下に説明する各種処理
を行うようにしている。
【0013】図1は、本発明のシステムブロック図を示
す。図1において、ユーザ認証手段2は、ユーザの認証
(資格検査)を行うものである(図3を用いて後述す
る)。
す。図1において、ユーザ認証手段2は、ユーザの認証
(資格検査)を行うものである(図3を用いて後述す
る)。
【0014】ドライバ4は、ファイルのオープン処理、
リード処理、ライト処理、クローズ処理を行うものであ
って、オープン手段5、リード手段6、ライト手段7、
クローズ手段8などから構成されるものである。
リード処理、ライト処理、クローズ処理を行うものであ
って、オープン手段5、リード手段6、ライト手段7、
クローズ手段8などから構成されるものである。
【0015】オープン手段5は、外部記憶装置10中の
ファイルをオープンするものである(図4を用いて後述
する)。リード手段6は、外部記憶装置10中のファイ
ルのデータを読み出させて暗号化されているときは同一
サイズのデータに復号化してリード要求元に返したり、
暗号化されていなかったときはそのままデータをリード
要求元に返したりなどするものである(図5を用いて後
述する)。
ファイルをオープンするものである(図4を用いて後述
する)。リード手段6は、外部記憶装置10中のファイ
ルのデータを読み出させて暗号化されているときは同一
サイズのデータに復号化してリード要求元に返したり、
暗号化されていなかったときはそのままデータをリード
要求元に返したりなどするものである(図5を用いて後
述する)。
【0016】ライト手段7は、外部記憶装置10中のフ
ァイルのデータを読みださせて暗号化されているときは
同一サイズのデータに復号化してライト要求のあったデ
ータを上書きし、一方、暗号化されていなかったときは
データにライト要求のあったデータを上書きし、元のフ
ァイルに書き戻させたりなどするものである(図6を用
いて後述する)。
ァイルのデータを読みださせて暗号化されているときは
同一サイズのデータに復号化してライト要求のあったデ
ータを上書きし、一方、暗号化されていなかったときは
データにライト要求のあったデータを上書きし、元のフ
ァイルに書き戻させたりなどするものである(図6を用
いて後述する)。
【0017】クローズ手段8は、外部記憶装置10中の
ファイルをクローズするものである(図7を用いて後述
する)。次に、図2のフローチャートに示す順序に従
い、図1の初期処理を詳細に説明する。
ファイルをクローズするものである(図7を用いて後述
する)。次に、図2のフローチャートに示す順序に従
い、図1の初期処理を詳細に説明する。
【0018】図2は、本発明の初期処理フローチャート
を示す。図2において、S1は、OS(オペレーティン
グシステム)がドライバ確認コマンドを送信する。
を示す。図2において、S1は、OS(オペレーティン
グシステム)がドライバ確認コマンドを送信する。
【0019】S2は、S1で送信されたドライバ確認コ
マンドを受信したドライバ(#1)4が処理処理OKか
判別する。OKのときはOK応答をOSに返してS4で
OSにドライバ(#1)として登録する。一方、NGの
場合には、NG応答をOSに返してS3でエラー処理
(ドライバ(#1)がエラーとして登録などの処理)す
る。
マンドを受信したドライバ(#1)4が処理処理OKか
判別する。OKのときはOK応答をOSに返してS4で
OSにドライバ(#1)として登録する。一方、NGの
場合には、NG応答をOSに返してS3でエラー処理
(ドライバ(#1)がエラーとして登録などの処理)す
る。
【0020】S5は、S4でドライバ(#1)としてO
Sに登録されたので、OSが初期処理の指示をドライバ
(#1)に通知する。S6は、S5の初期処理の通知に
対応して、ドライバ(#1)がファイルシステムのイベ
ントをフックする要求を発行する。具体的には、フック
時にコールされるプログラムのアドレス(例えば“FS
Hook ();”など)をOSに指定する。
Sに登録されたので、OSが初期処理の指示をドライバ
(#1)に通知する。S6は、S5の初期処理の通知に
対応して、ドライバ(#1)がファイルシステムのイベ
ントをフックする要求を発行する。具体的には、フック
時にコールされるプログラムのアドレス(例えば“FS
Hook ();”など)をOSに指定する。
【0021】S7は、S6の要求に対応して、OSがフ
ックアドレスなどを登録した後、その応答を返す。これ
は、例えば後述する図8のマネージャテーブルにドライ
バ(#1)に対応づけフックアドレスFSHoo
k();を登録する。
ックアドレスなどを登録した後、その応答を返す。これ
は、例えば後述する図8のマネージャテーブルにドライ
バ(#1)に対応づけフックアドレスFSHoo
k();を登録する。
【0022】S8は、S7に応答を受信したドライバ
(#1)がS6の要求についてOKか判別する。YES
の場合には、初期処理を完了したので終了する。NOの
場合には、要求失敗と判断し、再試行あるいはエラーと
して中止などする。
(#1)がS6の要求についてOKか判別する。YES
の場合には、初期処理を完了したので終了する。NOの
場合には、要求失敗と判断し、再試行あるいはエラーと
して中止などする。
【0023】以上によって、ドライバ4の初期処理が完
了し、動作状態に設定されたこととなる。図3のフロー
チャートに示す順序に従い、図1の認証処理を詳細に説
明する。
了し、動作状態に設定されたこととなる。図3のフロー
チャートに示す順序に従い、図1の認証処理を詳細に説
明する。
【0024】図3は、本発明のユーザ認証フローチャー
トを示す。図3において、S11は、アプリケーション
1に対して、ユーザがユーザID、パスワードの入力を
行う。
トを示す。図3において、S11は、アプリケーション
1に対して、ユーザがユーザID、パスワードの入力を
行う。
【0025】S12は、S11で入力されたユーザI
D、パスワードをもとにテーブルを参照してチェックを
行い、OKか判別する。YESの場合には、S13に進
む。NOの場合には、エラーとしてS11で再入力ある
いはエラーとして中止する。
D、パスワードをもとにテーブルを参照してチェックを
行い、OKか判別する。YESの場合には、S13に進
む。NOの場合には、エラーとしてS11で再入力ある
いはエラーとして中止する。
【0026】S13は、ユーザまたはアプリケーション
からの暗号化/復号化フォルダ(ディレクトリ)の指定
を行う。S14は、ドライバへの暗号化/復号化フォル
ダの指定を行う。
からの暗号化/復号化フォルダ(ディレクトリ)の指定
を行う。S14は、ドライバへの暗号化/復号化フォル
ダの指定を行う。
【0027】S15は、S14で通知を受けたドライバ
(#1)が暗号化/復号化フォルダの設定・保存を行
う。これは、例えば後述する図9に示すように、ユーザ
毎に、フォルダ名に対応づけてリード処理/ライト処理
毎に暗号化/復号化するものを登録する(○は暗号化/
復号化する、×は暗号化/復号化しない)。
(#1)が暗号化/復号化フォルダの設定・保存を行
う。これは、例えば後述する図9に示すように、ユーザ
毎に、フォルダ名に対応づけてリード処理/ライト処理
毎に暗号化/復号化するものを登録する(○は暗号化/
復号化する、×は暗号化/復号化しない)。
【0028】S16は、暗号化/復号化を開始指示す
る。S17は、ドライバ(#1)がS16の指示に対応
して暗号化/復号化を開始する。
る。S17は、ドライバ(#1)がS16の指示に対応
して暗号化/復号化を開始する。
【0029】以上によって、認証されたユーザ毎にフォ
ルダ毎に図9に示すようにリード処理およびライト処理
について暗号化/復号化するか否かを登録し、当該登録
に従い暗号化/復号化を開始する。
ルダ毎に図9に示すようにリード処理およびライト処理
について暗号化/復号化するか否かを登録し、当該登録
に従い暗号化/復号化を開始する。
【0030】図4のフローチャートに示す順序に従い、
図1のオープン処理を詳細に説明する。図4は、本発明
のオープン処理フローチャートを示す。
図1のオープン処理を詳細に説明する。図4は、本発明
のオープン処理フローチャートを示す。
【0031】図4において、S21は、アプリケーショ
ン1がオープン関数を発行する。S22は、ファイルシ
ステム3がオープン処理を行う。S23は、ドライバ
(#1)4が図示の下記のオープンイベントをOSより
受信する(これは、ドライバの登録時に、OSに通知し
てもらうイベント、通知時にコールされる暗号化/復号
化プログラムのアドレスを登録することで実現されてい
る)。
ン1がオープン関数を発行する。S22は、ファイルシ
ステム3がオープン処理を行う。S23は、ドライバ
(#1)4が図示の下記のオープンイベントをOSより
受信する(これは、ドライバの登録時に、OSに通知し
てもらうイベント、通知時にコールされる暗号化/復号
化プログラムのアドレスを登録することで実現されてい
る)。
【0032】・ファイル名(パス名を含む): ・ファイル属性: ・ファイルハンドル: ・オープン関数のパラメタ: ・ファイルシステムへの復帰アドレス: ・その他 S24は、フォルダが暗号化/復号化対象かのチェック
がOKか判別する。フォルダ名はパス名(ファイル名)
より抽出する。YESの場合(対象のファイルが存在す
るなどの場合)には、S27に進む。NOの場合には、
暗号化/復号化対象外ファイルとしてS25で復帰アド
レスへ復帰し、オープン処理に戻る。
がOKか判別する。フォルダ名はパス名(ファイル名)
より抽出する。YESの場合(対象のファイルが存在す
るなどの場合)には、S27に進む。NOの場合には、
暗号化/復号化対象外ファイルとしてS25で復帰アド
レスへ復帰し、オープン処理に戻る。
【0033】S27は、ファイル属性から処理しないフ
ァイルを振り分ける。これは、図示の下記のファイル属
性から処理する必要のないファイルを除外する。 ・システムファイル: ・隠しファイル: ・ドライバファイル: ・その他 YESの場合には、暗号化/復号化の対象外のファイル
と判明したので、S28で属性テーブルにファイルハン
ドルを保存し、S29に進む。一方、S27のNOの場
合には、S29に進む。
ァイルを振り分ける。これは、図示の下記のファイル属
性から処理する必要のないファイルを除外する。 ・システムファイル: ・隠しファイル: ・ドライバファイル: ・その他 YESの場合には、暗号化/復号化の対象外のファイル
と判明したので、S28で属性テーブルにファイルハン
ドルを保存し、S29に進む。一方、S27のNOの場
合には、S29に進む。
【0034】S29は、復帰アドレスへ復帰する。S3
0は、オープン処理を完了する。S31は、オープン関
数に復帰する。
0は、オープン処理を完了する。S31は、オープン関
数に復帰する。
【0035】以上の手順によって、アプリケーション1
がオープン関数を発行し、ファイルのオープン処理を完
了したこととなる。そして、後述する図5のリード処理
あるいは図6のライト処理に進む。
がオープン関数を発行し、ファイルのオープン処理を完
了したこととなる。そして、後述する図5のリード処理
あるいは図6のライト処理に進む。
【0036】図5のフローチャートに示す順序に従い、
図1のリード処理を詳細に説明する。図5は、本発明の
リード処理フローチャートを示す。
図1のリード処理を詳細に説明する。図5は、本発明の
リード処理フローチャートを示す。
【0037】図5において、S41は、アプリケーショ
ン1がリード関数を発行する。S42は、ファイルシス
テム3がリード処理を行う。S43は、ドライバ(#
1)4が図示の下記のリードイベントを受信する。
ン1がリード関数を発行する。S42は、ファイルシス
テム3がリード処理を行う。S43は、ドライバ(#
1)4が図示の下記のリードイベントを受信する。
【0038】・ファイル名(パス名を含む): ・ファイルハンドル: ・リードポイント: ・リードバッファ: ・リードサイズ: ・ファイルシステムへの復帰アドレス: ・その他 S44は、フォルダが暗号化/復号化対象かチェックが
OKか判別する。YESの場合(暗号化/復号化対象の
場合)には、S46に進む。NOの場合には、通常の処
理としてS45で復帰アドレス(OS)へ復帰し、通常
のリード処理を行う。
OKか判別する。YESの場合(暗号化/復号化対象の
場合)には、S46に進む。NOの場合には、通常の処
理としてS45で復帰アドレス(OS)へ復帰し、通常
のリード処理を行う。
【0039】S46は、オープン処理時に更新した属性
テーブルに当該要求のファイルハンドルがあるか否かを
チェックする。これは、ファイルハンドルから暗号化/
復号化の対象外のファイルか判別する。NOの場合に
は、S48に進む。YESの場合には、S47で復帰ア
ドレスへ復帰し、通常のリード処理をする。
テーブルに当該要求のファイルハンドルがあるか否かを
チェックする。これは、ファイルハンドルから暗号化/
復号化の対象外のファイルか判別する。NOの場合に
は、S48に進む。YESの場合には、S47で復帰ア
ドレスへ復帰し、通常のリード処理をする。
【0040】S48は、リード処理を呼び出す。これ
は、外部記憶装置10である例えばHDD(ハードディ
スク装置)のドライバを呼び出し、バウンダリ処理を行
ってデータをリードする。
は、外部記憶装置10である例えばHDD(ハードディ
スク装置)のドライバを呼び出し、バウンダリ処理を行
ってデータをリードする。
【0041】S49は、S48で呼び出された例えばH
DDドライバがHDDからバウンダリを考慮してデータ
を読み出す。S50は、S49で読み出したデータにつ
いて、同一サイズで復号化処理を行う。ここで、8バイ
ト単位での暗号化処理、および端数処理を行う。これに
より、8バイト単位に復号化処理を行い、読み出したデ
ータの8バイトと、復号化した後のデータが8バイトと
なるようにしており、復号化前と復号化後のデータが共
に8バイトで同一とし、データの長さから両者が区別つ
かないようにし、セキュリティレベルを高めている。
DDドライバがHDDからバウンダリを考慮してデータ
を読み出す。S50は、S49で読み出したデータにつ
いて、同一サイズで復号化処理を行う。ここで、8バイ
ト単位での暗号化処理、および端数処理を行う。これに
より、8バイト単位に復号化処理を行い、読み出したデ
ータの8バイトと、復号化した後のデータが8バイトと
なるようにしており、復号化前と復号化後のデータが共
に8バイトで同一とし、データの長さから両者が区別つ
かないようにし、セキュリティレベルを高めている。
【0042】S51は、リードサイズ分をリードバッフ
ァに設定する。S52は、復帰アドレスへ復帰する。S
53は、リード処理を完了する。
ァに設定する。S52は、復帰アドレスへ復帰する。S
53は、リード処理を完了する。
【0043】S54は、リード関数に復帰する。以上に
よって、アプリケーション1がリード関数を発行する
と、発行されたリード関数で指定されたデータがここで
は、8バイト単位にファイルから読みだされて暗号化さ
れているときは復号化し、暗号化されていないときは図
示しないがそのままでリードバッファに設定することを
リード分のデータ分だけ繰り返し、アプリケーション1
はリードバッファから読み出して一連のリード処理を行
うことが可能となる。
よって、アプリケーション1がリード関数を発行する
と、発行されたリード関数で指定されたデータがここで
は、8バイト単位にファイルから読みだされて暗号化さ
れているときは復号化し、暗号化されていないときは図
示しないがそのままでリードバッファに設定することを
リード分のデータ分だけ繰り返し、アプリケーション1
はリードバッファから読み出して一連のリード処理を行
うことが可能となる。
【0044】図6のフローチャートに示す順序に従い、
図1のライト処理を詳細に説明する。図6は、本発明の
ライト処理フローチャートを示す。
図1のライト処理を詳細に説明する。図6は、本発明の
ライト処理フローチャートを示す。
【0045】図6において、S61は、アプリケーショ
ン1がライト関数を発行する。S62は、ファイルシス
テム3がライト処理を行う。S63は、ドライバ(#
1)4が図示の下記のライトイベントを受信する。
ン1がライト関数を発行する。S62は、ファイルシス
テム3がライト処理を行う。S63は、ドライバ(#
1)4が図示の下記のライトイベントを受信する。
【0046】・ファイル名(パス名を含む): ・ファイルハンドル: ・ライトポイント: ・ライトバッファ: ・ライトサイズ: ・ファイルシステムへの復帰アドレス: ・その他 S64は、フォルダが暗号化/復号化対象かのチェック
がOKか判別する。YESの場合(暗号化/復号化対象
の場合)には、S66に進む。NOの場合には、S65
で復帰アドレスへ復帰し、通常のライト処理をする。
がOKか判別する。YESの場合(暗号化/復号化対象
の場合)には、S66に進む。NOの場合には、S65
で復帰アドレスへ復帰し、通常のライト処理をする。
【0047】S66は、オープン処理時に更新した属性
テーブルに当該要求のファイルハンドルがあるか否かを
チェックする。これは、ファイルハンドルから暗号化/
復号化対象外のファイルか判別する。NOの場合には、
S68に進む。YESの場合には、S67で復帰アドレ
スへ復帰し、通常のライト処理をする。
テーブルに当該要求のファイルハンドルがあるか否かを
チェックする。これは、ファイルハンドルから暗号化/
復号化対象外のファイルか判別する。NOの場合には、
S68に進む。YESの場合には、S67で復帰アドレ
スへ復帰し、通常のライト処理をする。
【0048】S68は、リード処理を呼び出す。これ
は、外部記憶装置10である例えばHDD(ハードディ
スク装置)のドライバを呼び出し、バウンダリ処理を行
ってデータをリードする。
は、外部記憶装置10である例えばHDD(ハードディ
スク装置)のドライバを呼び出し、バウンダリ処理を行
ってデータをリードする。
【0049】S69は、S68で呼び出された例えばH
DDドライバがHDDからバウンダリを考慮してデータ
を読み出す。S70は、S69で読み出したデータにつ
いて、同一サイズで復号化処理を行う。ここで、8バイ
ト単位での復号化処理、および端数処理を行う。これに
より、8バイト単位に復号化処理を行い、読み出したデ
ータの8バイトと、復号化した後のデータが8バイトと
なるようにしており、復号化前と復号化後のデータが共
にに8バイトで同一とし、データの長さから両者が区別
つかないようにし、セキュリティレベルを高めている。
DDドライバがHDDからバウンダリを考慮してデータ
を読み出す。S70は、S69で読み出したデータにつ
いて、同一サイズで復号化処理を行う。ここで、8バイ
ト単位での復号化処理、および端数処理を行う。これに
より、8バイト単位に復号化処理を行い、読み出したデ
ータの8バイトと、復号化した後のデータが8バイトと
なるようにしており、復号化前と復号化後のデータが共
にに8バイトで同一とし、データの長さから両者が区別
つかないようにし、セキュリティレベルを高めている。
【0050】S71は、ライトデータを復号化データに
上書きする。S72は、S71で上書きしたデータにつ
いて、同一サイズで暗号化処理を行う。ここで、8バイ
ト単位での暗号化処理、および端数処理を行う。これに
より、8バイト単位に暗号化処理を行い、上書きしたデ
ータの8バイトと、暗号化した後のデータが8バイトと
なるようにしており、暗号化前と暗号化後のデータが共
にに8バイトで同一とし、データの長さから両者が区別
つかないようにし、セキュリティレベルを高めている。
上書きする。S72は、S71で上書きしたデータにつ
いて、同一サイズで暗号化処理を行う。ここで、8バイ
ト単位での暗号化処理、および端数処理を行う。これに
より、8バイト単位に暗号化処理を行い、上書きしたデ
ータの8バイトと、暗号化した後のデータが8バイトと
なるようにしており、暗号化前と暗号化後のデータが共
にに8バイトで同一とし、データの長さから両者が区別
つかないようにし、セキュリティレベルを高めている。
【0051】S73は、ライト処理を呼び出す。これ
は、外部記憶装置10であるHDDのHDDドライバを
呼び出し、バウンダリ処理を行ってデータをライトす
る。S74は、S73で呼び出されたHDDドライバが
HDDからバウンダリを考慮してデータを書き戻す。
は、外部記憶装置10であるHDDのHDDドライバを
呼び出し、バウンダリ処理を行ってデータをライトす
る。S74は、S73で呼び出されたHDDドライバが
HDDからバウンダリを考慮してデータを書き戻す。
【0052】S75は、ライト処理を完了する。S76
は、ドライバから復帰する。S77は、ライト関数に復
帰する。
は、ドライバから復帰する。S77は、ライト関数に復
帰する。
【0053】以上によって、アプリケーション1がライ
ト関数を発行すると、発行されたライト関数で指定され
たデータがここでは、8バイト単位にファイルから読み
だされて暗号化されているときは復号化し、暗号化され
ていないときは図示しないがそのままでとし、これらデ
ータに対してライトデータを上書きした後、暗号化され
ていたときは暗号化したデータを、暗号化されていなか
ったときはそのままのデータを8バイト単位にファイル
に書き戻すことを繰り返して一連のライト処理を行うこ
とが可能となる。
ト関数を発行すると、発行されたライト関数で指定され
たデータがここでは、8バイト単位にファイルから読み
だされて暗号化されているときは復号化し、暗号化され
ていないときは図示しないがそのままでとし、これらデ
ータに対してライトデータを上書きした後、暗号化され
ていたときは暗号化したデータを、暗号化されていなか
ったときはそのままのデータを8バイト単位にファイル
に書き戻すことを繰り返して一連のライト処理を行うこ
とが可能となる。
【0054】図7のフローチャートに示す順序に従い、
図1のクローズ処理を詳細に説明する。図7は、本発明
のクローズ処理フローチャートを示す。
図1のクローズ処理を詳細に説明する。図7は、本発明
のクローズ処理フローチャートを示す。
【0055】図7において、S81は、アプリケーショ
ン1がクローズ関数を発行する。S82は、ファイルシ
ステム3がクローズ処理を行う。S83は、ドライバ
(#1)4が図示の下記のクローズイベントを受信す
る。
ン1がクローズ関数を発行する。S82は、ファイルシ
ステム3がクローズ処理を行う。S83は、ドライバ
(#1)4が図示の下記のクローズイベントを受信す
る。
【0056】・ファイル名: ・ファイル属性: ・ファイルシステムへの復帰アドレス: ・その他 S84は、フォルダのチェックがOKか判別する。YE
Sの場合(クローズ対象のファイルが存在するなどの場
合)には、S86に進む。NOの場合には、S85で復
帰アドレスへ復帰し、通常のクローズ処理をする。
Sの場合(クローズ対象のファイルが存在するなどの場
合)には、S86に進む。NOの場合には、S85で復
帰アドレスへ復帰し、通常のクローズ処理をする。
【0057】S86は、オープン処理時に更新した属性
テーブルに当該要求のファイルハンドルがあるか否かを
チェックする。YESの場合には、S89に進む。NO
の場合には、S87で復帰アドレスへ復帰し、通常のク
ローズ処理をする。
テーブルに当該要求のファイルハンドルがあるか否かを
チェックする。YESの場合には、S89に進む。NO
の場合には、S87で復帰アドレスへ復帰し、通常のク
ローズ処理をする。
【0058】・システムファイル: ・隠しファイル: ・ドライバファイル: ・その他 S89は、属性テーブルに保存していたファイルハンド
ルを消去し、S90に進む。
ルを消去し、S90に進む。
【0059】S90は、復帰アドレスへ復帰する。S9
1は、クローズ処理を完了する。S92は、クローズ関
数に復帰する。
1は、クローズ処理を完了する。S92は、クローズ関
数に復帰する。
【0060】以上の手順によって、アプリケーション1
がクローズ関数を発行し、ファイルのクローズ処理を完
了したこととなる。図8は、本発明のマネージャテーブ
ル例を示す。これは、既述した図2の初期処理中のS7
でOSに登録されたものであって、ここでは、図示の下
記のようにドライバ毎にフックアドレスを登録し、デー
タの授受を実現するためのものである。
がクローズ関数を発行し、ファイルのクローズ処理を完
了したこととなる。図8は、本発明のマネージャテーブ
ル例を示す。これは、既述した図2の初期処理中のS7
でOSに登録されたものであって、ここでは、図示の下
記のようにドライバ毎にフックアドレスを登録し、デー
タの授受を実現するためのものである。
【0061】ドライバ名 フックアドレス ドライバ#1 フックアドレス FSHook(); 図9は、本発明のユーザレベル管理テーブル例を示す。
これは、ユーザ毎にフォルダ毎にリード処理およびライ
ト処理の可否を登録するものであって、既述した図3の
S15などで登録されるものである。このユーザレベル
管理テーブルにより、ユーザ毎かつフォルダ毎に既述し
たリード処理およびライト処理の可否を参照し、既述し
た図5のリード処理、図6のライト処理を実行すること
により、セキュリティを確保することが可能となる。
これは、ユーザ毎にフォルダ毎にリード処理およびライ
ト処理の可否を登録するものであって、既述した図3の
S15などで登録されるものである。このユーザレベル
管理テーブルにより、ユーザ毎かつフォルダ毎に既述し
たリード処理およびライト処理の可否を参照し、既述し
た図5のリード処理、図6のライト処理を実行すること
により、セキュリティを確保することが可能となる。
【0062】
【発明の効果】以上説明したように、本発明によれば、
アクセス依頼に対応してリード手段6あるいはライト手
段7が暗号化されているファイルからアクセス要求のあ
った部分を取り出して復号化あるいは復号化してライト
した後に暗号化して書き戻す構成を採用しているため、
暗号化されたファイルへのアクセスを高速かつ簡易にし
かも部分的に行うことができる。これらにより、 (1) 本願発明は、暗号化前と暗号化後、復号化前と
復号化後のデータの長さを同一(例えば8バイトで同
一)としているため、ファイル内のデータが暗号化され
ているか否かをデータ長(ファイルサイズ)から判別で
きず、セキュリティレベルを高めることができる。
アクセス依頼に対応してリード手段6あるいはライト手
段7が暗号化されているファイルからアクセス要求のあ
った部分を取り出して復号化あるいは復号化してライト
した後に暗号化して書き戻す構成を採用しているため、
暗号化されたファイルへのアクセスを高速かつ簡易にし
かも部分的に行うことができる。これらにより、 (1) 本願発明は、暗号化前と暗号化後、復号化前と
復号化後のデータの長さを同一(例えば8バイトで同
一)としているため、ファイル内のデータが暗号化され
ているか否かをデータ長(ファイルサイズ)から判別で
きず、セキュリティレベルを高めることができる。
【0063】(2) 本願発明は、部分的(例えば8バ
イト単位)にファイルから暗号化データを読み出して復
号化したり、部分的(例えば8バイト単位)にファイル
から暗号化データを読み出して復号化しライトデータを
上書きした後に暗号化してファイルに書き戻しているた
め、リード処理/ライト処理で必要な部分データのみを
アクセスし、高速、迅速かつセキュリティレベルを高く
できる。
イト単位)にファイルから暗号化データを読み出して復
号化したり、部分的(例えば8バイト単位)にファイル
から暗号化データを読み出して復号化しライトデータを
上書きした後に暗号化してファイルに書き戻しているた
め、リード処理/ライト処理で必要な部分データのみを
アクセスし、高速、迅速かつセキュリティレベルを高く
できる。
【0064】(3) 従来のファイルから全データを作
業ファイルに読み出して復号化したデータを、アプリか
らアクセスするような場合には復号化したデータが作業
ファイルに存在してデータの内容が判明してしまいセキ
ュリティレベルが低い欠点があるが、本願発明では作業
ファイルがなく、リード処理あるいはライト処理毎にそ
の都度、ファイルからデータを部分的(例えば8バイト
単位)に読み出して復号化したり、データを部分的(例
えば8バイト単位)に読み出して復号化して上書きした
後に暗号化してファイルに書き戻してしまい、セキュリ
ティレベルが非常に高い。
業ファイルに読み出して復号化したデータを、アプリか
らアクセスするような場合には復号化したデータが作業
ファイルに存在してデータの内容が判明してしまいセキ
ュリティレベルが低い欠点があるが、本願発明では作業
ファイルがなく、リード処理あるいはライト処理毎にそ
の都度、ファイルからデータを部分的(例えば8バイト
単位)に読み出して復号化したり、データを部分的(例
えば8バイト単位)に読み出して復号化して上書きした
後に暗号化してファイルに書き戻してしまい、セキュリ
ティレベルが非常に高い。
【図1】本発明のシステムブロック図である。
【図2】本発明の初期処理フローチャートである。
【図3】本発明のユーザ認証フローチャートである。
【図4】本発明のオープン処理フローチャートである。
【図5】本発明のリード処理フローチャートである。
【図6】本発明のライト処理フローチャートである。
【図7】本発明のクローズ処理フローチャートである。
【図8】本発明のマネージャテーブル例である。
【図9】本発明のユーザレベル管理テーブル例である。
1:アプリケーション 2:ユーザ認証手段 3:ファイルシステム 4:ドライバ 5:オープン手段 6:リード手段 7:ライト手段 8:クローズ手段 9:I/O手段 10:外部記憶装置
Claims (6)
- 【請求項1】オープン命令が発行されたファイルの一部
のデータに対するアプリケーションから発行されたリー
ド命令に対して、実際のファイル内の指定されたデータ
をリード命令を発行したアプリケーションに返す、ファ
イルアクセスシステムにおいて、 アプリケーションから発行される前記リード命令に対し
て、リード処理対象のファイルが暗号化対象かを判定
し、暗号化対象である場合には、暗号化されているファ
イルのうち、リード命令の処理対象のデータを復号化し
て、リード命令の発行元に返すリード手段を備えたこと
を特徴とするファイルアクセスシステム。 - 【請求項2】オープン命令が発行されたファイルの一部
のデータ領域に対する、アプリケーションから発行され
るデータのライト命令に対して、処理対象のファイルの
一部のデータ領域に対して、指定されたデータを書き込
むファイルアクセスシステムにおいて、 アプリケーションから発行される前記ライト命令に対し
て、ライト命令の処理対象のファイルが暗号化対象か判
定し、暗号化対象である場合には、暗号化されているフ
ァイルのうち、ライト命令の処理対象のファイルの一部
のデータ領域を含み、かつ、暗号化の単位の長さのデー
タを読み出して復号化し、ライト命令で指定されたデー
タを該復号化したデータに上書きし、暗号化して、処理
対象のファイルのデータ領域に格納するライト手段を備
えたことを特徴とするファイルアクセスシステム。 - 【請求項3】前記ファイルから読み出した暗号化されて
いたデータを復号化して同一サイズのデータにし、ある
いは暗号化されていないデータを暗号化して同一サイズ
のデータにしてファイルに書き込むことを特徴とする請
求項1あるいは請求項2記載のファイルアクセスシステ
ム。 - 【請求項4】ユーザ毎あるいは前記ファイル毎に前記リ
ード手段による復号化あるいは前記ライト手段による復
号化/暗号化の可あるいは不可を登録したことを特徴と
する請求項1ないし請求項3記載のいずれかのファイル
アクセスシステム。 - 【請求項5】コンピュータを動作させて、 オープン命令が発行されたファイルの一部のデータに対
するアプリケーションから発行されるリード命令に対し
て、リード処理対象のファイルが暗号化対象かを判定
し、暗号化対象である場合には、暗号化されているファ
イルのうち、リード命令の処理対象のデータを復号化し
て、リード命令の発行元に返すリード手段を機能させる
プログラムを格納した記憶媒体。 - 【請求項6】コンピュータを動作させて、 オープン命令が発行されたファイルの一部のデータに対
するアプリケーションから発行されるデータのライト命
令に対して、ライト命令の処理対象のファイルが暗号化
対象かを判定し、暗号化対象である場合には、暗号化さ
れているファイルのうち、ライト命令の処理対象のファ
イルの一部のデータ領域を含み、かつ、暗号化の単位の
長さのデータを読み出して復号化し、ライト命令で指定
されたデータを該復号化したデータに上書きし、暗号化
して、処理対象のファイルのデータ領域に格納するライ
ト手段を機能させるプログラムを格納した記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10045268A JPH10301856A (ja) | 1997-02-28 | 1998-02-26 | ファイルアクセスシステムおよび記録媒体 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9-46724 | 1997-02-28 | ||
JP4672497 | 1997-02-28 | ||
JP10045268A JPH10301856A (ja) | 1997-02-28 | 1998-02-26 | ファイルアクセスシステムおよび記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10301856A true JPH10301856A (ja) | 1998-11-13 |
Family
ID=26385238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10045268A Pending JPH10301856A (ja) | 1997-02-28 | 1998-02-26 | ファイルアクセスシステムおよび記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10301856A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005031580A1 (ja) * | 2003-09-30 | 2005-04-07 | Dai Nippon Printing Co., Ltd. | 情報処理装置、情報処理システム及びプログラム |
US7010127B2 (en) | 2000-01-26 | 2006-03-07 | Fujitsu Limited | Cryptographic communication method, file access system and recording medium |
JP2006510958A (ja) * | 2002-08-23 | 2006-03-30 | イグジット−キューブ,インク. | 暗号化オペレーティングシステム |
WO2007046497A1 (ja) * | 2005-10-20 | 2007-04-26 | Yamato Ltd. | データファイル記録システム及びデータファイル記録方法 |
JP2007513409A (ja) * | 2003-11-21 | 2007-05-24 | シンビアン ソフトウェア リミテッド | コンピューティング装置における資源の割振り |
US7240345B2 (en) | 2001-02-16 | 2007-07-03 | Sony Corporation | Data processing apparatus and associated method |
JP2009211668A (ja) * | 2007-03-28 | 2009-09-17 | Fujitsu Ltd | アクセス制御プログラム |
US8316199B2 (en) | 2006-11-07 | 2012-11-20 | Hitachi Solutions, Ltd. | Data processing control method, information processing apparatus, and data processing control system |
JP2013092960A (ja) * | 2011-10-27 | 2013-05-16 | Ntt Electornics Corp | 情報処理装置及び情報処理方法 |
-
1998
- 1998-02-26 JP JP10045268A patent/JPH10301856A/ja active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7010127B2 (en) | 2000-01-26 | 2006-03-07 | Fujitsu Limited | Cryptographic communication method, file access system and recording medium |
US7240345B2 (en) | 2001-02-16 | 2007-07-03 | Sony Corporation | Data processing apparatus and associated method |
US8141057B2 (en) | 2001-02-16 | 2012-03-20 | Sony Corporation | Data processing apparatus and associated method |
JP2006510958A (ja) * | 2002-08-23 | 2006-03-30 | イグジット−キューブ,インク. | 暗号化オペレーティングシステム |
JP4777651B2 (ja) * | 2002-08-23 | 2011-09-21 | イグジット−キューブ,インク. | コンピュータシステム及びデータ保存方法 |
WO2005031580A1 (ja) * | 2003-09-30 | 2005-04-07 | Dai Nippon Printing Co., Ltd. | 情報処理装置、情報処理システム及びプログラム |
JP2005128996A (ja) * | 2003-09-30 | 2005-05-19 | Dainippon Printing Co Ltd | 情報処理装置、情報処理システム及びプログラム |
US8918633B2 (en) | 2003-09-30 | 2014-12-23 | Dai Nippon Printing Co., Ltd. | Information processing device, information processing system, and program |
JP2007513409A (ja) * | 2003-11-21 | 2007-05-24 | シンビアン ソフトウェア リミテッド | コンピューティング装置における資源の割振り |
WO2007046497A1 (ja) * | 2005-10-20 | 2007-04-26 | Yamato Ltd. | データファイル記録システム及びデータファイル記録方法 |
JP4748165B2 (ja) * | 2005-10-20 | 2011-08-17 | 株式会社Yamato | データファイル記録システム及びデータファイル記録方法 |
US8316199B2 (en) | 2006-11-07 | 2012-11-20 | Hitachi Solutions, Ltd. | Data processing control method, information processing apparatus, and data processing control system |
JP2009211668A (ja) * | 2007-03-28 | 2009-09-17 | Fujitsu Ltd | アクセス制御プログラム |
JP2013092960A (ja) * | 2011-10-27 | 2013-05-16 | Ntt Electornics Corp | 情報処理装置及び情報処理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6378071B1 (en) | File access system for efficiently accessing a file having encrypted data within a storage device | |
JP3516591B2 (ja) | データの保存方法およびシステム並びにデータ保存処理用記録媒体 | |
JP4593774B2 (ja) | 暗号化ファイルシステム及び方法 | |
US8918633B2 (en) | Information processing device, information processing system, and program | |
US8495365B2 (en) | Content processing apparatus and encryption processing method | |
US20120233454A1 (en) | Data security for digital data storage | |
US20050114659A1 (en) | Data security for digital data storage | |
JP2012090286A (ja) | イン−ストリームデータ暗号化/復号の機能を有するメモリシステム | |
US7013392B1 (en) | File processing unit | |
WO2011157242A2 (zh) | 文件的保护方法及装置 | |
JP5354001B2 (ja) | 情報処理装置、情報処理システム及びプログラム | |
JPH07295892A (ja) | セキュアシステム | |
US20100185873A1 (en) | System and method for file processing and file processing program | |
JP5118494B2 (ja) | イン−ストリームデータ暗号化/復号の機能を有するメモリシステム | |
WO2021169121A1 (zh) | 数据存储方式转换方法、装置及存储介质 | |
JP2008524969A5 (ja) | ||
JPH10301856A (ja) | ファイルアクセスシステムおよび記録媒体 | |
JPH09251426A (ja) | ファイル暗号化システム及びその制御方法ならびに暗号ファイル受信システム及びその制御方法 | |
JP2007188445A (ja) | 情報漏えい防止システム及び情報漏えい防止方法 | |
JP4431691B2 (ja) | キャッシュ無効化処理機能を備えた暗号システム | |
JPH05233460A (ja) | ファイル保護方式 | |
JPH10275115A (ja) | データ暗号化保存方法及びシステム装置 | |
JP3402247B2 (ja) | セキュリティ統合管理装置、セキュリティ統合管理方法およびセキュリティ統合管理用プログラムを記録した記録媒体 | |
TWI331722B (en) | Coding method of information, decoding method of information, and computer readable recording media containing the same | |
JPH10340232A (ja) | ファイル複写防止装置及びファイル読込装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20020702 |