JP2016151797A - Information processing system, control method thereof, and program - Google Patents

Information processing system, control method thereof, and program Download PDF

Info

Publication number
JP2016151797A
JP2016151797A JP2015027442A JP2015027442A JP2016151797A JP 2016151797 A JP2016151797 A JP 2016151797A JP 2015027442 A JP2015027442 A JP 2015027442A JP 2015027442 A JP2015027442 A JP 2015027442A JP 2016151797 A JP2016151797 A JP 2016151797A
Authority
JP
Japan
Prior art keywords
data
personal information
secret information
tally
processing system
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
JP2015027442A
Other languages
Japanese (ja)
Inventor
敏幸 上原
Toshiyuki Uehara
敏幸 上原
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.)
Canon Marketing Japan Inc
Original Assignee
Canon Marketing Japan Inc
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 Canon Marketing Japan Inc filed Critical Canon Marketing Japan Inc
Priority to JP2015027442A priority Critical patent/JP2016151797A/en
Publication of JP2016151797A publication Critical patent/JP2016151797A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a mechanism configured to reduce the risk of leakage of confidential information which has been stored and to be transmitted.SOLUTION: A personal information service server 101 divides confidential information into multiple pieces of tally data, to be stored in a storage server 102. On receipt of a request from a user application server 112, the personal information service server 101 acquires multiple pieces of tally data from the storage server 102, to restore the confidential information. The restored confidential information is encrypted, and divided into multiple pieces of tally data, according to the number of communication paths, to be transmitted on the communication paths.SELECTED DRAWING: Figure 4

Description

記憶されている秘密情報の漏洩及び送信される秘密情報の漏洩によるリスクを低減することの可能な情報処理システム、その制御方法、及びプログラムに関する。   The present invention relates to an information processing system capable of reducing the risk of leakage of stored secret information and leakage of transmitted secret information, a control method thereof, and a program.

従来、特定の個人を識別することの可能な情報(以下、個人情報という。)や企業の機密情報といった秘密情報の漏洩が問題となっている。特に、こうした情報はコンピュータで記憶・管理されているため、コンピュータのセキュリティが万全でないと悪意のある者が情報を漏洩させてしまう可能性がある。   Conventionally, leakage of confidential information such as information capable of identifying a specific individual (hereinafter referred to as personal information) and confidential information of a company has been a problem. In particular, since such information is stored and managed by a computer, a malicious person may leak the information if the security of the computer is not perfect.

そこで、個人情報等を適切な利用者にのみ利用させる仕組みとして、特許文献1の仕組みがある。特許文献1には、公開鍵を用いて利用者向けの情報を暗号化しておき、利用者のICカードを検知すると、当該ICカードに対応する秘密鍵を利用して、暗号化された情報を復号することの可能な仕組みが開示されている。   Therefore, there is a mechanism disclosed in Patent Document 1 as a mechanism that allows only appropriate users to use personal information or the like. In Patent Document 1, information for a user is encrypted using a public key, and when a user's IC card is detected, the encrypted information is stored using a secret key corresponding to the IC card. A mechanism that can be decrypted is disclosed.

特開2010−237850号公報JP 2010-237850 A

確かに暗号化された情報であれば、通信を傍受されたとしても簡単に復号されることはないが、悪意のある者に復号するための鍵を入力されてしまうとたとえ暗号化されていても情報が漏洩してしまうことになる。   If it is certainly encrypted information, even if the communication is intercepted, it will not be easily decrypted, but it will be encrypted even if a malicious person enters the key to decrypt it. Will also leak information.

また、情報の漏洩は通信によるものだけでなく、情報を管理している管理者等がコンピュータから情報を取得して漏洩させてしまうこともある。いわゆる内部漏洩である。この場合には、たとえ情報を暗号化しておいたとしても、どの鍵を使えば復号できるのかが知られているため、容易に復号されて情報が漏洩される。   Information leakage is not only caused by communication, but an administrator who manages the information may acquire information from the computer and leak it. This is so-called internal leakage. In this case, even if the information is encrypted, since it is known which key can be used for decryption, the information is easily decrypted and the information is leaked.

つまり、通信による情報の漏洩のリスクと、コンピュータに記憶されている情報の内部漏洩のリスクとを低減しなければ、セキュリティを高めることにはならない。   That is, unless the risk of information leakage due to communication and the risk of internal leakage of information stored in the computer are reduced, security cannot be improved.

そこで本発明は、記憶されている秘密情報の漏洩及び送信される秘密情報の漏洩によるリスクを低減することの可能な仕組みを提供することを目的とする。   Therefore, an object of the present invention is to provide a mechanism capable of reducing the risk of leakage of stored secret information and leakage of transmitted secret information.

上記の目的を達成するために本発明の情報処理システムは、秘密情報を複数のデータに分割する第1のデータ分割手段と、前記第1のデータ分割手段で分割された複数のデータを記憶する記憶手段と、前記記憶手段に記憶された複数のデータを用いて前記秘密情報を復元する第1の秘密情報復元手段と、前記第1の秘密情報復元手段で復元された秘密情報を暗号化する暗号化手段と、前記暗号化手段で暗号化された秘密情報を通信経路の数に応じた複数のデータに分割する第2のデータ分割手段と、前記第2のデータ分割手段で分割された複数のデータを複数の通信経路でそれぞれ送信する送信手段とを備えることを特徴とする。   In order to achieve the above object, an information processing system according to the present invention stores a first data dividing means for dividing secret information into a plurality of data, and a plurality of data divided by the first data dividing means. Storage means, first secret information restoration means for restoring the secret information using a plurality of data stored in the storage means, and encryption of the secret information restored by the first secret information restoration means An encryption unit; a second data division unit that divides the secret information encrypted by the encryption unit into a plurality of pieces of data according to the number of communication paths; and a plurality of pieces of data divided by the second data division unit Transmission means for transmitting each of the data via a plurality of communication paths.

本発明によれば、記憶されている秘密情報の漏洩及び送信される秘密情報の漏洩によるリスクを低減することが可能となる。   ADVANTAGE OF THE INVENTION According to this invention, it becomes possible to reduce the risk by leakage of the confidential information memorize | stored and the leakage of the confidential information transmitted.

情報処理システムのシステム構成の一例を示す図である。It is a figure which shows an example of the system configuration | structure of an information processing system. 情報処理システムにおける各種装置のハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions of the various apparatuses in an information processing system. 情報処理システムにおける各種装置の機能構成の一例を示す図である。It is a figure which shows an example of a function structure of the various apparatuses in an information processing system. 本実施形態の概要を示す図である。It is a figure which shows the outline | summary of this embodiment. 個人情報を割符データに分けてストレージサーバ102に送信する一連の処理の流れを示すフローチャートである。4 is a flowchart showing a flow of a series of processes for dividing personal information into tally data and transmitting it to the storage server 102. 利用者アプリサーバ112からのリクエストに応じて個人情報リストを送信する一連の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a series of processes which transmit a personal information list | wrist in response to the request from the user application server. 個人情報復元処理の詳細な処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a detailed process of a personal information restoration process. 割符データを受信して個人情報リストを取得する一連の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a series of processes which receive tally data and acquire a personal information list. 個人情報リスト900及び割符データ管理テーブル910のテーブル構成の一例を示す図である。It is a figure which shows an example of a table structure of the personal information list 900 and the tally data management table 910.

以下、図面を参照して、本発明の実施形態を詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、本実施形態における情報処理システムのシステム構成の一例を示す図である。本実施形態の情報処理システムは、個人情報サービスドメイン100と利用者ドメイン110に分けられており、それぞれWAN120を介して相互に通信可能に接続されている。尚、WANはWide Area Networkの略称である。   FIG. 1 is a diagram illustrating an example of a system configuration of an information processing system according to the present embodiment. The information processing system of the present embodiment is divided into a personal information service domain 100 and a user domain 110, which are connected to each other via a WAN 120 so as to communicate with each other. Note that WAN is an abbreviation for Wide Area Network.

個人情報サービスドメイン100では、個人情報サービスサーバ101、ストレージサーバ102、及び復元サービスサーバ103がLAN104を介して相互に通信可能に接続されている。また、利用者ドメイン110では、割符サービスサーバ111、及び利用者アプリサーバ112がLAN113を介して相互に通信可能に接続されている。   In the personal information service domain 100, a personal information service server 101, a storage server 102, and a restoration service server 103 are connected via a LAN 104 so that they can communicate with each other. In the user domain 110, a tally service server 111 and a user application server 112 are connected to each other via a LAN 113 so that they can communicate with each other.

尚、図1のネットワーク上に接続される各種端末あるいはサーバの構成は一例であり、用途や目的に応じて様々な構成例がある。   Note that the configuration of various terminals or servers connected to the network in FIG. 1 is an example, and there are various configuration examples depending on applications and purposes.

個人情報サービスサーバ101は、利用者の個人情報を保管するためのサービスを提供するサーバである。個人情報サービスサーバ101が、利用者アプリサーバ112からのリクエストに応じて、預かっている個人情報を利用者ドメイン110内の装置に提供する。尚、本実施形態では個人情報を例に挙げて説明を行うが、個人情報に限らない。第三者に漏洩しては困る情報(例えば、企業の機密情報やクレジットカード等の決済情報やパスワード等、秘密情報)であればなんでもよい。   The personal information service server 101 is a server that provides a service for storing personal information of users. In response to a request from the user application server 112, the personal information service server 101 provides personal information stored in a device in the user domain 110. In the present embodiment, personal information is described as an example, but the present invention is not limited to personal information. Any information that can be leaked to a third party (for example, confidential information such as confidential information of a company, payment information such as a credit card, a password, etc.) may be used.

ストレージサーバ102は、利用者の個人情報を保管するサーバである。ストレージサーバ102で保管する個人情報は個人情報サービスサーバ101によって分割され、複数のストレージ(後述する外部メモリ211)に分散して保存される。本実施形態では、個人情報サービスサーバ101によって分割されたデータのことを、割符データと称する。ストレージサーバ102は、物理的に異なるサーバであってもよいし、仮想化技術により論理的に分けられたサーバであってもよい。また、物理的に1つまたは複数のサーバに複数のストレージを設ける形態であってもよい。尚、本実施形態では、4つのストレージサーバ102とこれらに対応する4つのストレージを用いるものとして説明するが、ストレージサーバ102の数はこれに限らない。   The storage server 102 is a server that stores personal information of users. Personal information stored in the storage server 102 is divided by the personal information service server 101 and distributed and stored in a plurality of storages (external memory 211 described later). In the present embodiment, data divided by the personal information service server 101 is referred to as tally data. The storage server 102 may be a physically different server, or may be a server logically divided by a virtualization technique. Further, a form in which a plurality of storages are physically provided in one or a plurality of servers may be employed. In the present embodiment, four storage servers 102 and four storages corresponding to these are used. However, the number of storage servers 102 is not limited to this.

