(57)【要約】      （修正有）【課題】不正アクセスにより個人情報が漏洩したとしても、その漏洩した個人情報を、不正アクセス者にとって意味のないデータとすることができるデータ管理システムを提供する。【解決手段】データ管理システム１は、クライアント装置１００と、窓口サーバ装置２００と、複数のデータサーバ装置５０１、５０２、５０３を有するデータサーバ装置群を有すると、を含む。クライアント装置は、少なくとも１つの項目を有する文字列からなる個人情報を文字コードに変換し、文字コードを少なくとも２つの分割文字コード部分に分割し、分割文字コード部分を窓口サーバ装置に送信する。窓口サーバ装置は、分割文字コード部分からなる第１のデータを複数のデータサーバ装置のうちの１つのデータサーバ装置に保存し、第１のデータとは異なる、分割文字コード部分からなる第２のデータを複数のデータサーバ装置のうちの別の１つのデータサーバ装置に保存する。【選択図】図１
2019109857.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置と窓口サーバ装置と複数のデータサーバ装置とを含むデータ管理システムであって、
前記クライアント装置は、少なくとも１つの項目を有する文字列からなる個人情報を文字コードに変換し、
前記クライアント装置は、前記文字コードを少なくとも２つの分割文字コード部分に分割し、
前記クライアント装置は、前記分割文字コード部分を前記窓口サーバ装置に送信し、
前記窓口サーバ装置は、前記分割文字コード部分からなる第１のデータを前記複数のデータサーバ装置のうちの１つのデータサーバ装置に保存し、前記第１のデータとは異なる、前記分割文字コード部分からなる第２のデータを前記複数のデータサーバ装置のうちの別の１つのデータサーバ装置に保存するよう構成されていることを特徴とするデータ管理システム。
【請求項２】
前記クライアント装置は、前記文字コードを少なくとも３つの分割文字コード部分に分割し、
前記窓口サーバ装置は、前記分割文字コード部分からなる第１のデータと、前記第１のデータとは異なる前記分割文字コード部分からなる第２のデータと、前記第１のデータおよび前記第２のデータとは異なる前記分割文字コード部分からなる第３のデータを、前記複数のデータサーバ装置のうちの２つ以上のデータサーバ装置に重複して保存するよう構成されていることを特徴とする、請求項１に記載のデータ管理システム。
【請求項３】
前記クライアント装置は、複数の分割文字コード部分の、先頭から同一番目同士を元データの文字列の順序で直接連結した後、前記窓口サーバ装置に送信するよう構成されていることを特徴とする、請求項１または２に記載のデータ管理システム。
【請求項４】
前記複数のデータサーバ装置は、地理的に異なる場所に設置されていることを特徴とする、請求項１から３までのいずれか一項に記載のデータ管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、個人情報を保護するためのデータ管理システムに関するものである。
【背景技術】
【０００２】
近年、不正アクセス等による個人情報の漏洩に対して関心が高まっている。それゆえ、大量の個人情報を扱う企業等にとって、個人情報の漏洩を防ぐための対策は必須である。不正アクセスを検出する技術として、特許文献１には、個人情報等を格納した情報処理サーバを送信先として情報処理端末より送信されたパケットを不正検出サーバが受信し、不正検出サーバは受信したパケットに含まれる情報を分析して不正な目的を有するパケットを検出し、不正パケットであることを表示するマークを検出した不正パケットに付加し、マークを判別する機能を有する情報処理サーバに送信し、マークが付加された不正パケットを受信した情報処理サーバは、不正パケットを送信した情報処理端末に対して偽情報を送信する等の不正回避処理を行う方法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−７２３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の方法では、不正アクセスを行う侵入者をわざと複数回侵入させ、その間に不正に関する情報（アクセスの対象、侵入者のアドレス、手順等）を収集する。それゆえ、初回の不正アクセスを検出できないおそれがある。
本発明では、上述した問題点を鑑みて、不正アクセスを検出するのではなく、不正アクセスにより個人情報が漏洩したとしても、その漏洩した個人情報を、不正アクセス者にとって意味のないデータとすることができるデータ管理システムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、クライアント装置と窓口サーバ装置と複数のデータサーバ装置とを含むデータ管理システムであって、上記課題を解決するため、前記クライアント装置は、少なくとも１つの項目を有する文字列からなる個人情報を文字コードに変換し、前記クライアント装置は、前記文字コードを少なくとも２つの分割文字コード部分に分割し、前記クライアント装置は、前記分割文字コード部分を前記窓口サーバ装置に送信し、前記窓口サーバ装置は、前記分割文字コード部分からなる第１のデータを前記複数のデータサーバ装置のうちの１つのデータサーバ装置に保存し、前記第１のデータとは異なる、前記分割文字コード部分からなる第２のデータを前記複数のデータサーバ装置のうちの別の１つのデータサーバ装置に保存するよう構成されている。
【０００６】
なお、本発明のデータ管理システムにあっては、前記クライアント装置は、前記文字コードを少なくとも３つの分割文字コード部分に分割し、前記窓口サーバ装置は、前記分割文字コード部分からなる第１のデータと、前記第１のデータとは異なる前記分割文字コード部分からなる第２のデータと、前記第１のデータおよび前記第２のデータとは異なる前記分割文字コード部分からなる第３のデータを、前記複数のデータサーバ装置のうちの２つ以上のデータサーバ装置に重複して保存するよう構成されていることが好ましい。
【０００７】
本発明のデータ管理システムにあっては、前記クライアント装置は、複数の分割文字コード部分の、先頭から数えて同一番目同士を元データの文字列の順序で直接連結した後、前記窓口サーバ装置に送信するよう構成されていることが好ましい。
【０００８】
本発明のデータ管理システムにあっては、前記複数のデータサーバ装置は、地理的に異なる場所に設置されていることが好ましい。
【０００９】
表１に、本発明で用いる用語の定義を示す。
[表１]
2019109857.tif 000003
【図面の簡単な説明】
【００１０】
【図１】本発明の第１実施形態に係るデータ管理システムの構成を示す図である。
【図２】個人情報をデータ管理システムに保存する一例を説明するための図である。
【図３】個人情報をデータ管理システムに保存する一例を説明するための図である。
【図４】個人情報をデータ管理システムに保存する他の例を説明するための図である。
【図５】個人情報をデータ管理システムに保存する他の例を説明するための図である。
【図６】本発明の第２実施形態に係るデータ管理システムの構成を示す図である。
【図７】ユーザ情報の登録を示すフローチャートである。
【図８】ユーザ情報の参照・更新・削除を示すフローチャートである。
【図９】可用性チェックを示すフローチャートである。
【図１０】データサーバ装置の管理を示すフローチャートである。
【図１１】２分割のデータを登録する際のフローチャートである。
【図１２】３分割のデータを登録する際のフローチャートである。
【図１３】文字コードを２分割する際のフローチャートである。
【図１４】文字コードを３分割する際のフローチャートである。
【図１５】２分割の文字コードを結合する際のフローチャートである。
【図１６】３分割の文字コードを結合する際のフローチャートである。
【発明を実施するための形態】
【００１１】
図１は、氏名および住所等の個人情報を保護するための、本発明の第１実施形態に係るデータ管理システム１の構成を示す図である。
データ管理システム１は、クライアント装置１００と、窓口サーバ装置２００と、複数のデータサーバ装置５０１、５０２、５０３、・・・を含むデータサーバ装置群５００と、を含む。クライアント装置１００と窓口サーバ装置２００とはインターネットを介して接続されている。図示例では、窓口サーバ装置２００とデータサーバ装置群５００とは、専用線で接続されているが、これらもインターネットを介して接続されていてもよい。
クライアント装置１００、窓口サーバ装置２００およびデータサーバ装置５０１、５０２、５０３は、パーソナルコンピュータ（ＰＣ）等により構成することができ、一般的な情報処理装置のハードウェア構成（ＣＰＵ、メモリ、ハードディスク、入出力装置等）を有する。
クライアント装置１００は、ユーザ（学校、企業、役所等であり、複数の個人情報を管理するために本発明のデータ管理システム１を使用する団体およびその職員）が使用するコンピュータ装置である。
窓口サーバ装置２００は、クライアント装置の認証および要求を処理するサーバ装置である。
データサーバ装置５０１、５０２、５０３は、以下で詳述するように、文字列からなる個人情報等を文字コードに変換した後分割してなる文字コード部分を保存するサーバ装置であり、好ましくは、地理的に異なる場所に設置される。
【００１２】
図２および図３を用いて、個人情報をデータ管理システム１に保存する一例を説明する。図２は、クライアント装置１００における処理を示し、図３は、窓口サーバ装置２００における処理を示す。
図２（ａ）に示すように、クライアント装置１００のユーザは、元データとして、氏名および住所という２つの項目を有する文字列からなる個人情報を、個人情報に対応するＩＤ（後述する第２実施形態におけるアクセス暗号キーと同一）とともにデータ管理システム１に保存するつもりである。個人情報のうちの項目１である氏名は、「日本太郎」であり、項目２である住所は、「東京都千代田区大手町１−１−１」である。ＩＤ「０００１」は、事前に窓口サーバ装置２００により発行され、クライアント装置１００に送信されているものとする。なお、上述したとおり、ユーザは本発明のデータ管理システム１を使用する企業等であり、このユーザ自身が日本太郎なわけではない。
図２（ｂ）に示すように、クライアント装置１００は、文字列からなる個人情報である氏名および住所を文字コードに変換する。例えば、「日」は、ＵＴＦ−８を用いると「e697a5」に変換される。なお、図示例ではＵＴＦ−８を用いているが、ＵＴＦ−１６やＪＩＳコード、ＳＪＩＳコード等の任意の文字コードを用いることができる。
図２（ｃ）に示すように、クライアント装置１００は、項目１の各文字コードおよび項目２の各文字コードをそれぞれ２以上（但し、後述の最大分割数以下）の任意の数（図示例では項目１（１）および項目２（１）と、項目１（２）および項目２（２）との２つ）の文字コード部分（分割文字コード部分）にそれぞれ分割する。なお、最大分割数とは、文字コードを構成するコード要素数（桁数）の数である。例えば、上記例において、文字コード「e697a5」は、「e」、「6」、「9」、「7」、「a」および「5」の６つのコード要素からなるので、最大分割数は６である。次に、クライアント装置１００は、複数の分割文字コード部分の、先頭から数えて同一番目同士（２分割の場合は１番目である前半同士および２番目である後半同士）を元データの文字列の順序（図中の矢印の順）で直接連結する。
クライアント装置１００は、図２（ｄ）に示すように、送信データとして、ＩＤと、文字コード部分を連結してなる連結文字コード部分（項目１（１），項目１（２），項目２（１），項目２（２））を窓口サーバ装置２００に送信する。
【００１３】
窓口サーバ装置２００は、クライアント装置１００から受信したＩＤおよび分割後、連結してなる連結文字コード部分のうち、図３（ａ）に示すように、ＩＤと項目１の文字コードの前半（項目１（１））と項目２の文字コードの前半（項目２（１））とから第１のデータを作成し、図３（ｂ）に示すように、ＩＤと項目１の文字コードの後半（項目１（２））と項目２の文字コードの後半（項目２（２））とから第２のデータを作成する。
次に、窓口サーバ装置２００は、図３（ａ）に示す第１のデータを、複数のデータサーバ装置５０１、５０２、５０３のうちの１つ、例えば、データサーバ装置５０１に保存し、図３（ｂ）に示す第２のデータを、複数のデータサーバ装置５０１、５０２、５０３のうちの別の１つ、例えば、データサーバ装置５０２に保存する。
これにより、仮に、データサーバ装置５０１に保存した第１のデータが漏洩したとしても、漏洩した第１のデータから「日本太郎」および「東京都千代田区大手町１−１−１」という個人情報を復元することはできない。それゆえ、本発明のデータ管理システム１では、漏洩したデータを不正アクセス者にとって意味のないデータとすることができる。
なお、その後、クライアント装置１００は、元データおよび送信データを消去し、窓口サーバ装置２００は、第１のデータおよび第２のデータを消去することが好ましい。
【００１４】
図４および図５を用いて、個人情報をデータ管理システム１に保存する他の例を説明する。図２および図３では、データを２分割するのに対して、図４および図５では、データを３分割する。図４は、クライアント装置１００における処理を示し、図５は、窓口サーバ装置２００における処理を示す。
図４（ａ）は図２（ａ）と同一であり、図４（ｂ）は図２（ｂ）と同一であるのでその説明を省略する。
図４（ｃ）に示すように、クライアント装置１００は、項目１の文字コードおよび項目２の文字コードをそれぞれ３つに分割する。次に、分割された文字コード部分の前半同士、中間同士および後半同士を元データの文字列の順序（図中、矢印の順序）で直接つなげると、図４（ｄ）に示すとおりになる。
クライアント装置１００は、図４（ｄ）に示す送信データとして、ＩＤおよび分割した文字コード（項目１の文字コードおよび項目２の文字コード）を窓口サーバ装置２００に送信する。
【００１５】
窓口サーバ装置２００は、クライアント装置１００から受信したＩＤおよび分割した文字コードのうち、図５（ａ）に示すように、ＩＤと項目１の文字コードの前半（項目１（１））と項目２の文字コードの前半（項目２（１））とから第１のデータを作成し、図５（ｂ）に示すように、ＩＤと項目１の文字コードの中間（項目１（２））と項目２の文字コードの中間（項目２（２））とから第２のデータを作成し、図５（ｃ）に示すように、ＩＤと項目１の文字コードの後半（項目１（３））と項目２の文字コードの後半（項目２（３））とから第３のデータを作成する。
次に、窓口サーバ装置２００は、図５（ａ）に示す第１のデータを、複数のデータサーバ装置５０１、５０２、５０３のうちの１つ、例えば、データサーバ装置５０１に保存し、図５（ｂ）に示す第２のデータを、複数のデータサーバ装置５０１、５０２、５０３のうちの別の１つ、例えば、データサーバ装置５０２に保存し、図５（ｃ）に示す第３のデータを、複数のデータサーバ装置５０１、５０２、５０３のうちのさらに別の１つであるデータサーバ装置５０３に保存する。
これにより、第１のデータはデータサーバ装置５０１に保存され、第２のデータはデータサーバ装置５０２に保存され、第３のデータはデータサーバ装置５０３に保存されており、データサーバ装置５０１、５０２、５０３においてデータは重複せずに保存されている。
【００１６】
あるいは、データサーバ装置５０１、５０２、５０３においてデータは重複して保存されてもよい。
例えば、窓口サーバ装置２００は、図５（ａ）に示す第１のデータを、複数のデータサーバ装置５０１、５０２、５０３のうちの２つ、例えば、データサーバ装置５０１、５０２に保存してもよい。同様に、窓口サーバ装置２００は、図５（ｂ）に示す第２のデータを、データサーバ装置５０２、５０３に保存し、図５（ｃ）に示す第３のデータを、データサーバ装置５０１、５０３に保存してもよい。
これにより、第１のデータはデータサーバ装置５０１、５０２に重複して保存され、第２のデータはデータサーバ装置５０２、５０３に重複して保存され、第３のデータはデータサーバ装置５０１、５０３に重複して保存される。この場合、仮に、データサーバ装置５０１が故障や破損してデータサーバ装置５０１からデータを取得できなくても、残りのデータサーバ装置５０２、５０３から必要なデータを取得することができる。
さらに、データサーバ装置５０１に保存された第１のデータと、データサーバ装置５０２に保存された第１のデータと、を照合することにより、一方がアクセス不正者により改ざんされた場合を検出することができる。
【００１７】
本発明は、上述した実施形態に限定されるものではなく、各種変更が可能である。
例えば、上述した実施形態では、データを２分割または３分割する例を説明したが、データは任意数に分割することができる。
また、上述した実施形態では、個人情報は、氏名および住所の２つの項目のみを有するが、さらに電話番号、メールアドレス、生年月日等の任意の項目を有することができる。
また、上述した実施形態では、データサーバ装置群５００は３つのデータサーバ装置５０１、５０２、５０３を含むが、データサーバ装置群５００は、２以上の任意数のデータサーバ装置を含むことができる。
【００１８】
図６は、本発明の第２実施形態に係るデータ管理システム２の構成を示す図である。
第２実施形態に係るデータ管理システム２は、第１実施形態に係るデータ管理システム１の構成に、ユーザ基本情報サーバ装置３００と、ＡＰＩ情報サーバ装置４００と、を追加したものである。
ユーザ基本情報サーバ装置３００は、ユーザ情報（ユーザ名、権限、アクセス暗号キー、アカウント、パスワード等）および使用する各サーバとの認証情報（アクセス暗号キー、サーバＩＰ、ポート番号等）を管理するサーバ装置である。
ＡＰＩ情報サーバ装置４００は、ＡＰＩ情報とＡＰＩ暗号キーを保存するサーバ装置である。
【００１９】
図７〜図１６のフローチャートを用いて、本発明の第２実施形態に係るデータ管理システム２の動作を説明する。
図７は、ユーザ情報の登録を示すフローチャートである。
ステップＳ１において、ユーザは、クライアント装置１００を用いて、窓口サーバ装置２００に対してユーザ情報（例えばアカウントとパスワード）を登録する。窓口サーバ装置２００は、クライアント装置１００から受け取ったユーザ情報を、ユーザ基本情報サーバ装置３００に送信する。
ステップＳ２において、ユーザ基本情報サーバ装置３００は、ユーザ情報に基づきアクセス暗号キー（例えば、８桁の数字「１２３４５６７８」）を発行し、アクセス暗号キーを窓口サーバ装置２００に送信する。
ステップＳ３において、窓口サーバ装置２００は、受け取ったアクセス暗号キーを表示（または印刷）することにより、ステップＳ４においてクライアント装置１００のユーザに知らせる。
アクセス暗号キーは、サーバ装置間の認証に必要となるキーであり、クライアント装置１００と窓口サーバ装置２００とのやり取り、および、窓口サーバ装置２００とユーザ基本情報サーバ装置３００とのやり取りは、アクセス暗号キーを用いて行う。
【００２０】
図８は、ユーザ情報の参照・更新・削除を示すフローチャートである。
ステップＳ１１において、ユーザは、クライアント装置１００において、アカウントとパスワードを入力する。
ステップＳ１２において、窓口サーバ装置２００は、入力されたアカウントとパスワードをユーザ基本情報サーバ装置３００に送信し、ユーザ基本情報サーバ装置３００は、アカウントとパスワードを用いてユーザ認証を行う。
ユーザ認証がＯＫの場合、ステップＳ１３において、ユーザ基本情報サーバ装置３００は、ユーザ情報（ユーザ名、権限、アクセス暗号キー、アカウント、パスワード等）を、窓口サーバ装置２００に送信し、窓口サーバ装置２００は、当該ユーザ情報をクライアント装置１００に対して表示する。
ステップＳ１４において、窓口サーバ装置２００は、クライアント装置１００からユーザによって入力された新たなユーザ情報を更新・削除する必要があるかを判断する。
更新・削除の必要がある場合、ステップＳ１５において、窓口サーバ装置２００は、クライアント装置１００から受け取った新たなユーザ情報を、ユーザ基本情報サーバ装置３００に送信し、ユーザ基本情報サーバ装置３００は、ユーザ基本情報サーバ装置３００のデータベースＤＢを更新・削除する。
【００２１】
図９は、可用性チェックを示すフローチャートである。
ステップＳ２１において、窓口サーバ装置２００は、データサーバ装置群５００からデータの各部分を受け取る（呼び出す）。例えば、図５の例の場合、データサーバ装置５０１から「e6e6e5e9」、データサーバ装置５０２から「979ca483」、データサーバ装置５０３から「a5acaa8e」を受け取る。
ステップＳ２２において、窓口サーバ装置２００は、データの各部分のタイムスタンプを照合する。すなわち、窓口サーバ装置２００は、「e6e6e5e9」「979ca483」「a5acaa8e」のタイムスタンプが一致するかを検証する。
タイムスタンプ照合がＯＫの場合、ステップＳ２３において、窓口サーバ装置２００は、クライアント装置１００に対して安全確認を表示する。次に、窓口サーバ装置２００は、データを複合してクライアント装置１００に送信する。例えば、窓口サーバ装置２００は、「e6e6e5e9979ca483a5acaa8e」をクライアント装置に送信する。なお、「e6e6e5e9979ca483a5acaa8e」は、図４（ｄ）に示すように、「日本太郎」を表す。
タイムスタンプ照合がＮＧの場合、ステップＳ２４において、窓口サーバ装置２００は、クライアント装置１００に対してアラートを表示する。
【００２２】
図１０は、データサーバ装置の管理を示すフローチャートである。
ステップＳ３１において、窓口サーバ装置２００は、データ保存するデータサーバ装置５０１、５０２、５０３の情報（ＩＰアドレス、ポート等）を登録し、保存する。
ステップＳ３２において、窓口サーバ装置２００は、認証情報（例えばアクセス暗号キー）を発行し、ユーザ基本情報サーバ装置３００に送信する。
ステップＳ３３において、窓口サーバ装置２００は、クライアント装置１００に対して認証情報（例えばアクセス暗号キー）を表示する。
ステップＳ３４において、窓口サーバ装置２００は、認証情報を窓口サーバ装置２００のアプリケーションに設定する。
【００２３】
図１１は、２分割のデータを登録する際のフローチャートである。
ステップＳ４１において、クライアント装置１００は、文字コードを２分割し、アクセス暗号キーとともに分割した文字コードを窓口サーバ装置２００に送信する。例えば、クライアント装置１００は、窓口サーバ装置２００に、図３に示す第１および第２のデータと、アクセス暗号キー「１２３４５６７８」と、を送信する。さらに、クライアント装置は、窓口サーバ装置に、ＡＰＩ暗号キーおよびＡＰＩ名を送信する。
窓口サーバ装置２００は、クライアント装置１００から送信された情報からＡＰＩ暗号キー、ＡＰＩ名、パラメータを取得する。この例では、「日本太郎」を登録する際のパラメータは、分割した文字コードであり、例えば、「e69e69e5ae98」、「7a5cac4aa38e」である。
ステップＳ４２において、窓口サーバ装置２００は、クライアント装置１００から送信されたアクセス暗号キーと、ユーザ基本情報サーバ装置３００に保存されているアクセス暗号キーと、を照合し、アクセス認証を行う。
アクセス暗号キーの照合がＯＫの場合、ステップＳ４３、Ｓ４４において、窓口サーバ装置２００は、クライアント装置１００から送信されたパラメータをＡＰＩ情報サーバ装置４００に保存されているＡＰＩキーで複合を行ってから、ＡＰＩ番号とパラメータをＳＱＬ文に組み合わせる。
ステップＳ４５において、窓口サーバ装置２００は、組み合わせたＳＱＬ文をデータサーバ装置群５００のうちの２つのデータサーバ装置５０１、５０２（ＤＢ１、ＤＢ２）に送信し、データサーバ装置５０１、５０２（ＤＢ１、ＤＢ２）はこれを記憶する。例えば、窓口サーバ装置２００は、データサーバ装置５０１（ＤＢ１）に、図３（ａ）に示す第１のデータを送信し、データサーバ装置５０２（ＤＢ２）に、図３（ｂ）に示す第２のデータを送信し、データサーバ装置５０１（ＤＢ１）は第１のデータを記憶し、データサーバ装置５０２（ＤＢ２）は、第２のデータを記憶する。
【００２４】
図１２は、３分割のデータを登録する際のフローチャートである。
ステップＳ５１において、クライアント装置１００は、文字コードを３分割し、アクセス暗号キーとともに分割した文字コードを窓口サーバ装置２００に送信する。例えば、クライアント装置１００は、窓口サーバ装置２００に、図５に示す第１〜第３のデータと、アクセス暗号キー「１２３４５６７８」と、を送信する。さらに、クライアント装置１００は、窓口サーバ装置２００に、ＡＰＩ暗号キーおよびＡＰＩ名を送信する。
窓口サーバ装置２００は、クライアント装置１００から送信された情報からＡＰＩ暗号キー、ＡＰＩ名、パラメータを取得する。この例では、「日本太郎」を登録する際のパラメータは、分割した文字コードであり、例えば、「e6e6e5e9」、「979ca483」、「a5acaa8e」である。
ステップＳ５２において、窓口サーバ装置２００は、クライアント装置１００から送信されたアクセス暗号キーと、ユーザ基本情報サーバ装置３００に保存されているアクセス暗号キーと、を照合し、アクセス認証を行う。
アクセス暗号キーの照合がＯＫの場合、ステップＳ５３、Ｓ５４において、窓口サーバ装置２００は、クライアント装置１００から送信されたパラメータをＡＰＩ情報サーバ装置４００に保存されているＡＰＩキーで複合を行ってから、ＡＰＩ番号とパラメータをＳＱＬ文に組み合わせる。
ステップＳ５５において、窓口サーバ装置２００は、組み合わせたＳＱＬ文をデータサーバ装置群５００のうちの３つのデータサーバ装置５０１、５０２、５０３（ＤＢ１、ＤＢ２、ＤＢ３）に送信、各データサーバ装置５０１、５０２、５０３（ＤＢ１、ＤＢ２、ＤＢ３）はこれを記憶する。例えば、窓口サーバ装置２００は、データサーバ装置５０１（ＤＢ１）に、図５（ａ）に示す第１のデータを送信し、データサーバ装置５０２（ＤＢ２）に、図５（ｂ）に示す第２のデータを送信し、データサーバ装置５０３（ＤＢ３）に、図５（ｃ）に示す第３のデータを送信し、データサーバ装置５０１（ＤＢ１）は第１のデータを記憶し、データサーバ装置５０２（ＤＢ２）は第２のデータを記憶し、データサーバ装置５０３（ＤＢ３）は第３のデータを記憶する。
【００２５】
図１３は、文字コードを２分割する際のフローチャートである。
ステップＳ６１、Ｓ６２において、窓口サーバ装置２００は、ＡＰＩ情報サーバ装置４００からデータ分割ＡＰＩを受け取る。
ステップＳ６３において、クライアント装置１００は、文字コードを２分割し、アクセス暗号キーとともに分割した文字コードを窓口サーバ装置２００に送信する。例えば、クライアント装置１００は、窓口サーバ装置２００に、図３に示す第１および第２のデータと、アクセス暗号キー「１２３４５６７８」と、を送信する。
ステップＳ６４において、窓口サーバ装置２００は、分割した文字コード部分の同一番目同士（１番目である前半同士および２番目である後半同士）を元データの文字列の順序で連結する。
ステップＳ６５において、窓口サーバ装置２００は、データサーバ装置５０１、５０２（ＤＢ１、ＤＢ２）のインサートトランザクションを立ち上げ、各ＤＢ１，２の仮インサート処理が全部終わったかを監視する。
各ＤＢ１，２のインサート処理が全部終わった場合、ステップＳ６６において、窓口サーバ装置２００は、トランザクション終了コマンドを各ＤＢ１，２に送信する。
ステップＳ６７において、窓口サーバ装置２００は、各ＤＢ１，２へ保存処理を行い、データの整合性を保持する。例えば、窓口サーバ装置２００は、データサーバ装置５０１）（ＤＢ１）に、図３（ａ）に示す第１のデータを保存し、データサーバ装置５０２（ＤＢ２）に、図３（ｂ）に示す第２のデータを保存する。
【００２６】
図１４は、文字コードを３分割する際のフローチャートである。
ステップＳ７１、Ｓ７２において、窓口サーバ装置２００は、ＡＰＩ情報サーバ装置４００からデータ分割ＡＰＩを受け取る。
ステップＳ７３において、クライアント装置１００は、文字コードを３分割し、アクセス暗号キーとともに分割した文字コードを窓口サーバ装置２００に送信する。例えば、クライアント装置は、窓口サーバ装置に、図５に示す第１〜第３のデータと、アクセス暗号キー「１２３４５６７８」と、を送信する。
ステップＳ７４において、窓口サーバ装置２００は、複数の分割文字コード部分の、先頭から数えて同一番目同士（１番目である前半同士、２番目である中間同士、３番目である後半同士）を元データの文字列の順序で連結する。
ステップＳ７５において、窓口サーバ装置２００は、データサーバ装置５０１、５０２、５０３（ＤＢ１、ＤＢ２、ＤＢ３）のインサートトランザクションを立ち上げ、各ＤＢの仮インサート処理が全部終わったかを監視する。
各ＤＢのインサート処理が全部終わった場合、ステップＳ７６において、窓口サーバ装置２００は、トランザクション終了コマンドを各ＤＢに送信する。
ステップＳ７７において、窓口サーバ装置２００は、各ＤＢへ保存処理を行い、データの整合性を保持する。例えば、窓口サーバ装置２００は、データサーバ装置５０１（ＤＢ１）に、図５（ａ）に示す第１のデータおよび図５（ｂ）に示す第２のデータを保存し、データサーバ装置５０２（ＤＢ２）に、図５（ｂ）に示す第２のデータおよび図５（ｃ）に示す第３のデータを保存し、データサーバ装置５０３（ＤＢ３）に、図５（ａ）に示す第１のデータおよび図５（ｃ）に示す第３のデータを保存する。
【００２７】
図１５は、２分割の文字コードを結合し元データの文字列を復元する際のフローチャートである。
ステップＳ８１において、クライアント装置１００は、窓口サーバ装置２００の検索ＡＰＩを呼び出す。
ステップＳ８２、Ｓ８３において、窓口サーバ装置２００は、クライアント装置１００から受け取ったパラメータを切り取り、ＡＰＩ情報サーバ装置４００に保存した検索ロジックを組み合わせ、ＳＱＬ文を発行する。
ステップＳ８４において、窓口サーバ装置２００は、ＳＱＬ文に基づきデータサーバ装置５０１、５０２（ＤＢ１、ＤＢ２）からのデータ抽出処理を行う。
ステップＳ８５において、窓口サーバ装置２００は、データサーバ装置５０１、５０２（ＤＢ１、ＤＢ２）から取得したデータのタイムスタンプをチェックする。例えば、データサーバ装置５０１（ＤＢ１）から図３（ａ）に示す第１のデータを取得し、データサーバ装置５０２（ＤＢ２）から図３（ｂ）に示す第２のデータを取得し、両者のタイムスタンプをチェックする。
タイムスタンプが一致しない場合、ステップＳ８６において、窓口サーバ装置２００は、クライアント装置１００に対してアラートを表示する。
タイムスタンプが一致する場合、ステップＳ８７において、窓口サーバ装置２００は、データサーバ装置５０１、５０２（ＤＢ１、ＤＢ２）から取得したデータを結合し、元データを復元する。この処理は、例えば、図３に示した第１のデータの項目１（１）を連結前の分割データ部分に分解するとともに、第２のデータの項目１（２）を連結前の分割データ部分に分解したのち、分解された分割データ部分同士を分割前の元の文字データに結合することで行う。項目２についても同じである。
【００２８】
図１６は、３分割の文字コードを結合し元データの文字列を復元する際のフローチャートである。
ステップＳ９１において、クライアント装置１００は、窓口サーバ装置２００の検索ＡＰＩを呼び出す。
ステップＳ９２、Ｓ９３において、窓口サーバ装置２００は、クライアント装置１００から受け取ったパラメータを切り取り、ＡＰＩ情報サーバ装置４００に保存した検索ロジックを組み合わせ、ＳＱＬ文を発行する。
ステップＳ９４において、窓口サーバ装置２００は、ＳＱＬ文に基づきデータサーバ装置５０１、５０２、５０３（ＤＢ１、ＤＢ２、ＤＢ３）からのデータ抽出処理を行う。
ステップＳ９５において、窓口サーバ装置２００は、データサーバ装置５０１、５０２、５０３（ＤＢ１、ＤＢ２、ＤＢ３）から取得したデータのタイムスタンプをチェックする。例えば、データサーバ装置５０１（ＤＢ１）から図５（ａ）に示す第１のデータおよび図５（ｂ）に示す第２のデータを取得し、データサーバ装置５０２（ＤＢ２）から図５（ｂ）に示す第２のデータおよび図５（ｃ）に示す第３のデータを取得し、データサーバ装置５０３（ＤＢ３）から図５（ａ）に示す第１のデータおよび図５（ｃ）に示す第３のデータを取得し、それぞれのデータのタイムスタンプをチェックする。
タイムスタンプが一致しない場合、ステップＳ９６において、窓口サーバ装置２００は、クライアント装置１００に対してアラートを表示する。
タイムスタンプが一致する場合、ステップＳ９７において、窓口サーバ装置２００は、データサーバ装置５０１、５０２、５０３（ＤＢ１、ＤＢ２、ＤＢ３）から取得したデータを結合し元データの文字列を復元する。この処理は、例えば、図５に示した第１のデータの項目１（１）を連結前の分割データ部分に分解し、第２のデータの項目１（２）を連結前の分割データ部分に分解し、第３のデータの項目１（３）を連結前の分割データ部分に分解したのち、分解された分割データ部分同士を分割前の元の文字データに結合することで行う。項目２、３についても同じである。
【００２９】
以上、図示例に基づき本発明を説明したが、本発明はこれに限定されない。例えば、上述した実施形態では、文字コードを２分割または３分割する例を示したが、文字コードは、文字コードを構成するコード要素数（桁数）まで分割してもよい。
【符号の説明】
【００３０】
１、２  データ管理システム
１００  クライアント装置
２００  窓口サーバ装置
３００  ユーザ基本情報サーバ装置
４００  ＡＰＩ情報サーバ装置
５００  データサーバ装置群
５０１、５０２、５０３  データサーバ装置
【図１】
2019109857.tif 000004
【図２】
2019109857.tif 000005
【図３】
2019109857.tif 000006
【図４】
2019109857.tif 000007
【図５】
2019109857.tif 000008
【図６】
2019109857.tif 000009
【図７】
2019109857.tif 000010
【図８】
2019109857.tif 000011
【図９】
2019109857.tif 000012
【図１０】
2019109857.tif 000013
【図１１】
2019109857.tif 000014
【図１２】
2019109857.tif 000015
【図１３】
2019109857.tif 000016
【図１４】
2019109857.tif 000017
【図１５】
2019109857.tif 000018
【図１６】
2019109857.tif 000019
【手続補正書】
【提出日】平成30年4月27日(2018.4.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
クライアント装置と窓口サーバ装置と複数のデータサーバ装置とを含むデータ管理システムであって、
前記クライアント装置は、少なくとも１つの項目を有する文字列からなる個人情報をＵＴＦ−８、ＵＴＦ−１６、ＪＩＳコードまたはＳＪＩＳコード系の文字コードに変換し、
前記クライアント装置は、前記文字コードを少なくとも２つの分割文字コード部分に分割し、
前記クライアント装置は、前記分割文字コード部分を前記窓口サーバ装置に送信し、
前記窓口サーバ装置は、前記分割文字コード部分からなる第１のデータを前記複数のデータサーバ装置のうちの１つのデータサーバ装置に保存し、前記第１のデータとは異なる、前記分割文字コード部分からなる第２のデータを前記複数のデータサーバ装置のうちの別の１つのデータサーバ装置に保存するよう構成されていることを特徴とするデータ管理システム。
【請求項２】
前記クライアント装置は、前記文字コードを少なくとも３つの分割文字コード部分に分割し、
前記窓口サーバ装置は、前記分割文字コード部分からなる第１のデータと、前記第１のデータとは異なる前記分割文字コード部分からなる第２のデータと、前記第１のデータおよび前記第２のデータとは異なる前記分割文字コード部分からなる第３のデータを、前記複数のデータサーバ装置のうちの２つ以上のデータサーバ装置に重複して保存するよう構成されていることを特徴とする、請求項１に記載のデータ管理システム。
【請求項３】
前記クライアント装置は、複数の分割文字コード部分の、先頭から同一番目同士を元データの文字列の順序で直接連結した後、前記窓口サーバ装置に送信するよう構成されていることを特徴とする、請求項１または２に記載のデータ管理システム。
【請求項４】
前記複数のデータサーバ装置は、地理的に異なる場所に設置されていることを特徴とする、請求項１から３までのいずれか一項に記載のデータ管理システム。