説明

Webシステム、Webサーバ装置、Webクライアント装置およびWeb情報秘匿制御方法

【課題】Webシステムにて通信路上のWeb情報およびWebキャッシュ等に格納されるWeb情報を強制的に一貫して秘匿化および完全性を保証するWeb情報秘匿制御方法を提供する。
【解決手段】WebサーバでWeb情報を秘匿化し、秘匿化されたWeb情報をWebクライアントに送信し、WebクライアントでWeb情報を秘匿化したままWebキャッシュとして格納し、Webクライアント上のWebブラウザで、Webキャッシュとして格納されたWeb情報を再生する際に、復号化するよう制御して再生することにより、通信路上のWeb情報の秘匿化およびWebキャッシュに格納されるWeb情報の秘匿化を実現する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、Webシステム、Webサーバ装置、Webクライアント装置およびWeb情報秘匿制御方法に係り、特にWeb情報の秘匿データ通信と、Webキャッシュとして格納する際の秘匿格納およびその再生制御に係るWebシステム、Webサーバ装置、Webクライアント装置およびWeb情報秘匿制御方法に関する。
【背景技術】
【0002】
Web情報の秘匿制御に関する従来技術には、大きく分けて次の2つの実現方法がある。
(1)通信路上のWeb情報の秘匿化
(2)Webキャッシュに格納されるWeb情報の秘匿化
WebサーバのWebページ内のHTMLタグまたはWebサーバから送信するHTTPヘッダにWeb情報をWebキャッシュとして格納することを抑止するようWebブラウザに働きかける記述を追加する方法がある。これは、上記(2)の実現方法である。
【0003】
また、Webクライアントのハードディスクドライブを秘匿化し、かつ、VPN等を用いて通信路を秘匿化することで、Webクライアントに格納されるWeb情報および通信路上のWeb情報を秘匿化する方法がある。これは、上記(1)の実現方法および(2)の実現方法を組み合わせたものである。
【0004】
さらに、特許文献1には、通信データの秘匿格納と再生制御に係る通信データ秘匿制御システムおよび通信データ秘匿制御方法に関する技術が開示されている。これは、上記(1)の実現方法および(2)の実現方法を組み合わせたものである。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平11−212874号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記の各技術に示されるように、Web情報秘匿制御方法においては、WebサーバとWebクライアント間で送受信されるWeb情報を秘匿化するための方法が従来から用いられている。この種の方法は、Web情報を秘匿化することでWeb情報の機密性を確保し、情報漏えいの危険性を低下させることで、これを適用するWebシステムの保全性を向上させることを目的とする。
【0007】
しかし、既存の技術では、Web情報の秘匿化を強制的に制御できない、通信路上のWeb情報を秘匿化できない、Web情報のうち一部のみを秘匿化できない、実現方法に対応していないWebクライアントからWeb情報を取得できない、Webクライアント上で動作するコンピュータウィルスによるWeb情報の漏えいを抑止できない問題があった。
【課題を解決するための手段】
【0008】
本発明は、上述した課題に対し、WebサーバでWeb情報を秘匿化し、秘匿化されたWeb情報をWebクライアントに送信し、WebクライアントでWeb情報を秘匿化したままWebキャッシュとして格納し、Webブラウザで、Webキャッシュとして格納されたWeb情報を再生する際に、復号化するよう制御して再生することにより、通信路上のWeb情報の秘匿化およびWebキャッシュに格納されるWeb情報の秘匿化を実現する。
【0009】
さらに、WebサーバでWeb情報を秘匿化する際に、Web情報のハッシュ値を取得し、WebクライアントでWebブラウザがWebキャッシュから秘匿化されたWeb情報を再生する際に、Web情報のハッシュ値を比較するよう制御することで、Web情報の完全性を保証し、Web情報の改ざんを検出することを実現する。
【0010】
上述した課題は、Webサーバと、WebクライアントとからなるWebシステムにおいて、Webクライアントは、WebサーバにWeb情報を要求し、Webサーバからの第1の回答に秘匿情報が含まれているとき、Webサーバにスクリプトファイルを要求し、Webサーバからの第2の回答に基づいて、第2のハッシュ値を計算して、第1の回答の第1のハッシュ値と一致したとき、秘匿情報の復号化を実施し、Webサーバは、Web情報の要求を解析し、二つの秘匿化タグで挟まれた範囲に含まれる文字を秘匿化し、秘匿化結果に基づいて、第1のハッシュ値を計算し、秘匿化結果と第1のハッシュ値とスクリプトファイルの格納先とをWebクライアントに送信するWebシステムにより、達成できる。
【0011】
Webクライアントからの要求を解析する要求解析部と、二つの秘匿化タグで挟まれた範囲に含まれる文字を秘匿化する秘匿化部と、秘匿化結果のハッシュ値を演算するハッシュ部と、秘匿化結果を保持するスクリプトファイルと、Webクライアントからの要求を受信し、秘匿化結果をWebクライアントに送信する通信部と、から成るWebサーバ装置により、達成できる。
【0012】
WebサーバにWeb情報を要求するWeb情報要求部と、Webサーバからの第1の回答に秘匿情報が含まれているとき、Webサーバにスクリプトファイルを要求するスクリプトファイル要求部と、Webサーバからの第2の回答に基づいて、第2のハッシュ値を計算するハッシュ部と、第1の回答の第1のハッシュ値と一致したとき、秘匿情報の復号化を実行する復号化部と、から成るなるWebクライアント装置により、達成できる。
【0013】
さらに、Webサーバと、WebクライアントとからなるWebシステムにおけるWeb情報秘匿制御方法であって、Webクライアントによる要求を送信するステップと、Webサーバによる要求を解析するステップと、二つの秘匿化タグで挟まれた範囲に含まれる文字を秘匿化するステップと、秘匿化結果の第1のハッシュ値を演算するステップと、秘匿化結果と第1のハッシュ値とスクリプトファイルの格納先とをWebクライアントに送信するステップと、Webクライアントによるスクリプトファイル要求を送信するステップと、Webサーバによるスクリプトファイルの回答を送信するステップと、Webクライアントによるスクリプトファイルの回答に基づいて、第2のハッシュ値を演算するステップと、第1のハッシュ値と第2のハッシュ値とを比較するステップと、第1のハッシュ値と第2のハッシュ値とが一致したとき、秘匿化結果の復号化を実施するステップと、から成るWeb情報秘匿制御方法により、達成できる。
【発明の効果】
【0014】
Webシステムにおいて、Web情報がWebサーバで生成され、Webクライアントに送信され、WebクライアントでWebキャッシュに格納され、Webブラウザによって再生されるまでの一連の過程において、通信路上のWeb情報およびWebキャッシュ等に格納されるWeb情報を一貫して秘匿化することで、悪意のあるユーザ、コンピュータウィルスによるWeb情報の盗聴、情報漏えい等を防止する。また、一貫してWeb情報の完全性を保証することで、Web情報の改ざん等を検出する。
【0015】
また、以上の効果を強制的に制御することで、本発明を適用するWebシステムに対する本発明の効果の例外を作らず、Webシステムにおけるセキュリティーホールの発生を防止する。
【0016】
また、あるWeb情報全体を秘匿化および完全性保証の対象とするのではなく、その一部のみを対象とすることを可能とし、これにより、発明の効果を本発明を適用したWebサーバとWebクライアントの間で実現することに加え、本発明を適用していないWebクライアントに対しても、秘匿化および完全性保証の対象としない部分のWeb情報へのアクセスを可能とする。
【図面の簡単な説明】
【0017】
【図1】WebクライアントとWebサーバとの構成を説明するブロック図である。
【図2】WebクライアントとWebサーバ間の文字データの秘匿/復号処理のシーケンス図である。
【図3】Webサーバの処理を説明するフローチャートである。
【図4】Webクライアントの処理を説明するフローチャートである。
【図5A】WebクライアントとWebサーバ間の文字データと静止画の秘匿/復号処理のシーケンス図である。
【図5B】WebクライアントとWebサーバ間の文字データと静止画の秘匿/復号処理のシーケンス図(その2)である。
【図6】秘匿化前のWeb情報を説明する図である。
【図7】秘匿化後のWeb情報を説明する図である。
【図8】秘匿化後のWeb情報を説明する図である。
【図9】WebクライアントとWebサーバとの構成を説明するブロック図である。
【図10】WebクライアントとWebサーバ間の処理のシーケンス図である。
【図11】Webクライアントの処理を説明するフローチャートである。
【図12】WebクライアントとWebサーバとの構成を説明するブロック図である。
【図13】秘匿化前のWeb情報を説明する図である。
【図14】秘匿化後のWeb情報を説明する図である。
【発明を実施するための形態】
【0018】
以下、本発明の実施の形態について、実施例を用い図面を参照しながら、詳細に説明する。なお、実質同一部位には同じ参照番号を振り、説明は繰り返さない。
【実施例1】
【0019】
図1を参照して、WebクライアントとWebサーバとの構成を説明する。Webクライアント1は、Webブラウザ2と、Webキャッシュ3と、COM4と、PLUGIN5と、共通部6と、秘匿/復号部7と、ハッシュ部8とから構成されている。一方、Webサーバ9は、Webサーバ用ソフトウェア10と、FILTER11と、共通部12と、秘匿/復号部13と、ハッシュ部14と、スクリプトファイル15とから構成されている。ここで、Webブラウザ2およびWebキャッシュ3は、一般的なコンピュータに組み込まれている標準的な製品を利用している。
【0020】
秘匿/復号部7および秘匿/復号部13は、Web情報の機密性確保のための機能であり、共通部6または共通部12から呼び出される。ここで秘匿/復号部7および秘匿/復号部13で使用するアルゴリズムは、公知のアルゴリズムを採用している。秘匿/復号部7は、Webクライアント1に、秘匿/復号部13は、Webサーバ9にそれぞれインストールされる。
【0021】
ハッシュ部8およびハッシュ部14は、Web情報の完全性確保のための機能であり、共通部6または共通部12から呼び出される。ここでハッシュ部8およびハッシュ部14で使用するハッシュ関数のアルゴリズムは、公知のアルゴリズムを採用している。ハッシュ部8は、Webクライアント1に、ハッシュ部14は、Webサーバ9にそれぞれインストールされる。
【0022】
共通部6および共通部12は、秘匿/復号部7および秘匿/復号部13、ハッシュ部8およびハッシュ部14を呼び出すためのインタフェースを具備する。共通部6および共通部12は、その他にも共通的に利用される処理を統合したソフトウェアである。共通部6は、Webクライアント1に、共通部12は、Webサーバ9にそれぞれインストールされる。
【0023】
COM4は、Web情報の復号時の処理で必要なソフトウェアである。PLUGIN5は、Webブラウザ2の機能を拡張し、Web情報の復号時の処理で必要なソフトウェアである。
【0024】
FILTER11は、Webサーバ用ソフトウェア10上で動作し、送受信されるWeb情報に様々な加工を施すソフトウェアである。スクリプトファイル15は、秘匿化されたWeb情報の復号時の処理で必要となるソフトウェアである。
【0025】
実施例1では、Webクライアント1とWebサーバ9間で通信されるWeb情報が、秘匿化対象の場合および秘匿化対象でない場合の説明を行なう。ここで、この秘匿化対象には静止画像が含まれておらず、テキストデータのみの場合とする。
【0026】
表1 秘匿化対象部位を示すタグ
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
項番 タグ名 説明
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
1 <div id="crypto">/<DIV ID="CRYPTO"> 対象部位の開始位置を表す
2 </div><!--crypto-->/</DIV><!--CRYPTO--> 対象部位の終端を表す
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