復元サービスサーバ103は、ストレージサーバ102に保管されている割符データのいずれかが破損・消失してしまった時のために、破損・消失した割符データを復元するサービスを提供するサーバである。ストレージサーバ102には、割符データから生成されるパリティデータが保管されている。パリティデータは、ある個人情報を分割することで生成されるすべての割符データの排他的論理和(すなわち、XOR)によって算出されるデータである。つまり、破損・消失してしまった割符データ以外のすべての割符データとパリティデータとの排他的論理和を計算することで、破損・消失してしまった割符データを復元することができる。   The restoration service server 103 is a server that provides a service for restoring damaged / erased tally data when any of the tally data stored in the storage server 102 is damaged / erased. The storage server 102 stores parity data generated from tally data. Parity data is data calculated by exclusive OR (ie, XOR) of all tally data generated by dividing certain personal information. That is, by calculating the exclusive OR of all tally data other than corrupted / lost tally data and parity data, the tally data that has been corrupted / lost can be restored.

割符サービスサーバ111は、個人情報サービスサーバ101から送信された割符データを受信し、利用者アプリサーバ112からのリクエストに応じてこれを利用者アプリサーバ112に送信するためのサーバである。個人情報サービスサーバ101は、割符サービスサーバ111と利用者アプリサーバ112のそれぞれに割符データを送信する。すなわち、通信経路を複数設けることでセキュリティを高めている。   The tally service server 111 is a server for receiving tally data transmitted from the personal information service server 101 and transmitting it to the user application server 112 in response to a request from the user application server 112. The personal information service server 101 transmits tally data to the tally service server 111 and the user application server 112, respectively. That is, security is enhanced by providing a plurality of communication paths.

利用者アプリサーバ112は、個人情報サービスサーバ101のサービスを利用する利用者が有するアプリケーションサーバである。利用者アプリサーバ112は、個人情報サービスサーバ101と割符サービスサーバ111に対して利用者が保管している個人情報のリスト(以下、個人情報リストという。)を送信するようリクエストを送信する。これに応じて個人情報サービスサーバ101と割符サービスサーバ111から送信された割符データを結合することで、個人情報リストを取得する。   The user application server 112 is an application server owned by a user who uses the service of the personal information service server 101. The user application server 112 transmits a request to the personal information service server 101 and the tally service server 111 to transmit a list of personal information stored by the user (hereinafter referred to as a personal information list). In response to this, the personal information list is acquired by combining tally data transmitted from the personal information service server 101 and the tally service server 111.

以上説明した各サーバは、1台であってもよいし複数台で構成されてもよい。また、あるサーバの機能の一部またはすべてを他のサーバが備えることで、図1に示すシステム構成とは異なる構成としてもよい。そのため、本発明における情報処理システムとは、複数の装置(サーバ)によって動作する仕組みに限らず、単体の装置(サーバ)によって動作する仕組みも含むものとする。   Each server described above may be a single server or a plurality of servers. Moreover, it is good also as a structure different from the system structure shown in FIG. 1 because another server equips with a part or all of the function of a certain server. Therefore, the information processing system in the present invention is not limited to a mechanism that operates by a plurality of devices (servers), but also includes a mechanism that operates by a single device (server).

図2は、本実施形態における各サーバのハードウェア構成の一例を示す図である。   FIG. 2 is a diagram illustrating an example of a hardware configuration of each server in the present embodiment.

CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。   The CPU 201 comprehensively controls each device and controller connected to the system bus 204.

また、ROM202あるいは外部メモリ211には、CPU201の制御プログラムであるBIOS(Basic Input / OutputSystem)やオペレーティングシステムプログラム(以下、OSという。)が記憶されている。また外部メモリ211には、各サーバが実行する機能を実現するために必要な各種プログラム等が記憶されている。RAM203は、CPU201の主メモリ、ワークエリア等として機能する。   Further, the ROM 202 or the external memory 211 stores a BIOS (Basic Input / Output System) that is a control program of the CPU 201 and an operating system program (hereinafter referred to as OS). The external memory 211 stores various programs necessary for realizing the functions executed by each server. The RAM 203 functions as a main memory, work area, and the like for the CPU 201.

CPU201は、処理の実行に際して必要なプログラム等をRAM203にロードして、プログラムを実行することで各種動作を実現するものである。   The CPU 201 implements various operations by loading a program necessary for execution of processing into the RAM 203 and executing the program.

また、入力コントローラ205は、キーボードやマウス等のポインティングデバイスといった入力デバイス209からの入力を制御する。   The input controller 205 controls input from an input device 209 such as a keyboard or a pointing device such as a mouse.

ビデオコントローラ206は、ディスプレイ210等の表示器への表示を制御する。表示器はCRTや液晶ディスプレイでも構わない。   The video controller 206 controls display on a display device such as the display 210. The display device may be a CRT or a liquid crystal display.

メモリコントローラ207は、ハードディスクやフレキシブルディスク或いはPCMCIAカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ211へのアクセスを制御する。外部メモリ211(記憶手段)は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する。   The memory controller 207 controls access to an external memory 211 such as a hard disk, a flexible disk, or a card type memory connected to the PCMCIA card slot via an adapter. The external memory 211 (storage means) stores a boot program, browser software, various applications, font data, user files, editing files, various data, and the like.

通信I/Fコントローラ208は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いたインターネット通信等が可能である。   The communication I / F controller 208 is connected to and communicates with an external device via a network, and executes communication control processing on the network. For example, Internet communication using TCP / IP is possible.

尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ210上での表示を可能としている。また、CPU201は、ディスプレイ210上の不図示のマウスカーソル等でのユーザ指示を可能とする。   Note that the CPU 201 enables display on the display 210 by executing outline font rasterization processing on a display information area in the RAM 203, for example. Further, the CPU 201 enables a user instruction with a mouse cursor (not shown) on the display 210.

本発明の各サーバが後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ211に記録されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ211に格納されている。   Various programs and the like used for each server of the present invention to execute various processes described later are recorded in the external memory 211, and are executed by the CPU 201 by being loaded into the RAM 203 as necessary. Furthermore, definition files and various information tables used by the program according to the present invention are stored in the external memory 211.

図3は、本実施形態における各サーバの機能構成の一例を示す図である。尚、図3に示す機能構成は一例であり、用途や目的に応じて様々な構成例がある。   FIG. 3 is a diagram illustrating an example of a functional configuration of each server in the present embodiment. Note that the functional configuration shown in FIG. 3 is an example, and there are various configuration examples depending on the application and purpose.

個人情報サービスサーバ101は機能部として、送受信制御部301、個人情報一時記憶部302、分割制御部303、パリティデータ制御部304、公開鍵記憶部305、結合制御部306、個人情報リスト生成制御部307、及び暗号化制御部308を備える。   The personal information service server 101 functions as a transmission / reception control unit 301, a personal information temporary storage unit 302, a division control unit 303, a parity data control unit 304, a public key storage unit 305, a combination control unit 306, and a personal information list generation control unit. 307 and an encryption control unit 308.

送受信制御部301は、他のサーバと各種データを送受信するための機能部である。個人情報サービスサーバ101の通信I/Fコントローラ208を介して、他のサーバに各種データを送信または他のサーバから各種データを受信する。   The transmission / reception control unit 301 is a functional unit for transmitting / receiving various data to / from other servers. Via the communication I / F controller 208 of the personal information service server 101, various data is transmitted to other servers or received from other servers.

個人情報一時記憶部302は、利用者から保管するために送信された個人情報リストを一時記憶するための機能部である。個人情報一時記憶部302は、受信した個人情報リストをRAM203に一時記憶し、所定の処理が終了したらRAM203からこれを削除する。   The personal information temporary storage unit 302 is a functional unit for temporarily storing a personal information list transmitted for storage from a user. The personal information temporary storage unit 302 temporarily stores the received personal information list in the RAM 203 and deletes it from the RAM 203 when predetermined processing is completed.

分割制御部303は、個人情報一時記憶部302によって一時記憶された個人情報リストを個人情報ごとに分割するための機能部である。分割制御部303は、個人情報を前述した割符データに分ける。何個の割符データに分割するかは、あらかじめ決められた設定に従うものとする。また、分割制御部303は、暗号化制御部308によって暗号化された個人情報リストを分割し、割符データに分けるための機能部である。   The division control unit 303 is a functional unit for dividing the personal information list temporarily stored by the personal information temporary storage unit 302 into personal information. The division control unit 303 divides the personal information into the tally data described above. The number of tally data to be divided is determined according to a predetermined setting. The division control unit 303 is a functional unit for dividing the personal information list encrypted by the encryption control unit 308 into tally data.

パリティデータ制御部304は、分割制御部303によって分割された割符データを用いてパリティデータを生成するための機能部である。また、必要に応じて割符データに対応するパリティデータを取得するための機能部である。   The parity data control unit 304 is a functional unit for generating parity data using the tally data divided by the division control unit 303. Further, it is a functional unit for acquiring parity data corresponding to tally data as necessary.

公開鍵記憶部305は、復元サービスサーバ103で保持する秘密鍵に対応する公開鍵と、利用者アプリサーバ112で保持する秘密鍵に対応する公開鍵とを記憶するための機能部である。   The public key storage unit 305 is a functional unit for storing a public key corresponding to the private key held by the restoration service server 103 and a public key corresponding to the private key held by the user application server 112.

結合制御部306は、ある個人情報を構成するすべての割符データをストレージサーバ102から取得し、これらを結合するための機能部である。これにより分割された割符データから個人情報を復元する。   The combination control unit 306 is a functional unit for acquiring all tally data constituting certain personal information from the storage server 102 and combining them. Thus, the personal information is restored from the tally data divided.

個人情報リスト生成制御部307は、結合制御部306によって割符データを結合することにより復元された個人情報を複数含むリストである個人情報リストを生成するための機能部である。   The personal information list generation control unit 307 is a functional unit for generating a personal information list that is a list including a plurality of personal information restored by combining tally data by the combination control unit 306.

暗号化制御部308は、利用者アプリサーバ112で保持する秘密鍵に対応する公開鍵を公開鍵記憶部305から取得し、これを用いて個人情報リスト生成制御部307で生成された個人情報リストを暗号化するための機能部である。   The encryption control unit 308 acquires a public key corresponding to the secret key held by the user application server 112 from the public key storage unit 305, and uses this to generate a personal information list generated by the personal information list generation control unit 307. It is a functional part for encrypting.

