JP2006040186A - 秘密情報漏洩防止方法及び装置 - Google Patents

秘密情報漏洩防止方法及び装置 Download PDF

Info

Publication number
JP2006040186A
JP2006040186A JP2004222651A JP2004222651A JP2006040186A JP 2006040186 A JP2006040186 A JP 2006040186A JP 2004222651 A JP2004222651 A JP 2004222651A JP 2004222651 A JP2004222651 A JP 2004222651A JP 2006040186 A JP2006040186 A JP 2006040186A
Authority
JP
Japan
Prior art keywords
code
character code
client
unit
conversion
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
Application number
JP2004222651A
Other languages
English (en)
Inventor
Nobuaki Teraoka
伸明 寺岡
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.)
I DAM NETWORK KK
Original Assignee
I DAM NETWORK KK
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 I DAM NETWORK KK filed Critical I DAM NETWORK KK
Priority to JP2004222651A priority Critical patent/JP2006040186A/ja
Publication of JP2006040186A publication Critical patent/JP2006040186A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

【課題】人のモラルに頼らずに、不正者による秘密情報漏洩を技術的に防止する。
【解決手段】秘密文字コードをテンポラル文字コードに変換するための変換テーブルと、その逆の逆変換テーブルと(40)、アドレスマッピングテーブルRAM211aに基づきフォントROM211bから対応するグリフデータを取り出しビットマップ展開部211rでラスタライズする復号部とを備えた装置21Aを、サーバとクライアントとの間の通信路に結合させておき、(a)サーバからの秘密文字コードを、該変換テーブルに基づいてテンポラル文字コードに変換しこれをクライアントに送信し、(b)クライアント11からのテンポラル文字コードを該逆変換テーブルに基づき秘密文字コードに変換し、これを該復号部でグリフイメージに変換し、クライアント11に送信し、(c)所定のタイミングで変換テーブルと逆変換テーブルとを更新する。
【選択図】図13

Description

本発明は、ネットワークに接続されたコンピュータから外部へ秘密情報が漏洩するのを防止する方法及び装置に関する。
暗号化、認証及びファイアウォール等の技術の進歩により、ネットワーク通信における情報セキュリティが高くなっている。
しかしながら、情報は人によりアクセスされるので、パスワードを与えられた情報管理者や社員などが個人情報や取引情報などの秘密情報を不正に外部に持ち出すことが可能であり、社会問題となっている。
プロセッサの高速化、記憶装置の大容量化及びデータ圧縮技術などにより、大量の秘密情報を短時間で送受信したり小型のハードディスクやICメモリカードに格納することができるようなったことが、この問題をさらに大きくしている。
一方、コンピュータネットワークを利用することで電子政府を構築し、業務効率化のみならず行政のサービス及び透明化などを高めることが計画されている。
このようなことから、人のモラルに頼らずに技術的に秘密情報漏洩を防止することが要求されている。
下記特許文献1では、メモリ上にフォントを格納し、利用者から文書データの処理系への制御命令有無をタイマーで監視し、設定時間、該制御命令が無い場合にフォント配列をシフトして、第三者への文書内容の可読性を低くし、利用者によるパスワードの認証によって逆シフトすることにより可読にする方法が開示されている。
また、下記特許文献2では、データベースに対し、検索に利用される列項目のデータについては共通の列鍵を用いて暗号化し、その他の列項目のデータについては各行毎に固有の行鍵を用いて暗号化することにより、セキュリティを高める方法が開示されている。
しかし、これらのいずれの方法もパスワード方式であり、パスワードを入力すれば暗号が復号されるので、不正者による秘密情報漏洩を防止することができない。
また、百科事典、小説、漫画、定期刊行物等の著作物を電子ファイルにしてインターネット上で著作物を有料閲覧可能にすれば、利用者にとって便利であり、利用増大が期待できる。しかし、有料閲覧可能にしてもコピーが出回る虞があるので、出版社は諦めざるをえない。
特開2001−22739号公報 特開2001−101055号公報
本発明の目的は、上記問題点に鑑み、人のモラルに頼らずに、不正者による秘密情報漏洩を技術的に防止することが可能な秘密情報漏洩防止方法及び装置を提供することにある。
本発明による秘密情報漏洩防止方法の第1態様では、サーバーからクライアントが受信したデータの不正者による漏洩を防止する秘密情報漏洩防止方法において、該クライアントには表示装置が結合されており(図1)、
フォント記憶部と、秘密文字コードに応答して該フォント記憶部から対応するグリフデータを取り出す復号部とを備えた秘密文字コード復号装置を、該クライアントに結合しておき、
(a)該秘密文字コード復号装置と該クライアントとの間及び該クライアントと該サーバーとの間で相互認証を行い、その結果が正当であれば、
(b)該サーバーは、該クライアントからの要求に応答して、秘密文字コードを含むデータを送信し、
(c)該クライアントは、該秘密文字コードを該秘密文字コード復号装置に送信して復号要求し、
(d)該秘密文字コード復号装置は、該復号要求に応答して該復号部を介し該フォント記憶部から、該秘密文字コードに対応するグリフデータを取り出して該クライアントに送信する
ステップを有する。
本発明による秘密情報漏洩防止方法の第2態様では(図12)、文字コード(普通文字コード又は秘密文字コード、以下同様)をテンポラル文字コードに変換するための変換テーブルを備えた変換部と、テンポラル文字コードを文字コードに逆変換するための逆変換テーブルを備えた逆変換部と、第1アドレスマッピングテーブルに基づきフォント記憶部から文字コードに対応するグリフデータを取り出す復号部とのいずれも、該サーバーと該クライアントとを結合する通信路に結合し又は該サーバーに備えておき、
(a)該サーバーからの文字コードを又は該サーバーにおいて該文字コードを、該変換テーブルに基づいてテンポラル文字コードに変換しこれを該クライアントに送信し、
(b)該クライアントからの要求に応答してテンポラル文字コードを該逆変換テーブルに基づき文字コードに変換し、該第1アドレスマッピングテーブルに基づき該文字コードを復号してグリフデータを取得し、これを該クライアントに送信し、
(c)所定のタイミングで該変換テーブルと該逆変換テーブルとを更新する
本発明による秘密情報漏洩防止方法の第3態様では(図20、21)、文字コードをテンポラル文字コードに変換するための変換テーブルを備えた変換部と、テンポラル文字コードを文字コードに逆変換するための逆変換テーブルを備えた逆変換部と、文字コードに基づきクライアント側フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブルを備えた第1アドレスマッピングテーブル記憶部とのいずれも、該サーバーと該クライアントとを結合する通信路に結合し又は該サーバーに備えておき、
テーブル更新処理と文字コード変換処理と復号処理とを有し、
該テーブル更新処理では、
(a)所定のタイミングで該変換テーブルと該逆変換テーブルとを更新し、該第1アドレスマッピングテーブルと該更新された逆変換テーブルとに基づいて、テンポラル文字コードに対応するグリフデータを該フォント記憶部から取り出すための第2アドレスマッピングテーブルを更新し、
(b)該第2アドレスマッピングテーブルが更新される毎にこれを該クライアントに送信し、
該文字コード変換処理では、
(c)該サーバーからの文字コードを又は該サーバーにおいて該文字コードを、該変換テーブルに基づいてテンポラル文字コードに変換しこれを該クライアントに送信し、
該復号処理では、
(d)該クライアントにおいて、該テンポラル文字コードに対応するグリフデータを、該第2アドレスマッピングテーブルに基づき該フォント記憶部から取得する。
本発明による秘密情報漏洩防止方法の第4態様では、上記第2又は3態様において、該変換部は、互いに異なる該変換テーブルを複数備え(図22)、
該逆変換部は、該複数の変換テーブルのそれぞれに対応した該逆変換テーブルを複数備え(図23)、
該ステップ(a)では、該サーバーからのレコードに含まれる文字コード列のカラム位置に応じて該複数の変換テーブルの1つを選択し、
該クライアントでは、該カラム位置が文字表示領域に対応付けられており、
該ステップ(b)では、該クライアントからのテンポラル文字コード列を該文字表示領域に応じて該複数の逆変換テーブルの1つを選択する。

