Data preservation system, data preservation method, data preservation program, data registration device, and data verification device
By introducing a data processing unit, a reference digest value calculation unit, a temporary digest value calculation unit, and a data verification unit into the data management system, and generating and comparing digest values, the problem of the inability to verify the authenticity of processed data sources in the prior art is solved, thereby improving the security and reliability of the data preservation system.
Patent Information
- Application Number
- CN202280096536.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-06
- Publication Date
- 2025-01-10
AI Technical Summary
Existing data preservation systems cannot effectively verify whether the registered data originates from the data source after data processing, especially when data is partially stored or processed, and therefore cannot guarantee the authenticity of the data.
By introducing a data processing unit, a reference summary value calculation unit, a temporary summary value calculation unit, and a data verification unit into the data management system, summary values of reference combined data and verification combined data are generated and compared to determine whether the registered processed data originates from the original data of the data source.
This enables effective verification after data processing to confirm whether the registered data originates from the data source, thereby improving the security and reliability of the data preservation system.
Smart Images

Figure CN119301595A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to techniques for securing data. Background Art
[0002] Conventionally, in order to store a large amount of data at low cost, a data backup system using a magnetic tape has been used.
[0003] However, the security, reliability and scalability of the data recording system are not sufficient. For example, data compression and error correction are not sufficient.
[0004] Patent Document 1 discloses an archive data recording system.
[0005] The system solves the above-mentioned problems by optimizing the work plan, detecting data corruption in the data plane, and detecting errors in the metadata plane.
[0006] Specifically, the data is split into multiple sub-parts, and a root digest that aggregates the digest values is maintained, thereby ensuring the authenticity of the data.
[0007] Prior art literature
[0008] Patent Literature
[0009] Patent Document 1: Japanese Patent No. 6463796 Summary of the invention
[0010] Problems to be solved by the invention
[0011] In order to ensure the authenticity of data, existing data preservation systems calculate a summary value of the data and compare the calculated summary value with the summary value of the data source. Thus, the data preservation system verifies that the data that is the same as the data of the data source is preserved.
[0012] However, when a portion of data is stored or processed data is stored, the existing data preservation system cannot guarantee that the stored data is data originating from the data source.
[0013] An object of the present disclosure is to verify, in a case where data of a data source is processed and registered, whether the registered data is data originating from the data of the data source.
[0014] Means for solving problems
[0015] The data preservation system disclosed in the present invention comprises: a data processing unit, which obtains original data stored in a data source, processes the obtained original data, and registers the obtained processed data; a reference digest value calculation unit, which calculates a digest value of the obtained original data and a digest value of the processed data when registering the processed data, combines the calculated digest values to generate reference combined data, and calculates the digest value of the reference combined data as a reference digest value; a temporary digest value calculation unit, which calculates the digest value of the registered processed data as a temporary digest value when verifying the processed data; and a data verification unit, which obtains a digest value stored in the data source as a digest value of the original data as a temporary digest value, combines the temporary digest value of the original data and the temporary digest value of the processed data to generate verification combined data, calculates the 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 of the original data originating from the data source.
[0016] Effects of the Invention
[0017] According to the present disclosure, in a case where data of a data source is processed and registered, it is possible to verify whether the registered data is data originated from the data of the data source. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1 This is a block diagram of the data management system 100 in the first embodiment.
[0019] Figure 2 This is a diagram showing the structure of the data registration device 200 in the first embodiment.
[0020] Figure 3 This is a diagram showing the structure of the data verification device 300 in the first embodiment.
[0021] Figure 4 This is a diagram showing the structure of the data source device 400 in the first embodiment.
[0022] Figure 5 This is a flowchart of the data registration process in the first embodiment.
[0023] Figure 6 This is a flowchart of the matching verification process in Implementation 1.
[0024] Figure 7 This is a schematic diagram of the data preservation method in the first embodiment.
[0025] Figure 8 This is a schematic diagram of a data preservation method in the prior art.
[0026] Fig. 9This is a diagram showing the problems of the conventional data preservation method.
[0027] Fig.10 This is a block diagram of the data management system 100 in the second embodiment.
[0028] Fig.11 This is a structural diagram of the signature device 500 in the second embodiment.
[0029] Fig.12 This is a flowchart of the data registration process in the second embodiment.
[0030] Fig.13 This is a flowchart of the matching verification process in Implementation Method 2.
[0031] Fig.14 This is a schematic diagram of the data preservation method in the second embodiment.
[0032] Fig.15 This is a flowchart of the data registration process in the third embodiment.
[0033] Fig.16 This is a flowchart of the matching verification process in Implementation Method 3.
[0034] Fig.17 This is a schematic diagram of the data preservation method in the third embodiment.
[0035] Fig.18 This is a flowchart of the data registration process in the fourth embodiment.
[0036] Fig.19 This is a flowchart of the matching verification process in Implementation 4.
[0037] Fig. 20 This is a schematic diagram of the data preservation method in the fourth embodiment.
[0038] Fig.21 This is a flowchart of the data registration process in the fifth embodiment.
[0039] Fig. 22 This is a flowchart of the matching verification process in Implementation 5.
[0040] Fig.23 This is a schematic diagram of the data preservation method in the fifth embodiment.
[0041] Fig.24 This is a flowchart of the data registration process in the sixth embodiment.
[0042] Fig.25 This is a flowchart of the matching verification process in the sixth embodiment.
[0043] Fig.26This is a flowchart of the matching verification process in the sixth embodiment.
[0044] Fig. 27 This is a schematic diagram of the data preservation method in the sixth embodiment.
[0045] Fig.28 This is a schematic diagram of the data preservation method in the sixth embodiment.
[0046] Fig.29 It is a hardware configuration diagram of the data registration device 200 in the embodiment.
[0047] Fig.30 3 is a hardware configuration diagram of the data verification device 300 according to the embodiment.
[0048] Fig.31 It is a hardware configuration diagram of the data source device 400 in the embodiment.
[0049] Fig.32 It is a hardware structure diagram of the signature device 500 in the embodiment. DETAILED DESCRIPTION
[0050] In the embodiments and the drawings, the same reference numerals are used to denote the same elements or corresponding elements. The description of elements denoted by the same reference numerals as those already described is appropriately omitted or simplified. The arrows in the drawings mainly indicate data flows or process flows.
[0051] Implementation Method 1
[0052] according to Figures 1 to 9 The data management system 100 will be described.
[0053] ***Description of the structure***
[0054] according to Figure 1 The configuration of the data management system 100 will be described.
[0055] The data management system 100 includes a data preservation system 101 and a data source device 400 .
[0056] The data preservation system 101 includes a data registration device 200 and a data verification device 300 .
[0057] The data registration device 200, the data verification device 300, and the data source device 400 communicate with each other via a network.
[0058] according to Figure 2 The structure of the data registration device 200 will be described.
[0059] The data registration device 200 is a computer having 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 are connected to each other via signal lines.
[0060] The processor 201 is an IC that performs calculation processing and controls other hardware. For example, the processor 201 is a CPU.
[0061] IC is the abbreviation of Integrated Circuit.
[0062] CPU is the abbreviation of Central Processing Unit.
[0063] The memory 202 is a volatile or non-volatile storage device. The memory 202 is also called a main storage device or a main memory. For example, the memory 202 is a RAM. The data stored in the memory 202 is stored in the auxiliary storage device 203 as needed.
[0064] RAM is the abbreviation of Random Access Memory.
[0065] The auxiliary storage device 203 is a nonvolatile storage device. For example, the auxiliary storage device 203 is a ROM, a HDD, a flash memory, or a combination thereof. The data stored in the auxiliary storage device 203 is loaded into the memory 202 as needed.
[0066] ROM is the abbreviation of Read Only Memory.
[0067] HDD is the abbreviation of Hard Disk Drive.
[0068] The communication device 204 is a receiver and a transmitter. For example, the communication device 204 is a communication chip or a NIC. The communication of the data registration device 200 is performed using the communication device 204.
[0069] NIC is the abbreviation of Network Interface Card.
[0070] 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. The input / output of the data registration device 200 is performed using the input / output interface 205 .
[0071] USB is the abbreviation of Universal Serial Bus.
[0072] The data registration device 200 includes elements such as a data processing unit 210 and a data management unit 220. These elements are realized by software.
[0073] The auxiliary storage device 203 stores a data registration program for causing the 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.
[0074] The auxiliary storage device 203 also stores an OS. At least a part of the OS is loaded into the memory 202 and executed by the processor 201 .
[0075] The processor 201 executes the data registration program while executing the OS.
[0076] OS is the abbreviation of Operating System.
[0077] The input and output data of the data registration program are stored in the storage unit 290 .
[0078] 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 or together with the auxiliary storage device 203 .
[0079] The storage unit 290 functions as a data memory 291 .
[0080] The data registration device 200 may include a plurality of processors instead of the processor 201 .
[0081] The data registration program can be recorded (stored) in a computer-readable form on a nonvolatile recording medium such as an optical disk or a flash memory.
[0082] according to Figure 3 The structure of the data verification device 300 will be described.
[0083] The data verification device 300 is a computer having 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 hardware are connected to each other via signal lines.
[0084] The processor 301 is an IC that performs calculation processing and controls other hardware. For example, the processor 301 is a CPU.
[0085] The memory 302 is a volatile or non-volatile storage device. The memory 302 is also called a main storage device or a main memory. For example, the memory 302 is a RAM. The data stored in the memory 302 is saved in the auxiliary storage device 303 as needed.
[0086] The auxiliary storage device 303 is a nonvolatile storage device. For example, the auxiliary storage device 303 is a ROM, a HDD, a flash memory, or a combination thereof. The data stored in the auxiliary storage device 303 is loaded into the memory 302 as needed.
[0087] 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.
[0088] 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. The input / output of the data verification device 300 is performed using the input / output interface 305 .
[0089] The data verification device 300 includes elements such as a digest value calculation unit 310 and a data verification unit 320. These elements are implemented by software.
[0090] The digest value calculation unit 310 includes a reference digest value calculation unit 311 and a temporary digest value calculation unit 312 .
[0091] The auxiliary storage device 303 stores a data verification program for causing the 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 .
[0092] The auxiliary storage device 303 also stores an OS. At least a part of the OS is loaded into the memory 302 and executed by the processor 301 .
[0093] The processor 301 executes the data verification program while executing the OS.
[0094] The input and output data of the data verification program are stored in the storage unit 390 .
[0095] 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 or together with the auxiliary storage device 303 .
[0096] The storage unit 390 functions as a data memory 391 .
[0097] The data verification device 300 may include a plurality of processors instead of the processor 301 .
[0098] The data verification program can be recorded (stored) in a computer-readable form on a nonvolatile recording medium such as an optical disk or a flash memory.
[0099] according to Figure 4 The structure of the data source device 400 will be described.
[0100] The data source device 400 is a computer having 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 hardware are connected to each other via signal lines.
[0101] The processor 401 is an IC that performs calculation processing and controls other hardware. For example, the processor 401 is a CPU.
[0102] The memory 402 is a volatile or non-volatile storage device. The memory 402 is also called a main storage device or a main memory. For example, the memory 402 is a RAM. The data stored in the memory 402 is stored in the auxiliary storage device 403 as needed.
[0103] The auxiliary storage device 403 is a nonvolatile storage device. For example, the auxiliary storage device 403 is a ROM, a HDD, a flash memory, or a combination thereof. The data stored in the auxiliary storage device 403 is loaded into the memory 402 as needed.
[0104] 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.
[0105] 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 devices are a keyboard and a mouse, and the output device is a display. The input / output of the data source device 400 is performed using the input / output interface 405 .
[0106] The data source device 400 includes elements such as a data management unit 410 and a digest value calculation unit 420. These elements are implemented by software.
[0107] The auxiliary storage device 403 stores a data source program for causing the computer to function as the data management unit 410 and the digest value calculation unit 420. The data source program is loaded into the memory 402 and executed by the processor 401.
[0108] The auxiliary storage device 403 also stores an OS. At least a part of the OS is loaded into the memory 402 and executed by the processor 401 .
[0109] The processor 401 executes the data source program while executing the OS.
[0110] The input and output data of the data source program are stored in the storage unit 490 .
[0111] 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 or together with the auxiliary storage device 403 .
[0112] The storage unit 490 functions as a data source 491 .
[0113] The data source device 400 may include a plurality of processors instead of the processor 401 .
[0114] The data source program can be recorded (stored) in a computer-readable form on a nonvolatile recording medium such as an optical disk or a flash memory.
[0115] ***Description of the action***
[0116] The operation procedure of the data management system 100 corresponds to the data management method. In addition, the operation procedure of the data management system 100 corresponds to the processing procedure based on the data management program.
[0117] The operation procedure of the data preservation system 101 corresponds to the data preservation method. In addition, the operation procedure of the data preservation system 101 corresponds to the processing procedure based on the data preservation program.
[0118] Data preservation methods are part of data management methods.
[0119] according to Figure 5 to Figure 7 Describe the data management method.
[0120] The data source 491 stores raw data and digest values of the raw data. The digest value calculation unit 420 calculates the digest value of the raw data.
[0121] according to Figure 5 The data registration process will be described.
[0122] The data registration process is a process executed in the data management method.
[0123] In step S101 , the data processing unit 210 obtains raw data stored in the data source 491 .
[0124] For example, the data management unit 410 reads the raw data from the data source 491 and transmits the raw data to the data registration device 200. Then, the data processing unit 210 receives the raw data.
[0125] exist Figure 7 In the data, data A is the original data, which is stored in data source 491.
[0126] The data processing unit 210 obtains the data A stored in the data source 491 .
[0127] return Figure 5 , and the description continues from step S102.
[0128] In step S102 , the data processing unit 210 processes the acquired raw data.
[0129] Specifically, the data processing unit 210 executes a data processing program using raw data as input.
[0130] Thus, processed data is obtained. The processed data is the original data after processing.
[0131] In step S103 , the data processing unit 210 registers the processed data in the data memory 291 .
[0132] exist Figure 7 , data A′ is the processed data of data A and is stored in the data memory 291 .
[0133] return Figure 5 , and the description continues from step S111.
[0134] In step S111 , the reference digest value calculation unit 311 acquires the original data and the processed data.
[0135] 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.
[0136] Then, the reference digest value calculation unit 311 calculates a reference digest value using the original data and the processed data.
[0137] The reference digest value is calculated as follows.
[0138] First, the reference digest value calculation unit 311 calculates a digest value of the original data.
[0139] Furthermore, the reference digest value calculation unit 311 calculates a digest value of the processed data.
[0140] Next, the reference digest value calculation unit 311 combines the digest value of the original data and the digest value of the processed data to generate combined data. The generated combined data is referred to as reference combined data.
[0141] The reference combined data may also be calculated by a method other than the above method. For example, the original data and the processed data may be combined to generate combined data, and the summary value of the combined data may be calculated as the reference combined data. In addition, arithmetic operations may be used instead of combining.
[0142] The reference combined data may be calculated by any method as long as the uniqueness of the reference combined data is ensured. There is no problem as long as the reference combined data is a digest value calculated using the original data and the processed data.
[0143] Then, the reference digest value calculation unit 311 calculates a digest value of the reference combined data. The calculated digest value is the reference digest value.
[0144] In step S112 , the reference digest value calculation unit 311 stores the reference digest value in the data memory 391 .
[0145] exist Figure 7 In the above, D(D(Data A)+D(Data A')) is a reference digest value and is stored in the data memory 391. D(Data A)+D(Data A') is reference combined data. D(Data A) is a digest value of Data A, and D(Data A') is a digest value of Data A'.
[0146] according to Figure 6 The matching verification process is described.
[0147] The matching verification process is a process performed in the data management method.
[0148] In step S121 , the temporary digest value calculation unit 312 obtains the processed data registered in the data memory 291 .
[0149] For example, the temporary digest value calculation unit 312 sends 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 memory 291, and sends the processed data to the data verification device 300. Then, the temporary digest value calculation unit 312 receives the processed data.
[0150] Then, the temporary digest value calculation unit 312 calculates a digest value of the processed data. The calculated digest value is referred to as a temporary digest value.
[0151] exist Figure 7 In the above example, D(data A') is a temporary summary value of the processed data.
[0152] return Figure 6 , and the description continues from step S122.
[0153] In step S122 , the data verification unit 320 obtains the digest value stored in the data source 491 , that is, the digest value of the original data.
[0154] For example, the data verification unit 320 sends 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 sends 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.
[0155] The obtained digest value is called a temporary digest value.
[0156] exist Figure 7 In the figure, D(data A) is the summary value of data A, which is stored in data source 491.
[0157] The data verification unit 320 obtains D (data A) stored in the data source 491 .
[0158] exist Figure 7 In the example, D (data A) is stored in the data source 491. However, only data A may exist in the data source 491. In this case, the data verification unit 320 obtains data A and calculates D (data A) using the obtained data A.
[0159] return Figure 6 , and the description continues from step S123.
[0160] In step S123 , the data verification unit 320 combines the temporary digest value of the original data with the temporary digest value of the processed data to generate combined data.
[0161] The generated binding data is referred to as verification binding data.
[0162] In step S124 , the data verification unit 320 calculates a digest value of the verification combined data.
[0163] The calculated digest value is called a verification digest value.
[0164] In step S125 , the data verification unit 320 obtains the reference digest value stored in the data memory 391 .
[0165] Specifically, the data verification unit 320 reads the reference digest value from the data memory 391 .
[0166] exist Figure 7 In the data, D(D(data A)+D(data A′)) is a reference digest value and is stored in the data memory 391 .
[0167] The data verification unit 320 obtains the reference digest value stored in the data memory 391 .
[0168] return Figure 6 , and the description continues from step S131.
[0169] In step S131 , the data verification unit 320 compares the verification digest value with the reference digest value.
[0170] When the verification digest value matches the reference digest value, the process proceeds to step S132.
[0171] When the verification digest value and the reference digest value do not match, the process proceeds to step S133.
[0172] In step S132 , the data verification unit 320 determines that “there is a match”.
[0173] “Having a match” means that the processed data registered in the data storage 291 is data originating from the original data of the data source 491 .
[0174] Then, the data verification unit 320 outputs a determination result indicating “matching.” For example, the data verification unit 320 displays the determination result on a display.
[0175] In step S133 , the data verification unit 320 determines that there is “no match”.
[0176] "No match" means that the processed data registered in the data storage 291 is not data originating from the original data of the data source 491. For example, "no match" means that the processed data registered in the data storage 291 is tampered data.
[0177] Then, the data verification unit 320 outputs a determination result indicating “no match.” For example, the data verification unit 320 displays the determination result on a display.
[0178] ***Effects of Implementation Method 1***
[0179] according to Figure 7 to Figure 9 The effects of the first embodiment will be described.
[0180] Figure 8 and Fig. 9 The conventional data security system compares the digest value D of data A to verify that the registered data A is consistent with the data A of the data source (see Figure 8 ). However, when a part of data A or converted data A is registered, the conventional data preservation system cannot verify that the registered data A' is data derived from the data A of the data source.
[0181] Figure 7 The data preservation system 101 is shown. The data preservation system 101 stores a digest value D (D(data A)+D(data A')) (hereinafter referred to as DD) of the combined data of the digest value D of the data A and the digest value D of the data A'. In addition, during data verification, the data preservation system 101 obtains the digest value D of the data A from the data source 491, calculates the digest value D of the registered data A', and calculates the digest value DD of the combined data. Then, the data preservation system 101 compares the calculated digest value DD with the stored digest value DD, thereby verifying that the registered data A' is data from the data A of the data source 491.
[0182] When data A' is tampered with, the digest value D of data A' changes, and therefore, the digest value DD is inconsistent during verification.
[0183] That is, the data preservation system 101 can verify that the registered data A′ is data originating from the data A of the data source 491 by storing the digest value DD.
[0184] Furthermore, if the stored digest value DD is tampered with, the tampering of the data A′ cannot be detected, and therefore, the digest value DD is preferably stored in an area that is difficult to tamper with.
[0185] Implementation Method 2
[0186] Regarding how to securely manage reference digest values, Figure 10 to Figure 14 The differences from Implementation Example 1 will be mainly described.
[0187] ***Description of the structure***
[0188] according to Fig.10 The configuration of the data management system 100 will be described.
[0189] The data management system 100 further includes a signature device 500 .
[0190] according to Fig.11 The structure of the signature device 500 will be described.
[0191] The signature device 500 is a computer having 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 hardware are connected to each other via signal lines.
[0192] The processor 501 is an IC that performs calculation processing and controls other hardware. For example, the processor 501 is a CPU.
[0193] The memory 502 is a volatile or non-volatile storage device. The memory 502 is also called a main storage device or a main memory. For example, the memory 502 is a RAM. The data stored in the memory 502 is stored in the auxiliary storage device 503 as needed.
[0194] The auxiliary storage device 503 is a nonvolatile storage device. For example, the auxiliary storage device 503 is a ROM, a HDD, a flash memory, or a combination thereof. The data stored in the auxiliary storage device 503 is loaded into the memory 502 as needed.
[0195] 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 signature device 500 is performed using the communication device 504.
[0196] 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. The input / output of the signature device 500 is performed using the input / output interface 505 .
[0197] The signature device 500 includes elements such as a key management unit 510 and a signature unit 520. These elements are implemented by software.
[0198] The auxiliary storage device 503 stores a signature program for causing the computer to function as the key management unit 510 and the signature unit 520. The signature program is loaded into the memory 502 and executed by the processor 501.
[0199] The auxiliary storage device 503 also stores an OS. At least a part of the OS is loaded into the memory 502 and executed by the processor 501 .
[0200] The processor 501 executes the data source program while executing the OS.
[0201] The input and output data of the signature program are stored in the storage unit 590 .
[0202] 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 or together with the auxiliary storage device 503 .
[0203] The signature device 500 may include a plurality of processors instead of the processor 501 .
[0204] The signature program can be recorded (stored) in a computer-readable form on a non-volatile recording medium such as an optical disk or a flash memory.
[0205] ***Description of the action***
[0206] according to Fig.12 and Fig.13 Describe the data management method.
[0207] In the signature apparatus 500 , the key management unit 510 generates a set of a secret key and a public key. The secret key is stored in the storage unit 590 of the signature apparatus 500 . The public key is stored in the storage unit 390 of the data verification apparatus 300 .
[0208] according to Fig.12 The data registration process will be described.
[0209] Steps S201 to S203 are the same as steps S101 to S103 in the first embodiment.
[0210] In step S211 , the reference digest value calculation unit 311 calculates a reference digest value using the original data and the processed data.
[0211] Step S211 is the same as step S111 in the first embodiment.
[0212] In step S212 , the signing unit 520 generates a signature (hereinafter referred to as a digest signature) with reference to the digest value.
[0213] The digest signature is a value obtained by encrypting the reference digest value using a secret key.
[0214] The digest signature is generated as follows.
[0215] The reference digest value calculation unit 311 transmits the reference digest value to the signature apparatus 500. In addition, the reference digest value calculation unit 311 temporarily records the reference digest value.
[0216] The signing unit 520 receives the reference digest value and generates a digital signature of the reference digest value using a secret key.
[0217] The signing unit 520 sends the digest signature to the data verification device 300 .
[0218] The reference digest value calculation unit 311 receives the digest signature.
[0219] In step S213 , the data verification unit 320 stores the digest signature in the data memory 391 .
[0220] The digest signature is saved through the following steps.
[0221] The data verification unit 320 decrypts the digest signature using the public key and obtains a reference digest value.
[0222] The data verification unit 320 compares the temporarily recorded reference digest value with the decrypted reference digest value.
[0223] If the comparison result 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 memory 391 .
[0224] If the comparison result shows that the temporarily recorded reference digest value and the decrypted reference digest value are different, the process proceeds to step S212.
[0225] according to Fig.13 The matching verification process is described.
[0226] Steps S221 to S224 are the same as steps S121 to S124 in the first embodiment.
[0227] In step S225 , the data verification unit 320 obtains the digest signature from the data memory 391 , and decrypts the digest signature using the public key to obtain a reference digest value.
[0228] Steps S231 to S233 are the same as steps S131 to S133 in the first embodiment.
[0229] ***Effects of Implementation Method 2***
[0230] according to Fig.14 The effects of the second embodiment will be described.
[0231] When the reference digest value DD is tampered with, the tampering of the data A′ cannot be detected, and therefore, it is preferable to manage the reference digest value DD securely.
[0232] 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 secret key. The reference digest value DD can be obtained by decrypting the digest signature SDD using a public key. As long as the secret key is not obtained, it is difficult to easily tamper with the digest signature SDD.
[0233] That is, the second embodiment can securely manage the reference digest value DD.
[0234] Implementation 3
[0235] Regarding the method of managing reference summary values using data source 491, according to Figure 15 to Figure 17 The differences from Implementation Example 1 will be mainly described.
[0236] ***Description of the structure***
[0237] The structure of the data management system 100 is the same as that in the first embodiment.
[0238] ***Description of the action***
[0239] according to Fig.15 The data registration process will be described.
[0240] Steps S301 to S303 are the same as steps S101 to S103 in the first embodiment.
[0241] Step S311 is the same as step S111 in the first embodiment.
[0242] In step S312 , the reference digest value calculation unit 311 transmits the reference digest value to the data source device 400 .
[0243] The data management unit 410 receives the reference digest value.
[0244] In step S313 , the data management unit 410 stores the reference digest value in the data source 491 .
[0245] according to Fig.16 The matching verification process is described.
[0246] In step S321, the temporary digest value calculation unit 312 calculates a digest value of the processed data. The calculated digest value is referred to as a temporary digest value.
[0247] Step S321 is the same as step S121 in the first embodiment.
[0248] In step S322, the data verification unit 320 obtains the digest value stored in the data source 491, that is, the digest value of the original data. The obtained digest value is referred to as a temporary digest value.
[0249] Furthermore, the data verification unit 320 obtains the reference digest value stored in the data source 491 .
[0250] For example, the data verification unit 320 sends a digest value request to the data source device 400. The data management unit 410 receives the digest value request, reads the digest value and the reference digest value of the original data from the data source 491, and sends the digest value and the reference digest value of the original data to the data verification device 300. Then, the data verification unit 320 receives the digest value and the reference digest value of the original data.
[0251] In step S323 , the data verification unit 320 generates verification combination data.
[0252] Step S323 is the same as step S123 in the first embodiment.
[0253] In step S324 , the data verification unit 320 calculates a verification digest value.
[0254] Step S324 is the same as step S124 in the first embodiment.
[0255] Steps S331 to S333 are the same as steps S131 to S133 in the first embodiment.
[0256] ***Effects of Implementation 3***
[0257] according to Fig.17 The effects of the third embodiment will be described.
[0258] When the reference digest value DD is tampered with, the tampering of the data A′ cannot be detected, and therefore, it is preferable to manage the reference digest value DD securely.
[0259] Therefore, it is difficult to tamper with the reference digest value DD by managing the reference digest value DD using the data source 491. It is preferable that the data source 491 is a system that is difficult to tamper with, such as a blockchain.
[0260] Thus, the third embodiment can securely manage the reference digest value DD.
[0261] Implementation 4
[0262] Regarding the method of improving verification accuracy, according to Figure 18 to Figure 20 The differences from Implementation Example 1 will be mainly described.
[0263] ***Description of the structure***
[0264] The structure of the data management system 100 is the same as that in the first embodiment.
[0265] ***Description of the action***
[0266] according to Fig.18 The data registration process will be described.
[0267] In step S401 , the data processing unit 210 obtains raw data stored in the data source 491 .
[0268] Step S401 is the same as step S101 in the first embodiment.
[0269] In step S402, the data processing unit 210 executes a data processing program using the raw data as input, thereby obtaining processed data.
[0270] Step S402 is the same as step S102 in the first embodiment.
[0271] In step S403 , the data processing unit 210 registers the data processing program together with the processed data in the data memory 291 .
[0272] In step S411 , the reference digest value calculation unit 311 acquires the data processing program together with the original data and the processed data.
[0273] 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.
[0274] Specifically, the reference digest value calculation unit 311 calculates the digest values of the original data, the processed data, and the data processing program, combines the calculated digest values, and generates reference combined data. Then, the reference digest value calculation unit 311 calculates the digest value of the reference combined data (reference digest value).
[0275] In step S412 , the reference digest value calculation unit 311 stores the reference digest value in the data memory 391 .
[0276] Step S412 is the same as step S112 in the first embodiment.
[0277] according to Fig.19 The matching verification process is described.
[0278] In step S421, the temporary digest value calculation unit 312 calculates a digest value of the processed data. The calculated digest value is referred to as a temporary digest value.
[0279] Step S421 is the same as step S121 in the first embodiment.
[0280] In step S422 , the temporary digest value calculation unit 312 obtains the data processing program registered in the data memory 291 .
[0281] Then, the temporary digest value calculation unit 312 calculates a digest value of the data processing program. The calculated digest value is referred to as a temporary digest value.
[0282] In step S423, the data verification unit 320 obtains the digest value stored in the data source 491, that is, the digest value of the original data. The obtained digest value is referred to as a temporary digest value.
[0283] Step S423 is the same as step S122 in the first embodiment.
[0284] In step S424, the data verification unit 320 combines the temporary digest value of the original data, the temporary digest value of the processed data, and the temporary digest value of the data processing program to generate combined data. The generated combined data is referred to as verification combined data.
[0285] In step S425, the data verification unit 320 calculates a digest value of the verification combined data. The calculated digest value is referred to as a verification digest value.
[0286] Step S425 is the same as step S124 in the first embodiment.
[0287] In step S426 , the data verification unit 320 obtains the reference digest value stored in the data memory 391 .
[0288] Step S426 is the same as step S125 in the first embodiment.
[0289] Steps S431 to S433 are the same as steps S131 to S133 in the first embodiment.
[0290] ***Effects of Implementation Method 4***
[0291] according to Fig. 20 The effects of the fourth embodiment will be described.
[0292] The data processing program is registered together with the data A'. Furthermore, the digest value D of the data A, the digest value D of the 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).
[0293] The data processing program is also stored as a reference digest value in association, thereby ensuring that data A' is obtained by converting data A through the data processing program, and can more strongly ensure that data A' originates from data A. In order to tamper with data A' with matching, it is necessary not only to tamper with the digest value D and the reference digest value DD of data A', but also to tamper with the data processing program. Therefore, higher robustness can be obtained.
[0294] Implementation method 5
[0295] Regarding the method of improving verification accuracy by managing multiple data processing programs, according to Figure 21 to Figure 23 The differences from Implementation Example 1 will be mainly described.
[0296] ***Description of the structure***
[0297] The structure of the data management system 100 is the same as that in the first embodiment.
[0298] However, a plurality of data processing programs are stored in the storage unit 290 of the data registration device 200 .
[0299] ***Description of the action***
[0300] according to Fig.18The data registration process will be described.
[0301] In step S501 , the data processing unit 210 obtains raw data stored in the data source 491 .
[0302] Step S501 is the same as step S101 in the first embodiment.
[0303] In step S502 , the data processing unit 210 selects a data processing program for processing raw data from among a plurality of data processing programs.
[0304] For example, the data processing program is designated by a user of the data registration device 200. Alternatively, the data processing program is determined by the type of the original data.
[0305] Then, the data processing unit 210 executes the selected data processing program using the raw data as input, thereby obtaining processed data.
[0306] In step S503 , the data processing unit 210 registers the program identifier of the used data processing program in the data memory 291 together with the processed data.
[0307] In step S511 , the reference digest value calculation unit 311 acquires the used data processing program together with the original data and the processed data.
[0308] 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.
[0309] Specifically, the reference digest value calculation unit 311 calculates the digest values of the original data, the processed data, and the data processing program, combines the calculated digest values, and generates reference combined data. Then, the reference digest value calculation unit 311 calculates the digest value of the reference combined data (reference digest value).
[0310] In step S512 , the reference digest value calculation unit 311 stores the reference digest value in the data memory 391 .
[0311] Step S512 is the same as step S112 in the first embodiment.
[0312] according to Fig.19 The matching verification process is described.
[0313] In step S521, the temporary digest value calculation unit 312 calculates a digest value of the processed data. The calculated digest value is referred to as a temporary digest value.
[0314] Step S521 is the same as step S121 in the first embodiment.
[0315] In step S522 , the temporary digest value calculation unit 312 obtains the program identifier registered in the data memory 291 .
[0316] Furthermore, the temporary digest value calculation unit 312 obtains the data processing program identified by the obtained program identifier.
[0317] Then, the temporary digest value calculation unit 312 calculates a digest value of the data processing program. The calculated digest value is referred to as a temporary digest value.
[0318] In step S523, the data verification unit 320 obtains the digest value stored in the data source 491, that is, the digest value of the original data. The obtained digest value is referred to as a temporary digest value.
[0319] Step S523 is the same as step S122 in the first embodiment.
[0320] In step S524, the data verification unit 320 combines the temporary digest value of the original data, the temporary digest value of the processed data, and the temporary digest value of the data processing program to generate combined data. The generated combined data is referred to as verification combined data.
[0321] In step S525, the data verification unit 320 calculates a digest value of the verification combined data. The calculated digest value is referred to as a verification digest value.
[0322] Step S525 is the same as step S124 in the first embodiment.
[0323] In step S526 , the data verification unit 320 obtains the reference digest value stored in the data memory 391 .
[0324] Step S526 is the same as step S125 in the first embodiment.
[0325] Steps S531 to S533 are the same as steps S131 to S133 in the first embodiment.
[0326] ***Effects of Implementation 5***
[0327] according to Fig.23 The effects of the fifth embodiment will be described.
[0328] The program identifier of the data processing program is registered together with the data A'. Furthermore, the digest value D of the data A, the digest value D of the 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 DD. During verification, the digest value D of the data processing program identified by the program identifier is calculated.
[0329] This makes it possible to verify with a stronger guarantee that data A' originates from data A. For example, it is possible to detect tampering of data A' by an illegal data processing program.
[0330] Furthermore, by registering a program identifier in the data memory 291 instead of the data processing program, it is possible to save space in the data memory 291 .
[0331] Furthermore, by limiting the data processing program, any data processing program cannot be executed, and it is difficult to illegally enter the generation process of data A'.
[0332] Implementation 6
[0333] Regarding the method in which the data of the data source 491 is updated, according to Figure 24 to Figure 28 The differences from Implementation Example 1 will be mainly described.
[0334] ***Description of the structure***
[0335] The structure of the data management system 100 is the same as that in the first embodiment.
[0336] However, the original data stored in the data source 491 is updated. The original data before being updated is referred to as old data.
[0337] At least the original data and the summary value of the original data are stored in the data source 491 .
[0338] ***Description of the action***
[0339] according to Figure 24 to Figure 26 Describe the data management method.
[0340] Before the old data is updated, the data processing unit 210 obtains the old data stored in the data source 491 , processes the obtained old data to obtain processed old data, and registers the processed old data in the data memory 291 .
[0341] according to Fig.24 The data registration process will be described.
[0342] In step S601 , the data processing unit 210 obtains raw data stored in the data source 491 .
[0343] Step S601 is the same as step S101 in the first embodiment.
[0344] In step S602 , the data processing unit 210 processes the acquired raw data.
[0345] Specifically, the data processing unit 210 executes a data processing program using raw data as input.
[0346] Thus, processed raw data is obtained. The processed raw data is the raw data after processing.
[0347] In step S603 , the data processing unit 210 registers the processed data in the data memory 291 .
[0348] The processed data is a group of the processed original data and the summary value of the processed old data.
[0349] The digest value of the processed old data is calculated by, for example, the digest value calculation unit 310 .
[0350] Step S611 and step S612 are the same as step S111 and step S112 in the first embodiment.
[0351] according to Fig.25 and Fig.26 The matching verification process is described.
[0352] Steps S621 to S625 are the same as steps S121 to S125 in the first embodiment.
[0353] In step S631 , the data verification unit 320 compares the verification digest value with the reference digest value.
[0354] When the verification digest value matches the reference digest value, the process proceeds to step S641.
[0355] When the verification digest value and the reference digest value do not match, the process proceeds to step S632.
[0356] In step S632 , the data verification unit 320 determines that there is “no match”.
[0357] Step S632 is the same as step S133 in the first embodiment.
[0358] In step S641 , the data verification unit 320 obtains the processed old data registered in the data memory 291 .
[0359] Then, the data verification unit 320 calculates a digest value of the processed old data.
[0360] In step S642 , the data verification unit 320 compares the digest value of the processed old data with the digest value of the registered processed data.
[0361] When the digest values match, the data verification unit 320 determines whether the digest value exists in the processed old data.
[0362] When the digest value exists in the processed old data, the processed old data becomes the processed data, and the process proceeds to step S641.
[0363] When there is no digest value in the processed old data, the process proceeds to step S651.
[0364] When the digest values do not match, the process proceeds to step S652.
[0365] In step S651 , the data verification unit 320 determines that “there is a match”.
[0366] Then, the data verification unit 320 outputs a determination result indicating “matching.” For example, the data verification unit 320 displays the determination result on a display.
[0367] In step S652 , the data verification unit 320 determines that there is “no match”.
[0368] Then, the data verification unit 320 outputs a determination result indicating “no match.” For example, the data verification unit 320 displays the determination result on a display.
[0369] ***Effects of Implementation Method 6***
[0370] according to Fig. 27 and Fig.28 The effects of the sixth embodiment will be described.
[0371] exist Fig. 27 In the process, the data of the data source 491 is updated and the update history is managed. In order to cope with the update of data and the management of the update history, the data preservation system 101 includes the summary value D of the processed old data A' in the processed data B' and saves the summary value D (D (data B) + D (data B')) of the processed data B' (hereinafter referred to as DD).
[0372] The data preservation system 101 can detect tampering of the data history by performing verification from the digest value DD along the digest value D. Only one digest value DD needs to be stored.
[0373] exist Fig.28 In the example, the case where tampering can be detected if only one digest value DD is stored is described. For example, if data A' is tampered with, in order to ensure matching, D (data A') of data B' needs to be tampered with. Similarly, if D (data B') of data C' and D (data C') of data D' are tampered with without tampering with the digest value DD in the end, matching cannot be ensured. Therefore, as long as the digest value DD is securely stored, even if a certain data is tampered with, it can be detected.
[0374] ***Supplementary implementation methods***
[0375] The data security system 101 may be constituted by a single device. In other words, the data security system 101 may be a data security device.
[0376] according to Fig.29 The hardware configuration of the data registration device 200 will be described.
[0377] The data registration device 200 includes a processing circuit 209 .
[0378] The processing circuit 209 is hardware that realizes the data processing unit 210 and the data management unit 220 .
[0379] The processing circuit 209 may be dedicated hardware, or may be the processor 201 that executes a program stored in the memory 202 .
[0380] In the case where the processing circuit 209 is dedicated hardware, the processing circuit 209 is, for example, a single circuit, a complex circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
[0381] ASIC is the abbreviation of Application Specific Integrated Circuit.
[0382] FPGA is the abbreviation of Field Programmable Gate Array.
[0383] The data registration device 200 may include a plurality of processing circuits instead of the processing circuit 209 .
[0384] In the processing circuit 209 , part of the functions may be implemented by dedicated hardware, and the remaining functions may be implemented by software or firmware.
[0385] Thus, the functions of the data registration device 200 can be implemented by hardware, software, firmware or a combination thereof.
[0386] according to Fig.30 The hardware structure of the data verification device 300 will be described.
[0387] The data verification device 300 has a processing circuit 309 .
[0388] The processing circuit 309 is hardware that realizes the digest value calculation unit 310 and the data verification unit 320 .
[0389] The processing circuit 309 may be dedicated hardware, or may be a processor 301 that executes a program stored in the memory 302 .
[0390] In the case where the processing circuit 309 is dedicated hardware, the processing circuit 309 is, for example, a single circuit, a complex circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
[0391] The data verification device 300 may include a plurality of processing circuits instead of the processing circuit 309 .
[0392] In the processing circuit 309 , part of the functions may be implemented by dedicated hardware, and the remaining functions may be implemented by software or firmware.
[0393] In this way, the functions of the data verification device 300 can be implemented by hardware, software, firmware or a combination thereof.
[0394] according to Fig.31 The hardware structure of the data source device 400 will be described.
[0395] The data source device 400 has a processing circuit 409 .
[0396] The processing circuit 409 is hardware that realizes the data management unit 410 and the digest value calculation unit 420 .
[0397] The processing circuit 409 may be dedicated hardware, or may be the processor 401 that executes a program stored in the memory 402 .
[0398] In the case where the processing circuit 409 is dedicated hardware, the processing circuit 409 is, for example, a single circuit, a complex circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
[0399] The data source device 400 may include a plurality of processing circuits instead of the processing circuit 409 .
[0400] In the processing circuit 409 , part of the functions may be implemented by dedicated hardware, and the remaining functions may be implemented by software or firmware.
[0401] In this way, the functions of the data source device 400 can be implemented by hardware, software, firmware or a combination thereof.
[0402] according to Fig.32 The hardware structure of the signature device 500 is described.
[0403] The signature device 500 has a processing circuit 509 .
[0404] The processing circuit 509 is hardware that realizes the key management unit 510 and the signature unit 520 .
[0405] The processing circuit 509 may be dedicated hardware, or may be a processor 501 that executes a program stored in the memory 502 .
[0406] In the case where the processing circuit 509 is dedicated hardware, the processing circuit 509 is, for example, a single circuit, a complex circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
[0407] The signature device 500 may include a plurality of processing circuits instead of the processing circuit 509 .
[0408] In the processing circuit 509 , part of the functions may be implemented by dedicated hardware, and the remaining functions may be implemented by software or firmware.
[0409] In this way, the functions of the signature device 500 can be implemented by hardware, software, firmware or a combination thereof.
[0410] Each embodiment is an illustration of a preferred mode and is not intended to limit the technical scope of the present disclosure. Each embodiment can be implemented in part or in combination with other modes. The steps described using flowcharts and the like can also be appropriately changed.
[0411] In the data management system 100, the "unit" of each element of each device may be rewritten as "processing", "step", "circuit" or "line".
[0412] Description of symbols
[0413] 100: data management system; 101: data preservation 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 storage device; 300: data verification device; 301: processor; 302: memory; 303: auxiliary storage device; 304: communication device; 305: input / output interface; 309: processing circuit; 310: summary value calculation unit; 311: reference summary value calculation unit; 312: temporary summary value Calculation unit; 320: data verification unit; 390: storage unit; 391: data storage unit; 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: summary 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 preservation system, comprising: A data processing unit that obtains raw data stored in a data source, processes the obtained raw data, and registers the obtained processed data; a reference digest value calculation unit which, when registering the processed data, calculates a digest value of the acquired original data and a digest value of the processed data, generates reference combined data based on the calculated digest values, and calculates a digest value of the reference combined data as a reference digest value; a temporary digest value calculation unit that calculates a digest value of the registered processed data as a temporary digest value when verifying the processed data; and A data verification unit, which obtains the summary value of the original data stored in the data source as a temporary summary value, generates verification combined data according to the temporary summary value of the original data and the temporary summary value of the processed data, calculates the summary value of the verification combined data as a verification summary value, compares the verification summary value with the reference summary value, and determines whether the registered processed data is data originating from the original data of the data source.
2. The data preservation system according to claim 1, wherein: The reference summary value is stored in a data storage device, The data verification unit obtains the reference digest value stored in the data memory.
3. The data preservation system according to claim 1, wherein: The reference digest value encrypted with the secret key, i.e., the encrypted digest value, is stored in the data storage device. The data verification unit obtains the encrypted digest value stored in the data memory, and decrypts the reference digest value from the encrypted digest value using a public key corresponding to the secret key.
4. The data preservation system according to claim 1, wherein: The reference summary value is stored in the data source, The data verification unit obtains the reference digest value stored in the data source.
5. The data preservation system according to claim 1, wherein: The data processing unit processes the raw 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 calculating 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 temporary digest value calculation unit calculates a digest value of a registered data processing program as a temporary digest value in addition to calculating the temporary digest value of the registered processed data. The data verification section generates the verification combination 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.
6. The data preservation system according to claim 5, wherein: The data processing program is registered together with the processed data, The temporary 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 temporary digest value of the data processing program.
7. The data preservation system according to claim 5, wherein: a program identifier identifying the data processing program is registered together with the processed data, The temporary digest value calculation unit obtains a program identifier registered together with the processed data, obtains a data processing program identified by the obtained program identifier, and calculates a digest value of the obtained data processing program as the temporary digest value of the data processing program.
8. The data preservation system according to any one of claims 1 to 7, wherein: The reference digest value calculation unit combines the calculated digest values to generate the reference combined data.
9. A data preservation method, wherein: Obtain the original data stored in the data source, process the obtained original data, and register the obtained processed data. When registering the processed data, a digest value of the acquired original data and a digest value of the processed data are calculated, reference combined data are generated according to the calculated digest values, and a digest value of the reference combined data is calculated as a reference digest value, When verifying the processed data, calculating the digest value of the registered processed data as a temporary digest value, A digest value stored in the data source as a digest value of the original data is obtained as a temporary digest value, verification combined data is generated based on the temporary digest value of the original data and the temporary digest value of the processed data, a digest value of the verification combined data is calculated as a verification digest value, the verification digest value is compared with the reference digest value, and it is determined whether the registered processed data is data originating from the original data of the data source.
10. A data preservation program for causing a computer to execute the following processing: Data processing, obtaining the original data stored in the data source, processing the obtained original data, and registering the obtained processed data; A reference digest value calculation process, when registering the processed data, calculating the digest value of the obtained original data and the digest value of the processed data, generating reference combined data according to the calculated digest values, and calculating the digest value of the reference combined data as the reference digest value; A temporary digest value calculation process, when verifying the processed data, calculating the digest value of the registered processed data as the temporary digest value; as well as Data verification processing, obtaining the summary value stored in the data source as the summary value of the original data as a temporary summary value, generating verification combined data based on the temporary summary value of the original data and the temporary summary value of the processed data, calculating the summary value of the verification combined data as the verification summary value, comparing the verification summary value with the reference summary value, and determining whether the registered processed data is data originating from the original data of the data source.
11. A data registration device comprising a data processing unit, the data processing unit acquiring raw data stored in a data source, processing the acquired raw data to obtain processed data, and registering the obtained processed data.
12. A data verification device, the data verification device verifies processed data, wherein: The processed data is obtained and registered by processing the original data stored in the data source. The data verification device comprises: a reference digest value calculation unit that calculates the digest value of the acquired original data and the digest value of the processed data when registering the processed data, generates reference combined data based on the calculated digest values, and calculates the digest value of the generated reference combined data as the reference digest value; a temporary digest value calculation unit, which calculates a digest value of the registered processed data as a temporary digest value when verifying the processed data; as well as A data verification unit, which obtains a digest value stored in the data source as a digest value of the original data as a temporary digest value, generates verification combined data based on the temporary digest value of the original data and the temporary 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 originating from the original data of the data source.
13. A data preservation system, comprising: a data processing unit that acquires original data obtained by updating old data and stored in a data source, processes the acquired original data to acquire processed original data, and registers a set of the acquired processed original data and a summary value of the processed old data acquired by processing the old data as processed data; a reference digest value calculation unit which, when registering the processed data, calculates a digest value of the acquired original data and a digest value of the processed data, generates reference combined data based on the calculated digest values, and calculates a digest value of the reference combined data as a reference digest value; a temporary digest value calculation unit that calculates a digest value of the registered processed data as a temporary digest value when verifying the processed data; and A data verification unit obtains a summary value stored in the data source as a summary value of the original data as a temporary summary value, generates verification combined data based on the temporary summary value of the original data and the temporary summary value of the processed data, calculates a summary value of the verification combined data as a verification summary value, compares the verification summary value with the reference summary value, and determines whether the registered processed data is data originating from the original data of the data source.
14. The data preservation system according to claim 13, wherein: acquiring the old data stored in the data source, processing the acquired old data to obtain the processed old data, registering the obtained processed old data, The data verification unit calculates a digest value of the registered processed old data, and compares the calculated digest value with a digest value in the registered processed data.
15. A data preservation method, wherein: obtaining original data obtained by updating old data and stored in a data source, processing the obtained original data to obtain processed original data, registering a set of the obtained processed original data and a summary value of the processed old data obtained by processing the old data as processed data, When registering the processed data, a digest value of the acquired original data and a digest value of the processed data are calculated, reference combined data are generated according to 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, calculating the digest value of the registered processed data as a temporary digest value, Obtain a summary value stored in the data source as a summary value of the original data as a temporary summary value, generate verification combined data based on the temporary summary value of the original data and the temporary summary value of the processed data, calculate the summary value of the generated verification combined data as the verification summary value, and compare the calculated verification summary value with the reference summary value.
16. A data preservation program for causing a computer to execute the following processing: Data processing, obtaining original data obtained by updating old data and stored in a data source, processing the obtained original data to obtain processed original data, and registering a combination of the obtained processed original data and a summary value of the processed old data obtained by processing the old data as processed data; A reference digest value calculation process, when registering the processed data, calculating the digest value of the obtained original data and the digest value of the processed data, generating reference combined data according to the calculated digest values, and calculating the digest value of the generated reference combined data as the reference digest value; A temporary digest value calculation process, when verifying the processed data, calculating the digest value of the registered processed data as the temporary digest value; as well as Data verification processing, obtaining the summary value stored in the data source as the summary value of the original data as a temporary summary value, generating verification combined data based on the temporary summary value of the original data and the temporary summary value of the processed data, calculating the summary value of the generated verification combined data as the verification summary value, and comparing the calculated verification summary value with the reference summary value.
17. A data registration device, comprising a data processing unit, which obtains original data obtained by updating old data and stored in a data source, processes the obtained original data to obtain processed original data, and registers a group of the obtained processed original data and a summary value of the processed old data obtained by processing the old data as processed data.
18. A data verification device for verifying processed data, wherein: The processed data is a group of digest values of processed original data and processed old data, The processed original data is obtained by processing the original data obtained by updating the old data and stored in the data source. The processed old data is obtained by processing the old data. The data verification device comprises: a reference digest value calculation unit that calculates the digest value of the acquired original data and the digest value of the processed data when registering the processed data, generates reference combined data based on the calculated digest values, and calculates the digest value of the generated reference combined data as the reference digest value; a temporary digest value calculation unit, which calculates a digest value of the registered processed data as a temporary digest value when verifying the processed data; as well as A data verification unit obtains a summary value stored in the data source as a summary value of the original data as a temporary summary value, generates verification combined data based on the temporary summary value of the original data and the temporary summary value of the processed data, calculates a summary value of the generated verification combined data as a verification summary value, and compares the calculated verification summary value with the reference summary value.