ストレージサーバ102は、送受信制御部311、及び割符データ記憶部312を備える。   The storage server 102 includes a transmission / reception control unit 311 and a tally data storage unit 312.

送受信制御部311は、個人情報サービスサーバ101と各種データを送受信するための機能部である。ストレージサーバ102の通信I/Fコントローラ208を介して、個人情報サービスサーバ101に各種データを送信、または個人情報サービスサーバ101から各種データを受信する。   The transmission / reception control unit 311 is a functional unit for transmitting / receiving various data to / from the personal information service server 101. Various data is transmitted to or received from the personal information service server 101 via the communication I / F controller 208 of the storage server 102.

割符データ記憶部312(記憶手段)は、個人情報サービスサーバ101から送信された割符データをストレージ、つまり外部メモリ211に記憶するための機能部である。個人情報サービスサーバ101からのリクエストに応じて、記憶されている割符データを取得して、個人情報サービスサーバ101に送信する。   The tally data storage unit 312 (storage means) is a functional unit for storing tally data transmitted from the personal information service server 101 in storage, that is, in the external memory 211. In response to a request from the personal information service server 101, the stored tally data is acquired and transmitted to the personal information service server 101.

復元サービスサーバ103は機能部として、送受信制御部321、秘密鍵記憶部322、復号制御部323、及び復元制御部324を備える。   The restoration service server 103 includes a transmission / reception control unit 321, a secret key storage unit 322, a decryption control unit 323, and a restoration control unit 324 as functional units.

送受信制御部321は、個人情報サービスサーバ101と各種データを送受信するための機能部である。復元サービスサーバ103の通信I/Fコントローラ208を介して、個人情報サービスサーバ101に各種データを送信、または個人情報サービスサーバ101から各種データを受信する。   The transmission / reception control unit 321 is a functional unit for transmitting / receiving various data to / from the personal information service server 101. Various data is transmitted to the personal information service server 101 or various data is received from the personal information service server 101 via the communication I / F controller 208 of the restoration service server 103.

秘密鍵記憶部322は、個人情報サービスサーバ101で保持する公開鍵に対応する秘密鍵を記憶するための機能部である。   The secret key storage unit 322 is a functional unit for storing a secret key corresponding to the public key held by the personal information service server 101.

復号制御部323は、個人情報サービスサーバ101で保持する公開鍵に対応する秘密鍵を秘密鍵記憶部322から取得し、これを用いて個人情報サービスサーバ101で暗号化されたパリティデータを復号するための機能部である。   The decryption control unit 323 obtains a secret key corresponding to the public key held by the personal information service server 101 from the secret key storage unit 322, and uses this to decrypt the parity data encrypted by the personal information service server 101. It is a functional part for.

復元制御部324は、復号制御部323で復号されたパリティデータと個人情報サービスサーバ101から取得した割符データとを用いて、破損・消失してしまった割符データを復元するための機能部である。復元するためには、パリティデータと割符データの排他的論理和を求めればよい。   The restoration control unit 324 is a functional unit for restoring tally data that has been damaged or lost using the parity data decoded by the decoding control unit 323 and the tally data acquired from the personal information service server 101. . In order to restore, an exclusive OR of parity data and tally data may be obtained.

割符サービスサーバ111は機能部として、送受信制御部331、割符データ記憶部332、保存期間制御部333を備える。   The tally service server 111 includes a transmission / reception control unit 331, a tally data storage unit 332, and a storage period control unit 333 as functional units.

送受信制御部331は、個人情報サービスサーバ101及び利用者アプリサーバ112と各種データを送受信するための機能部である。割符サービスサーバ111の通信I/Fコントローラ208を介して、各サーバに各種データを送信、または各サーバから各種データを受信する。   The transmission / reception control unit 331 is a functional unit for transmitting / receiving various data to / from the personal information service server 101 and the user application server 112. Various data is transmitted to each server or received from each server via the communication I / F controller 208 of the tally service server 111.

割符データ記憶部332は、個人情報サービスサーバ101から送信された割符データを一時的に記憶するための記憶部である。また、割符データを記憶してから保存期間制御部333で管理する保存期間を超過した場合には、当該割符データを削除する。   The tally data storage unit 332 is a storage unit for temporarily storing tally data transmitted from the personal information service server 101. Further, when the storage period managed by the storage period control unit 333 is exceeded after the tally data is stored, the tally data is deleted.

保存期間制御部333は、個人情報サービスサーバ101から送信された割符データが割符データ記憶部332によって記憶されてから保存期間を超過したかどうかを確認し、超過している場合には、割符データ記憶部332に削除を指示するための機能部である。   The storage period control unit 333 checks whether the tally data transmitted from the personal information service server 101 has been stored by the tally data storage unit 332 and whether the storage period has been exceeded. This is a functional unit for instructing the storage unit 332 to delete.

利用者アプリサーバ112は機能部として、送受信制御部341、リクエスト制御部342、結合制御部343、秘密鍵記憶部344、復号制御部345、及び個人情報リスト記憶部346を備える。   The user application server 112 includes a transmission / reception control unit 341, a request control unit 342, a combination control unit 343, a secret key storage unit 344, a decryption control unit 345, and a personal information list storage unit 346 as functional units.

送受信制御部341は、個人情報サービスサーバ101及び割符サービスサーバ111と各種データを送受信するための機能部である。利用者アプリサーバ112の通信I/Fコントローラ208を介して、各サーバに各種データを送信、または各サーバから各種データを受信する。   The transmission / reception control unit 341 is a functional unit for transmitting / receiving various data to / from the personal information service server 101 and the tally service server 111. Various data is transmitted to or received from each server via the communication I / F controller 208 of the user application server 112.

リクエスト制御部342は、個人情報サービスサーバ101及び割符サービスサーバ111に対して、個人情報の取得や割符データの取得を要求するための機能部である。   The request control unit 342 is a functional unit for requesting the personal information service server 101 and the tally service server 111 to acquire personal information and tally data.

結合制御部343は、リクエスト制御部342によるリクエストに応じて取得した複数の割符データを結合するための機能部である。これにより、個人情報サービスサーバ101で分割された暗号化済みの個人情報リストを復元する。   The combination control unit 343 is a functional unit for combining a plurality of tally data acquired in response to a request from the request control unit 342. Thus, the encrypted personal information list divided by the personal information service server 101 is restored.

秘密鍵記憶部344は、個人情報サービスサーバ101で保持する公開鍵に対応する秘密鍵を記憶するための機能部である。   The secret key storage unit 344 is a functional unit for storing a secret key corresponding to the public key held by the personal information service server 101.

復号制御部345は、個人情報サービスサーバ101で保持する公開鍵に対応する秘密鍵を秘密鍵記憶部344から取得し、これを用いて個人情報サービスサーバ101で暗号化された個人情報リストを復号するための機能部である。   The decryption control unit 345 obtains a secret key corresponding to the public key held by the personal information service server 101 from the secret key storage unit 344, and uses this to decrypt the personal information list encrypted by the personal information service server 101. It is a functional part for doing.

個人情報リスト記憶部346は、復号制御部345で復号された個人情報リストを記憶するための機能部である。以上が本実施形態における各サーバの機能構成の一例である。   The personal information list storage unit 346 is a functional unit for storing the personal information list decrypted by the decryption control unit 345. The above is an example of the functional configuration of each server in the present embodiment.

次に、図4を参照して本実施形態における処理の概要を説明する。   Next, an overview of processing in the present embodiment will be described with reference to FIG.

まず、個人情報サービスサーバ101がRAM203に一時記憶している個人情報リストを取得し、これを個人情報ごとに所定の数の割符データに分割する。ここでは、例えば1つの個人情報を3つの割符データ(割符データA、割符データB、割符データC)に分割する(図4の401)。そして、分割された割符データ(割符データA、割符データB、割符データC)を用いてパリティデータを生成する。分割された割符データが3つなのであれば、この3つの割符データ(割符データA、割符データB、割符データC)の排他的論理和を算出して、これら3つの割符データに対応するパリティデータを生成する。そして、復元サービスサーバ103が有する秘密鍵に対応する公開鍵でこれを暗号化しておく(図4の402)。   First, the personal information service server 101 acquires a personal information list temporarily stored in the RAM 203, and divides it into a predetermined number of tally data for each personal information. Here, for example, one piece of personal information is divided into three tally data (tally data A, tally data B, tally data C) (401 in FIG. 4). Then, parity data is generated using the divided tally data (tally data A, tally data B, tally data C). If there are three divided tally data, the exclusive OR of these three tally data (tally data A, tally data B, tally data C) is calculated, and the parity data corresponding to these three tally data Is generated. Then, it is encrypted with a public key corresponding to the private key of the restoration service server 103 (402 in FIG. 4).

そして、割符データとパリティデータとをストレージサーバ102に送信し、ストレージごとにデータを分散して格納する(図4の403)。このように管理することで、セキュリティが向上する。すなわち、1つの個人情報を得るには複数のストレージから割符データを取得し、更に取得した割符データを結合しなければならないためである。また、パリティデータも保管しておくことでいずれかのストレージまたは割符データが破損・消失してしまったとしても、復元することが可能となる。更には、パリティデータは復元サービスサーバ103が有する秘密鍵に対応する公開鍵で暗号化されているので、復元サービスサーバ103を用いないと、復号することができないので更なるセキュリティの向上となる。   Then, the tally data and the parity data are transmitted to the storage server 102, and the data is distributed and stored for each storage (403 in FIG. 4). This management improves security. That is, to obtain one piece of personal information, tally data must be acquired from a plurality of storages, and the acquired tally data must be combined. Also, by storing parity data, even if any storage or tally data is damaged or lost, it can be restored. Furthermore, since the parity data is encrypted with the public key corresponding to the private key of the restoration service server 103, it cannot be decrypted unless the restoration service server 103 is used, which further improves security.

いずれかのストレージまたは割符データが破損・消失してしまった場合には、復元サービスサーバ103がパリティデータを用いて復元する(図4の404)。例えば、割符データA、割符データB、割符データCのうち、割符データCが消失してしまった場合には、これらに対応するパリティデータを復元サービスサーバ103の秘密鍵を用いてパリティデータを復号する。そして、割符データA、割符データB、パリティデータの3つの排他的論理和を算出し、割符データCが生成する。こうして破損・消失した割符データを復元する。   If any storage or tally data is damaged or lost, the restoration service server 103 restores using parity data (404 in FIG. 4). For example, when tally data C is lost among tally data A, tally data B, and tally data C, the parity data corresponding to these is decrypted using the secret key of the restoration service server 103. To do. Then, three exclusive ORs of tally data A, tally data B, and parity data are calculated to generate tally data C. In this way, the damaged / lost tally data is restored.

