WO2019207804A1 - 改ざん検出システム及び改ざん検出方法 - Google Patents

改ざん検出システム及び改ざん検出方法 Download PDF

Info

Publication number
WO2019207804A1
WO2019207804A1 PCT/JP2018/017331 JP2018017331W WO2019207804A1 WO 2019207804 A1 WO2019207804 A1 WO 2019207804A1 JP 2018017331 W JP2018017331 W JP 2018017331W WO 2019207804 A1 WO2019207804 A1 WO 2019207804A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
hash
transaction record
block chain
transaction
Prior art date
Application number
PCT/JP2018/017331
Other languages
English (en)
French (fr)
Inventor
浩太郎 遠藤
Original Assignee
株式会社東芝
東芝デジタルソリューションズ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社東芝, 東芝デジタルソリューションズ株式会社 filed Critical 株式会社東芝
Priority to PCT/JP2018/017331 priority Critical patent/WO2019207804A1/ja
Priority to CN201880091348.2A priority patent/CN111869159B/zh
Priority to JP2020515460A priority patent/JP6989694B2/ja
Publication of WO2019207804A1 publication Critical patent/WO2019207804A1/ja
Priority to US17/019,478 priority patent/US11424935B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity

Definitions

  • Embodiments of the present invention relate to a falsification detection system and a falsification detection method.
  • Cryptocurrency represented by Bitcoin has been put into practical use.
  • Cryptocurrency remittance records are stored in an electronic ledger called a blockchain.
  • it is difficult to tamper with the blockchain due to the adoption of a method called Proof of Work.
  • Proof of Work is the basis of bitcoin safety.
  • An electronic contract technology called smart contract has also been put into practical use as a blockchain.
  • a method of maintaining the consistency of blockchain among multiple peers has been put into practical use by a general consensus algorithm that does not use Proof of Work. Such a block chain is called a permissioned block chain.
  • the tampering detection system is a tampering detection system including one or more first terminals connectable to one or more of one or more peers and a detection device, and the first terminal is connected to the peer from the peers.
  • a first signature target data including an acquisition unit that acquires a block hash included in a block chain, the block hash and data based on transaction contents of the first terminal, and the first signature target data.
  • the electronic signature included in the transaction record is not valid, or the same block hash as the block hash included in the first transaction record included in the block. If the hash is not included in the block chain, and a detector for detecting a tampering of said block chain.
  • FIG. 1 is a diagram illustrating an example of a functional configuration of a falsification detection system according to an embodiment.
  • FIG. 2 is a diagram illustrating an example of a data structure of a block chain according to the embodiment.
  • FIG. 3 is a flowchart illustrating an operation example of the terminal according to the embodiment.
  • FIG. 4 is a flowchart illustrating an operation example of the peer according to the embodiment.
  • FIG. 5 is a diagram illustrating an operation example of the detection unit according to the embodiment.
  • FIG. 6 is a diagram illustrating an example of a block hash calculation method according to the first modification of the embodiment.
  • FIG. 7 is a diagram illustrating an example of a data structure of a block chain according to the first modification of the embodiment.
  • FIG. 8 is a diagram illustrating an operation example of the detection unit according to the first modification of the embodiment.
  • FIG. 9 is a diagram illustrating an example of a hardware configuration of the terminal, the peer, and the detection device according to the embodiment.
  • FIG. 1 is a diagram illustrating an example of a functional configuration of a falsification detection system 100 according to the embodiment.
  • the tampering detection system 100 includes a terminal 10, a peer 20, and a detection device 30.
  • the terminal 10, the peer 20, and the detection device 30 are connected via a network such as the Internet.
  • the terminal 10 is, for example, a smart device or a personal computer used by a user.
  • the peer 20 is a computer that stores a block chain.
  • a blockchain is an electronic ledger that includes one or more transaction records.
  • the detection device 30 is a device that detects falsification of the block chain stored in the peer 20.
  • FIG. 2 is a diagram illustrating an example of the data structure of the block chain according to the embodiment.
  • the structure of the block chain is a chain shape will be described.
  • the structure of the block chain is not limited to a chain shape.
  • An example where the structure of the block chain is not a chain will be described later in Modification 1 of the embodiment.
  • n indicates data related to the nth block.
  • the block 50n indicates the nth block
  • the block 50n-3 indicates the n-3th block.
  • the block hash 51n indicates the block hash of the nth block 50n
  • the block hash 51n-1 indicates the block hash of the n-1th block 50n-1
  • the block hash 51n-3 indicates n ⁇ .
  • a block hash of the third block 50n-3 is shown
  • a block hash 51n-4 is a block hash of the n-4th block 50n-4. In the following description, when n is not distinguished, n is omitted.
  • the block chain of the embodiment is created by adding a block 50 in which a plurality of transaction records 53 are collected in time series. Each block 50 is given a block number 52 in ascending order of time series. The block number 52 is used to specify the block 50 included in the block chain.
  • Block 50n includes a block hash 51n, a block hash 51n-1 of the previous block 50n-1, a transaction record 53n of 0 or more, and a block number 52n of the block 50n.
  • the block hash 51n is a hash value calculated from the block hash 51n-1 of the previous block 50n-1, the transaction record 53n of 0 or more, and the block number 52n of the block 50n.
  • the hash value is a value calculated by a hash function (for example, SHA-256 or the like) that is difficult to reversely calculate an input value from an output value (hash value) and has a very low probability of hash collision.
  • the block hash 51n is calculated when the block 50n is generated.
  • block number 52n-3 included in the transaction record 53n is not essential. If the transaction record 53n includes the block number 52n-3, the process of specifying the target block hash 51n-3 included in the block chain can be made faster.
  • the set of transaction records 53 to be calculated by the block hash 51 includes all transaction records 53 before the block 50 including the transaction record 53. It is believed that there is. Therefore, for example, when a falsification that deletes the past transaction record 53 is performed, all the block hashes 51 after the block 50 including the transaction record 53 that has been falsified change.
  • the tampering detection system 100 of the embodiment is a system that makes it easier to detect tampering when a legitimate blockchain is tampered later after being stored in the peer 20.
  • the block hash 51 can be theoretically recalculated from a set of all transaction records 53. However, for the purpose of improving processing efficiency, the block hash 51 is transferred to the peer 20 together with the transaction records 53 for each block 50.
  • the block hash 51 is transferred to the peer 20 together with the transaction records 53 for each block 50.
  • calculation method of the block hash 51 may be arbitrary.
  • the calculation method of the block hash 51 of the embodiment is assumed to be a calculation method with fewer restrictions than the Proof of Work method, but may be the Proof of Work method.
  • the details of the operation of the terminal 10 will be described next.
  • the case where there is one terminal 10 is described, but there may be a plurality of terminals 10. That is, the number of terminals 10 communicating with the peer 20 may be arbitrary.
  • the terminal 10 includes a reception unit 11, an acquisition unit 12, a generation unit 13, and a transmission unit 14. Details of operations of the reception unit 11, the acquisition unit 12, the generation unit 13, and the transmission unit 14 will be described with reference to the flowchart of FIG.
  • FIG. 3 is a flowchart illustrating an operation example of the terminal 10 according to the embodiment.
  • the receiving unit 11 when the receiving unit 11 receives an input of data indicating the transaction content 54n from the user (step S1), the receiving unit 11 inputs the data to the generating unit 13.
  • the transaction content 54n may be arbitrary.
  • the transaction content 54n indicates, for example, remittance of cryptocurrency.
  • the acquiring unit 12 acquires the block hash 51n-k included in the block chain and the block number 52n-k of the block 50n-k including the block hash 51n-k from the peer 20 (step S2). .
  • k 3.
  • the acquisition unit 12 may acquire the block hash 51n-k and the block number 52n-k when the generation unit 13 receives the acquisition request from the generation unit 13 when generating the transaction record 53. .
  • the acquisition unit 12 may passively acquire the block hash 51n-k and the block number 52n-k from the peer 20 when the peer 20 transmits the block hash 51n-k and the block number 52n-k. .
  • the acquisition unit 12 may acquire a newer block hash 51n-k based on the time when the block hash 51 is generated among the block hashes 51 included in the block chain.
  • the acquiring unit 12 may replace the block hash 51 included in the block chain with the block hash 51 in which more transaction records 53 already stored in the block chain are used for the hash calculation, as a newer block hash 51n ⁇ . You may acquire as k.
  • the acquisition unit 12 inputs the acquired block hash 51n-k and block number 52n-k to the generation unit 13.
  • the generation unit 13 receives data indicating the transaction content 54n from the reception unit 11, and receives the block hash 51n-k and the block number 52n-k from the acquisition unit 12.
  • the generation unit 13 generates the electronic signature 55n of the block hash 51n-k, the block number 52n-k, and the transaction content 54n using the secret key of the terminal 10.
  • the generation unit 13 generates a transaction record 53n (first transaction record) including the block hash 51n-k, the block number 52n-k, the transaction content 54n, and the electronic signature 55n (step S3), and the transaction record 53n Is input to the transmitter 14.
  • the transmission unit 14 transmits the transaction record 53n to the peer 20 (step S4).
  • the details of the operation of the peer 20 will be described next.
  • the case where there is one peer 20 is described, but there may be a plurality of peers 20.
  • a plurality of peer administrators may operate one or more peers 20 each.
  • the peer 20 includes a transmission unit 21, a reception unit 22, a storage control unit 23, and a storage unit 24. Details of operations of the transmission unit 21, the reception unit 22, the storage control unit 23, and the storage unit 24 will be described with reference to the flowchart of FIG.
  • FIG. 4 is a flowchart illustrating an operation example of the peer 20 according to the embodiment.
  • the storage control unit 23 determines whether or not the electronic signature 55n included in the transaction record 53n is valid (step S12). When the electronic signature 55n is not valid (No at Step S12), that is, when the transaction record 53n has already been tampered with, the storage control unit 23 discards the transaction record 53n (Step S14).
  • step S12 If the electronic signature is valid (step S12, Yes), the storage control unit 23 uses the block number 52n-k included in the transaction record 53n to identify the block hash 51n-k stored in the block chain. Then, it is determined whether or not the identified block hash 51n-k matches the block hash 51n-k included in the transaction record 53n (step S13). If they do not match (No at Step S13), the storage control unit 23 discards the transaction record 53n (Step S14). The processing of steps S12 and S13 ensures that the transaction record 53n received by the processing of step S11 has not been tampered with when stored in the peer 20.
  • the storage control unit 23 determines whether to generate the block 50n (step S15).
  • the transaction record 53n included in the block 50n is not limited to one, and may be plural. Therefore, for example, when a predetermined number of transaction records 53n are accumulated, the storage control unit 23 generates a block 50n including the predetermined number of transaction records 53n.
  • the storage control unit 23 When the block 50n is not generated (No at Step S15), the storage control unit 23 accumulates the transaction record 53n received by the process at Step S11 in a buffer or the like of the storage control unit 23 (Step S16).
  • the storage control unit 23 When the block 50n is generated (step S15, Yes), the storage control unit 23 includes the transaction record 53n accumulated in the buffer or the like of the storage control unit 23 and the transaction record 53n received by the process of step S11. A block 50n is generated, and the block 50n is stored in the block chain of the storage unit 24 (step S17).
  • the transmission unit 21 transmits the block number 52n of the block 50n generated by the process of step S17 and the block hash 51n included in the block 50n to the terminal 10 (step S18).
  • the block hash 51n and the block number 52n transmitted in step S18 are used in the transaction record 53 included in the (n + 1) th and subsequent blocks.
  • the process of step S18 may be omitted.
  • the acquisition unit 12 of the terminal 10 autonomously acquires the block hash 51n + 1-k and the block number 52n + 1-k when generating the transaction record 53 included in the (n + 1) th and subsequent blocks, in step S18 Processing is omitted.
  • the details of the operation of the detection device 30 will be described next.
  • the case where there is one detection device 30 is described, but there may be a plurality of detection devices 30.
  • the detection device 30 includes a reception unit 31 and a detection unit 32.
  • a reception unit 31 and a detection unit 32.
  • the detection device 30 by providing the detection device 30 outside the peer 20, it is possible to detect alteration of the block chain stored in the peer 20 by an auditor independent of the administrator of the peer 20.
  • the detecting unit 32 detects each block 50 of the block chain to detect tampering of the block chain.
  • FIG. 5 is a diagram illustrating an operation example of the detection unit 32 according to the embodiment.
  • tx of FIG. 5 represents the transaction record 53 (transaction).
  • the detection unit 32 recalculates the block hashes 51 included in all the blocks 50 and determines whether or not the hash value obtained by the recalculation matches the block hashes 51 included in the blocks 50. (FIG. 5, 1st to 5th lines). When the hash value obtained by recalculation does not match the block hash 51 included in the block 50, the detection unit 32 detects tampering of the block chain.
  • the detection unit 32 determines whether or not the electronic signature 55 included in the transaction record 53 included in all the blocks 50 of the block chain is valid (FIG. 5, line 8). When the electronic signature 55 included in the transaction record 53 included in the block of the block chain is not valid, the detection unit 32 detects tampering of the block chain.
  • the detection unit 32 detects tampering of the block chain. Specifically, the detection unit 32 determines whether or not the block hash 51 of the block 50 identified from the block chain using the block number 52 included in the transaction record 53 matches the block hash 51 included in the transaction record. Is determined (FIG. 5, lines 9 to 12). If the block hash 51 of the identified block 50 does not match the block hash 51 included in the transaction record, the detection unit 32 detects block chain tampering.
  • the order of processing for detecting falsification shown in FIG. 5 is an example, and the order of processing for detecting falsification may be arbitrary.
  • the falsification detection system 100 includes one or more terminals 10 (first terminals) that can be connected to any one or more of the peers 20 and the detection device 30.
  • the acquisition unit 12 acquires the block hash 51 included in the block chain from the peer 20.
  • the transmission unit 14 includes signature target data (first signature target data) including the block hash 51 and data based on the transaction content 54 of the terminal 10 (in the embodiment, the transaction content 54 itself), and signature target data.
  • the transaction record 53 (first transaction record) including the electronic signature 55 is transmitted to the peer 20.
  • the reception unit 31 receives a block chain from the peer 20.
  • the detection unit 32 determines that the electronic signature 55 included in the transaction record 53 included in the block 50 of the block chain is not valid, or the same block hash 51 as the block hash 51 included in the transaction record 53 included in the block 50 exists. If it is not included in the blockchain, tampering with the blockchain is detected.
  • falsification detection system 100 of the embodiment falsification of the block chain can be detected more easily.
  • the block hash 51 is uniquely determined with a probability that the composition of the transaction record 53 to be calculated can be regarded as almost 100%. That is, if the transaction record 53 is added, deleted, or changed in order, the block hash 51 included in the transaction record 53 of the embodiment is included in the block chain with a probability that it can be regarded as almost 100%. It does not match the block hash 51.
  • the transaction log 53 of the bona fide user can be expected not to have been falsified if the validity of the electronic signature 55 is confirmed. Because a bona fide user needs to digitally sign the altered data).
  • the block chain in which tampering is not detected by the detection unit 32 of the embodiment includes the transaction record 53 of a bona fide user, and the block chain is tampered regardless of the trust of the peer administrator. Expected not to have been.
  • the embodiment it is possible to verify that the block chain has not been falsified as the number of bona fide users using the block chain increases regardless of the trust of the peer administrator.
  • a typical example of a bona fide user is the auditor himself trying to verify.
  • the block chain structure is generalized. For example, if the Proof of Work system is not used, the block chain structure does not need to be a chain and the block number 52 is not necessary. It is essential that the block hash can be calculated from the previous transaction record 53 included in the block chain, and there is a degree of freedom in the calculation method and the selection method of the transaction record 53 used for the calculation.
  • Modification 1 describes a case where a hash value (block hash 51) is calculated from the previous transaction record 53 by calculating a tree structure called a hash tree (Mercle Tree).
  • FIG. 6 is a diagram illustrating an example of a calculation method of the block hash 51 according to the first modification of the embodiment.
  • the example of FIG. 6 shows a case where a hash tree including hash values 101a to 101f, 201a to 201c, and 301a is used.
  • the storage control unit 23 calculates the block hash 51 using the hash values 201 c and 301 a as the block hash 51 based on the previous transaction record 53.
  • the obtained block hash 51 is connected to the hash tree, and the hash tree is updated.
  • the detection unit 32 searches the hash tree (block hash 51) included in the transaction record 53 of each block 50, and whether the hash value is included in the hash tree. Determine whether or not.
  • hash trees are used for hash calculation in blocks, but the blocks have a chain structure.
  • a hash tree is also used for connecting blocks. Since the block connection relationship has a hash tree structure, for example, it is possible to shorten the time for verifying that a specific transaction record 53 (specific block hash 51) is included in the block chain.
  • the transaction record 53 includes a transaction content 54, an electronic signature 55, a transaction record number 56, a time 57, an execution result 58, a hash value 59, and a hash value 201a.
  • the signature target data of the electronic signature 55 is a hash value 59 and a hash value 201a.
  • the hash value 101b connected to the hash tree is calculated from the transaction record number 56, time 57, execution result 58, hash value 59, and hash value 201a.
  • FIG. 7 is a diagram illustrating an example of the data structure of the block chain according to the first modification of the embodiment.
  • the block chain has a tree structure (see FIG. 6).
  • x and y indicate data relating to a specific block included in the hash tree. In the following description, when the blocks are not distinguished, x and y are omitted.
  • the block chain of Modification 1 is created by adding a block 50 in which a plurality of transaction records 53 are collected to a hash tree.
  • the block 50y includes a block hash 51y, a hash value 201z, a hash value 301w, and one or more transaction records 53y.
  • the hash values 201z and 301w are hash values included in the hash tree (a block hash 51 calculated based on the past transaction record 53).
  • the block hash 51y is a hash value calculated from the hash value 201z, the hash value 301w, and one or more transaction records 53y.
  • the block hash 51y is calculated when the block 50y is generated.
  • the transaction record 53y includes a block hash 51x, an electronic signature 55y, a transaction record number 56y, a time 57y, an execution result 58y, and a hash value 59y.
  • the hash value 59y is a hash value calculated from the transaction content 54y.
  • FIG. 8 is a diagram illustrating an operation example of the detection unit 32 according to the first modification of the embodiment. Note that tx in FIG. 8 represents a transaction record 53 (transaction).
  • the detection unit 32 recalculates the block hash 51 stored in the hash tree, and whether or not the hash value obtained by the recalculation matches the block hash 51 stored in the hash tree. (FIG. 8, 1st to 5th lines). When the hash value obtained by recalculation does not match the block hash 51 stored in the hash tree, the detection unit 32 detects tampering of the block chain.
  • the detection unit 32 determines whether or not the electronic signature 55 included in the transaction record 53 of the block 50 connected in a tree structure is valid (line 7 in FIG. 5). When the electronic signature 55 included in the transaction record 53 is not valid, the detection unit 32 detects tampering with the block chain.
  • the detection unit 32 detects tampering of the block chain (FIGS. 5 and 8). Eyes-10th line).
  • the block chain can be verified without disclosing the transaction content 54 itself.
  • an operation when the terminal 10 (first terminal) of the embodiment and a terminal (second terminal) that generates a transaction record that does not include the block hash 51 and the block number 52 are mixed will be described. Specifically, for example, an operation in a system transition period in which a terminal that generates a transaction record that does not include the block hash 51 and the block number 52 is sequentially transferred to the terminal 10 (first terminal) of the embodiment will be described. .
  • the first terminal transmits the first transaction record (the transaction record 53n including the block hash 51n-k, the block number 52n-k, the transaction content 54n, and the electronic signature 55n) to the peer 20.
  • the first transaction record (the transaction record 53n including the block hash 51n-k, the block number 52n-k, the transaction content 54n, and the electronic signature 55n) to the peer 20.
  • the second terminal receives the signature target data (second signature target data) including the transaction content of the second terminal, and the transaction record (second transaction record) including the electronic signature of the signature target data. 20 to send.
  • the storage control unit 23 of the peer 20 stores a block including at least one of the first and second transaction records in the block chain.
  • the storage control unit 23 executes the process of step S13 described above for the first transaction record, and does not execute the process of step S13 described above for the second transaction record.
  • a bona fide user when the bona fide user registers the first transaction record at a certain frequency or more, the same effect as the embodiment is maintained.
  • a bona fide user is a user who gives an electronic signature to a transaction record, is independent of a peer administrator, and is a person who does not gain profit by falsifying a block chain.
  • the detection unit 32 can detect tampering even when the transaction record 53 of a specific user is not regularly stored in the block chain. For example, when a malicious user falsifies the transaction record 53 and a part or all of the transaction record 53 that should be stored in the block chain is not stored, the block chain is falsified. Is discovered.
  • alteration detection system 100 may be operated in the form of the above-described modification 2 by causing only a specific user to use the terminal 10 of the embodiment. In this case, detection of alteration of the block chain is performed. Will rely entirely on the trust of a particular user.
  • FIG. 9 is a diagram illustrating an example of a hardware configuration of the terminal 10, the peer 20, and the detection device 30 according to the embodiment.
  • the terminal 10, the peer 20, and the detection device 30 include a control device 401, a main storage device 402, an auxiliary storage device 403, a display device 404, an input device 405, and a communication device 406.
  • the control device 401, main storage device 402, auxiliary storage device 403, display device 404, input device 405, and communication device 406 are connected via a bus 410.
  • the control device 401 executes the program read from the auxiliary storage device 403 to the main storage device 402.
  • the main storage device 402 is a memory such as a ROM (Read Only Memory) and a RAM (Random Access Memory).
  • the auxiliary storage device 403 is an HDD (Hard Disk Drive), a memory card, or the like.
  • the display device 404 displays information.
  • the display device 404 is, for example, a liquid crystal display.
  • the input device 405 is an interface that accepts input.
  • the input device 405 is, for example, a keyboard and a mouse.
  • the display device 404 and the input device 405 may be a touch panel having a display function and an input function.
  • the communication device 406 is an interface for communicating with other devices.
  • the program executed by the terminal 10, the peer 20, and the detection device 30 according to the embodiment is an installable or executable file and can be read by a computer such as a CD-ROM, a memory card, a CD-R, and a DVD. It is recorded on a storage medium and provided as a computer program product.
  • the program executed by the terminal 10, the peer 20, and the detection device 30 of the embodiment may be stored on a computer connected to a network such as the Internet and provided by being downloaded via the network. .
  • programs of the terminal 10, the peer 20, and the detection device 30 of the embodiment may be configured to be provided by being incorporated in advance in a ROM or the like.
  • the program executed by the terminal 10, the peer 20, and the detection device 30 of the embodiment has a module configuration including functional blocks that can be realized by the program among the functional blocks of FIG. 1 described above.
  • the functional blocks are loaded onto the main storage device 402 when the control device 401 reads out and executes the program from the storage medium. That is, each functional block is generated on the main storage device 402.
  • each processor may realize one of the functions, or may realize two or more of the functions.
  • the operation modes of the terminal 10, the peer 20, and the detection device 30 of the embodiment may be arbitrary.
  • the terminal 10, the peer 20, and the detection device 30 according to the embodiment may be operated as devices constituting a cloud system on a network.
  • the data structure used in the calculation of the hash value is not limited to the chain structure and the tree structure.
  • the hash value calculation method can be variously modified such as calculation by various topologies, combinations of these calculations, and recursive use of the calculation results.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