Web情報の提供者は、提供するHTMLファイルへ表1に示すタグを埋め込む。このタグは、HTMLの規約に則った独自拡張のタグであり、これらのタグで囲まれた部分が秘匿化対象範囲となる。なお、この秘匿化対象範囲を実際に秘匿化した箇所からハッシュ値を取得することで、Web情報の完全性を確保する。
【0027】
図2を参照して、WebクライアントとWebサーバ間の文字データの秘匿/復号処理を説明する。図2において、Webクライアント1のWebブラウザ2は、Webサーバ9のWebサーバ用ソフトウェア10に対してWeb情報の要求を行なう(S11)。Webサーバ用ソフトウェア10は、FILTER11へその情報を渡し、FILTER11が受信した要求を解析し、要求されたWeb情報に秘匿化対象を示すタグが存在するかを判定する(S12)。ここでは、秘匿化する文字データが存在するので、秘匿/復号部13は、あらかじめ用意されている秘匿化鍵を利用して秘匿化対象範囲の秘匿化を行ない、その結果を共通部12経由でFILTER11へと返す(S13)。ハッシュ部14は、秘匿化された文字データからハッシュ値を算出する(S14)。
【0028】
FILTER11は、Webサーバ9が所有している秘匿化対象範囲外のWeb情報、FILTER11が管理するメモリ上に格納されている秘匿化されたデータおよびハッシュ値、スクリプトファイル15の呼出命令および格納先を組み合わせて、新たなメモリ領域に回答用のWeb情報を生成する(S16)。Webサーバ9は、構築した回答データをWebクライアントに送信する(S17)。
【0029】
Webブラウザ2は、回答されたWeb情報をWebキャッシュ3へと格納する(S18)。Webブラウザ2は、Webキャッシュ3に格納されたWeb情報を表示するために、Webキャッシュ3に格納されたWeb情報をメモリ上に読み込み、Web情報の解析を行なう(S19)。ここで、解析したWeb情報が秘匿化されていないWeb情報であれば、そのままWebブラウザ2は表示処理を行なう。
【0030】
しかし、ここでは、解析したWeb情報が秘匿化されているので、Webブラウザ2は、Webサーバ9へとスクリプトファイル15の要求を行なう(S21)。Webサーバ9は、Webクライアント1にスクリプトファイルの回答を送信する(S22)。Webブラウザ2は、回答されたスクリプトファイルに記述されている処理に従い、Web情報の内容を共通部6経由でハッシュ部8へと渡し、ハッシュ部8は、ハッシュ値を算出する(S23)。Webブラウザ2は、そして算出されたハッシュ値とWeb情報内に記されているハッシュ値の比較を行ない、ここでは、両ハッシュ値が一致しているので、秘匿化部分および復号処理に必要となる情報を共通部6経由で秘匿/復号部7へと渡し、秘匿/復号部7は、秘匿化部分の復号処理を行なう(S24)。Webブラウザ2は、共通部6経由でその結果を受け取り、表示する(S26)。なお、上述した処理において、秘匿化データに関するWebブラウザ2の処理は、PLUGIN5が担う。
【0031】
このとき、復号化されたテキストデータは、ハードディスクドライブには格納されることはなくWebブラウザ2が管理するメモリ上のみに展開され、Webブラウザ2の動作により揮発する。したがって、Webクライアント1上には復号化されたWeb情報は、一切残らない。
【0032】
図3を参照して、Webサーバの処理を説明する。この処理フローは、Webクライアントからの要求受信により、開始される。図3において、Webサーバ9は、Webクライアント1の要求を解析する(S402)。Webサーバ9は、要求が秘匿静止画像か判定する(S403)。YESのとき、Webサーバ9は、当該データが既に存在しているか判定する(S404)。YESのとき、Webサーバ9は、データをWebクライアント1に送信して(S413)、終了する。ステップ404でNOのとき、Webサーバ9は、静止画像種別を判別する(S405)。Webサーバ9は、静止画像を秘匿化して(S406)、ステップ413に遷移する。
【0033】
ステップ403でNOのとき、Webサーバ9は、要求が秘匿化対象か判別する(S407)。YESのとき、Webサーバ9は、秘匿化対象が文字のみか判定する(S408)。YESのとき、Webサーバ9は、文字の秘匿化を実行する(S410)。Webサーバ9は、ハッシュ値を算出する(S411)。Webサーバ9は、回答データを構築して(S412)、ステップ413に遷移する。ステップ408でNOのとき、Webサーバ9は、タグの記述変換を実施して(S409)、ステップ413に遷移する。
【0034】
ここで、ステップ409のタグの記述変換は、Webブラウザには、HTMLファイルを受信すると、その書式を変更する内部処理があり、Webサーバが送信したデータに基づくハッシュ値と、Webクライアントが受信したデータに基づくハッシュ値を一致させるために実施する。
【0035】
図4を参照して、Webクライアントの処理を説明する。この処理フローは、Webサーバへの要求送信により、開始される。図4において、Webクライアント1は、Webサーバ9から回答を受信する(S502)。Webクライアント1は、Webキャッシュ3へ回答データを保存する(S503)。Webクライアント1は、Webキャッシュ3から回答データを読み込む(S504)。Webクライアント1は、データが秘匿化されているか判定する(S505)。YESのとき、Webクライアント1は、Webサーバ9へスクリプトファイルを要求する(S506)。
【0036】
Webクライアント1は、Webサーバ9からスクリプトファイルを受信する(S507)。Webクライアント1は、ハッシュ値を算出する(S508)。Webクライアント1は、受信したハッシュ値と算出したハッシュ値が等しいか判定する(S509)。YESのとき、Webクライアント1は、文字を復号化する(S511)。Webクライアント1は、静止画像が含まれているか判定する(S512)。YESのとき、Webクライアント1は、Webサーバ9へ当該データ要求を送信する(S513)。Webクライアント1は、Webサーバ9から回答データを受信する(S514)。
【0037】
Webクライアント1は、Webキャッシュ3へ回答データを保存する(S515)。Webクライアント1は、Webキャッシュ3から回答データを読み込む(S516)。Webクライアント1は、静止画像を復号化する(S517)。Webクライアント1は、静止画像を描画する(S518)。Webクライアント1は、Webブラウザ2に表示して(S519)、終了する。ステップ509でNOのとき、Webクライアント1は、警告文を表示して(S510)、終了する。ステップ505でNOのとき、Webクライアント1は、そのままステップ519に遷移する。
【実施例2】
【0038】
実施例2のWebクライアント1とWebサーバ9との構成は、図1を参照して説明した実施例1と同様である。しかし、秘匿化対象は、テキストデータのみならず、静止画像が含まれている。
【0039】
表2 静止画像形式と秘匿化データ形式の対応
−−−−−−−−−−−−−−−−−−−−−−−
項番 静止画像形式 秘匿化データ形式
−−−−−−−−−−−−−−−−−−−−−−−
1 GIF形式 GIS形式
2 Bitmap形式 GIB形式
3 JPEG形式 GIJ形式
4 PNG形式 GIP形式
−−−−−−−−−−−−−−−−−−−−−−−

