(57)【要約】【課題】文字列をウェブブラウザに対して隠蔽したままで、文字列を表示する。【解決手段】プラグイン３２は、オリジナルの文字列であるオリジナル文字列に代えてダミー文字列をＷｅｂブラウザ３１に出力する。描画処理部３４は、Ｗｅｂブラウザ３１からダミー文字列の描画を要求された場合に、オリジナル文字列の出力をプラグイン３２に要求し、プラグイン３２から出力されたオリジナル文字列を取得し、取得したオリジナル文字列を描画する。プラグイン３２は、描画処理部３４からオリジナル文字列の出力を要求された場合に、オリジナル文字列を描画処理部３４に出力する。【選択図】図１
2015176262.tif 000002
【特許請求の範囲】
【請求項１】
ウェブブラウザを有するデータ処理装置であって、
オリジナルの文字列であるオリジナル文字列に代えてダミー文字列を前記ウェブブラウザに出力するダミー文字列出力部と、
前記ウェブブラウザから前記ダミー文字列の描画を要求された場合に、オリジナル文字列の出力を要求し、出力されたオリジナル文字列を取得し、取得したオリジナル文字列を描画する描画処理部と、
前記描画処理部から前記オリジナル文字列の出力を要求された場合に、前記オリジナル文字列を前記描画処理部に出力するオリジナル文字列出力部とを有することを特徴とするデータ処理装置。
【請求項２】
前記ダミー文字列出力部は、
前記オリジナル文字列と同数の文字数のダミー文字列を前記ウェブブラウザに出力することを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記ダミー文字列出力部は、
前記オリジナル文字列の識別子が含まれるダミー文字列を前記ウェブブラウザに出力し、
前記描画処理部は、
前記ウェブブラウザから前記ダミー文字列の描画を要求された場合に、前記ダミー文字列に含まれる識別子を前記オリジナル文字列出力部に通知して、前記オリジナル文字列の出力を前記オリジナル文字列出力部に要求し、
前記オリジナル文字列出力部は、
前記識別子に対応するオリジナル文字列を前記描画処理部に出力することを特徴とする請求項１に記載のデータ処理装置。
【請求項４】
前記ダミー文字列出力部は、
前記オリジナル文字列の代わりにダミー文字列が用いられていることを前記描画処理部に判別させる制御コードが含まれるダミー文字列を前記ウェブブラウザに出力し、
前記描画処理部は、
前記ウェブブラウザから前記ダミー文字列の描画を要求された場合に、前記制御コードに基づき、前記オリジナル文字列の代わりに前記ダミー文字列が用いられていることを判別し、前記オリジナル文字列の出力を前記オリジナル文字列出力部に要求することを特徴とする請求項１に記載のデータ処理装置。
【請求項５】
前記ダミー文字列出力部は、
前記描画処理部は前記オリジナル文字列の代わりに前記ダミー文字列が用いられていることを判別することができるが前記ウェブブラウザは前記オリジナル文字列の代わりに前記ダミー文字列が用いられていることを判別することができない制御コードが含まれるダミー文字列を前記ウェブブラウザに出力することを特徴とする請求項４に記載のデータ処理装置。
【請求項６】
前記ダミー文字列出力部は、
前記ウェブブラウザと前記描画処理部との間で事前に決定された制御コードが含まれるダミー文字列を前記ウェブブラウザに出力することを特徴とする請求項４に記載のデータ処理装置。
【請求項７】
前記描画処理部は、
前記ウェブブラウザから前記ダミー文字列の描画を要求された場合に、前記ダミー文字列を描画するとともに、オリジナル文字列の出力を前記オリジナル文字列出力部に要求し、前記オリジナル文字列出力部から出力されたオリジナル文字列を取得し、取得したオリジナル文字列を前記ダミー文字列の描画に重畳させて描画することを特徴とする請求項１に記載のデータ処理装置。
【請求項８】
前記データ処理装置は、更に、
前記ウェブブラウザから前記オリジナル文字列の描画位置が定義されるレイアウト情報を取得するレイアウト情報取得部を有し、
前記描画処理部は、
前記オリジナル文字列出力部から前記オリジナル文字列を取得するとともに、前記レイアウト情報取得部から前記レイアウト情報を取得し、
前記レイアウト情報に示される描画位置にて前記オリジナル文字列を描画することを特徴とする請求項７に記載のデータ処理装置。
【請求項９】
前記レイアウト情報取得部は、
前記ウェブブラウザから前記オリジナル文字列のフォント、文字サイズ、文字色の少なくともいずれかが定義されるレイアウト情報を取得し、
前記描画処理部は、
前記オリジナル文字列出力部から前記オリジナル文字列を取得するとともに、前記レイアウト情報取得部から前記レイアウト情報を取得し、
前記レイアウト情報に示されるフォント、文字サイズ、文字色の少なくともいずれかにて前記オリジナル文字列を描画することを特徴とする請求項８に記載のデータ処理装置。
【請求項１０】
前記レイアウト情報取得部は、
前記レイアウト情報として、前記ウェブブラウザからＣＳＳ（Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔ）情報を取得することを特徴とする請求項８又は９に記載のデータ処理装置。
【請求項１１】
ウェブブラウザを有するコンピュータに、
オリジナルの文字列であるオリジナル文字列に代えてダミー文字列を前記ウェブブラウザに出力するダミー文字列出力処理と、
前記ウェブブラウザから前記ダミー文字列の描画を要求された場合に、オリジナル文字列の出力を要求し、出力されたオリジナル文字列を取得し、取得したオリジナル文字列を描画する描画処理と、
前記描画処理から前記オリジナル文字列の出力を要求された場合に、前記オリジナル文字列を前記描画処理に出力するオリジナル文字列出力処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェブブラウザ（以下、Ｗｅｂブラウザとも表記する）による電子文書の閲覧システムに関する。
【背景技術】
【０００２】
マークアップ言語であるＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）の普及や、ＨＴＭＬで記述された文書を閲覧するＷｅｂブラウザの高性能化に伴い、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）や組み込み端末などのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）として、Ｗｅｂブラウザを用いた実装が行われてきている。
【０００３】
Ｗｅｂブラウザは、主にＷｅｂサーバから送付されてくるＷｅｂデータの閲覧に用いられるが、Ｗｅｂサーバ側からの情報だけでなく、ユーザのＰＣや組み込み端末内のローカルデータを用いたＷｅｂブラウザの表示を実施したいニーズがある。
例えば、特許文献１には、Ｗｅｂサーバ側で作成したＷｅｂデータに特定の識別子を付加してユーザ端末装置へ送付し、ユーザ端末装置側で前記識別子を検出することにより、識別子が付加されたデータをユーザ端末装置内のローカルデータに置き換える技術が開示されている。
本従来例に記載されているローカルデータの置き換え処理では、ローカルデータがユーザサイドに存在するため、Ｗｅｂデータ内に特定の識別子が付加されたデータ部分をローカルデータに置き換える際にもネットワーク上に流出しにくいことが示唆されている。
【０００４】
また、ローカルデータの隠蔽技術として、例えば、特許文献２には以下のような技術が開示されている。
Ｗｅｂデータを表示する際に、描画用レイヤと隠蔽用レイヤの２つのレイヤを用意し、文書は描画用レイヤに表示させる。
隠蔽用レイヤを描画用レイヤの上位に配置させ、隠蔽用レイヤの透過度を制御することにより、文書の隠蔽を行う。
ローカルデータの表示に際して、閲覧可否を判定し、閲覧不可である場合には、ローカルデータが表示されている描画レイヤの該当箇所を隠蔽するために、隠蔽用レイヤの該当領域を非透明にする。
これにより、ローカルデータの表示を伏せることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１０８１１８号公報
【特許文献２】特開２００５−１５８０４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来の隠蔽技術では、Ｗｅｂサーバより送付されるＷｅｂデータに、ユーザのＰＣや組み込み端末内のローカルデータをネットワーク上へ流出させるような記載をすることにより、ローカルデータがユーザの意志とは関係なくネットワーク上に流出する危険があった。
【０００７】
また、特許文献２に記載されている、２つのレイヤ構成を用いて、ローカルデータの表示を伏せるような処理においても、Ｗｅｂブラウザへローカルデータ自体が渡るため、セキュリティを確保することはできないという課題があった。
【０００８】
本発明は、上記のような課題を解決することを主な目的とし、文字列をウェブブラウザに対して隠蔽したままで、文字列を表示することを主な目的とする。
【課題を解決するための手段】
【０００９】
本発明に係るデータ処理装置は、
ウェブブラウザを有するデータ処理装置であって、
オリジナルの文字列であるオリジナル文字列に代えてダミー文字列を前記ウェブブラウザに出力するダミー文字列出力部と、
前記ウェブブラウザから前記ダミー文字列の描画を要求された場合に、前記ダミー文字列が代替しているオリジナル文字列の出力を要求し、出力されたオリジナル文字列を取得し、取得したオリジナル文字列を描画する描画処理部と、
前記描画処理部から前記ダミー文字列が代替しているオリジナル文字列の出力を要求された場合に、該当するオリジナル文字列を前記描画処理部に出力するオリジナル文字列出力部とを有することを特徴とする。
【発明の効果】
【００１０】
本発明では、ウェブブラウザにはダミー文字列を出力し、ウェブブラウザからダミー文字列の描画を要求された場合に、ダミー文字列が代替しているオリジナル文字列を取得して、オリジナル文字列を描画する。
このため、オリジナル文字列をウェブブラウザに対して隠蔽したままで、オリジナル文字列を表示することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係る情報隠蔽処理システムの構成例を示す図。
【図２】実施の形態１に係るＨＴＭＬコンテンツの例を示す図。
【図３】従来の文字列の表示処理を示すフローチャート図。
【図４】実施の形態１に係る文字列の表示処理を示すフローチャート図。
【図５】実施の形態２に係る情報隠蔽処理システムの構成例を示す図。
【図６】実施の形態２に係る文字列の表示処理を示すフローチャート図。
【図７】実施の形態２に係るレイアウト情報の例を示す図。
【図８】実施の形態１及び２に係るユーザ端末装置の構成例を示す図。
【発明を実施するための形態】
【００１２】
以降の実施の形態では、ローカルデータである文字列（文書情報）をローカルマシン上から流出させることなく、Ｗｅｂブラウザ上に表示させるユーザ端末装置を説明する。
【００１３】
より具体的には、ユーザ端末装置では、ローカルデータである文字列をＷｅｂブラウザへ渡す際に、本来送るべき文字列の代わりに、文字列の先頭に制御コードと変換ＩＤを配置させ、その後に元の文字列と同数の文字数になるようにスペース文字等のダミーの文字に置き換えた文字列を送付する。
つまり、Ｗｅｂブラウザへはローカルデータの文字列そのものは送付せず、ユーザ端末装置内の内部処理にてローカルデータの文字列描画を実施するものである。
【００１４】
この際、Ｗｅｂブラウザは、制御コード付き文字列をそのまま描画処理部へ送付し、描画処理部に描画を要求する。
描画処理部は、Ｗｅｂブラウザより描画要求された制御コード付き文字列を制御コードと変換ＩＤとから本来の文字列に差し替える。
【００１５】
ここで、制御コードとしては、Ｕｎｉｃｏｄｅ等の符号化文字集合にて規格化された制御コードのほかに、使用する符号化文字集合の規格にて未使用・未定義の文字コードを利用するなど、Ｗｅｂブラウザ側がＷｅｂデータの描画の処理に際して、問題なく実行できる文字コードであれば特に問題はない。
また、Ｕｎｉｃｏｄｅ等の符号化文字集合にて規格化された制御コードや未使用・未定義の文字コードではなく、Ｗｅｂブラウザと内部処理側にて事前に制御コード、または数値コードを決めておいてもよい。
以降の実施の形態では、Ｗｅｂブラウザが実行するＷｅｂデータについてのみ、第三者からの提供を考慮するものであり、以降の説明に出てくるプラグイン及び描画処理部については内部処理側に属するものとする。
【００１６】
また、変形例として、ローカルデータである文字列をＷｅｂブラウザへ渡す際に、本来送るべき文字列の代わりに、本来の文字列の文字数分をスペース文字に置き換えてＷｅｂブラウザに送付し、ローカルデータである本来の文字列の描画については、ユーザ端末装置の内部処理にて実施するようにしてもよい。
この例では、Ｗｅｂブラウザより内部処理側へ、該当する文字列の描画領域の位置情報や、フォント種別、文字サイズ、文字色等の情報を提供するものとする。
【００１７】
以下、本発明の実施の形態について、図面を参照しながら説明する。
以下で用いるＷｅｂデータはＨＴＭＬコンテンツとする。
以下では、ＨＴＭＬコンテンツ内に記載された、ある属性を持つオブジェクトをプラグインにて検出し、該オブジェクトに対してプラグインから文字列を出力することにより、Ｗｅｂブラウザに文字列を表示する描画処理を用いて、情報の隠蔽処理を説明する。
【００１８】
実施の形態１．
図１は、実施の形態による情報隠蔽処理システムを示すブロック図である。
【００１９】
Ｗｅｂサーバ１はサーバ装置であり、ＨＴＭＬ形式やＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式などで作成されたＷｅｂデータを記憶しており、ユーザ端末装置３からの要求に応じてＷｅｂデータをユーザ端末装置３へ送信する。
本実施の形態では、前述の通り、ＨＴＭＬ形式のＷｅｂデータを用いて説明する。
以降、ＷｅｂデータをＨＴＭＬコンテンツと記述する。
【００２０】
外部ネットワーク２は、Ｗｅｂサーバ１とユーザ端末装置３をつなぐ通信路である。
【００２１】
ユーザ端末装置３は、外部ネットワーク２を介してＷｅｂサーバ１からＨＴＭＬコンテンツを取得する。
ユーザ端末装置３は、データ処理装置の例に相当する。
【００２２】
ユーザ端末装置３において、通信部３７は、外部ネットワーク２と情報を送受信する送信部及び受信部として機能する。
【００２３】
Ｗｅｂブラウザ３１は、通信部３７で受信したＨＴＭＬコンテンツを解析し、ＨＴＭＬコンテンツのレイアウトに基づいて表示や動画・音声の再生を行う。
また、ＨＴＭＬコンテンツ上にプラグインを実行するように記載されている場合には、プラグイン３２を起動する。
【００２４】
プラグイン３２は、Ｗｅｂブラウザ３１の機能追加のために用意されたソフトウェアであり、ユーザ端末装置３の内部情報にアクセスする機能を有する。
プラグイン３２はＷｅｂブラウザ３１より起動される。
プラグイン３２の動作の詳細は後述するが、プラグイン３２は、本来の文字列（オリジナル文字列）に代えてダミーの文字列（ダミー文字列）をＷｅｂブラウザ３１に出力し、また、描画処理部３４から本来の文字列の出力を要求された場合に、本来の文字列を描画処理部３４に出力する。
プラグイン３２及びプラグイン３２を実行するプロセッサが、ダミー文字列出力部及びオリジナル文字列出力部の例に相当する。
【００２５】
データ保持部３３は、ユーザ端末装置３内で保持するローカルデータ（オリジナル文字列）の管理、及び保存を行っており、本実施の形態ではプラグイン３２に対してローカルデータの情報を提供する。
【００２６】
描画処理部３４は、Ｗｅｂブラウザ３１からの描画要求を受け付け、描画を実施する。
より具体的には、描画処理部３４は、Ｗｅｂブラウザ３１からダミーの文字列の描画を要求された場合に、ダミーの文字列が代替している本来の文字列の出力をプラグイン３２に要求し、プラグイン３２から出力された本来の文字列を描画する。
【００２７】
表示部３５は、描画処理部３４からの表示要求に従い画面上に描画内容を表示する。
【００２８】
次に、プラグイン３２からＷｅｂブラウザ３１へ文字列を出力し、Ｗｅｂブラウザ３１にて文字列を表示する際の情報隠蔽処理を説明する。
【００２９】
まず、従来のプラグインを用いたＷｅｂブラウザ３１への文字列の出力処理について説明し、続けて本実施の形態の情報隠蔽処理を施した場合の説明をする。
Ｗｅｂブラウザがプラグインを動作させるための処理は個々に存在するため、ここでは、ＮＰＡＰＩ（Ｎｅｔｓｃａｐｅ  Ｐｌｕｇ−ｉｎ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を使用したモデルを取り上げる。
また、使用するＷｅｂブラウザはＮＰＡＰＩに準拠した処理が稼動するものとする。
【００３０】
図２にＨＴＭＬコンテンツ４を示す。
プラグイン３２は、ＨＴＭＬコンテンツ４内にｏｂｊｅｃｔタグを記載することにより使用できるようになる。
その際、該当するｏｂｊｅｃｔタグで括られた要素のプラグインを判別するために、ＭＩＭＥ（Ｍｕｌｔｉｐｕｒｐｏｓｅ  Ｉｎｔｅｒｎｅｔ  Ｍａｉｌ  Ｅｘｔｅｎｓｉｏｎｓ）のＣｏｎｔｅｎｔ−Ｔｙｐｅ（以下「ＭＩＭＥタイプ」）が使用される。
図２のＨＴＭＬコンテンツ４に記載されている＜ｏｂｊｅｃｔ  ｔｙｐｅ＝“ａｐｐｌｉｃａｔｉｏｎ／ｘ−ｐｌｕｇｉｎ”ｗｉｄｔｈ＝“１００”  ｈｅｉｇｈｔ＝“１００”＞のｔｙｐｅ＝“ａｐｐｌｉｃａｔｉｏｎ／ｘ−ｐｌｕｇｉｎ”がＭＩＭＥタイプにあたる。
プラグイン３２は自プラグインが対応しているＭＩＭＥタイプをＷｅｂブラウザ３１に伝えることにより、Ｗｅｂブラウザ３１は適切なプラグインのダイナミックリンクライブラリを選択することができる。
【００３１】
また、プラグイン３２は、ＨＴＭＬコンテンツ４に記載されている＜ｈ１  ｉｄ＝“ｎａｍｅ”＞タグのオブジェクトを、ｉｄ属性“ｎａｍｅ”のオブジェクトとして検出することができ、該当するオブジェクトに対して文字列を出力することができる。
【００３２】
Ｗｅｂブラウザ３１は、Ｗｅｂサーバ１よりＨＴＭＬコンテンツ４を受け取る。
Ｗｅｂブラウザ３１は、受け取ったＨＴＭＬコンテンツ４を読み取り、ＭＩＭＥタイプから現在、ユーザ端末装置３内に保持しているプラグイン３２のダイナミックリンクライブラリの検出を実施する。
ＭＩＭＥタイプと合致するダイナミックリンクライブラリを検出した場合には、プラグイン３２のダイナミックリンクライブラリを取り出し、動作させる。
ＭＩＭＥタイプと合致するダイナミックリンクライブラリが存在しない場合には、該当するプラグイン３２の処理は実施しない。
【００３３】
Ｗｅｂブラウザ３１に取り込まれたプラグイン３２は、プラグイン３２の設定によりＷｅｂブラウザ３１からマウス、キーボード、リモートコントローラなどからのイベントを受け付けることができる。
本実施の形態では、説明を簡略化するために、Ｗｅｂブラウザ３１に取り込まれた際に、即ｉｄ属性の検出、及び文字列の出力を実施するものとする。
【００３４】
プラグイン３２がＷｅｂブラウザ３１に取り込まれると、ＨＴＭＬコンテンツ４に記載されているオブジェクトの中からｉｄ属性として“ｎａｍｅ”に該当するオブジェクトの検出を開始する。
ｉｄ属性として“ｎａｍｅ”に該当するオブジェクトが存在しない場合には処理を実施しない。
ｉｄ属性として“ｎａｍｅ”に該当するオブジェクトが存在する場合には、プラグイン３２はＷｅｂブラウザ３１に対して、ｉｄ属性“ｎａｍｅ”に該当するオブジェクトへの文字列を出力する。
Ｗｅｂブラウザ３１はプラグイン３２からの文字列出力を受け付け、該当するオブジェクトに対して出力された文字列を割り当てる。
ここで、Ｗｅｂブラウザ３１内部の具体的な処理については個々のＷｅｂブラウザにより異なってくるため、本実施の形態では、Ｗｅｂブラウザ側がローカルデータである文字列をプラグイン３２より受け取り、表示処理をしていることだけを説明する。
【００３５】
Ｗｅｂブラウザ３１はプラグイン３２より文字列を受け付けると、描画処理部３４に対して描画を要求する。
この際、Ｗｅｂブラウザ３１は、ＨＴＭＬコンテンツ４を解析し、文字列のオブジェクトの描画領域や文字列のフォント種別、サイズ、色などを描画処理部３４に通知する。
描画処理部３４はＷｅｂブラウザ３１より要求された文字列の描画を指定されたフォント種別や文字サイズ、描画位置に基づいて描画し、表示部３５から表示させる。
【００３６】
図３のフローチャートを用いて、従来のプラグイン３２を用いたＷｅｂブラウザ３１への文字列の表示処理を説明する。
【００３７】
プラグイン３２は、ＨＴＭＬコンテンツ４に記述されたｉｄ属性“ｎａｍｅ”のオブジェクトの検出を行う（Ｓ１）。
該当するオブジェクトを検出した場合に、プラグイン３２は、ｉｄ属性“ｎａｍｅ”のオブジェクトへ出力すべき文字列をデータ保持部３３から取り出す（Ｓ２）。
プラグイン３２は、Ｗｅｂブラウザ３１にｉｄ属性“ｎａｍｅ”に該当するオブジェクトに対して文字列の出力をする（Ｓ３）。
Ｗｅｂブラウザ３１は、プラグイン３２により出力された文字列のレイアウトを実施し、描画処理部３４に描画を要求する（Ｓ４）。
描画処理部３４は、Ｗｅｂブラウザ３１から取得した文字列をフォントに展開して描画し、表示部３５へ表示を要求する（Ｓ５）。
表示部３５は文字列の表示をする（Ｓ６）。
【００３８】
次に、本実施の形態に係る情報隠蔽処理を取り入れた文字列の表示処理を説明する。
説明には図１を用いる。
【００３９】
文字列還元部３６は、描画処理部３４より制御コードと変換ＩＤとを提示され、制御コードと変換ＩＤとに対応する本来のローカルデータである文字列（オリジナル文字列）を描画処理部３４に出力する。
つまり、プラグイン３２は、描画処理部３４に対して制御コードと変換ＩＤに対応する文字列（オリジナル文字列）を提供するインターフェースを用意する。
【００４０】
具体的な処理の違いが現れるのは、オブジェクトに付加されたｉｄ属性の検出を終了した時点からとなる。
ｉｄ属性“ｎａｍｅ”を持つオブジェクトに対して、プラグイン３２がＷｅｂブラウザ３１へ文字列を出力する際に、本来送るべき文字列（オリジナル文字列）の代わりに、ダミーの文字列（ダミー文字列）をＷｅｂブラウザ３１に出力する。
Ｗｅｂブラウザ３１に出力するダミーの文字列は、例えば、先頭に制御コードと変換ＩＤとが配置され、本来の文字列の残りの文字数分がスペース文字等となっている、本来の文字列とは異なる文字列である。
つまり、Ｗｅｂブラウザ３１へは実データの文字列（文字コード）は送付せず、ローカルの内部処理にて直接、描画処理部３４へ本来の文字列（文字コード）を送付するものである。
これにより、Ｗｅｂサーバ１より送付されるＨＴＭＬコンテンツ４の記述による情報漏えいを防ぐことが可能となる。
また、この際、制御コードと変換ＩＤのバイト数を加味して、スペース文字等のダミーの文字を実データと同じ文字数となるように置き換える。
これにより、ブラウザ側での文字数カウントやＣＳＳ（Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔｓ）の編集処理に影響を与えないようにする。
なお、文字列の先頭に配置されている変換ＩＤは、本来の文字列の識別子であり、描画処理部３４は、変換ＩＤにより、本来の文字列を特定することができる。
また、制御コードは本来の文字列の代わりにダミーの文字列が用いられていることを描画処理部３４に通知するコードであり、描画処理部３４は、制御コードにより、Ｗｅｂブラウザ３１から取得した文字列がダミーの文字列であることを判別できる。
一方で、Ｗｅｂブラウザ３１は、制御コードによっては、本来の文字列の代わりにダミーの文字列が用いられていることを判別することはできない。
【００４１】
ここで、Ｗｅｂブラウザ３１がプラグイン３２より受け取った文字列を解析する際に、異常処理にならないように考慮した文字コード群を文字列として出力することとし、従来通りの文字列描画処理が行えるものとする。
つまり、制御コードは、使用する符号化文字集合の規格に沿った文字コードとし、例えばＵｎｉｃｏｄｅであるならば、制御コードとして＜ＢＥＬ＞（０ｘ０７）などを使用することが考えられる。
ここで、Ｗｅｂブラウザ３１により制御コードを文字数としてカウントしない場合も考えられる。
搭載するＷｅｂブラウザ３１の実装処理に合わせて、変換ＩＤに後続するスペース文字等のダミーとなる文字の文字数を考慮するものとする。
また、Ｗｅｂブラウザによっては、＜ＢＥＬ＞コードによりベルが鳴る可能性があるため、＜ＢＳ＞などＷｅｂブラウザごとに可能な制御コードを利用する。
さらに、使用する制御コードは、データ保持部３３で保持、管理する文字列には使用されない制御コードとする。
【００４２】
制御コードとしては、未使用・未定義の文字コードを使用するなど、ブラウザ側が文字列の解析、描画処理を問題なく実施できる文字コードまたは、数値コードでもよい。
また、Ｕｎｉｃｏｄｅ等の符号化文字集合にて規格化された制御コードや、未使用・未定義の文字コードを使用するように記載したが、Ｗｅｂブラウザ３１とプラグイン３２、描画処理部３４などユーザ端末装置３側とで事前にユニークな制御コードを割り当てて使用してもよい。
【００４３】
また、本実施の形態では、符号化文字集合としてＵｎｉｃｏｄｅを採用し、制御コードと変換ＩＤとで３バイト長の領域を使用することを想定して記述する。
文字列長が３バイト未満の文字列についてはＷｅｂブラウザ３１に対してそのまま文字列を送付するものとする。
これは、３バイト未満のバイト数を用いた文字列では著作権そのものが問題にならないからである（通常の符号化文字集合の規格では１バイト１文字が最小単であり、多くても３文字の文字列となる）。
変換ＩＤについては使用する符号化文字集合の規格の範囲内で規定している２バイトを使用し、使用する制御コード毎に割り振るものとする。
つまり、制御コードとしてＵｎｉｃｏｄｅの＜ＢＥＬ＞（０ｘ０７）と＜ＢＳ＞（０ｘ０８）とを使用する場合、変換ＩＤが同一の場合にも割り振られる文字列は異なる。
ｉｄ属性を付加するタグ（オブジェクト）の必要数に合わせて、使用する制御コードを増やしたり、著作権が問題にならない範囲で変換ＩＤの使用バイト数を増やすものとする。
【００４４】
Ｗｅｂブラウザ３１はプラグイン３２から受け取った制御コード付き文字列を通常の文字コードとして解析し、文字数をベースにレイアウトを決定する。
ここでは、固定幅フォントを扱うものとする。
【００４５】
描画処理部３４は、Ｗｅｂブラウザ３１より描画要求された文字列に対して、文字列の先頭に制御コードが存在するかどうかを確認し、制御コードが配置されている場合には、制御コードと変換ＩＤとからプラグイン３２が提供する文字列還元部３６を使用して文字列の差し替えを実施する。
つまり、描画処理部３４は、変換ＩＤをプラグイン３２に通知し、プラグイン３２は描画処理部３４から通知された変換ＩＤに対応する本来の文字列を描画処理部３４に出力する。
【００４６】
次に、図４のフローチャートを用いて、情報隠蔽処理を実施した場合の文字列の表示処理を説明する。
【００４７】
プラグイン３２は、ＨＴＭＬコンテンツ４に記述されたｉｄ属性“ｎａｍｅ”のオブジェクトの検出を行う（Ｓ１）。
該当するオブジェクトを検出した場合に、プラグイン３２は、ｉｄ属性“ｎａｍｅ”のオブジェクトへ出力すべき文字列をデータ保持部３３から取り出す（Ｓ２）。
プラグイン３２は、Ｗｅｂブラウザ３１にｉｄ属性“ｎａｍｅ”に該当するオブジェクトに対して制御コード付きの文字列を出力する（Ｓ１０）。
Ｗｅｂブラウザ３１は、プラグイン３２により出力された文字列のレイアウトを実施し、描画処理部３４に描画を要求する（Ｓ４）。
描画処理部３４はＷｅｂブラウザ３１から取得した文字列を判別し（Ｓ１１）、先頭に制御コードが付加されているならば、文字列還元部３６を用いて制御コードと変換ＩＤとから本来の文字列を取得し、取得した文字列をフォントに展開して描画し、表示部３５へ表示を要求する（Ｓ１２）。
つまり、描画処理部３４は、プラグイン３２から出力された本来の文字列を取得し、取得した本来の文字列の描画を行う。
一方、先頭に制御コードが付加されていなければ、描画処理部３４は、Ｗｅｂブラウザ３１から取得した文字列をフォントに展開して描画し、表示部３５へ表示を要求する（Ｓ５）。
表示部３５は文字列の表示を行う（Ｓ６）。
【００４８】
本実施の形態では、Ｗｅｂサーバ１から提供されるＨＴＭＬコンテンツ４については第三者提供とし、プラグイン３２についてはユーザ端末装置３の内部実装により実現されているものとする。
また、本実施の形態ではＨＴＭＬコンテンツ４をＷｅｂサーバ１より受け取ったが、ローカルデータとしてユーザ端末装置３内に保持しておき、ユーザ端末装置３内部で読み出してＷｅｂブラウザ３１へ表示しても構わない。
また、本実施の形態ではＷｅｂブラウザ３１としてＨＴＭＬブラウザを用いて説明したが、ＸＭＬなど、他のマークアップ言語のブラウザに差し替えて実施しても差し支えない。
【００４９】
以上のように、プラグイン３２は、データ保持部３３から取得したローカルデータをそのままＷｅｂブラウザ３１へは送付せず、Ｗｅｂブラウザ３１へは、先頭に制御コードと変換ＩＤを配置させ、その後に本来送付するローカルデータの文字列と同数の文字数になるようにダミーの文字列に置き換えた文字列を送付している。
このため、Ｗｅｂブラウザ３１がＷｅｂサーバ１より取得したＷｅｂデータに、ローカルデータをネットワーク上へ流出させるような記述がされている場合にも、ローカルデータの流出を防ぐことができる。
【００５０】
また、プラグイン３２がＷｅｂブラウザ３１に送付する文字列は、本来の文字列の文字数と同一の文字数で送付されるため、Ｗｅｂブラウザ３１にて装飾処理を含めたレイアウト処理を実施する際にも、本来の文字列と同等の結果を得ることができる。
【００５１】
実施の形態２．
以上の実施の形態１では、隠蔽対象となる文字列の代わりに、先頭に制御コードと変換ＩＤを付加し、後続する文字に代えてスペース文字等のダミーの文字を隠蔽対象の文字列と同数の文字数となるように埋め込んだ文字列に置き換えて、Ｗｅｂブラウザ３１へ送付することにより、情報隠蔽処理を実現するようにしている。
本実施の形態では、制御コードと変換ＩＤは付加せず、Ｗｅｂブラウザ３１に送付する隠蔽対象となる文字列の文字をすべてスペース文字に置き換え、文字列の描画自体はプラグイン３２から直接、描画処理部３４へ要求することにより、Ｗｅｂブラウザ３１に対して情報の隠蔽を行うものである。
【００５２】
実施の形態２の動作について図５を用いて説明する。
図５は、図１からレイアウト処理部３８を追加したものである。
レイアウト処理部３８は、ｉｄ属性に対応したオブジェクトのレイアウト情報である領域（座標（左上の位置）と幅・高さ）や、オブジェクト内の文字列の行数と各行の文字数、文字のフォント種別、文字サイズ、文字色（ＲＧＢα）などを管理、提供するものである。
レイアウト情報である領域の座標（左上の位置）と幅・高さについては、領域を確定できるものであれば、特に左上の位置や幅・高さに限らなくてもよく、左上と右下の座標などでもよい。
【００５３】
図７にレイアウト情報５を示す。
レイアウト情報５は、本来の文字列の描画位置を定義している。
レイアウト情報５は、例えばＣＳＳ情報である。
【００５４】
なお、本実施の形態では、プラグイン３２及びプラグイン３２を実行するプロセッサは、ダミー文字列出力部及びオリジナル文字列出力部の例に相当するとともに、レイアウト情報取得部の例にも相当する。
【００５５】
プラグイン３２は、レイアウト処理部３８よりレイアウト情報５を取得し、レイアウト情報５をもとに、描画処理部３４に描画要求を実施する。
描画処理部３４は、Ｗｅｂブラウザ３１から要求された描画が終了した後に、Ｗｅｂブラウザ３１の表示内容が描画されているプレーンに、プラグイン３２より要求された文字列を上書きにて描画する。
プラグイン３２から複数の文字列の描画を要求された場合には、プラグイン３２からの描画要求の順番に描画を実施し、上書きしていく。
または、プラグイン３２から文字列の描画を受け付ける際に、描画順を指定してもよい。
ここで、Ｗｅｂブラウザ３１の描画プレーンとは別のプレーン上に、プラグイン３２から要求された文字列を描画しても構わない。
【００５６】
また、本実施の形態においても、Ｗｅｂブラウザ３１が扱うフォントは、固定幅フォントを扱うものとする。
【００５７】
次に図６のフローチャートを用いて本実施の形態の動作について説明する。
【００５８】
プラグイン３２は、ＨＴＭＬコンテンツ４に記述されたｉｄ属性“ｎａｍｅ”のオブジェクトの検出を行う（Ｓ１）。
該当するオブジェクトを検出した場合に、プラグイン３２は、ｉｄ属性“ｎａｍｅ”のオブジェクトへ出力すべき文字列をデータ保持部３３から取り出す（Ｓ２）。
プラグイン３２は、データ保持部３３から取り出した文字列を文字列内の文字数と同数のスペース文字に置き換える（Ｓ２０）。
プラグイン３２は、Ｗｅｂブラウザ３１に該当するオブジェクトに対して前記置き換えた文字列の出力を実施する（Ｓ３）。
Ｗｅｂブラウザ３１は、プラグイン３２により出力された文字列のレイアウトを実施し、プラグイン３２により出力された文字列の描画を描画処理部３４に要求する（Ｓ４）。
描画処理部３４は、Ｗｅｂブラウザ３１から取得した文字列（スペース文字の文字列）をフォントに展開して描画し、表示部３５へ表示を要求する（Ｓ５）。
プラグイン３２は、レイアウト処理部３８よりレイアウト情報５を取得する（Ｓ２１）。
プラグイン３２は、レイアウト処理部３８から取得したレイアウト情報５と本来の文字列を描画処理部３４へ送付し、本来の文字列の描画を要求する（Ｓ２２）。
描画処理部３４は、プラグイン３２から取得した本来の文字列をフォントに展開して描画し、表示部３５へ表示を要求する（Ｓ２３）。
描画処理部３４は、レイアウト情報５に定義されている描画位置に本来の文字列を描画することで、Ｗｅｂブラウザ３１から取得したダミーの文字列の描画に重畳させて本来の文字列の描画することができる。
表示部３５は、文字列の表示を行う（Ｓ６）。
【００５９】
以上のように、プラグイン３２は、データ保持部３３から取得したローカルデータをそのままＷｅｂブラウザ３１には送付せず、取得した文字列の文字数と同数のスペース文字に置き換えた文字列を送付するので、Ｗｅｂブラウザ３１がＷｅｂサーバ１より取得したＷｅｂデータに、ローカルデータをネットワーク上へ流出させるような記述がされている場合にも、ローカルデータの流出を防ぐことができる。
【００６０】
また、Ｗｅｂブラウザ３１へ送付する文字列を、データ保持部３３から取得した文字列の文字数と同数のスペース文字に置き換えて送付するので、Ｗｅｂブラウザ３１側での文字数カウントやＣＳＳ（Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔｓ）の編集処理に影響を与えないようにすることができる。
これにより、プラグイン３２は、レイアウト処理部３８よりレイアウト処理後のレイアウト情報を取得することができ、その情報をもとに、プラグイン３２は、直接、描画処理部３４に描画することができる。
このため、Ｗｅｂサーバ１から送付されたＷｅｂデータの装飾処理を妨げることなく、文字列を表示することができる。
【００６１】
最後に、実施の形態１及び２に示したユーザ端末装置３のハードウェア構成例を図８を参照して説明する。
ユーザ端末装置３はコンピュータであり、ユーザ端末装置３の各要素をプログラムで実現することができる。
ユーザ端末装置３のハードウェア構成としては、バスに、演算装置９０１、外部記憶装置９０２、主記憶装置９０３、通信装置９０４、入出力装置９０５が接続されている。
【００６２】
演算装置９０１は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
外部記憶装置９０２は、例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ、ハードディスク装置である。
主記憶装置９０３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
通信装置９０４は、通信部３７の物理層に対応する。
入出力装置９０５は、例えばマウス、キーボード、ディスプレイ装置等である。
【００６３】
プログラムは、通常は外部記憶装置９０２に記憶されており、主記憶装置９０３にロードされた状態で、順次演算装置９０１に読み込まれ、実行される。
プログラムは、図１、図５に示すＷｅｂブラウザ３１、プラグイン３２であり、また、描画処理部３４、表示部３５、通信部３７の機能を実現するプログラムである。
更に、外部記憶装置９０２にはオペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置９０３にロードされ、演算装置９０１はＯＳを実行しながら、Ｗｅｂブラウザ３１、プラグイン３２、また、描画処理部３４、表示部３５、通信部３７の機能を実現するプログラムを実行する。
また、実施の形態１及び２の説明において、「〜の描画」、「〜の取得」、「〜の出力」、「〜の送付」、「〜の判別」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置９０３にファイルとして記憶されている。
【００６４】
なお、図８の構成は、あくまでもユーザ端末装置３のハードウェア構成の一例を示すものであり、ユーザ端末装置３のハードウェア構成は図８に記載の構成に限らず、他の構成であってもよい。
【００６５】
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、１つを部分的に実施しても構わない。
あるいは、これらの実施の形態を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
【符号の説明】
【００６６】
１  Ｗｅｂサーバ、２  外部ネットワーク、３  ユーザ端末装置、４  ＨＴＭＬコンテンツ、３１  Ｗｅｂブラウザ、３２  プラグイン、３３  データ保持部、３４  描画処理部、３５  表示部、３６  文字列還元部、３７  通信部、３８  レイアウト処理部。
【図１】
2015176262.tif 000003
【図２】
2015176262.tif 000004
【図３】
2015176262.tif 000005
【図４】
2015176262.tif 000006
【図５】
2015176262.tif 000007
【図６】
2015176262.tif 000008
【図７】
2015176262.tif 000009
【図８】
2015176262.tif 000010