さて、割符データとして保管している個人情報の取得要求を個人情報サービスサーバ101が受け付けると、ストレージサーバ102に保管している割符データを取得する。そして、取得した割符データを結合して分割前の状態に復元する(図4の405)。このとき、取得する割符データは、要求された個人情報に対応する割符データを取得する。   Now, when the personal information service server 101 accepts a personal information acquisition request stored as tally data, the tally data stored in the storage server 102 is acquired. Then, the obtained tally data is combined and restored to the state before the division (405 in FIG. 4). At this time, as the tally data to be acquired, tally data corresponding to the requested personal information is acquired.

そして、個人情報サービスサーバ101が復元された複数の個人情報を含めた個人情報リストを、利用者アプリサーバ112が有する秘密鍵に対応する公開鍵で暗号化し、暗号化された個人情報リストを通信経路の数に応じた数に分割する(図4の406)。ここでは、2つの通信経路を用いて分割された個人情報リストを送信するので、個人情報リストを2つに分割する。つまり、2つの割符データ(割符データD、割符データE)が生成されることになる。   Then, the personal information service server 101 encrypts the personal information list including the restored personal information with the public key corresponding to the private key of the user application server 112, and communicates the encrypted personal information list. The number is divided according to the number of routes (406 in FIG. 4). Here, since the divided personal information list is transmitted using two communication paths, the personal information list is divided into two. That is, two tally data (tally data D and tally data E) are generated.

2つの割符データが生成されたら、これらを割符サービスサーバ111と利用者アプリサーバ112に送信する(図4の407)。このときSSL−VPN(Secure Socket Layer Virtual Private Network)によって仮想回線を構築し、この回線を用いて割符データを送信することでセキュリティを高めることが望ましい。   When two tally data are generated, they are transmitted to the tally service server 111 and the user application server 112 (407 in FIG. 4). At this time, it is desirable to increase security by constructing a virtual circuit by SSL-VPN (Secure Socket Layer Private Private Network) and transmitting tally data using this circuit.

利用者アプリサーバ112は割符データを受信すると、もう片方の割符データを取得するためのリクエストを割符サービスサーバ111に送信する。これに応じて割符サービスサーバ111は、自身が受信した割符データを利用者アプリサーバ112に送信する。そして、利用者アプリサーバ112は受信した2つの割符データを結合し、利用者アプリサーバ112が有する秘密鍵で復号する(図4の408)。こうすることで、個人情報リストを取得する。このように、暗号化したものを分割して送信することでセキュリティを高めている。   When receiving the tally data, the user application server 112 transmits a request for acquiring the other tally data to the tally service server 111. In response to this, the tally service server 111 transmits the tally data received by itself to the user application server 112. Then, the user application server 112 combines the received two tally data and decrypts it with the private key of the user application server 112 (408 in FIG. 4). In this way, a personal information list is acquired. In this way, security is enhanced by dividing and transmitting the encrypted one.

従来であれば、複数の割符データをそのまま利用者アプリサーバ112に送信し、これを結合して復元したり、暗号化された個人情報リストを送信し、送信先で復号したりすることでセキュリティを高めていた。しかしながら、保存する情報が個人情報である場合にはよりセキュリティを高めたり、データの破損・消失を確認したりする必要がある。そのため本実施形態では、割符データを送信する前に復元可能かどうかを個人情報サービスサーバ101で確認し、問題なく復元できるのであればこれを暗号化した上で分割して、複数の通信経路で送信することで、更なるセキュリティの向上を図っている。以下、図4の処理概要を、フローチャートを用いて詳細に説明する。   Conventionally, a plurality of tally data is transmitted as it is to the user application server 112, and this is combined and restored, or an encrypted personal information list is transmitted and decrypted at the transmission destination. Was raised. However, when the information to be stored is personal information, it is necessary to increase security or to confirm data corruption or loss. Therefore, in this embodiment, the personal information service server 101 confirms whether restoration is possible before sending the tally data, and if it can be restored without any problem, it is encrypted and divided into a plurality of communication paths. By sending, the security is further improved. Hereinafter, the processing outline of FIG. 4 will be described in detail using a flowchart.

図5は、個人情報を割符データに分けてストレージサーバ102に送信する一連の処理の流れを示すフローチャートである。尚、図5のフローチャートが示す処理の流れはあくまで一例であり、これに限らない。   FIG. 5 is a flowchart showing a flow of a series of processes for dividing personal information into tally data and transmitting it to the storage server 102. Note that the processing flow shown in the flowchart of FIG. 5 is merely an example, and the present invention is not limited to this.

ステップS501では、個人情報サービスサーバ101のCPU201は、個人情報一時記憶部302によってRAM203に記憶されている個人情報リストから個人情報を取得する。個人情報サービスサーバ101は、利用者アプリサーバ112から個人情報リストをあらかじめ受信しておく。   In step S <b> 501, the CPU 201 of the personal information service server 101 acquires personal information from the personal information list stored in the RAM 203 by the personal information temporary storage unit 302. The personal information service server 101 receives a personal information list from the user application server 112 in advance.

個人情報リスト(秘密情報リスト)の一例を図9に示す。個人情報リスト900は、例えば社員番号901と個人番号902とを含む。社員番号901は、個人番号が示す社員の識別番号である。個人番号902は、個人を識別するための番号(いわゆるマイナンバー)である。こうした個人情報リストを個人情報サービスサーバ101のRAM203に一時記憶しておき、ステップS501でこれを取得する。尚、本実施形態でいう個人情報は個人番号902として説明を行うが、個人情報リストの1レコード分や、社員番号901及び個人番号902のいずれかであってもよい。   An example of the personal information list (secret information list) is shown in FIG. The personal information list 900 includes an employee number 901 and a personal number 902, for example. The employee number 901 is an employee identification number indicated by the personal number. The personal number 902 is a number (so-called my number) for identifying an individual. Such a personal information list is temporarily stored in the RAM 203 of the personal information service server 101, and is acquired in step S501. The personal information in this embodiment is described as a personal number 902, but it may be one record of the personal information list, or one of the employee number 901 and the personal number 902.

ステップS502では、個人情報サービスサーバ101のCPU201は、分割制御部303の機能により、ステップS501で取得した個人情報を所定のルールに従って分割する(第1のデータ分割手段)。これにより、個人情報を複数の割符データに分割する。例えば、個人情報が12桁で3つの割符データに分割するのであれば、4桁ごとに分割したり、n桁目・n+1桁目、n+2桁目を抽出して3つに分割したり、ランダムな桁数を抽出して3つの割符データに分割したりする。分割するための所定のルールについては、様々な方法があるため、個人情報サービスサーバ101の管理者があらかじめ決定してもよいし、個人情報を保管する利用者が決定してもよい。   In step S502, the CPU 201 of the personal information service server 101 divides the personal information acquired in step S501 according to a predetermined rule by the function of the division control unit 303 (first data division unit). As a result, the personal information is divided into a plurality of tally data. For example, if the personal information is divided into 3 tally data with 12 digits, it is divided every 4 digits, or the nth, n + 1, n + 2 digits are extracted and divided into 3 The number of digits is extracted and divided into three tally data. Since there are various methods for the predetermined rule for dividing, the administrator of the personal information service server 101 may determine in advance, or the user who stores the personal information may determine.

ステップS503では、個人情報サービスサーバ101のCPU201は、パリティデータ制御部304の機能により、分割した割符データをすべて用いてパリティデータを生成する(パリティデータ生成手段)。1つの個人情報を分割することで生成される割符データをすべて用いて、当該割符データに対応するパリティデータを生成する。パリティデータの生成方法については前述した通りである。   In step S503, the CPU 201 of the personal information service server 101 uses the function of the parity data control unit 304 to generate parity data using all the divided tally data (parity data generating means). Parity data corresponding to the tally data is generated using all tally data generated by dividing one piece of personal information. The method for generating parity data is as described above.

ステップS504では、個人情報サービスサーバ101のCPU201は、公開鍵記憶部305により記憶されている、復元サービスサーバ103が有する秘密鍵に対応する公開鍵で、ステップS503で生成されたパリティデータを暗号化する。パリティデータを暗号化しておくことで、悪意のある者がパリティデータと割符データとで足りない割符データを復元できないようにする。   In step S504, the CPU 201 of the personal information service server 101 encrypts the parity data generated in step S503 with the public key stored in the public key storage unit 305 and corresponding to the private key of the restoration service server 103. To do. Encrypting the parity data prevents a malicious person from restoring the tally data that is insufficient between the parity data and the tally data.

ステップS505では、個人情報サービスサーバ101のCPU201は、送受信制御部301の機能により、生成した割符データとパリディデータとをストレージサーバ102に送信する。このとき、割符データとパリティデータに対応する社員番号901をあわせて送信する。ステップS505により送信された割符データとパリティデータとは、ストレージサーバ102によって受信され、同じく受信した社員番号901と対応づけてそれぞれ別のストレージに格納される。   In step S <b> 505, the CPU 201 of the personal information service server 101 transmits the generated tally data and parity data to the storage server 102 by the function of the transmission / reception control unit 301. At this time, the employee number 901 corresponding to the tally data and the parity data is transmitted together. The tally data and the parity data transmitted in step S505 are received by the storage server 102 and stored in different storages in association with the received employee number 901.

図9にストレージサーバ102に記憶される割符データ管理テーブル910のテーブル構成の一例を示す。ストレージサーバ102は、受信した割符データやパリティデータを割符データ管理テーブル910に示すように、社員番号901と対応づけて管理している。社員番号911は、社員番号901に対応する情報が格納される項目である。格納データ912は、ストレージに格納されている割符データやパリティデータを示す項目である。本実施形態では、4つのストレージで割符データとパリティデータが分散管理されるので、図9ではストレージ1からストレージ4の4つの割符データ管理テーブル910でその旨を示している。ストレージ1からストレージ3には、個人番号902の割符データが格納データ912にそれぞれ格納されている。ストレージ4には、割符データから算出されたパリティデータが格納データ912に格納されている。   FIG. 9 shows an example of the table configuration of the tally data management table 910 stored in the storage server 102. The storage server 102 manages the received tally data and parity data in association with the employee number 901 as shown in the tally data management table 910. The employee number 911 is an item in which information corresponding to the employee number 901 is stored. The stored data 912 is an item indicating tally data or parity data stored in the storage. In this embodiment, tally data and parity data are distributed and managed in four storages. In FIG. 9, this is shown in the four tally data management tables 910 from storage 1 to storage 4. In storage 1 to storage 3, tally data of personal number 902 is stored in storage data 912, respectively. In the storage 4, parity data calculated from tally data is stored in the storage data 912.