静止画像をそのまま秘匿化し、復号してブラウザに表示することは技術的に困難である。そこで、本実施例では、要求された静止画像形式で秘匿化を行ったあと、表2に示す独自に定義したオブジェクト形式(秘匿化データ形式)へ変換する。この秘匿化データ形式で端末装置へと送信し、復号することにより、元の静止画像形式に戻すこととした。
【0040】
図5を参照して、WebクライアントとWebサーバ間の文字データと静止画像の秘匿/復号処理を説明する。図5Aにおいて、Webクライアント1は、Webサーバ9に対してWeb情報の要求が行なう(S31)。Webサーバ9は、受信した要求を解析し、要求されたWeb情報に秘匿化対象を示すタグが存在するかを判定する(S32)。ここでは、秘匿化する文字データと静止画像が存在するので、Webサーバ9は、タグの記述変換を実施する(S33)。ここで、タグの記述変更は、静止画像を表すタグで記述されている内容を任意のオブジェクトを格納可能なタグへと変更し、そのタグ中に、Webクライアント1のPLUGIN5を呼び出すための記述を追記する。また、この中に記述された静止画像名の拡張子を、独自の拡張子へと変更する。Webサーバ9は、あらかじめ用意されている秘匿化鍵を利用して秘匿化対象範囲の秘匿化を行なう(S34)。Webサーバ9は、秘匿化されたデータからハッシュ値を算出する(S36)。Webサーバ9は、所有している秘匿化対象範囲外のWeb情報およびメモリ上に格納されている秘匿化されたデータおよびハッシュ値、スクリプトファイル15の呼出命令および格納先を組み合わせて、新たなメモリ領域に回答用のWeb情報を生成する(S37)。Webサーバ9は、回答をWebクライアント1に送信する(S38)。
【0041】
Webクライアント1は、Webキャッシュ3に回答データを保存する(S39)。Webクライアント1は、Webキャッシュ3から回答データを読み込む(S41)。Webクライアント1は、Webサーバ9にスクリプトファイル要求を送信する(S43)。Webサーバ9は、Webクライアント1にスクリプトファイル回答を送信する(S44)。Webクライアント1は、受信したスクリプトファイルからキャッシュ値を算出する(S46)。受信したハッシュ値と、算出したハッシュ値とは、ここでは、一致しているので、Webクライアント1は、文字の復号化を実施する(S47)。Webクライアント1は、Webサーバ9に該当データを要求する(S48)。
【0042】
図5Bにおいて、Webサーバ9は、Webクライアント1からの要求を解析する(S49)。Webサーバ9は、静止画像種別を判別する(S51)。Webサーバ9は、静止画像を秘匿化する(S52)。Webサーバ9は、秘匿化静止画像データをWebクライアント1に送信する(S53)。Webクライアント1は、Webキャッシュ3に回答データを保存する(S54)。Webクライアント1は、Webキャッシュ3から回答データを読み込む(S56)。Webクライアント1は、静止画像を復号化する(S57)。Webクライアント1は、静止画像を描画する(S58)。Webクライアント1は、Webブラウザ2へ表示する(S59)。
【0043】
このとき、復号化されたテキストデータおよびオブジェクトデータは、ハードディスクドライブ等には格納されることはなくWebブラウザ2が管理するメモリ上のみに展開される。すなわち、復号化されたテキストデータおよびオブジェクトデータは、Webブラウザ2の動作により揮発する。また、Webキャッシュ3に格納されているデータも秘匿化されているデータのみであるため、Webクライアント1上には復号化されたWeb情報は一切残らない。
なお、Webクライアント1とWebサーバ9の処理フローは、実施例1で説明した図3または図4と同一である。
【0044】
図6、図7および図8を参照して、秘匿化前後のWeb情報を説明する。図6において、このWeb情報は、3つの画像ファイル”test1.gif”、”test2.jpg”、”test3.bmp”を表示する。このうち、<div id="crypto">と、</div><!--crypto-->とに挟まれた”test2.jpg”と文字データである”CRYPTO-TEST-DATA”とが秘匿化される。一方、2つの画像ファイル”test1.gif”、”test3.bmp”は、秘匿化されずに送信される。このとき、Webサーバ9は、<img>タグで記述された”test2.jpg”の記述を、図8に示す形式<object ”PLUGIN5呼出し記述””格納先情報” width="100" height="80">へ変更し(S33)、<div id="crypto">と、</div><!--crypto-->とに挟まれた箇所の秘匿化を行い(S34)、図7の形式に変換した後にWebクライアント1へ送信する。ここで、<object>タグは、HTML規則に則ったタグであり、データをダウンロードするリンクを生成する。”PLUGIN5呼出し記述”は、Webクライアント1内のPLUGIN5を呼び出す。PLUGIN5は、”格納先情報”に格納された秘匿化された静止画像の復号化を制御する。また、widthおよびheightは静止画像の幅および高さを表す。
【0045】
図7において、秘匿化されたWeb情報は、先頭から順に、
(1)秘匿化対象を示すタグの直前までのデータ
(2)秘匿化鍵や文字コード、秘匿化したデータ等
(3)秘匿化対象を示すタグ以降から</body>直前までのデータ
(4)ハッシュ値やスクリプトファイル15の呼出命令および格納先等、Webクライアント1における復号処理で必須となる情報
(5)</body>以降のデータ
となっている。
【0046】
秘匿化されたデータのdata1は、秘匿鍵である。data2はテキストの文字コードである。data3は、秘匿化後のテキストである。<div id="Hash">タグのtitleは、MD5(Message Digest 5)により算出したハッシュ値である。<script>タグには、スクリプトファイルの呼出命令および格納場所が記載されている。
【0047】
図7のWeb情報は、図2のステップ17および図5Aのステップ38でWebサーバ9から、Webクライアント1へ送信される。Webクライアント1は、Web情報を参照して、スクリプトファイルの要求を行なう。
【0048】
Webクライアント1は、スクリプトファイル内に記載されたプログラムにより、Webクライアント1のCOM4を呼出す。COM4は、完全性確認(ハッシュ値比較)および復号処理を実施する。
【0049】
本実施例によれば、復号化されたテキストデータおよび静止画像は、Webブラウザ2が管理するメモリ上のみに展開され、Webブラウザ2の動作により揮発する。したがって、Webクライアント1上には復号化されたWeb情報は、一切残らない。
【実施例3】
【0050】
図9を参照して、実施例3のWebクライアントとWebサーバとの構成を説明する。図9において、図1との対比から明らかなように、図9のWebサーバ9は、図1のWebサーバ9と同一である。一方、図9のWebクライアント16は、図1のWebクライアント1から、COM4と、PLUGIN5と、共通部6と、秘匿/復号部7と、ハッシュ部8とを削除した構成である。すなわち、Webクライアント16は、秘匿データの復号化ができない。
【0051】
図10を参照して、WebクライアントとWebサーバ間の処理を説明する。図10において、Webクライアント16は、Webサーバ9に要求を送信する(S71)。Webサーバ9は、受信した要求を解析する(S72)。Webサーバ9は、タブの記述を変換する(S73)。Webサーバ9は、文字の秘匿化を実施する(S74)。Webサーバ9は、ハッシュ値を算出する(S76)。Webサーバ9は、回答データを構築する(S77)。Webサーバ9は、Web情報の回答を、Webクライアント16に送信する(S78)。Webクライアント16は、Webキャッシュ3に回答データを保存する(S81)。Webクライアント16は、Webキャッシュ3から回答データを読み込む(S82)。Webクライアント16は、Webブラウザ2に表示する(S83)。
【0052】
図11を参照して、Webクライアント16の処理を説明する。この処理フローは、Webサーバ9へWebクライアント16が要求を送信することで開始される。図11において、Webクライアント16は、Webサーバ9からの回答を受信する(S602)。Webクライアント16は、Webキャッシュ3に回答データを送信する(S603)。Webクライアント16は、Webキャッシュ3から回答データを読み込む(S604)。Webクライアント16は、読み込んだ回答データをブラウザ2に表示して(S605)、終了する。
実施例3によれば、機密性を確保する対象は保護されたまま、その他の部分を公開することができる。
【実施例4】
【0053】
図12を参照して、他のWebクライアントとWebサーバとの構成を説明する。図12において、実施例4のWebクライアント17でが、実施例2のPLUGIN5の代わりに、COM4Aが制御を行なうように変更している。また、Webサーバ9Aは、実施例2のスクリプトファイル15の代わりにスクリプトファイル15Aを保持する。
【0054】
図13と図14を参照して、秘匿前後の静止画像のWeb情報を説明する。図13において、秘匿化を施す静止画像は、<div id="crypto">と、</div><!--crypto-->とに挟まれた”test2.jpg”である。
【0055】
図14においてWebサーバ9Aは、静止画像を表すタグについて、<WISE”COM4A呼出し記述””格納先情報”width="100"height="80">のタグに変換する。ここで、WISEタグは、任意のオブジェクトを格納する独自な拡張タグであり、”COM4A呼出し記述”でWebクライアント17のCOM4Aを呼出す。COM4Aは、”格納先情報”に保存された、秘匿化された静止画像の復号化を制御する。また、widthおよびheightは静止画像の幅および高さを表す。
【0056】
Web情報の提供者は、提供するHTMLファイルへ表1のタグを埋め込む。このタグは、HTMLの規約に則った独自の拡張タグであり、このタグで囲まれた部分が秘匿化対象範囲となる。なお、この秘匿化対象範囲を実際に秘匿化した箇所からハッシュ値を取得することで、Web情報の完全性を確保する。
【0057】
まず、Webクライアント17のWebブラウザ2は、Webサーバ9AのWebサーバ用ソフトウェア10に対してWeb情報の要求を行なう。Webサーバ用ソフトウェア10は、FILTER11へその情報を渡す。FILTER11は、受信した要求を解析し、要求されたWeb情報に秘匿化対象を示すタグが存在するかを判定する。
【0058】
要求されたWeb情報に秘匿化対象を示すタグが存在しなければ、Webサーバ用ソフトウェア10は、要求されたWeb情報をWebブラウザ2へと回答する。
【0059】
要求されたWeb情報に秘匿化対象を示すタグが存在する場合、Webサーバ用ソフトウェア10は、次に秘匿化範囲に静止画像が存在するかを判定する。
【0060】
秘匿化対象範囲に静止画像が含まれている場合、FILTER11は、その静止画像がサポートしている静止画像の種類であるかを判定する。この判定は、静止画像を表すタグ内に記述された静止画像名の拡張子を参照することで実施する。秘匿化対象範囲に含まれている静止画像の種類がサポートしていない場合は、秘匿化対象範囲に静止画像が含まれていない場合の処理を実行する。
【0061】
秘匿化対象範囲に含まれている静止画像の種類をサポートしている場合、FILTER11は、静止画像を表すタグで記述されている内容を、任意のオブジェクトを格納可能なWISEタグへと変更し、そのタグ中に、Webクライアント17のCOM4Aを呼び出すための記述を追記する。また、この中に記述された静止画像名の拡張子を、表2の独自の拡張子へと変更する。
【0062】
その後、FILTER11は、秘匿化対象範囲を共通部12経由で秘匿/復号部13へ渡す。秘匿/復号部13は、あらかじめ用意されている秘匿化鍵を利用して秘匿化対象範囲の秘匿化を行なう。秘匿/復号部13は、その結果を共通部12経由でFILTER11へと返す。
【0063】
さらに、Web情報の完全性を確保するために、共通部12経由で秘匿/復号部13から返ってきたデータについて、FILTER11は、共通部12経由でハッシュ部14へ渡す。ハッシュ部14は、そのデータからハッシュ値を算出する。なお、これらの秘匿化された文字データおよびハッシュ値は、FILTER11が管理するメモリ上に格納されている。
【0064】
その後、FILTER11は、要求されたWeb情報をWebクライアント1に回答するため、Webサーバ9Aが所有している秘匿化対象範囲外のWeb情報並びにFILTER11が管理するメモリ上に格納されている秘匿化されたデータおよびハッシュ値を組み合わせて、新たなメモリ領域に回答用のWeb情報を生成する。具体的には、以下の手順となる。
【0065】
まず、秘匿化対象を示すタグの直前までを新たなメモリ領域へ格納する。次に、秘匿化されたデータをその直後の領域へ格納する。秘匿化対象を示すタグ以降から</body>直前までのデータを格納する。次に、秘匿化処理に使用した秘匿鍵データの情報、ハッシュ値、スクリプトファイル15Aの呼出命令および格納先情報等、Webクライアント17における復号処理で必須となる情報をその直後の領域へ格納する。最後に</body>以降のデータをその直後の領域へ格納することで、回答用のWeb情報を構築する。
【0066】
このメモリ上に構築されたWeb情報を、Webサーバ9AはFILTER11の機能でWebクライアント17のWebブラウザ2へと回答する。Webクライアント17のWebブラウザ2は、Webサーバ9Aの処理により回答されたWeb情報をWebキャッシュ3へと格納する。そしてWebブラウザ2がWebキャッシュ3に格納されたWeb情報を表示するために、Webキャッシュ3に格納されたWeb情報をメモリ上に読み込み、Web情報の解析を行なう。ここで、解析したWeb情報が秘匿化されていないWeb情報であれば、そのままWebブラウザ2は表示処理を行なう。
【0067】
一方、解析したWeb情報が秘匿化されている場合は、Webブラウザ2は、Webサーバ9Aへとスクリプトファイル15Aの要求を行ない、回答されたスクリプトファイル15AをWebキャッシュ3へと格納する。このスクリプトファイル15Aに記述されている処理に従い、Web情報の内容を共通部6経由でハッシュ部8へと渡しハッシュ値を算出する。そして算出されたハッシュ値とWeb情報内に記されているハッシュ値の比較を行なう。両ハッシュ値が一致していない場合、利用者に対する警告メッセージをWebブラウザ2の画面に表示し、再度Webサーバ9Aへの処理を実施するよう促す。
【0068】
両ハッシュ値が一致している場合、秘匿化部分および復号処理に必要となる情報を共通部6経由で秘匿/復号部7へと渡す。秘匿/復号部7は、秘匿化部分の復号処理を行なう。Webブラウザ2は、共通部6経由でその結果を受け取る。このとき、Webブラウザ2は、受け取った結果の中に静止画像の秘匿化を示す任意のオブジェクトを格納可能なタグが含まれているかどうかを判定する。
【0069】
その結果、任意のオブジェクトを格納可能なタグが含まれている場合、Webブラウザ2は任意のオブジェクトを格納可能なタグ内に記述された情報に従い、Webサーバ9Aへと秘匿化された静止画像データの要求を行なう。この秘匿化された静止画像データは、独自の拡張子を有したデータである。
【0070】
Webサーバ用ソフトウェア10は、Webクライアント17から、表2の秘匿化データ形式の拡張子を有した秘匿化された静止画像データの要求を受信すると、その情報をFILTER11へ渡す。FILTER11は、要求されたデータがWebサーバ9Aのハードディスクドライブに存在するかを確認する。
【0071】
その結果、要求されたデータがハードディスクドライブに存在する場合、Webサーバ9Aは、FILTER11の機能で該当データをWebクライアント1のWebブラウザ2へと回答する。
【0072】
一方、要求されたデータがハードディスクドライブに存在しない場合、FILTER11は、秘匿化される前の静止画像のバイナリデータを共通部12経由で秘匿/復号部13へ渡す。秘匿/復号部13は、秘匿化を実施する。そして、秘匿/復号部13は、その結果を共通部12経由でFILTER11へと返す。最後にFILTER11は、秘匿化されたデータの先頭に独自のシグネチャを追加で付与し、Webクライアント17のWebブラウザ2へと回答する。
【0073】
Webクライアント17のWebブラウザ2は、Webサーバ9Aから回答されたWeb情報をWebキャッシュ3へと格納する。Webブラウザ2が任意のオブジェクトを格納可能なタグ内の情報をWebブラウザ2へ表示しようとすると、任意のオブジェクトを格納可能なタグ内に記述された情報からCOM4Aが呼び出される。COM4Aは、表示しようとする秘匿化された静止画像データの秘匿化部分を共通部6経由で秘匿/復号部7へと渡す。秘匿/復号部7は、秘匿化部分の復号化を行なう。そして、Webブラウザ2は、その結果を共通部6経由で受け取り、Webブラウザ2上へ表示するために描画処理を行なう。
【0074】
このとき、復号化されたテキストデータおよびオブジェクトデータは、ハードディスクドライブ等には格納されることはなくWebブラウザ2が管理するメモリ上のみに展開され、Webブラウザ2の動作により揮発する。また、Webキャッシュ3に格納されているデータも秘匿化されているデータのみであるため、Webクライアント17上には復号化されたWeb情報は一切残らない。
【0075】
また、COM4Aは、実施例2のPLUGIN5の機能を実現する。しかし、PLUGIN5が、ブラウザの種類に依存するのに対して、COM4Aは、ブラウザの種類に依存せず、処理を行なうことができる。
【符号の説明】
【0076】
1…Webクライアント、2…Webブラウザ、3…Webキャッシュ、4…COM、5…プラグイン、6…共通部、7…秘匿/復号部、8…ハッシュ部、9…本発明を適用したWebサーバ、10…Webサーバ用ソフトウェア、11…フィルタ、12…共通部、13…秘匿/復号部、14…ハッシュ部、15…スクリプトファイル、16…Webクライアント、17…Webクライアント。

