System, generation method, and program

JP2026139803APending Publication Date: 2026-09-01NEC CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2026096330
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2026-06-09
Publication Date
2026-09-01

Smart Images

  • Figure 2026139803000001_ABST
    Figure 2026139803000001_ABST
Patent Text Reader

Abstract

The present invention provides a generation device, verification device, system, generation method, verification method, and non-temporary computer-readable medium that allow data modifiers to sequentially set modification rules for subsequent modifiers. [Solution] In system 1000, the generating device (1) generates second verification information and second verification parameters corresponding to the content of a second area which is an area where a second modifier can modify the content, which is at least a part of a first area which is an area where a first modifier can modify the content; acquires first verification information and first verification parameters corresponding to the content of the first area before modification; and modifies the first verification parameters to correspond to the first verification information and the content of the first area after modification.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This disclosure relates to a system, method, and program for generating information for data verification. [Background technology]

[0002] In recent years, with the digitalization of paper documents and seals, trust services to ensure data reliability have attracted attention. Therefore, methods have been developed to attach a digital signature each time a transaction is performed, allowing verification of the user who performed the transaction and the details of that transaction. For example, Patent Document 1 discloses a system that, when a revised version of a document is created, generates a signature using a hash value combining the hash value of the revised document and the hash value of the original document. [Prior art documents] [Patent Documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2021-114201 [Overview of the project] [Problems that the invention aims to solve]

[0004] In the system disclosed in Patent Document 1, it is required that each change be verifiable as having been made by a changer designated by the previous changer, and only to the extent designated by the previous changer. However, in general, with multi-signature using multiple private keys, all signers must communicate with each other before signing. In other words, in order to realize multi-signature, all changers are specified when the initial document is generated. For this reason, each changer could not sequentially set change rules for changes made by subsequent changers.

[0005] In view of the above-mentioned issues, the purpose of this disclosure is to provide a generation device, verification device, system, generation method, verification method, and non-temporary computer-readable medium that enable data modifiers to sequentially set modification rules for subsequent modifiers. [Means for solving the problem]

[0006] A generation device according to one aspect of the present disclosure generates second verification information and second verification parameters corresponding to the content of a second area, which is at least a part of a first area, which is an area where a first modifier can modify the content; obtains first verification information and first verification parameters corresponding to the content of the first area before modification; and modifies the first verification parameters to correspond to the first verification information and the content of the first area after modification.

[0007] A verification device according to one aspect of the present disclosure includes a control means that acquires the modified content of a first area which is an area in which a first modifier can modify the content, first verification information and first verification parameters corresponding to the modified content of the first area, and second verification information corresponding to the unmodified content of a second area which is at least a part of the first area and is an area in which a second modifier can modify the content, and verifies the content modification by the first modifier based on the information of the first modifier, the acquired modified content of the first area, the first verification information and first verification parameters, and the second verification information.

[0008] A system according to one aspect of the present disclosure comprises one or more generating devices and a verification device. Corresponding to each of the one or more generating devices, a first modifier, a second modifier, a first area which is an area in which the first modifier can modify the content, and a second area which is at least a part of the first area and in which the second modifier can modify the content are defined. Each of the one or more generating devices generates second verification information and second verification parameters corresponding to the content of the second area before modification, obtains first verification information and first verification parameters corresponding to the content of the first area before modification, and modifies the first verification parameters to correspond to the first verification information and the content of the first area after modification. The verification device verifies the content modification by the first modifier for at least one of the generating devices based on the information of the first modifier, the content of the first area after modification, the first verification information, the modified first verification parameters, and the second verification information.

[0009] A generation method according to one aspect of this disclosure is a method for generating information. The generation method generates second verification information and second verification parameters corresponding to the content of a second area, which is an area where a second modifier can modify the content, and which is at least a part of a first area, which is an area where a first modifier can modify the content; obtains first verification information and first verification parameters corresponding to the content of the first area before modification; and modifies the first verification parameters to correspond to the first verification information and the content of the first area after modification.

[0010] A non-temporary computer-readable medium according to one aspect of the present disclosure stores a program for causing a computer to generate second verification information and second verification parameters corresponding to the content of a second area, which is an area where a second modifier can modify the content, which is at least a portion of a first area, which is an area where a first modifier can modify the content; to obtain first verification information and first verification parameters corresponding to the content of the first area before modification; and to modify the first verification parameters to correspond to the first verification information and the content of the first area after modification.

[0011] A verification method according to one aspect of the present disclosure obtains the modified content of a first area, which is an area where a first modifier can modify the content; first verification information and first verification parameters corresponding to the modified content of the first area; and second verification information corresponding to the unmodified content of a second area, which is at least a part of the first area and is an area where a second modifier can modify the content. The method then verifies the content modification by the first modifier based on the information of the first modifier, the obtained modified content of the first area, the first verification information and first verification parameters, and the second verification information.

[0012] A non-temporary computer-readable medium according to one aspect of the present disclosure stores a program for causing a computer to retrieve the modified content of a first area which is an area in which a first modifier can modify the content, first verification information and first verification parameters corresponding to the modified content of the first area, and second verification information corresponding to the unmodified content of a second area which is an area in which a second modifier can modify the content, and to verify the content modification by the first modifier based on information of the first modifier, the retrieved modified content of the first area, the first verification information and first verification parameters, and the second verification information. [Effects of the Invention]

[0013] This disclosure provides a generation device, verification device, system, generation method, verification method, and non-temporary computer-readable medium that allow data modifiers to sequentially set modification rules for subsequent modifiers. [Brief explanation of the drawing]

[0014] [Figure 1] This is a block diagram showing the overall configuration of the system according to Embodiment 1. [Figure 2] This is a diagram illustrating the generation process according to Embodiment 1. [Figure 3] This flowchart shows an example of the generation process flow according to Embodiment 1. [Figure 4] This flowchart shows an example of the verification process flow according to Embodiment 1. [Figure 5] This is a block diagram showing the system configuration according to Embodiment 2. [Figure 6] This is a diagram illustrating the processing flow of the system according to Embodiment 2. [Figure 7] This is a block diagram showing the configuration of the initial generation device according to Embodiment 2. [Figure 8] This flowchart shows an example of the processing flow of the initial generation device according to Embodiment 2. [Figure 9] This is a block diagram showing the configuration of the intermediate generation apparatus according to Embodiment 2. [Figure 10] This flowchart shows an example of the processing flow of the intermediate generation device according to Embodiment 2. [Figure 11] This figure shows an example of how a document can be displayed on the display unit according to Embodiment 2. [Figure 12] This figure shows an example of a display on the display unit when accepting the designation of a changer. [Figure 13] This is a block diagram showing the configuration of the termination generation device according to Embodiment 2. [Figure 14] This flowchart shows an example of the processing flow of the termination generation device according to Embodiment 2. [Figure 15] This is a block diagram showing the configuration of the verification device according to Embodiment 2. [Figure 16] This flowchart shows an example of the processing flow of the verification device according to Embodiment 2. [Figure 17] This is a diagram illustrating the processing flow of the system according to the first modified example of Embodiment 2. [Figure 18] This diagram illustrates the processing flow of a system according to a second modified example of Embodiment 2. [Figure 19] This is a diagram illustrating the processing flow of the system according to Embodiment 3. [Figure 20] This figure shows an example of the structure of the final document according to Embodiment 3. [Modes for carrying out the invention]

[0015] Embodiments of the present disclosure will be described in detail below with reference to the drawings. In each drawing, the same or corresponding elements are denoted by the same reference numerals, and redundant explanations will be omitted where necessary for clarity.

[0016] <Definition> In the following embodiments, x←y represents the operation of uniformly randomly selecting an element from y and assigning it to x when y is a set, and the operation of outputting x when y is an algorithm or a function. Furthermore, x||y represents the connection between x and y.

[0017] <Embodiment 1> First, Embodiment 1 of this disclosure will be described. Figure 1 is a block diagram showing the overall configuration of System 1000 according to Embodiment 1. System 1000 is a computer system that manages information for verifying the authenticity of target data that is to be managed. In System 1000, the target data can be modified.

[0018] The target data is data such as a document, and has one or more areas. An area refers to an area in the data structure that can hold content. Content is the content of the data and includes, for example, characters, numbers, or images. In Embodiment 1, the target data includes at least a first area. The first area is defined as having at least a first modifier who can modify its content.

[0019] System 1000 comprises a generation device 1 and a verification device 4. The generation device 1 and the verification device 4 may be connected to a wired or wireless communication network.

[0020] The generating device 1 consists of one or more computer devices corresponding to the first modifier. For example, the generating device 1 may be a device operated by the first modifier, or a device under the supervision of the first modifier. Whether or not it is operated by the first modifier, or under the supervision of the first modifier, may be determined by various authentication methods.

[0021] The generator 1 generates information to verify an event when an event occurs in which a first modifier modifies the content of a first area in the target data. Note that, in the following, "modifying content" does not necessarily mean that the original content is overwritten by the modified content. For example, it may mean that the modified content is generated separately from the original content.

[0022] The generation device 1 comprises a storage unit 2 and a control unit 3.

[0023] The memory unit 2 is a storage device such as a hard disk or flash memory that functions as a storage means. The memory unit 2 stores a program that causes the generation device 1 to execute the generation method described later.

[0024] The control unit 3 is a processor that functions as a control means for controlling each component of the generation device 1. The control unit 3 loads a program from the storage unit 2 into memory (not shown) and executes the program.

[0025] The verification device 4 is a device that verifies an event related to a change. The verification device 4 is constituted by one or more computer devices. For example, the verification device 4 determines whether or not the person who made the change to the first area is the first changer. The verification device 4 also determines whether or not the changed range is within the first area.

[0026] The storage unit 5 is a storage device such as a hard disk or a flash memory that functions as a storage means. The storage unit 5 stores a program for causing the verification device 4 to execute a verification method described later.

[0027] The control unit 6 is a processor that functions as a control means for controlling each component of the verification device 4. The control unit 6 reads the program from the storage unit 5 into a memory (not shown) and executes the program.

[0028] FIG. 2 is a diagram for explaining the generation processing according to the first embodiment. As shown on the upper side of FIG. 2, the first changer has the first area A B has authority to change the content of. The first area A B stores content D as content before being changed by the first changer B . The content D B is the content of the first area A B which is also referred to as pre-change content.

[0029] Here, corresponding to the content D B of the first area A B , first verification information h B and a first verification parameter r B are predetermined. For example, the first verification information h B and the first verification parameter r B correspond to the content D B of the first area A B may be generated by a device corresponding to the creator who created the content D.

[0030] Verification information h and verification parameter r are a pair of verification information, generated based on the content of the corresponding area and the public key of the person authorized to make changes. Verification parameter r changes when the content is modified. However, verification information h does not need to be changed even if the content is modified.

[0031] As shown in the lower part of Figure 2, the first region A B This is the second region A c It includes the second region A. c This is the area where the next modifier can change the content. Second area A c This refers to the content D before the next modifier made changes. C It holds the second region A. c These rules may be predetermined or specified by the first modifier. In the latter case, the range of modification rules that the first modifier can determine is broadened, thus increasing the system's flexibility.

[0032] In response to the second modifier being designated as the next modifier, the control unit 3 of the generating device 1 controls the second region A c Content D c The second verification information h corresponding to this c and the second verification parameter r c Generates.

[0033] The first modifier is in the first area A B Content E B Change to the second area A. For example, the first changer changes to the second area A. c Contents excluding the portion of the content are Content E B You may change it to: Content E B This is the first region A B This is also referred to as the revised content.

[0034] In response to the first modifier changing the content, the control unit 3 of the generating device 1 sets the first verification parameter r B The first verification parameter r B Change to '. First verification parameter r B' is the first verification information h B and the first region A B Content E after modification B This is the parameter corresponding to . In other words, the control unit 3 of the generation device 1 controls the first verification parameter r B The first verification information h B And the first region A B Content E after modification B Modify it to correspond to the following.

[0035] (Chameleon Hash) While not strictly limited, in the following, the verification information h is assumed to be the hash value of the Chameleon Hash, and the verification parameter r is assumed to be a random number. The modified verification parameter will also be referred to as the adaptive random number.

[0036] Chameleon hashing is a cryptographic technique that can be considered as having the property of being able to calculate random numbers that will cause hash values ​​to collide. Using chameleon hashing, for two different messages M and M' and a set of hash value h and random number r corresponding to message M, it is possible to generate r' such that h = Hash(M,r) = Hash(M',r'). For convenience, chameleon hashing will sometimes be expressed as a function that takes M and r as input, but chameleon hashing is not limited to this form. Since chameleon hashing is composed of multiple algorithms, it may not always be possible to express it as a function.

[0037] (Chameleon Hash algorithm) Specifically, Chameleon Hash consists of five algorithms. (1) Public parameter generation: pp CH ←ParamGen(1 κ ) Public parameter pp CH Generates. (2) Key generation: (sk CH ,pk CH )←KeyGen(pp CH ) Public parameter pp CH Based on this, private key kan CH and public key pkCH Generate a set of these. (3) Hash calculation: (h,r)←CHash(pk CH ,M) public key pk CH This is used to generate a pair of hash value h and random number r corresponding to message M. (4) Adaptive random number generation: r'←Adapt(sk CH ,M,M',r,h) private key sk CH This is used to generate adaptive random numbers r' corresponding to the message M' and the hash value h. The algorithm in (4) is also called the Adapt algorithm. (5) Verification: OK / NG ← Check (pk CH ,M,r,h) public key pk, where h corresponds to M and r. CH Determine whether it is a hash value.