本発明による秘密情報漏洩防止方法の第5態様では、該第1アドレスマッピングテーブルを備えた装置と該クライアントとの間及び該クライアントと該サーバーとの間で相互認証を行い、その結果が正当でなければ、該第1アドレスマッピングテーブルを書き換え又は消去する(図4、SB)。
本発明によるサーバーの一態様では、
データが格納されたサーバー本体と、
コードを秘密コードに変換するための変換テーブルを備えたコード変換部(図34、401A)と、
該サーバー本体から文字コード又はバイナリコードを受け取り該文字コード又はバイナリコードを該コード変換部に供給して秘密文字コード又は秘密バイナリコードを取得しクライアントに送信する制御部(301A)と
を有する。
なお、「クライアントから受信」はクライアントから直接又は間接的に受信することを意味する。「サーバーから」及び送信についても同様である。間接的にとは、例えば実施例11に記載のように認証サーバーを介して送信する場合を言う。
上記第1態様の構成によれば、クライアントにおいて秘密文字コードと普通文字コードとの対応関係が不明であるので、秘密文字コードを含むファイルがクライアントの記憶装置に残っていても、可読性がなく、かつ、秘密文字コード復号装置とクライアントとの間及びクライアントとサーバーとの間での相互認証結果が正当である場合のみ秘密文字コード復号装置による復号処理が行なわれるので、不正者による秘密情報漏洩を技術的に防止することが可能となる。
上記第2態様の構成によれば、秘密文字コードがテンポラリに変化するので、この文字コードを含むファイルを持ち出しても可読性がなく、不正者による秘密情報漏洩を技術的にかつより確実に防止することが可能となる。
上記第3態様の構成によれば、第2アドレスマッピングテーブルの内容から第1アドレスマッピッグテーブルの内容を知ることができないことと、第2アドレスマッピングテーブルがテンポラリに更新されることから、秘密文字コードを含むファイルの内容を後で閲覧しても解析できず意味不明のものとなり、不正者による秘密情報漏洩を技術的に防止することが可能となる。
また、第2アドレスマッピッグテーブル及びフォント記憶部をクライアントが持っているので、上記実施形態1及び2よりも高速に文字を描画することが可能となる。
上記第4態様の構成によれば、時間軸上のみならず空間軸上でも秘密文字コードがテンポラリに変化するので、さらにセキュリティを高めることができる。
上記第5態様の構成によれば、不正者による第1アドレスマッピングテーブルの内容解読の試みが阻止されるので、さらにセキュリティを高めることができる。
上記一態様のサーバーによれば、簡単な構成により、該サーバー本体に格納されているデータを見かけ上秘密コード化することができる。また、該変換テーブルをテンポラリに変化させることにより、該秘密文字コード又は秘密バイナリコードがテンポラリにへんかするので、簡単な構成により秘密化をより確実に行うことができる。
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
以下、図面に基づいて本発明の実施例を説明する。図面において、同一又は類似の要素には、同一又は類似の符号を付している。
本明細書及び特許請求の範囲における「グリフデータ」は、ビットマップ展開前のベクトルデータ又はビットマップ展開されたイメージデータのいずれであってもよい。
また、「クライアント」はクライアントコンピュータ又はクライアントコンピュータで実行されるアプリケーションプログラムを意味する。「サーバー」についても同様である。
秘密情報とは、公開が制限された情報の意味であり、個人情報、社内情報、団体内情報、取引情報又は有料の情報等が含まれる。秘密情報であるかどうかは、情報の組み合わせによって異なる。例えば名前のみは秘密情報ではないが、名前に住所、年齢、趣味等が組み合わされると秘密情報になる。
「秘密文字コード」とは、JISコードやユニコード等の普通文字コードと異なる独自の文字コードを意味する。また、「テンポラル文字コード」とは、一時的に使用される独自の文字コードを意味し、秘密文字コードの一種である。
また、単に「アプリケーションプログラム」と言った場合、秘密文字コードを用いる本システムで使用が許可されているアプリケーションプログラムを意味する。「アプリケーションプログラムで〜を実行する」と言った場合、アプリケーションプログラムで使用するDLL等の外部モジュールで実行する場合を含む。
図1は、本発明の実施例1のコンピュータネットワークシステムを示す概略ブロック図である。
サーバー10とN台のクライアント11〜1Nとの間がネットワーク結合され、クライアント11〜1Nのそれぞれに秘密文字コード復号装置21〜2Nが結合されている。このネットワークは、LAN又はインターネットである。
サーバー10は、データベースサーバー、Webアプリケーションサーバー(Webサーバーの機能を兼ねたアプリケーションサーバー)、データベースサーバーとWebアプリケーションサーバーとの組み合わせ、又はデータベースサーバーとCGIプログラム等を用いたWebサーバーとの組み合わせであり、許可されたユーザーの利用に供するため、秘密情報の全部又は一部が秘密文字コードを用いて格納されている。
サーバー10には、秘密情報の取得を許可したクライアントコンピュータの情報(コンピュータ認証用パスワード、マックアドレス、MPU等)とそのクライアントコンピュータ上で動作が許可されたアプリケーションプログラムの情報(プログラム名、バージョン及びシリアルナンバー)と利用が許可されたユーザーの認証情報(ID及びパスワード)とが、照合データとして登録されている。
クライアント11〜1Nにはそれぞれ、秘密文字コード復号装置21〜2Nを確認するための照合データ及びサーバー10を確認するための照合データが格納されている。秘密文字コード復号装置21〜2Nとサーバー10との間の認証は、秘密文字コード復号装置21〜2Nを確認するための照合データをクライアント11〜1Nが持つことにより可能となる。
秘密文字コード復号装置21〜2Nについても同様に、それぞれ利用を許可したクライアント11〜1Nを確認するための照合データが格納されている。
図2は、図1中のクライアント11と秘密文字コード復号装置21のハードウエア概略構成を示すブロック図である。
クライアント11は、普通のコンピュータシステムであり、MPU110にビデオRAM111、入力インタフェース112、通信インタフェース113、記憶装置114及び通信インタフェース115がバスで結合されている。図2では、簡単化のために1種類のバスのみ示している。ビデオRAM111には、ビデオコントローラ116を介して表示装置117が結合され、入力インタフェース112及び通信インタフェース115にはそれぞれ、入力装置118及びサーバー10が結合されている。
記憶装置114は、RAM、ROM及び外部記憶装置を含んでおり、OS(オペレーティングシステム)及びアプリケーションプログラムが該外部記憶装置に格納されている。
一方、秘密文字コード復号装置21では、MPU210に記憶装置211、通信インタフェース212及びICメモリカードアダプタ213がバスで結合されている。通信インタフェース212と113との間は、通信路で結合されている。記憶装置211は、ROMとRAMとを含んでいる。
図3は、図2の秘密文字コード復号装置21の機能ブロック図である。
システム制御部30、認証部図35及びタイマー図35は、図2のMPU210と記憶装置211と該記憶装置211のROMに格納されたプログラム及びRAMのワークエリアとにより構成される。アドレスマッピッグテーブルRAM211a、フォントROM211b、普通文字コード変換テーブルRAM211c及び照合データROM211dは、図2の記憶装置211に含まれている。ICメモリカード33は、アドレスマッピッグテーブルRAM211a及び普通文字コード変換テーブルRAM211cに対し後述のようにデータを書き込む際にICメモリカードアダプタ213に装着され、この書き込みが完了すると、ICメモリカードアダプタ213から抜脱される。
図4は、クライアントコンピュータでアプリケーションプログラムを起動した時の処理を示す概略フローチャートである。
(S0)まず、ユーザー認証入力画面を表示する。
(S1)ユーザーはこれに応答して、ユーザーのID及びパスワードを入力する。
(S2、S3)このアプリケーションプログラムの利用を許可したID及びパスワードでなければ、ステップS0へ戻ってユーザーに再入力を促し、そうでなければステップS4へ進む。
(S4)ステップS1で入力されたユーザー認証用データと、上記アプリケーションプログラムの情報と、上記クライアントコンピュータの情報とを含む照合データに基づいて、ハッシュ値を算出する。
(S5)セキュリティプロトコル、例えばIKE(Internet Key Exchange)プロコトルに従って、サーバーとの間で相互認証を行なう。
(S6)正当であればステップS7へ進み、そうでなければステップSAへ進む。
(S7)IKEプロトコルに従って、秘密文字コード復号装置21との間で同様に相互認証を行なう。
(S8)正当であればステップS9へ進み、そうでなければステップSBへ進む。
(S9)サーバーにクエリー等のリクエストをし、これに応答してサーバーから供給される情報を取得する。この処理では、サーバーとの間でデータを送信又は受信するセッション毎にその開始時にステップS5の認証が行なわれる。
(SA)システム管理者へ、異常事態が生じたことを知らせる電子メールを送信し、アプリケーションプログラムを終了する。
(SB)不正者によるデータ盗用を防止するため、テーブルRAM211a及び211cの内容を書き換え又は消去し、次いで秘密文字コード復号装置21の電源を強制的にオフにし又は処理を終了する。すなわち、不正者によるテーブルRAM211a及び211cの内容解読を防止するため、秘密文字コード復号装置21は、RAMの内容に関する自爆機能を備えている。
図5は、図4のステップS9においてクライアントのアプリケーションプログラムにより表示される検索画面である。このプログラムは、サーバー10が上述のWebサーバー(又はWebアプリケーションサーバー、以下同様)を含む場合にはブラウザであり、サーバー10がデータベースサーバーである場合にはそのデータベース管理システム(DBMS)を介してデータベースを利用するプログラム(ブラウザもこのプログラムの1つ)である。
いずれの場合も、OSのライブラリ中のグリフ描画プログラムとOSに組み込まれたフォントとで復号される普通文字コードと、秘密文字コード復号装置21で復号される秘密文字コードとが用いられる。
例えば、検索キーワードの入力を表示するためのテキストボックスTB1〜TB3のみ秘密文字コードが用いられ、その他のテキストボックス及びラベル等のオブジェクトの文字には普通文字コードが用いられる。これらオブジェクトは、属性(プログラムで使用される変数)として普通文字コード又は秘密文字コードであることを示すフラグを有する。例えば、テキストボックスTB1〜TB3の該フラグは‘1’であり、その他のものについては‘0’になっている。オブジェクトの属性には、従来と同様に、テキストボックス等の位置、サイズ、フォントの名前やサイズ等が含まれる。これら従来の属性に関する処理の詳細は、その説明を省略する。
図5において、画面(ウインドウ)上の検索ボタンを押すと、この入力画面のデータを含むクエリー、例えばSQL言語のセレクト文がサーバー10に送信される。この際、本実施例1では、秘密文字列開始コード及び秘密文字列終了コードを秘密文字コード列に付加する必要はない。すなわち、検索キーワードを除いたクエリー本文が普通文字コードを用いて表されるので、サーバー10では普通文字コードであるか秘密文字コードであるか全く区別する必要はなく、既存のプログラムをそのまま使用することができる。ただし、サーバー側のデータベースは、予め定めた秘密情報のカラムに関し、普通文字コードを秘密文字コードに変換しておく。
普通文字コードと秘密文字コードのバイト長は異なってもよいが、既存のデータベースをできるだけ変更しないでよいようにするとともにデータ量増加を避けて高速処理を可能にするため、同じにする。
検索結果であるサブセットテーブルがサーバー10からクライアント11へ送信(クライアントのアプリケーションプログラムへ送信)されると、後述の処理が行われて、クライアント11の画面に図6に示すような検索結果が表示される。すなわち、ヒット件数及びサブセットテーブル中の現在のレコード番号が表示されるとともに、この番号のレコードのデータがカード形式で表示される。図6では、例えばテキストボックスTB4〜TB9及びTBa〜TBeのみ秘密文字コードの文字フィールドを備えている。
アプリケーションプログラムがブラウザである場合には、HTMLファイル(又はXMLファイル)に用いられるフォントタグに関し、普通文字コードであるか秘密文字コードであるかを示す属性(秘密属性)を定義しておき、該属性を設定しておく。アプリケーションプログラムは、後述のように、秘密属性に応じてOS又は秘密文字コード復号装置21のグリフ描画プログラムを用い、文字を画面に表示(復号)させる。アプリケーションプログラムがブラウザである場合には、この処理は、ブラウザに対するプラグインモジュールで実現してもよい。
サーバー10から検索結果を受信すると、アプリケーションプログラムは、レコードの各フィールドのデータを、対応するテキストボックスに挿入しようとする。この際、アプリケーションプログラムにより、画面上に文字を描画するためのPRINTサブルーチンの実行が開始され、図7に示す処理が行なわれる。PRINTサブルーチンは例えば、DLL(ダイナミック・リンク・ライブラリ)中のプログラムである。
(S10)表示フィールドの秘密属性のフラグが‘0’であればステップS11へ進み、‘1’であればステップS13へ進む。
(S11)OSのライブラリ中の文字描画プログラムに、通常のPRINT処理を依頼する。このプログラムにより、対応するグリフデータが取得され、これがベクトルフォントのデータであれば、さらにビットマップ展開(ラスタライズ)される。
詳説すれば、この依頼において、描画する矩形の大きさ、フォント名(フォントID)、フォントサイズ、行間などを引数としてOSのプログラムに渡す。OSは、該矩形の大きさに合わせて描画したグリフイメージと文字毎の幅をアプリケーションプログラムに返す。文字毎の幅は、アプリケーションプログラムがカーソル位置を所定の位置に正しく表示するために使用される。プロポーショナルフォントの場合には、文字幅が文字及びフォントの種類により異なる。
(S12)当該オブジェクトの属性である表示位置座標に対応したアドレスを指定して、ビデオRAM111にビットマップデータを書き込み、PRINTサブルーチンを終了する。
(S13)アプリケーションプログラムは、秘密文字コード列に秘密文字列開始コードと秘密文字列終了コードとを付加して、通信インタフェース212へ送信する(S13−1)。
システム制御部30は、この開始コードが付加されていると、その次からの秘密文字コードを順次アドレスマッピッグテーブルRAM211aのアドレス入力端子に供給する。これにより、テーブルRAM211aからフォントROM211bへ、対応するグリフデータを取得するためのアドレスが供給され、フォントROM211bからグリフデータが読み出される。フォントがベクトルフォントである場合には、このグリフデータがビットマップ展開部211rでビットマップ展開され、ビットマップフォントである場合にはビットマップ展開部211rを素通りする。システム制御部30は、通信インタフェース212を介してそのグリフイメージをクライアント11に送信する。
クライアント11のアプリケーションプログラムは、これを受信すると(S13−2)、上記ステップS12の処理を行なう。
なお、既存のアプリケーションプログラムの本体を殆ど変更せずに図7のステップS10、並びに、ステップS13のS13−1及びS13−2の処理行うため、専用のモジュールを介してこれらの処理を行うのが好ましい。アプリケーションプログラムがブラウザの場合には、上述のようにプラグインモジュールでこれらの処理を行う。ステップS13では、秘密文字コード列を単位として送信するので、1つ又は複数の秘密文字コード列に対し復号要求開始信号を送信することにより、受信側で秘密文字コード列毎に秘密文字列開始コードと秘密文字列終了コードを付加し、或いはこれらを付加せずに秘密文字列と判断して復号してもよい。
また、グリフデータのフォーマットは、OSが持っているフォントのそれと同一であってもよい。
図6において、テキストボックスに文字を記入するためにキーボードを操作すると、キー入力割込が生じ、フロントエンドプロセッサ(FEP)がオンの場合には、文字確定キーを押すと確定処理が行われて文字が描画され、FEPがオフの場合には、キー入力のみで文字が確定して文字が描画される。この文字描画終了に応答して、アプリケーションプログラムは、対応するテキストボックスの該秘密属性を調べ、これが‘1’であれば装置21に対しこの確定した普通文字コードとともにコード変換要求を送信をする。なお、装置21は1文字コードの受信をコード変換要求とみなすことができるので、コード変換要求は必須ではない。
システム制御部30はこれに応答して、この普通文字コードを変換テーブルRAM211cのアドレス入力端に供給して秘密文字コードを読み出し、クライアント11へ送信する。アプリケーションプログラムは、当該テキストボックスの対応する普通文字コードをこの秘密文字コードで置換する。
図6において、テキストボックスに文字列を記入した後、画面上の登録ボタン又は更新ボタンを押すと、これに対応したクエリーが例えばSQL言語で記述されてサーバー10に送信される。
本実施例1では、クライアントにおいて秘密文字コードと普通文字コードとの対応関係が不明であり、かつ、秘密文字コード復号装置21によりクライアント及びアプリケーションプログラムが認証された場合のみ秘密文字コード復号装置21による復号処理が行なわれるので、秘密文字コードを含むファイルがクライアントの記憶装置に残っていても、他のアプリケーションプログラムで閲覧すれば秘密文字コードに対応する文字が全く意味をなさない。これにより、不正者による秘密情報漏洩を技術的に防止することが可能となる。
なお、上記PRINTサブルーチンは、プリンタに対しても同様に適用できる。この場合、印刷許可/禁止をユーザーID毎に予め設定しておき、これに基づいて印刷を許可/禁止する。
上述の自爆機能により、アドレスマッピッグテーブルRAM211a及び普通文字コード変換テーブルRAM211cの内容が書き換えられ又は消去されると、該内容を再度書き込む必要がある。この内容を書き込む人がテーブルRAM211a及び211cの内容を読み出すと、セキュリティが確保されない。また、テーブルRAM211aに対する内容の書き込みを容易迅速に行なえるようにするのが業務遂行上好ましい。
そこで、秘密文字コード復号装置21の電源オン時に、システム制御部30により図8に示す処理を行なう。この際、クライアント11の認証機能とキー入力機能を利用する。
(S20)タイマー図35を起動させる。タイマー図35のタイムアップ時間は、予め設定されている。
(S21)図4のステップS0〜S7と同じ処理を行なって、クライアント11との間で相互認証を行なうとともに、クライアント11とサーバー10との間の相互認証をクライアントに対して行なわせ、その結果を待つ。
(S22)この結果が正当であればステップ23へ進み、そうでなければステップS26へ進む。
(S23)クライアント11の入力装置118を操作して、乱数系列を定めるためのパスワードを入力する。その結果が通信インタフェース212に送信され、システム制御部30でこれを受信すると、ステップS25へ進み、そうでなければステップS24へ進む。
(S24)タイムアウトでなければステップS23へ戻り、そうでなければステップS26へ進む。
(S25)システム制御部30は、図9に示す処理により、ICメモリカード33からアドレスマッピッグテーブルRAM211aへのランダムな書き込みを行ない、同様に、ICメモリカード33から普通文字コード変換テーブルRAM211cへのランダムな書き込みを行ない、図4のステップS9へ進む。書き込み中にタイマーがタイムアップすると、ステップS26へ進む。
(S26)不正者によるデータ盗用を防止するため、RAM211a及び211cの内容を書き換え又は消去する。
(S27)システム制御部30は、自身の電源をオフにし又は処理を終了する。
次に、図9及び図10を参照して、ステップS25におけるアドレスマッピッグテーブルRAM211aへの書込処理を詳説する。
(S30)ステップ23で受信したパスワードに基づき乱数発生関数のパラメータpの値を決定することにより、乱数発生系列を定める。例えば、該パスワードqを予め定めたある関数F(q)に代入して該パラメータ値p=F(q)を求め、これにより乱数発生系列を定める。
(S31)アドレスマッピッグテーブルRAM211aの書き込みアドレスを8000+iとしたときの変数iに、初期値0を代入する。アドレスマッピッグテーブルRAM211aの書き込みアドレス範囲は、8000〜8000+imaxであるとする。
(S32)乱数発生関数RNDを用いて、0〜imaxの範囲の乱数j=Int(imax・RND)を求める。ここに、Int()は括弧内の値を整数化する関数である。RNDは0〜1.0の範囲の浮動小数点数である。
乱数jの値を記憶しておき、jがそれまでに発生した乱数と同じ値であれば、異なる値になるまで乱数を発生させて、jを定める。説明の簡単化のためにこのような方法を用いているが、この方法は所要時間が長くなるので、実際には、例えば後述する図15の方法を利用して、所要時間を短縮する。
(S33)ICメモリカード33のアドレスjの内容(これを(j)と表記する)を、アドレスマッピッグテーブルRAM211aのアドレス8000+iに書き込ませる。
(S34)iを1だけインクリメントする。
(S35)iが最大値imax以下であればステップS32へ戻り、そうでなければ処理を終了する。
予め定めたデータをこのような方法でアドレスマッピッグテーブルRAM211aに書き込むことが可能な理由は、以下の通りである。すなわち、図10において、右側のアドレスマッピングテーブルが、予め定めたデータであるとする。システム制御部30の乱数発生プログラムと同じプログラムを用い、乱数発生系列を定めるパラメータ値pも同じにして、ステップS32の、i番目の乱数jを求める。ICメモリカード33のアドレスjに、アドレスマッピングテーブルのアドレス8000+iの内容を書き込む。このようにすることで、図9に示す処理により、アドレスマッピッグテーブルRAM211aに、予め定めたデータを書き込むことができる。
システム制御部30において上記関数p=F(q)を用いるので、例え乱数発生関数及び上記パスワードが判ったとしても、乱数発生系列を定めるパラメータ値pが不明である。このため、ICメモリカード33の内容から、アドレスマッピッグテーブルRAM211a及び普通文字コード変換テーブルRAM211cに書き込まれる内容を求めることはできない。
グリフデータの取得は、次のようにして行われる。例えば、図10のアドレスマッピングテーブルからアドレス8000の内容5A38を取り出してフォントROM211bをアドレス指定すると、図11に示すように文字'A'のグリフデータの先頭のデータが読み出される。ENDマークが出力されるまでフォントROM211bのアドレスをインクリメントして、文字'A'のグリフデータを順次出力させる。
なお、キー入力処理においては上記秘密属性によらず通常の処理を行い、秘密属性が‘1’の場合には未変換フラグを‘1’にしておき、サーバーへデータを送信する直前に、その普通文字コード列に変換開始コードと変換終了コードとを付加して秘密文字コード復号装置21に送信することにより、テーブルRAM211cで普通文字コードを秘密文字コード列に変換するようにしてもよい。
また、秘密文字コード復号装置21〜2Nをそれぞれサーバー10とクライアント11〜1Nとの間に結合してもよい。この場合、上記秘密文字コード列への変換は、サーバーへデータを送信する途中でこれを行うことができる。この点は、以下の実施例においても同様である。
さらに、秘密文字コード復号装置を強固なハウジングに収納し、上記タイマーの設定時間を越えた後に該ハウジングを開け又は開いている場合にはこれをセンサで検出して自爆機能を働かせるようにするのが望ましい。
また、処理高速化のため、図3においてビットマップ展開部211rを備えずに、サーバー10側にビットマップ展開部211rを備えてサーバー10側でビットマップ展開処理を行うようにしてもよい。
この場合、セキュリティをより高くするため、特殊なフォントROM211bとビットマップ展開部211rを用いることが好ましい。すなわち、グリフデータを暗号化しておく。例えば、ベクトルフォントのグリフデータにおいて、座標値を所定の規則に従って又はテーブルで変換したものを用いる。そして、ビットマップ展開部で前処理として、該座標値を逆変換(復号)し、その後に通常のビットマップ展開処理をする。さらに、ビットマップ展開部であるファームウェア又はサブルーチンにおいて、処理要求元のアプリケーションプログラムが所定のものである場合のみ、処理を受け付けるようにしてもよい。
このような特殊なベクトルフォント及びビットマップ展開部を、上記実施例と関係なくワープロソフト、表計算ソフト、プレゼンテーションソフト等で利用するようにすれば、これらソフトで作成されるファイルを外部に持ち出しても文字を復号できないので、秘密情報の漏洩を防止することができる。
また、図7のステップS11(及びS12)の処理をOSに依頼せずに独自のプログラムで処理するようにしてもよい。
秘密文字コードを固定にすると、秘密文字コードと文字との対応関係が知られる虞があり、秘密情報の漏洩を防止することができなくなる。実施例1において、空き時間にサーバー10側で秘密文字コードを変更してデータベースを書き換えれば、セキュリティを高めることができる。しかし、データベース利用率が高ければ、頻繁にこの変更を行うことができない。
そこで、本発明の実施例2では、秘密文字コードをテンポラリに変更可能にしている。
図12は、本発明の実施例2のコンピュータネットワークシステムを示す概略ブロック図である。
サーバー10は、テンポラル文字コード作成・復号装置21A〜2NAを介してそれぞれクライアント11〜1Nに結合されている。サーバー10のデータベースには、実施例1と同じ秘密文字コードが用いられている。
サーバー10からクライアント11へ文字コードを送信する場合に、テンポラル文字コード作成・復号装置21Aで秘密文字コードをテンポラル文字コードに変換し、クライアント11からサーバー10へ文字コードを送信する場合に、テンポラル文字コード作成・復号装置21Aでテンポラル文字コードを秘密文字コードに逆変換する。このようにすれば、サーバー10の秘密文字コードを変更することなく、クライアント11側の秘密文字コードをテンポラリに変更することができる。この変更は所定のタイミングで行われ、例えば、サーバー10からクライアント11へ検索結果(サブセットテーブル)を返す毎に、その途中のテンポラル文字コード作成・復号装置21Aで行われる。
テンポラル文字コード作成・復号装置22A〜2NAについても装置21Aと同様である。装置21A〜2NAは互いに異なる変換テーブル及び逆変換テーブルをもつことができ、これによりセキュリティがさらに高められる。これらテーブルの内容以外については、装置21A〜2NAは互いに同一構成である。
図13は、テンポラル文字コード作成・復号装置21Aの概略構成を示すブロック図である。
パケット通信により時分割並列処理が可能であるので、この装置では1つの通信インタフェース212でクライアント11と結合されるとともにサーバー10と結合されている。
テンポラル文字コード作成・復号装置21Aでは、図3の構成に、一部を機能的に示す図14のコード変換・逆変換部40が付加されている。このコード変換・逆変換部40は、専用のハードウエアで構成してもコンピュータとそのソフトウエアで構成しても、両者で構成してもよい。
コード変換テーブルRAM41Aを含むコード変換部401は、サーバー10からクライアント11へデータを送信する途中で用いられ、コード逆変換テーブルRAM41Bを含むコード逆変換部402は、クライアント11からサーバー10へデータを送信する途中で用いられる。
秘密文字コードのみを変換/逆変換するので、どの部分が秘密文字コードであるかをコード変換・逆変換部40は知る必要がある。そこで、本実施例2では、サーバー10からコード変換・逆変換部40へデータを送信する場合及びクライアント11(アプリケーションプログラム)からコード変換・逆変換部40へデータを送信する場合に、秘密文字コード列に秘密文字コード列の開始コード及び終了コードを付加している。以下においては、秘密コード文字列の開始コード及び終了コードをそれぞれ/S及び/Eと表記する。
コード変換・逆変換部40は、サーバー10からデータを受信すると、判断部42Aにおいて文字コードが/Eであるかどうかを判定し、判断部43Aにおいて、文字コードが/Sであるかどうかを判定する。
/Sであると判定されると、フラグ(フリップフロップ)44Aがセットされて切換スイッチ45Aが加減算部46A側に切り換えられる。これにより、/Sの次の秘密文字コードXが加減算部46Aに供給され、この値から、一定のオフセット値OFV1が加減算部46Aで減算(負の減算であってもよい)されて、コード変換テーブルRAM41Aのアドレス入力端にADR=X−OFV1が供給される。
これに応答して、リード状態のコード変換テーブルRAM41Aのデータ出力端から変換後の秘密文字コード(テンポラル文字コード)Yが出力される。テンポラル文字コードYは、図13のシステム制御部30X及び通信インタフェース42を介してクライアント11へ送信される。このような処理が、秘密文字コード列の各文字コードについて行なわれる。オフセット値OFV1は、コード変換テーブルRAM41Aのアドレス範囲と秘密文字コードの範囲との関係を調整するための定数であり、オフセット値OFV1を0にして加減算部46Aを省略することもできる。
判断部42Aにより/Eが検出されると、フラグ44Aがリセットされて切換スイッチ45Aが切り換えられ、/Eの次のデータからは変換されずに図13のシステム制御部30X及び通信インタフェース42を介してクライアント11へ送信される。
クライアント11からサーバー10へのデータの流れについても同様であり、構成要素41B〜46Bはそれぞれ、構成要素41A〜46Aに対応している。
クライアント11で受信したテンポラル文字コード列の描画は、次のようにして行われる。
すなわち、上述のPRINTサブルーチンが実行されて、上記開始及び終了コードが付加されたテンポラル文字コード列のデータがシステム制御部30Xに送信され、システム制御部30Xはこれに応答して該データをコード逆変換部402に供給して秘密文字コード列に変換させ、その秘密文字コードを順次アドレスマッピッグテーブルRAM211aのアドレス入力端に供給する。その後の処理は、上記実施例1と同じである。
次に、実施例1で述べたようにクライアント11でキー入力操作を行って文字を確定すると、秘密属性が‘1’であれば、確定した普通文字コードとともにコード変換要求コードが装置21Aに送信される。システム制御部30Xはこれに応答して、この普通文字コードをテーブルRAM211cのアドレス入力端に供給して秘密文字コードを読み出させ、これをコード変換部401に供給してテンポラル文字コードに変換させ、クライアント11に送信する。クライアント11はこれに応答して、実施例1で述べた文字コード置換を行う。
図15は、コード変換テーブルRAM41Aの内容をテーブル作成部403によりランダムかつ高速に更新するための方法を示すフローチャートである。
秘密文字コードの範囲とテンポラル文字コードの範囲は同じである必要はないが、簡単化のため同じ範囲CCmin〜CCmaxであるとする。また、コード変換テーブルRAM41AのアドレスADR=X−OFV1の範囲をAL〜AH、すなわち、AL=CCmin−OFV1、AH=CCmax−OFV1とする。
(S40)コード変換テーブルRAM41Aの全内容をゼロクリアし、コード変換テーブルRAM41Aに格納する値iに初期値CCminを代入する。
(S41)乱数発生関数RNDの乱数発生系列を定めるパラメータ値pを変更する。パラメータ値pは、例えばその時点の年月日及び時刻に関する値に基づいてランダムな値にされる。
(S42)変数ADRにInt(AH*RND+AL)を代入する。
(S43)アドレスADRの記憶内容(ADR)が0であれば、未定であるので、ステップS44へ進み、そうでなければステップS47へ進む。
(S44)アドレスADRに値iを格納する。
(S45)iの値を1だけインクリメントする。
(S46)i≦CCmaxであればステップS42へ進み、そうでなれば処理を終了する。
(S47)ステップS43からステップS42へ戻るようにしてもよいが、iの値が大きくなるにつれてステップS43からステップS42へ戻る確率が高くなっていき、全体の処理時間が長くなるので、本実施例2ではステップS47へ進み、以下のような処理を行なう。
iの値が偶数であればステップS48へ進み、そうでなければステップS4Bへ進む。
(S48)ADRの値を1だけインクリメントする。
(S49)ADR≦AHであればステップS43へ戻り、そうでなけばステップS4Aへ進む。
(S4A)ADRにアドレス範囲の最小値ALを代入し、ステップS43へ戻る。
(S4B)ADRの値を1だけデクリメントする。
(S4C)ADR≧AHであればステップS43へ戻り、そうでなけばステップS4Dへ進む。
(S4D)ADRにアドレス範囲の最大値AHを代入し、ステップS43へ戻る。
このようにして、テンポラリなコード変換テーブルRAM41Aの内容をランダムにかつ高速に決定することができる。
コード逆変換テーブルRAM41Bの内容は、CCmin≦Y≦CCmaxの各Yについて、コード逆変換テーブルRAM41BのアドレスY−OFV2に値Xを書き込むことにより得られる。
図13に戻って、テンポラル文字コード作成・復号装置21Aでは、図3のタイマー図35、ICメモリカードアダプタ213及びICメモリカード33を備えていない。アドレスマッピングテーブルRAM211a及び普通文字コードをテーブルRAM211cにデータを書き込む場合には、例えば装置21Aのメンテナンス会社のコンピュータ(不図示)と装置21Aとの間の相互認証後に、該コンピュータから電話回線を介して、図8のステップS23のパスワードと、ICメモリカード33及び普通文字コードをテーブルRAM211cと同じ内容のデータとが、暗号化通信により装置21Bへ送信され、通信インタフェース212で暗号が復号される。次いで、システム制御部30Aにより実施例1の場合と同様にしてアドレスマッピングテーブルRAM211a及び普通文字コード変換テーブルRAM211cにデータが書き込まれる。この書き込みは、クライアント11から行うようにしてもよい。
このようにすれば、データ書き込みが容易になるとともに、データ書き込みの際に装置21Aのハウジングを開く必要がないので、ハウジングを容易に開けない構造にすることができる。
本実施例2では、秘密文字コードがテンポラリに変化するので、この文字コードを含むファイルを持ち出しても可読性がなく、不正者による秘密情報漏洩を技術的にかつより確実に防止することが可能となる。
なお、図12において、セキュリティをより高くするために、テンポラル文字コード作成・復号装置21A〜2NAのそれぞれのテーブル作成部403で作成されるテーブルの内容が互いに異なるように、ランダム発生系列を定めるパラメータpを異ならせるようにしてもよい。
また、テンポラル文字コード作成・復号装置21Aは、サーバー10から検索結果を受信した後、秘密文字コード列の各秘密コードをグリフイメージに変換し、該秘密文字コード列をテンポラル文字コード列に変換し、このテンポラル文字コード列及びこれと対応させたグリフイメージをクライアント11に送信することにより、文字描画をより高速に行う構成であってもよい。この点は、以下の実施例においても同様である。
図16は、図13の装置21Aの代わりに用いられる本発明の実施例3に係るテンポラル文字コード作成・復号装置21Bの概略構成を示すブロック図である。
コード変換部401A内では、図14のコード変換テーブルRAM41Aの代わりに、図17に示すコード変換テーブルRAM41A1、RAM41A2及び切換スイッチ41A3が用いられる。
コード変換テーブルRAM41A1を有効にして使用する場合には、切換スイッチ41A3をコード変換テーブルRAM41A1側に切り換える。この状態で、テーブル作成部403Aは、空き時間において、次に使用するコード変換テーブルをRAM41A2内に作成する。コード変換テーブルRAM41A2を使用する場合には、切換スイッチ41A3をRAM41A2側に切り換える。
このように、コード変換テーブルを交互に切り換えて利用することにより、図16のテンポラル文字コード作成・復号装置21Bの動作をより高速化することができる。図16のコード逆変換部402Aについてもコード変換部401Aと同様である。
他の点は上記実施例2と同一である。
秘密文字コードは普通文字コードと順番が異なるので、サーバー10に対するクエリーに、検索結果をソートする句を含む場合、例えばSQL言語のORDER BY句を含む場合、ユーザーが望むソートが行なわれない。
サーバー10側に普通文字コードと秘密文字コードとの関係を示す変換テーブルを備えれば、この問題を解決することができる。しかしながら、セキュリティをより確実にするには、サーバー10側に上述の変換テーブル自爆機能を備える必要があり、この場合、変換テーブル自爆機能が働くと全ユーザーが利用できなくなる可能性が高くなる。
そこで、本発明の実施例4では、図16のテンポラル文字コード作成・復号装置21Bの代わりに、図18に示すテンポラル文字コード作成・復号装置21Cを用いている。
この装置では、システム制御部30Bで受信した、例えば図19に示すようなID付クエリー(QID002はクエリーID)が、検索前処理部405へ供給される。検索前処理部405は、該クエリーにソート句(ORDER BY句)が含まれるかどうかを判定し、含まれる場合には該クエリーをソート句とその他の部分に分割し、ソート句にも分割前のクエリーIDを付加する。ソート句が無い場合にはそれが、ソート句が有る場合にはこれを除いた部分が、クエリーIDとともにシステム制御部30Bを介してサーバー10へ送信される。ソート句は、システム制御部30Bを介して検索後処理部406に供給される。
サーバー10は、ID付クエリーを実行し、その結果(サブセットテーブル)に、該IDを付与する。
システム制御部30Bは、サーバー10から検索結果を受信すると、これをワークメモリ404に格納し、検索後処理部406に処理を依頼する。検索後処理部406はこれに応答して、ソート句に付与されているクエリーIDと同一IDが、検索結果に付与されているかどうか調べ、付与されていれば、
(1)該サブセットテーブルに含まれる秘密文字コードを普通文字コードに変換し、
(2)該変換後のサブセットテーブルに対しソート句を実行し、
(3)該実行後のサブセットテーブルの普通文字コードを秘密文字コードに変換し、
その結果をシステム制御部30Bに供給し、該ID付ソート句を消去する。
システム制御部30Bはこの結果をコード変換部401Aに供給して秘密文字コードをテンポラル文字コードに変換した後、クライアント11に送信させる。
本実施例4によれば、テンポラリな文字コードを用いても、検索結果に対しソートを実行することができる。
なお、ソート句以外で、秘密文字コードに対して実行しても所望の結果が得られない句(例えばBETWEEN句)を含むクエリーについては、システム制御部30Bはこれを複数の他の句で表し、その各々をサーバー10へ送信する。
また、クライアントがサーバーから取得したサブセットテーブルを、任意のカラムに関してソートできるようにするために、図18のワークメモリ404にもこのサブセットテーブルを、普通文字コードに変換して格納しておき、クライアント11からテンポラル文字コード作成・復号装置21Cへのソート要求に応答して、検索後処理部404でソートを実行し、その結果をクライアント11へ送信し、見かけ上クライアント11でソートを行ったようにしてもよい。
実施例2において、サーバーで秘密文字コードを使用しなくてもテンポラリに文字コードが変化するので、サーバーで秘密文字コードを用いずに普通文字コードを用いることができる。この場合、サーバー側でソート等が行われるので、検索前処理部405は不要である。上記のようにクライアントがサーバーから取得したサブセットテーブルを任意のカラムに関してソートする場合、サーバーにこれを依頼してサーバー側で行うようにすれば、検索後処理部405も不要である。また、サーバーからの秘密文字列開始コード及び秘密文字列終了コードの替わりに文字列開始コード及び文字列終了コードを用いる。さらに、図18の普通文字コード変換テーブル211cが不要であり、クライアント11からのキー入力確定文字コードをコード変換部401Aでテンポラル文字コードに変換してクライアント11へ返せばよく、処理が高速になる。
図20は、図18のテンポラル文字コード作成・復号装置21Cの代わりに用いられる、本発明の実施例5のコード変換・復号テーブル作成装置21Dを示す概略ブロック図である。
この装置では、テーブル作成部403Aによりコード逆変換テーブルRAM41Bの内容が更新される毎に、アドレスマッピングテーブル作成部211gにより、テンポラル文字コードYとグリフアドレスZの対応関係のアドレスマッピッグテーブルRAM(AMT)が作成される。コード逆変換部402Aの構成要素41B及び46Bは、このテーブル作成でも用いられ、図20では理解を容易にするため、構成要素41B及び46Bと同一物がコード逆変換部402Aの外部にも記載されている。
アドレスマッピングテーブル作成部211gは、Cmin≦Y≦Cmaxの範囲の各テンポラル文字コードYについて、アドレスマッピッグテーブルRAM(AMT)のアドレス入力端及びコード逆変換テーブルRAM41Bのアドレス入力端にそれぞれテンポラル文字コードY及びY−OFV1を供給したときに、アドレスマッピッグテーブルRAM211aのデータ出力端から読み出されるグリフアドレスZをアドレスマッピッグテーブルRAM(AMT)に書き込むことにより、テンポラル文字コードYとグリフアドレスZとの関係のテーブルを作成する。
システム制御部30Cは、アドレスマッピッグテーブルRAM(AMT)の内容の更新が終了すると、この内容を、通信インタフェース212を介し図21の通信インタフェース115へ送信させる。この内容は、クライアント11Aの記憶装置114Aに格納されたプログラムに従ってMPU110により、アドレスマッピングテーブルAMT1又はAMT2として記憶装置114Aに格納される。
アドレスマッピングテーブルAMT1及びAMT2は、図17と同様に、交互に切り換えて使用され、一方が使用中において他方が暇な時間に更新される。アドレスマッピングテーブルAMT1及びAMT2はいずれも、テンポラル文字コードYがアドレスマッピングテーブルの行に対応しテンポラル文字コードYに基づいてグリフアドレスZを読み出すことができるテーブルファイルであってもよい。アドレスマッピングテーブルAMT1及びAMT2は、更新時に上書きされ、アプリケーションプログラム終了時に消去される。
図18のフォントROM211b及びビットマップ展開部211rの内容も記憶装置114Aに格納されている。これらは、普通文字コードに対するものを用いてもよい。また、実施例1で述べた特殊なベクトルフォント及びビットマップ展開部を用いてもよい。グリフデータのビットマップ展開は、この記憶装置114Aに格納されたビットマップ展開部(プログラム)に従ってMPU110により実行される。
このようにしても、アドレスマッピングテーブルAMT1又はAMT2の内容からアドレスマッピッグテーブルRAM211aの内容を知ることができないことと、アドレスマッピングテーブルAMT1及びAMT2がテンポラリに更新されることから、秘密文字コードを含むファイルを他のアプリケーションプログラムで閲覧しても解析できず意味不明のものとなり、不正者による秘密情報漏洩を技術的に防止することが可能となる。
また、アドレスマッピッグテーブル及びビットマップ展開部をクライアント11Aの記憶装置114Aに格納しているので、上記実施例2〜4よりも高速に処理することが可能となる。
時間軸上で秘密文字コードを変化させる上述のテンポラル文字コードを使用すればセキュリティが大幅に高くなるが、本発明の実施例6では、さらに空間軸上でも秘密文字コードを変化させることにより、さらにセキュリティを高めている。
図22は、図14中のコード変換部401の替わりに用いられる、本発明の実施例6のコード変換部401Bの概略構成を示すブロック図である。
コード変換部401Bは、サーバー10からの検索結果であるサブセットテーブルをカラム単位(フィールド単位)又は複数カラム単位(複数フィールド単位)で異なる変換テーブルを用い、秘密文字コードを上述のようにテンポラル文字コードに変換して、クライアント11へ送信する。
図22中、切換スイッチ制御部4243Aは、図14の判断部42Aと42Bとで構成されている。
コード変換テーブルRAM41Cには、互いに異なる変換テーブル1A〜6Aがそれぞれ例えば図15の手順に従って作成されている。変換テーブルiA(i=1〜6)のアドレス範囲はCmax−OFV1i〜Cmin−OFV1iであり、i=1〜6についてアドレス範囲が互いに重ならないように正又は負のオフセット値OFV1iが定められている。オフセット値テーブル47Aは、入力値iに応答してオフセット値OFViを加減算部46Aに供給する。使用テーブル決定部48Aは例えば、入力データがサブセットテーブルの第iカラムであるとき値iを出力してオフセット値テーブル47Aに供給する。
従って、検索結果のレコードの第iカラムのデータが秘密文字開始コード/Sを含めば、その次の秘密文字コードから秘密文字終了コード/Eの前の秘密文字コードまで順次、秘密文字コードXが変換テーブルiAでテンポラル文字コードYに変換され、開始コード/S及び終了コード/Eを含むその他のデータはスルーでコード逆変換部402を通過する。
例えば図24に示すように、検索結果のレコードが3フィールドで構成され、秘密文字コードを含む
”/SeYKwPZ3b/E”,”/S8JuGmw5w/E”,”/ShDK9@q7¥/E”
であった場合、これら3フィールドの秘密文字コード列がそれぞれ変換テーブル1A〜3Aで変換されて、テンポラル文字コードを含むレコード”/S6KHuO9wK/E”,”/SJVBw;sLp/E”,”/S*Mv0q−iS/E”に変換される。
図23は、図14中のコード逆変換部402の替わりに用いられるコード逆変換部402Bの概略構成を示すブロック図である。
構成要素4243B、RAM41D及び46B〜48Bはそれぞれ、図22の構成要素4243A、41C及び46A〜48Aに対応している。コード逆変換部402Bは、アプリケーションプログラムで作成された新規登録カード又は更新登録カードのレコードをクライアント11から受信すると、フィールド単位又は複数フィールド単位で、対応する逆変換テーブルを用いテンポラル文字コードを上述のように秘密文字コードに逆変換して、サーバー10へ送信する。
例えば図25に示すように、アプリケーションプログラムで作成された新規登録カード又は更新登録カードのレコードが3フィールドで構成され、テンポラル文字コードを含む
”/S6KHuO9wK/E”,”/SJVBw;sLp/E”,”/S*Mv0q−iS/E”
であった場合、これら3フィールドのテンポラル文字コード列がそれぞれ逆変換テーブル1B〜3Bで変換されて、秘密文字コードを含むレコード
”/SeYKwPZ3b/E”,”/S8JuGmw5w/E”,”/ShDK9@q7¥/E”
に変換される。
図6の各テキストボックスはその属性として、サブセットテーブルのカラム番号を有し、上述のキー入力における文字コード変換及びテキストボックスに対するPRINTサブルーチン実行については、このカラム番号を付加してコード変換・復号テーブル作成装置へデータ送信する。これにより、データがレコード形式でなくても、図23において正しい逆変換テーブルを選択することができる。
なお、レコード毎に秘密文字開始コード/Sをカウントして値iを決定し、1レコード毎にiをゼロクリアする構成であってもよい。
また、ヒット件数が所定数を越える場合、所定件数単位でグループIDを付与することにより、グループ毎に異なる変換テーブル及びこれに対応した逆変換テーブルを用いることができる。このようにすれば、大量の検索結果をクライアント11に送信しても、セキュリティを高く維持することが可能となる。
また、サーバー10のデータベースについて、カラム毎に異なる秘密文字コードを用い、これに対応して図16のテーブルRAM211a及び211cの各々のテーブルを複数のテーブルで構成し、該カラム毎に異なる秘密文字コードを該複数のテーブルとともに、空き時間に更新する構成であってもよい。
さらに、本実施例6を実施例3〜5のいずれかと組み合わせた構成であってもよい。
図26は、本発明の実施例7のコンピュータネットワークシステムを示す概略ブロック図である。
このシステムでは、図1の秘密文字コード復号装置21〜2Nの代わりに、1つの秘密文字コード復号装置20を用い、秘密文字コード復号装置20とクライアント11〜1Nとの間でデータをパケット転送している。秘密文字コード復号装置20は、図3の秘密文字コード復号装置21と同様であり、照合データROM211dにクライアント11〜1Nのすべての照合データが格納され、認証部図35により任意のクライアントとの間で相互認証を行なうことが可能となっている。
図27は、本発明の実施例8のコンピュータネットワークシステムを示す概略ブロック図である。
このシステムでは、図12のテンポラル文字コード作成・復号装置21A〜2NAの代わりに、1つのテンポラル文字コード作成・復号装置20Aを用い、テンポラル文字コード作成・復号装置20Aとクライアント11〜1Nとの間及びテンポラル文字コード作成・復号装置20Aとサーバー10との間でデータをパケット転送している。
テンポラル文字コード作成・復号装置20Aは、図13のテンポラル文字コード作成・復号装置21Aと同様であり、図16の照合データROM211dにクライアント11〜1Nのすべての照合データが格納され、認証部図35により任意のクライアントとの間で相互認証を行なうことが可能となっている。
クライアント毎にテンポラル文字コードを切り換えるタイミングが異なるので、テンポラル文字コード作成・復号装置20Aは、テンポラル文字コードの種類にIDを付与しておき、どのクライアントがどのIDのテンポラル文字コードを使用しているかを記憶しておく。これにより、テンポラル文字コード作成・復号装置20Aはどの変換テーブル/逆変換テーブルを使用すればよいかがわかる。
図28は、本発明の実施例9のコンピュータネットワークシステムを示す概略ブロック図である。
このシステムでは図27のテンポラル文字コード作成・復号装置20Aをサーバー10内に配置することにより、図27の場合よりもセキュリティを物理的に高くしている。
この場合、サーバー10とテンポラル文字コード作成・復号装置20Aとの間を通信ケーブルを介さずに直接バスで接続してもよい。また、テンポラル文字コード作成・復号装置20Aのハードウエア構成を省略し、サーバー10のプログラムによりテンポラル文字コード作成・復号装置20Aの機能を達成してもよい。
図29は、本発明の実施例10のコンピュータネットワークシステムを示す概略ブロック図である。
このシステムでは、サーバー10を、Webアプリケーションサーバー10Aとデータベースサーバー10Bとに別けて構成し、Webアプリケーションサーバー10A内にテンポラル文字コード作成・復号装置20Aを配置し又はWebアプリケーションサーバー10Aのプログラムによりテンポラル文字コード作成・復号装置20Aの機能を達成している。
なお、テンポラル文字コード作成・復号装置20AをWebアプリケーションサーバー10Aとデータベースサーバー10Bとの間又はデータベースサーバー10B内に配置してもよいことは勿論である。また、テンポラル文字コード作成・復号装置20Aをデータベースサーバー10B内に配置する替わりに、プログラムによりテンポラル文字コード作成・復号装置20Aの機能を達成してもよい。
図30は、本発明の実施例11のコンピュータネットワークシステムを示す概略ブロック図である。図31は、図30中のデータベースサーバー、認証サーバー及びフォントサーバーの概略機能ブロック図である。
社内LAN50では、データベースサーバー10BにN台のクライアント11〜1Nが結合され、これらがファイアウォール51を介してインターネット52に結合されている。一方、管理センター60のフォントサーバー10C及び認証サーバー10Dがファイアウォール61を介してインターネット52に結合されている。管理センター60は、例えば本システムのメンテナンス業者が管理する。
インターネット52を介したデータの送受は、公知の暗号化技術を用いたセキュリティプロトコルに従って行われる。
このシステムでは、図28に示すテンポラル文字コード作成・復号装置20Aを文字コード変換/逆変換機能と文字復号機能と認証機能の3つに分け、これらの機能をそれぞれデータベースサーバー10B、フォントサーバー10C及び認証サーバー10Dで果たしている。
データベースサーバー10Bは、不図示のデータベースと、これとシステム制御部301との間に結合される不図示のデータベース管理システム(DBMS)とを備えている。システム制御部301は、DBMSからの検索結果をコード変換部401Aに供給して上述のように秘密文字コードをテンポラル文字コードに変換し、これを通信インタフェース2121を介して送信する。システム制御部301は、通信インタフェース2121からの更新データ又は登録データを、コード逆変換部402Aに供給して上述のようにテンポラル文字コードを秘密文字コードに変換し、これをDBMSに供給する。
システム制御部301、コード変換部401A及びコード逆変換部402Aは、ハードウェアで構成してもソフトウエアで構成してもよく、また、これらをコード変換/逆変換装置として通信インタフェース2121とファイアウォール51との間に結合してもよい。
認証サーバー10Dでは、クライアント11〜1N、データベースサーバー10B及びフォントサーバーCを確認する上述の情報、並びに、クライアント11〜1Nに格納され該システムの利用が許可されたアプリケーションプログラムの情報が、照合データ記憶部211Dに登録されている。相手方へのリクエストの送信はリクエスト元及びリクエスト先を指定して必ず認証サーバー10Dを介し行い、これにより相互認証が行われる。このため、リクエストに対する応答は、認証サーバー10Dを介さずに直接行う。
例えば、クライアント11のアプリケーションプログラムがデータベースサーバー10Bへリクエストする場合、認証サーバー10Dに対し、リクエスト元及びリクエスト先を指定し(IPv6の場合にはIPアドレスで指定することができる。)、リクエストの内容を送信する。
認証サーバー10Dでは、システム制御部302が認証部31Aにリクエスト元及びリクエスト先を知らせ、認証部31Aは、照合データ記憶部211Dの内容を参照して、リクエスト元及びリクエスト先が登録されているものであるかどうか確認する。リクエスト元及びリクエスト先が登録されたものであると認証部31Aが判断すると、システム制御部302は、リクエストの内容をリクエスト先へ送信する。データベースサーバー10Bは、該リクエストに応じた処理を行い、その結果をリクエスト元のクライアントに送信する。
クライアント11のアプリケーションプログラムがフォントサーバー10Cへ文字復号又はキー入力確定文字の文字コード変換をリクエストする場合も同様である。
クライアントから認証サーバーを介して、テンポラル文字コード列を伴った復号要求がフォントサーバー10Cへ送信されると、システム制御部303は、これに応答して、テンポラル文字コード列の各テンポラル文字コードについて、次のようにする。すなわち、テンポラル文字コードに対応したコード逆変換テーブル記憶部41B1内の位置(テーブルの行)から秘密文字コードを読み出させ、この秘密文字コードに対応したアドレスマッピングテーブル記憶部211A内の位置からグリフデータ格納位置を読み出させ、フォント記憶部211B内のこの格納位置からグリフデータを読み出させる。次いでシステム制御部303は、テンポラル文字コード列に対応したグリフデータ列を、復号要求元のクライアントに送信する。
クライアント11のアプリケーションプログラムが認証サーバー10Dを介しフォントサーバー10Cへキー入力確定文字の文字コード変換をリクエストすると、システム制御部303は、その普通文字コードに対応した変換テーブル記憶部211C内の位置から秘密文字コードを読み出させ、さらにこの秘密文字コードに対応したコード変換テーブル記憶部41A1内の位置からテンポラル文字コードを読み出させ、これをクライアント11に送信する。
次に、複数のクライアントに対するデータベースサーバー10B及びフォントサーバー10Cでのコード変換/逆変換テーブルの使用について説明する。
データベースサーバー10Bのコード変換部401Aは、複数のコード変換テーブルを備え、コード逆変換部402Aは、これらに対応した複数のコード逆変換テーブルを備えている。
フォントサーバー10Cでは、テーブル作成部403Aがコード変換テーブルとコード逆変換テーブルとの組を、空き時間において、未使用のコード変換テーブルの数が設定した最大値になるまで作成する。システム制御部301は、該複数のコード変換テーブルのうち未使用のコード変換テーブルの数が所定数以下になると、認証サーバー10Dを介しフォントサーバー10Cへテーブル送信を要求する。システム制御部303はこの送信要求に応答して、テーブル作成部403を介しコード変換テーブルとコード逆変換テーブルとの組のコピーを取得し、データベースサーバー10Bへ送信する。
サーバー10B及び10Cにおけるコード変換テーブルとコード逆変換テーブルとの組には、テーブルID(TID)が付与されている。システム制御部301は、アプリケーションプログラムに対しコード変換テーブルとコード逆変換テーブルとの組の使用を開始する毎に、該アプリケーションプログラムのID(AID)をTIDに対応付ける。すなわち、AIDとTIDの対応付けのテーブル53がシステム制御部301により管理される。
システム制御部301はAID/TIDテーブル53を参照することにより、クライアントによる検索要求後の更新又は登録要求において、使用すべき逆変換テーブルを決定する。
フォントサーバー10Cも、AID/TIDテーブル53と同期を取ったテーブル63を備えている。すなわち、システム制御部301がAID/TIDテーブル53の内容を変更する毎に、この変更が認証サーバー10Dを介してシステム制御部303に伝えられ、システム制御部303によりAID/TIDテーブル63の内容も同様に変更される。
システム制御部303はAID/TIDテーブル63を参照することにより、クライアントからの復号要求に対し、使用すべき逆変換テーブルを決定する。
このような構成により、上記実施例2で行われた処理と実質的に同じ処理が行われる。上述の複数テーブルの使用に関しては、上述の図27〜図29の実施例についても同様である。
本実施例11によれば、フォントサーバー10C及び認証サーバー10Dを管理センター60に配置しているので、1つの管理センター60を複数の社内LAN50に結合することにより、機密データであるアドレスマッピングテーブル、普通文字コード変換テーブル及び認証用照合データを効率的、集中的に監視することができるとともに、本システムを利用する企業の秘密情報管理負担を軽減することができる。
なお、認証サーバー10Dによる認証方法については、公知の方法を用いてもよい。
乱数を用いてコード逆変換テーブルを作成する場合には、乱数発生系列を定めるパラメータ値又はこれに関係した値をフォントサーバー10Cからデータベースサーバー10Bへ送信することにより、フォントサーバー10Cで作成されるコード逆変換テーブルと同じテーブルをデータベースサーバー10Bで作成し、さらにコード逆変換テーブルに基づいてコード変換テーブルを作成してもよい。
また、コード逆変換部402Aをデータベースサーバー10Bに備えずに、フォントサーバー10Cのみに備え、フォントサーバー10Cのこれを介してデータベースサーバー10Bに登録又は更新をリクエストする構成であってもよい。逆に、コード逆変換記憶部41B1をフォントサーバー10Cに備えずに、データーベースサーバー10Bのコード逆変換部402Aを介してフォントサーバー10Cに復号要求する構成であってもよい。
さらに、フォントサーバー10C及び認証サーバー10Dを、社内の管理センター60に配置し、社内LAN50に結合した構成であってもよい。
また、フォントサーバー10Cと認証サーバー10Dとを1つのコンピュータで構成してもよいことは勿論である。
TIDとAIDの対応付けはテーブルの形でなくてもよい。例えば、各変換テーブルにそのTIDとAIDとを属性として付加してもよい。また、AIDの替わりにクライアントを識別するIDを用いてもよい。
図32は、本発明の実施例12のコンピュータネットワークシステムを示す概略ブロック図である。
この実施例では、図27のサーバー10として、秘密文字コードを使用せずに普通文字コードを使用するアプリケーションサーバー10E及びファイルサーバー10Fを用いている。また、アプリケーションサーバー10E及びファイルサーバー10Fはいずれも、直接クライアントと通信することが禁止されており、必ずテンポラル文字コード作成・復号装置20Aを介してクライアントと通信する。
以下、本システムの2つの適用例について説明する。
(1)ソースコードプログラム漏洩防止
クライアントとサーバーとは、社内LANに結合されている。
ファイルサーバー10Fには、プログラムのソースコードファイルが格納される。このソースコードファイルは、テンポラル文字コード作成・復号装置20Aを介して普通文字コードがテンポラル文字コードに変換され、クライアントに送信される。
プログラマーがソースコードを作成し又は修正してファイルサーバー10F側へ送信すると、テンポラル文字コード作成・復号装置20Aでテンポラル文字コードが普通文字コードに逆変換された後、ファイルサーバー10Fに格納される。
プログラマーがキー入力によりソースコードを作成している時、文字入力が確定する毎に、実施例1で述べたように普通文字コードが秘密文字コード(本実施例ではテンポラル文字コード)に変換される。
テンポラル文字コード変更のタイミングは、プログラマーがソースコードの作成を開始し又はファイルサーバー10Fからソースコードファイルを読み出す際である。
アプリケーションサーバー10Eには、コンパイラ及びデバッガが登録されている。アプリケーションサーバー10Eは、クライアントの要求に応じて、ファイルサーバー10F内のソースコードファイルを読み出しコンパイル又はデバッグを行い、その結果をクライアントに返す。コンパイルされたバイナリファイルはテンポラル文字コード作成・復号装置20Aで変換されないので、クライアントにおいてこのバイナリファイルを実行させることができる。
このようなシステムによれば、ソースコードプログラムにテンポラル文字コードが使用されるので、ファイルサーバー10Fからソースコードファイルを読み出す毎に文字コードが変化し、ソースコードプログラムを社外に持ち出すことが実質的に防止される。
(2)ワープロソフト等の文書ファイル等漏洩防止
クライアントとサーバーとは、社内LANに結合されている。
アプリケーションサーバー10Eには、事務で使用されるワープロソフトや表計算ソフト等が登録されている。ファイルサーバー10Fには、これらのソフトで処理される、普通文字コード(ワープロソフト等で普通に用いられている文字コード)を用いた文書ファイル等が格納される。文書ファイル等内の文字コード列には、上述の文字コード開始コード及び文字コード終了コードが実質的に付加されている。実質的にとは、例えば修飾開始コードが文字コード終了コードを兼ねている場合などを含む意味である。
文書ファイル等は、テンポラル文字コード作成・復号装置20Aを介して普通文字コードがテンポラル文字コードに変換され、クライアントに送信される。操作者が文書ファイル等を作成し又は修正してファイルサーバー10F側へ送信すると、テンポラル文字コード作成・復号装置20Aでテンポラル文字コードが普通文字コードに逆変換された後、ファイルサーバー10Fに格納される。文字入力については上記(1)と同様である。テンポラル文字コード変更のタイミングは、操作者が文書ファイル等を開く際である。
このようなシステムによれば、文書ファイル等にテンポラル文字コードが使用されるので、ファイルサーバー10Fから文書ファイル等を読み出す毎に文字コードが変化し、ソースコードプログラムを社外に持ち出すことが実質的に防止される。
図33は、本発明の実施例13のコンピュータネットワークシステムを示す概略ブロック図である。図34は、図33中のWebアプリケーションサーバー、認証サーバー及びフォントサーバーの概略機能ブロック図である。
このシステムは、電子出版物漏洩防止(著作権保護)を目的としたものである。
クライアント11〜1Nと出版社50Aのサーバーとは、インターネット52を介して結合されている。インターネット52には、管理センター60Aのサーバーが接続され、これは図30の管理センター60と類似している。
出版社50Aでは、Webアプリケーションサーバー10E1にファイルサーバー10Fが結合され、Webアプリケーションサーバー10E1がファイアウォール51を介してインターネット52に結合されている。
ファイルサーバー10Fには、百科事典、小説、漫画、定期刊行物等の著作物が電子ファイルとして格納されている。各著作物は、普通文字コードが用いられている。その文字コード列には、上述の文字コード開始コード及び文字コード終了コードが実質的に付加されている。
Webアプリケーションサーバー10E1は、有料又は無料で認証サーバー10D1に予め登録されたユーザーのクライアントからの閲覧要求に応じて、その著作物の該当ページをHTMLファイル又はXMLファイルに変換し、システム制御部301Aに供給する。システム制御部301Aは、このファイル中の本体部をコード変換部401Aへ供給する。コード変換部401Aは”>”のコードを開始コードとし”<”のコードを終了コードとし、開始コードと終了コードとの間の普通文字コードをテンポラル文字コードに変換し、その他の部分は変換せずそのままとし、システム制御部301Aに返す。システム制御部301Aはこれをリクエスト元のクライアントのブラウザに、通信インタフェース2121を介して送信する。
実施例1で述べた、ブラウザに対するプラグイン機能により、テンポラル文字コードが実施例11と同様に認証サーバー10D1を介してフォントサーバー10C1に送信される。フォントサーバー10C1はそのグリフデータをクライアントに送信する。該プラグイン機能によりグリフイメージがブラウザのウインドウ内の該当個所に描画される。
認証サーバー10D1は、ユーザー登録・変更・抹消部64において新規ユーザーの登録、登録内容の変更、登録の抹消処理を照合データ記憶部211Dに対して行う。新規ユーザーに対しシステム制御部302は、上記プラグインモジュール65を送信する。
Webアプリケーションサーバー10E1にはコード逆変換部を備える必要が無く、フォントサーバー10C1には普通文字コード変換記憶部を備える必要が無い点で図31と異なる。他の点は、実施例11と同一である。
このようなシステムによれば、テンポラル文字コードが使用されるので、ファイルサーバー10Fから著作物を読み出す毎に文字コードが変化し、例え正規の登録ユーザーであっても、電子出版物の外部持ち出しが実質的に防止される。これにより出版社は、躊躇すること無く、インターネットを介して電子出版物を閲覧に供することが可能となる。
以上の実施例では文字コードを変換/逆変換するので、数値を秘密化する場合には数値を文字の形式にする必要がある。見積書や請求書は、数値が秘密情報である。既存のデータを変更することなく、かつ、既存のアプリケーションプログラムを少し変更するだけで数値を秘密化することができれば、本発明の利用範囲が広くなる。
そこで、本実施例14では、バイナリコード(数値コード)についても同様に変換/逆変換することにより、情報漏洩を防止する。
図35は本発明の実施例14の説明図であって、(A)はバイナリコード変換説明図、(B)はバイナリコード逆変換説明図である。図36は実施例14のテンポラルバイナリコード作成・復号装置21Eを示す概略ブロック図である。
バイナリコードが32ビットの整数である場合について考える。32ビット単位で一意の整数に変換すると、変換テーブルサイズが大きくなり過ぎるので、図35(A)に示すように、整数のバイナリコード70を8ビット×4列に分割し、それぞれ8ビット変換テーブル710〜713で一意の数値に変換して、テンポラルバイナリコード72にする。変換テーブル71を構成する8ビット変換テーブル710〜713は、互いに同一でも異なるものでもよい。
図36において、システム制御部30Dは、サーバー10からのデータに含まれるバイナリコード70を、コード変換部401Cに供給してテンポラルバイナリコード72にし、テンポラルバイナリコード72を含むデータを通信インタフェース212を介しクライアント11に送信する。
クライアント11でテンポラルバイナリコード72を表示する場合、テンポラルバイナリコード作成・復号装置21Eにテンポラルバイナリコード72を送信する。システム制御部30Dはこれに応答して、テンポラルバイナリコード72をコード逆変換部402Cに供給する。コード逆変換部402Cは図35(B)に示すように8ビット逆変換テーブル730〜783からなる逆変換テーブル73を備え、これでテンポラルバイナリコード72を普通バイナリコード70に戻す。
システム制御部30Dは、この普通バイナリコード70を10進数コード変換部211pに供給して10進数コードに変換させる。10進数コードの各桁は、順次文字コード変換部211qに供給されて普通文字コードに変換され、普通文字コードがアドレスマッピングテーブルRAM211aに供給されて、対応するグリフデータのアドレスに変換され、これに基づいてフォントROM211bからグリフデータが読み出され、さらにこれがビットマップ展開部に供給されてラスタライズされ、システム制御部30Dを介してクライアント11へ送信される。
クライアント11はこれに応答して、テンポラルバイナリコード72に対応した整数を描画させる。
浮動小数点数についても同様である。本発明の他の点は、例えば実施例12と同一である。
なお、図36のコード逆変換部402Cと10進数コード変換部211pと文字コード変換部211qとアドレスマッピングテーブルRAM211aの内容を文字描画部としてこれを装置21からクライアント11の記憶部へ送信し格納させ、これらとクライアント11のOSに属するフォントとビットマップ展開部とでクライアント11において復号し、文字描画部をテンポラルに更新する構成であってもよい。また、用途に応じ、10進数コード変換部の替わりに8進数コード変換部又は16進数変換部等のN進数変換部を用いた構成であってもよい。
本発明には、外にも種々の変形例が含まれる。
例えば、上記実施例の組み合わせも本発明に含まれる。すなわち、例えば16ビットの文字コードを図35に示すように8ビット単位で変換/逆変換する構成であってもよい。また、図1において、サーバー10に、図28のテンポラル文字コード作成・復号装置20Aの復号機能以外を備え、復号のためのテーブルをクライアント11〜1Nを介しそれぞれ復号装置21〜2Nに送信し、テンポラル文字コードを復号装置21〜2Nで復号する構成であってもよい。フォントはROMではなくハードディスク等の外部記憶装置に格納されたものであってもよいことは勿論である。テーブルRAMについても同様である。
特に実施例1〜6のようにクライアント毎に復号部等を備える場合には、照合データを書き換え可能にし、認証部が不正と判定した場合には、照合データ(認証用データ)も書き換え又は消去するようにしてもよい。
データベースサーバーにおいては、リクエストに応じてデータベースからデータを選択的に取り出した後(普通文字コードのカラムについて並び替え等を行う場合にはさらに並び替えを行った後)に、上述のように文字コードをテンポラルコードに変換することができる。したがって、システム管理者であってもテンポラル文字コードしか扱えないようにしておけば、データベースに秘密文字コードを用いる必要がなく、構成が簡単になる。この場合、実施例4で述べた検索前処理及び検索後処理を行う必要が無くなる。
また、ユーザーのパスワードや、ヒット件数制限などのモードの選択に応じて、普通文字コードを使用できるように構成してもよい。この構成は、図22において、変換テーブルで文字コードを普通文字コードに変換(普通文字コードを普通文字コードに変換する場合を含む)すればよい。この場合、テーブルカラム単位で普通文字コードに変換するかどうかを定めることができる。これにより、例えば住所、氏名及び郵便番号のみ普通文字コードを使用して、通常の印刷プログラムで宛名シール等を印刷することができ、利便性とセキュリティ確保の両方を実現することが可能となる。
また、ヒット件数制限を緩和するとともに、テンポラル文字コードに変換するテーブルの更新をより頻繁に行うようにする構成であってもよい。
上述のサーバー及び特定のクライアントをそれぞれクライアント及びサーバーとして構成することにより、クライアントにおいて普通文字コードのデータを作成しこれを秘密文字コードに変換してサーバーのデータベースに格納する場合にも本発明を適用することができる。
以上の説明から明らかなように、本発明は柔軟性に富んでいるので、その適用範囲は広く、多くの利用者の要求に応えることができ、ネットワーク産業の発達に寄与するところが大きい。
本発明の実施例1のコンピュータネットワークシステムを示す概略ブロック図である。 図1中のクライアントと秘密文字コード復号装置のハードウエア概略構成を示すブロック図である。 図2の秘密文字コード復号装置の機能ブロック図である。 クライアントコンピュータでアプリケーションプログラムを起動した時の処理を示す概略フローチャートである。 図4のステップS9においてクライアントのアプリケーションプログラムにより表示される検索画面である。 検索結果の画面を示す図である。 画面上に文字を描画するためのPRINTサブルーチン実行手順を示すフローチャートである。 図3の秘密文字コード復号装置の電源オン時に、システム制御部により実行される手順を示すフローチャートである。 図3のICメモリカードからアドレスマッピッグテーブルRAMへのランダムな書き込み処理手順を示すフローチャートである。 図9の処理説明図である。 グリフデータのアドレスマップ説明図である。 本発明の実施例2のコンピュータネットワークシステムを示す概略ブロック図である。 図12中のテンポラル文字コード作成・復号装置の概略構成を示すブロック図である。 図13中のコード変換・逆変換部の、一部を機能的に示す概略構成ブロック図である。 図14中のコード変換テーブルRAMの内容をテーブル作成部でランダムかつ高速に更新するための方法を示すフローチャートである。 本発明の実施例3に係るテンポラル文字コード作成・復号装置の概略構成を示すブロック図である。 交互に切り換えられるコード変換テーブルRAMを示すブロック図である。 本発明の実施例4に係るテンポラル文字コード作成・復号装置の概略構成を示すブロック図である。 図18中の検索前処理部及び後処理部での処理説明図である。 本発明の実施例5のコード変換・復号テーブル作成装置を示す概略ブロック図である。 図20のアドレスマッピッグテーブルRAMの内容が2回、それぞれAMT1及びAMT2としてクライアントの記憶装置に格納された状態を示すブロック図である。 本発明の実施例6のコード変換部の概略構成を示すブロック図である。 本発明の実施例6のコード逆変換部の概略構成を示すブロック図である。 図22のコード変換部による処理の説明図である。 図23のコード逆変換部による処理の説明図である。 本発明の実施例7のコンピュータネットワークシステムを示す概略ブロック図である。 本発明の実施例8のコンピュータネットワークシステムを示す概略ブロック図である。 本発明の実施例9のコンピュータネットワークシステムを示す概略ブロック図である。 本発明の実施例10のコンピュータネットワークシステムを示す概略ブロック図である。 本発明の実施例11のコンピュータネットワークシステムを示す概略ブロック図である。 図30中のデータベースサーバー、認証サーバー及びフォントサーバーの概略機能ブロック図である。 本発明の実施例12のコンピュータネットワークシステムを示す概略ブロック図である。 本発明の実施例13のコンピュータネットワークシステムを示す概略ブロック図である。 図33中のWebアプリケーションサーバー、認証サーバー及びフォントサーバーの概略機能ブロック図である。 本発明の実施例14の説明図であって、(A)はバイナリコード変換説明図、(B)はバイナリコード逆変換説明図である。 本発明の実施例14のテンポラルバイナリコード作成・復号装置を示す概略ブロック図である。
符号の説明
10 サーバー
10A Webアプリケーションサーバー
10B データベースサーバー
10C フォントサーバー
10D 認証サーバー
10E アプリケーションサーバー
10F ファイルサーバー
11〜1N、11A〜1NA クライアント
110、210 MPU
111 ビデオRAM
112 入力インタフェース
113、115、212 通信インタフェース
114、211 記憶装置
116 ビデオコントローラ
117 表示装置
118 入力装置
20〜2N 秘密文字コード復号装置
20A、21A〜21C テンポラル文字コード作成・復号装置
21D コード変換・復号テーブル作成装置
21E テンポラルバイナリコード作成・復号装置
211a、AMT アドレスマッピッグテーブルRAM
211b フォントROM
211d 照合データROM
211g アドレスマッピングテーブル作成部
211r ビットマップ展開部
30、30A〜30D、30X システム制御部
31 認証部
32 タイマー
33 ICメモリカード
40 コード変換・逆変換部
401、401A、401B コード変換部
402、402A、402B コード逆変換部
403、403A テーブル作成部
404 ワークメモリ
405 検索前処理部
406 検索後処理部
41A、41A1、41A2、41C コード変換テーブルRAM
41A3、45A、45B 切換スイッチ
41B、41D コード逆変換テーブルRAM
42A、42B、43A、43B 判断部
4243A、4243B 切換スイッチ制御部
44A、44B フラグ
46A、46B 加減算部
47A、47B オフセット値テーブル
48A、48B 使用テーブル決定部
50 社内LAN
51、61 ファイアウォール
60 管理センター
70 普通バイナリコード
710〜713 変換テーブル
72 テンポラルバイナリコード
730〜733 逆変換テーブル
TB1〜TB9、TBa〜TBd テキストボックス
AMT1、AMT2 アドレスマッピングテーブル
OFV1、OFV2、OFVi オフセット値
1A〜6A 変換テーブル
1B〜6B 逆変換テーブル