【特許請求の範囲】
【請求項1】
Webサーバと、WebクライアントとからなるWebシステムにおいて、
前記Webクライアントは、前記WebサーバにWeb情報を要求し、前記Webサーバからの第1の回答に秘匿情報が含まれているとき、前記Webサーバにスクリプトファイルを要求し、前記Webサーバからの第2の回答に基づいて、第2のハッシュ値を計算して、前記第1の回答の第1のハッシュ値と一致したとき、前記秘匿情報の復号化を実施し、
前記Webサーバは、前記Web情報の要求を解析し、二つの秘匿化タグで挟まれた範囲に含まれる文字を秘匿化し、秘匿化結果に基づいて、前記第1のハッシュ値を計算し、前記秘匿化結果と前記第1のハッシュ値と前記スクリプトファイルの格納先とを前記Webクライアントに送信することを特徴とするWebシステム。
【請求項2】
Webクライアントからの要求を解析する要求解析部と、二つの秘匿化タグで挟まれた範囲に含まれる文字を秘匿化する秘匿化部と、秘匿化結果のハッシュ値を演算するハッシュ部と、前記秘匿化結果を保持するスクリプトファイルと、前記Webクライアントからの前記要求を受信し、前記秘匿化結果を前記Webクライアントに送信する通信部と、から成ることを特徴とするWebサーバ装置。
【請求項3】
請求項2に記載のWebサーバ装置であって、
前記秘匿化部は、前記Webクライアントからの再要求に基づいて、前記挟まれた範囲に含まれる静止画像を秘匿化することを特徴とするWebサーバ装置。
【請求項4】
WebサーバにWeb情報を要求するWeb情報要求部と、前記Webサーバからの第1の回答に秘匿情報が含まれているとき、前記Webサーバにスクリプトファイルを要求するスクリプトファイル要求部と、前記Webサーバからの第2の回答に基づいて、第2のハッシュ値を計算するハッシュ部と、前記第1の回答の第1のハッシュ値と一致したとき、前記秘匿情報の復号化を実行する復号化部と、から成ることを特徴とするWebクライアント装置。
【請求項5】
請求項4に記載のWebクライアント装置であって、
さらに静止画像要求部を含み、
この静止画像要求部は、前記Webサーバに静止画像の送信を要求し、
秘匿化された静止画像を受信したとき、前記復号化部は、前記秘匿化された静止画像の復号化を実行することを特徴とするWebクライアント装置。
【請求項6】
Webサーバと、WebクライアントとからなるWebシステムにおけるWeb情報秘匿制御方法であって、
前記Webクライアントによる要求を送信するステップと、
前記Webサーバによる
要求を解析するステップと、
二つの秘匿化タグで挟まれた範囲に含まれる文字を秘匿化するステップと、
秘匿化結果の第1のハッシュ値を演算するステップと、
前記秘匿化結果と前記第1のハッシュ値と前記スクリプトファイルの呼出命令および格納先とを前記Webクライアントに送信するステップと、
Webクライアントによるスクリプトファイル要求を送信するステップと、
Webサーバによるスクリプトファイルの回答を送信するステップと、
Webクライアントによる
前記スクリプトファイルの回答に基づいて、第2のハッシュ値を演算するステップと、
前記第1のハッシュ値と前記第2のハッシュ値とを比較するステップと、
前記第1のハッシュ値と前記第2のハッシュ値とが一致したとき、前記秘匿化結果の復号化を実施するステップと、
から成ることを特徴とするWeb情報秘匿制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5A】
image rotate

【図5B】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2012−168703(P2012−168703A)
【公開日】平成24年9月6日(2012.9.6)
【国際特許分類】
【出願番号】特願2011−28699(P2011−28699)
【出願日】平成23年2月14日(2011.2.14)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】