ステップS506では、個人情報サービスサーバ101のCPU201は、個人情報リストに含まれるすべての個人情報に対して、ステップS501乃至ステップS505の処理が完了したか否かを判定する。すべての個人情報に対して処理が完了したと判定した場合には、本一連の処理を終了する。そうでない場合、つまり未処理の個人情報がある場合には、ステップS501に処理を戻し、未処理の個人情報に対してステップS501乃至ステップS505の処理を実行する。   In step S506, the CPU 201 of the personal information service server 101 determines whether or not the processing in steps S501 to S505 has been completed for all personal information included in the personal information list. If it is determined that the processing has been completed for all personal information, this series of processing ends. If not, that is, if there is unprocessed personal information, the process returns to step S501, and the processes of steps S501 to S505 are performed on the unprocessed personal information.

このようにして、個人情報リストに含まれる個人情報を割符データとして分割し、これを複数のストレージに分散して保管する。   In this way, the personal information included in the personal information list is divided as tally data, and is distributed and stored in a plurality of storages.

図6は、利用者アプリサーバ112からのリクエストに応じて個人情報リストを送信する一連の処理の流れを示すフローチャートである。尚、図6のフローチャートが示す処理の流れはあくまで一例であり、これに限らない。   FIG. 6 is a flowchart showing a flow of a series of processes for transmitting a personal information list in response to a request from the user application server 112. Note that the processing flow shown in the flowchart of FIG. 6 is merely an example, and the present invention is not limited to this.

ステップS601では、個人情報サービスサーバ101のCPU201は、送受信制御部301の機能により、利用者アプリサーバ112から個人情報リストの取得要求(リクエスト)を受け付けたか否かを判定する。利用者アプリサーバ112からリクエストを受け付けたと判定した場合には、ステップS602に処理を進める。そうでない場合には、リクエストを受け付けるまで待機する。   In step S <b> 601, the CPU 201 of the personal information service server 101 determines whether a personal information list acquisition request (request) has been received from the user application server 112 by the function of the transmission / reception control unit 301. If it is determined that a request has been received from the user application server 112, the process proceeds to step S602. If not, wait until the request is accepted.

ステップS602では、個人情報サービスサーバ101のCPU201は、リクエストのあった個人情報をストレージサーバ102から取得し、これを結合することで復元する処理を実行する(第1の秘密情報復元手段)。個人情報復元処理の詳細は、後述する図7に示す。   In step S602, the CPU 201 of the personal information service server 101 acquires the requested personal information from the storage server 102 and executes a process of restoring it by combining it (first secret information restoring means). Details of the personal information restoration process are shown in FIG.

ステップS603では、個人情報サービスサーバ101のCPU201は、ステップS602で実行された個人情報復元処理により、個人情報の復元が成功したか否かを判定する。個人情報の復元が成功したか否かの判定は、個人情報復元処理の処理結果として個人情報が生成さていれば復元が成功したと判定する。そうでなければ復元されていないので、復元が失敗したと判定する。個人情報の復元が成功したと判定した場合には、ステップS604に処理を進める。個人情報の復元が成功したと判定しなかった場合、つまり失敗したと判定した場合には、ステップS605に処理を進める。   In step S603, the CPU 201 of the personal information service server 101 determines whether or not the personal information has been successfully restored by the personal information restoration process executed in step S602. Whether or not the personal information has been successfully restored is determined to have been successfully restored if personal information has been generated as a result of the personal information restoration process. Otherwise, it has not been restored, so it is determined that restoration has failed. If it is determined that the personal information has been successfully restored, the process proceeds to step S604. If it is not determined that the restoration of the personal information is successful, that is, if it is determined that the restoration has failed, the process proceeds to step S605.

ステップS604では、個人情報サービスサーバ101のCPU201は、個人情報リスト生成制御部307の機能により、個人情報リストに復元した個人情報を追加する。個人情報リストが存在しないのであれば、個人情報リスト生成制御部307の機能によりこれを生成した上で個人情報を追加する。また、追加する際にはリクエストのあった社員番号と対応づけて追加する。   In step S604, the CPU 201 of the personal information service server 101 adds the restored personal information to the personal information list by the function of the personal information list generation control unit 307. If the personal information list does not exist, the personal information is generated by the function of the personal information list generation control unit 307 and added. Also, when adding, it is added in association with the requested employee number.

ステップS605では、個人情報サービスサーバ101のCPU201は、個人情報の復元に失敗したので、その旨がわかるように個人情報リストに追加する。例えば、個人情報リストにレコードは生成するが、そのレコードの各項目には空の意味である「NULL」を入力したり、直接「エラー」という文字列を入力したりすることで、復元が失敗した旨を通知する。エラーの通知方法はこれに限らない。   In step S605, the CPU 201 of the personal information service server 101 fails to restore the personal information, and adds it to the personal information list so that it can be understood. For example, a record is generated in the personal information list, but restoration fails by entering “NULL”, which is an empty meaning, or by directly entering the character string “error” in each item of the record. Notify that it has been done. The error notification method is not limited to this.

ステップS606では、個人情報サービスサーバ101のCPU201は、取得を要求されたすべての個人情報について、ステップS602乃至ステップS605の処理が完了したか否かを判定する。すべての個人情報について処理が完了したと判定した場合には、ステップS607に処理を進める。そうでない場合に、すなわち未処理の個人情報がある場合には、ステップS602に処理を戻す。   In step S606, the CPU 201 of the personal information service server 101 determines whether or not the processing in steps S602 to S605 has been completed for all personal information requested to be acquired. If it is determined that processing has been completed for all personal information, the process proceeds to step S607. If not, that is, if there is unprocessed personal information, the process returns to step S602.

ステップS607では、個人情報サービスサーバ101のCPU201は、公開鍵記憶部305により記憶されている、利用者アプリサーバ112が有する秘密鍵に対応する公開鍵で、生成された個人情報リストを暗号化する(暗号化手段)。このように暗号化しておくことで、悪意のある者によって後述する処理で分割された個人情報リストをすべて入手され、これらを結合されたとしても、秘密鍵がなければ解除できない状態とすることができる。   In step S607, the CPU 201 of the personal information service server 101 encrypts the generated personal information list with the public key stored in the public key storage unit 305 and corresponding to the private key of the user application server 112. (Encryption means). By encrypting in this way, even if all the personal information lists divided by a malicious person in the process described later are obtained and combined, they cannot be released without a secret key. it can.

ステップS608では、個人情報サービスサーバ101のCPU201は、分割制御部303の機能により、ステップS607で暗号化された個人情報リストを分割し、割符データを生成する(第2のデータ分割手段)。このとき、分割する数は個人情報サービスサーバ101から利用者アプリサーバ112に対して送信するための通信経路の数だけ分割する。本実施形態では、通信経路は2つであるので2つに分割する。本実施形態では、通信経路の数だけ分割するが、送信する回数によって分割してもよい。つまり、2つの通信経路それぞれに対して2つの割符データを送信するという場合には、4つに分割する。   In step S608, the CPU 201 of the personal information service server 101 divides the personal information list encrypted in step S607 by the function of the division control unit 303, and generates tally data (second data division unit). At this time, the number of divisions is equal to the number of communication paths for transmission from the personal information service server 101 to the user application server 112. In this embodiment, since there are two communication paths, it is divided into two. In the present embodiment, the number of communication paths is divided, but the number of transmission paths may be divided. That is, when two tally data are transmitted for each of the two communication paths, it is divided into four.

ステップS609では、個人情報サービスサーバ101のCPU201は、送受信制御部301の機能により、ステップS608で生成された割符データのうち、所定の割符データを利用者アプリサーバ112に送信する(送信手段)。本実施形態では2つの割符データに分割されているので、片方の割符データを利用者アプリサーバ112に送信する。   In step S609, the CPU 201 of the personal information service server 101 transmits predetermined tally data among the tally data generated in step S608 to the user application server 112 by the function of the transmission / reception control unit 301 (transmission unit). In this embodiment, since it is divided into two tally data, one tally data is transmitted to the user application server 112.

ステップS610では、個人情報サービスサーバ101のCPU201は、送受信制御部301の機能により、ステップS608で生成された割符データのうち、ステップS609で送信されなかった割符データを割符サービスサーバ111に送信する(送信手段)。本実施形態では2つの割符データに分割されているので、ステップS609で送信された割符データではなく、もう片方の割符データを割符サービスサーバ111に送信する。   In step S610, the CPU 201 of the personal information service server 101 transmits to the tally service server 111 tally data that was not transmitted in step S609 among the tally data generated in step S608, by the function of the transmission / reception control unit 301 ( Transmission means). In this embodiment, since it is divided into two tally data, not the tally data transmitted in step S609 but the other tally data is transmitted to the tally service server 111.

ステップS611では、個人情報サービスサーバ101のCPU201は、ステップS609とステップS610における個人情報リストの送信が完了したら、暗号化された個人情報リストを削除する。暗号化されているとはいえ、復号されてしまうと個人情報の漏洩につながってしまうため、削除を実行している。   In step S611, the CPU 201 of the personal information service server 101 deletes the encrypted personal information list when the transmission of the personal information list in steps S609 and S610 is completed. Although it is encrypted, it is deleted because decryption leads to leakage of personal information.

このように、ストレージサーバ102に保管されている割符データを結合して個人情報に復元することで個人情報が分割前の状態になるかどうかを確認できる。更には、通信が傍受される可能性を考慮して、暗号化された個人情報リストを分割して送信することでセキュリティを高めている。   In this way, it is possible to confirm whether or not the personal information is in a state before division by combining tally data stored in the storage server 102 and restoring the personal information. Furthermore, in consideration of the possibility of communication being intercepted, security is enhanced by dividing and transmitting the encrypted personal information list.

図7は、個人情報復元処理の詳細な処理の流れを示すフローチャートである。尚、図7のフローチャートが示す処理の流れはあくまで一例であり、これに限らない。また、図7に示すフローチャート上の破線の矢印はデータの流れを示すものである。   FIG. 7 is a flowchart showing a detailed process flow of the personal information restoration process. Note that the processing flow shown in the flowchart of FIG. 7 is merely an example, and the present invention is not limited to this. In addition, broken line arrows on the flowchart shown in FIG. 7 indicate the flow of data.