Claims (38)

  1. フォント記憶部(図3、211b)と、
    クライアントを識別するためのデータを含む照合データが格納される照合データ記憶部(211d)と、
    供給される秘密文字コードに応答して、該フォント記憶部から対応するグリフデータを取り出す復号部(211a)と、
    該照合データと供給される照合用データとに基づいて該クライアントに対する許可/禁止を判定する認証部(31)と、
    該クライアントから受信した識別データを該認証部に供給して該判定を行わせ、該認証部が許可を判定した場合には該クライアントから受信した秘密文字コードを該復号部に供給してグリフデータを取得し該グリフデータを該クライアントに送信する制御部(30)と
    を有することを特徴とする秘密文字コード復号装置。
  2. 文字コードをテンポラル文字コードに変換するための変換テーブルを備えたコード変換部(図18、401A)と、
    テンポラル文字コードを文字コードに変換するための逆変換テーブルを備えたコード逆変換部(402A)と、
    フォント記憶部(211b)と、
    文字コードに基づいて該フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブル記憶部を備えた復号部(211a)と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と、
    サーバーから受信した文字コードを該コード変換部に供給してテンポラル文字コードを取得しこれをクライアントに送信し、該クライアントから受信したテンポラル文字コードを該コード逆変換部に供給して文字コードを取得しこれを該サーバーに送信し、該クライアントから受信したテンポラル文字コードを該逆変換テーブルに基づいて文字コードに変換し該文字コードを該復号部に供給してグリフデータを取得し該グリフデータを該クライアントに送信し、該変換を行わせる制御部と
    を有することを特徴とするテンポラル文字コード作成・復号装置。
  3. 文字コードをテンポラル文字コードに変換するための変換テーブルを備えたコード変換部(図20、401A)と、
    テンポラル文字コードを文字コードに変換するための逆変換テーブルを備えたコード逆変換部(402A)と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と、
    文字コードに基づいてクライアント側フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブル記憶部(211a)と、
    テンポラル文字コードに基づきクライアント側のフォント記憶部から対応するグリフデータを取り出すための第2アドレスマッピングテーブル記憶部(AMT)と、
    該逆変換テーブルと該第1アドレスマッピングテーブル記憶部との内容に基づいて、該第2アドレスマッピングテーブル記憶部の内容を定めるアドレスマッピングテーブル作成部(211g)と、
    該第2アドレスマッピングテーブル記憶部の内容が更新される毎にこれをクライアントに送信し、サーバーから受信した文字コードを該コード変換部に供給してテンポラル文字コードを取得しこれを該クライアントに送信し、該クライアントから受信したテンポラル文字コードを該コード逆変換部に供給して文字コードを取得しこれを該サーバーに送信し、該変換を行わせる制御部と
    を有することを特徴とするコード変換・復号テーブル作成装置。
  4. 該サーバーはデータベースサーバーを含み、
    該コード変換部は、選択的に使用される互いに異なる該変換テーブルを複数備え(図22、41C)、
    該コード逆変換部は、選択的に使用される、該複数の変換テーブルのそれぞれに対応した該逆変換テーブルを備え(図23、41D)、
    該サーバー及び該クライアントから受信するデータはいずれも、文字コード及びテンポラル文字コードの列毎に開始コード及び終了コードが付与されており、
    該制御部は、該サーバーから受信した開始コードのレコード上位置に基づいて該複数の変換テーブルの1つを選択し(図22、48A、47A及び46A)、該クライアントから受信した開始コードのレコード上位置に基づいて該複数の逆変換テーブルの1つを選択する(図23、48B、47B及び46B)
    ことを特徴とする請求項2又は3に記載の装置。
  5. 該文字コードは秘密文字コードであり、
    ワーク記憶部(図19、404)と、
    検索結果をソートする句を含むクエリーをソート句と該クエリーから該ソート句を除いた基本クエリーとに分割する検索前処理部(405)と、
    該ワーク記憶部内のデータに含まれる秘密文字コードを普通文字コードに変換し、該変換された普通文字コードを含むデータを該ソート句に基づいてソートし、該ソートされたデータに含まれる普通文字コードを秘密文字コードに変換する検索後処理部(406)と、
    をさらに備え、該制御部(30B)は、該クライアントから受信したデータが、該サーバーに対するクエリーである場合、該検索前処理部に対し該分割を行わせ、該基本クエリーを該サーバーに送信し、該サーバーから検索結果のデータを受信して該ワーク記憶部に格納させ、該検索後処理部に処理を実行させ、その結果を該コード変換部(401A)を介して該クライアントに送信する
    ことを特徴とする請求項2乃至4のいずれか1つに記載の装置。
  6. クライアント及びアプリケーションプログラムの識別データが格納される記憶部(図20、211d)と、
    該識別データと供給される識別用データとに基づいて該クライアントの該アプリケーションプログラムに対する許可/禁止を判定する認証部(31)と、
    をさらに有し、該制御部(30C)は、クライアントから受信した識別データを該認証部に供給して該判定を行わせ、該認証部が許可を判定した場合には該クライアントに対する送信を有効にすることを特徴とする請求項2乃至5のいずれか1つに記載の装置。
  7. 該制御部は、該認証部が禁止を判定した場合には、該第1アドレスマッピングテーブル記憶部の内容を書き換え又は消去する(図4、SB)ことを特徴とする請求項6に記載の装置。
  8. 該第1アドレスマッピングテーブル記憶部は揮発性記憶装置(211a)に含まれ、
    不揮発性記憶媒体(211d)が着脱自在に装着され、該揮発性記憶装置に結合されたアダプタ(211ad)をさらに備え、
    該制御部は、該不揮発性記憶媒体の記憶内容に応じたデータを該揮発性記憶装置に書き込むことにより該第1アドレスマッピングテーブル記憶部の内容を定める
    ことを特徴とする請求項7記載の装置。
  9. 文字コードをテンポラル文字コードに変換するための変換テーブルを備えたコード変換部(図18、401A)と、
    テンポラル文字コードを文字コードに変換するための逆変換テーブルを備えたコード逆変換部(402A)と、
    フォント記憶部(211b)と、
    文字コードに基づいて該フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブル記憶部を備えた復号部(211a)と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と、
    文字コードを該コード変換部に供給してテンポラル文字コードを取得しこれをクライアントに送信し、該クライアントから受信したテンポラル文字コードを該コード逆変換部に供給して文字コードを取得し、取得した文字コードを該復号部に供給してグリフデータを取得し該グリフデータを該クライアントに送信し、該変換を行わせる制御部(30B)と
    を有することを特徴とするサーバー。
  10. データが格納されたサーバー本体と、
    コードを秘密コードに変換するための変換テーブルを備えたコード変換部(図34、401A)と、
    該サーバー本体から文字コード又はバイナリコードを受け取り該文字コード又はバイナリコードを該コード変換部に供給して秘密文字コード又は秘密バイナリコードを取得しクライアントに送信する制御部(301A)と
    を有することにより、該サーバー本体に格納されているデータを見かけ上秘密コード化することを特徴とするサーバー。
  11. 該コード変換部は複数の変換テーブルを備え、
    該複数の変換テーブルの1つを使用しているクライアントのアプリケーションプログラムの識別コードと該1つの変換テーブルとを対応させたデータが格納される記憶部(63)
    をさらに有することを特徴とする請求項10記載のサーバー。
  12. コードを秘密コードに変換するための変換テーブルを備えたコード変換部と、
    サーバーから文字コード又はバイナリコードを受け取り該文字コード又はバイナリコードを該コード変換部に供給して秘密文字コード又は秘密バイナリコードを取得しクライアントに送信する制御部と
    を有することにより、該サーバーに格納されているデータを見かけ上秘密コード化することを特徴とする秘密コード化装置。
  13. 該コード変換部は複数の変換テーブルを備え、
    該複数の変換テーブルの1つを使用しているクライアントのアプリケーションプログラムの識別コードと該1つの変換テーブルとを対応させたデータが格納される記憶部
    をさらに有することを特徴とする請求項12記載の秘密コード化装置。
  14. フォント記憶部(図34、211B)と、
    テンポラル文字コードを文字コードに変換するための逆変換テーブルを備えたコード逆変換部(41B1)と、
    文字コードに基づいて該フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブル記憶部を備えた復号部(211A)と、
    該逆変換部に対し該クライアントから受信したテンポラル文字コードを文字コードに変換させ、該文字コードを該復号部に供給してグリフデータを取得し、該グリフデータを該クライアントに送信する制御部(303)と
    を有することを特徴とするフォントサーバー。
  15. 該コード逆変換部は複数の逆変換テーブルを備え、
    該複数の逆変換テーブルの1つを使用しているクライアントのアプリケーションプログラムの識別コードと該1つの逆変換テーブルとを対応させたデータが格納される記憶部(53)
    をさらに有することを特徴とする請求項14記載のフォントサーバー。
  16. 文字コードをテンポラル文字コードに変換するための変換テーブルを備えたコード変換部(図20、401A)と、
    テンポラル文字コードを文字コードに変換するための逆変換テーブルを備えたコード逆変換部(402A)と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と、
    文字コードに基づいてクライアント側フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブル記憶部(211a)と、
    テンポラル文字コードに基づきクライアント側のフォント記憶部から対応するグリフデータを取り出すための第2アドレスマッピングテーブル記憶部(AMT)と、
    該逆変換テーブルと該第1アドレスマッピングテーブル記憶部との内容に基づいて、該第2アドレスマッピングテーブル記憶部の内容を定めるアドレスマッピングテーブル作成部(211g)と、
    該第2アドレスマッピングテーブル記憶部の内容が更新される毎にこれをクライアントに送信し、文字コードを該コード変換部に供給してテンポラル文字コードを取得しこれを該クライアントに送信し、該クライアントから受信したテンポラル文字コードを該コード逆変換部に供給して文字コードを取得する制御部(30C)と
    を有することを特徴とするサーバー。
  17. 該コード変換部は、選択的に使用される互いに異なる該変換テーブルを複数備え(図22、41C)、
    該コード逆変換部は、選択的に使用される、該複数の変換テーブルのそれぞれに対応した該逆変換テーブルを備え(図23、41D)、
    該サーバーにおけるデータは文字コード列毎に開始コード及び終了コードが付与されており、クライアントから受信するデータはテンポラル文字コード列毎に開始コード及び終了コードが付与されており、
    該制御部は、該サーバーにおける開始コードのレコード上位置に基づいて該複数の変換テーブルの1つを選択し(図22、48A、47A及び46A)、該クライアントから受信した開始コードのレコード上位置に基づいて該複数の逆変換テーブルの1つを選択する(図23、48B、47B及び46B)
    ことを特徴とする請求項9又は16に記載の装置。
  18. 文字コードをテンポラル文字コードに変換するための変換テーブルを備たコード変換部(図34、401A)と、
    サーバーからの文字コードを又は該サーバにおいて該文字コードを、該変換テーブルに基づいてテンポラル文字コードに変換しこれを該クライアントに送信するコード変換制御部(301A)と、
    テンポラル文字コードを文字コードに変換するための逆変換テーブル(41B1)を備え、該クライアントからの復号要求に応答してテンポラル文字コードを該逆変換テーブルに基づき文字コードに変換し、第1アドレスマッピングテーブル(211A)に基づき該文字コードを復号してグリフデータを取得し、これを該クライアントに送信する復号部と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と
    を有することを特徴とする秘密情報漏洩防止システム。
  19. 文字コードをテンポラル文字コードに変換するための変換テーブルを備えたコード変換部(図20、401A)と、
    サーバーからの文字コードを又は該サーバにおいて該文字コードを、該変換テーブルに基づいてテンポラル文字コードに変換しこれを該クライアントに送信するコード変換制御部(30C)と、
    テンポラル文字コードを文字コードに変換するための逆変換テーブル(41B)と、文字コードに基づいてクライアント側フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブル記憶部(211a)と、テンポラル文字コードに基づきクライアント側のフォント記憶部から対応するグリフデータを取り出すための第2アドレスマッピングテーブル記憶部(AMT)と、該逆変換テーブルと該第1アドレスマッピングテーブル記憶部との内容に基づいて、該第2アドレスマッピングテーブル記憶部の内容を定めこれをクライアントに送信するアドレスマッピングテーブル作成部(211g)とを備えた文字復号データ作成部と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と
    を有することを特徴とする秘密情報漏洩防止システム。
  20. バイナリコードをテンポラルバイナリコードに変換するための変換テーブルを備えたコード変換部(図18、401A)と、
    テンポラルバイナリコードをバイナリコードに変換するための逆変換テーブルを備えたコード逆変換部(402A)と、
    フォント記憶部(211b)と、
    バイナリコードに基づいて該フォント記憶部から対応するグリフデータを取り出す復号部と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と、
    サーバーから受信したバイナリコードを該コード変換部に供給してテンポラルバイナリコードを取得しこれをクライアントに送信し、該クライアントから受信したテンポラルバイナリコードを該コード逆変換部に供給してバイナリコードを取得しこれを該サーバーに送信し、該クライアントから受信したテンポラルバイナリコードを該逆変換テーブルに基づいてバイナリコードに変換し該バイナリコードを該復号部に供給してグリフデータを取得し該グリフデータを該クライアントに送信し、該変換を行わせる(30B)と
    を有することを特徴とするテンポラルバイナリコード作成・復号装置。
  21. バイナリコードをテンポラルバイナリコードに変換するための変換テーブルを備えたコード変換部(図20、401A)と、
    テンポラルバイナリコードをバイナリコードに変換するための逆変換テーブルを備えたコード逆変換部(402A)と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と、
    バイナリコードをN進数コードに変換し該N進数コードの各桁を文字コードに変換するバイナリコード/文字コード変換部と、
    文字コードに基づきクライアント側フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブルを備えた第1アドレスマッピングテーブル記憶部と、
    テンポラルバイナリコードに基づきクライアント側のフォント記憶部から対応するグリフデータを取り出すための第2アドレスマッピングテーブル記憶部(AMT)と、
    該逆変換テーブルと該第1アドレスマッピングテーブル記憶部と該バイナリコード/文字コード変換部との内容に基づいて、該第2アドレスマッピングテーブル記憶部の内容を定めるアドレスマッピングテーブル作成部と、
    該第2アドレスマッピングテーブル記憶部の内容が更新される毎にこれをクライアントに送信し、サーバーから受信したバイナリコードを該コード変換部に供給してテンポラルバイナリコードを取得しこれを該クライアントに送信し、該クライアントから受信したテンポラルバイナリコードを該コード逆変換部に供給してバイナリコードを取得しこれを該サーバーに送信し、該変換を行わせる制御部と
    を有することを特徴とするコード変換・復号テーブル作成装置。
  22. バイナリコードをテンポラルバイナリコードに変換するための変換テーブルを備えたコード変換部(図18、401A)と、
    テンポラルバイナリコードをバイナリコードに変換するための逆変換テーブルを備えたコード逆変換部(402A)と、
    フォント記憶部(211b)と、
    バイナリコードに基づいて該フォント記憶部から対応するグリフデータを取り出す復号部と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と、
    サーバーから受信したバイナリコードを該コード変換部に供給してテンポラルバイナリコードを取得しこれをクライアントに送信し、該クライアントから受信したテンポラルバイナリコードを該コード逆変換部に供給してバイナリコードを取得し、該クライアントから受信したテンポラルバイナリコードを該逆変換テーブルに基づいてバイナリコードに変換し該バイナリコードを該復号部に供給してグリフデータを取得し該グリフデータを該クライアントに送信し、該変換を行わせる(30B)と
    を有することを特徴とするサーバー。
  23. バイナリコードをテンポラルバイナリコードに変換するための変換テーブルを備えたコード変換部(図20、401A)と、
    テンポラルバイナリコードをバイナリコードに変換するための逆変換テーブルを備えたコード逆変換部(402A)と、
    所定のタイミングで該変換テーブルと該逆変換テーブルとを更新するために該変換テーブルと該逆変換テーブルとを作成するテーブル作成部(403A)と、
    バイナリコードをN進数コードに変換し該N進数コードの各桁を文字コードに変換するバイナリコード/文字コード変換部と、
    文字コードに基づきクライアント側フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブルを備えた第1アドレスマッピングテーブル記憶部と、
    テンポラルバイナリコードに基づきクライアント側のフォント記憶部から対応するグリフデータを取り出すための第2アドレスマッピングテーブル記憶部(AMT)と、
    該逆変換テーブルと該第1アドレスマッピングテーブル記憶部と該バイナリコード/文字コード変換部との内容に基づいて、該第2アドレスマッピングテーブル記憶部の内容を定めるアドレスマッピングテーブル作成部と、
    該第2アドレスマッピングテーブル記憶部の内容が更新される毎にこれをクライアントに送信し、バイナリコードを該コード変換部に供給してテンポラルバイナリコードを取得しこれを該クライアントに送信し、該クライアントから受信したテンポラルバイナリコードを該コード逆変換部に供給してバイナリコードを取得する制御部と
    を有することを特徴とするサーバー。
  24. サーバーからクライアントが受信したデータの不正者による漏洩を防止する秘密情報漏洩防止方法において、該クライアントには表示装置が結合されており(図1)、
    フォント記憶部と、秘密文字コードに応答して該フォント記憶部から対応するグリフデータを取り出す復号部とを備えた秘密文字コード復号装置を、該クライアントに結合しておき、
    (a)該秘密文字コード復号装置と該クライアントとの間及び該クライアントと該サーバーとの間で相互認証を行い、その結果が正当であれば、
    (b)該サーバーは、該クライアントからの要求に応答して、秘密文字コードを含むデータを送信し、
    (c)該クライアントは、該秘密文字コードを該秘密文字コード復号装置に送信して復号要求し、
    (d)該秘密文字コード復号装置は、該復号要求に応答して該復号部を介し該フォント記憶部から、該秘密文字コードに対応するグリフデータを取り出して該クライアントに送信する
    ステップを有することを特徴とする秘密情報漏洩防止方法。
  25. サーバーからクライアントが受信したデータの不正者による漏洩を防止する秘密情報漏洩防止方法において、該クライアントには表示装置が結合されており(図12)、
    文字コードをテンポラル文字コードに変換するための変換テーブルを備えた変換部と、テンポラル文字コードを文字コードに逆変換するための逆変換テーブルを備えた逆変換部と、第1アドレスマッピングテーブルに基づきフォント記憶部から文字コードに対応するグリフデータを取り出す復号部とのいずれも、該サーバーと該クライアントとを結合する通信路に結合し又は該サーバーに備えておき、
    (a)該サーバーからの文字コードを又は該サーバにおいて該文字コードを、該変換テーブルに基づいてテンポラル文字コードに変換しこれを該クライアントに送信し、
    (b)該クライアントからの要求に応答してテンポラル文字コードを該逆変換テーブルに基づき文字コードに変換し、該第1アドレスマッピングテーブルに基づき該文字コードを復号してグリフデータを取得し、これを該クライアントに送信し、
    (c)所定のタイミングで該変換テーブルと該逆変換テーブルとを更新する
    ことを特徴とする秘密情報漏洩防止方法。
  26. 該変換部(図13、40)、該逆変換部(40)及び該復号部(211a、211b)は装置(21A)に備えられ、該装置が該クライアントと該サーバーとの間の通信路に結合されていることを特徴とする請求項25記載の秘密情報漏洩防止方法。
  27. 該変換部、該逆変換部及び該復号部は該サーバー(図28)に備えられていることを特徴とする請求項25記載の秘密情報漏洩防止方法。
  28. 該変換部はサーバーに備えられ(図34、401A)、該逆変換部(41B1)及び該復号部(211A、211B)はフォントサーバーに備えられていることを特徴とする請求項25記載の秘密情報漏洩防止方法。
  29. サーバーからクライアントが受信したデータの不正者による漏洩を防止する秘密情報漏洩防止方法において、該クライアントには表示装置が結合されており(図20、21)、
    文字コードをテンポラル文字コードに変換するための変換テーブルを備えた変換部と、テンポラル文字コードを文字コードに逆変換するための逆変換テーブルを備えた逆変換部と、文字コードに基づきクライアント側フォント記憶部から対応するグリフデータを取り出すための第1アドレスマッピングテーブルを備えた第1アドレスマッピングテーブル記憶部とのいずれも、該サーバーと該クライアントとを結合する通信路に結合し又は該サーバーに備えておき、
    テーブル更新処理と文字コード変換処理と復号処理とを有し、
    該テーブル更新処理では、
    (a)所定のタイミングで該変換テーブルと該逆変換テーブルとを更新し、該第1アドレスマッピングテーブルと該更新された逆変換テーブルとに基づいて、テンポラル文字コードに対応するグリフデータを該フォント記憶部から取り出すための第2アドレスマッピングテーブルを更新し、
    (b)該第2アドレスマッピングテーブルが更新される毎にこれを該クライアントに送信し、
    該文字コード変換処理では、
    (c)該サーバーからの文字コードを又は該サーバにおいて該文字コードを、該変換テーブルに基づいてテンポラル文字コードに変換しこれを該クライアントに送信し、
    該復号処理では、
    (d)該クライアントにおいて、該テンポラル文字コードに対応するグリフデータを、該第2アドレスマッピングテーブルに基づき該フォント記憶部から取得する
    ことを特徴とする秘密情報漏洩防止方法。
  30. 該変換部は、互いに異なる該変換テーブルを複数備え(図22)、
    該逆変換部は、該複数の変換テーブルのそれぞれに対応した該逆変換テーブルを複数備え(図23)、
    該ステップ(a)では、該サーバーからのレコードに含まれる文字コード列のカラム位置に応じて該複数の変換テーブルの1つを選択し、
    該クライアントでは、該カラム位置が文字表示領域に対応付けられており、
    該ステップ(b)では、該クライアントからのテンポラル文字コード列を該文字表示領域に応じて該複数の逆変換テーブルの1つを選択する
    ことを特徴とする請求項25に記載の秘密情報漏洩防止方法。
  31. 該更新においては、乱数を発生させ該乱数に基づいて該変換テーブル又は該逆変換テーブルを更新する(図15)ことを特徴とする請求項25乃至30のいずれか1つに記載の秘密情報漏洩防止方法。
  32. 該第1アドレスマッピングテーブルを備えた装置と該クライアントとの間及び該クライアントと該サーバーとの間で相互認証を行い、その結果が正当でなければ、該第1アドレスマッピングテーブルを書き換え又は消去する(図4、SB)ことを特徴とする請求項25乃至31のいずれか1つに記載の秘密情報漏洩防止方法。
  33. サーバーからクライアントが受信したデータの不正者による漏洩を防止する秘密情報漏洩防止方法において、該クライアントには表示装置が結合されており、
    バイナリコードをテンポラルバイナリコードに変換するための変換テーブルを備えた変換部(図32(A))と、テンポラルバイナリコードをバイナリコードに逆変換するための逆変換テーブルを備えた逆変換部(図32(B))と、フォント記憶部からバイナリコードに対応するグリフデータを取り出す復号部とのいずれも、該サーバーと該クライアントとを結合する通信路に結合し又は該サーバーに備えておき、
    (a)該サーバーからのバイナリコードを又は該サーバにおいて該バイナリコードを、該変換テーブルに基づいてテンポラルバイナリコードに変換しこれを該クライアントに送信し、
    (b)該クライアントからの要求に応答してテンポラルバイナリコードを該逆変換テーブルに基づきバイナリコードに変換し、該復号部で該バイナリコードを復号してグリフデータを取得し、これを該クライアントに送信し、
    (c)所定のタイミングで該変換テーブルと該逆変換テーブルとを更新する
    ことを特徴とする秘密情報漏洩防止方法。
  34. サーバーからクライアントが受信したデータの不正者による漏洩を防止する秘密情報漏洩防止方法において、該クライアントには表示装置が結合されており、
    バイナリコードをテンポラルバイナリコードに変換するための変換テーブルを備えた変換部と、テンポラルバイナリコードをバイナリコードに逆変換するための逆変換テーブルを備えた逆変換部と、バイナリコードをN進数コードに変換し該N進数コードの各桁を文字コードに変換するバイナリコード/文字コード変換部と、文字コードに基づきクライアント側フォント記憶部から対応するグリフデータを取り出すためのアドレスマッピングテーブルを備えたアドレスマッピングテーブル記憶部とのいずれも、該サーバーと該クライアントとを結合する通信路に結合し又は該サーバーに備えておき、
    テーブル更新処理とバイナリコード変換処理と復号処理とを有し、
    該テーブル更新処理では、
    (a)所定のタイミングで該変換テーブルと該逆変換テーブルとを更新し、該アドレスマッピングテーブルと該更新された逆変換テーブルとに基づいて、テンポラルバイナリコードに対応するグリフデータを該フォント記憶部から取り出すための文字描画部を更新し、
    (b)該文字描画部が更新される毎にこれを該クライアントに送信し、
    該バイナリコード変換処理では、
    (c)該サーバーからのバイナリコードを又は該サーバにおいて該バイナリコードを、該変換テーブルに基づいてテンポラルバイナリコードに変換しこれを該クライアントに送信し、
    該復号処理では、
    (d)該クライアントにおいて、該テンポラルバイナリコードに対応するグリフデータを該文字描画部から取得する
    ことを特徴とする秘密情報漏洩防止方法。
  35. テキストの文字コードが普通文字コードであるか秘密文字コードであるかを示す属性が定義されており、
    該属性が普通文字コードであることを示していると判定するとオペレーティングシステム又はユーザーのグリフ描画プログラムに普通文字コードを復号させ、該属性が秘密文字コードであることを示していると判定すると外部装置に秘密文字コードを復号させるプログラム
    を有することを特徴とするアプリケーションプログラム。
  36. 該アプリケーションプログラムはブラウザであり、HTMLファイル又はXMLファイルに用いられるフォントタグに関し、該属性が定義されていることを特徴とするブラウザ。
  37. 該プログラムはプラグインモジュールであることを特徴とする請求項35又は36記載のブラウザ。
  38. キー入力による普通文字コードの確定に応答してオペレーティングシステムに該普通文字コードを復号させるプログラムを備えたアプリケーションプログラムにおいて、
    該復号の終了に応答して、外部装置に対し該普通文字コードを秘密文字コードに変換させ、該普通文字コードを該秘密コードで置換するプログラム
    を有することを特徴とするアプリケーションプログラム。