実施形態の改ざん検出システムは、1以上のピアのいずれかに接続可能な1以上の第1の端末と、前記1以上の検出装置とを備える改ざん検出システムであって、前記第1の端末は、前記ピアから、ブロックチェーンに含まれるブロックハッシュを取得する取得部と、前記ブロックハッシュと前記第1の端末の取引内容に基づくデータとを含む第1の署名対象データ、及び、前記第1の署名対象データの電子署名を含む第1の取引記録を、前記ピアに送信する送信部とを備え、前記検出装置は、前記ピアから前記ブロックチェーンを受信する受信部と、前記ブロックチェーンのブロックに含まれる第1の取引記録に含まれる前記電子署名が有効でない、または、前記ブロックに含まれる前記第1の取引記録に含まれる前記ブロックハッシュと同じブロックハッシュが前記ブロックチェーンに含まれていない場合、前記ブロックチェーンの改ざんを検出する検出部と、を備える。

Description

改ざん検出システム及び改ざん検出方法
 本発明の実施形態は改ざん検出システム及び改ざん検出方法に関する。
 ビットコイン(Bitcoin)に代表される暗号通貨が実用化されている。暗号通貨の送金記録は、ブロックチェーンと呼ばれる電子台帳に保管される。ビットコインの場合、Proof of Workとよばれる方式の採用により、ブロックチェーンの改ざんは困難となっている。Proof of Workはビットコインの安全性の基礎となっている。一方で、ブロックチェーンの応用として、送金に限らない一般の取引(Transaction)を電子台帳に記録することが始まっている。またスマートコントラクトと呼ばれる電子契約技術もブロックチェーンとして実用化されている。ブロックチェーンの応用においては、Proof of Workを使わない一般的なコンセンサス・アルゴリズムにより、複数のピア間でのブロックチェーンの一貫性を維持する方式も実用化されている。このようなブロックチェーンは許可型(Permissioned)ブロックチェーンと呼ばれている。
