Statistical processing method and equijoining system

WO2025037382A1PCT designated stage expired Publication Date: 2025-02-20NT T INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2023/029516
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-08-15
Publication Date
2025-02-20

Smart Images

  • Figure JP2023029516_20022025_PF_FP_ABST
    Figure JP2023029516_20022025_PF_FP_ABST
Patent Text Reader

Abstract

The present invention provides technology capable of executing more accurate statistical processing on a table that is obtained by equijoining two tables while allowing two parties to keep individually held tables secret from each other. The present invention comprises: an equijoined table generation step for generating, with a second equijoining device, an equijoined table by equijoining a de-identified first table and a de-identified second table in terms of an identification attribute ID and deleting the identification attribute from a resulting table; a partially equijoined table generation step for generating, with the second equijoining device, a partially equijoined table by extracting, from the equijoined table, a record in which attributes Bj_1, ..., Bj_n satisfy a prescribed condition; and a statistical processing step for obtaining, with the second equijoining device and by using the partially equijoined table to execute prescribed statistical processing while attribute values regarding attributes Ai_1, ... , Ai_m remain encrypted, an encrypted statistical processing result regarding de-identified attribute values of the attributes Ai_1, …, Ai_m.
Need to check novelty before this filing date? Find Prior Art

Description

Statistical processing method, equi-join system

[0001] The present invention relates to a technique for statistically processing a table obtained by equijoining two tables.

[0002] There are various methods for performing an equi-join between two tables with respect to key attributes while maintaining the confidentiality of the tables between the two parties, that is, without disclosing the data in the tables held by each party (see Non-Patent Document 1). One example is secure matching (see Non-Patent Document 2 and Patent Document 1). Secure matching is a technology in which two parties specify key attributes for their respective tables, link records with equal values ​​for the key attributes, and then output a cross-tabulation table.

[0003] Koji Senda, Masanori Kii, Atsutake Ichikawa, Kazuma Nozawa, Keita Hasegawa, Takuya Domen, Chihiro Nakagawa, Hiroshi Aono, and Masayuki Terada, “Considerations on Anonymization Techniques Suitable for Equivalent Combination of Personal Data,” Symposium on Cryptography and Information Security 2022 (SCIS2022), Institute of Electronics, Information and Communication Engineers, 2022. Koji Senda, Masayuki Terada, Takayasu Yamaguchi, Dai Igarashi, and Hiroki Hamada, “Inter-organizational Cross-Analysis Using Secure Matching,” Computer Security Symposium 2010 (CSS2010), Information Processing Society of Japan, 2010.

[0004] Patent Publication No. 2012-150276

[0005] Generally, even if the tables held by each user satisfy the requirements for anonymity, anonymity cannot be guaranteed for tables obtained by equijoin. Therefore, even if key attributes are deleted from cross-tabulation tables obtained using secure matching, the data in the table may be re-identifiable due to the addition of additional attributes to the table obtained by equijoin, potentially resulting in a privacy leak. To solve this problem, the anonymity of cross-tabulation tables is ensured by performing the following process.

[0006] (1) To hide the true aggregate value of any record, random noise is added to all aggregate values.

[0007] However, when processing such as (1) above is performed, the data contained in the table changes, making it impossible to perform accurate statistical processing on the table obtained by equijoin.

[0008] Therefore, the present invention aims to provide a technology that can perform more accurate statistical processing on a table obtained by equal-joining two tables while maintaining the confidentiality of the tables held by each party.

[0009] One aspect of the present invention is to provide an identification attribute ID and attributes A1, ..., A M (M is an integer equal to or greater than 1), and a first equal-joining device that records in a recording unit a first table consisting of an identification attribute ID and attributes B1, ..., B N a second equal-join device that records in a recording unit a second table configured of (N is an integer equal to or greater than 1) a first table and a second equal-join device that performs statistical processing using the first table and the second table, wherein the de-identified first table is used to de-identify attribute values ​​of an identification attribute ID in the first table, and attributes A1, ..., A M Attribute values ​​A1, …, A are de-identified and encrypted using a cryptosystem that can perform statistical processing. M a de-identified second table is a table obtained by de-identifying an attribute value of an identifying attribute ID in the second table, and the second equi-join device generates an equi-join table by equi-joining the de-identified first table and the de-identified second table with respect to the identifying attribute ID and deleting the identifying attribute from the obtained table; and j_1 , …, B j_n (where j1, …, j n is 1≦j1< … <j n a partial equijoin table generation step of generating a partial equijoin table by extracting records in which the attribute A is greater than or equal to N and the attribute B is greater than or equal to N) that satisfies a predetermined condition; i_1 , …, A i_m (where i1, …, im is 1≦i1< … m ≦M), the attribute A i_1 , …, A i_m a statistical processing step of obtaining an encrypted statistical processing result for the de-identified attribute value of attribute A; and i_1 , …, A i_m and a decoding step for obtaining statistical results on the de-identified attribute values ​​of the attribute data.