JP2004222651A 2004-07-29 2004-07-29 秘密情報漏洩防止方法及び装置 Pending JP2006040186A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004222651A JP2006040186A (ja) 2004-07-29 2004-07-29 秘密情報漏洩防止方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004222651A JP2006040186A (ja) 2004-07-29 2004-07-29 秘密情報漏洩防止方法及び装置

Publications (1)

Publication Number Publication Date
JP2006040186A true JP2006040186A (ja) 2006-02-09

Family

ID=35905069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004222651A Pending JP2006040186A (ja) 2004-07-29 2004-07-29 秘密情報漏洩防止方法及び装置

Country Status (1)

Country Link
JP (1) JP2006040186A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009294242A (ja) * 2008-06-02 2009-12-17 Canon Inc サーバ装置、情報処理装置、データ処理方法、プログラム
JP2015011400A (ja) * 2013-06-26 2015-01-19 富士通株式会社 端末装置、情報処理装置、入力プログラムおよび入力方法
JP2015019126A (ja) * 2013-07-08 2015-01-29 A・Tコミュニケーションズ株式会社 コンテンツデータ処理装置、コンテンツデータ処理方法、及びプログラム
JP2015041993A (ja) * 2013-08-23 2015-03-02 富士ゼロックス株式会社 情報処理装置、画像処理装置、情報処理システム、およびプログラム
JP2016029585A (ja) * 2011-02-08 2016-03-03 株式会社ワイティーエム 駐車場管理システムおよび駐車場管理方法
JP2016091177A (ja) * 2014-10-31 2016-05-23 株式会社アドバンテスト 認証端末
US11899668B2 (en) 2013-08-12 2024-02-13 International Business Machines Corporation Database management apparatus, database control method and program

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009294242A (ja) * 2008-06-02 2009-12-17 Canon Inc サーバ装置、情報処理装置、データ処理方法、プログラム
JP2016029585A (ja) * 2011-02-08 2016-03-03 株式会社ワイティーエム 駐車場管理システムおよび駐車場管理方法
JP2015011400A (ja) * 2013-06-26 2015-01-19 富士通株式会社 端末装置、情報処理装置、入力プログラムおよび入力方法
JP2015019126A (ja) * 2013-07-08 2015-01-29 A・Tコミュニケーションズ株式会社 コンテンツデータ処理装置、コンテンツデータ処理方法、及びプログラム
US11899668B2 (en) 2013-08-12 2024-02-13 International Business Machines Corporation Database management apparatus, database control method and program
JP2015041993A (ja) * 2013-08-23 2015-03-02 富士ゼロックス株式会社 情報処理装置、画像処理装置、情報処理システム、およびプログラム
JP2016091177A (ja) * 2014-10-31 2016-05-23 株式会社アドバンテスト 認証端末
US9871788B2 (en) 2014-10-31 2018-01-16 Advantest Corporation Authentication terminal