特開2017-207979号公報
 しかしながら、従来の技術では、ブロックチェーンの改ざんを検出することが難しかった。特に、許可型ブロックチェーンでは、ピア管理者に結託された場合、ブロックチェーンの改ざんを検出することが難しかった。
 実施形態の改ざん検出システムは、1以上のピアのいずれかに接続可能な1以上の第1の端末と、検出装置とを備える改ざん検出システムであって、前記第1の端末は、前記ピアから、ブロックチェーンに含まれるブロックハッシュを取得する取得部と、前記ブロックハッシュと前記第1の端末の取引内容に基づくデータとを含む第1の署名対象データ、及び、前記第1の署名対象データの電子署名を含む第1の取引記録を、前記ピアに送信する送信部とを備え、前記検出装置は、前記ピアから前記ブロックチェーンを受信する受信部と、前記ブロックチェーンのブロックに含まれる第1の取引記録に含まれる前記電子署名が有効でない、または、前記ブロックに含まれる前記第1の取引記録に含まれる前記ブロックハッシュと同じブロックハッシュが前記ブロックチェーンに含まれていない場合、前記ブロックチェーンの改ざんを検出する検出部と、を備える。
図1は実施形態の改ざん検出システムの機能構成の例を示す図である。 図2は実施形態のブロックチェーンのデータ構造の例を示す図である。 図3は実施形態の端末の動作例を示すフローチャートである。 図4は実施形態のピアの動作例を示すフローチャートである。 図5は実施形態の検出部の動作例を示す図である。 図6は実施形態の変形例1のブロックハッシュの計算方法の例を示す図である。 図7は実施形態の変形例1のブロックチェーンのデータ構造の例を示す図である。 図8は実施形態の変形例1の検出部の動作例を示す図である。 図9は実施形態の端末、ピア及び検出装置のハードウェア構成の例を示す図である。
 以下に添付図面を参照して、改ざん検出システム及び改ざん検出方法の実施形態を詳細に説明する。