[0010] According to the present invention, it becomes possible to perform more accurate statistical processing on a table obtained by equijoining two tables while maintaining the confidentiality of the tables held by each party.

[0011] FIG. 1 is a block diagram showing the configuration of the equal-join system 10. FIG. 2 is a block diagram showing the configuration of the first equal-join device 100. FIG. 3 is a block diagram showing the configuration of the second equal-join device 200. FIG. 4 is a flowchart showing the operation of the equal-join system 10. FIG. 5(A) is a diagram showing an example of the first table. FIG. 5(B) is a diagram showing an example of the second table. FIG. 6(A) is a diagram showing an example of the de-identified first table. FIG. 6(B) is a diagram showing an example of the de-identified second table. A diagram showing an example of an equal-join table. A diagram showing an example of an partial equal-join table. A diagram showing an example of the functional configuration of a computer that realizes each device in an embodiment of the present invention.

[0012] Hereinafter, an embodiment of the present invention will be described in detail. Note that components having the same functions are given the same numbers and redundant explanations will be omitted.

[0013] Before describing each embodiment, the notation used in this specification will be explained.

[0014] ^ (caret) represents a superscript, e.g., x y^z Yes z is a superscript to x, and x y^z Yes z ​is a subscript to x. Also, _ (underscore) represents a subscript. For example, x y_z Yes z is a superscript to x, and x y_z Yes z is a subscript to x.

[0015] For a character x → x, ^x, and ~x → ", "^" and "~" should be written directly above the "x", but due to limitations on the description in the specification, → These are written as x, ^x or ~x.

[0016] First Embodiment An equal-combining system 10 will be described below with reference to FIGS. 1 to 4. FIG. 1 is a block diagram showing the configuration of the equal-combining system 10. The equal-combining system 10 includes a first equal-combining device 100 and a second equal-combining device 200. The first equal-combining device 100 and the second equal-combining device 200 are connected to a network 800 and are capable of communicating with each other. The network 800 may be, for example, a communications network such as the Internet. FIG. 2 is a block diagram showing the configuration of the first equal-combining device 100. FIG. 3 is a block diagram showing the configuration of the second equal-combining device 200. FIG. 4 is a flowchart showing the operation of the equal-combining system 10.

[0017] 2, the first equal combining device 100 includes a de-identification table generating unit 110, a decoding unit 120, a transmitting / receiving unit 180, and a recording unit 190. The transmitting / receiving unit 180 is a component for transmitting and receiving necessary information to and from the equal combining device 200. The recording unit 190 is a component for recording information necessary for processing by the equal combining device 100. The recording unit 190 records, for example, an identification attribute ID and attributes A1, ..., A M (M is an integer of 1 or more) is recorded in advance.

[0018] 3, the second equal-join device 200 includes a non-identification table generation unit 210, an equal-join table generation unit 220, a partial equal-join table generation unit 230, a statistical processing unit 240, a transmission / reception unit 280, and a recording unit 290. The transmission / reception unit 280 is a component for transmitting and receiving necessary information to and from the equal-join device 100. The recording unit 290 is a component for recording information necessary for processing by the equal-join device 200. The recording unit 290 records, for example, an identification attribute ID and attributes B1, ..., B N (N is an integer of 1 or more) is recorded in advance.

[0019] Fig. 5(A) is a diagram showing an example of a first table. Fig. 5(B) is a diagram showing an example of a second table. As can be seen from Fig. 5(A) and Fig. 5(B), both the first table and the second table include an identification attribute ID and one or more attributes corresponding to the identification attribute ID. Specifically, the first table is a table having three attributes: ID, age, and gender, and the second table is a table having three attributes: ID, exercise habits, and medical history.