ステップS701では、個人情報サービスサーバ101のCPU201は、送受信制御部301の機能により、ストレージサーバ102にリクエストのあった個人情報に対応する割符データとパリティデータの取得要求を送信する。例えば、社員番号を含むリクエストを受け付けると、当該社員番号に対応する割符データとパリティデータの取得要求をストレージサーバ102に送信する。そしてこれに応じてストレージサーバ102から送信された割符データとパリティデータとを受信する。ストレージサーバ102は、割符データ管理テーブル910で社員番号と格納データとを対応づけて管理しているので、これを用いて割符データ及びパリティデータを取得し、個人情報サービスサーバ101に送信すればよい。   In step S <b> 701, the CPU 201 of the personal information service server 101 transmits a tally data and parity data acquisition request corresponding to the requested personal information to the storage server 102 by the function of the transmission / reception control unit 301. For example, when a request including an employee number is received, a tally data and parity data acquisition request corresponding to the employee number is transmitted to the storage server 102. In response to this, the tally data and the parity data transmitted from the storage server 102 are received. Since the storage server 102 manages the employee number and the stored data in association with each other in the tally data management table 910, the tally data and the parity data may be acquired using this and transmitted to the personal information service server 101. .

ステップS702では、個人情報サービスサーバ101のCPU201は、ステップS701の処理により、リクエストのあった個人情報を構成する割符データがすべて取得できたか否かを判定する。または、リクエストのあった個人情報を構成する割符データのいずれかが破損していないか否かを判定する。分割された数が3つなら割符データが3つ取得できているはずであるので、3つ取得できていればすべて取得できたと判定し、そうでなければ取得できなかったと判定する。または、割符データをチェックし、従来技術によって破損していないか否かを確認する。リクエストのあった個人情報を構成する割符データがすべて取得できたと判定した場合には、ステップS703に処理を進める。そうでなければ、ステップS704に処理を進める。または、割符データが破損していないと判定した場合には、ステップS703に処理を進め、割符データが破損していると判定した場合には、ステップS704に処理を進める。   In step S702, the CPU 201 of the personal information service server 101 determines whether all tally data constituting the requested personal information has been acquired by the processing in step S701. Alternatively, it is determined whether any tally data constituting the requested personal information is not damaged. If the number of divisions is three, three tally data should have been acquired, so if all three are acquired, it is determined that all have been acquired, otherwise it is determined that they have not been acquired. Alternatively, tally data is checked to see if it has been corrupted by the prior art. If it is determined that all the tally data constituting the requested personal information has been acquired, the process proceeds to step S703. Otherwise, the process proceeds to step S704. Alternatively, if it is determined that the tally data is not damaged, the process proceeds to step S703, and if it is determined that the tally data is damaged, the process proceeds to step S704.

ステップS703では、個人情報サービスサーバ101のCPU201は、結合制御部306の機能により、ステップS701で取得したすべての割符データを結合することで、個人情報を復元する。個人情報の復元が完了したら、個人情報復元処理は終了する。   In step S703, the CPU 201 of the personal information service server 101 restores the personal information by combining all the tally data acquired in step S701 by the function of the combination control unit 306. When the restoration of personal information is completed, the personal information restoration process ends.

ステップS704では、個人情報サービスサーバ101のCPU201は、足りない割符データや破損している割符データがあるため、その割符データが復元可能か否かを判定する。足りない割符データまたは破損している割符データが1つであり、それ以外の割符データとパリティデータとが存在すれば復元可能と判定する。足りない割符データまたは破損している割符データが復元可能であると判定した場合には、ステップS705に処理を進める。そうでない場合、つまり復元可能でないと判定した場合には、個人情報復元処理を終了する。   In step S704, the CPU 201 of the personal information service server 101 determines whether or not the tally data can be restored because there is a missing tally data or damaged tally data. If there is one missing tally data or corrupted tally data, and other tally data and parity data exist, it is determined that restoration is possible. If it is determined that the missing tally data or damaged tally data can be restored, the process proceeds to step S705. If not, that is, if it is determined that restoration is not possible, the personal information restoration processing is terminated.

ステップS705では、個人情報サービスサーバ101のCPU201は、送受信制御部301の機能により、ステップS701で取得した割符データとパリティデータとを復元サービスサーバ103に送信し、割符データの復元を要求する。   In step S705, the CPU 201 of the personal information service server 101 transmits the tally data and parity data acquired in step S701 to the restoration service server 103 by the function of the transmission / reception control unit 301, and requests restoration of the tally data.

ステップS706では、復元サービスサーバ103のCPU201は、送受信制御部321の機能により、個人情報サービスサーバ101から送信された割符データとパリティデータとを受信する。また、これらを用いた割符データの復元要求も受信する。   In step S706, the CPU 201 of the restoration service server 103 receives the tally data and parity data transmitted from the personal information service server 101 by the function of the transmission / reception control unit 321. A tally data restoration request using these is also received.

ステップS707では、復元サービスサーバ103のCPU201は、秘密鍵記憶部322により記憶されている、個人情報サービスサーバ101が有する公開鍵に対応する秘密鍵で、受信した暗号化済みのパリティデータを復号する。   In step S707, the CPU 201 of the restoration service server 103 decrypts the received encrypted parity data with the private key stored in the private key storage unit 322 and corresponding to the public key of the personal information service server 101. .

ステップS708では、復元サービスサーバ103のCPU201は、復元制御部324の機能により、受信した割符データと復号したパリティデータとを用いて、破損・消失している割符データを復元する。割符データの復元方法は、前述した通りである。   In step S708, the CPU 201 of the restoration service server 103 restores damaged / erased tally data using the received tally data and decoded parity data by the function of the restoration control unit 324. The method for restoring tally data is as described above.

ステップS709では、復元サービスサーバ103のCPU201は、送受信制御部321の機能により、ステップS708で復元した割符データを個人情報サービスサーバ101に送信する。   In step S709, the CPU 201 of the restoration service server 103 transmits the tally data restored in step S708 to the personal information service server 101 by the function of the transmission / reception control unit 321.

ステップS710では、復元サービスサーバ103のCPU201は、復元した割符データの送信が完了したら、ステップS706で受信した割符データと、ステップS707で復元したパリティデータと、ステップS708で復元した割符データとを削除する。復元サービスサーバ103からこれらを削除しておくことで、悪意のある者が復元サービスサーバ103から、個人情報を復元可能な複数の割符データを取得できないようにしている。   In step S710, when transmission of the restored tally data is completed, the CPU 201 of the restoration service server 103 deletes the tally data received in step S706, the parity data restored in step S707, and the tally data restored in step S708. To do. By deleting these from the restoration service server 103, a malicious person cannot acquire a plurality of tally data that can restore personal information from the restoration service server 103.

ステップS711では、個人情報サービスサーバ101のCPU201は、送受信制御部301の機能により、復元サービスサーバ103から送信された割符データを受信する。   In step S <b> 711, the CPU 201 of the personal information service server 101 receives the tally data transmitted from the restoration service server 103 by the function of the transmission / reception control unit 301.

ステップS712では、個人情報サービスサーバ101のCPU201は、送受信制御部301の機能により、ステップS711で受信した割符データをストレージサーバ102に送信する。すなわち、ストレージサーバ102で破損・消失してしまった割符データを受信した割符データで補完しなければならないので、これを実行している。ストレージサーバ102は割符データを受信すると、取得できなかった割符データの代わりに受信した割符データを保管する。   In step S 712, the CPU 201 of the personal information service server 101 transmits the tally data received in step S 711 to the storage server 102 by the function of the transmission / reception control unit 301. That is, since the tally data that has been damaged or lost in the storage server 102 must be supplemented with the received tally data, this is executed. When the storage server 102 receives the tally data, the storage server 102 stores the received tally data instead of the tally data that could not be acquired.

ステップS713では、個人情報サービスサーバ101のCPU201は、結合制御部306の機能により、ステップS701で取得した割符データと、ステップS711で受信した割符データとを結合することで、個人情報を復元する。個人情報の復元が完了したら、個人情報復元処理は終了する。   In step S713, the CPU 201 of the personal information service server 101 restores the personal information by combining the tally data acquired in step S701 and the tally data received in step S711 by the function of the combination control unit 306. When the restoration of personal information is completed, the personal information restoration process ends.

このように、リクエストのあった個人情報を構成する割符データがすべて取得できたなら、これらを用いて個人情報を復元する。また、ストレージサーバ102で保管している割符データが破損・消失してしまったために取得できなかったなら、復元サービスサーバ103で必要な割符データを復元してから個人情報を復元する。つまり、冗長性を向上させて割符データの復元を可能とする。   As described above, if all tally data constituting the requested personal information can be acquired, the personal information is restored using these tally data. Also, if the tally data stored in the storage server 102 cannot be obtained because it has been damaged or lost, the restoration service server 103 restores the necessary tally data and then restores the personal information. That is, the redundancy is improved and the tally data can be restored.

図8は、割符データを受信して個人情報リストを取得する一連の処理の流れを示すフローチャートである。尚、図8のフローチャートが示す処理の流れはあくまで一例であり、これに限らない。また、図8に示すフローチャート上の破線の矢印はデータの流れを示すものである。   FIG. 8 is a flowchart showing a flow of a series of processes for receiving tally data and acquiring a personal information list. Note that the processing flow shown in the flowchart of FIG. 8 is merely an example, and the present invention is not limited to this. Also, the broken-line arrows on the flowchart shown in FIG. 8 indicate the flow of data.

ステップS801では、利用者アプリサーバ112のCPU201は、リクエスト制御部342の機能により、個人情報を保管している利用者からの指示された個人情報の取得要求(リクエスト)を個人情報サービスサーバ101に送信する。前述したステップS601は、このリクエストを受け付けたか否かを判定する。ステップS801で送信するリクエストには、取得したい個人情報に対応する社員番号を含めておく。   In step S801, the CPU 201 of the user application server 112 uses the function of the request control unit 342 to send a personal information acquisition request (request) instructed by the user storing personal information to the personal information service server 101. Send. Step S601 described above determines whether this request has been accepted. The request transmitted in step S801 includes an employee number corresponding to personal information to be acquired.

ステップS802では、利用者アプリサーバ112のCPU201は、送受信制御部341の機能により、リクエストに応じて個人情報サービスサーバ101から送信された個人情報リストの割符データを受信する(受信手段)。これは、前述したステップS609で送信された割符データである。受信した割符データは、割符データ記憶部332によって記憶される。   In step S802, the CPU 201 of the user application server 112 receives the tally data of the personal information list transmitted from the personal information service server 101 in response to the request by the function of the transmission / reception control unit 341 (receiving unit). This is the tally data transmitted in step S609 described above. The received tally data is stored in the tally data storage unit 332.