[機能構成の例]
 図1は実施形態の改ざん検出システム100の機能構成の例を示す図である。実施形態の改ざん検出システム100は、端末10、ピア20及び検出装置30を備える。端末10、ピア20及び検出装置30は、インターネット等のネットワークを介して接続されている。
 端末10は、例えばユーザにより使用されるスマートデバイス及びパーソナルコンピュータ等である。ピア20は、ブロックチェーンを記憶するコンピュータである。ブロックチェーンは、1以上の取引記録を含む電子台帳である。検出装置30は、ピア20に記憶されたブロックチェーンの改ざんを検出する装置である。
 まず、実施形態のピア20に記憶されるブロックチェーンのデータ構造の例について説明する。
 図2は実施形態のブロックチェーンのデータ構造の例を示す図である。実施形態では、ブロックチェーンの構造が、鎖状である場合について説明する。なお、ブロックチェーンの構造は、鎖状に限られない。ブロックチェーンの構造が、鎖状でない場合の例は、実施形態の変形例1で後述する。
 図2では、nは、n番目のブロックに関するデータであることを示す。例えば、ブロック50nは、n番目のブロックを示し、ブロック50n-3は、n-3番目のブロックを示す。また例えば、ブロックハッシュ51nは、n番目のブロック50nのブロックハッシュを示し、ブロックハッシュ51n-1は、n-1番目のブロック50n-1のブロックハッシュを示し、ブロックハッシュ51n-3は、n-3番目のブロック50n-3のブロックハッシュを示し、ブロックハッシュ51n-4は、n-4番目のブロック50n-4のブロックハッシュを示す。以下の説明では、nを区別しない場合、nを省略して説明する。
 実施形態のブロックチェーンは、複数の取引記録53がまとめられたブロック50が時系列に追加されることにより作成される。それぞれのブロック50には、時系列の昇順でブロック番号52が付与される。ブロック番号52は、ブロックチェーンに含まれるブロック50の特定に使用される。
 ブロック50nは、ブロックハッシュ51n、前のブロック50n-1のブロックハッシュ51n-1、0以上の取引記録53n、及び、ブロック50nのブロック番号52nを含む。
 ブロックハッシュ51nは、前のブロック50n-1のブロックハッシュ51n-1、0以上の取引記録53n、及び、ブロック50nのブロック番号52nから計算されたハッシュ値である。ハッシュ値は、出力値(ハッシュ値)から入力値を計算する逆計算が困難で、ハッシュ衝突の確率が非常に低いハッシュ関数(例えば、SHA-256等)によって計算された値である。ブロックハッシュ51nは、ブロック50nが生成されるときに、計算される。
 ここで、取引記録53nは、ブロック番号52n-3、ブロックハッシュ51n-3及び取引内容54nを含む署名対象データと、当該署名対象データの電子署名55nとを含む。すなわち、n番目の取引記録53nには、以前のブロック50n-kのブロックハッシュ51n-k(図2の例では、k=3)が含まれている。
 なお、取引記録53nに含まれるブロック番号52n-3は、必須ではない。取引記録53nにブロック番号52n-3が含まれていれば、ブロックチェーンに含まれる対象のブロックハッシュ51n-3を特定する処理をより高速にすることができる。
 各ブロック50に含まれるブロックハッシュ51は再帰的に計算されているため、ブロックハッシュ51の計算対象となる取引記録53の集合は、当該取引記録53を含むブロック50以前のすべての取引記録53であると考えられる。したがって、例えば、過去の取引記録53を削除する改ざんが行われた場合、改ざんが行われた取引記録53を含むブロック50以降のブロックハッシュ51がすべて変化する。
 ここで、ブロックチェーンの改ざんの例について説明する。具体的な方法としては、例えば目的の取引記録53を削除した後、その取引記録53を計算対象として含んでいたブロックハッシュ51をすべて再計算し、新しいブロックハッシュ51を正当なものとしてブロックチェーンに上書きすればよい。なお、Proof of Work方式の場合には、全ブロックハッシュ51の再計算に莫大な時間がかかるため、この再計算する方法は事実上不可能であった。しかしながら、Proof of Work方式の場合であっても、情報理論的安全性は満たしていない。そのため、例えばProof of Work方式を採用する暗号通貨では、悪意のユーザ(または悪意のユーザのグループ)が有する計算能力が、他の善意のユーザが有する計算能力を上回った場合、従来の技術では、今後、ブロックチェーンの改ざんの検出が困難になる可能性がある。
 実施形態の改ざん検出システム100は、ピア20に記憶された時点では、正当なブロックチェーンが、後から改ざんされた場合の改ざんの検出をより容易にできるようにするシステムである。
 なお、実施形態では、ブロックハッシュ51は、すべての取引記録53の集合から理論上再計算することができるが、処理の効率化の目的で、ブロック50ごとに取引記録53と合わせてピア20に記憶される。
 また、ブロックハッシュ51の計算方式は任意でよい。実施形態のブロックハッシュ51の計算方式は、Proof of Work方式よりも制約の少ない計算方式を想定しているが、Proof of Work方式でもよい。
 図1に戻り、次に、端末10の動作の詳細について説明する。なお、図1の改ざん検出システム100の例では、端末10が1つの場合を記載しているが、端末10は複数あってもよい。すなわち、ピア20と通信する端末10の数は任意でよい。
 端末10は、受付部11、取得部12、生成部13及び送信部14を備える。図3のフローチャートも参照しながら、受付部11、取得部12、生成部13及び送信部14の動作の詳細について説明する。
<端末の動作例>
 図3は実施形態の端末10の動作例を示すフローチャートである。
 はじめに、受付部11は、ユーザから、取引内容54nを示すデータの入力を受け付けると(ステップS1)、当該データを生成部13に入力する。なお、取引内容54nは任意でよい。取引内容54nは、例えば暗号通貨の送金を示す。
 次に、取得部12は、ピア20から、ブロックチェーンに含まれるブロックハッシュ51n-kと、当該ブロックハッシュ51n-kを含むブロック50n-kのブロック番号52n-kとを取得する(ステップS2)。なお、上述の図2の例ではk=3である。kは、より小さいことが好ましいが、最新(k=1)である必要はない。
 そのため、ブロックハッシュ51n-k及びブロック番号52n-kの取得タイミングは任意でよい。例えば、取得部12は、ブロックチェーンに含まれるブロックハッシュ51n-k及びブロック番号52n-kを定期的(例えば、1分、1時間又は1日ごと等)に取得する。そして、取得部12は、新たなブロックハッシュ51n-k2及びブロック番号52n-k2が取得された場合、当該ブロックハッシュ51n-k2及びブロック番号52n-k2を取得する前に取得されていたブロックハッシュ51n-k及びブロック番号52n-kを破棄する。
 また例えば、取得部12は、生成部13が取引記録53を生成するときに、生成部13から取得要求を受け付けた場合に、ブロックハッシュ51n-k及びブロック番号52n-kを取得してもよい。
 また例えば、取得部12は、ピア20によるブロックハッシュ51n-k及びブロック番号52n-kの送信契機で、ブロックハッシュ51n-k及びブロック番号52n-kをピア20から受動的に取得してもよい。
 また、取得対象のブロックハッシュ51n-kを選択する方法は任意でよい。例えば、取得部12は、ブロックチェーンに含まれるブロックハッシュ51のうち、ブロック番号52に基づいて、より新しいブロックハッシュ51n-kを取得してもよい。実施形態では、ブロック番号がより大きいブロック50n-kのブロックハッシュ51n-kが取得対象となる。
 また例えば、取得部12は、ブロックチェーンに含まれるブロックハッシュ51のうち、ブロックハッシュ51が生成された時刻に基づいて、より新しいブロックハッシュ51n-kを取得してもよい。
 また例えば、取得部12は、ブロックチェーンに含まれるブロックハッシュ51のうち、ブロックチェーンに既に記憶された取引記録53がより多くハッシュ計算に使用されているブロックハッシュ51を、より新しいブロックハッシュ51n-kとして取得してもよい。
 取得部12は、取得されたブロックハッシュ51n-k及びブロック番号52n-kを生成部13に入力する。
 次に、生成部13は、受付部11から取引内容54nを示すデータを受け付け、取得部12からブロックハッシュ51n-k及びブロック番号52n-kを受け付ける。生成部13は、端末10の秘密鍵を使用して、ブロックハッシュ51n-k、ブロック番号52n-k及び取引内容54nの電子署名55nを生成する。そして、生成部13は、ブロックハッシュ51n-k、ブロック番号52n-k、取引内容54n及び電子署名55nを含む取引記録53n(第1の取引記録)を生成し(ステップS3)、当該取引記録53nを送信部14に入力する。
 次に、送信部14は、生成部13から取引記録53nを受け付けると、当該取引記録53nをピア20に送信する(ステップS4)。
 図1に戻り、次に、ピア20の動作の詳細について説明する。なお、図1の改ざん検出システム100の例では、ピア20が1つの場合を記載しているが、ピア20は複数あってもよい。例えば、複数のピア管理者が、それぞれ1以上のピア20を動作させてもよい。
 ピア20は、送信部21、受信部22、記憶制御部23及び記憶部24を備える。図4のフローチャートも参照しながら、送信部21、受信部22、記憶制御部23及び記憶部24の動作の詳細について説明する。