[0038] Note that the hash calculation shown in (3) is a method in which random numbers are input from an external source (i.e., h←CHash(pk CH You may also take M,r).

[0039] (Example of the first configuration of Chameleon Hash) The following are example configurations corresponding to (1) to (5). (1) Public parameter generation: pp CH ←ParamGen(1 κ ) (1-1) Randomly select a κ-bit prime number q, and choose a group G and its generators g of order q. (1-2)pp CH Let =(q,G,g). (2) Key generation: (sk CH ,pk CH )←KeyGen(pp CH ) (2-1)x to Z q Select uniformly randomly from, y=g x Let's assume that. (2-2)sk CH =x, pk CH Let = y. (3) Hash calculation: (h,r)←CHash(pk CH ,M) (3-1) r to Z q Select uniformly and randomly from the options. (3-2)h=g M y r Let's assume that. (4) Adaptive random number generation: r'←Adapt(sk CH ,M,M',r,h) (4-1)r'=(M-M')x -1 Let's add r. (5) Verification: OK / NG ← Check (pk CH ,M,r,h) (5-1)h=g M y r If the condition is met, it's OK; if not, it's NG.

[0040] Note that while the calculations in (3-2), (4-1), and (5-1) use a message as input, the following configuration can also be used, where the hash value of the message is used as input instead. The hash value of the message is obtained by inputting the message to the cryptographic hash function H. The cryptographic hash function H is a function that outputs a fixed value for an input of any size. The cryptographic hash function H is a function that satisfies three security requirements: preimage difficulty, second preimage difficulty, and collision difficulty. Examples of cryptographic hash functions H include SHA-1, SHA-2, and SHA-3.