ステップS803では、利用者アプリサーバ112のCPU201は、リクエスト制御部342の機能により、ステップS802で受信した割符データと共に個人情報リストを構成する他の割符データの取得要求を割符サービスサーバ111に送信する。本実施形態では、暗号化された個人情報リストは2つの割符データに分割されているので、ステップS802で受信した割符データとは異なる、もう片方の割符データの取得を割符サービスサーバ111にリクエストする。   In step S803, the CPU 201 of the user application server 112 transmits, to the tally service server 111, an acquisition request for other tally data constituting the personal information list together with the tally data received in step S802, by the function of the request control unit 342. . In the present embodiment, since the encrypted personal information list is divided into two tally data, the tally service server 111 is requested to obtain the other tally data different from the tally data received in step S802. .

ステップS804では、割符サービスサーバ111のCPU201は、送受信制御部331の機能により、個人情報サービスサーバ101から送信された個人情報リストの割符データを受信する。これは、前述したステップS610で送信された割符データである。   In step S804, the CPU 201 of the tally service server 111 receives the tally data of the personal information list transmitted from the personal information service server 101 by the function of the transmission / reception control unit 331. This is the tally data transmitted in step S610 described above.

ステップS805では、割符サービスサーバ111のCPU201は、保存期間制御部333の機能により、ステップS804で受信した割符データを削除するためのタイマーをスタートする。割符サービスサーバ111に受信した割符データの取得要求がこないと、いつまでも割符サービスサーバ111に割符データが残ってしまうので、セキュリティ上問題である。そのため、タイマーによって保存期間を定めておき、タイマーが0になったら削除するようにしている。また、受信した割符データごとにタイマーをセットすることが望ましい。   In step S805, the CPU 201 of the tally service server 111 starts a timer for deleting the tally data received in step S804 by the function of the retention period control unit 333. If the tally service server 111 does not receive the received tally data, the tally data remains in the tally service server 111 forever, which is a security problem. For this reason, a storage period is determined by a timer and is deleted when the timer reaches zero. It is desirable to set a timer for each tally data received.

ステップS806では、割符サービスサーバ111のCPU201は、保存期間制御部333の機能により、ステップS805でスタートしたタイマーが0になったか、つまり保存期間が満了したか否かを判定する。保存期間が満了したと判定した場合には、ステップS807に処理を進める。そうでない場合には、ステップS808に処理を進める。   In step S806, the CPU 201 of the tally service server 111 determines whether the timer started in step S805 has reached 0, that is, whether the storage period has expired, by the function of the storage period control unit 333. If it is determined that the storage period has expired, the process proceeds to step S807. Otherwise, the process proceeds to step S808.

ステップS807では、割符サービスサーバ111のCPU201は、保存期間が満了した割符データを削除する。   In step S807, the CPU 201 of the tally service server 111 deletes the tally data whose storage period has expired.

ステップS808では、割符サービスサーバ111のCPU201は、送受信制御部331の機能により、利用者アプリサーバ112から送信された割符データの取得要求(リクエスト)を受け付けたか否かを判定する。利用者アプリサーバ112から送信されたリクエストとは、前述したステップS803で送信されたリクエストである。割符データの取得要求を受け付けたと判定した場合には、ステップS809に処理を進める。そうでない場合には、ステップS806に処理を戻す。   In step S808, the CPU 201 of the tally service server 111 determines whether or not the tally data acquisition request (request) transmitted from the user application server 112 has been received by the function of the transmission / reception control unit 331. The request transmitted from the user application server 112 is the request transmitted in step S803 described above. If it is determined that the tally data acquisition request has been received, the process proceeds to step S809. Otherwise, the process returns to step S806.

ステップS809では、割符サービスサーバ111のCPU201は、送受信制御部331の機能により、受け付けた取得要求に応じて対象の割符データを取得し、これを利用者アプリサーバ112に送信する。保存期間が満了しており対象の割符データが取得できなかった、または何らかのエラーによって対象の割符データが取得できなかった場合には、その旨を利用者アプリサーバ112に送信する。このようにして、リクエスト結果を利用者アプリサーバ112に送信する。   In step S809, the CPU 201 of the tally service server 111 acquires the target tally data according to the received acquisition request by the function of the transmission / reception control unit 331, and transmits this to the user application server 112. If the storage period has expired and the target tally data could not be acquired, or if the target tally data could not be acquired due to some error, a message to that effect is sent to the user application server 112. In this way, the request result is transmitted to the user application server 112.

ステップS810では、割符サービスサーバ111のCPU201は、割符データの送信が完了したので送信した割符データを削除する。こうすることで、保存期間の満了を待たずに割符データを削除でき、セキュリティの向上につながる。   In step S810, the CPU 201 of the tally service server 111 deletes the transmitted tally data because transmission of the tally data has been completed. In this way, tally data can be deleted without waiting for the storage period to expire, leading to improved security.

ステップS811では、利用者アプリサーバ112のCPU201は、送受信制御部341の機能により、割符サービスサーバ111から送信されたリクエスト結果を受信する(受信手段)。   In step S811, the CPU 201 of the user application server 112 receives the request result transmitted from the tally service server 111 by the function of the transmission / reception control unit 341 (reception unit).

ステップS812では、利用者アプリサーバ112のCPU201は、ステップS811で受信したリクエスト結果に割符データが含まれているか、すなわち割符データを受信したか否かを判定する。割符データが含まれていれば割符データの取得が成功したということである。割符データを受信したと判定した場合には、ステップS813に処理を進める。そうでない場合には、利用者アプリサーバ112の利用者に対してエラーを通知し、本一連の処理を終了する。   In step S812, the CPU 201 of the user application server 112 determines whether tally data is included in the request result received in step S811, that is, whether tally data has been received. If tally data is included, tally data acquisition is successful. If it is determined that tally data has been received, the process proceeds to step S813. If not, an error is notified to the user of the user application server 112, and this series of processing ends.

ステップS813では、利用者アプリサーバ112のCPU201は、結合制御部343の機能により、ステップS802とステップS811で受信した割符データを結合することで、暗号化された個人情報リストを復元する(第2の秘密情報復元手段)。   In step S813, the CPU 201 of the user application server 112 restores the encrypted personal information list by combining the tally data received in step S802 and step S811 with the function of the combination control unit 343 (the second personal information list). Secret information restoration means).

ステップS814では、利用者アプリサーバ112のCPU201は、秘密鍵記憶部344により記憶されている、個人情報サービスサーバ101が有する公開鍵に対応する秘密鍵で、復元した暗号化済みの個人情報リストを復号する(復号手段)。こうすることで、リクエストした個人情報が含まれる個人情報リストを利用者アプリサーバ112が取得できる。   In step S814, the CPU 201 of the user application server 112 stores the restored encrypted personal information list with the private key stored in the private key storage unit 344 and corresponding to the public key of the personal information service server 101. Decrypt (decoding means). By doing so, the user application server 112 can acquire a personal information list including the requested personal information.

ステップS815では、利用者アプリサーバ112のCPU201は、ステップS814で復号された個人情報リストを外部メモリ211に記憶する。外部メモリ211に記憶してしまうと、半永久的に個人情報リストが外部メモリ211に記憶されてしまうので、RAM203に記憶する形態であってもよい。   In step S815, the CPU 201 of the user application server 112 stores the personal information list decrypted in step S814 in the external memory 211. If stored in the external memory 211, the personal information list is stored semi-permanently in the external memory 211, and may be stored in the RAM 203.

以上説明したように、本実施形態によれば、記憶されている秘密情報の漏洩及び送信される秘密情報の漏洩によるリスクを低減することが可能となる。   As described above, according to the present embodiment, it is possible to reduce the risk of leakage of stored secret information and leakage of transmitted secret information.

本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。   The present invention can be implemented as a system, apparatus, method, program, storage medium, or the like, and can be applied to a system including a plurality of devices. You may apply to the apparatus which consists of one apparatus.

なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。   Note that the present invention includes a software program that implements the functions of the above-described embodiments directly or remotely from a system or apparatus. The present invention also includes a case where the system or the computer of the apparatus is achieved by reading and executing the supplied program code.

したがって、本発明の機能処理をコンピュータで実現(実行可能と)するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。   Therefore, in order to realize (executable) the functional processing of the present invention by a computer, the program code itself installed in the computer also realizes the present invention. In other words, the present invention includes a computer program itself for realizing the functional processing of the present invention.

その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。   In that case, as long as it has the function of a program, it may be in the form of object code, a program executed by an interpreter, script data supplied to the OS, and the like.

プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。   Examples of the recording medium for supplying the program include a flexible disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, and CD-RW. In addition, there are magnetic tape, nonvolatile memory card, ROM, DVD (DVD-ROM, DVD-R), and the like.

その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。   As another program supply method, a browser on a client computer is used to connect to an Internet home page. The computer program itself of the present invention or a compressed file including an automatic installation function can be downloaded from the homepage by downloading it to a recording medium such as a hard disk.

また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。   It can also be realized by dividing the program code constituting the program of the present invention into a plurality of files and downloading each file from a different homepage. That is, a WWW server that allows a plurality of users to download a program file for realizing the functional processing of the present invention on a computer is also included in the present invention.

また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。   In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, distributed to users, and key information for decryption is downloaded from a homepage via the Internet to users who have cleared predetermined conditions. Let It is also possible to execute the encrypted program by using the downloaded key information and install the program on a computer.

また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。   Further, the functions of the above-described embodiments are realized by the computer executing the read program. In addition, based on the instructions of the program, an OS or the like running on the computer performs part or all of the actual processing, and the functions of the above-described embodiments can also be realized by the processing.

さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。   Further, the program read from the recording medium is written in a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer. Thereafter, the CPU of the function expansion board or function expansion unit performs part or all of the actual processing based on the instructions of the program, and the functions of the above-described embodiments are realized by the processing.

なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。   Note that the above-described embodiments are merely examples of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.

100 個人情報サービスドメイン
101 個人情報サービスサーバ
102 ストレージサーバ
103 復元サービスサーバ
104 LAN
110 利用者ドメイン
111 割符サービスサーバ
112 利用者アプリサーバ
113 LAN
120 WAN
201 CPU
202 RAM
203 ROM
204 システムバス
205 入力コントローラ
206 ビデオコントローラ
207 メモリコントローラ
208 通信I/Fコントローラ
209 入力デバイス
210 ディスプレイ
211 外部メモリ

100 personal information service domain 101 personal information service server 102 storage server 103 restoration service server 104 LAN
110 User domain 111 Tally service server 112 User application server 113 LAN
120 WAN
201 CPU
202 RAM
203 ROM
204 System bus 205 Input controller 206 Video controller 207 Memory controller 208 Communication I / F controller 209 Input device 210 Display 211 External memory

