JP5965360B2 - 情報処理システム、参照装置および参照プログラム - Google Patents

情報処理システム、参照装置および参照プログラム Download PDF

Info

Publication number
JP5965360B2
JP5965360B2 JP2013142443A JP2013142443A JP5965360B2 JP 5965360 B2 JP5965360 B2 JP 5965360B2 JP 2013142443 A JP2013142443 A JP 2013142443A JP 2013142443 A JP2013142443 A JP 2013142443A JP 5965360 B2 JP5965360 B2 JP 5965360B2
Authority
JP
Japan
Prior art keywords
data
database server
reference device
key
update
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.)
Expired - Fee Related
Application number
JP2013142443A
Other languages
English (en)
Other versions
JP2015014987A (ja
Inventor
一輝 中野
一輝 中野
紀貴 堀米
紀貴 堀米
俊之 森谷
俊之 森谷
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013142443A priority Critical patent/JP5965360B2/ja
Publication of JP2015014987A publication Critical patent/JP2015014987A/ja
Application granted granted Critical
Publication of JP5965360B2 publication Critical patent/JP5965360B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データベースサーバと、データベースサーバからデータを取得する複数の参照装置とを備える情報処理システム、参照装置および参照プログラムに関する。
情報機器の発達に伴い、データベースからデータを取得する複数の参照装置を備える情報処理システムが普及している。複数の参照装置はそれぞれ、データベースから取得したデータを用いてサービスを提供する。
このようなシステムにおいて、各参照装置がサービスを提供するために、データベースサーバは、各参照装置が必要なデータを収集して保存する。一つのデータベースサーバが、複数のサービスに関するデータを保持することができるので、データベースサーバの装置数を削減し、データ収容能力に基づいて柔軟に実装することが可能となる。この結果、情報処理システム全体について、設備コストを削減するとともに、運用性および保守性の向上が期待できる。
ここで一般的なデータベースサーバは、複数のテーブルを保有し、正規化されたデータを格納する。このようなデータベースサーバは、複数のテーブルを横断して検索する。従って、複数の参照装置からの複数の要求に応えるため、データベースサーバの負荷が高くなってしまう問題がある。
このような問題を解決するために、複数のデータベースサーバや複数のキャッシュサーバを用いて、各サーバにかかる負荷を分散する方法がある(例えば、特許文献1参照。)。
特開2012−141900号公報
しかしながら、複数のデータベースサーバや複数のキャッシュサーバを用いる場合、特許文献1に示されるように、各サーバが格納するデータについて同期する必要があり、各サーバに負担をかける場合が考えられる。
また、一つのデータベースサーバのみを用いる場合、複数のテーブルを保有し正規化されたデータを格納することが一般的であるので、このデータベースサーバの負荷が高くなってしまう問題がある。複数のサービスのデータを一つのデータベースサーバが管理する場合は特に、この問題は顕著になる。
従って本発明の目的は、データベースサーバの負担を軽減可能な情報処理システムと、この情報処理システムに用いられる参照装置および参照プログラムを提供することである。
上記課題を解決するために、本発明の第1の特徴は、データベースサーバと、前記データベースサーバからデータを取得する複数の参照装置とを備える情報処理システムに関する。本発明の第1の特徴に係る情報処理システムにおいて、データベースサーバは、複数の後記参照装置が共通して参照するキーと、各参照装置が抽出可能な複数の参照部分データを対応づけた対象データを含む格納データを記憶する記憶装置と、参照装置から入力されたキーに対応づけられた対象データを出力する制御手段と、を備える。参照装置は、データベースサーバから取得した対象データから、当該参照装置が抽出可能な参照部分データを抽出する抽出手段を備える。
ここで、対象データは、各参照装置がそれぞれ復号可能な形式で、それぞれ暗号化された参照部分データを含み、参照装置の抽出手段は、当該参照装置が復号に成功した参照部分データを抽出しても良い。
また、対象データは、複数の参照部分データのそれぞれについて、当該参照部分データを抽出させる参照装置の識別子を対応づけ、参照装置の抽出手段は、当該参照装置の識別子に対応づけられた参照部分データを抽出しても良い。
さらに対象データは、各参照装置が抽出可能な複数の参照部分データを連結したデータであって、参照装置の抽出手段は、対象データのうち当該参照装置が抽出可能なデータ位置を特定するマスクを用いて、前記参照部分データを抽出しても良い。
本発明の第2の特徴は、データベースサーバと、前記データベースサーバからデータを取得する複数の参照装置とを備える情報処理システムに用いられる参照装置に関する。本発明の第2の特徴に係る参照装置は、データベースサーバにキーを送信するとともに、当該キーに関連する対象データを取得する取得手段と、対象データから、当該参照装置が抽出可能な参照部分データを抽出する抽出手段を備える。
本発明の第3の特徴は、コンピュータを本発明の第2の特徴に記載の手段として機能させるための参照プログラムに関する。
本発明によれば、データベースサーバの負担を軽減可能な情報処理システムと、この情報処理システムに用いられる参照装置および参照プログラムを提供することができる。
本発明の実施の形態に係る情報処理システムのシステム構成を説明するとともに、更新装置、データベースサーバおよび参照装置のハードウェア構成および機能ブロックを説明する図である。 本発明の実施の形態に係る更新装置の処理を説明するフローチャートである。 本発明の実施の形態に係るデータベースサーバの処理を説明するフローチャートである。 本発明の実施の形態に係る参照装置の処理を説明するフローチャートである。 本発明の第1の実装例を説明する図である。 本発明の第1の実装例に係る更新装置の更新処理を説明するフローチャートである。 本発明の第1の実装例に係る参照装置の抽出処理を説明するフローチャートである。 本発明の第2の実装例を説明する図である。 本発明の第2の実装例に係る更新装置の更新処理を説明するフローチャートである。 本発明の第2の実装例に係る参照装置の抽出処理を説明するフローチャートである。 本発明の第2の実装例に係る対象データの変形例を説明する図である。 本発明の第3の実装例を説明する図である。 本発明の第3の実装例に係る更新装置の更新処理を説明するフローチャートである。 本発明の第3の実装例に係る参照装置の抽出処理を説明するフローチャートである。
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一または類似の部分には同一または類似の符号を付している。
(実施の形態)
本発明の実施の形態に係る情報処理システム9は、データベースサーバ3と、複数の参照装置1と、少なくとも一つの更新装置2を備える。データベースサーバ3、参照装置1および更新装置2は、通信ネットワークなどにより、相互に通信可能に接続される。
図1に示す情報処理システム9は、一つのデータベースサーバ3、第1の参照装置1a、第2の参照装置1b、第1の更新装置2aおよび第2の更新装置2bを備える場合を説明するが、本発明の特徴を適用できるのであれば、これらの数は問わない。図1に示す例において、データベースサーバ3にデータを格納させる装置を更新装置2と称し、データベースサーバ3からデータを取得する装置を参照装置1とするが、これらは、独立した個々の装置でなくても良い。例えば、ある一つの業務サーバが、データベースサーバ3にデータを格納させる際は更新装置2として機能するとともに、データベースサーバ3からデータを取得する際は参照装置1として機能しても良い。本発明の実施の形態において、第1の参照装置1aおよび第2の参照装置1bを区別しない場合、単に参照装置1と記載する場合がある。同様に、第1の更新装置2aおよび第2の更新装置2bを区別しない場合、単に更新装置2と記載する場合がある。
データベースサーバ3は、更新装置2から入力されたデータを格納データDに保持するとともに、参照装置1からの要請に基づいて、格納データDの少なくとも一部のレコードのデータを出力する。
本発明の実施の形態において、第1の更新装置2aがデータベースサーバ3に更新させ、第1の参照装置1aが参照するデータを、「参照部分データD11」と表記する。第1の更新装置2aがデータベースサーバ3に更新させ、第2の参照装置1bが参照するデータを、「参照部分データD12」と表記する。第2の更新装置2bがデータベースサーバ3に更新させ、第1の参照装置1aが参照するデータを、「参照部分データD21」と表記する。第2の更新装置2bがデータベースサーバ3に更新させ、第2の参照装置1bが参照するデータを、「参照部分データD22」と表記する。本発明の実施の形態において、参照部分データD11、D12、D21およびD22はそれぞれ、単にデータD11、D12、D21およびD22と称される場合もある。
(更新装置)
第1の更新装置2aは、処理制御装置20、記憶装置25および通信制御装置29を備える一般的なコンピュータである。第1の更新装置2aが、所定の機能を実現させるためのプログラムを実行することにより、処理制御装置20は、更新手段21aを実装する。
第1の更新装置2aの記憶装置25は、サービス提供などにより、キーKに関連して、第1の参照部分データD11と、第2の参照部分データD12とを記憶する。第1の参照部分データD11は、第1の参照装置1aが参照するデータの一部である。第2の参照部分データD12は、第2の参照装置1bが参照するデータの一部である。
第1の更新装置2aの更新手段21aは、キーKと、データD11およびD12を、データベースサーバ3に送信して、更新するよう依頼する。このとき更新手段21aは、第1の参照部分データD11については、第1の参照装置1aが抽出可能な形式に変換するとともに、第2の参照部分データD12については、第2の参照装置1bが抽出可能な形式に変換しても良い。その後、更新手段21aは、キーKと、第1の参照装置1aが抽出可能な形式に変換された第1の参照部分データD11と、第2の参照装置1bが抽出可能な形式に変換された第2の参照部分データD12とを、対応づけて、データベースサーバ3に送信する。
第1の更新装置2aにおける参照部分データは、参照する参照装置1が抽出可能であれば、どのようなものでも良い。例えば、第1の更新装置2aは、参照部分データを、参照するべき参照装置1のみが復号可能に暗号化して変換し、参照装置1の識別子を付与し変換しても良い。また第1の更新装置2aにおいて特に特別な変換をすることなく、参照する参照装置1が有するマスクで参照部分データを抽出しても良い。後述の各実装例において詳述する。
図2を参照して、更新手段21aによる更新処理を説明する。ステップS101において更新手段21aは、第1の参照部分データD11を、第1の参照装置1aが取得可能な形式に変換する。ステップS102において更新手段21aは、第2の参照部分データD12を、第2の参照装置1bが取得可能な形式に変換する。
ステップS103において更新手段21aは、キーKと、ステップS101の変換後の第1の参照部分データD11と、ステップS102の変換後の第2の参照部分データD12とをデータベースサーバ3に送信する。更新手段21aは、これらのデータの格納データDへの登録をリクエストする。
ここで、ステップS101およびステップS102の処理における参照部分データの変換は、必要に応じて実行されても良い。また第1の更新装置2aについて説明したが、第2の更新装置2bも第1の更新装置2aと同様である。
(データベースサーバ)
データベースサーバ3は、図1に示すように、処理制御装置30、記憶装置35および通信制御装置39を備える一般的なコンピュータである。データベースサーバ3が、所定の機能を実現させるためのプログラムを実行することにより、処理制御装置30は、制御手段31を実装する。
記憶装置35は、格納データDを記憶する。格納データDは、複数の対象データDkを含む。対象データDkは、複数の参照装置1が共通して参照するキーと、各参照装置1が抽出可能な複数の参照部分データを対応づける。図1に示す例において、キーKに関する複数の参照部分データは、第1の参照装置1aが参照するデータD11およびD21と、第2の参照装置1bが参照するデータD12およびD22である。データD11およびD21は、第1の参照装置1aが抽出可能なデータである。データD12およびD22は、第2の参照装置1bが抽出可能なデータである。
制御手段31は、格納データDの更新および参照に関する処理を制御する。
制御手段31は、更新装置2から受信したキーと参照部分データとを対応づけて格納データDに保持する。図1に示す例において制御手段31は、第1の更新装置2aから、キーKと、このキーに対応する参照部分データD11およびD12を取得すると、キーKにデータD11およびD12を対応づけて格納データDに記憶する。また制御手段31は、第2の更新装置2bから、キーKと、このキーに対応する参照部分データD21およびD22を取得すると、キーKにデータD21およびD22を対応づけて格納データDに記憶する。
制御手段31は、参照装置1から入力されたキーKに対応づけられた対象データDkを出力する。制御手段31は、参照装置1から入力されたキーKの対象データDkを、参照元の参照装置1が抽出するか否かに関わらず、送信する。具体的には、あるキーKの対象データDkとして、キーK、データD11、D12、D21およびD21が関連づけられている場合を考える。この場合制御手段31は、参照装置1からレコードを特定するキーKが入力されると、このキーに関連する対象データDkを入力元の参照装置1に出力する。入力元が第1の参照装置1aの場合、第1の参照装置1aは、取得した対象データDkから、抽出するべきデータD11およびD21を取得し、それ以外のデータD12およびD22を破棄する。入力元が第2の参照装置1bの場合、第2の参照装置1bは、取得した対象データDkから、抽出するべきデータD12およびD22を取得し、それ以外のデータD11およびD21を破棄する。
図3を参照して、制御手段31による制御処理を説明する。まずステップS121において制御手段31は、他装置からリクエストが入力されると、そのリクエストの種別により処理を振り分ける。
例えば、更新装置2から、更新リクエストが入力された場合、制御手段31は、ステップS122に進む。ステップS122において制御手段31は、更新装置2から受信したキーKと、更新対象の参照部分データとを対応づけて、格納データDに記憶する。
また、参照装置1から、参照リクエストが入力された場合、制御手段31は、ステップS123に進む。ステップS123において制御手段31は、参照装置1から受信したキーKに対応する対象データを、格納データDから抽出する。制御手段31は、抽出したデータを参照装置1に出力する。
(参照装置)
第1の参照装置1aは、処理制御装置10、記憶装置15および通信制御装置19を備える一般的なコンピュータである。第1の参照装置1aが、所定の機能を実現させるための参照プログラムを実行することにより、処理制御装置10は、取得手段11および抽出手段12aを実装する。
第1の参照装置1aの記憶装置15は、処理制御装置10の処理により、対象データDkおよび第1の参照データR1を記憶する。第1の参照データR1は、第1の更新装置2aおよび第2の更新装置2bがデータベースサーバ3に登録したデータのうち、第1の参照装置1aが抽出するべきデータである。
なお、第2の参照装置1bは、第2の参照データR2を記憶する。第2の参照データR2は、第1の更新装置2aおよび第2の更新装置2bがデータベースサーバ3に登録したデータのうち、第2の参照装置1bが抽出するべきデータである。
第1の参照装置1aの取得手段11は、データベースサーバ3にキーKを送信するとともに、当該キーに関連する対象データDkを取得する。取得手段11は、取得した対象データDkを記憶装置15に記憶する。
第1の参照装置1aの抽出手段12aは、対象データDkから、第1の参照装置1aが抽出可能な参照データR1を抽出して、記憶装置15に記憶する。抽出手段12aは、対象データDkから、参照部分データD11およびD21を抽出して、第1の参照データR1を生成し記憶する。抽出手段12aは、更新装置2におけるデータ変換と対応した方法で、対象データDkから参照データR1を抽出する。
図4を参照して、第1の参照装置1aの処理を説明する。第1の参照装置1aは、ステップS141においてデータベースサーバ3に、キーKを送信するとともにデータの参照リクエストを送信する。ステップS142において第1の参照装置1aは、ステップS141で入力したキーKに対応する対象データDkを取得する。ステップS143において第1の抽出手段12aは、対象データDkから、第1の参照装置1aが参照するべき参照データR1を抽出して、記憶装置15に記憶する。
第1の参照装置1aについて説明したが、第2の参照装置1bも第1の参照装置1aと同様である。なお第2の参照装置1bの抽出手段12bは、対象データDkから、第2の参照装置1bが抽出可能な参照データR2を抽出して、記憶装置15に記憶する。抽出手段12bは、対象データDkから、参照部分データD12およびD22を抽出して、第2の参照データR2を生成し記憶する。
本発明の実施の形態に係る情報処理システム9は、様々なシステムに適用することができる。例えば、情報処理システム9において、第1の更新装置2aおよび第1の参照装置1aは、固定電話サービスに関する装置である。第2の更新装置2bおよび第2の参照装置1bは、移動体電話サービスに関する装置である。第1の更新装置2aおよび第2の更新装置2bは、各保守運用サービスに関するデータを、データベースサーバ3に登録する。第1の参照装置1aおよび第2の参照装置1bは、各サービスに関するデータを、データベースサーバ3から取得する。またキーKは、固定電話サービスおよび移動体電話サービスの両方に参加するユーザ識別子などが考えられる。
図1を参照して説明した参照部分データD11、D12、D21およびD22は、更新の主体および参照の主体に応じて分類されたデータである。従って、各参照部分データD11、D12、D21およびD22は、それぞれ、一つのデータ項目を含んでも良いし、複数のデータ項目を含んでも良い。また参照部分データD11、D12、D21およびD22の分類もこれに限られたものではない。例えば、これらの他に、第1の参照装置1aおよび第2の参照装置1bの両方が参照する参照部分データが、定義されても良い。この場合、更新装置2は、第1の参照装置1aおよび第2の参照装置1bの両方が参照する参照部分データを、第1の参照装置1aおよび第2の参照装置1bの両方が抽出可能な形式に変換して、データベースサーバ3に登録する。
このような本発明の実施の形態に係る情報処理システム9において、参照装置1においてデータベースサーバ3から取得した対象データから、所望のデータを抽出するロジックを追加することにより、データベースサーバ3の負荷を軽減することができる。
(第1の実装例)
図5ないし図7を参照して、第1の実装例を説明する。第1の実装例において、各参照装置1で参照するデータの秘匿性を確保するために、各データが暗号化されている場合を説明する。
更新装置2の更新手段21は、参照装置1がそれぞれ復号可能な形式でそれぞれ暗号化された参照部分データを、データベースサーバ3に送信し、格納データDを更新させる。参照装置1の抽出手段12は、当該参照装置1が復号に成功した参照データRを抽出する。
データベースサーバ3において、格納データDの対象データDkは、それぞれの参照装置1が復号可能な形式でそれぞれ暗号化された複数の参照部分データを含む。なおデータベースサーバ3の制御手段31は、更新装置2における暗号化処理および参照装置1における復号処理に関しては何ら関与しない。データベースサーバ3は、入力されたキーに対して更新または参照すれば良く、対象データDkが暗号化されているか否かにより処理が変わることはない。
図5を参照して、各装置において暗号鍵または復号鍵を用いて処理されたデータを説明する。第1の更新装置2aおよび第2の更新装置2bは、それぞれ、第1の暗号鍵A1および第2の暗号鍵A2を保持する。また第1の参照装置1aは、第1の暗号鍵A1で暗号化された暗号文を復号するための第1の復号鍵F1を保持する。第2の参照装置1bは、第2の暗号鍵A2で暗号化された暗号文を復号するための第2の復号鍵F2を保持する。第1の暗号鍵A1、第2の暗号鍵A2、第1の復号鍵F1および第2の復号鍵F2は、所定のサーバから各装置にそれぞれ配信されても良い。
第1の更新装置2aの更新手段21aは、第1の参照部分データD11を第1の暗号鍵A1で暗号して、データD11’を生成するとともに、第2の参照部分データD12を第2の暗号鍵A2で暗号して、データD12”を生成する。更新手段21aは、キーKと、データD11’およびデータD12”を対応づけてデータベースサーバ3に送信する。
第2の更新装置2bの更新手段21bは、第1の参照部分データD21を第1の暗号鍵A1で暗号して、データD21’を生成するとともに、第2の参照部分データD22を第2の暗号鍵A2で暗号して、データD22”を生成する。更新手段21aは、キーKと、データD21’およびデータD22”を対応づけてデータベースサーバ3に送信する。
図6を参照して、第1の更新装置2aの更新手段21aにおける更新処理を説明する。第2の更新装置2bの更新手段21bの処理も同様である。
ステップS201において更新手段21aは、第1の参照部分データD11を第1の参照装置1aのために暗号化して、データD11’を生成する。ステップS202において更新手段21aは、第2の参照部分データD12を第2の参照装置1bのために暗号化して、データD12”を生成する。ステップS203において更新手段21aは、キーと、ステップS201で生成したデータD11’と、ステップS202で生成したデータD12”とを、データベースサーバ3に送信する。
データベースサーバ3は、第1の更新装置2aおよび第2の更新装置2bから受信したデータに基づいて、格納データDを更新する。この結果、格納データDは、キーKに、参照部分データD11’、D12”、D21’およびD22”を対応づけた対象データDkを含む。
第1の参照装置1aおよび第2の参照装置1bは、キーKをデータベースサーバ3に入力し、それぞれ、入力したキーKに対応する対象データDkを取得する。ここで対象データDkは、参照部分データD11’、D12”、D21’およびD22”の、4つの暗号化されたデータ列を含む。
第1の参照装置1aの抽出手段12aは、自身が参照するべきデータを判別するために、それぞれのデータ列を、第1の復号鍵F1で復号を試みる。この結果、抽出手段12aは、第1の復号鍵F1で復号可能に暗号化された参照部分データD11およびD21を取得する。抽出手段12aは、第1の復号鍵F1で復号できなかったデータD12”およびD22”を破棄する。
同様に、第2の参照装置1bの抽出手段12bは、自身が参照するべきデータを判別するために、それぞれのデータ列を、第2の復号鍵F2で復号を試みる。この結果、抽出手段12bは、第2の復号鍵F2で復号可能に暗号化されたデータD12およびD22を取得する。抽出手段12bは、第2の復号鍵F2で復号できなかったデータD11’およびD21’を破棄する。
図7を参照して、第1の参照装置1aの抽出手段12aにおける更新処理を説明する。第2の参照装置1bの抽出手段12bの処理も同様である。
抽出手段12aは、データベースサーバ3から取得した対象データDkの各データ列について、ステップS241およびステップS242の処理を繰り返す。ステップS241において抽出手段12aは、処理対象のデータ列について、第1の復号鍵F1で復号可能であるか否かを判定する。復号可能な場合、ステップS242において、復号したデータを記憶し、復号できなかった場合は、そのデータ列を破棄する。
このような第1の実装例において各参照装置1は、自身が保有する復号鍵で復号できたことにより、自身が参照するべきデータを特定し取得するとともに、正しく復号できたことを確認する。また、自装置以外の参照装置1が参照するべきデータが暗号化されているので、各参照装置1が参照することのできないデータの漏洩を回避することができる。
(第1の実装例の変形例)
第1の実装例においては、参照装置1毎に暗号方法を特定する場合を説明したが、これに限られない。要求されるセキュリティレベルが低い場合、各参照装置1が共有する復号鍵に対応する暗号鍵で暗号化されても良い。
また、暗号方法は、第1の実装例に記載したものに限らない。例えば、暗号鍵および復号鍵を用いるのではなく、共通鍵方式を採用しても良い。
第1の参照装置1a、第1の更新装置2aおよび第2の更新装置2bは、第1の参照装置1aでデータを抽出可能とする第1の共通鍵を記憶する。第2の参照装置1b、第1の更新装置2aおよび第2の更新装置2bは、第2の参照装置1bでデータを抽出可能とする第2の共通鍵を記憶する。また第1の参照装置1aは、第1のハッシュ値を決定し、第1の更新装置2aおよび第2の更新装置2bに送信する。第2の参照装置1bは、第2のハッシュ値を決定し、第1の更新装置2aおよび第2の更新装置2bに送信する。
第1の更新装置2aは、第1のハッシュ値と第1の参照装置1aの参照部分データD11を第1の共通鍵で暗号化し、第2のハッシュ値と第2の参照装置1bの参照部分データD12を第2の共通鍵で暗号化して、データベースサーバ3に送信する。第2の更新装置2bは、第1のハッシュ値と第1の参照装置1aの参照部分データD21を第1の共通鍵で暗号化し、第2のハッシュ値と第2の参照装置1bの参照部分データD22を第2の共通鍵で暗号化して、データベースサーバ3に送信する。
第1の参照装置1aは、データベースサーバ3から取得した対象データDkの各データ列を、第1の共通鍵で復号する。第1の参照装置1aは、復号の結果、事前に定めた第1のハッシュ値が得られたデータ列、具体的にはデータD11およびD21を、自身が抽出する参照部分データとして把握する。
(第2の実装例)
図8ないし図10を参照して、第2の実装例を説明する。第2の実装例において、各参照部分データに、区切り子を付加して連結する場合を説明する。
区切り子は、参照部分データD11、D12、D21およびD22に用いられることのない文字コードである。例えば、参照部分データD11、D12、D21およびD22がUnicode体系で表現される場合、区切り文字としてU+E000からU+F8FFの私用領域のコードが用いられる。
図8に示す例では、区切り子を各参照部分データの最初に付加する場合を説明するがこれに限られず、各参照部分データの最後に付加するなど、参照装置1で判別可能であればどのような位置に付加されても良い。
更新装置2の更新手段21は、複数の参照部分データのそれぞれについて、当該参照部分データを抽出する参照装置1の識別子を対応づけて、データベースサーバ3に送信し、格納データDを更新させる。参照装置1の抽出手段12は、参照装置の識別子に対応づけられた参照データRを抽出する。
データベースサーバ3において、格納データDの対象データDkの各参照部分データは、参照装置1が抽出するための区切り子が対応づけられる。なおデータベースサーバ3の制御手段31は、入力されたキーに基づいて、格納データDを更新または参照すれば良い。
図8を参照して、各装置において第1の区切り子P1および第2の区切り子P2を用いて処理されたデータを説明する。第1の区切り子P1は、第1の参照装置1aに抽出させるデータであることを示す。第2の区切り子P2は、第2の参照装置1bに抽出させるデータであることを示す。
第1の更新装置2aおよび第2の更新装置2bは、第1の区切り子P1および第2の区切り子P2を保持する。また第1の参照装置1aは、第1の区切り子P1を保持する。第2の参照装置1bは、第2の区切り子P2を保持する。第1の区切り子P1および第2の区切り子P2は、所定のサーバから各装置にそれぞれ配信されても良い。
第1の更新装置2aの更新手段21aは、第1の参照部分データD11に第1の区切り子P1を対応づけるとともに、第2の参照部分データD12に第2の区切り子P2を対応づける。更新手段21aは、キーKと、第1の区切り子P1、第1の参照部分データD11、第2の区切り子P2および第2の参照部分データD12を連結したデータを、データベースサーバ3に送信する。
第2の更新装置2bの更新手段21bは、第1の参照部分データD21に第1の区切り子P1を対応づけるとともに、第2の参照部分データD22に第2の区切り子P2を対応づける。更新手段21bは、キーKと、第1の区切り子P1、第1の参照部分データD21、第2の区切り子P2および第2の参照部分データD22を連結したデータを、データベースサーバ3に送信する。
図9を参照して、第1の更新装置2aの更新手段21aにおける更新処理を説明する。第2の更新装置2bの更新手段21bの処理も同様である。図9において、各参照部分データの先頭に区切り子が付与されている場合を説明する。
ステップS301において更新手段21aは、第1の参照部分データD11の先頭に、第1の区切り子P1を追加する。ステップS302において更新手段21aは、第2の参照部分データD12の先頭に、第2の区切り子P2を追加する。ステップS303において更新手段21aは、キーと、ステップS301において第1の区切り子P1を追加した第1の参照部分データD11と、ステップS302において第2の区切り子P2を追加した第2の参照部分データD12とを、連結する。その後更新手段21aは、連結したデータをデータベースサーバ3に送信する。
データベースサーバ3は、第1の更新装置2aおよび第2の更新装置2bから受信したデータに基づいて、格納データDを更新する。この結果、格納データDは、キーKに、区切り子P1、データD11、区切り子P2、データD12、区切り子P1、データD21、区切り子P2、およびデータD22を対応づけた対象データDkを含む。
第1の参照装置1aおよび第2の参照装置1bは、キーKをデータベースサーバ3に入力し、それぞれ、入力したキーKに対応する対象データDkを取得する。ここで対象データDkは、複数の区切り子を含む一つのデータ列である。
第1の参照装置1aの抽出手段12aは、自身が参照するべきデータを判別するために、取得した対象データDkの区切り子を探索する。抽出手段12aは、自身が抽出するべき区切り子P1に対応づけられたデータD11およびD21を取得する。抽出手段12aは、区切り子P1以外の区切り子に対応づけられたデータD12およびD22を破棄する。
同様に、第2の参照装置1bの抽出手段12bは、自身が参照するべきデータを判別するために、取得した対象データDkの区切り子を探索する。抽出手段12bは、自身が抽出するべき区切り子P2に対応づけられたデータD12およびD22を取得する。抽出手段12bは、区切り子P2以外の区切り子に対応づけられたデータD11およびD21を破棄する。
図10を参照して、第1の参照装置1aの抽出手段12aにおける更新処理を説明する。第2の参照装置1bの抽出手段12bの処理も同様である。図10において、各参照部分データの先頭に区切り子が付与されている場合を説明する。
ステップS321において抽出手段12aは、データベースサーバ3から取得した対象データDkを先頭から読み込み、ステップS322において抽出手段12aは、単位ビットずつ読み込む。ここで単位ビットとは、区切り子のビット数に対応するビットである。ステップS323において抽出手段12aは、自装置の区切り子でない場合、ステップS322に戻り、さらに対象データDkを単位ビットずつ読み込む。
ステップS323において抽出手段12aは、自装置の区切り子を発見すると、ステップS324において、次の区切り子または対象データDkの終端のいずれか直近の位置までのデータを、記憶装置15に記憶する。さらにステップS325において抽出手段12aは、対象データDkの終端まで読み込んだか否かを判定する。読み込んでいない場合、抽出手段12aは、ステップS322に戻り、さらに対象データDkを単位ビットずつ読み込む。このように、対象データDkの終端まで読み込むと、抽出手段12aは処理を終了する。
このような第2の実装例において各参照装置1は、自身が保有する区切り子に対応づけられたデータを取得することにより、自身が参照するべきデータを取得する。
(第2の実装例の第1の変形例)
第2の実装例においても、第1の実装例と同様に各データが暗号化されても良い。この場合、暗号化された参照部分データの区切りがわかれば良いので、第1の区切り子P1および第2の区切り子P2と区別する必要はなく、同じ区切り子が用いられても良い。
このような第2の実装例の第1の変形例において、第1の更新装置2aの更新手段21aは、第1の実装例で説明した様に各参照部分データを、参照装置1が抽出可能な暗号鍵で暗号化する。更新手段21aはその後、区切り子を付与して、暗号化済みの各データを連結して、キーKとともにデータベースサーバ3に送信する。第2の更新装置2bの更新手段21bの処理も同様である。
第1の参照装置1aの抽出手段12aは、キーKに対応づけられた対象データDkを取得すると、第2の実装例で説明した様に、区切り子を探索し、その区切り子に対応づけられた参照部分データを抽出する。抽出手段12aは、抽出した参照部分データを、復号鍵で復号する。抽出手段12aは、復号に成功した場合、復号した参照部分データを記憶装置15に記憶し、成功しなかった場合、データを破棄する。
(第2の実装例の第2の変形例)
第2の実装例において、データベースサーバ3は、図8に示すような対象データDkを記憶する場合を説明したが、区切り子毎にデータを集約しても良い。具体的には図11に示すように、格納データDは、キーKに、区切り子P1、データD11およびD12、区切り子P2、データD12およびD22を対応づけた対象データDkを含む。
第2の変形例の第2の変形例において、データベースサーバ3の制御手段31は、図11に示すように、キーKおよび区切り子にデータを対応づけて、格納データDを更新する。制御手段31は、第1の更新装置2aから、キーK、第1の区切り子P1、データD11、第2の区切り子P2およびデータD12を取得する。さらに制御手段31は、第2の更新装置2bから、キーK、第1の区切り子P1、データD21、第2の区切り子P2およびデータD22を取得する。この場合、制御手段31は、キーKおよび第1の区切り子P1にデータD11およびD12を対応づけるとともに、キーKおよび第2の区切り子P2にデータD21およびD22を対応づけた対象データDkを、格納データDに記憶する。
このように第2の変形例において、区切り子をサブキーとしてデータを対応づけることにより、格納データDにおけるデータ容量を削減することができる。
(第3の実装例)
図12ないし図14を参照して、第3の実装例を説明する。第3の実装例において、各参照装置1は、各参照装置1が抽出するべきデータを特定するためのマスクMを保持する場合を説明する。
更新装置2の更新手段21は、各参照装置1が抽出可能な複数の参照部分データを連結して、キーKとともにデータベースサーバ3に送信し、格納データDを更新させる。参照装置1の抽出手段12は、対象データDkのうち当該参照装置1が抽出可能なデータ位置を特定するマスクMを用いて、参照データRを抽出する。
図12を参照して、各装置において第1のマスクM1および第2のマスクM2を用いて処理されるデータを説明する。第1の参照装置1aは、第1のマスクM1を保持する。第2の参照装置1bは、第2のマスクM2を保持する。第1のマスクM1および第2のマスクM2は、2進数で表記される。第1のマスクM1および第2のマスクM2は、所定のサーバから各装置にそれぞれ配信されても良い。また、各マスクは、データベースサーバ3などが予め保持し、各参照装置1からの要求に応じて、参照装置1は所望のマスクを取得しても良い。
マスクにおいて、対象データDkのビット列のうち、参照装置1が抽出するべきデータのビットに対して“1”が、それ以外のビットに対して“0”が、それぞれ設定される。各参照装置1は、データベースサーバ3から取得した対象データDkとマスクを、ビット毎に乗算して、参照データRを抽出する。
図12に示す例では、各参照装置1が一つのマスクを保持する場合を説明するがこれに限られない。例えば、各参照装置1は、データを抽出する目的に応じて複数のマスクを保持しても良い。
第1の更新装置2aの更新手段21aは、キーKと、第1の参照部分データD11および第2の参照部分データD12を連結したデータを、データベースサーバ3に送信する。第2の更新装置2bの更新手段21bは、キーKと、第1の参照部分データD21および第2の参照部分データD22を連結したデータを、データベースサーバ3に送信する。
図13を参照して、第1の更新装置2aの更新手段21aにおける更新処理を説明する。第2の更新装置2bの更新手段21bの処理も同様である。
ステップS401において更新手段21aは、第1の参照部分データD11を取得する。ステップS402において更新手段21aは、第2の参照部分データD12を取得する。ステップS403において更新手段21aは、キーと、ステップS401で取得した第1の参照部分データD11と、ステップS402で生成した第2の参照部分データD12とを、連結して、データベースサーバ3に送信する。
データベースサーバ3は、第1の更新装置2aおよび第2の更新装置2bから受信したデータに基づいて、格納データDを更新する。データベースサーバ3の制御手段31は、更新装置2から更新依頼がなされると、キーKに、各更新装置2から受信した複数の参照部分データを所定の順序で連結して、格納データDに更新する。この所定の順序は、各参照装置1が有するマスクMのビット列に対応する。この結果、格納データDは、キーKに、データD11、データD12、データD21、およびデータD22を対応づけた対象データDkを含む。
第1の参照装置1aおよび第2の参照装置1bは、キーKをデータベースサーバ3に入力し、それぞれ、入力したキーKに対応する対象データDkを取得する。ここで対象データDkは、各参照装置1が保持するマスクに対応する順序で、参照部分データを連結する。第1の参照装置1aおよび第2の参照装置1bは、データベースサーバ3に所望のマスクを要求して取得しても良い。
第1の参照装置1aの抽出手段12aは、自身が参照するべきデータのビット位置を特定するための第1のマスクM1と、取得した対象データDkとを乗算する。抽出手段12aは、対象データDkのうち、第1のマスクM1で“1”が対応づけられた位置のデータD11およびD21を取得する。抽出手段12aは、第1のマスクM1で“1”が対応づけられた位置以外のデータD12およびD22を破棄する。
同様に、第2の参照装置1bの抽出手段12bは、自身が参照するべきデータのビット位置を特定するための第2のマスクM2と、取得した対象データDkとを乗算する。抽出手段12bは、対象データDkのうち、第2のマスクM2で“1”が対応づけられた位置のデータD12およびD22を取得する。抽出手段12bは、第2のマスクM2で“1”が対応づけられた位置以外のデータD11およびD21を破棄する。
図14を参照して、第1の参照装置1aの抽出手段12aにおける更新処理を説明する。第2の参照装置1bの抽出手段12bの処理も同様である。
ステップS421において抽出手段12aは、データベースサーバ3から取得した対象データDkと、第1のマスクM1とをビット毎に乗算する。ステップS422において抽出手段12aは、ステップS421における乗算結果を、参照データR1として記憶装置15に記憶する。
このような第3の実装例に係るデータベースサーバ3は、第2の実装例と比べて区切り子を保持する必要がないので、レコード数が増えた場合でも、記憶容量の削減を実現し、コストを削減することができる。第3の実装例において更新装置2は参照部分データをデータベースサーバ3に登録し、参照装置1が所望のデータを抽出する仕組みを持つので、データベースサーバ3のみならず、更新装置2における負荷も軽減することができる。また第3の実装例に係る参照装置1は、対象データDkの処理目的に応じてマスクを用意することで、容易に所望の参照データRを抽出することができる。
(第3の実装例の変形例)
第3の実装例においても、第1の実装例と同様に各データが暗号化されても良い。
このような第3の実装例の変形例において、第1の更新装置2aの更新手段21aは、第1の実装例で説明した様に各参照部分データを、参照装置1が抽出可能な暗号鍵で暗号化する。更新手段21aはその後、暗号化済みの各参照部分データを所定の順序で連結して、キーKとともにデータベースサーバ3に送信する。第2の更新装置2bの更新手段21bの処理も同様である。
第1の参照装置1aの抽出手段12aは、キーKに対応づけられた対象データDkを取得すると、第3の実装例で説明した様に、マスクM1と乗算して参照部分データを抽出する。抽出手段12aは、抽出した参照部分データを、復号鍵で復号する。抽出手段12aは、復号に成功した場合、復号した参照部分データを記憶装置15に記憶し、成功しなかった場合、データを破棄する。
(その他の実施の形態)
上記のように、本発明の実施の形態とその第1ないし第3の実装例などによって記載したが、この開示の一部をなす論述および図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例および運用技術が明らかとなる。
例えば、本発明の実施の形態に記載した参照装置1、更新装置2およびデータベースサーバ3は、図1に示すようにそれぞれ一つのハードウェア上に構成されても良いし、その機能や処理数に応じて複数のハードウェア上に構成されても良い。また、既存のシステム上に実現されても良い。
本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
1 参照装置
2 更新装置
3 データベースサーバ
9 情報処理システム
10、20、30 処理制御装置
11 取得手段
12 抽出手段
15、25、35 記憶装置
19、29、39 通信制御装置
21 更新手段
31 制御手段
D 格納データ
Dk 対象データ
D11、D12、D13、D14 参照部分データ
R1、R2 参照データ

Claims (6)

  1. データベースサーバと、前記データベースサーバからデータを取得する複数の参照装置とを備える情報処理システムであって、
    データベースサーバは、
    複数の後記参照装置が共通して参照するキーと、各参照装置が抽出可能な複数の参照部分データを対応づけた対象データを含む格納データを記憶する記憶装置と、
    後記参照装置から入力されたキーに対応づけられた対象データを出力する制御手段と、を備え、
    参照装置は、
    前記データベースサーバから取得した対象データから、当該参照装置が抽出可能な参照部分データを抽出する抽出手段を備える
    ことを特徴とする情報処理システム。
  2. 前記対象データは、
    前記各参照装置がそれぞれ復号可能な形式で、それぞれ暗号化された参照部分データを含み、
    前記参照装置の抽出手段は、
    当該参照装置が復号に成功した参照部分データを抽出することを特徴とする請求項1に記載の情報処理システム。
  3. 前記対象データは、
    前記複数の参照部分データのそれぞれについて、当該参照部分データを抽出させる参照装置の識別子を対応づけ、
    前記参照装置の抽出手段は、
    当該参照装置の識別子に対応づけられた参照部分データを抽出することを特徴とする請求項1または2に記載の情報処理システム。
  4. 前記対象データは、
    前記各参照装置が抽出可能な複数の参照部分データを連結したデータであって、
    前記参照装置の抽出手段は、
    前記対象データのうち当該参照装置が抽出可能なデータ位置を特定するマスクを用いて、前記参照部分データを抽出する
    ことを特徴とする請求項1または2に記載の情報処理システム。
  5. データベースサーバと、前記データベースサーバからデータを取得する複数の参照装置とを備える情報処理システムに用いられる参照装置であって、
    データベースサーバにキーを送信するとともに、前記データベースサーバから、当該キーに関連し、各参照装置が抽出可能な複数の参照部分データを対応づける対象データを取得する取得手段と、
    前記対象データから、当該参照装置が抽出可能な参照部分データを抽出する抽出手段
    を備えることを特徴とする参照装置。
  6. コンピュータを、請求項5に記載の手段として機能させるための参照プログラム。
JP2013142443A 2013-07-08 2013-07-08 情報処理システム、参照装置および参照プログラム Expired - Fee Related JP5965360B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013142443A JP5965360B2 (ja) 2013-07-08 2013-07-08 情報処理システム、参照装置および参照プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013142443A JP5965360B2 (ja) 2013-07-08 2013-07-08 情報処理システム、参照装置および参照プログラム

Publications (2)

Publication Number Publication Date
JP2015014987A JP2015014987A (ja) 2015-01-22
JP5965360B2 true JP5965360B2 (ja) 2016-08-03

Family

ID=52436664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013142443A Expired - Fee Related JP5965360B2 (ja) 2013-07-08 2013-07-08 情報処理システム、参照装置および参照プログラム

Country Status (1)

Country Link
JP (1) JP5965360B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08255129A (ja) * 1995-03-16 1996-10-01 Toshiba Corp クライアント装置およびデータ選択方法
JP3896625B2 (ja) * 1997-03-07 2007-03-22 ソニー株式会社 データ送信装置、データ受信装置、データ送信方法およびデータ受信方法
JP4429619B2 (ja) * 2003-04-15 2010-03-10 三菱電機株式会社 情報提供装置

Also Published As

Publication number Publication date
JP2015014987A (ja) 2015-01-22

Similar Documents

Publication Publication Date Title
US8064606B2 (en) Method and apparatus for securely registering hardware and/or software components in a computer system
US10735186B2 (en) Revocable stream ciphers for upgrading encryption in a shared resource environment
JP5395372B2 (ja) 通信装置、鍵サーバ及びデータ
CN107786331B (zh) 数据处理方法、装置、系统及计算机可读存储介质
JP6506884B2 (ja) 機密性を保持しつつデータ損失を防止するためのシステムおよび方法
KR20190018869A (ko) 블록체인 기반의 스토리지 서비스 제공 시스템 및 방법
US20160323100A1 (en) Key generation device, terminal device, and data signature and encryption method
JP6229800B2 (ja) 解析システム、解析方法、及び、解析プログラム
US20180351737A1 (en) Communication apparatus, communication system, key sharing method, and computer program product
EP3306855B1 (en) Authentication device, authentication system, authentication method, and program
US9825920B1 (en) Systems and methods for multi-function and multi-purpose cryptography
CN104753870A (zh) 一种数据传输方法和系统
JP2015090993A (ja) 暗号制御装置、暗号制御方法、及びプログラム
JP6149749B2 (ja) 情報処理装置、情報処理システム、及びプログラム
JP2006279269A (ja) 情報管理装置、情報管理システム、ネットワークシステム、ユーザ端末、及びこれらのプログラム
JP2016059022A (ja) 端末装置、ゲートウェイ装置および中継装置
EP3200390B1 (en) Analysis system, analysis device, analysis method, and storage medium having analysis program recorded therein
JP5965360B2 (ja) 情報処理システム、参照装置および参照プログラム
JP2012003682A (ja) アクセス制御システム、アクセス制御方法、認証装置、認証システム
JP4222132B2 (ja) ソフトウェア提供方法及びシステム
KR101146510B1 (ko) Synk 데이터베이스 암호화 시스템 및 그 방법
US20180013853A1 (en) Information processing device, information processing system, non-transitory computer-readable storage medium, and information processing method
US9178855B1 (en) Systems and methods for multi-function and multi-purpose cryptography
CN110611674B (zh) 不同计算机系统之间的协议交互方法、系统及存储介质
CN113169862B (zh) 信息处理方法、终端设备及网络系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150707

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160421

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160606

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160628

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160701

R150 Certificate of patent or registration of utility model

Ref document number: 5965360

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees