Data protection system, data protection method, data protection program and data verification device
The data security system addresses the challenge of verifying processed data's origin by combining and securing digest values, ensuring data integrity and detecting tampering.
Patent Information
- Application Number
- JP2024519805
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-06-06
- Publication Date
- 2025-01-15
- Estimated Expiration
- 2042-06-06
AI Technical Summary
Conventional data integrity systems fail to verify that processed data is derived from the original data source, especially when parts of the data are saved or processed, as they lack robust methods to ensure data authenticity.
A data security system that calculates and combines digest values of original and processed data to generate reference combined data, and verifies this against temporary digest values during the consistency check process, using cryptographic signatures to secure the reference digest values.
Ensures that registered data is accurately traced back to its original source, providing robust verification of data integrity and detecting tampering attempts.
Smart Images

Figure 0007614454000001 
Figure 0007614454000002 
Figure 0007614454000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to techniques for securing data. [Background technology]
[0002] Traditionally, data backup systems using magnetic tapes have been used to inexpensively store large amounts of data. However, the data recording systems were insufficient in terms of security, reliability and scalability, for example, data compression and error correction were insufficient.
[0003] Patent Document 1 discloses an archive data recording system. This system solves the above problems by optimizing job planning, detecting data corruption on the data plane, and detecting errors on the metadata plane. Specifically, data is split into multiple subparts, and a root digest that aggregates the digest values is stored, ensuring the authenticity of the data. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent No. 6463796 Summary of the Invention [Problem to be solved by the invention]
[0005] A conventional data integrity system calculates a digest value of data to ensure the authenticity of the data, and compares the calculated digest value with the digest value of the data source, thereby verifying that the data integrity system holds the same data as the data of the data source. However, if only part of the data is stored, or if processed data is stored, the conventional data integrity system cannot guarantee that the stored data is the data originally from the data source.
[0006] The present disclosure aims to make it possible, when data from a data source is processed and registered, to verify whether the registered data is derived from the data from the data source. [Means for solving the problem]
[0007] The data integrity system of the present disclosure comprises: a data processing unit that acquires original data stored in a data source, processes the acquired original data, and registers the acquired processed data; a reference digest value calculation unit that calculates a digest value of the acquired original data and a digest value of the processed data when the processed data is registered, combines the calculated digest values to generate reference combined data, and calculates a digest value of the reference combined data as a reference digest value; a provisional digest value calculation unit that calculates a digest value of the registered processed data as a provisional digest value when verifying the processed data; and a data verification unit that obtains a digest value stored in the data source as a digest value of the original data as a provisional digest value, combines the provisional digest value of the original data with the provisional digest value of the processed data to generate verification combined data, calculates a digest value of the verification combined data as a verification digest value, compares the verification digest value with the reference digest value, and determines whether the registered processed data is data derived from the original data of the data source. Effect of the Invention
[0008] According to the present disclosure, when data from a data source is processed and registered, it is possible to verify whether the registered data is derived from the data from the data source. [Brief description of the drawings]
[0009] [Figure 1] FIG. 1 is a configuration diagram of a data management system 100 according to a first embodiment. [Diagram 2] FIG. 2 is a configuration diagram of a data registration device 200 according to the first embodiment. [Diagram 3] FIG. 2 is a configuration diagram of a data verification device 300 according to the first embodiment. [Figure 4] FIG. 4 is a configuration diagram of a data source device 400 according to the first embodiment. [Diagram 5] 4 is a flowchart of a data registration process according to the first embodiment. [Figure 6] 11 is a flowchart of a consistency verification process according to the first embodiment. [Figure 7] FIG. 2 is a schematic diagram of a data preservation method according to the first embodiment. [Figure 8] FIG. 1 is a schematic diagram of a data preservation method in the prior art. [Figure 9] FIG. 1 is a diagram showing a problem with a data preservation method in the prior art. [Figure 10] FIG. 11 is a configuration diagram of a data management system 100 according to a second embodiment. [Figure 11] FIG. 11 is a configuration diagram of a signature device 500 according to a second embodiment. [Figure 12] 11 is a flowchart of a data registration process according to the second embodiment. [Figure 13] 13 is a flowchart of a consistency verification process according to the second embodiment. [Figure 14] FIG. 11 is a schematic diagram of a data preservation method according to the second embodiment. [Figure 15] 13 is a flowchart of a data registration process according to the third embodiment. [Figure 16] 13 is a flowchart of a consistency verification process according to the third embodiment. [Figure 17] FIG. 11 is a schematic diagram of a data preservation method according to the third embodiment. [Figure 18] 13 is a flowchart of a data registration process according to the fourth embodiment. [Figure 19]13 is a flowchart of a consistency verification process according to the fourth embodiment. [Figure 20] FIG. 13 is a schematic diagram of a data preservation method according to the fourth embodiment. [Figure 21] 13 is a flowchart of a data registration process according to the fifth embodiment. [Figure 22] 13 is a flowchart of a consistency verification process according to the fifth embodiment. [Figure 23] FIG. 13 is a schematic diagram of a data preservation method according to the fifth embodiment. [Figure 24] 23 is a flowchart of a data registration process according to the sixth embodiment. [Diagram 25] 23 is a flowchart of a consistency verification process according to the sixth embodiment. [Figure 26] 23 is a flowchart of a consistency verification process according to the sixth embodiment. [Figure 27] FIG. 23 is a schematic diagram of a data preservation method according to the sixth embodiment. [Figure 28] FIG. 23 is a schematic diagram of a data preservation method according to the sixth embodiment. [Figure 29] FIG. 2 is a hardware configuration diagram of a data registration device 200 according to an embodiment. [Diagram 30] FIG. 2 is a hardware configuration diagram of a data verification device 300 according to the embodiment. [Diagram 31] FIG. 2 is a hardware configuration diagram of a data source device 400 according to the embodiment. [Diagram 32] FIG. 2 is a hardware configuration diagram of a signature device 500 according to an embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] In the embodiments and drawings, the same or corresponding elements are denoted by the same reference numerals. Descriptions of elements denoted by the same reference numerals as those of elements described above will be omitted or simplified as appropriate. Arrows in the drawings primarily indicate data flow or processing flow.
[0011] Embodiment 1 The data management system 100 will be described with reference to FIGS.
[0012] ***Configuration Description*** The configuration of a data management system 100 will be described with reference to FIG. The data management system 100 includes a data integrity system 101 and a data source device 400 . The data security system 101 includes a data registration device 200 and a data verification device 300 . The data registration device 200, the data verification device 300, and the data source device 400 communicate with each other via a network.
[0013] The configuration of the data registration device 200 will be described with reference to FIG. The data registration device 200 is a computer comprising hardware such as a processor 201, a memory 202, an auxiliary storage device 203, a communication device 204, and an input / output interface 205. These hardware components are connected to each other via signal lines.
[0014] The processor 201 is an IC that performs arithmetic processing and controls other hardware. For example, the processor 201 is a CPU. IC is an abbreviation for Integrated Circuit. CPU is an abbreviation for Central Processing Unit.
[0015] The memory 202 is a volatile or non-volatile storage device. The memory 202 is also called a primary storage device or a main memory. For example, the memory 202 is a RAM. Data stored in the memory 202 is saved in the secondary storage device 203 as necessary. RAM is an abbreviation for Random Access Memory.
[0016] The auxiliary storage device 203 is a non-volatile storage device. For example, the auxiliary storage device 203 is a ROM, a HDD, a flash memory, or a combination of these. Data stored in the auxiliary storage device 203 is loaded into the memory 202 as needed. ROM is an abbreviation for Read Only Memory. HDD is an abbreviation for Hard Disk Drive.
[0017] The communication device 204 is a receiver and a transmitter. For example, the communication device 204 is a communication chip or a NIC. The data registration device 200 communicates using the communication device 204. NIC is an abbreviation for Network Interface Card.
[0018] The input / output interface 205 is a port to which an input device and an output device are connected. For example, the input / output interface 205 is a USB terminal, the input device is a keyboard and a mouse, and the output device is a display. Input and output of the data registration device 200 is performed using the input / output interface 205. USB is an abbreviation for Universal Serial Bus.
[0019] The data registration device 200 comprises elements of a data processing unit 210 and a data management unit 220. These elements are realized by software.
[0020] The auxiliary storage device 203 stores a data registration program for causing a computer to function as the data processing unit 210 and the data management unit 220. The data registration program is loaded into the memory 202 and executed by the processor 201. The auxiliary storage device 203 further stores an OS. At least a portion of the OS is loaded into the memory 202 and executed by the processor 201. The processor 201 executes a data registration program while executing the OS. OS is an abbreviation for Operating System.
[0021] The input and output data of the data registration program are stored in the storage unit 290 . The auxiliary storage device 203 functions as the storage unit 290. However, a storage device such as the memory 202, a register in the processor 201, or a cache memory in the processor 201 may function as the storage unit 290 instead of the auxiliary storage device 203 or together with the auxiliary storage device 203. The storage unit 290 functions as a data store 291 .
[0022] The data registration device 200 may include a plurality of processors replacing the processor 201 .
[0023] The data registration program can be recorded (stored) in a computer-readable manner on a non-volatile recording medium such as an optical disk or a flash memory.
[0024] The configuration of the data verification device 300 will be described with reference to FIG. The data verification device 300 is a computer including hardware such as a processor 301, a memory 302, an auxiliary storage device 303, a communication device 304, and an input / output interface 305. These pieces of hardware are connected to each other via signal lines.
[0025] The processor 301 is an IC that performs arithmetic processing and controls other hardware. For example, the processor 301 is a CPU. The memory 302 is a volatile or non-volatile storage device. The memory 302 is also called a primary storage device or a main memory. For example, the memory 302 is a RAM. Data stored in the memory 302 is saved in the secondary storage device 303 as necessary. The auxiliary storage device 303 is a non-volatile storage device. For example, the auxiliary storage device 303 is a ROM, a HDD, a flash memory, or a combination of these. Data stored in the auxiliary storage device 303 is loaded into the memory 302 as needed. The communication device 304 is a receiver and a transmitter. For example, the communication device 304 is a communication chip or a NIC. The communication of the data verification device 300 is performed using the communication device 304. The input / output interface 305 is a port to which an input device and an output device are connected. For example, the input / output interface 305 is a USB terminal, the input device is a keyboard and a mouse, and the output device is a display. Input and output of the data verification device 300 is performed using the input / output interface 305.
[0026] The data verification device 300 includes components such as a digest value calculation unit 310 and a data verification unit 320. These components are realized by software. The digest value calculation unit 310 includes a reference digest value calculation unit 311 and a provisional digest value calculation unit 312 .
[0027] The auxiliary storage device 303 stores a data verification program for causing a computer to function as the digest value calculation unit 310 and the data verification unit 320. The data verification program is loaded into the memory 302 and executed by the processor 301. The auxiliary storage device 303 further stores an OS. At least a portion of the OS is loaded into the memory 302 and executed by the processor 301. The processor 301 executes the data verification program while executing the OS.
[0028] The input and output data of the data verification program are stored in the storage unit 390 . The auxiliary storage device 303 functions as the storage unit 390. However, a storage device such as the memory 302, a register in the processor 301, or a cache memory in the processor 301 may function as the storage unit 390 instead of the auxiliary storage device 303 or together with the auxiliary storage device 303. The storage unit 390 functions as a data store 391 .
[0029] The data verification device 300 may include a plurality of processors replacing the processor 301 .
[0030] The data verification program can be recorded (stored) in a computer-readable manner on a non-volatile recording medium such as an optical disk or a flash memory.
[0031] The configuration of the data source device 400 will be described with reference to FIG. The data source device 400 is a computer that includes hardware such as a processor 401, a memory 402, an auxiliary storage device 403, a communication device 404, and an input / output interface 405. These pieces of hardware are connected to each other via signal lines.
[0032] The processor 401 is an IC that performs arithmetic processing and controls other hardware. For example, the processor 401 is a CPU. The memory 402 is a volatile or non-volatile storage device. The memory 402 is also called a primary storage device or a main memory. For example, the memory 402 is a RAM. Data stored in the memory 402 is saved in the secondary storage device 403 as necessary. The auxiliary storage device 403 is a non-volatile storage device. For example, the auxiliary storage device 403 is a ROM, a HDD, a flash memory, or a combination of these. Data stored in the auxiliary storage device 403 is loaded into the memory 402 as needed. The communication device 404 is a receiver and a transmitter. For example, the communication device 404 is a communication chip or a NIC. The communication of the data source device 400 is performed using the communication device 404. The input / output interface 405 is a port to which an input device and an output device are connected. For example, the input / output interface 405 is a USB terminal, the input device is a keyboard and a mouse, and the output device is a display. Input and output of the data source device 400 is performed using the input / output interface 405.
[0033] The data source device 400 includes elements such as a data management unit 410 and a digest value calculation unit 420. These elements are realized by software.
[0034] The auxiliary storage device 403 stores a data source program for causing the computer to function as a data management unit 410 and a digest value calculation unit 420. The data source program is loaded into the memory 402 and executed by the processor 401. The auxiliary storage device 403 further stores an OS. At least a portion of the OS is loaded into the memory 402 and executed by the processor 401. The processor 401 executes a data source program while executing the OS.
[0035] Input and output data of the data source program is stored in the storage unit 490 . The auxiliary storage device 403 functions as the storage unit 490. However, a storage device such as the memory 402, a register in the processor 401, or a cache memory in the processor 401 may function as the storage unit 490 instead of the auxiliary storage device 403 or together with the auxiliary storage device 403. The storage unit 490 functions as a data source 491 .
[0036] The data source device 400 may include multiple processors in place of the processor 401 .
[0037] The data source program can be recorded (stored) in a computer-readable manner on a non-volatile recording medium such as an optical disk or a flash memory.
[0038] ***Explanation of Operation*** The operation procedure of the data management system 100 corresponds to a data management method, and also corresponds to a processing procedure according to a data management program. The operation procedure of the data preservation system 101 corresponds to a data preservation method, and also corresponds to a processing procedure by a data preservation program. Data preservation methods are part of data management methods.
[0039] The data management method will be described with reference to FIGS. The original data and the digest value of the original data are stored in the data source 491. The digest value of the original data is calculated by the digest value calculation unit 420.
[0040] The data registration process will be described with reference to FIG. The data registration process is a process executed in the data management method.
[0041] In step S 101 , the data processing unit 210 acquires the original data stored in the data source 491 . For example, the data management unit 410 reads the original data from the data source 491 and transmits the original data to the data registration device 200. Then, the data processing unit 210 receives the original data.
[0042] In FIG. 7, data A is original data and is stored in a data source 491 . The data processing unit 210 acquires data A stored in the data source 491 .
[0043] Returning to FIG. 5, the description will continue from step S102. In step S102, the data processing unit 210 processes the acquired raw data. Specifically, the data processing unit 210 receives the original data as an input and executes a data processing program. This results in processed data, which is the original data after processing.
[0044] In step S 103 , the data processing unit 210 registers the processed data in the data store 291 .
[0045] In FIG. 7, data A′ is processed data of data A and is stored in data store 291.
[0046] Returning to FIG. 5, the description will continue from step S111. In step S111, the reference digest value calculation unit 311 obtains the original data and the processed data. For example, the data management unit 220 transmits the original data and the processed data to the data verification device 300. Then, the reference digest value calculation unit 311 receives the original data and the processed data.
[0047] Then, the reference digest value calculation unit 311 calculates a reference digest value using the original data and the processed data.
[0048] The reference digest value is calculated as follows: First, the reference digest value calculation unit 311 calculates the digest value of the original data. Furthermore, the reference digest value calculation unit 311 calculates the digest value of the processed data. Next, the reference digest value calculation unit 311 generates combined data by combining the digest value of the original data and the digest value of the processed data. The generated combined data is called reference combined data. The reference combined data may be calculated by a method other than the above. For example, the original data and the processed data may be combined to generate combined data, and the digest value of the combined data may be calculated as the reference combined data. Alternatively, arithmetic operations may be used instead of combining. The reference binding data may be calculated in any manner as long as the uniqueness of the reference binding data is guaranteed. There is no problem if the reference binding data is a digest value calculated using the original data and the processed data. Then, the reference digest value calculation unit 311 calculates the digest value of the reference combined data. The calculated digest value is the reference digest value.
[0049] In step S 112 , the reference digest value calculation unit 311 stores the reference digest value in the data store 391 .
[0050] 7, D(D(Data A)+D(Data A')) is the reference digest value, which is stored in the data store 391. D(Data A)+D(Data A') is the reference combined data. D(Data A) is the digest value of Data A, and D(Data A') is the digest value of Data A'.
[0051] The consistency verification process will be described with reference to FIG. The consistency verification process is a process executed in the data management method.
[0052] In step S 121 , the provisional digest value calculation unit 312 acquires the processed data registered in the data store 291 . For example, the temporary digest value calculation unit 312 transmits a data request to the data registration device 200. The data management unit 220 receives the data request, reads the processed data from the data store 291, and transmits the processed data to the data verification device 300. Then, the temporary digest value calculation unit 312 receives the processed data.
[0053] Then, the provisional digest value calculation unit 312 calculates a digest value of the processed data. The calculated digest value is called a provisional digest value.
[0054] In FIG. 7, D (data A') is the provisional digest value of the processed data.
[0055] Returning to FIG. 6, the description will continue from step S122. In step S 122 , the data verification unit 320 obtains the digest value of the original data, which is the digest value stored in the data source 491 . For example, the data verification unit 320 transmits a digest value request to the data source device 400. The data management unit 410 receives the digest value request, reads the digest value of the original data from the data source 491, and transmits the digest value of the original data to the data verification device 300. Then, the data verification unit 320 receives the digest value of the original data. The obtained digest value is called a provisional digest value.
[0056] In FIG. 7, D (data A) is the digest value of data A and is stored in the data source 491. The data verification unit 320 acquires D (data A) stored in the data source 491 . 7, D (data A) is stored in the data source 491. However, the data source 491 may contain only data A. In this case, the data verification unit 320 acquires the data A and calculates D (data A) using the acquired data A.
[0057] Returning to FIG. 6, the description will continue from step S123. In step S123, the data verification unit 320 generates combined data by combining the provisional digest value of the original data and the provisional digest value of the processed data. The generated combined data is referred to as validation combined data.
[0058] In step S124, the data verification unit 320 calculates a digest value of the verified combined data. The calculated digest value is called the verification digest value.
[0059] In step S 125 , the data verification unit 320 obtains the reference digest value stored in the data store 391 . Specifically, the data verification unit 320 reads the reference digest value from the data store 391.
[0060] In FIG. 7, D(D(data A)+D(data A′)) is a reference digest value and is stored in the data store 391. The data verification unit 320 obtains the reference digest value stored in the data store 391 .
[0061] Returning to FIG. 6, the description will continue from step S131. In step S131, the data verification unit 320 compares the verification digest value with the reference digest value. If the verification digest value matches the reference digest value, processing proceeds to step S132. If the verification digest value does not match the reference digest value, processing proceeds to step S133.
[0062] In step S132, the data verification unit 320 determines that there is "consistency." “Consistent” means that the processed data stored in the data store 291 is derived from the original data in the data source 491 . Then, the data verification unit 320 outputs a determination result indicating “consistency.” For example, the data verification unit 320 displays the determination result on a display.
[0063] In step S133, the data verification unit 320 determines that there is "no consistency." "Inconsistent" means that the processed data registered in the data store 291 is not derived from the original data in the data source 491. For example, "inconsistent" means that the processed data registered in the data store 291 has been tampered with. Then, the data verification unit 320 outputs a determination result indicating “inconsistency.” For example, the data verification unit 320 displays the determination result on a display.
[0064] ***Advantages of the First Embodiment*** The effects of the first embodiment will be described with reference to FIGS. 8 and 9 show a conventional data integrity system. The conventional data integrity system verifies that the registered data A matches the data A of the data source by comparing the digest value D of the data A (see FIG. 8). However, when a part of the data A or the converted data A is registered, the conventional data integrity system cannot verify that the registered data A' is data derived from the data A of the data source. 7 shows a data integrity system 101. The data integrity system 101 stores a digest value D (D(data A)+D(data A')) (hereinafter referred to as DD) of combined data of digest value D of data A and digest value D of data A'. During data verification, the data integrity system 101 obtains digest value D of data A from a data source 491, calculates digest value D of registered data A', and calculates digest value DD of the combined data. The data integrity system 101 then compares the calculated digest value DD with the stored digest value DD to verify that registered data A' is data derived from data A of the data source 491. If data A' is tampered with, the digest value D of data A' will change, and the digest value DD will not match during verification. In other words, the data integrity system 101 can verify that the registered data A′ is derived from the data A of the data source 491 by storing the digest value DD. If the stored digest value DD is tampered with, it will be impossible to detect tampering with the data A'. Therefore, it is desirable to store the digest value DD in an area that is difficult to tamper with.
[0065] Embodiment 2 The embodiment for safely managing the reference digest value will be described below with reference to Figs. 10 to 14, focusing mainly on the differences from the first embodiment.
[0066] ***Configuration Description*** The configuration of the data management system 100 will be described with reference to FIG. The data management system 100 further comprises a signature device 500 .
[0067] The configuration of signature device 500 will be described with reference to FIG. Signature device 500 is a computer equipped with hardware such as a processor 501, a memory 502, an auxiliary storage device 503, a communication device 504, and an input / output interface 505. These pieces of hardware are connected to each other via signal lines.
[0068] The processor 501 is an IC that performs arithmetic processing and controls other hardware. For example, the processor 501 is a CPU. The memory 502 is a volatile or non-volatile storage device. The memory 502 is also called a primary storage device or a main memory. For example, the memory 502 is a RAM. Data stored in the memory 502 is saved in the secondary storage device 503 as necessary. The auxiliary storage device 503 is a non-volatile storage device. For example, the auxiliary storage device 503 is a ROM, a HDD, a flash memory, or a combination of these. Data stored in the auxiliary storage device 503 is loaded into the memory 502 as needed. The communication device 504 is a receiver and a transmitter. For example, the communication device 504 is a communication chip or a NIC. The communication of the signing device 500 is performed using the communication device 504. The input / output interface 505 is a port to which an input device and an output device are connected. For example, the input / output interface 505 is a USB terminal, the input device is a keyboard and a mouse, and the output device is a display. Input and output of the signature device 500 is performed using the input / output interface 505.
[0069] The signature device 500 comprises elements such as a key management unit 510 and a signature unit 520. These elements are realized in software.
[0070] Auxiliary storage device 503 stores a signature program for causing a computer to function as key management unit 510 and signature unit 520. The signature program is loaded into memory 502 and executed by processor 501. The auxiliary storage device 503 further stores an OS. At least a part of the OS is loaded into the memory 502 and executed by the processor 501. The processor 501 executes the OS. signature Run the program.
[0071] The input and output data of the signature program are stored in storage unit 590 . The auxiliary storage device 503 functions as the storage unit 590. However, a storage device such as the memory 502, a register in the processor 501, or a cache memory in the processor 501 may function as the storage unit 590 instead of the auxiliary storage device 503 or together with the auxiliary storage device 503.
[0072] The signing device 500 may include multiple processors replacing the processor 501 .
[0073] The signature program can be recorded (stored) in a computer-readable manner on a non-volatile recording medium such as an optical disk or a flash memory.
[0074] ***Explanation of Operation*** The data management method will be described with reference to FIG. 12 and FIG. In signature device 500, key management unit 510 generates a pair of a private key and a public key. The private key is stored in storage unit 590 of signature device 500. The public key is stored in storage unit 390 of data verification device 300.
[0075] The data registration process will be described with reference to FIG. Steps S201 to S203 are the same as steps S101 to S103 in the first embodiment.
[0076] In step S211, the reference digest value calculation unit 311 calculates the original data and the processed data The reference digest value is calculated using: Step S211 is the same as step S111 in the first embodiment.
[0077] In step S212, signature unit 520 generates a signature of the reference digest value (hereinafter, digest signature). The digest signature is a value obtained by encrypting a reference digest value using a private key.
[0078] The digest signature is generated as follows: The reference digest value calculation unit 311 transmits the reference digest value to the signature device 500. In addition, the reference digest value calculation unit 311 temporarily records the reference digest value. The signing unit 520 receives the reference digest value and uses the private key to sign the reference digest value. digest Generate a signature. Signature unit 520 transmits the digest signature to data verification device 300 . The reference digest value calculation unit 311 receives the digest signature.
[0079] In step S 213 , the data verification unit 320 stores the digest signature in the data store 391 .
[0080] The digest signature is stored in the following manner: The data verification unit 320 uses the public key to decrypt the digest signature and obtain the reference digest value. The data verification unit 320 compares the temporarily recorded reference digest value with the reference digest value obtained by decryption. If the comparison shows that the temporarily recorded reference digest value and the decrypted reference digest value are the same, the data verification unit 320 stores the digest signature in the data store 391 . If the comparison shows that the temporarily recorded reference digest value and the decrypted reference digest value differ, the process proceeds to step S212.
[0081] The consistency verification process will be described with reference to FIG. Steps S221 to S224 are the same as steps S121 to S124 in the first embodiment.
[0082] In step S225, the data verification unit 320 obtains the digest signature from the data store 391, and decrypts the reference digest value from the digest signature using the public key.
[0083] Steps S231 to S233 are the same as steps S131 to S133 in the first embodiment.
[0084] ***Effects of the second embodiment*** The effect of the second embodiment will be described with reference to FIG. If the reference digest value DD is tampered with, it will be impossible to detect tampering with the data A', so it is desirable to manage the reference digest value DD securely. Therefore, a signature device 500 is prepared, and a digest signature S(D(D(Data A)+D(Data A'))) (hereinafter referred to as SDD) is generated using a private key. The reference digest value DD can be obtained by decrypting the digest signature SDD using a public key. It is difficult to conveniently tamper with the digest signature SDD unless the private key is obtained. That is, the second embodiment can safely manage the reference digest value DD.
[0085] Embodiment 3 The embodiment in which the reference digest values are managed by the data source 491 will be described below with reference to Figs. 15 to 17, focusing mainly on the differences from the first embodiment.
[0086] ***Configuration Description*** The configuration of the data management system 100 is the same as that in the first embodiment.
[0087] ***Explanation of Operation*** The data registration process will be described with reference to FIG. Steps S301 to S303 are the same as steps S101 to S103 in the first embodiment. Step S311 is the same as step S111 in the first embodiment.
[0088] In step S 312 , the reference digest value calculation unit 311 transmits the reference digest value to the data source device 400 . The data management unit 410 receives the reference digest value.
[0089] In step S313, the data management unit 410 stores the reference digest value in the data source 491.
[0090] The consistency verification process will be described with reference to FIG. In step S321, the provisional digest value calculation unit 312 calculates a digest value of the processed data. The calculated digest value is referred to as a provisional digest value. Step S321 is the same as step S121 in the first embodiment.
[0091] In step S322, the data verification unit 320 acquires the digest value of the original data, which is the digest value stored in the data source 491. The acquired digest value is referred to as a provisional digest value. In addition, the data verification unit 320 obtains the reference digest value stored in the data source 491 . For example, the data verification unit 320 transmits a digest value request to the data source device 400. The data management unit 410 receives the digest value request, reads the digest value of the original data and the reference digest value from the data source 491, and transmits the digest value of the original data and the reference digest value to the data verification device 300. Then, the data verification unit 320 receives the digest value of the original data and the reference digest value.
[0092] In step S323, the data verification unit 320 generates verification combined data. Step S323 is the same as step S123 in the first embodiment.
[0093] In step S324, the data verification unit 320 calculates a verification digest value. Step S324 is the same as step S124 in the first embodiment.
[0094] Steps S331 to S333 are the same as steps S131 to S133 in the first embodiment.
[0095] ***Effects of the Third Embodiment*** The effects of the third embodiment will be described with reference to FIG. If the reference digest value DD is tampered with, it will be impossible to detect tampering with the data A', so it is desirable to manage the reference digest value DD securely. Therefore, it is made difficult to tamper with the reference digest value DD by managing the reference digest value DD in the data source 491. It is desirable that the data source 491 be a system that is difficult to tamper with, such as a blockchain. As a result, the third embodiment can safely manage the reference digest value DD.
[0096] Embodiment 4 The embodiment for improving the verification accuracy will be described below with reference to FIGS. 18 to 20, mainly with respect to the points different from the first embodiment.
[0097] ***Configuration Description*** The configuration of the data management system 100 is the same as that in the first embodiment.
[0098] ***Explanation of Operation*** The data registration process will be described with reference to FIG. In step S 401 , the data processing unit 210 acquires the original data stored in the data source 491 . Step S401 is the same as step S101 in the first embodiment.
[0099] In step S402, the data processing unit 210 executes a data processing program using the original data as input, thereby obtaining processed data. Step S402 is the same as step S102 in the first embodiment.
[0100] In step S403, the data processing unit 210 registers the data processing program in the data store 291 together with the processed data.
[0101] In step S411, the reference digest value calculation unit 311 acquires the data processing program together with the original data and the processed data. Then, the reference digest value calculation unit 311 calculates a reference digest value using the original data, the processed data, and the data processing program. Specifically, the reference digest value calculation unit 311 calculates digest values of the original data, the processed data, and the data processing program, combines the calculated digest values to generate reference combined data, and calculates the digest value of the reference combined data (reference digest value).
[0102] In step S 412 , the reference digest value calculation unit 311 stores the reference digest value in the data store 391 . Step S412 is the same as step S112 in the first embodiment.
[0103] The consistency verification process will be described with reference to FIG. In step S421, the provisional digest value calculation unit 312 calculates a digest value of the processed data. The calculated digest value is called a provisional digest value. Step S421 is the same as step S121 in the first embodiment.
[0104] In step S 422 , the provisional digest value calculation unit 312 acquires the data processing program registered in the data store 291 . Then, the provisional digest value calculation unit 312 calculates a digest value of the data processing program. The calculated digest value is referred to as a provisional digest value.
[0105] In step S423, the data verification unit 320 acquires the digest value of the original data, which is the digest value stored in the data source 491. The acquired digest value is referred to as a provisional digest value. Step S423 is the same as step S122 in the first embodiment.
[0106] In step S424, the data verification unit 320 generates combined data by combining the provisional digest value of the original data, the provisional digest value of the processed data, and the provisional digest value of the data processing program. The generated combined data is called verified combined data.
[0107] In step S425, the data verification unit 320 calculates a digest value of the verification combined data. The calculated digest value is called a verification digest value. Step S425 is the same as step S124 in the first embodiment.
[0108] In step S 426 , the data verification unit 320 obtains the reference digest value stored in the data store 391 . Step S426 is the same as step S125 in the first embodiment.
[0109] Steps S431 to S433 are the same as steps S131 to S133 in the first embodiment.
[0110] ***Effects of the fourth embodiment*** The effect of the fourth embodiment will be described with reference to FIG. The data processing program is registered together with data A'. Then, the digest value D of data A, the digest value D of data A', and the digest value D of the data processing program are combined, and the digest value of the combined data is saved as a reference digest value D(D(data A)+D(data A')+D(data processing program)) (hereinafter referred to as DD). By linking the data processing program together and saving it as a reference digest value, it is possible to guarantee that data A' has been converted from data A using the data processing program, and it is possible to more strongly guarantee that data A' is derived from data A. To tamper with data A' while maintaining consistency, not only is it necessary to tamper with the digest value D and reference digest value DD of data A', but it is also necessary to tamper with the data processing program, thereby achieving higher robustness.
[0111] Embodiment 5. The embodiment in which a plurality of data processing programs are managed to improve the verification accuracy will be described below with reference to Figs. 21 to 23, mainly with respect to the points that differ from the first embodiment.
[0112] ***Configuration Description*** The configuration of the data management system 100 is the same as that in the first embodiment. However, the storage unit 290 of the data registration device 200 stores a plurality of data processing programs.
[0113] ***Explanation of Operation*** The data registration process will be described with reference to FIG. In step S 501 , the data processing unit 210 acquires the original data stored in the data source 491 . Step S501 is the same as step S101 in the first embodiment.
[0114] In step S502, the data processing unit 210 selects a data processing program for processing the original data from among a plurality of data processing programs. For example, the data processing program is specified by the user of the data registration device 200. Alternatively, the data processing program is determined depending on the type of the original data.
[0115] Then, the data processing unit 210 executes the selected data processing program using the original data as input, thereby obtaining processed data.
[0116] In step S503, the data processing unit 210 registers in the data store 291 the program identifier of the used data processing program together with the processed data.
[0117] In step S511, the reference digest value calculation unit 311 acquires the data processing program used together with the original data and the processed data. Then, the reference digest value calculation unit 311 calculates a reference digest value using the original data, the processed data, and the data processing program. Specifically, the reference digest value calculation unit 311 calculates digest values of the original data, the processed data, and the data processing program, combines the calculated digest values to generate reference combined data, and calculates the digest value of the reference combined data (reference digest value).
[0118] In step S 512 , the reference digest value calculation unit 311 stores the reference digest value in the data store 391 . Step S512 is the same as step S112 in the first embodiment.
[0119] The consistency verification process will be described with reference to FIG. In step S521, the provisional digest value calculation unit 312 calculates a digest value of the processed data. The calculated digest value is called a provisional digest value. Step S521 is the same as step S121 in the first embodiment.
[0120] In step S 522 , the temporary digest value calculation unit 312 acquires a program identifier registered in the data store 291 . Furthermore, the provisional digest value calculation unit 312 acquires the data processing program identified by the acquired program identifier. Then, the provisional digest value calculation unit 312 calculates a digest value of the data processing program. The calculated digest value is referred to as a provisional digest value.
[0121] In step S523, the data verification unit 320 acquires the digest value of the original data, which is the digest value stored in the data source 491. The acquired digest value is referred to as a provisional digest value. Step S523 is the same as step S122 in the first embodiment.
[0122] In step S524, the data verification unit 320 generates combined data by combining the provisional digest value of the original data, the provisional digest value of the processed data, and the provisional digest value of the data processing program. The generated combined data is called verified combined data.
[0123] In step S525, the data verification unit 320 calculates a digest value of the verification combined data. The calculated digest value is called a verification digest value. Step S525 is the same as step S124 in the first embodiment.
[0124] In step S526, the data verification unit 320 obtains the reference digest value stored in the data store 391. Step S526 is the same as step S125 in the first embodiment.
[0125] Steps S531 to S533 are the same as steps S131 to S133 in the first embodiment.
[0126] ***Effects of the Fifth Embodiment*** The effects of the fifth embodiment will be described with reference to FIG. The program identifier of the data processing program is registered together with data A'. Then, the digest value D of data A, the digest value D of data A', and the digest value D of the data processing program are combined, and the digest value of the combined data is stored as a reference digest value DD. During verification, the digest value D of the data processing program identified by the program identifier is calculated. This makes it possible to verify with stronger assurance that data A' is derived from data A. For example, it becomes possible to detect tampering of data A' by an unauthorized data processing program. Furthermore, by registering the program identifier in the data store 291 instead of the data processing program, the space required for the data store 291 can be reduced. Furthermore, by restricting the data processing programs, any data processing program cannot be executed, making it difficult for fraud to occur during the generation process of data A'.
[0127] Embodiment 6 Regarding a mode in which data in the data source 491 is updated, the following will mainly describe the points that differ from the first embodiment with reference to FIG. 24 to FIG.
[0128] ***Configuration Description*** The configuration of the data management system 100 is the same as that in the first embodiment. However, the original data stored in the data source 491 is updated. The original data before being updated is called old data. The data source 491 stores at least the original data and a digest value of the original data.
[0129] ***Explanation of Operation*** The data management method will be described with reference to FIGS. Before the old data is updated, the data processing unit 210 acquires the old data stored in the data source 491, processes the acquired old data to obtain processed old data, and registers the processed old data in the data store 291.
[0130] The data registration process will be described with reference to FIG. In step S 601 , the data processing unit 210 acquires the original data stored in the data source 491 . Step S601 is the same as step S101 in the first embodiment.
[0131] In step S602, the data processing unit 210 processes the acquired raw data. Specifically, the data processing unit 210 receives the original data as an input and executes a data processing program. This results in processed original data, which is the original data after processing.
[0132] In step S603, the data processing unit 210 registers the processed data in the data store 291. The processed data is a set of digest values of the processed original data and the processed old data. The digest value of the processed old data is calculated by the digest value calculation unit 310, for example.
[0133] Steps S611 and S612 are the same as steps S111 and S112 in the first embodiment.
[0134] The consistency verification process will be described with reference to FIGS. Steps S621 to S625 are the same as steps S121 to S125 in the first embodiment.
[0135] In step S631, the data verification unit 320 compares the verification digest value with the reference digest value. If the verification digest value matches the reference digest value, processing proceeds to step S641. If the verification digest value does not match the reference digest value, processing proceeds to step S632.
[0136] In step S632, the data verification unit 320 determines that there is "no consistency." Step S632 is the same as step S133 in the first embodiment.
[0137] In step S 641 , the data verification unit 320 acquires the processed old data registered in the data store 291 . Then, the data verification unit 320 , Processing Calculate the digest value of the processed old data.
[0138] In step S642, the data verification unit 320 compares the digest value of the processed old data with the digest value in the registered processed data. If the digest values match, the data verification unit 320 determines whether the digest value is present in the processed old data. If the digest value is present in the processed old data, the processed old data becomes the processed data, and the process proceeds to step S641. If the digest value is not present in the processed old data, the process proceeds to step S651. If the digest values do not match, the process proceeds to step S652.
[0139] In step S651, the data verification unit 320 determines that there is "consistency." Then, the data verification unit 320 outputs a determination result indicating “consistency.” For example, the data verification unit 320 displays the determination result on a display.
[0140] In step S652, the data verification unit 320 determines that there is "no consistency." Then, the data verification unit 320 outputs a determination result indicating “inconsistency.” For example, the data verification unit 320 displays the determination result on a display.
[0141] ***Effects of the sixth embodiment*** The effects of the sixth embodiment will be described with reference to FIGS. 27, the data in the data source 491 is updated and the update history is managed. In order to handle data updates and update history management, the data integrity system 101 includes a digest value D of the processed old data A' in the processed data B', and stores a digest value D (D(data B)+D(data B')) (hereinafter referred to as DD) of the processed data B'. The data integrity system 101 can detect tampering with the data history by tracing and verifying the digest value D from the digest value DD. Only one digest value DD needs to be stored. FIG. 28 explains that tampering can be detected if only one digest value DD is stored. For example, if data A' is tampered with, D of data B' (data A') must be tampered with to maintain consistency. Similarly, consistency cannot be maintained unless D of data C' (data B') and D of data D' (data C') are tampered with and finally the digest value DD is tampered with. Therefore, as long as the digest value DD is securely stored, it is possible to detect tampering of any data.
[0142] ***Supplementary explanation of implementation form*** The data integrity system 101 may be configured as a single device, that is, the data integrity system 101 may be a data integrity device.
[0143] The hardware configuration of the data registration device 200 will be described with reference to FIG. The data entry device 200 includes a processing circuit 209 . The processing circuit 209 is hardware that realizes the data processing unit 210 and the data management unit 220 . The processing circuitry 209 may be dedicated hardware, or may be a processor 201 that executes a program stored in the memory 202 .
[0144] When the processing circuitry 209 is dedicated hardware, the processing circuitry 209 may be, for example, a single circuit, a multiple circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof. ASIC is an abbreviation for Application Specific Integrated Circuit. FPGA is an abbreviation for Field Programmable Gate Array.
[0145] The data registration device 200 may include a plurality of processing circuits replacing the processing circuit 209 .
[0146] In the processing circuit 209, some functions may be realized by dedicated hardware, and the remaining functions may be realized by software or firmware.
[0147] Thus, the functionality of the data registration device 200 can be realized in hardware, software, firmware or a combination of these.
[0148] The hardware configuration of the data verifying device 300 will be described with reference to FIG. The data verification device 300 includes a processing circuit 309 . The processing circuit 309 is hardware that realizes the digest value calculation unit 310 and the data verification unit 320 . The processing circuitry 309 may be dedicated hardware, or may be a processor 301 that executes a program stored in memory 302 . When the processing circuitry 309 is dedicated hardware, the processing circuitry 309 may be, for example, a single circuit, a multiple circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof. The data verification device 300 may include a plurality of processing circuits replacing the processing circuit 309 . In the processing circuit 309, some functions may be realized by dedicated hardware, and the remaining functions may be realized by software or firmware. Thus, the functionality of the data verification device 300 can be realized in hardware, software, firmware, or a combination of these.
[0149] The hardware configuration of the data source device 400 will be described with reference to FIG. The data source device 400 includes a processing circuit 409 . The processing circuit 409 is hardware that realizes a data management unit 410 and a digest value calculation unit 420 . The processing circuitry 409 may be dedicated hardware, or may be a processor 401 that executes a program stored in the memory 402 . When the processing circuitry 409 is dedicated hardware, the processing circuitry 409 may be, for example, a single circuit, a multiple circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof. The data source device 400 may include multiple processing circuits replacing the processing circuit 409 . In the processing circuit 409, some functions may be realized by dedicated hardware, and the remaining functions may be realized by software or firmware. Thus, the functionality of data source device 400 may be implemented in hardware, software, firmware, or a combination thereof.
[0150] The hardware configuration of the signature device 500 will be described with reference to FIG. The signing device 500 includes a processing circuit 509 . The processing circuit 509 is hardware that realizes the key management unit 510 and the signature unit 520 . The processing circuit 509 may be dedicated hardware, or may be a processor 501 that executes a program stored in the memory 502 . When the processing circuitry 509 is dedicated hardware, the processing circuitry 509 may be, for example, a single circuit, a multiple circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof. Signature device 500 may include multiple processing circuits replacing processing circuit 509 . In the processing circuit 509, some functions may be realized by dedicated hardware, and the remaining functions may be realized by software or firmware. Thus, the functionality of signing device 500 may be implemented in hardware, software, firmware, or a combination thereof.
[0151] Each embodiment is an example of a preferred embodiment, and is not intended to limit the technical scope of the present disclosure. Each embodiment may be implemented in part or in combination with other embodiments. The procedures described using flow charts, etc. may be modified as appropriate.
[0152] In the data management system 100, the "part" of each element of each device may be interpreted as a "process," a "step," a "circuit," or a "circuitry." [Explanation of symbols]
[0153] 100 data management system, 101 data integrity system, 200 data registration device, 201 processor, 202 memory, 203 auxiliary storage device, 204 communication device, 205 input / output interface, 209 processing circuit, 210 data processing unit, 220 data management unit, 290 storage unit, 291 data store, 300 data verification device, 301 processor, 302 memory, 303 auxiliary storage device, 304 communication device, 305 input / output interface, 309 processing circuit, 310 digest value calculation unit, 311 reference digest value calculation unit, 312 provisional digest value calculation unit, 320 data verification unit, 390 storage unit, 391 data store, 400 data source device, 401 processor, 402 memory, 403 auxiliary storage device, 404 communication device, 405 input / output interface, 409 processing circuit, 410 data management unit, 420 Digest value calculation unit, 490 storage unit, 491 data source, 500 signature device, 501 processor, 502 memory, 503 auxiliary storage device, 504 communication device, 505 input / output interface, 5090 processing circuit, 510 key management unit, 520 signature unit, 590 storage unit.
Claims
1. a data processing unit that acquires original data stored in a data source, processes the acquired original data, and registers the acquired processed data; a reference digest value calculation unit that calculates a digest value of the acquired original data and a digest value of the processed data when the processed data is registered, generates reference combined data based on the calculated digest values, and calculates the digest value of the reference combined data as a reference digest value; a provisional digest value calculation unit that calculates a digest value of the registered processed data as a provisional digest value when verifying the processed data; a data verification unit that acquires a digest value of the original data stored in the data source as a provisional digest value, generates verification combined data based on the provisional digest value of the original data and the provisional digest value of the processed data, calculates a digest value of the verification combined data as a verification digest value, and compares the verification digest value with the reference digest value to determine whether the registered processed data is data derived from the original data of the data source; A data integrity system comprising:
2. The reference digest value is stored in a data store; The data verification unit obtains the reference digest value stored in the data store.
2. The data security system of claim 1.
3. storing an encrypted digest value, the reference digest value encrypted using a private key, in a data store; The data verification unit obtains the encrypted digest value stored in the data store, and decrypts the reference digest value from the encrypted digest value using a public key corresponding to the private key.
2. The data security system of claim 1.
4. the reference digest value is stored in the data source; The data verification unit obtains the reference digest value stored in the data source.
2. The data security system of claim 1.
5. the data processing unit processes the original data by executing a data processing program; the reference digest value calculation unit calculates a digest value of the data processing program in addition to the digest value of the original data and the digest value of the processed data, and generates the reference combined data based on the digest value of the original data, the digest value of the processed data, and the digest value of the data processing program; the provisional digest value calculation unit calculates a digest value of a registered data processing program as a provisional digest value in addition to the provisional digest value of the registered processed data; The data verification unit generates the verification combined data based on the provisional digest value of the original data, the provisional digest value of the processed data, and the provisional digest value of the data processing program.
2. The data security system of claim 1.
6. The data processing program is registered together with the processed data; The provisional digest value calculation unit acquires a data processing program registered together with the processed data, and calculates a digest value of the acquired data processing program as the provisional digest value of the data processing program.
6. The data security system of claim 5.
7. a program identifier that identifies the data processing program is registered together with the processed data; The provisional digest value calculation unit acquires a program identifier registered together with the processed data, acquires a data processing program identified by the acquired program identifier, and calculates a digest value of the acquired data processing program as the provisional digest value of the data processing program.
6. The data security system of claim 5.
8. The reference digest value calculation unit combines the calculated digest values to generate the reference combined data. A data security system according to any one of claims 1 to 7.
9. A data storage system comprising: Retrieving raw data stored in a data source, processing the retrieved raw data, and registering the obtained processed data; When the processed data is registered, a digest value of the acquired original data and a digest value of the processed data are calculated, reference combined data is generated based on the calculated digest values, and the digest value of the reference combined data is calculated as a reference digest value; When verifying the processed data, a digest value of the registered processed data is calculated as a provisional digest value; obtain a digest value stored in the data source as a digest value of the original data as a provisional digest value, generate verification combined data based on the provisional digest value of the original data and the provisional digest value of the processed data, calculate a digest value of the verification combined data as a verification digest value, compare the verification digest value with the reference digest value, and determine whether the registered processed data is data derived from the original data of the data source. Data preservation methods.
10. data processing, which includes retrieving raw data stored in a data source, processing the retrieved raw data, and registering the resulting processed data; a reference digest value calculation process for calculating a digest value of the acquired original data and a digest value of the processed data when the processed data is registered, generating reference combined data based on the calculated digest values, and calculating the digest value of the reference combined data as a reference digest value; a provisional digest value calculation process for calculating a digest value of the registered processed data as a provisional digest value when verifying the processed data; a data verification process of acquiring a digest value stored in the data source as a digest value of the original data as a provisional digest value, generating verification combined data based on the provisional digest value of the original data and the provisional digest value of the processed data, calculating a digest value of the verification combined data as a verification digest value, comparing the verification digest value with the reference digest value, and determining whether the registered processed data is data derived from the original data of the data source; A data preservation program for causing a computer to execute the above.
11. a data verification device for verifying the processed data; The processed data is obtained and registered by processing raw data stored in a data source; a reference digest value calculation unit that calculates a digest value of the acquired original data and a digest value of the processed data when the processed data is registered, generates reference combined data based on the calculated digest values, and calculates a digest value of the generated reference combined data as a reference digest value; a provisional digest value calculation unit that calculates a digest value of the registered processed data as a provisional digest value when verifying the processed data; a data verification unit that acquires, as a provisional digest value, a digest value stored in the data source as a digest value of the original data, generates verification combined data based on the provisional digest value of the original data and the provisional digest value of the processed data, calculates a digest value of the generated verification combined data as a verification digest value, compares the calculated verification digest value with the reference digest value, and determines whether the registered processed data is data derived from the original data of the data source; A data verification device comprising:
12. A data processing unit that acquires original data stored in a data source as old data before updating the original data stored in the data source, processes the acquired old data to obtain processed old data, acquires original data stored in the data source after the update, processes the acquired original data after the update to obtain processed original data, and registers a pair of digest values of the obtained processed original data and the obtained processed old data as processed data. a reference digest value calculation unit that calculates a digest value of the original data acquired after the update and a digest value of the processed data when the processed data is registered, generates reference combined data based on the calculated digest values, and calculates the digest value of the reference combined data as a reference digest value; a provisional digest value calculation unit that calculates a digest value of the registered processed data as a provisional digest value when verifying the processed data; a data verification unit that acquires, as a provisional digest value, a digest value stored in the data source as a digest value of the original data acquired after the update, generates verification combined data based on the provisional digest value of the original data acquired after the update and the provisional digest value of the processed data, calculates a digest value of the verification combined data as a verification digest value, and compares the verification digest value with the reference digest value to determine whether the registered processed data is data derived from the original data of the data source after the update; A data integrity system comprising:
13. The data processing unit registers the processed old data, The data verification unit calculates a digest value of the registered old processed data, and compares the calculated digest value with the digest value in the registered processed data.
13. The data integrity system of claim 12.
14. A data storage system comprising: acquiring the original data stored in the data source as old data before updating the original data stored in the data source, processing the acquired old data to obtain processed old data, acquiring the original data stored in the data source after the update, processing the original data acquired after the update to obtain processed original data, and registering a pair of digest values of the acquired processed original data and the acquired processed old data as processed data; When registering the processed data, a digest value of the original data acquired after the update and a digest value of the processed data are calculated, reference combined data is generated based on the calculated digest values, and a digest value of the generated reference combined data is calculated as a reference digest value; When verifying the processed data, a digest value of the registered processed data is calculated as a provisional digest value; obtain a digest value stored in the data source as a digest value of the original data obtained after the update as a provisional digest value, generate verification combined data based on the provisional digest value of the original data obtained after the update and the provisional digest value of the processed data, calculate a digest value of the generated verification combined data as a verification digest value, and compare the calculated verification digest value with the reference digest value. Data preservation methods.
15. A data processing method comprising the steps of: acquiring original data stored in a data source as old data before updating the original data stored in the data source; processing the acquired old data to obtain processed old data; acquiring original data stored in the data source after the update; processing the acquired original data after the update to obtain processed original data; and registering a pair of digest values of the acquired processed original data and the acquired processed old data as processed data; a reference digest value calculation process for calculating a digest value of the original data acquired after the update and a digest value of the processed data when the processed data is registered, generating reference combined data based on the calculated digest values, and calculating a digest value of the generated reference combined data as a reference digest value; a provisional digest value calculation process for calculating a digest value of the registered processed data as a provisional digest value when verifying the processed data; a data verification process of acquiring a digest value stored in the data source as a digest value of the original data acquired after the update as a provisional digest value, generating verification combined data based on the provisional digest value of the original data acquired after the update and the provisional digest value of the processed data, calculating a digest value of the generated verification combined data as a verification digest value, and comparing the calculated verification digest value with the reference digest value; A data preservation program for causing a computer to execute the above.
16. a data verification device for verifying the processed data; the processed data is a set of digest values of the processed original data and the processed old data, the processed raw data is obtained by processing raw data obtained after updating the raw data stored in the data source; The processed old data is obtained by processing original data acquired before the update as old data, a reference digest value calculation unit that calculates a digest value of the original data acquired after the update and a digest value of the processed data when the processed data is registered, generates reference combined data based on the calculated digest values, and calculates a digest value of the generated reference combined data as a reference digest value; a provisional digest value calculation unit that calculates a digest value of the registered processed data as a provisional digest value when verifying the processed data; a data verification unit that acquires, as a provisional digest value, a digest value stored in the data source as a digest value of the original data acquired after the update, generates verification combined data based on the provisional digest value of the original data acquired after the update and the provisional digest value of the processed data, calculates a digest value of the generated verification combined data as a verification digest value, and compares the calculated verification digest value with the reference digest value; A data verification device comprising:
Citation Information
Patent Citations
Guided missile
JP1989063796A
Data processing apparatus, data processing method, storage medium, and program
JP2008211290A
Information processor and control method thereof, and computer program
JP2008312064A
Device and method of managing electronic document
JP2010108383A