<ピアの動作例>
 図4は実施形態のピア20の動作例を示すフローチャートである。
 はじめに、受信部22は、端末10(送信部14)から、取引記録53nを受信すると(ステップS11)、当該取引記録53nを記憶制御部23に入力する。
 記憶制御部23は、受信部22から取引記録53nを受け付けると、当該取引記録53nに含まれる電子署名55nが有効であるか否かを判定する(ステップS12)。電子署名55nが有効でない場合(ステップS12,No)、すなわち、取引記録53nが既に改ざんされている場合、記憶制御部23は、当該取引記録53nを破棄する(ステップS14)。
 電子署名が有効である場合(ステップS12,Yes)、記憶制御部23は、取引記録53nに含まれるブロック番号52n-kを使用して、ブロックチェーンに記憶されたブロックハッシュ51n-kを特定し、特定されたブロックハッシュ51n-kと、当該取引記録53nに含まれるブロックハッシュ51n-kが一致するか否かを判定する(ステップS13)。一致しない場合(ステップS13,No)、記憶制御部23は、当該取引記録53nを破棄する(ステップS14)。ステップS12及びS13の処理により、ステップS11の処理により受信された取引記録53nがピア20に記憶される時点では、改ざんされていないことが保証される。
 一致する場合(ステップS13,Yes)、記憶制御部23は、ブロック50nを生成するか否かを判定する(ステップS15)。ブロック50nに含まれる取引記録53nは、1つに限られず、複数でもよい。そのため、記憶制御部23は、例えば所定の数の取引記録53nが蓄積された場合、当該所定の数の取引記録53nを含むブロック50nを生成する。
 ブロック50nを生成しない場合(ステップS15,No)、記憶制御部23は、ステップS11の処理により受信された取引記録53nを、記憶制御部23のバッファ等に蓄積する(ステップS16)。
 ブロック50nを生成する場合(ステップS15,Yes)、記憶制御部23は、記憶制御部23のバッファ等に蓄積されていた取引記録53nと、ステップS11の処理により受信された取引記録53nとを含むブロック50nを生成し、当該ブロック50nを記憶部24のブロックチェーンに記憶する(ステップS17)。
 次に、送信部21が、ステップS17の処理により生成されたブロック50nのブロック番号52nと、当該ブロック50nに含まれるブロックハッシュ51nとを端末10に送信する(ステップS18)。ステップS18で送信されたブロックハッシュ51n及びブロック番号52nは、n+1番目以降のブロックに含まれる取引記録53で使用される。なお、ステップS18の処理は省略されてもよい。例えば、端末10の取得部12が、n+1番目以降のブロックに含まれる取引記録53を生成する際に、自律的にブロックハッシュ51n+1-k及びブロック番号52n+1―kを取得する場合は、ステップS18の処理は省略される。
 図1に戻り、次に、検出装置30の動作の詳細について説明する。なお、図1の改ざん検出システム100の例では、検出装置30が1つの場合を記載しているが、検出装置30は複数あってもよい。
 検出装置30は、受信部31及び検出部32を備える。図1の例では、検出装置30をピア20の外部に設けることにより、ピア20の管理者とは独立した監査人によって、ピア20に記憶されているブロックチェーンの改ざんを検出可能にしている。
 受信部31は、ピア20(送信部21)からブロックチェーンを受信すると、当該ブロックチェーンを検出部32に入力する。
 検出部32は、ブロックチェーンの各ブロック50を判定することにより、当該ブロックチェーンの改ざんを検出する。
 図5は実施形態の検出部32の動作例を示す図である。なお、図5のtxは、取引記録53(transaction)を表す。
 まず、検出部32は、すべてのブロック50に含まれるブロックハッシュ51を再計算し、再計算することにより得られたハッシュ値が、ブロック50に含まれるブロックハッシュ51と一致するか否かを判定する(図5、1行目~5行目)。検出部32は、再計算することにより得られたハッシュ値が、ブロック50に含まれるブロックハッシュ51と一致しない場合、ブロックチェーンの改ざんを検出する。
 次に、検出部32は、ブロックチェーンのすべてのブロック50に含まれる取引記録53に含まれる電子署名55が有効であるか否かを判定する(図5、8行目)。検出部32は、ブロックチェーンのブロックに含まれる取引記録53に含まれる電子署名55が有効でない場合、ブロックチェーンの改ざんを検出する。
 次に、検出部32は、ブロック50に含まれる取引記録53に含まれるブロックハッシュ51と同じブロックハッシュ51がブロックチェーンに含まれていない場合、ブロックチェーンの改ざんを検出する。具体的には、検出部32は、取引記録53に含まれるブロック番号52を使用してブロックチェーンから特定されたブロック50のブロックハッシュ51が、取引記録に含まれるブロックハッシュ51と一致するか否かを判定する(図5、9行目~12行目)。検出部32は、特定されたブロック50のブロックハッシュ51が、取引記録に含まれるブロックハッシュ51と一致しない場合、ブロックチェーンの改ざんを検出する。
 なお、図5に示す改ざんを検出する処理の順序は、一例であり、改ざんを検出する処理の順序は任意でよい。
<実施形態の効果>
 以上説明したように、実施形態の改ざん検出システム100は、1以上のピア20のいずれかに接続可能な1以上の端末10(第1の端末)と、検出装置30とを備える。1以上の端末10では、取得部12が、ピア20から、ブロックチェーンに含まれるブロックハッシュ51を取得する。そして、送信部14が、ブロックハッシュ51と端末10の取引内容54に基づくデータ(実施形態では、取引内容54そのもの)とを含む署名対象データ(第1の署名対象データ)、及び、署名対象データの電子署名55を含む取引記録53(第1の取引記録)を、ピア20に送信する。また、検出装置30では、受信部31が、ピア20からブロックチェーンを受信する。そして、検出部32が、ブロックチェーンのブロック50に含まれる取引記録53に含まれる電子署名55が有効でない、または、ブロック50に含まれる取引記録53に含まれるブロックハッシュ51と同じブロックハッシュ51がブロックチェーンに含まれていない場合、ブロックチェーンの改ざんを検出する。
 これにより実施形態の改ざん検出システム100によれば、ブロックチェーンの改ざんをより容易に検出することができる。特に、許可型ブロックチェーンのピア管理者に結託された場合であっても、ブロックチェーンの改ざんをより容易に検出することができる。
 より具体的に説明すると、従来は、取引記録の追加、削除、及び、順序の入れ替え等の改ざんは、取引記録自体を改ざんするわけではないので、従来の取引記録自身の電子署名の検証では検出することができなかった。また、すべてのピアの管理者が結託して、取引記録の追加、削除、及び、順序の入れ替え等の改ざんを行った場合、ピア間でもブロックチェーンの内容が一致するので、ピア間の比較による改ざんの検出は困難だった。
 ブロックハッシュ51は、その計算対象となる取引記録53の組成を、ほぼ100%とみなせる確率で一意に確定する。つまり、取引記録53の追加、削除、及び、順序の入れ替え等の改ざんが行われれば、実施形態の取引記録53に含まれるブロックハッシュ51が、ほぼ100%とみなせる確率で、ブロックチェーンに含まれるブロックハッシュ51と一致しない。
 善意のユーザは改ざんに協力する理由がないので、善意のユーザの取引記録53は、電子署名55の有効性が確認されれば、改ざんされていないことが期待できる(これを改ざんするには、善意のユーザが改ざん後のデータに電子署名することが必要だから)。
 したがって、その取引記録53に含まれるブロックハッシュ51は改ざんされていないことが期待でき、結果として、その計算対象となる取引記録53は改ざんされていないことが期待できる(ハッシュ関数の逆演算が困難で、偶然に衝突が起きる確率はほぼ0%とみなせるから)。
 よって、実施形態の検出部32によって、改ざんが検出されなかったブロックチェーンは、善意のユーザの取引記録53が多く含まれているほど、ピア管理者の信用とは無関係に、当該ブロックチェーンが改ざんされていないことが期待される。
 逆に、ピア管理者がブロックチェーンを改ざんするためには、改ざん目的の取引記録53から計算されるブロックハッシュ51を含むすべての取引記録53について、削除するか、または、そのユーザに改ざん後のブロックハッシュ51を使って再度の電子署名を依頼するしかない(後者は改ざんへの協力依頼である)。善意のユーザの取引記録53が多いほど、削除される取引記録53が多数になり、この改ざんの影響は大規模になり、別の視点から改ざんが発覚する可能性が高い。
 このように、実施形態によれば、ブロックチェーンを利用する善意のユーザが多いほど、ピア管理者の信用とは無関係に、ブロックチェーンが改ざんされていないことが検証可能になる。善意のユーザの典型例は、検証しようとしている監査人自身である。なお、善意のユーザが特定できない場合でも、利害の独立したユーザが多いほど、善意のユーザが相当数居ることを合理的に推定することができ、実施形態の効果が期待できる。