Claims (8)

秘密情報を複数のデータに分割する第1のデータ分割手段と、
前記第1のデータ分割手段で分割された複数のデータを記憶する記憶手段と、
前記記憶手段に記憶された複数のデータを用いて前記秘密情報を復元する第1の秘密情報復元手段と、
前記第1の秘密情報復元手段で復元された秘密情報を暗号化する暗号化手段と、
前記暗号化手段で暗号化された秘密情報を通信経路の数に応じた複数のデータに分割する第2のデータ分割手段と、
前記第2のデータ分割手段で分割された複数のデータを複数の通信経路でそれぞれ送信する送信手段と
を備えることを特徴とする情報処理システム。
First data dividing means for dividing the secret information into a plurality of data;
Storage means for storing a plurality of data divided by the first data dividing means;
First secret information restoring means for restoring the secret information using a plurality of data stored in the storage means;
Encryption means for encrypting the secret information restored by the first secret information restoration means;
Second data dividing means for dividing the secret information encrypted by the encryption means into a plurality of data according to the number of communication paths;
An information processing system comprising: a transmission unit configured to transmit a plurality of data divided by the second data division unit through a plurality of communication paths.
前記情報処理システムは、
前記送信手段で送信された複数のデータを受信する受信手段と、
前記受信手段で受信した複数のデータを用いて前記暗号化手段で暗号化された秘密情報を復元する第2の秘密情報復元手段と、
前記第2の秘密情報復元手段で復元された秘密情報であって、前記暗号化手段で暗号化された秘密情報を復号する復号手段と
を更に備えることを特徴とする請求項1に記載の情報処理システム。
The information processing system includes:
Receiving means for receiving a plurality of data transmitted by the transmitting means;
Second secret information restoring means for restoring secret information encrypted by the encrypting means using a plurality of data received by the receiving means;
2. The information according to claim 1, further comprising: decryption means that decrypts the secret information restored by the second secret information restoration means and encrypted by the encryption means. Processing system.
前記第1のデータ分割手段で分割された複数のデータを用いてパリティデータを生成するパリティデータ生成手段を更に備え、
前記第1の秘密情報復元手段は、前記記憶手段に記憶された複数のデータでは秘密情報を復元できない場合には、前記パリティデータ生成手段で生成されたパリティデータと前記記憶手段に記憶された複数のデータとを用いて、必要なデータを復元することを特徴とする請求項1または2に記載の情報処理システム。
Parity data generating means for generating parity data using a plurality of data divided by the first data dividing means,
The first secret information restoring means, when the secret information cannot be restored with the plurality of data stored in the storage means, the parity data generated by the parity data generating means and the plurality of data stored in the storage means The information processing system according to claim 1, wherein necessary data is restored using the data.
前記暗号化手段は、前記第1の秘密情報復元手段で復元された秘密情報を公開鍵で暗号化し、
前記復号手段は、前記暗号化手段で暗号化された秘密情報を前記公開鍵に対応する秘密鍵で復号することを特徴とする請求項2に記載の情報処理システム。
The encryption means encrypts the secret information restored by the first secret information restoration means with a public key,
The information processing system according to claim 2, wherein the decryption unit decrypts the secret information encrypted by the encryption unit with a secret key corresponding to the public key.
前記暗号化手段は、前記第1の秘密情報復元手段で復元された複数の秘密情報を含む秘密情報リストを暗号化し、
前記第2のデータ分割手段は、前記暗号化手段で暗号化された秘密情報リストを通信経路の数に応じた複数のデータに分割することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理システム。
The encryption means encrypts a secret information list including a plurality of secret information restored by the first secret information restoration means,
The said 2nd data division | segmentation means divides | segments the secret information list encrypted by the said encryption means into several data according to the number of communication paths. Information processing system described in 1.
前記記憶手段は、前記第1のデータ分割手段で分割された複数のデータを複数のストレージに分散して記憶することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理システム。   6. The information processing system according to claim 1, wherein the storage unit stores a plurality of pieces of data divided by the first data division unit in a plurality of storages. . 秘密情報を複数のデータに分割する第1のデータ分割手段と、
第1のデータ分割手段で分割された複数のデータを記憶する記憶手段とを備える情報処理システムの制御方法であって、
前記情報処理システムの第1の秘密情報復元手段が、前記記憶手段に記憶された複数のデータを用いて前記秘密情報を復元する第1の秘密情報復元ステップと、
前記情報処理システムの暗号化手段が、前記第1の秘密情報復元ステップで復元された秘密情報を暗号化する暗号化ステップと、
前記情報処理システムの第2のデータ分割手段が、前記暗号化ステップで暗号化された秘密情報を通信経路の数に応じた複数のデータに分割する第2のデータ分割ステップと、
前記情報処理システムの送信手段が、前記第2のデータ分割ステップで分割された複数のデータを複数の通信経路でそれぞれ送信する送信ステップと
を備えることを特徴とする情報処理システムの制御方法。
First data dividing means for dividing the secret information into a plurality of data;
A control method of an information processing system comprising storage means for storing a plurality of data divided by the first data dividing means,
A first secret information restoring step in which the first secret information restoring means of the information processing system restores the secret information using a plurality of data stored in the storage means;
An encryption step in which the encryption means of the information processing system encrypts the secret information restored in the first secret information restoration step;
A second data dividing step in which the second data dividing means of the information processing system divides the secret information encrypted in the encryption step into a plurality of data corresponding to the number of communication paths;
A control method for an information processing system, comprising: a transmission step for transmitting a plurality of data divided in the second data division step through a plurality of communication paths, respectively.
秘密情報を複数のデータに分割する第1のデータ分割手段と、
第1のデータ分割手段で分割された複数のデータを記憶する記憶手段とを備える情報処理システムの制御方法を実行可能なプログラムであって、
前記情報処理システムを、
前記記憶手段に記憶された複数のデータを用いて前記秘密情報を復元する第1の秘密情報復元手段と、
前記第1の秘密情報復元手段で復元された秘密情報を暗号化する暗号化手段と、
前記暗号化手段で暗号化された秘密情報を通信経路の数に応じた複数のデータに分割する第2のデータ分割手段と、
前記第2のデータ分割手段で分割された複数のデータを複数の通信経路でそれぞれ送信する送信手段
として機能させることを特徴とするプログラム。

First data dividing means for dividing the secret information into a plurality of data;
A program capable of executing a control method of an information processing system comprising storage means for storing a plurality of data divided by the first data dividing means,
The information processing system;
First secret information restoring means for restoring the secret information using a plurality of data stored in the storage means;
Encryption means for encrypting the secret information restored by the first secret information restoration means;
Second data dividing means for dividing the secret information encrypted by the encryption means into a plurality of data according to the number of communication paths;
A program for causing a plurality of data divided by the second data dividing means to function as transmitting means for transmitting the data through a plurality of communication paths.

JP2015027442A 2015-02-16 2015-02-16 Information processing system, control method thereof, and program Pending JP2016151797A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015027442A JP2016151797A (en) 2015-02-16 2015-02-16 Information processing system, control method thereof, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015027442A JP2016151797A (en) 2015-02-16 2015-02-16 Information processing system, control method thereof, and program

Publications (1)

Publication Number Publication Date
JP2016151797A true JP2016151797A (en) 2016-08-22

Family

ID=56696565

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015027442A Pending JP2016151797A (en) 2015-02-16 2015-02-16 Information processing system, control method thereof, and program

Country Status (1)

Country Link
JP (1) JP2016151797A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020043464A (en) * 2018-09-11 2020-03-19 ネクスト・イット株式会社 Virtual currency trading system using virtual currency, user terminal on user side, virtual currency trading system support system, and virtual currency trading method
JP2020043465A (en) * 2018-09-11 2020-03-19 ネクスト・イット株式会社 Computer-readable recording medium in which program for causing computer to function is recorded, which is used in virtual currency transaction system using virtual currency
EP3817323A1 (en) 2019-11-01 2021-05-05 Fujitsu Limited Encryption processing system, encryption processing method, and program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020043464A (en) * 2018-09-11 2020-03-19 ネクスト・イット株式会社 Virtual currency trading system using virtual currency, user terminal on user side, virtual currency trading system support system, and virtual currency trading method
JP2020043465A (en) * 2018-09-11 2020-03-19 ネクスト・イット株式会社 Computer-readable recording medium in which program for causing computer to function is recorded, which is used in virtual currency transaction system using virtual currency
EP3817323A1 (en) 2019-11-01 2021-05-05 Fujitsu Limited Encryption processing system, encryption processing method, and program
US11431489B2 (en) 2019-11-01 2022-08-30 Fujitsu Limited Encryption processing system and encryption processing method

Similar Documents

Publication Publication Date Title
US11509458B2 (en) Method and system for securely replicating encrypted deduplicated storages
US9735962B1 (en) Three layer key wrapping for securing encryption keys in a data storage system
CN102208001B (en) Hardware-supported virtualized cryptographic service
US20170093570A1 (en) Computer-readable recording medium storing update program and update method, and computer-readable recording medium storing management program and management method
US10346319B1 (en) Separate cryptographic keys for protecting different operations on data
US11641271B2 (en) Control method, non-transitory computer-readable storage medium, and information processing apparatus
WO2021076868A1 (en) Systems and methods for re-using cold storage keys
CN104618096A (en) Method and device for protecting secret key authorized data, and TPM (trusted platform module) secrete key management center
Sivakumar et al. Securing data and reducing the time traffic using AES encryption with dual cloud
CA3028091C (en) Securing data at rest utilizing cloud provider service agnostic encrypted data transportability
Virvilis et al. A cloud provider-agnostic secure storage protocol
JP2019079280A (en) File verification device, file transfer system and program
JP6272546B2 (en) Data storage device, data processing method, and data processing program
JP2016151797A (en) Information processing system, control method thereof, and program
JP2020155801A (en) Information management system and method therefor
JP2021530009A (en) Secure behavior for encrypted data
US8806226B2 (en) Automatic virtualization medium, automatic virtualization method, and information processing apparatus
US10880083B2 (en) Information processing apparatus and method
Paul et al. Data storage security issues in cloud computing
KR102400455B1 (en) Private Key backup Key recovery framework in a distributed service environment
JP6216673B2 (en) Data management method and data management system
JP2020191552A (en) Share distribution system and method
JP6492785B2 (en) Information processing system, information processing method, and information processing program
JP2013114534A (en) Data processor, data processing method and program
US12032718B1 (en) System, method, and computer program for securely handling and storing customer data without enabling human access to the data

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20161101

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20161101