[0041] (Second example of Chameleon Hash configuration) The second configuration example differs from the first configuration example in the calculation formulas for (3-2'), (4-1'), and (5-1'). (1) Public parameter generation: pp CH ←ParamGen(1 κ ) (1-1) Randomly select a κ-bit prime number q, and choose a group G and its generators g of order q. (1-2)pp CH Let =(q,G,g). (2) Key generation: (skCH , pk CH ) ← KeyGen(pp CH ) (2-1) Select x uniformly at random from Z q , and set y = g x . (2-2) Let sk CH = x and pk CH = y. (3) Hash calculation: (h, r) ← CHash(pk CH , M) (3-1) Select r uniformly at random from Z q . (3-2’) Let h = g H(M) y r . (4) Adaptive random number generation: r’ ← Adapt(sk CH , M, M’, r, h) (4-1’) Let r’ = (H(M)-H(M’))x -1 + r. (5) Verification: OK / NG ← Check(pk CH , M, r, h) (5-1’) If h = g H(M) y r holds, output OK; otherwise, output NG.

[0042] With this configuration, the chameleon hash algorithm can be applied without any restriction on the length of a message.

[0043] Figure 3 is a flowchart showing an example of the flow of a generation process according to the first embodiment. First, the control unit 3 of the generation apparatus acquires a document including content D B in a first area A B , first verification information h B corresponding to the content D B and a first verification parameter r B (S1).

[0044] Then, the control unit 3 accepts a change to a part of content in the first area A B by a first modifier, and changes the content (S2).

[0045] Next, the control unit 3 moves from the first modifier to the second region A C We accept the designation (S3).

[0046] S2 and S3 define the first region A B Of these, the second region A C Content D C This becomes the area that the next modifier can modify, and is the first area A. B The second region A C Content in areas other than Content E is modified by the first modifier. B It will be changed to this.

[0047] Next, the control unit 3 receives the designation of the second changer from the first changer, and accordingly processes the second area A C Content D before modification C The second verification information h corresponding to this c and the second verification parameter r C Generate (S4).

[0048] As an example, the control unit 3 is located in the second region A C Content D C And information about the second modifier, that is, the public key (pk) of the second modifier. C,CH Based on this, the second verification information h C and the second verification parameter r C The control unit 3 may calculate the following: (h C ,r C )=CHash(pk C,CH ,D C ) This calculation corresponds to (3) of the Chameleon Hash algorithm described above. When the Chameleon Hash takes the second configuration example described above, the control unit 3 selects the second verification parameter r from a predetermined group. C Select the second validation parameter r C And, Content D c The hash value obtained by the cryptographic hash function and the public key pk of the second modifier. C,CH Based on this, the second verification information hC You may generate this.

[0049] Although the processes shown in (1) and (2) of the chameleon hash algorithm described above are not illustrated in this diagram, they may be performed at any time before S4.

[0050] Next, the control unit 3 sets the first verification parameter r B The first verification information h B and the modified content E included in the first area B The corresponding parameter r B Change to ' (S5).

[0051] As an example, the control unit 3 receives information that is paired with the information of the first modifier, namely the secret key sk of the first modifier. B,CH And, 1st verification information h B And the first region A B The modified content E included B And, 2nd verification information h c Based on this, the first verification parameter is changed. Specifically, the control unit 3 may use the Adapt algorithm to calculate the following. r B '←Adapt(sk B,CH ,D B ,E B ||h C ,r B ,h B )

[0052] This calculation corresponds to (4) of the Chameleon Hash algorithm described above. When the Chameleon Hash takes the second configuration example described above, the control unit 3 calculates the modified content E B and the second verification information h c Data including (E B ||h c Using the hash value obtained by the cryptographic hash function of ) B You may calculate '.

[0053] The control unit 3 then controls the first region A B The modified content E included Ba document including, first verification information h B and a changed first verification parameter r B ′ and generated second verification information h c and a second verification parameter r C are output (S6), and the process ends.

[0054] Note that S2 may be executed after S3 to S4, may be executed between S3 and S4, or may be executed in parallel with S3 or S4.

[0055] As described above, according to the first embodiment, since the generation apparatus 1 corresponding to a first modifier generates verification information and a verification parameter corresponding to content in a modifiable area for a next modifier, the first modifier can sequentially set the next modifier. Further, according to the generation apparatus 1 of the first embodiment, a modifier can sequentially set not only the next modifier but also an area that can be modified by the next modifier. Therefore, the first modifier can sequentially set modification rules for and after the next modifier.

[0056] FIG. 4 is a flowchart illustrating an example of the flow of verification processing according to the first embodiment. First, a control unit 6 of a verification apparatus 4 obtains data output from the generation apparatus 1, that is, a first area A B changed content E B a document including, first verification information h B , a changed first verification parameter r B ′, second verification information h C and a second verification parameter r C in step S7. However, acquisition of the second verification parameter r C is not mandatory.

[0057] Next, the control unit 6 obtains information of the first modifier, for example, a public key pk of the first modifier B,CH and the first area A B changed content E B , the first verification information h B and the changed first verification parameter r B ′, and the second verification information h CBased on the above, verify the modification made by the first modifier (S8). Specifically, the control unit 6 may verify whether the following formula holds. OK←Check(pk B,CH ,E B ||h C ,r B ’,h B )

[0058] Then the control unit 6 outputs the verification result (S9) and ends the process.

[0059] As described above, according to Embodiment 1, the verification device 4 can use the verification information and the verification parameter modified by the generation device 1 to verify whether the modified region is within the range specified by the first modifier. In addition, the generation device 1 uses information paired with the information of the first modifier to modify the verification parameter, and the verification device 4 uses the information of the first modifier for verification, whereby the verification device 4 can verify whether the modification is made by the specified first modifier. Furthermore, since content before modification is not required for verification, the amount of data to be transferred can be reduced.

[0060] <Embodiment 2> Next, Embodiment 2 of the present disclosure will be described. Embodiment 2 is a specific example of Embodiment 1. FIG. 5 is a block diagram showing the configuration of a system 1000a according to Embodiment 2. Similar to the system 1000 of Embodiment 1, the system 1000a is a computer system that manages information for verifying the authenticity of target data to be managed. In Embodiment 2, as an example, the target data is a document. The system 1000a includes an initial generation device 10, an intermediate generation device 20, a terminal generation device 30, and a verification device 40, which are configured to be capable of communicating with each other via a network N.

[0061] The network N is a wired or wireless communication network. The network N may be a LAN (Local Area Network), a Wide Area Network (WAN), the Internet, or a combination thereof.

[0062] The initial generation device 10 is a computer device that corresponds to creator A, who initially creates the document. For example, the initial generation device 10 may be a device operated by creator A, or a device under the supervision of creator A.

[0063] The intermediate generator 20 is a specific example of the generator 1 of Embodiment 1 and is a computer device corresponding to the modifier B. The modifier B is the current modifier when there is a next modifier. When an event occurs in which modifier B modifies the content of a first area in the document, the intermediate generator 20 generates information for verifying that event.

[0064] The termination generator 30 is a computer device corresponding to the modifier C. Modifier C is the last modifier if no next modifier is specified. When an event occurs in which modifier C modifies the content of a second area in the document, the termination generator 30 generates information to verify that event.

[0065] The verification device 40 is a computer device that verifies the creation of a document by creator A, the modification of the content of the first area by modifier B, and the modification of the content of the second area by modifier C.

[0066] Figure 6 will be used to explain the flow of information in system 1000a in more detail. Figure 6 is a diagram illustrating the processing flow of system 1000a according to Embodiment 2.

[0067] The initial generator 10 creates document D1. Then the initial generator 10 designates modifier B as the next modifier and creates verifier v along with document D1. A The signature σ is then sent to the intermediate generator 20 corresponding to the modifier B.

[0068] Document D1 is content D created by creator A's actions. A and Content D B Each of these is data from which data can be extracted. Content D A ,DB The data that can be extracted is each content D A ,D B It is generated based on, for example, content D A ,D B The data that can be extracted is each content D A ,D B Data concatenated from (D A ||D B It is acceptable to express it as follows:

[0069] Content D A Area A cannot be modified by the modifier B. A This is the content. Area A cannot be changed by the modifier B. A This is sometimes referred to as the fourth domain. On the other hand, Content D B This is the area that modifier B can modify.

[0070] Verifier v A This is the first verification information h B and the first verification parameter r B The data includes at least the following. Signature σ is the creator's digital signature for the data associated with document D1.

[0071] The intermediate generator 20 generates content D contained in document D1 received from the initial generator 10. B The intermediate generator 20 modifies at least a portion of it and generates document D2. The intermediate generator 20 designates modifier C as the next modifier and uses verifier v along with document D2. B The signature σ is then transmitted to the terminal generator 30 corresponding to the modifier C.

[0072] Document D2 contains content D A And, Content E B And, Content D C Data from which each of the following can be extracted (D A ||E B ||D C (This is how it is expressed.) Content E B This is content in an area that modifier C cannot change, and is the content after modifier B has made changes to it. Content D CContent D B Area A that can be modified by the modifier C among those that have been changed. C This is the content before it was modified by user C.

[0073] Verifier v B This is the first verification information h B and the modified first verification parameter r B 'and, Second Verification Information h C and the second verification parameter r C The data includes at least the following. Signature σ is the digital signature generated by the initial generator 10.

[0074] The terminal generation device 30 generates content D contained in document D2 received from the intermediate generation device 20. C The document D3 is generated by modifying it. The terminal generator 30 does not specify the next modifier and generates the document D3 along with the verifier v C The signature σ is then transmitted to the verification device 40.

[0075] Document D3 contains content D A And, Content E B And, Content E C Data from which each of the following can be extracted (D A ||E B ||E C (This is how it is expressed.) Content E C This is the content in the area that modifier C can modify, and it is the content after modifier C has modified it.

[0076] Verifier v C This is the first verification information h B and the modified first verification parameter r B 'and, Second Verification Information h C and the modified second validation parameter r C The data includes at least ' and . Signature σ is the above digital signature generated by the initial generator 10.

[0077] The verification device 40 receives document D3 and verifier v from the terminal generation device 30. C、Based on and the signature σ, the following three items are verified. First, that the modifier C is a person designated by the previous modifier and that the modifier C only changes the designated range. Second, that the modifier B is a person designated by the creator and that the modifier B only changes the designated range. Third, that the document D3 is a document changed based on the document D1 initially created by the creator A.

[0078] Note that the verification device 40 may receive the document D2, the verifier v B and the signature σ from the intermediate generation device 20. In this case, the verification device 40 may verify the second and third items described above based on the received information.

[0079] FIG. 7 is a block diagram showing the configuration of an initial generation device 10 according to the second embodiment. The initial generation device 10 includes a storage unit 100, a memory 110, a communication unit 120, an input unit 130, a display unit 140, and a control unit 150.

[0080] The storage unit 100 is a storage device such as a hard disk or a flash memory. The storage unit 100 stores a program 101, a secret key sk of the creator A A,sig and a public key pk of the modifier B B,CH . The program 101 is a computer program in which processing by the initial generation device 10 is implemented. The secret key sk of the creator A A,sig is an example of secret information paired with information of the creator A. The public key pk of the modifier B B,CH is an example of information of the modifier B.

[0081] The memory 110 is a volatile storage device such as a RAM (Random Access Memory), and is a storage area for temporarily holding information when the control unit 150 operates. The communication unit 120 is a communication interface with the network N. The input unit 130 is an input device. The display unit 140 is a display device.

[0082] The control unit 150 is a processor, or control device, that controls each component of the initial generation device 10. The control unit 150 loads program 101 from the storage unit 100 into memory 110 and executes program 101. In this way, the control unit 150 realizes the processing shown in Figure 8.

[0083] Figure 8 is a flowchart showing an example of the processing flow of the initial generation device 10 according to Embodiment 2.

[0084] First, the control unit 150 of the initial generation device 10 generates document D0 based on the creator's operation (S10). Next, the control unit 150 selects area A from the document area, which is the data structure area of ​​document D0. B Define and define area A A and region A B Divide into (S11). Region A A This is the area within the document area that cannot be modified by the next changer, and is Content D A Includes. Region A B This is the area within the document area that can be modified by the following person, and is Content D B Includes.

[0085] Next, the control unit 150 receives the designation of changer B as the next changer from creator A (S12). In response to receiving the designation of changer B, the control unit 150 controls area A B Content D before modification B and the public key pk of the modifier B B,CH Based on this, the first verification information h B and the first verification parameter r B The control unit 150 may calculate the following using the chameleon hash algorithm. (h B ,r B )←CHash(pk B,CH ,D B )

[0086] Next, the control unit 150 receives the first verification information h B and the first verification parameter r B Verifier v containing at least AGenerate (S13). Specifically, v A It can be expressed as follows: v A =(r B ,h B )

[0087] Next, the control unit 150 controls content D A and the first verification information h B For data based on this, the creator's private key sk A,sig The signature σ is generated using (S14). σ←Sign(sk A,sig ,D A ||h B )

[0088] As mentioned above, in the generation of signature σ, content D1 is replaced with content D A and the first verification information h B Data based on (D A ||h B By using ), when verifying the signature σ, region A B Content D before modification B This becomes unnecessary.

[0089] Next, the control unit 150 controls area A A Content D A and region A B Content D B Document D1 is generated as extractable data (S15). Then the control unit 150 processes document D1 and verifier v A The data relating the signature σ to each other is transmitted to the intermediate generation device 20 (S16). The control unit 150 may, instead or in addition to the above, store the above data in a storage device (not shown).

[0090] Thus, according to Embodiment 1, the initial generation device 10 designates the next modifier and assigns the verifier v to that modifier. A And the signature σ can be transferred.

[0091] Figure 9 is a block diagram showing the configuration of the intermediate generation device 20 according to Embodiment 2. The intermediate generation device 20 comprises a storage unit 200, a memory 210, a communication unit 220, an input unit 230, a display unit 240, and a control unit 250.

[0092] The memory unit 200 is a storage device such as a hard disk or flash memory. The memory unit 200 contains program 201 and the private key sk of the modifier B. B,CH and the public key pk of modifier C C,CH Remember this. Program 201 is a computer program that implements the processing performed by the intermediate generator 20. The private key of modifier B B,CH This is an example of confidential information that is paired with the information of the modifier B. Public key of modifier C (pk) C,CH This is an example of information about the modifier C.

[0093] Memory 210 is a volatile memory device such as RAM, and is a storage area for temporarily holding information when the control unit 250 is operating. Communication unit 220 is a communication interface with network N. Input unit 230 is an input device. Display unit 240 is a display device.

[0094] The control unit 250 is a processor, or control device, that controls each component of the intermediate generation device 20. The control unit 250 loads program 201 from the storage unit 200 into memory 210 and executes program 201. In this way, the control unit 250 realizes the processing shown in Figure 10.

[0095] Figure 10 is a flowchart showing an example of the processing flow of the intermediate generation device 20 according to Embodiment 2.

[0096] First, the control unit 250 of the intermediate generation device 20 receives document D1 and verifier v from the initial generation device 10. A, and data relating the signature σ to each other are obtained (S20). After obtaining the document D1, the control unit 250 of the intermediate generation device 20 may display the document D1 on the display unit 240. At this time, the display unit 240 displays the area A that can be modified by the modifier B included in the document D1. B The content in this area may be highlighted or made selectable compared to other areas.

[0097] Figure 11 is a diagram showing an example of displaying document D1 on the display unit 240 according to Embodiment 2. The image 600 displayed on the display unit 240 is in area A B Region A that constitutes the area B1 , A B2 , A B3 It includes the content of area A. B1 , A B2 , A B3 The content is highlighted so that modifier B can recognize that it is an area that modifier B can modify. Also, image 600 is area A B1 , A B2 , A B3 For each of these, an input field is set up to accept changes by the modifier. Modifier B can select the input field of the field they wish to change and modify the content of that field.

[0098] Returning to Figure 10, let's continue the explanation. Next, the control unit 250 controls area A, which can be modified by the operator B. B The content of (S21) is changed. Next, the control unit 250 changes area A that can be changed by the next changer, based on the changer B. C We accept designations (S22).

[0099] Next, the control unit 250 controls area A A Content D A and area A B Content E after modification B and area A c Content D C Based on this, each content D A , E B , D CExtractable data from document D2(D A ||E B ||D C ) is generated as (S23). By generating extractable data for each content and passing it on to the next modifier, the next modifier can easily understand the entire modified document.

[0100] Next, the control unit 250 receives the designation of changer C as the next changer from changer B (S24).

[0101] Figure 12 shows an example of the display by the display unit 240 when accepting the designation of changer C. For example, the display unit 240 may display information on multiple changer candidates in a selectable manner. The displayed changer candidates may be those designated in advance as candidates, or those registered in the address book of the intermediate generation device 20. Changer B may be able to designate the next changer by selecting one person from the displayed candidates. The display unit 240 may also display an input area where the user who made the change can enter identification information such as the name and email address of the next user who made the change, and accept the designation of the next user through this input.

[0102] Returning to Figure 10, the explanation continues. In response to receiving the designation from the modifier C, the control unit 250 moves to area A C Content D C and the public key pk of the modifier C C,CH Based on this, the second verification information h C and the second verification parameter r C The control unit 250 may calculate the following: (h C ,r C )=CHash(pk C,CH ,D C )

[0103] Next, the control unit 250 sets the first verification parameter to the first verification information h C and area A B The modified content E included BModify to correspond to (S25). Specifically, the control unit 250 receives the private key sk of the modifier B. B,CH and area A B Content D before the change is included in B and area A B The modified content E included B And, 2nd verification information h c And, 1st verification information h B And the first verification parameter r B Based on this, the modified first validation parameter r B The control unit 250 may use the Adapt algorithm to calculate the following: r B '←Adapt(sk B,CH ,D B ,E B ||h C ,r B ,h B )

[0104] As mentioned above, the first verification parameter r after the change B In the generation of ', the modified content E B and second verification information h C Data based on (E B ||h C By using ) during verification, region A C Content D before modification C This becomes unnecessary.

[0105] Next, the control unit 250 receives the first verification information h B and the modified first verification parameter r B 'and, Second Verification Information h C and the second verification parameter r C Verifier v containing at least and B The control unit 250 generates the verifier v (S26). Specifically, the control unit 250 generates the verifier v A Second verification information h C and the second verification parameter r C Include, verifier v A The first verification parameter r included in B The first verification parameter r after modification BBy replacing it with ', the verifier v B Generates.

[0106] More specifically, v B It can be expressed as follows: v B =(r B ',h B ,r C ,h C )

[0107] The control unit 250 then receives document D2 and verifier v B The data relating the signature σ to the terminal generation device 30 is transmitted (S27). The control unit 250 may, in lieu of or in addition to the above, store the above data in a storage device (not shown).

[0108] Thus, the intermediate production device 20 of Embodiment 2 provides the same effects as the production device 1 of Embodiment 1.

[0109] Figure 13 is a block diagram showing the configuration of the termination generation device 30 according to Embodiment 2. The termination generation device 30 comprises a storage unit 300, a memory 310, a communication unit 320, an input unit 330, a display unit 340, and a control unit 350.

[0110] The storage unit 300 is a storage device such as a hard disk or flash memory. The storage unit 300 stores program 301 and the private key sk of the modifier C. C,CH It stores the data. Program 301 is a computer program that implements the processing performed by the terminal generation device 30. The private key of modifier C is sk C,CH This is an example of confidential information that is paired with the information of the modifier C.

[0111] Memory 310 is a volatile memory device such as RAM, and is a storage area for temporarily holding information when the control unit 350 is operating. Communication unit 320 is a communication interface with network N. Input unit 330 is an input device. Display unit 340 is a display device.

[0112] The control unit 350 is a processor, or control device, that controls each component of the terminal generation device 30. The control unit 350 loads program 301 from the storage unit 300 into the memory 310 and executes program 301. In this way, the control unit 350 realizes the processing shown in Figure 14.

[0113] Figure 14 is a flowchart showing an example of the processing flow of the termination generation device 30 according to Embodiment 2. First, the control unit 350 of the termination generation device 30 receives document D2 and verifier v from the intermediate generation device 20. B , and data relating the signature σ to each other are obtained (S30). After obtaining document D2, the control unit 350 of the terminal generation device 30 may display document D2 on the display unit 340. The display method may be the same as in Figure 11.

[0114] Next, the control unit 350 controls area A, which can be modified by the modifier C, through the modifier C's operation. C The content of Content D C From Content E C Change to (S31).

[0115] Next, the control unit 350 controls area A A Content D A and area A B Content E after modification B and area A c Content E after modification c Based on this, each content D A , E B , E C Document D3(D A ||E B ||E C (S32) generates ).

[0116] Next, the control unit 350 sets the second verification parameter to the second verification information h c and area A C Content E after modification C Modify to correspond to (S33). Specifically, the control unit 350 receives the private key sk of the modifier C. C,CH and area A CContent D before the change is included in C and area A C The modified content E included C And, 2nd verification information h C And the second validation parameter r C Based on this, the modified second validation parameter r C The control unit 350 may use the Adapt algorithm to calculate the following: r C '←Adapt(s BC,CH ,D C ,E C ,r C ,h C )

[0117] Next, the control unit 350 receives the first verification information h B and the modified first verification parameter r B 'and, Second Verification Information h C and the modified second validation parameter r C 'Verifier v containing at least v C (S34) generates the verifier v B The second validation parameter r included in C The second verification parameter r after the change C By replacing it with ', the verifier v C Generates.

[0118] More specifically, v C It can be expressed as follows: v C =(r B ',h B ,r C ',h C )

[0119] The control unit 350 then receives document D3, verifier v C The data relating the signature σ to each other is transmitted to the verification device 40 (S35). The control unit 350 may, instead or in addition to the above, store the above data in a storage device (not shown).

[0120] Figure 15 is a block diagram showing the configuration of the verification device 40 according to Embodiment 2. The verification device 40 comprises a storage unit 400, a memory 410, a communication unit 420, an input unit 430, a display unit 440, and a control unit 450. Note that the input unit 430 and the display unit 440 are not essential components of the verification device 40.

[0121] The memory unit 400 is a storage device such as a hard disk or flash memory. The memory unit 400 contains program 401 and the verification key vk of creator A. A,sig , the public key pk of the modifier B B,CH , and the public key pk of modifier C C,CH Remember this. Program 401 is a computer program that implements the processing performed by the verification device 40. Public key of modifier C (pk) C,CH This is an example of information about the modifier C.

[0122] Memory 410 is a volatile memory device such as RAM, and is a storage area for temporarily holding information when the control unit 450 is operating. Communication unit 420 is a communication interface with network N. Input unit 430 is an input device. Display unit 440 is a display device.

[0123] The control unit 450 is a processor, or control device, that controls each component of the verification device 40. The control unit 450 loads program 401 from the storage unit 400 into memory 410 and executes program 401. In this way, the control unit 450 realizes the process shown in Figure 16.

[0124] Figure 16 is a flowchart showing an example of the processing flow of the verification device 40 according to Embodiment 2. First, the control unit 450 of the verification device 40 receives document D3 and verifier v from the termination generation device 30. C , and obtain the data associated with the signature σ (S40).

[0125] Next, the control unit 450 processes the public key pk of modifier B. B,CH And, region A in document D3 B The modified content E included Band second verification information h C Based on the data and the first verification information h B and the first verification parameter r B Based on this, verify the content changes made by modifier B (S41). This results in area A B It is possible to determine whether the content changes were made by the specified modifier B, and within the specified scope.

[0126] Specifically, the control unit 450 may verify that the following equation holds true. OK←Check(pk B,CH ,E B ||h C ,r B ',h B ) Note that the verification will be performed using the modified content E. B and second verification information h C Because data based on this will be used, region A will be used during verification. C Content D before modification C It is unnecessary.

[0127] Next, the control unit 450 processes the public key pk of modifier C. C,CH And, region A in document D3 C Content E after modification C And, verifier v C Second verification information h included in C and the modified second validation parameter r C Based on this, verify the content changes made by modifier C (S42). This results in area A C It is possible to determine whether the content changes were made by the specified modifier C, and within the specified scope.

[0128] Specifically, the control unit 450 may verify that the following equation holds true. OK←Check(pk C,CH ,E C ,r C ',h C )

[0129] Next, the control unit 450 controls area A in document D3. AContent D A and verifier v C The first verification information h included in B Data based on and creator A's private key vk A,sig Based on this, the signature σ is verified (S43). This allows us to determine whether document D3 is a document that has been modified based on a document created by creator A.

[0130] Specifically, the control unit 450 may verify that the following equation holds true. OK←Verify(vk A,sig ,D A ||h B ,σ) Note that the verification will be conducted in area A A Content D A and first verification information h B Because data based on this will be used, region A will be used during verification. B Content D before modification B It is unnecessary.

[0131] The control unit 450 then outputs the verification results (S44). At this time, the control unit 450 outputs a message indicating that the verification was successful if all of the verifications in S42, S43, and S43 are OK. On the other hand, the control unit 450 outputs a message indicating that the verification failed if any of the verifications in S42, S43, and S43 are NG. For example, the control unit 450 may notify the initial generation device 10 of the verification results.

[0132] The above describes Embodiment 2, but Embodiment 2 can be modified as follows.

[0133] <First modified example of Embodiment 2> For example, in the first modified example of Embodiment 2, the verifier v A ,v B ,v C This includes information about the content and the public key information of each modifier. In this case, the verification device 40 does not need to store the modifier's public key in the storage unit beforehand. Note that the verifier (v B ,v CIf the validation includes multiple validation pieces and validation data, the validator may include information indicating the correspondence between content, validation pieces, and validation parameters.

[0134] Figure 17 is a diagram illustrating the processing flow of system 1000a according to a first modified example of Embodiment 2.

[0135] Verifier v generated by the control unit 150 of the initial generation device 10 A is area A A Content D A and area A B Content D before modification B , the public key pk of the modifier B B,CH , First Verification Information h B , and the first verification parameter r B Includes the associated data. Specifically, validater v A (D A ,(D B ,pk B,CH ,r B ,h B )) is represented. The control unit 150 of the initial generation device 10 is, Document D 1、 Verifier v A The signature σ is then transmitted to the intermediate generator 20.

[0136] Verifier v generated by the control unit 250 of the intermediate generation device 20 B is area A A Content D A and area A B The modified content E included B , the public key pk of the modifier B B,CH , First Verification Information h B , and the modified first verification parameter r B 'Data associated with region A C Content D before modification C , the public key pk of the modifier C C,CH , Second Verification Information h C , and the second validation parameter r before the change C Includes data associated with it. Specifically, validater v B (D A ,(EB ,pk B,CH ,r B ',h B ),(D C ,pk C,CH ,r C ,h C )) is represented. The control unit 250 of the intermediate generation device 20 is described in Document D 2、 Verifier v B The signature σ is then transmitted to the termination generator 30.

[0137] Verifier v generated by the control unit 350 of the termination generation device 30 C is area A A Content D A and area A B The modified content E included B , the public key pk of the modifier B B,CH , First Verification Information h B , and the modified first verification parameter r B 'Data associated with region A C Content E after modification C , the public key pk of the modifier C C,CH , Second Verification Information h C , and the modified second validation parameter r C Includes data associated with '. Specifically, validater v C (D A ,(E B ,pk B,CH ,r B ',h B ),(E C ,pk C,CH ,r C ',h C )) is represented. The control unit 350 of the terminal generation device 30 is document D3, verifier v C The signature σ is then sent to the verification device 40. In the first modified example of Embodiment 2, the transmission of document D3 is not mandatory.

[0138] The control unit 450 of the verification device 40 receives the verifier v from the termination generation device 30. D Based on the signature σ, each modifier performs content modification and verifies the signature σ.

[0139] By providing a verifier containing content, verification information, and verification parameters to a downstream device in this manner, the verification device 40 can verify changes in content and the signature σ without having to retrieve intermediate documents. Furthermore, including information on the correspondence between content, verification information, and verification parameters in the verifier facilitates the above verification.

[0140] <Second modified example of Embodiment 2> In the above-described embodiment 2, two modifiers made changes sequentially, but the number of modifiers may be three or more. In this case, system 1000a may be equipped with multiple intermediate generation devices 20 corresponding to different modifiers.

[0141] Figure 18 is a diagram illustrating the processing flow of system 1000a according to a second modification of Embodiment 2. In this figure, two intermediate generation devices 20-1 and 20-2 are shown as an example, but the number of intermediate generation devices 20 is not limited to these. Each intermediate generation device 20-1 and 20-2 performs the same processing as shown in Figure 10.

[0142] In this diagram, the initial generator 10, intermediate generator 20-1, intermediate generator 20-2, and terminal generator 30 correspond to creator A, modifier B, modifier C, and modifier D, respectively. Processing may be performed in the order of initial generator 10, intermediate generator 20-1, intermediate generator 20-2, and terminal generator 30.

[0143] The control unit 150 of the initial generation device 10 is document D1(D A ||D B ) generates, designates modifier B as the next modifier, and the first verification parameter r B Verifier v A and generates signature σ. Then the control unit 150 of the initial generation device 10 generates document D 1、 Verifier v A The signature σ is then transmitted to the intermediate generator 20-1.

[0144] Then the control unit 250 of the intermediate generation device 20-1 modifies document D1 to document D2 (D A||E B ||D C ) generates and designates modifier C as the next modifier. Then the control unit 250 of the intermediate generation device 20-1 generates verifier v A Second verification information h C and the second verification parameter r C Include, verifier v A The first verification parameter r included in B The first verification parameter r after modification B By replacing it with ', the verifier v B It generates. And the control unit 250 of the intermediate generation device 20-1, Document D 2、 Verifier v B The signature σ is then transmitted to the intermediate generator 20-2.

[0145] The control unit 250 of the intermediate generation device 20-2 modifies document D2 to document D3(D A ||E B ||E C ||D D ) generates and designates modifier D as the next modifier. Then the control unit 250 of the intermediate generation device 20-2 generates verifier v B Third verification information h D and the third verification parameter r D Include, verifier v B The second validation parameter r included in C The second verification parameter r after the change C By replacing it with ', the verifier v C It generates. And the control unit 250 of the intermediate generation device 20-2, Document D 3、 Verifier v C The signature σ is then transmitted to the termination generator 30.

[0146] The control unit 350 of the termination generation device 30 modifies document D3 to document D4(D A ||E B ||E C ||E D The terminal generator 30 generates a verifier v C The third validation parameter r included in D The third verification parameter r after modification D ' The verifier v replacedD It generates document D. 4、 Verifier v D The signature σ is then transmitted to the verification device 40.

[0147] The control unit 450 of the verification device 40 receives document D4, verifier v D Based on the signature σ, each modifier performs content modification and verifies the signature σ.

[0148] In this way, the number of modifiers can be easily adjusted by increasing or decreasing the number of intermediate generators 20.

[0149] <Embodiment 3> Next, Embodiment 3 of the present disclosure will be described. System 1000a according to Embodiment 3 comprises an initial generation device 10, a plurality of intermediate generation devices 20-1, 20-2 corresponding to different modifiers B and C, a plurality of terminal generation devices 30-1, 30-2, 30-3 corresponding to different modifiers D, E, F, and a verification device 40. In Embodiment 3, the processing of system 1000a is partially branched. That is, the creator may specify multiple subsequent modifiers, and each modifier may specify multiple subsequent modifiers.

[0150] Figure 19 is a diagram illustrating the processing flow of system 1000a according to Embodiment 3. As shown in Figure 19, the control unit 150 of the initial generation device 10 controls document D1(D A ||D B ||D C ) is generated. At this time, creator A designates modifiers B and C as the next modifiers. Accordingly, the control unit 150 of the initial generation device 10 generates the content D before modification. B Verification information corresponding to h B and verification parameter r B And, the content D before the change C Verification information corresponding to h C and verification parameter r C It generates and the control unit 150 of the initial generation device 10 then generates a verifier v containing the generated verification information. A (D A ,(D B,pk B,CH ,r B ,h B ),(D C ,pk C,CH ,r C ,h C The control unit 150 of the initial generation device 10 generates a signature σ. The control unit 150 of the initial generation device 10 generates document D. 1、 Verifier v A The signature σ is then transmitted to intermediate generators 20-1 and 20-2.

[0151] The control unit 250 of the intermediate generation device 20-1 changes the area that can be modified by the modifier B, and D B to E B ||D D The modified document is generated. At this time, the modifier B designates the next modifier as modifier D. Accordingly, the control unit 250 of the intermediate generation device 20-1 generates the modified content E B The corresponding validation parameter r B 'and the original content D D Verification information corresponding to h D and verification parameter r C Next, the control unit 250 of the intermediate generation device 20-1 generates a verifier v containing the generated information for verification. B It generates the modified document. The control unit 250 of the intermediate generation device 20-1 then generates the modified document. 、 Verifier v B The signature σ is then transmitted to the termination generator 30-1.

[0152] The control unit 250 of the intermediate generation device 20-2 changes the area that can be modified by the modifier C, and D C to E C ||D E ||D F The modified document is generated. At this time, the modifier C designates the next modifiers as modifiers E and F. Accordingly, the control unit 250 of the intermediate generation device 20-2 generates the modified content E C The corresponding validation parameter r C 'and the original content D E Verification information corresponding to h E and verification parameter rE And, the content D before the change F Verification information corresponding to h F and verification parameter r F Next, the control unit 250 of the intermediate generation device 20-2 generates a verifier v containing the generated information for verification. C It generates the modified document. The control unit 250 of the intermediate generation device 20-2 then generates the modified document. 、 Verifier v C The signature σ is then transmitted to the termination generators 30-2 and 30-3.

[0153] The control units 350 of each termination generation device 30-1, 30-2, and 30-3 execute the process shown in Figure 14 to generate the modified document and verifier. The control units 350 of each termination generation device 30-1, 30-2, and 30-3 then transmit the modified document, modified verifier, and signature σ to the verification device 40.

[0154] The control unit 450 of the verification device 40 receives the documents, verifiers, and signature σ generated by each terminal generation device 30-1, 30-2, and 30-3. Based on the received data, the control unit 450 of the verification device 40 performs verification of content changes and signature σ by each modifier.

[0155] The verification device 40 may use the final document generated by integrating the documents generated by each termination generation device 30-1, 30-2, and 30-3, instead of the documents generated by each termination generation device 30-1, 30-2, and 30-3.

[0156] Figure 20 shows an example of the configuration of the final document according to Embodiment 3. The final document is in an unchangeable area A. A Content D A And area A that modifier B can modify. B The content and area A that can be modified by modifier C. C This will be linked to the content of the final document. B The content is Content E B And, Content E D This is content that is linked to and. Region A in the final document CThe content is Content E C And, Content E E And, Content E F This is content that is a combination of [two elements].

[0157] Thus, according to Embodiment 3, the creator or modifier can designate multiple modifiers. Therefore, the range of modification rules that the creator or modifier can determine is broadened, increasing the system's flexibility.

[0158] Furthermore, this disclosure can be implemented by having a processor execute a computer program to perform any desired process.

[0159] In the examples described above, the program includes a set of instructions (or software code) that, when loaded into a computer, cause the computer to perform one or more of the functions described in the embodiments. The program may be stored on a non-temporary computer-readable medium or a physical storage medium. Examples, but not limited to, include random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD) or other memory technologies, CD-ROM, digital versatile disc (DVD), Blu-ray® disc or other optical disc storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage devices. The program may be transmitted over a temporary computer-readable medium or a communication medium. Examples, but not limited to, include temporary computer-readable medium or a communication medium that includes electrically, optically, acoustically or otherwise propagating signals.

[0160] Furthermore, this disclosure is not limited to the embodiments described above, and can be modified as appropriate without departing from the spirit of the invention. For example, in embodiments 2 and 3 described above, the intermediate generation device 20 and the terminal generation device 30 are described as separate devices, but one device may have both the functions of the intermediate generation device 20 and the terminal generation device 30. Specifically, the control unit 250 of the intermediate generation device 20 corresponding to modifier B may generate the second verification information and the second verification parameters when modifier B designates modifier C as the next modifier, and not generate them when modifier C is not designated. This allows the modifier to decide whether or not to designate the next modifier, increasing the flexibility of the system.

[0161] Furthermore, in embodiments 2 and 3 described above, the intermediate generation device 20 and the terminal generation device 30 modified the document through the operator's actions. However, a different external device (not shown) may also modify the document through the operator's actions. In this case, the intermediate generation device 20 and the terminal generation device 30 may obtain the modified document from the external device.

[0162] Furthermore, in embodiments 2 and 3 described above, the initial generation device 10 is assumed to create the document through the creator's operation. However, a different external device may create the document through the creator's operation. In this case, the initial generation device 10 may obtain the document created by the external device from that external device.

[0163] Furthermore, in the embodiments 2 to 3 described above, the modifier B corresponding to the intermediate generation device 20 is the region A that it can modify. B You may specify that the next modifier can modify all of the above. In this case, in the above explanation, area A B Content E included B This will become empty content. Also, the content D before the change. C This may be content created by creator A, or it may be content after it has been partially or completely modified by modifier B.

[0164] Furthermore, in embodiments 2 and 3 described above, the creator may not specify any area within the document area that the next modifier cannot modify, but rather specify that the entire document area created can be modified by the next modifier. In this case, area A in the above description A Content D A This will be empty content.

[0165] Some or all of the above embodiments may also be described as follows, but are not limited to the following: (Note 1) Generate second validation information and second validation parameters corresponding to the content of the second area, which is an area where a second modifier can modify the content, which is at least a portion of the first area, which is an area where a first modifier can modify the content. Obtain the first verification information and first verification parameters corresponding to the content of the first area before modification. The first validation parameter is modified to correspond to the first validation information and the modified content of the first area. A generating device equipped with control means. (Note 2) The control means is Based on the content of the second area and the information of the second modifier, the second verification information and the second verification parameters are generated. The first verification parameter is modified based on the secret information paired with the information of the first modifier, the first verification information, the modified content of the first area, and the second verification information. The generating apparatus described in Appendix 1. (Note 3) The control means is Select the second validation parameter from a predetermined group, Using the second verification parameter and the hash value of the content of the second region, the second verification information is generated. The first verification parameter is modified using the hash value of the data including the modified content of the first region and the second verification information. The generating apparatus described in Appendix 2. (Note 4) The control means is When the designation of the second modifier is received from the first modifier, the second verification information and the second verification parameters are generated. If the designation of the second modifier is not accepted from the first modifier, the second verification information and the second verification parameters will not be generated. A generating apparatus as described in any one of the items 1 to 3 of the appendix. (Note 5) The control means receives the designation of the second area from the first modifier. A generating apparatus as described in any one of the appendices 1 to 4. (Note 6) The control means further generates third verification information and third verification parameters corresponding to the content of a third region, which is at least a part of the first region and is a region where a third modifier can modify the content. A generating apparatus as described in any one of the items 1 to 5 of the appendix. (Note 7) The control means is Obtain data from which the content of the fourth area that the first modifier cannot change and the content of the first area before the change can be extracted. Generate data from which the content of the fourth region, the modified content of the first region, and the content of the second region can be extracted. A generating apparatus as described in any one of the appendices 1 to 6. (Note 8) The control means is Data relating the modified content of the first region, the first verification information, and the modified first verification parameters, Data relating the content of the second domain, the second verification information, and the second verification parameters, and Generate a validator that includes A generating apparatus as described in any one of the appendices 1 to 7. (Note 9) The control means is Obtain the digital signature of the creator who created the content in the first area described above. Output the aforementioned digital signature A generating apparatus as described in any one of the appendices 1 to 8. (Note 10) The following are obtained: the modified content of a first area, which is an area where a first modifier can modify the content; first verification information and first verification parameters corresponding to the modified content of the first area; and second verification information corresponding to the pre-modification content of a second area, which is at least a part of the first area and is an area where a second modifier can modify the content. Based on the information of the first modifier, the modified content of the acquired first area, the first verification information and the first verification parameters, and the second verification information, the modification of the content by the first modifier is verified. A verification device equipped with control means. (Note 11) The control means is Further obtain the modified content of the second area and the second verification parameter corresponding to the modified content of the second area. Based on the information of the second modifier, the modified content of the acquired second area, the second verification information, and the second verification parameters, the modification of the content by the second modifier is verified. The verification device described in Appendix 10. (Note 12) The control means is Obtain a digital signature created on the data based on the content of the fourth area which the first modifier cannot modify and the first verification information, The digital signature is verified based on the content of the fourth area, the first verification information, and the information of the creator who created the content of the fourth area and the content of the first area. Verification device as described in Appendix 10 or 11. (Note 13) One or more generating devices, Verification device and Equipped with, Corresponding to each of the one or more generating devices, a first modifier, a second modifier, a first area in which the first modifier can modify the content, and a second area in which the second modifier can modify the content, which is at least a part of the first area, are defined. Each of the one or more generating devices is: Second verification information and second verification parameters are generated corresponding to the content of the second area before modification. Obtain the first verification information and first verification parameters corresponding to the content of the first area before modification. The first verification parameter is modified to correspond to the first verification information and the modified content of the first area. The verification device is For at least one of the generating devices, the modification of the content by the first modifier is verified based on the information of the first modifier, the modified content of the first area, the first verification information, the modified first verification parameters, and the second verification information. system. (Note 14) The second verification information and the second verification parameters generated by at least one of the generating devices are acquired. The second verification parameter is modified to correspond to the second verification information and the modified content of the second area corresponding to the generator. Further equipped with a termination device, The verification device is The modified content of the second area corresponding to the generation device, the second verification information, and the modified second verification parameters are obtained. Based on the information of the second modifier, the modified content of the second area, the second verification information, and the modified second verification parameters, the changes to the content by the second modifier are verified. The system described in Appendix 13. (Note 15) The first area is determined from the document area created by the creator, Based on the content of the first area before modification and the information of the first modifier, the first verification information and the first verification parameters are generated. Further equipped with an initial generation device The system described in Appendix 13 or 14. (Note 16) The initial generation device is, A digital signature is generated using the author's confidential information for the data based on the content of the fourth area of ​​the document area that the first modifier cannot modify, and the first verification information. The verification device verifies the digital signature based on the content of the fourth area, the first verification information, and the information corresponding to the creator's secret information. The system described in Appendix 15. (Note 17) Generate second validation information and second validation parameters corresponding to the content of the second area, which is an area where a second modifier can modify the content, which is at least a portion of the first area, which is an area where a first modifier can modify the content. Obtain the first verification information and first verification parameters corresponding to the content of the first area before modification. The first validation parameter is modified to correspond to the first validation information and the modified content of the first area. Methods for generating information. (Note 18) On the computer, To generate second validation information and second validation parameters corresponding to the content of a second area, which is an area where a second modifier can modify content, which is at least a portion of the first area, which is an area where a first modifier can modify content, Obtaining first verification information and first verification parameters corresponding to the content of the first area before modification, The first verification parameter is modified to correspond to the first verification information and the modified content of the first area. A non-temporary, computer-readable medium containing a program to execute something. (Note 19) The following are obtained: the modified content of a first area, which is an area where a first modifier can modify the content; first verification information and first verification parameters corresponding to the modified content of the first area; and second verification information corresponding to the pre-modification content of a second area, which is at least a part of the first area and is an area where a second modifier can modify the content. Based on the information of the first modifier, the modified content of the acquired first area, the first verification information and the first verification parameters, and the second verification information, the modification of the content by the first modifier is verified. Verification method. (Note 20) On the computer, To obtain the modified content of a first area, which is an area where a first modifier can modify the content; first verification information and first verification parameters corresponding to the modified content of the first area; and second verification information corresponding to the pre-modification content of a second area, which is at least a part of the first area and is an area where a second modifier can modify the content. Based on the information of the first modifier, the modified content of the acquired first area, the first verification information and the first verification parameters, and the second verification information, the modification of the content by the first modifier is verified. A non-temporary, computer-readable medium containing a program to execute something. [Explanation of Symbols]

[0166] 1 generator 2 Storage section 3. Control Unit 4. Verification device 5 Storage section 6. Control Unit 10 Initial generator 100 Storage section 101 Programs 110 memory 120 Communications Department 130 Input section 140 Display section 150 Control Unit 20 Intermediate generator 200 Storage section 201 Program 210 memory 220 Communications Department 230 Input section 240 Display section 250 Control Unit 30 Termination generator 300 Storage section 301 Program 310 memory 320 Communications Department 330 Input section 340 Display section 350 Control Unit 40 Verification device 400 Storage section 401 Program 410 memory 420 Communications Department 430 Input section 440 Display section 450 Control Unit 600 images 1000,1000a system

Claims

1. Corresponding to the content of the modification-permitted area, which is an area where a modifier can modify the content, first verification information and first verification parameters for enabling the modifier to modify the content of the modification-permitted area are generated by a calculation using a chameleon hash based on the content of the modification-permitted area and the information of the modifier. The first information processing device generates a digital signature using the creator's confidential information for data that includes the content of a modification-restricted area, which is an area where the modifier cannot modify the content, and the first verification information. system.

2. The system according to claim 1, further comprising a second information processing device that modifies the first verification parameter by calculation using the chameleon hash based on secret information paired with the information of the modifier, so that it corresponds to the first verification information and the modified content of the modification permission area.

3. The system according to claim 1 or 2, further comprising a third information processing device that verifies the digital signature based on information paired with the creator's confidential information, the content of the modification restriction area, and the first verification information.

4. The first computer, Corresponding to the content of the modification-permitted area, which is an area where a modifier can modify the content, first verification information and first verification parameters for enabling the modifier to modify the content of the modification-permitted area are generated by a calculation using a chameleon hash based on the content of the modification-permitted area and the information of the modifier. A digital signature is generated using the creator's confidential information for data that includes the content of a modification-restricted area, which is an area where the modifier cannot modify the content, and the first verification information. Methods for generating information.

5. The method for generating information according to claim 4, wherein a second computer modifies the first verification parameter by performing a calculation using the chameleon hash based on secret information paired with the information of the modifier, so that it corresponds to the first verification information and the modified content of the modification permission area.

6. The method for generating information according to claim 4 or 5, wherein a third computer verifies the digital signature based on the information paired with the creator's confidential information, the content of the modification restriction area, and the first verification information.

7. On the computer, Corresponding to the content of the modification permission area, which is an area where a modifier can modify the content, first verification information and first verification parameters for enabling the modifier to modify the content of the modification permission area are generated by a calculation using a chameleon hash based on the content of the modification permission area and the information of the modifier. A digital signature is generated using the creator's confidential information for data that includes the content of a modification-restricted area, which is an area where the modifier cannot modify the content, and the first verification information. A program that performs an action.

8. On the computer, The first verification parameter is modified by a calculation using the chameleon hash based on the secret information paired with the information of the modifier, so that it corresponds to the first verification information and the modified content of the modification permission area. The program according to claim 7 that causes the following to be performed.

9. On the computer, The digital signature is verified based on the information paired with the creator's confidential information, the content of the modification restriction area, and the first verification information. A program according to claim 7 or 8 that causes to perform the following.

Citation Information

Patent Citations

  • Verification method, program, and information processing device

    JP2021114201A