(実施形態の変形例1)
 次に実施形態の変形例1について説明する。変形例1の説明では、上述の実施形態と同様の説明については省略し、上述の実施形態と異なる箇所について説明する。
 変形例1では、ブロックチェーンの構造を一般化する。例えば、Proof of Work方式でない場合、ブロックチェーンの構造は鎖状である必要はなく、またブロック番号52も必要ない。ブロックチェーンに含まれる以前の取引記録53からブロックハッシュを計算できることが本質であり、その計算方法、及び、計算に使用される取引記録53の選択方法には自由度がある。
 変形例1では、ハッシュ木(Merkle Tree)と呼ばれる木構造の計算によって、以前の取引記録53からハッシュ値(ブロックハッシュ51)を計算する場合について説明する。
 図6は実施形態の変形例1のブロックハッシュ51の計算方法の例を示す図である。図6の例は、ハッシュ値101a~101f、201a~201c及び301aを含むハッシュ木を使用する場合を示す。例えば、記憶制御部23は、新たなブロック50を生成するときに、以前の取引記録53に基づくブロックハッシュ51として、ハッシュ値201c及び301aを使用して、ブロックハッシュ51を計算する。得られたブロックハッシュ51は、ハッシュ木に接続され、ハッシュ木が更新される。また、検出部32は、ブロックチェーンを検証するときに、各ブロック50の取引記録53に含まれるハッシュ値(ブロックハッシュ51)でハッシュ木を検索し、当該ハッシュ値がハッシュ木に含まれているか否かを判定する。
 なお、ビットコインでは、ブロック内のハッシュ計算にハッシュ木が使われているが、ブロック間は鎖状構造となっている。この変形例1では、ブロックの接続にも、ハッシュ木が使われる。ブロックの接続関係がハッシュ木の構造を有することにより、例えば特定の取引記録53(特定のブロックハッシュ51)がブロックチェーンに含まれていることを検証するための時間をより短くすることができる。
 また、図6の例では、取引記録53は、取引内容54、電子署名55、取引記録番号56、時刻57、実行結果58、ハッシュ値59及びハッシュ値201aを含む。電子署名55の署名対象データは、ハッシュ値59及びハッシュ値201aである。
 ハッシュ木に接続されるハッシュ値101bは、取引記録番号56、時刻57、実行結果58、ハッシュ値59及びハッシュ値201aから計算される。
 取引記録番号56は、取引内容54を特定する番号を示す。時刻57は、取引内容54の取引が行われた時刻を示す。実行結果58は、スマートコントラクト等の処理の実行結果を示す。ハッシュ値59は、取引内容54から計算されたハッシュ値である。ハッシュ値101b(ブロックハッシュ51)の計算時に、取引内容54のかわりに、取引内容54に基づくハッシュ値59が使用されることにより、取引内容54自体が開示されることなく、ブロックチェーンの検証(改ざんの検出)が可能になる。
 図7は実施形態の変形例1のブロックチェーンのデータ構造の例を示す図である。変形例1では、ブロックチェーンの構造は、木構造である(図6参照)。
 図7では、x,yは、ハッシュ木に含まれる特定のブロックに関するデータであることを示す。以下の説明では、ブロックを区別しない場合、x,yを省略して説明する。
 変形例1のブロックチェーンは、複数の取引記録53がまとめられたブロック50がハッシュ木に追加されることにより作成される。
 ブロック50yは、ブロックハッシュ51y、ハッシュ値201z、ハッシュ値301w、及び、1以上の取引記録53yを含む。ハッシュ値201z及び301wは、ハッシュ木に含まれるハッシュ値(過去の取引記録53に基づいて計算されたブロックハッシュ51)である。
 ブロックハッシュ51yは、ハッシュ値201z、ハッシュ値301w、及び、1以上の取引記録53yから計算されたハッシュ値である。ブロックハッシュ51yは、ブロック50yが生成されるときに、計算される。
 ここで、取引記録53yは、ブロックハッシュ51x、電子署名55y、取引記録番号56y、時刻57y、実行結果58y及びハッシュ値59yを含む。ハッシュ値59yは、取引内容54yから計算されるハッシュ値である。
 ブロックハッシュ51xは、木構造で記憶されているブロック50のうち、いずれかのブロック50xに含まれるブロックハッシュである。電子署名55yの署名対象データは、ブロックハッシュ51x及びハッシュ値59yである。
 図8は実施形態の変形例1の検出部32の動作例を示す図である。なお、図8のtxは、取引記録53(transaction)を表す。
 まず、検出部32は、ハッシュ木に記憶されているブロックハッシュ51を再計算し、再計算することにより得られたハッシュ値が、ハッシュ木に記憶されているブロックハッシュ51と一致するか否かを判定する(図8、1行目~5行目)。検出部32は、再計算することにより得られたハッシュ値が、ハッシュ木に記憶されているブロックハッシュ51と一致しない場合、ブロックチェーンの改ざんを検出する。
 次に、検出部32は、木構造で接続されたブロック50の取引記録53に含まれる電子署名55が有効であるか否かを判定する(図5、7行目)。検出部32は、取引記録53に含まれる電子署名55が有効でない場合、ブロックチェーンの改ざんを検出する。
 次に、検出部32は、ブロック50に含まれる取引記録53に含まれるブロックハッシュ51と同じブロックハッシュ51がブロックチェーンに含まれていない場合、ブロックチェーンの改ざんを検出する(図5、8行目~10行目)。
 以上説明したように、実施形態の変形例1によれば、ブロックチェーンの構造が、木構造である場合であっても、ブロックチェーンの改ざんをより容易に検出することができる。また、取引内容54のかわりに、取引内容54に基づくハッシュ値59が使用されることにより、取引内容54自体が開示されることなく、ブロックチェーンの検証が可能になる。
(実施形態の変形例2)
 次に実施形態の変形例2について説明する。変形例2の説明では、上述の実施形態と同様の説明については省略し、上述の実施形態と異なる箇所について説明する。
 変形例2では、実施形態の端末10(第1の端末)と、ブロックハッシュ51及びブロック番号52を含まない取引記録を生成する端末(第2の端末)とが混在する場合の動作について説明する。具体的には、例えばブロックハッシュ51及びブロック番号52を含まない取引記録を生成する端末を、実施形態の端末10(第1の端末)に順次、移行するシステム移行期などでの動作について説明する。
 第1の端末は、上述の第1の取引記録(ブロックハッシュ51n-k、ブロック番号52n-k、取引内容54n及び電子署名55nを含む取引記録53n)をピア20に送信する。
 第2の端末は、第2の端末の取引内容を含む署名対象データ(第2の署名対象データ)、及び、当該署名対象データの電子署名を含む取引記録(第2の取引記録)を、ピア20に送信する。
 ピア20の記憶制御部23は、第1及び第2の取引記録の少なくとも一方を含むブロックをブロックチェーンに記憶する。記憶制御部23は、第1の取引記録については、上述のステップS13の処理を実行し、第2の取引記録については、上述のステップS13の処理を実行しない。
 変形例2の構成でも、善意のユーザが一定以上の頻度で、第1の取引記録を登録する場合には、実施形態と同様の効果は保たれる。ここで、善意のユーザとは、取引記録に電子署名を付与するユーザであって、ピア管理者とは独立しており、ブロックチェーンの改ざんによって利益を得ない者である。
(実施形態の変形例3)
 次に実施形態の変形例3について説明する。変形例3の説明では、上述の実施形態と同様の説明については省略し、上述の実施形態と異なる箇所について説明する。
 変形例3では、善意のユーザとして、特定のユーザが、端末10を介して、定期的にブロックチェーンに、取引記録53を記憶する場合について説明する。ここで、特定のユーザとは、例えば第三者的な立場で広く信用のおける組織を想定する。当該特定のユーザにより使用される端末10が、取引内容54として「定期的な第三者によるアクセス」を記録する。取引自体の記録は目的ではなく、定期的に取引記録53をブロックチェーンに記憶することに目的がある。取引記録53にはブロックハッシュ51が含まれており、特定のユーザは信用できるから、そのブロックハッシュ51の計算対象となる取引記録53は改ざんされていないことが検証できる。
 また、検出部32は、特定のユーザの取引記録53が定期的に、ブロックチェーンに記憶されていない場合にも、改ざんを検出できる。例えば、悪意のあるユーザが、取引記録53を削除する改ざんをし、ブロックチェーンに定期的に記憶されているはずの取引記録53の一部又は全部が記憶されていない場合、当該ブロックチェーンの改ざんが発覚する。
 なお、実施形態の端末10を特定のユーザにのみ使用させることにより、改ざん検出システム100を上述の変形例2の形態で運用してもよいが、この場合には、ブロックチェーンの改ざんの検出は、特定のユーザの信用に全面的に依存することになる。
 最後に、実施形態の端末10、ピア20及び検出装置30のハードウェア構成の例について説明する。