[0020] The operation of the equi-join system 10 will be described below with reference to Fig. 4. The equi-join system 10 executes statistical processing using the first table and the second table.

[0021] In S110, the de-identification table generation unit 110 of the first equal combining device 100 reads the first table from the recording unit 190, de-identifies the attribute values ​​of the identification attribute ID in the first table, and generates the attributes A1, . . . , A M Attribute values ​​A1, …, A are de-identified and encrypted using a cryptosystem that can perform statistical processing. MThe de-identified attribute values ​​are then encrypted to generate and output a de-identified first table. The transmitter / receiver 180 of the first equal-combining device 100 transmits the de-identified first table to the second equal-combining device 200. Here, generalization, for example, can be used as the de-identification method. Furthermore, homomorphic encryption, for example, can be used as an encryption method that allows statistical processing to be performed while the data remains encrypted. FIG. 6A is a diagram showing an example of the de-identification first table. The de-identification first table of FIG. 6A is obtained by de-identifying the attribute values ​​of the identification attribute ID of the first table of FIG. 5A and generalizing the values ​​of the two attributes, age and gender, before encrypting them. For convenience, in FIG. 6A, the values ​​of the two attributes, age and gender, are expressed in plain text, and therefore the encrypted values ​​are indicated by hatching.

[0022] In S210, the de-identification table generation unit 210 of the second equivalent combining device 200 reads the second table from the recording unit 290 and de-identifies the attribute values ​​of the identifying attribute ID for the second table, thereby generating and outputting the de-identification second table. FIG. 6B is a diagram showing an example of the de-identification second table. The de-identification second table of FIG. 6B is obtained by de-identifying the identifying attribute ID for the second table of FIG. 5B. The de-identification method for the second table is the same as that for the first table.

[0023] In S220, the transmitter / receiver 280 of the second equal-joining device 200 receives the de-identified first table from the first equal-joining device 100. The equal-join table generation unit 220 of the second equal-joining device 200 receives the received de-identified first table and the de-identified second table generated in S210 as input, performs an equal-join between the de-identified first table and the de-identified second table in terms of the identification attribute ID, and deletes the identification attribute from the resulting table to generate and output an equal-join table. FIG. 7 is a diagram showing an example of an equal-join table. The equal-join table of FIG. 7 is obtained by performing an equal-join between the de-identified first table of FIG. 6(A) and the de-identified second table of FIG. 6(B) in terms of the identification attribute ID and deleting the identification attribute ID.

[0024] In S110 to S220, the first equal-combining device 100 transmits the de-identified first table to the second equal-combining device 200 in a form including attribute values ​​of the de-identified identification attribute ID, and the second equal-combining device 200 generates the equal-combined table by equal-combining the de-identified first table and the de-identified second table and deleting the identification attribute. However, any method may be used as long as it can generate an equal-combined table as a table obtained by equal-combining the de-identified first table and the de-identified second table and that does not include the identification attribute. For example, by using the aforementioned secure matching, the above-mentioned equal-combined table can be generated in a manner in which the first equal-combining device 100 and the second equal-combining device 200 cooperate with each other.