Similar Documents

Publication Publication Date Title
Choudhury et al. Copyright protection for electronic publishing over computer networks
US8666065B2 (en) Real-time data encryption
US6601108B1 (en) Automatic conversion system
CN1326027C (zh) 具有数据加密和解密的打印数据通信
CN100533454C (zh) 打印管理***和打印管理方法
KR100536817B1 (ko) 작업 처리 장치를 연휴 동작시키는 정보 처리 장치 및 방법
CN109767375A (zh) 图像水印嵌入和追溯的方法及***
JP2008035494A (ja) 画像処理装置及び画像処理方法
JP2001526857A (ja) インテリジェント・ドキュメント上のマシン可読のデータを経由して電子的リソースにアクセスするための方法およびシステム
JP2007108883A (ja) 情報処理方法およびその装置
JP2008217716A (ja) 認証装置、画像形成装置、認証システム、認証プログラム、記録媒体および認証方法
US8887290B1 (en) Method and system for content protection for a browser based content viewer
JP2008177683A (ja) データ提供システム、データ受領システム、データ提供方法、データ提供プログラム及びデータ受領プログラム
JP2008193612A (ja) 文書処理装置およびプログラム
US20140245375A1 (en) Document authority management system, terminal device, document authority management method, and computer-readable recording medium
JP4831461B2 (ja) 文書処理装置及び方法
JP2006040186A (ja) 秘密情報漏洩防止方法及び装置
JP2007034490A (ja) 印刷システムおよび印刷制御方法
JP3984951B2 (ja) コンテンツ利用回数制限方法、コンテンツ利用端末装置、コンテンツ利用システム、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体
JP5012394B2 (ja) 画像処理システム及び画像処理プログラム
JP4584071B2 (ja) 暗号化電子文書処理システム、サービス提供装置、および、電子文書出力装置
JP2008052643A (ja) 文書処理システムおよび文書処理の制御方法
Choche et al. A methodology to conceal QR codes for security applications
JP2003296331A (ja) データ検索方法、データ検索システム、検索キーワード生成装置、及びコンピュータプログラム
JP2007295167A (ja) 画像処理装置、画像処理方法及び画像処理用プログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20060207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060207