[ハードウェア構成の例]
 図9は実施形態の端末10、ピア20及び検出装置30のハードウェア構成の例を示す図である。端末10、ピア20及び検出装置30は、制御装置401、主記憶装置402、補助記憶装置403、表示装置404、入力装置405及び通信装置406を備える。制御装置401、主記憶装置402、補助記憶装置403、表示装置404、入力装置405及び通信装置406は、バス410を介して接続されている。
 制御装置401は、補助記憶装置403から主記憶装置402に読み出されたプログラムを実行する。主記憶装置402は、ROM(Read Only Memory)、及び、RAM(Random Access Memory)等のメモリである。補助記憶装置403は、HDD(Hard Disk Drive)及びメモリカード等である。
 表示装置404は情報を表示する。表示装置404は、例えば液晶ディスプレイ等である。入力装置405は、入力を受け付けるインタフェースである。入力装置405は、例えばキーボード及びマウス等である。表示装置404及び入力装置405は、表示機能と入力機能とを有するタッチパネル等でもよい。通信装置406は、他の装置と通信するためのインタフェースである。
 実施形態の端末10、ピア20及び検出装置30で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、メモリカード、CD-R及びDVD等のコンピュータで読み取り可能な記憶媒体に記録されてコンピュータ・プログラム・プロダクトとして提供される。
 また実施形態の端末10、ピア20及び検出装置30で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また実施形態の端末10、ピア20及び検出装置30で実行されるプログラムをダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。
 また実施形態の端末10、ピア20及び検出装置30のプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
 実施形態の端末10、ピア20及び検出装置30で実行されるプログラムは、上述した図1の機能ブロックのうち、プログラムによっても実現可能な機能ブロックを含むモジュール構成となっている。当該各機能ブロックは、実際のハードウェアとしては、制御装置401が記憶媒体からプログラムを読み出して実行することにより、上記各機能ブロックが主記憶装置402上にロードされる。すなわち上記各機能ブロックは主記憶装置402上に生成される。
 なお上述した図1の各機能ブロックの一部又は全部をソフトウェアにより実現せずに、IC等のハードウェアにより実現してもよい。
 また複数のプロセッサを用いて各機能を実現する場合、各プロセッサは、各機能のうち1つを実現してもよいし、各機能のうち2以上を実現してもよい。
 また実施形態の端末10、ピア20及び検出装置30の動作形態は任意でよい。実施形態の端末10、ピア20及び検出装置30を、例えばネットワーク上のクラウドシステムを構成する装置として動作させてもよい。
 本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。
 例えば、当業者が容易に成し得る変形も、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。具体的には、例えば上述のハッシュ値の計算で使用されるデータ構造は、鎖状構造及び木構造に限られない。ハッシュ値の計算方法は、さまざまなトポロジーによる計算、それらの計算の組み合わせ、及び、計算結果の再帰的な利用など、さまざま変形が可能である。

Claims (11)

  1.  1以上のピアのいずれかに接続可能な1以上の第1の端末と、1以上の検出装置とを備える改ざん検出システムであって、
     前記第1の端末は、
     前記ピアから、ブロックチェーンに含まれるブロックハッシュを取得する取得部と、
     前記ブロックハッシュと前記第1の端末の取引内容に基づくデータとを含む第1の署名対象データ、及び、前記第1の署名対象データの電子署名を含む第1の取引記録を、前記ピアに送信する送信部とを備え、
     前記検出装置は、
     前記ピアから前記ブロックチェーンを受信する受信部と、
     前記ブロックチェーンのブロックに含まれる第1の取引記録に含まれる前記電子署名が有効でない、または、前記ブロックに含まれる前記第1の取引記録に含まれる前記ブロックハッシュと同じブロックハッシュが前記ブロックチェーンに含まれていない場合、前記ブロックチェーンの改ざんを検出する検出部と、
     を備える改ざん検出システム。
  2.  前記第1の端末の取引内容に基づくデータは、前記第1の端末の取引内容、又は、前記第1の端末の取引内容のハッシュ値のいずれか一方である、
     請求項1に記載の改ざん検出システム。
  3.  前記第1の署名対象データは、前記ブロックハッシュに対応するブロックのブロック番号を更に含み、
     前記検出部は、前記第1の取引記録に含まれる前記電子署名が有効であり、かつ、前記第1の取引記録に含まれるブロック番号を使用して前記ブロックチェーンから特定されたブロックのブロックハッシュが、前記第1の取引記録に含まれるブロックハッシュと一致する場合、前記第1の取引記録を含むブロックを前記ブロックチェーンに記憶する、
     請求項1に記載の改ざん検出システム。
  4.  前記取得部は、前記ブロックチェーンに含まれるブロックハッシュのうち、前記ブロック番号に基づいて、より新しいブロックハッシュを取得する、
     請求項3に記載の改ざん検出システム。
  5.  前記取得部は、前記ブロックチェーンに含まれるブロックハッシュのうち、前記ブロックハッシュが生成された時刻に基づいて、より新しいブロックハッシュを取得する、
     請求項1に記載の改ざん検出システム。
  6.  前記取得部は、前記ブロックチェーンに含まれるブロックハッシュのうち、前記ブロックチェーンに既に記憶された第1の取引記録がより多くハッシュ計算に使用されているブロックハッシュを、より新しいブロックハッシュとして取得する、
     請求項1に記載の改ざん検出システム。
  7.  前記取得部は、前記ブロックチェーンに含まれるブロックハッシュを定期的に取得し、新たなブロックハッシュが取得された場合、前記新たなブロックハッシュを取得する前に取得されていたブロックハッシュを破棄する、
     請求項1に記載の改ざん検出システム。
  8.  前記改ざん検出システムは、前記1以上のピアを更に備え、
     前記ピアは、前記第1の取引記録に含まれる前記電子署名が有効であり、かつ、前記第1の取引記録に含まれる前記ブロックハッシュと同じブロックハッシュが前記ブロックチェーンに含まれている場合、前記第1の取引記録を含むブロックを前記ブロックチェーンに記憶する記憶制御部、
     を備える請求項1に記載の改ざん検出システム。
  9.  前記改ざん検出システムは、1以上の第2の端末を更に備え、
     前記第2の端末は、前記第2の端末の取引内容を含む第2の署名対象データ、及び、前記第2の署名対象データの電子署名を含む第2の取引記録を、前記ピアに送信し、
     前記記憶制御部は、前記第1及び第2の取引記録の少なくとも一方を含むブロックを前記ブロックチェーンに記憶する、
     請求項8に記載の改ざん検出システム。
  10.  前記1以上の端末には、特定のユーザが定期的に前記第1の取引記録を送信する端末が含まれ、
     前記検出部は、更に、前記特定のユーザから定期的に送信された前記第1の取引記録が、前記ブロックチェーンに含まれているか否かを判定し、前記特定のユーザから定期的に送信された前記第1の取引記録の一部又は全部が、前記ブロックチェーンに含まれていない場合、前記ブロックチェーンの改ざんを検出する、
     請求項1に記載の改ざん検出システム。
  11.  1以上のピアのいずれかに接続可能な1以上の端末と、1以上の検出装置とを備える改ざん検出システムの改ざん検出方法であって、
     第1の端末が、前記ピアから、ブロックチェーンに含まれるブロックハッシュを取得するステップと、
     第1の端末が、前記ブロックハッシュと前記第1の端末の取引内容に基づくデータとを含む第1の署名対象データ、及び、前記第1の署名対象データの電子署名を含む第1の取引記録を、前記ピアに送信するステップと、
     検出装置が、前記ピアから前記ブロックチェーンを受信するステップと、
     検出装置が、前記ブロックチェーンのブロックに含まれる第1の取引記録に含まれる前記電子署名が有効でない、または、前記ブロックに含まれる前記第1の取引記録に含まれる前記ブロックハッシュと同じブロックハッシュが前記ブロックチェーンに含まれていない場合、前記ブロックチェーンの改ざんを検出するステップと、
     を含む改ざん検出方法。