[0025] In S230, the partial equijoin table generation unit 230 of the second equijoin device 200 receives the equijoin table generated in S220 as an input, and extracts attribute B j_1 , …, B j_n (where j1, …, j n is 1≦j1< … <j n A partial equijoin table is generated and output by extracting records in which the value of the medical history attribute is "myocardial infarction" from the equijoin table of FIG. 7. FIG. 8 is a diagram showing an example of a partial equijoin table. The partial equijoin table of FIG. 8 is generated by extracting records in which the value of the medical history attribute is "myocardial infarction" from the equijoin table of FIG. 7.

[0026] In S240, the statistical processing unit 240 of the second equal-join device 200 receives the partial equal-join table generated in S230 as an input, and calculates the attribute A using the partial equal-join table. i_1 , …, A i_m (where i1, …, i m is 1≦i1< … m ≦M), the attribute A i_1 , …, A i_m The transmitter / receiver 280 of the second equal combining device 200 obtains and outputs encrypted statistical processing results for the de-identified attribute values ​​of attribute A. i_1 , …, A i_m ​The encrypted statistical processing results for the de-identified attribute values ​​are transmitted to the first equal-combining device 100. For example, if the predetermined statistical processing is to calculate the average value for the attribute age and the ratio for the attribute gender, the statistical processing results of the average value "67 years old" and the ratio "67% male, 33% female" are obtained in encrypted form. Calculation of the maximum value, minimum value, and mode can also be used as the predetermined statistical processing. Furthermore, if N is 2 or greater, a frequency distribution can be obtained for each attribute in the second table, and a test can be performed on the frequency distribution. An example of a test is the two-sample Kolmogorov-Smirnov test, which reveals the difference in the distributions of two simple tabulations.

[0027] In S140, the transmitting / receiving unit 180 of the first equal combining device 100 receives the attribute A i_1 , …, A i_m The decryption unit 140 of the first equal combining device 100 receives the encrypted statistical processing result for the de-identified attribute value of attribute A from the second equal combining device 200. The decryption unit 140 of the first equal combining device 100 receives the encrypted statistical processing result as input and decrypts the encrypted statistical processing result to obtain the de-identified attribute value of attribute A. i_1 , …, A i_m The transmitter / receiver 180 of the first equal combining device 100 may transmit the obtained statistical processing result to the second equal combining device 200.

[0028] According to an embodiment of the present invention, more accurate statistical processing can be performed on a table obtained by equijoining two tables while maintaining the confidentiality of the tables held by each party. Because the attribute values ​​of the first table are anonymized, it is not possible to calculate accurate statistical values ​​in the strict sense. However, more accurate statistical values ​​can be obtained than with a method using noise addition on a cross-tabulation table that ensures anonymity. Furthermore, because records are extracted based on the attribute values ​​of the second table before statistical processing, the amount of calculation can be reduced compared to a method using a cross-tabulation table.

[0029] Furthermore, because the first equal-joining device encrypts the attribute values ​​of the first table before transmitting them to the second equal-joining device, the attribute values ​​of the first table are not disclosed to the second equal-joining device. On the other hand, because the second equal-joining device does not transmit the second table to the first equal-joining device, the attribute values ​​of the second table are not disclosed to the first equal-joining device. This allows the confidentiality of the tables held by each party to be maintained between the two parties. Furthermore, because the equal-join and statistical processing are performed by the second equal-joining device, there is no need for a third device other than the first and second equal-joining devices.

[0030] <Additional Note> The processing of each unit of each of the above-described devices may be realized by a computer, in which case the processing content of the functions to be possessed by each device is described by a program. Then, by loading this program into the recording unit 2020 of the computer 2000 shown in Fig. 9 and operating the arithmetic processing unit 2010, the input unit 2030, the output unit 2040, the auxiliary recording unit 2025, etc., the various processing functions of each of the above-described devices are realized on the computer.

[0031] The device of the present invention may, for example, be a single hardware entity that includes an input unit capable of inputting signals from outside the hardware entity, an output unit capable of outputting signals to outside the hardware entity, a communication unit to which a communication device (e.g., a communication cable) can be connected for communication with outside the hardware entity, a CPU (Central Processing Unit) that serves as an arithmetic processing unit, which may also include cache memory and registers, RAM and ROM that serve as memory, an external storage device such as a hard disk, and buses that connect the input unit, output unit, communication unit, CPU, RAM, ROM, and external storage device so that data can be exchanged between them. If necessary, the hardware entity may also be provided with a device (drive) that can read and write recording media such as a CD-ROM. An example of a physical entity equipped with such hardware resources is a general-purpose computer.

[0032] The external storage device of the hardware entity stores the programs required to realize the above-mentioned functions and the data required for processing these programs (the programs may be stored in a ROM, which is a read-only storage device, for example, instead of an external storage device). Data obtained by processing these programs is stored in RAM, the external storage device, etc. as appropriate.

[0033] In the hardware entity, each program stored in an external storage device (or ROM, etc.) and the data required to process each program are loaded into memory as needed, and interpreted, executed, and processed by the CPU as appropriate. As a result, the CPU realizes predetermined functions (each component represented as a "... unit," "... means," etc.). In other words, each component of the embodiments of the present invention may be configured by a processing circuitry.

[0034] As described above, when the processing functions of the hardware entities (apparatuses of the present invention) described in the above embodiments are realized by a computer, the processing contents of the functions that the hardware entities should have are described by a program. Then, by executing this program on a computer, the processing functions of the hardware entities are realized on the computer.

[0035] The program describing the processing contents can be recorded on a computer-readable recording medium, such as a non-transitory recording medium, specifically a magnetic recording device, an optical disk, or the like.

[0036] The program may be distributed, for example, by selling, transferring, lending, etc. a portable recording medium such as a DVD or CD-ROM on which the program is recorded. Furthermore, the program may be stored in a storage device of a server computer, and then transferred from the server computer to another computer via a network, thereby distributing the program.

[0037] A computer that executes such a program, for example, first stores the program recorded on a portable recording medium or transferred from a server computer in its own non-transitory storage device, the auxiliary storage unit 2025. Then, when executing a process, the computer loads the program stored in its own non-transitory storage device, the auxiliary storage unit 2025, into the storage unit 2020 and executes processing in accordance with the loaded program. Alternatively, as another execution mode of this program, the computer may load the program directly from a portable recording medium into the storage unit 2020 and execute processing in accordance with the program. Furthermore, the computer may execute processing in accordance with the received program each time a program is transferred from the server computer to the computer. Alternatively, the server computer may not transfer the program to the computer, but may instead execute the processing function by issuing an execution instruction and obtaining the results, thereby executing the above-described processing through a so-called ASP (Application Service Provider) type service. Note that the program in this embodiment includes information used for processing by a computer that is equivalent to a program (such as data that is not a direct instruction to the computer but has properties that define computer processing).

[0038] Furthermore, in this embodiment, the device is configured by executing a predetermined program on a computer, but at least a part of the processing contents may be realized by hardware.

[0039] The present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the spirit of the present invention.

Claims

1. Identification attribute ID and attributes A1, …, A M (M is an integer equal to or greater than 1), and a first equal-joining device for recording a first table consisting of an identification attribute ID and attributes B1, ..., B N (N is an integer equal to or greater than 1), and a second equal join device that records a second table composed of the first table and the second table in a recording unit, the method comprising: M Attribute values ​​A1, …, A are de-identified and encrypted using a cryptosystem that can perform statistical processing. M a de-identified second table is a table obtained by de-identifying an attribute value of an identifying attribute ID in the second table, and the second equal join device generates an equal join table by equal joining the de-identified first table and the de-identified second table with respect to the identifying attribute ID and deleting the identifying attribute from the obtained table; j_1 , …, B j_n (where j1, …, j n is 1≦j1< … <j n a partial equijoin table generating step of generating a partial equijoin table by extracting records in which an attribute A is greater than or equal to N and an attribute B is greater than or equal to N, and i_1 , …, A i_m (where i1, …, i m i1<=1< … m ≦M), the attribute values ​​are encrypted and a certain statistical process is performed to obtain the attribute A i_1 , …, A i_m a statistical processing step of obtaining an encrypted statistical processing result for the de-identified attribute value of attribute A; and i_1 , …, A i_m ​and a decoding step of obtaining a statistical processing result on the de-identified attribute values ​​of the attribute data.

2. Identification attribute ID and attributes A1, …, A M (M is an integer equal to or greater than 1), and a record section for recording a first table consisting of attribute A i_1 , …, A i_m (where i1, …, i m i1<=1< … m Attribute A is obtained by decrypting the encrypted statistical processing result of the de-identified attribute values ​​of i_1 , …, A i_m a decryption unit for obtaining a statistical processing result on the de-identified attribute values ​​of the first equal combination device and the attributes B1, ..., B N (N is an integer equal to or greater than 1), and a de-identified first table is generated by de-identifying the attribute value of the identification attribute ID in the first table and de-identifying the attribute values ​​of the attributes A1, ..., A M Attribute values ​​A1, …, A are de-identified and encrypted using a cryptosystem that can perform statistical processing. M an equal-join table generating unit for generating an equal-join table by equal-joining the de-identified first table and the de-identified second table with respect to the discrimination attribute ID and deleting the discrimination attribute from the obtained table; j_1 , …, B j_n (where j1, …, j n is 1≦j1< … <j n a partial equality join table generating unit that generates a partial equality join table by extracting records in which attribute A is greater than or equal to N and the attribute B is greater than or equal to N, and i_1 , …, A i_m a statistical processing unit that performs predetermined statistical processing on attribute values ​​while keeping the attribute values ​​encrypted to obtain the encrypted statistical processing result; and a second equal-join device that includes the same.​