PCT/JP2018/017331 2018-04-27 2018-04-27 改ざん検出システム及び改ざん検出方法 WO2019207804A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2018/017331 WO2019207804A1 (ja) 2018-04-27 2018-04-27 改ざん検出システム及び改ざん検出方法
CN201880091348.2A CN111869159B (zh) 2018-04-27 2018-04-27 篡改检测系统及篡改检测方法
JP2020515460A JP6989694B2 (ja) 2018-04-27 2018-04-27 改ざん検出システム及び改ざん検出方法
US17/019,478 US11424935B2 (en) 2018-04-27 2020-09-14 Tampering detection system and method for detecting tampering

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/017331 WO2019207804A1 (ja) 2018-04-27 2018-04-27 改ざん検出システム及び改ざん検出方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/019,478 Continuation US11424935B2 (en) 2018-04-27 2020-09-14 Tampering detection system and method for detecting tampering

Publications (1)

Publication Number Publication Date
WO2019207804A1 true WO2019207804A1 (ja) 2019-10-31

Family

ID=68295153

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/017331 WO2019207804A1 (ja) 2018-04-27 2018-04-27 改ざん検出システム及び改ざん検出方法

Country Status (4)

Country Link
US (1) US11424935B2 (ja)
JP (1) JP6989694B2 (ja)
CN (1) CN111869159B (ja)
WO (1) WO2019207804A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021112178A1 (ja) * 2019-12-06 2021-06-10 三菱重工業株式会社 検知装置、改ざん検知システム、中央サーバ、参加者サーバ、改ざん検知方法、及びプログラム
CN114615038A (zh) * 2022-03-02 2022-06-10 广州泰创信息技术有限公司 一种基于区块链数据安全处理的方法
WO2023008092A1 (ja) * 2021-07-28 2023-02-02 キヤノン株式会社 情報処理装置及びその制御方法
WO2023119398A1 (ja) * 2021-12-21 2023-06-29 株式会社東芝 ブロックチェーンシステム、ブロックチェーンシステム更新方法及びプログラム

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11570002B2 (en) * 2019-05-29 2023-01-31 International Business Machines Corporation Reduced-step blockchain verification of media file
JP7344543B2 (ja) * 2019-07-12 2023-09-14 シスナ株式会社 有価物管理システム
US11949788B1 (en) 2020-11-21 2024-04-02 CodeNotary Inc. System and method to shorten cryptographic proofs
US11762844B2 (en) * 2020-12-30 2023-09-19 Itron, Inc. Secure trimming of blockchain in a resource-constrained network
US11588620B2 (en) 2020-12-30 2023-02-21 Itron, Inc. Forming a blockchain in low-bandwidth, resource-constrained network
US11720540B2 (en) 2020-12-30 2023-08-08 Itron, Inc. Secure blockchain data recovery
CN112669023A (zh) * 2021-02-03 2021-04-16 三和智控(北京)系统集成有限公司 一种构建信用券系统或数字货币系统的方法和装置
CN112751677A (zh) * 2021-02-03 2021-05-04 三和智控(北京)系统集成有限公司 一种构建公告链及系统的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6234539B1 (ja) * 2016-11-16 2017-11-22 PwCあらた有限責任監査法人 データ構造、情報処理装置、プログラム、情報処理方法及びトランザクションシステム
JP2017224017A (ja) * 2016-06-13 2017-12-21 日本電信電話株式会社 処理システムおよび処理方法
JP2018018348A (ja) * 2016-07-28 2018-02-01 Kddi株式会社 ブロックチェーンを作成するシステム及びプログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE399405T1 (de) * 2001-02-22 2008-07-15 Bea Systems Inc System und verfahren zum verschlüsseln von nachrichten und zum registrieren in einem transaktionsverarbeitungssystem
US9965628B2 (en) * 2015-03-02 2018-05-08 Dell Products Lp Device reporting and protection systems and methods using a secure distributed transactional ledger
US20160260095A1 (en) * 2015-03-02 2016-09-08 Dell Products, Lp Containerized Computational Task Execution Management Using a Secure Distributed Transaction Ledger
WO2016164310A1 (en) * 2015-04-05 2016-10-13 Digital Asset Holdings Digital asset intermediary electronic settlement platform
JP6756817B2 (ja) * 2015-04-06 2020-09-16 ビットマーク, インコーポレイテッドBitmark, Inc. 非集中型のタイトル記録および認証のためのシステムならびに方法
US20170236120A1 (en) * 2016-02-11 2017-08-17 Oracle International Corporation Accountability and Trust in Distributed Ledger Systems
US10063572B2 (en) * 2016-03-28 2018-08-28 Accenture Global Solutions Limited Antivirus signature distribution with distributed ledger
JP6731783B2 (ja) 2016-05-19 2020-07-29 株式会社野村総合研究所 改ざん検知システム、及び改ざん検知方法
US10812270B2 (en) * 2017-04-07 2020-10-20 Citizen Hex Inc. Techniques for increasing the probability that a transaction will be included in a target block of a blockchain
CN107369010A (zh) * 2017-07-25 2017-11-21 光载无限(北京)科技有限公司 一种基于区块链的电子钱包的创建方法
WO2019028026A1 (en) * 2017-07-31 2019-02-07 Chronicled, Inc. SYSTEM, METHOD AND DEVICE FOR SECURE AND CONFIDENTIAL DETENTION TRANSACTION USING NO KNOWLEDGE PROTOCOL
US10754989B2 (en) * 2018-03-27 2020-08-25 International Business Machines Corporation Runtime self-correction for blockchain ledgers
US10740492B2 (en) * 2018-04-11 2020-08-11 American Express Travel Related Services Company, Inc. Data enrichment environment using blockchain

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017224017A (ja) * 2016-06-13 2017-12-21 日本電信電話株式会社 処理システムおよび処理方法
JP2018018348A (ja) * 2016-07-28 2018-02-01 Kddi株式会社 ブロックチェーンを作成するシステム及びプログラム
JP6234539B1 (ja) * 2016-11-16 2017-11-22 PwCあらた有限責任監査法人 データ構造、情報処理装置、プログラム、情報処理方法及びトランザクションシステム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021112178A1 (ja) * 2019-12-06 2021-06-10 三菱重工業株式会社 検知装置、改ざん検知システム、中央サーバ、参加者サーバ、改ざん検知方法、及びプログラム
JP2021092851A (ja) * 2019-12-06 2021-06-17 三菱重工業株式会社 検知装置、改ざん検知システム、中央サーバ、参加者サーバ、改ざん検知方法、及びプログラム
JP2021114336A (ja) * 2019-12-06 2021-08-05 三菱重工業株式会社 参加者サーバ及びプログラム
JP7201737B2 (ja) 2019-12-06 2023-01-10 三菱重工業株式会社 参加者サーバ及びプログラム
WO2023008092A1 (ja) * 2021-07-28 2023-02-02 キヤノン株式会社 情報処理装置及びその制御方法
WO2023119398A1 (ja) * 2021-12-21 2023-06-29 株式会社東芝 ブロックチェーンシステム、ブロックチェーンシステム更新方法及びプログラム
CN114615038A (zh) * 2022-03-02 2022-06-10 广州泰创信息技术有限公司 一种基于区块链数据安全处理的方法

Also Published As

Publication number Publication date
JPWO2019207804A1 (ja) 2020-12-03
CN111869159A (zh) 2020-10-30
JP6989694B2 (ja) 2022-01-05
US11424935B2 (en) 2022-08-23
US20200412549A1 (en) 2020-12-31
CN111869159B (zh) 2023-05-02

Similar Documents

Publication Publication Date Title
WO2019207804A1 (ja) 改ざん検出システム及び改ざん検出方法
US11615410B2 (en) Heartbeats and consensus in verifiable outsourced ledgers
US11849023B2 (en) Verifiable redactable audit log
US11170092B1 (en) Document authentication certification with blockchain and distributed ledger techniques
CN110505065B (zh) 一种可信时间戳添加方法、装置和存储介质
WO2020211496A1 (zh) 一种块链式账本中的签名验证方法、系统、装置及设备
US20210083856A1 (en) Improved hardware security module management
CN111047324B (zh) 用于更新区块链节点处的公钥集合的方法及装置
US20210099299A1 (en) Expendable cryptographic key access
WO2018057829A1 (en) Methods and systems of performing tamper-evident logging using block lattices
US20210336798A1 (en) Signature verification for a blockchain ledger
US20200169425A1 (en) Trusted timestamping
US11314885B2 (en) Cryptographic data entry blockchain data structure
CN110851535A (zh) 基于区块链的数据处理方法、装置、存储介质及终端
US10592682B2 (en) Data storage apparatus, data processing method, and computer readable medium adding a user attribute of a revoked user to an embedded decryption condition while encrypted data remains in an encrypted state
CN116361823A (zh) 用于隐私保护的区块链的选择性审计处理
JPWO2018211834A1 (ja) 情報処理装置および情報処理方法
US20210141780A1 (en) Data structure storage optimisation
JP6865338B1 (ja) 情報処理システム
CN111199044B (zh) 数据存储方法、装置以及存储介质
US20240202679A1 (en) Bridging Blockchains
WO2022106603A1 (en) Secure multi distributed ledger system
JP2021092851A (ja) 検知装置、改ざん検知システム、中央サーバ、参加者サーバ、改ざん検知方法、及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18915968

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020515460

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18915968

Country of ref document: EP

Kind code of ref document: A1