CN115481446A - Digital object access transaction evidence storing method and device under ubiquitous environment - Google Patents

Digital object access transaction evidence storing method and device under ubiquitous environment Download PDF

Info

Publication number
CN115481446A
CN115481446A CN202211059908.0A CN202211059908A CN115481446A CN 115481446 A CN115481446 A CN 115481446A CN 202211059908 A CN202211059908 A CN 202211059908A CN 115481446 A CN115481446 A CN 115481446A
Authority
CN
China
Prior art keywords
block
consensus
transaction
newly
group
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202211059908.0A
Other languages
Chinese (zh)
Inventor
黄罡
罗超然
景翔
马郓
刘譞哲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University
Original Assignee
Peking University
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 Peking University filed Critical Peking University
Priority to CN202211059908.0A priority Critical patent/CN115481446A/en
Publication of CN115481446A publication Critical patent/CN115481446A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups

Abstract

The embodiment of the application divides a plurality of digital objects into different consensus groups through position information of the plurality of digital objects, each consensus group maintains a block chain consisting of a plurality of transaction blocks, and under the condition that a first newly-added transaction block is generated by any transaction block, after the current consensus group finishes the consensus on the first newly-added transaction block, the block heads of the first newly-added transaction block are respectively broadcast to all adjacent consensus groups for storage through an adjacent block Hash pointer set, so that when the content of any transaction block is tampered, except that the Hash pointer in the consensus group fails to be verified, the Hash pointer in the adjacent block in the adjacent consensus group also fails to be verified, the tampering difficulty of transaction records is greatly increased, and the credible storage requirement of digital object access transactions under ubiquitous environment is improved.

Description

Digital object access transaction evidence storing method and device under ubiquitous environment
Technical Field
The present application relates to the field of digital object architecture technologies, and in particular, to a digital object access transaction certificate storing method and apparatus in a ubiquitous environment.
Background
The Digital Object Architecture DOA (Digital Object Architecture) is a software Architecture proposed by professor robert-kan of the chant of goodbye, internet, and solves the interoperation between information system resources in an open environment with Digital objects as the center, wherein the Digital objects are essentially data abstractions of resource entities, and the Digital objects are mainly generated in a cloud information system in the internet environment and are formed by converting data of a base table, a document, a picture and the like which are already present in the information system. The ubiquitous environment is a decentralized environment, and is different from the centralized management of data in the internet environment, digital object entities in the ubiquitous environment are generally sensed and generated in real time by a large number of intelligent devices scattered around the world, values of the digital object entities can change in real time along with changes of the real world, digital object access transactions generated in the decentralized environment are often generated by interaction among a plurality of digital object main bodies, the consensus among the plurality of digital object main bodies is involved, and access transactions stored in a terminal and an edge warehouse node are at risk of being lost and tampered, so that the credibility of digital object transaction records needs to be ensured.
The block chain is used as a data credibility evidence storage technology in a decentralized environment, and can guarantee the credibility of the digital object access transaction records. In a traditional block chain system, all nodes in the whole network belong to the same common identification group, and the system can only store the transaction in series, so that the throughput of the system cannot be effectively improved. Although the nodes can be divided into a plurality of consensus groups by using the fragmentation technology in the blockchain technology, each consensus group independently generates blocks in parallel, so as to improve the overall throughput of the blockchain system.
However, in the conventional fragmentation technology, each fragment maintains an independent blockchain, the security of the block is completely ensured by the nodes in the consensus group, and the nodes can be prevented from achieving consensus in the consensus group and even randomly modifying historical data in the nodes only by controlling a certain number of nodes in the consensus group, so that the data tamper resistance is poor, and the trusted evidence storage requirement of digital object access transactions in ubiquitous environments is difficult to meet.
Disclosure of Invention
The application provides a digital object access transaction evidence storing method and device under ubiquitous environment, and aims to solve the problems that the data tamper resistance of the traditional fragmentation technology is poor, and the trusted evidence storing requirement of digital object access transaction under ubiquitous environment is difficult to meet.
In order to solve the above problems, the present application adopts the following technical solutions:
in a first aspect, an embodiment of the present application provides a digital object access transaction evidence storing method in a ubiquitous environment, where the digital object access transaction evidence storing method in the ubiquitous environment includes:
dividing a plurality of digital objects to obtain a plurality of consensus groups; each consensus group is a block chain consisting of a plurality of transaction blocks; wherein different transaction blocks correspond to different digital objects, the transaction blocks include a set of contiguous block hash pointers, the set of contiguous block hash pointers includes a plurality of contiguous block hash pointers, different contiguous block hash pointers point to different contiguous consensus groups;
under the condition that any transaction block generates a first newly-increased transaction block, after the current consensus group finishes consensus on the first newly-increased transaction block, respectively broadcasting the block head of the first newly-increased transaction block to all the adjacent consensus groups based on the adjacent block Hash pointer set so that the adjacent consensus groups store the block head of the first newly-increased transaction block, wherein the current consensus group is the consensus group where the transaction block generating the first newly-increased transaction block is located.
In an embodiment of the present application, the transaction block further includes a preamble chunk hash pointer, the preamble chunk hash pointer pointing to a preamble chunk of the transaction block;
based on the set of neighbor block hash pointers, broadcasting the block header of the first newly added transaction block to all neighbor consensus groups respectively, so that before the neighbor consensus groups store the block header of the first newly added transaction block, the method for storing digital object access transactions under the ubiquitous environment further comprises:
consensus is performed on the first newly added transaction block within the current consensus group based on a preamble block hash pointer of the transaction block.
In an embodiment of the present application, the consensus among the current consensus group for the first newly added transaction block based on the preamble block hash pointer of the transaction block includes:
taking a transaction block generating a first newly-added transaction block as a master node, and broadcasting a pre-preparation message aiming at the first newly-added transaction block to a slave node by the master node based on the preamble block hash pointer; the slave nodes are a plurality of other nodes except the master node in the current consensus group;
for any slave node, after the slave node receives the pre-preparation message and successfully verifies the pre-preparation message, the slave node broadcasts preparation information to a plurality of other nodes except the slave node in the current consensus group;
when the number of the preparation information which is received by one node in the current consensus group in an accumulated mode and verified successfully exceeds a first preset number, the node broadcasts confirmation information to other nodes except the node in the current consensus group;
and when the number of the acknowledgement messages which are received accumulatively by one node and verified successfully reaches a second preset number, determining that the current consensus group agrees with the first newly added transaction block, wherein the second preset number is greater than the first preset number.
In an embodiment of the present application, after the current consensus group completes consensus on the first newly added transaction block, the method for verifying digital object access transaction under ubiquitous environment further includes broadcasting the block header of the first newly added transaction block to all neighboring consensus groups based on the set of neighboring block hash pointers, so that the neighboring consensus groups store the block header of the first newly added transaction block, and then:
under the condition that a transaction block in any adjacent consensus group generates a second newly-added transaction block, adding a block head of the first newly-added transaction block into a hash pointer set of adjacent blocks of the second newly-added transaction block, and completing consensus on the second newly-added transaction block in the adjacent consensus group;
after the consensus on the second newly added transaction block is completed in the adjacent consensus group, broadcasting the block headers of the second newly added transaction block to all adjacent consensus groups of the adjacent consensus group respectively.
In an embodiment of the present application, dividing a plurality of digital objects to obtain a plurality of consensus groups includes:
mapping the digital objects to a two-dimensional plane based on the position information of the digital objects to obtain a plurality of nodes; wherein different nodes correspond to different digital objects;
dividing the two-dimensional plane into a plurality of polygons by a Delaunay triangulation algorithm based on the plurality of nodes to obtain a Thiessen polygon formed by the polygons;
and dividing nodes belonging to the same polygon into the same consensus group, taking the nodes in each consensus group as transaction blocks, and constructing block chains corresponding to each consensus group to obtain the multiple consensus groups.
In a second aspect, based on the same inventive concept, an embodiment of the present application provides a digital object access transaction evidence storage apparatus in a ubiquitous environment, where the digital object access transaction evidence storage apparatus in the ubiquitous environment includes:
the consensus group dividing module is used for dividing the digital objects to obtain a plurality of consensus groups; each consensus group is a block chain consisting of a plurality of transaction blocks; wherein different transaction blocks correspond to different digital objects, the transaction blocks include a set of contiguous block hash pointers, the set of contiguous block hash pointers includes a plurality of contiguous block hash pointers, different contiguous block hash pointers point to different contiguous consensus groups;
and the verification module is used for broadcasting the block head of the first newly-increased transaction block to all adjacent common-identification groups respectively based on the adjacent block hash pointer set after the common-identification group finishes the common identification of the first newly-increased transaction block when any transaction block generates the first newly-increased transaction block, so that the adjacent common-identification groups store the block head of the first newly-increased transaction block, wherein the current common-identification group is the common-identification group where the transaction block generating the first newly-increased transaction block is located.
In an embodiment of the present application, the transaction block further includes a preamble chunk hash pointer, the preamble chunk hash pointer pointing to a preamble chunk of the transaction block;
the digital object access transaction evidence storage device under the ubiquitous environment further comprises:
a consensus module configured to perform consensus on the first newly added transaction block in the current consensus group based on the preamble block hash pointer of the transaction block.
In an embodiment of the present application, the consensus module includes:
the pre-preparation message broadcasting submodule is used for taking the transaction block generating the first newly-increased transaction block as a main node, and the main node broadcasts a pre-preparation message aiming at the first newly-increased transaction block to a slave node based on the preorder block hash pointer; the slave nodes are a plurality of other nodes except the master node in the current consensus group;
a preparation information broadcasting sub-module, configured to broadcast, by the slave node, preparation information to a plurality of other nodes in the current consensus group except the slave node after the slave node receives the preparation message and successfully verifies the preparation message for any of the slave nodes;
and the determining submodule is used for determining that the current consensus group agrees with the first newly-added transaction block when the number of the confirmation information which is received by one node in the current consensus group in an accumulated mode and successfully verified reaches a second preset number, wherein the second preset number is larger than the first preset number.
In an embodiment of the present application, the digital object access transaction evidence storing apparatus in a ubiquitous environment further includes:
a block head adding module, configured to add a block head of a first newly-added transaction block into an adjacent block hash pointer set of a second newly-added transaction block when the second newly-added transaction block is generated by a transaction block in any adjacent consensus group, and complete consensus on the second newly-added transaction block in the adjacent consensus group;
a broadcasting module, configured to broadcast the block headers of the second newly added transaction block to all neighboring consensus groups of the neighboring consensus groups respectively after the consensus on the second newly added transaction block is completed in the neighboring consensus group.
In an embodiment of the present application, the consensus group partitioning module includes:
the mapping submodule is used for mapping the digital objects to a two-dimensional plane based on the position information of the digital objects to obtain a plurality of nodes; wherein different nodes correspond to different digital objects;
the Thiessen polygon construction submodule is used for dividing the two-dimensional plane into a plurality of polygons through a Delaunay triangulation algorithm based on the plurality of nodes so as to obtain a Thiessen polygon formed by the polygons;
and the consensus group partitioning submodule is used for partitioning the nodes belonging to the same polygon into the same consensus group, taking the nodes in each consensus group as transaction blocks, and constructing block chains corresponding to each consensus group to obtain the multiple consensus groups.
Compared with the prior art, the method has the following advantages:
the digital object access transaction evidence storage method under the ubiquitous environment provided by the embodiment of the application is characterized in that a plurality of digital objects are divided into a plurality of consensus groups, each consensus group maintains a block chain consisting of a plurality of transaction blocks, and under the condition that a first newly-added transaction block is generated by any transaction block, after the current consensus group finishes consensus on the first newly-added transaction block, the block heads of the first newly-added transaction block are respectively broadcast to all adjacent consensus groups through an adjacent block hash pointer set, so that the adjacent consensus groups realize the evidence of the first newly-added transaction block. According to the method and the device, the adjacent common identification groups can be connected with each other through the adjacent block hash pointers by adding the adjacent block hash pointer set in each transaction block, and as the anti-tampering capability of the block heads of the transaction blocks is guaranteed by all hash pointers of the whole network, the content of any transaction block is tampered, besides the failure of the verification of the hash pointers in the common identification groups, the failure of the verification of the adjacent block hash pointers in the adjacent common identification groups can also be caused.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a flowchart illustrating steps of a method for verifying access to a digital object in a ubiquitous environment according to an embodiment of the present invention.
FIG. 2 is a block diagram of a transaction block according to an embodiment of the present application.
Fig. 3 is a schematic structural diagram of a meikel tree in an embodiment of the present application.
FIG. 4 is a diagram of a transaction block network according to an embodiment of the present application.
FIG. 5 is a diagram illustrating transaction block spreading according to an embodiment of the present application.
FIG. 6 is a schematic diagram of a PBFT consensus algorithm in an embodiment of the present application.
Fig. 7 is a schematic diagram of a thiessen polygon in an embodiment of the present application.
Fig. 8 is a schematic diagram of Delaunay triangulation in an embodiment of the present application.
Fig. 9 is a functional block diagram of a digital object access transaction verification device in a ubiquitous environment according to an embodiment of the present application.
Reference numerals: 900-digital object Access transaction verification device in ubiquitous environment; 901-consensus group partitioning module; 902-card storage module.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
To further facilitate an understanding of pertinent terms and background of the present application, a description of a digital object in a ubiquitous environment will first be provided below.
With the development of software and hardware technologies, more and more "intelligent" devices are distributed in the real world, and an intelligent device refers to a terminal device with computing and processing capabilities. The popularity of smart devices also means that computing is becoming a ubiquitous resource that is integrated into physical systems and human society. Through computing resources, human society, physical systems and information systems can conveniently interact and cooperate, and the generalization of computing resources also means that the human society, the physical systems and the information systems are combined more and more tightly, and the boundaries of the human society, the physical systems and the information systems are also more and more fuzzy. The ubiquitous environment provided by the application refers to a novel environment different from the internet, which is generated by ubiquitous computing resources.
Under ubiquitous environment, mass ubiquitous intelligent equipment generates mass data all the time. In the internet environment, digital objects are mainly static data such as documents, library tables, etc., and their Digital Object entities are actual byte sequences of these resources, which usually do not change frequently, for example, the most widespread Digital Object application DOI (Digital Object Identifier) currently assigns a Unique Identifier to a published paper and treats it as a Digital Object. The digital object entity in the ubiquitous environment is usually sensed and generated by the smart device in real time, and the value of the digital object entity changes in real time along with the change of the real world. Taking the example of a purifier digital object in a ubiquitous environment, the digital object representing a purifier entity whose identity is still a globally unique sequence of characters assigned by an identity resolution system and whose metadata is a key-value pair describing the purifier, comprising: the product name, date of manufacture, manufacturer, serial number, etc., identification and metadata are not substantially different from the paper digital object in the internet. The entity of the digital object of the purifier is a digital representation of the purifier, representing the real-time status of a plurality of sensors in the purifier, including: the values of air quality, humidity, fan revolutions, etc. change in real time, so that the snapshots at a certain time cannot be directly serialized in digital object entities in byte form like the digital object of the paper. The digital object entity of the purifier usually stores the data interface of the sensor of the purifier, and the real-time data is acquired and returned through the data interface when the digital object is accessed. The difference between the ubiquitous environment and the internet environment in the digital object entity makes the terminal and the edge device more suitable to be used as a carrier of a digital object warehouse and provide access service of the digital object.
In the ubiquitous environment, the digital object is provided with access service by the terminal and the edge warehouse where the digital object is located, and corresponding access transactions are generated in the terminal and the edge digital object warehouse. In the DOA, the access transaction is used as a unique evidence for tracing the operation behavior of the digital object afterwards, so that the historical operation record of the digital object can be restored, and the data audit service and the related rights and interests of the data are provided. Therefore, access transactions to digital objects need to be securely and reliably recorded and certified.
The block chain is used as a data credibility evidence storage technology in a decentralized environment, and can guarantee the credibility of the digital object access transaction records. However, access transactions are generated all the time when massive digital objects are in a ubiquitous environment, but the stability of the terminal device is insufficient and the storage capacity is limited, and in addition, the throughput bottleneck of the block chain technology is added, so that the traditional block chain technology is difficult to be directly applied to the ubiquitous environment.
The blockchain system is essentially a distributed database in which one Transaction (Transaction) generated in the system, i.e. Transaction, is stored. The integrity of the transaction is ensured by backing up the transaction in a plurality of nodes; through the Hash pointers among the transactions, the sequence among the transactions is ensured and the anti-tampering capability of the transactions is enhanced; and the legality of the transaction is ensured through a consensus algorithm. The digital object access transaction under the ubiquitous environment is certified based on the block chain technology, the integrity of the access transaction can be guaranteed through multiple backups among nodes, and the safety of the access transaction can be guaranteed through a Hash (Hash) pointer among data.
In a traditional block chain system, all nodes in the whole network belong to the same common identification group, and the system can only store transaction in series, so that the throughput of the system cannot be effectively improved. Although the nodes can be divided into a plurality of consensus groups by using the fragmentation technology in the blockchain technology, each consensus group independently generates blocks in parallel, so as to improve the overall throughput of the blockchain system.
However, in the conventional fragmentation technology, each fragment maintains an independent block chain, the security of the block is completely guaranteed by the nodes in the consensus group, and only a certain number of nodes need to be controlled in the consensus group, so that the nodes can be prevented from achieving consensus in the consensus group, and even historical data in the nodes can be modified randomly, so that the data is poor in tamper resistance, meanwhile, terminals and edge devices serving as digital object warehouses in a ubiquitous environment are distributed randomly in space and are dynamic in time, and therefore, the conventional fragmentation technology cannot meet the trusted evidence storage requirement of digital object access transactions in the ubiquitous environment.
In order to solve the problems in the background art, the present application aims to provide a digital object access transaction evidence storing method under a ubiquitous environment, by adding an adjacent block hash pointer set in each transaction block, adjacent consensus groups can be connected with each other through adjacent block hash pointers, so that the content of any transaction block is tampered, besides the failure of verification of hash pointers in the consensus groups, the failure of verification of adjacent block hash pointers in the adjacent consensus groups can also be caused, the difficulty of tampering transaction records is greatly increased, and the trusted evidence storing requirement of digital object access transactions under the ubiquitous environment is met.
Referring to fig. 1, a digital object access transaction evidence storing method in a ubiquitous environment of the present application is shown, which may specifically include the following steps:
s101: dividing a plurality of digital objects to obtain a plurality of consensus groups; each consensus group is a block chain consisting of a plurality of transaction blocks; wherein, different transaction blocks correspond to different digital objects, the transaction blocks comprise a set of contiguous block hash pointers, the set of contiguous block hash pointers comprises a plurality of contiguous block hash pointers, and different contiguous block hash pointers point to different contiguous consensus groups.
In this embodiment, referring to fig. 2, a schematic structural diagram of a transaction Block is shown, where each transaction Block is divided into two parts, namely a Block Header (Block Header) and a Block Body (Block Body), where the Block Body is formed by a transaction set packed in the current transaction Block, and the transaction set is stored in the Block Body in order in the form of an order table. The block head comprises the following parts:
preamble chunk Hash pointer (Prev Hash): and the hash value used for pointing to the preamble blocks of the transaction blocks in the current consensus group enables the transaction blocks in each consensus group to be arranged in sequence to form a corresponding block chain through the front-back pointing relation of the preamble block hash pointer. In an implementation, the block head Hash value of the tail block in the current consensus group may be calculated based on MD5 (MD 5 Message-Digest Algorithm), where it is to be noted that the tail block of the consensus group represents a latest generated transaction block in the consensus group, and a transaction block generated before the tail block is a preamble block of the tail block.
Attributes (Attributes): including the chunk time, chunk node, chunk geographical location information, etc. used to describe the metadata of the transaction block.
Merkel tree Root (Merkle Root): and calculating the Hash value of the root of the Merkel tree according to the construction algorithm of the Merkel tree by the ordered transaction set in the block. Specifically, referring to fig. 3, a schematic structural diagram of a mekerr tree is shown, the mekerr tree is also called a hash tree, the mekerr tree is divided into two parts, namely a binary tree and a transaction sequence, the transaction sequence is used as a leaf node of the whole mekerr tree and corresponds to the leaf node of the binary tree one to one, and in this embodiment, the transaction sequence is used for storing transaction information of a digital object. And in the binary tree part, the value of the leaf node takes the hash value corresponding to the transaction information of the digital object, and the hash values of the upper parent nodes are sequentially calculated based on the hash values of the leaf node until the hash value of the root of the Merkel tree is obtained. The characteristics of the Merkel tree are that any change to the bottom nodes is transmitted to the father nodes till the tree root, and the leaf nodes which change are easily positioned, thereby being particularly suitable for the quick, effective and safe verification of the existence and the integrity of the data. The use of the Merkel tree increases the data tampering difficulty and can realize effective recording of the transactions of the digital objects.
Set of contiguous block hash pointers (Adjacent Hashes): the system comprises a plurality of adjacent block Hash pointers, wherein different adjacent block Hash pointers point to current tail blocks in different adjacent consensus groups, and are used for recording Hash values of block heads of the current tail blocks of all the adjacent consensus groups when the transaction blocks generate the blocks.
In this embodiment, based on the preamble hash pointers and the set of neighbor hash pointers, the transaction block has two types of pointers pointing to the tail block in the current consensus group and the tail block in the neighbor consensus group, respectively, thereby formally forming a transaction block network as shown in fig. 4.
S102: under the condition that any transaction block generates a first newly-increased transaction block, after the current consensus group finishes consensus on the first newly-increased transaction block, the block head of the first newly-increased transaction block is respectively broadcast to all the adjacent consensus groups based on the adjacent block Hash pointer set, so that the adjacent consensus groups store the block head of the first newly-increased transaction block, wherein the current consensus group is the consensus group where the transaction block generating the first newly-increased transaction block is located.
In this embodiment, when the transaction amount stored in any transaction block reaches the transaction threshold, the transaction block packs the buffered transactions to form a new transaction block, i.e. the first newly added transaction block.
In the embodiment, when the transaction block generates the first new transaction block, that is, the consensus on the first new transaction block in the current consensus group starts, in a specific implementation, a PBFT (physical Byzantine Fault-tolerant algorithm) may be used as the block consensus algorithm in the consensus group. After the current consensus group completes the consensus on the first newly added transaction block, the current consensus group further broadcasts the block header of the first newly added transaction block to all neighboring consensus groups respectively. It should be noted that the block header is equivalent to the digest information of the transaction block, and can be used to verify the integrity and correctness of the transaction block itself.
In this embodiment, the block header Hash of the first newly added transaction block is the digest information of the transaction block, which can be used to verify the correctness of the block, and for the Adjacent consensus group storing the block header of the first newly added transaction block, the Adjacent consensus group will put the block header Hash of the first newly added transaction block into the adjacentshashes field of the head of the transaction block generated in the next round, and broadcast it to the second-order Adjacent consensus group, i.e. the Adjacent consensus group of the Adjacent consensus group, after the block is generated. Thus, over time, the number of the consensus groups in which the transaction block digests are located increases exponentially with time, and the difficulty of tampering increases exponentially accordingly.
Illustratively, referring to FIG. 5, a transaction block flooding diagram is shown. Assuming that a PBFT algorithm is adopted as a block consensus algorithm in the consensus groups, and the block generation period of the transaction blocks in each consensus group is the same, t 0 Transaction block generated at a time 0 Initially existing only in the block consensus group, when the block is modified 0 It is only necessary to attack the consensus group and control more than 2/3 nodes in the consensus group. And at t 1 Time, block 0 Is propagated to all neighboring consensus groups and is transmitted to t within the consensus group 1 The Adjacent Hashes in the transaction block generated at the moment points to,at this point, block is revised 0 Not only does it need to modify the block 0 It also needs to modify the transaction block generated by its neighbor consensus group 1 . And at t 2 Time block 1 The block head Hash is further included in Adjacent Hashes of transaction blocks generated by more consensus groups, for block 0 The difficulty of tampering will increase further. Assuming that the average number of adjacent consensus groups per consensus group is 6, the security of the block generated in the nth cycle will increase by 6 after k cycles k And (4) doubling.
According to the digital object access transaction evidence storage method under the ubiquitous environment, the adjacent consensus groups can be connected with each other through the adjacent block hash pointers by adding the adjacent block hash pointer set in each transaction block, and as the anti-tampering capability of the block heads of the transaction blocks is guaranteed by all hash pointers in the whole network, the content of any transaction block is tampered, besides the failure of the verification of the hash pointers in the consensus groups, the failure of the verification of the hash pointers of the adjacent blocks in the adjacent consensus groups can also be caused.
In a possible implementation manner, in consideration of the limited computing resources of the nodes in the ubiquitous environment, the PBFT algorithm with relatively low computational overhead is used as the block consensus algorithm in the consensus group, and based on the PBFT algorithm, the step of performing consensus on the first new transaction block in the current consensus group in S102 may specifically include the following sub-steps:
s102-1: taking the transaction block generating the first newly-added transaction block as a main node, and broadcasting a pre-preparation message aiming at the first newly-added transaction block to a slave node by the main node based on the hash pointer of the preamble block; the slave nodes are a plurality of other nodes except the master node in the current consensus group.
In this embodiment, referring to fig. 6, a schematic diagram of the PBFT consensus algorithm is shown. In a consensus group with the number of nodes in the group being N, assuming that the number f of malicious nodes is less than N/3, the consensus algorithm based on the PBFT is divided into three stages: a PRE-PREPARE phase (PRE-PREPARE), a PREPARE phase (PREPARE), and a COMMIT phase (COMMIT).
In the PRE-preparation phase, the master node assigns a sequence number n to the received message, and then sends a PRE-preparation message to all slave nodes in a group, wherein the format of the PRE-preparation message is < < PRE-PREPARE, v, n, d >, and m >, wherein v is a view number, m is message content, and d is a summary of the message content m. As can be seen from < PRE-PREPARE, v, n, d >, the message content itself (m) is not contained within the PRE-prepared message, which makes the PRE-prepared message sufficiently small. The purpose of the prepare message is to determine that the request is given a serial number n in the view v as a proof, so that the request can be traced in the process of view change, and it should be noted that view means that in one view, one is a master node, and the rest are called backup nodes, and in this embodiment, the backup nodes are represented by slave nodes.
S102-2: and for any slave node, after the slave node receives the pre-preparation message and successfully verifies the pre-preparation message, the slave node broadcasts the preparation information to a plurality of other nodes except the slave node in the current consensus group.
In this embodiment, when the node receives the PRE-preparation message < < PRE-PREPARE, v, n, d >, m >, the following checks need to be performed: the signatures of the request and pre-preparation messages are correct, and d is consistent with the digest of m; the current view number is v; the slave node never accepts a message m with sequence number n but with a different digest d in view v; whether the message digest of m is consistent with d in the message or not; the sequence number n of the pre-prepare message must be between the upper and lower bounds of the pipeline H and H.
It should be noted that the existence of the pipeline means that a failed node is prevented from consuming the sequence number space by using a large sequence number.
In this embodiment, if the slave node successfully verifies the pre-preparation message, the slave node enters the preparation phase. In the preparation phase, the current slave node broadcasts a preparation message < PREPARE, v, n, d, i > to other nodes in the group, and writes the preparation message and the preparation message into its message log, wherein i is the current slave node number. If the current slave node does not successfully verify the pre-preparation message, no subsequent operation is performed.
S102-3: and each time when the quantity of the preparation information which is received and verified by one node in the current consensus group in an accumulated mode exceeds a first preset quantity, the node broadcasts confirmation information to other nodes except the node in the current consensus group.
In this embodiment, when the master node and the slave node receive the preparation message < PREPARE, v, n, d, i >, the following checks are required: whether the message signature is correct; judging whether n is in the interval [ H, H ]; whether d is the same as d in the PRE-PPREPARE currently received. If the verification is not passed, the prepare message is discarded, otherwise the prepare message is accepted.
It should be noted that, in the PBFT algorithm, the first preset number may be set to 2f, where f is the number of malicious nodes. The condition for completion of the PREPARE preparation phase may be set as: whenever one node i writes (m, v, n, i) to the message log, and a prepare message consistent with the prepare message is received from 2f different nodes. The commit phase is entered after these two conditions are met.
It should be noted that, for a node entering the COMMIT phase, the node will broadcast an acknowledgement message < COMMIT, v, n, d, i > to other nodes in the group, and the other nodes receive the < COMMIT, v, n, d, i > message, and need to perform the following checks: whether the COMMIT message signature is correct; whether the current slave node has received n under the same view v; calculating the abstract of m, and judging whether the abstract is consistent with d; whether n is within the interval [ H, H ]. If the verification is not passed, the confirmation information is discarded, otherwise the confirmation information is accepted.
S102-4: and when the number of the confirmation information which is received by one node in the current consensus group in an accumulated mode and verified successfully reaches a second preset number, determining that the current consensus group achieves consensus on the first newly-added transaction block, wherein the second preset number is larger than the first preset number.
In this embodiment, since a BFT algorithm (Byzantine Fault Tolerance algorithm) can accommodate errors of almost N/3 error nodes, the second preset number is set to 2f +1, which can ensure that the consistency in the group is guaranteed, and the transaction information stored in the transaction block of the current consensus group is reliable.
It should be noted that the conditions for completion of the commit phase are as follows: and the number of the confirmation information which is successfully received and verified by the current node reaches a second preset number. When the commit phase is completed, the other nodes in the current consensus group are considered to have achieved consensus on the first newly added transaction block, and the node stores the block at the moment and takes the first newly added transaction block as the tail block of the block chain corresponding to the current consensus group.
In one example, with continued reference to fig. 6, assume N =4,f =1, i.e., there are four nodes (master Node, node) in the current consensus group 1 、Node 2 、Node 3 ) Wherein the Node 3 Is a malicious node or a bad node. The block consensus within the current consensus group comprises the following steps:
PRE-prep (PRE-preparation stage): the master Node generating the newly added transaction block broadcasts the pre-preparation message to the Node 1 、Node 2 And Node 3
PREPARE (preparatory stage): node 1 、Node 2 And Node 3 After receiving the prepare message, broadcasting the prepare message to other nodes again, specifically, the Node 1 Broadcast to host Node, node 2 And Node 3 ;Node 2 Broadcast to host Node, node 1 And Node 3 ;Node 3 Because the outage did not broadcast.
COMMIT (COMMIT phase): the master Node, node1 and Node2 will receive three preparation stages respectively in the last stage, and the number of the three preparation stages exceeds 2 (2 f), so the master Node, node1 and Node2 will broadcast confirmation messages respectively; at this time, if one Node (any one of the master Node, node1 and Node 2) receives 3 (2f + 1) pieces of confirmation messages, the consensus of the newly added transaction blocks in the current consensus group is completed.
In a possible embodiment, after S102, the method for storing the digital object access transaction certificate in the ubiquitous environment may further include the following steps:
s103: and under the condition that the transaction blocks in any adjacent consensus group generate a second newly-added transaction block, adding the block head of the first newly-added transaction block into the adjacent block hash pointer set of the second newly-added transaction block, and completing consensus on the second newly-added transaction block in the adjacent consensus group.
It should be noted that, for any consensus group, the transaction block network constructed based on the set of neighbor block hash pointers collects the block header information of the newly added transaction block broadcasted from the neighbor consensus group, that is, records the block header information of the current tail block of each consensus group.
In this embodiment, the propagation process of the block header of the first new added transaction block is described with the neighboring consensus group for generating the second new added transaction block as the current neighboring consensus group and standing at the current neighboring consensus group.
Specifically, since the block header information of the current tail block of the other consensus group is already recorded before the second newly added transaction block is generated by the current adjacent consensus group, the block header information of the current tail block of the other consensus group may include not only the block header information of the first newly added transaction block generated by the current consensus group, but also the block header information of the newly added transaction block generated by the other consensus group. Therefore, when the transaction block in the current Adjacent consensus group generates the second newly-added transaction block, the block header information of the current tail block of other consensus groups including the block header information of the first newly-added transaction block can be simultaneously written into the Adjacent Hashes field of the second newly-added transaction block, and the consensus on the second newly-added transaction block is completed in the current Adjacent consensus group.
It should be noted that the consensus process of the second newly-added transaction block in the current adjacent consensus group may refer to the consensus algorithm shown in S102-1-S102-4, which is not repeated herein.
S104: after the consensus on the second newly added transaction block is completed in the adjacent consensus group, the block headers of the second newly added transaction block are respectively broadcast to all adjacent consensus groups of the adjacent consensus groups.
In this embodiment, when the second newly added transaction block is generated, the Hash of the block head of the first newly added transaction block is written into the adjacentshashes field of the second newly added transaction block, and then the Hash pointer of the Adjacent block pointing to the first newly added transaction block from the second newly added transaction block is generated at the block head of the second newly added transaction block. If the newly added transaction blocks generated in the other common group except the first newly added transaction block are stored before the second newly added transaction block is generated, the corresponding adjacent block hash pointers are also generated, and then an adjacent block hash pointer set of the second newly added transaction block is formed.
In the present embodiment, all the adjacent consensus groups of the adjacent consensus groups are defined as second-order adjacent consensus groups. When the second-order adjacency consensus group generates a third newly added transaction block, the block head Hash of the second newly added transaction block containing the block head information of the first newly added transaction block is also written into the third newly added transaction block, and an adjacency block Hash pointer pointing from the third newly added transaction block to the second newly added transaction block is formed in the third newly added transaction block. Thus, the number of the common identification groups storing the Hash of the first newly added transaction block increases exponentially with time, and the tampering difficulty of the common identification groups also increases exponentially correspondingly.
In a possible implementation, S101 may specifically include the following steps:
s101-1: mapping the digital objects to a two-dimensional plane based on the position information of the digital objects to obtain a plurality of nodes; wherein different nodes correspond to different digital objects.
In this embodiment, all digital objects are mapped onto one two-dimensional plane, so that a plurality of nodes can be obtained on the two-dimensional plane, and different nodes represent different digital objects.
In this embodiment, the location information of the plurality of digital objects may be longitude and latitude information, and in a ubiquitous environment, the digital objects are mainly distributed in a real world and naturally have the longitude and latitude information. In specific implementation, the longitude and latitude information of the digital object can be automatically acquired through a global positioning system GPS, and the longitude and latitude attributes of the warehouse nodes can also be manually set.
S101-2: based on a plurality of nodes, the two-dimensional plane is divided into a plurality of polygons through a Delaunay triangulation algorithm, so that a Thiessen polygon formed by the polygons is obtained.
Referring to fig. 7, a schematic diagram of a thiessen polygon is shown. It should be noted that the thiessen polygon, also called Voronoi diagram, is a classical geometric figure, and the Voronoi diagram can divide a two-dimensional plane into a plurality of polygons according to given nodes. For convenience of description, a polygon is hereinafter represented by a Voronoi cell.
In the embodiment, the consensus groups are divided by Voronoi diagrams, and nodes belonging to the same Voronoi cell are divided in the same consensus group. The Voronoi diagram has many excellent characteristics, particularly in the aspect of constructing a consensus group of a terminal and an edge warehouse node, and has the following characteristics:
and (3) full coverage: the resulting Voronoi cell covers the entire two-dimensional plane intact without any extra leakages. Therefore, any node corresponding to all digital objects mapped on the two-dimensional plane belongs to and uniquely belongs to a certain consensus group.
Uniqueness: given the nodes on the plane, the generated Voronoi diagram is unique, and the resulting Voronoi diagram is the same regardless of which Voronoi point it is built from. Therefore, the terminal and the edge warehouse node can construct the consensus group in a distributed and self-organizing way without a central node.
The locality is as follows: the construction and modification of a certain local Voronoi cell only have influence on the shape of the adjacent Voronoi cell. Therefore, the Voronoi diagram can be stored in a distributed mode in each terminal and edge node, the node only needs to maintain the information of the adjacent consensus groups, and only needs to inform the adjacent consensus groups when the consensus groups are changed. Therefore, the consensus groups can complete distributed and autonomous scaling without any interference of global nodes.
It should be noted that, a common algorithm for constructing the Voronoi diagram includes: a scan line algorithm, a divide and conquer algorithm, an incremental method, etc. But it is the most efficient way among them to construct Voronoi diagrams using Delaunay triangulation algorithm. In this embodiment, a Delaunay triangulation algorithm is used to construct the Voronoi diagram, and based on the Delaunay triangulation algorithm, S101-2 may specifically include the following steps:
s101-2-1: and determining n nodes with fixed position information in the node set as n core nodes.
It should be noted that, with continued reference to fig. 7, a schematic diagram of a Voronoi diagram is shown, and the Voronoi diagram constructed by the Delaunay triangulation algorithm has two types of nodes: one type is a core node, as shown by a triangle in fig. 7, there is only one in each cell of the core node, and generally, the core node is a fixed node whose geographical location does not change frequently, such as a base station, a camera, a router, and the like, which have fixed location information and do not change frequently.
S101-2-2: and dividing the two-dimensional plane by using a Delaunay triangulation algorithm based on the n kernel nodes to generate a Delaunay triangulation graph.
It should be noted that, as shown in fig. 8, a schematic diagram of Delaunay triangulation is shown, the diagram of Delaunay triangulation is a dual diagram of Voronoi diagrams, a Delaunay triangulation can be uniquely obtained by connecting core nodes of each adjacent cell in the Voronoi diagrams, accordingly, a perpendicular bisector is made for each edge in the diagram of Delaunay triangulation, and each perpendicular bisector and an intersection point thereof are taken as an edge and a point of a polygon, so that a Voronoi diagram can be obtained.
S101-2-3: and obtaining the Thiessen polygon based on the Delaunay triangular subdivision diagram.
In the present embodiment, the Delaunay triangulation chart is stored, that is, the Delaunay triangulation chart is stored as a representative, based on the dual relationship between the Voronoi chart and the Delaunay triangulation chart. And then the whole Delaunay triangulation graph can be respectively stored in each core node in a distributed mode, so that when the state of the subsequent digital object is changed, the information stored in the core node in the consensus group where the digital object is located only needs to be updated.
S101-3: and dividing nodes belonging to the same polygon into the same consensus group, taking the nodes in each consensus group as transaction blocks, and constructing block chains corresponding to each consensus group to obtain a plurality of consensus groups.
In the embodiment, the whole Voronoi diagram is stored in the nodes in a distributed manner, and according to the characteristics of the thiessen polygon, the dynamic change of a certain node only affects the adjacent constant Voronoi cells, so that the self-adaptive adjustment of the dynamic nodes in the consensus group can be realized with relatively low overhead, the fragment block chain technology can be effectively applied to the ubiquitous environment, the advantages of the fragment block chain technology are exerted, and the access transaction evidence storage requirement of a large number of digital objects is further met.
It should be noted that the overall throughput T of the technique using the segmented blockchain is sum The method is determined by two parts: endocytosis and vomiting volume T of consensus group shard And number of consensus groups T sum . When the total amount of nodes in the whole network is N, the average number of nodes in the consensus group is M shard The system throughput is described as follows:
Figure BDA0003824882860000181
in this embodiment, since the number of consensus groups can be dynamically expanded when a node joins a consensus group, the number M of nodes in a group can be ensured shard At a constant level. In addition, each consensus group only broadcasts the block header information of the newly added transaction block to the adjacent consensus groups, and according to the Voronoi diagram characteristics, the average number of the adjacent consensus groups of each consensus group is 6, the network overhead of block witnessing among the consensus groups is small, and the throughput of the system cannot be influenced; the network cost of the block consensus in the consensus group is mainly the cost of the PBFT algorithm, when the number of nodes is small, the PBFT algorithm can quickly achieve consensus, but when the number of nodes is increased, the efficiency of the PBFT algorithm is reduced, because the number of the nodes in the consensus group can be maintained at a small constant level in the implementation mode, on the other hand, the physical distance and the network distance of the nodes in the consensus group are relatively adjacent, the PBFT algorithm cannot meet obvious network bottleneckTherefore, the network overhead for recognizing block consensus in a group can be maintained at a low level.
In summary, the digital object access transaction evidence storing method under the ubiquitous environment provided by the embodiment of the application not only ensures the credibility of the transaction based on the chain structure and the practical Byzantine fault-tolerant algorithm PBFT in the consensus group, but also spreads the transaction block abstract among the groups to form a transaction block network along with the lapse of time, exponentially increases the tampering difficulty of the transaction record on the basis of not influencing the transaction evidence storing efficiency and smaller network overhead, and fully meets the credible evidence storing requirement of the digital object access transaction under the ubiquitous environment.
In a second aspect, referring to fig. 9, it is shown that the embodiment of the present application provides a digital object access transaction verification apparatus 900 in a ubiquitous environment, and the digital object access transaction verification apparatus 900 in the ubiquitous environment includes:
a consensus group dividing module 901, configured to divide a plurality of digital objects to obtain a plurality of consensus groups; each consensus group is a block chain consisting of a plurality of transaction blocks; wherein, different transaction blocks correspond to different digital objects, the transaction blocks comprise an adjacent block hash pointer set, the adjacent block hash pointer set comprises a plurality of adjacent block hash pointers, and different adjacent block hash pointers point to different adjacent consensus groups;
a storage module 902, configured to broadcast the block header of the first newly added transaction block to all neighboring common identification groups respectively based on the neighboring block hash pointer set after the current common identification group completes common identification on the first newly added transaction block when any transaction block generates the first newly added transaction block, so that the neighboring common identification groups store the block header of the first newly added transaction block, where the current common identification group is the common identification group where the transaction block generating the first newly added transaction block is located.
In an embodiment of the present application, the transaction block further includes a preamble block hash pointer, the preamble block hash pointer pointing to a preamble block of the transaction block; the digital object access transaction verification apparatus 900 under the ubiquitous environment further includes:
and the consensus module is used for performing consensus on the first newly-added transaction block in the current consensus group based on the prefix block hash pointer of the transaction block.
In an embodiment of the present application, the consensus module comprises:
the pre-prepared message broadcasting submodule is used for taking the transaction block generating the first newly-added transaction block as a main node, and the main node broadcasts the pre-prepared message aiming at the first newly-added transaction block to the slave node based on the preorder block hash pointer; the slave nodes are a plurality of other nodes except the master node in the current consensus group;
the preparation information broadcasting submodule is used for broadcasting the preparation information to other nodes except the slave node in the current consensus group by the slave node after the slave node receives the preparation information and successfully verifies the preparation information aiming at any slave node;
and the determining submodule is used for determining that the current consensus group realizes consensus on the first newly-added transaction block when the number of the confirmation information which is received by one node in the current consensus group in an accumulated mode and successfully verified reaches a second preset number, wherein the second preset number is larger than the first preset number.
In an embodiment of the present application, the digital object access transaction verification apparatus 900 in the ubiquitous environment further includes:
a block head adding module, configured to add the block head of the first newly added transaction block into the hash pointer set of the adjacent block of the second newly added transaction block when the second newly added transaction block is generated by the transaction block in any adjacent consensus group, and complete consensus on the second newly added transaction block in the adjacent consensus group;
and the broadcasting module is used for broadcasting the block heads of the second newly-added transaction blocks to all the adjacent consensus groups of the adjacent consensus groups respectively after the consensus on the second newly-added transaction blocks is completed in the adjacent consensus groups.
In an embodiment of the present application, the consensus group division module 901 includes:
the mapping submodule is used for mapping the digital objects to a two-dimensional plane based on the position information of the digital objects to obtain a plurality of nodes; wherein different nodes correspond to different digital objects;
the Thiessen polygon construction submodule is used for dividing the two-dimensional plane into a plurality of polygons through a Delaunay triangulation algorithm based on a plurality of nodes so as to obtain a Thiessen polygon formed by the polygons;
and the consensus group partitioning submodule is used for partitioning the nodes belonging to the same polygon into the same consensus group, taking the nodes in each consensus group as transaction blocks, and constructing a block chain corresponding to each consensus group to obtain a plurality of consensus groups.
It should be noted that, for the specific implementation of the digital object access transaction certificate storing apparatus 900 in a ubiquitous environment according to the embodiment of the present application, reference is made to the specific implementation of the digital object access transaction certificate storing method in a ubiquitous environment provided in the first aspect of the embodiment of the present application, and details are not repeated here.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, apparatus, or computer program product. Accordingly, embodiments of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and so forth) having computer-usable program code embodied therein.
Embodiments of the present invention are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing terminal to cause a series of operational steps to be performed on the computer or other programmable terminal to produce a computer implemented process such that the instructions which execute on the computer or other programmable terminal provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the embodiments of the invention.
Finally, it should also be noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "include", "including" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or terminal device including a series of elements includes not only those elements but also other elements not explicitly listed or inherent to such process, method, article, or terminal device. Without further limitation, an element defined by the phrases "comprising one of \ 8230; \8230;" does not exclude the presence of additional like elements in a process, method, article, or terminal device that comprises the element.
The method and the device for digital object access transaction evidence storage in ubiquitous environment provided by the invention are introduced in detail, and a specific example is applied in the text to explain the principle and the implementation mode of the invention, and the description of the embodiment is only used for helping to understand the method and the core idea of the invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.

Claims (10)

1. A digital object access transaction evidence storing method under a ubiquitous environment is characterized by comprising the following steps:
dividing a plurality of digital objects to obtain a plurality of consensus groups; each consensus group is a block chain consisting of a plurality of transaction blocks; wherein different transaction blocks correspond to different digital objects, the transaction blocks include a set of contiguous block hash pointers, the set of contiguous block hash pointers includes a plurality of contiguous block hash pointers, different contiguous block hash pointers point to different contiguous consensus groups;
under the condition that any transaction block generates a first newly-increased transaction block, after the current consensus group finishes consensus on the first newly-increased transaction block, respectively broadcasting the block head of the first newly-increased transaction block to all the adjacent consensus groups based on the adjacent block Hash pointer set so that the adjacent consensus groups store the block head of the first newly-increased transaction block, wherein the current consensus group is the consensus group where the transaction block generating the first newly-increased transaction block is located.
2. The ubiquitous digital object access transaction credentialing method of claim 1, wherein said transaction block further comprises a preamble chunk hash pointer pointing to a preamble chunk of said transaction block;
based on the set of neighbor block hash pointers, broadcasting the block header of the first newly added transaction block to all neighbor consensus groups respectively, so that before the neighbor consensus groups store the block header of the first newly added transaction block, the method for storing digital object access transactions under the ubiquitous environment further comprises:
consensus is performed on the first newly added transaction block within the current consensus group based on a preamble block hash pointer of the transaction block.
3. The method of claim 2, wherein consensus on the first newly added transaction block within the current consensus set based on a prolog block hash pointer of the transaction block comprises:
taking a transaction block generating a first newly added transaction block as a master node, wherein the master node broadcasts a pre-preparation message aiming at the first newly added transaction block to a slave node based on the preamble block hash pointer; the slave nodes are a plurality of other nodes in the current consensus group except the master node;
for any slave node, after the slave node receives the pre-preparation message and successfully verifies the pre-preparation message, the slave node broadcasts preparation information to a plurality of other nodes except the slave node in the current consensus group;
when the number of the preparation information which is received by one node in the current consensus group in an accumulated mode and verified successfully exceeds a first preset number, the node broadcasts confirmation information to other nodes except the node in the current consensus group;
and when the number of the acknowledgement messages which are received accumulatively by one node and verified successfully reaches a second preset number, determining that the current consensus group agrees with the first newly added transaction block, wherein the second preset number is greater than the first preset number.
4. The method of claim 1, wherein after the current consensus group completes consensus on the first newly added transaction block, the method further comprises broadcasting a block header of the first newly added transaction block to all neighboring consensus groups based on the set of neighboring block hash pointers, so that the neighboring consensus groups store the block header of the first newly added transaction block, and wherein the method further comprises:
under the condition that a transaction block in any adjacent consensus group generates a second newly-added transaction block, adding a block head of the first newly-added transaction block into a hash pointer set of adjacent blocks of the second newly-added transaction block, and completing consensus on the second newly-added transaction block in the adjacent consensus group;
after the consensus on the second newly added transaction block is completed in the adjacent consensus group, broadcasting the block headers of the second newly added transaction block to all adjacent consensus groups of the adjacent consensus group respectively.
5. The method of claim 1, wherein partitioning the plurality of digital objects into a plurality of consensus groups comprises:
mapping the digital objects to a two-dimensional plane based on the position information of the digital objects to obtain a plurality of nodes; wherein different nodes correspond to different digital objects;
dividing the two-dimensional plane into a plurality of polygons by a Delaunay triangulation algorithm based on the plurality of nodes to obtain a Thiessen polygon composed of the plurality of polygons;
and dividing nodes belonging to the same polygon into the same consensus group, taking the nodes in each consensus group as transaction blocks, and constructing block chains corresponding to each consensus group to obtain the multiple consensus groups.
6. A digital object access transaction verification device in a ubiquitous environment, the digital object access transaction verification device in a ubiquitous environment comprising:
the consensus group dividing module is used for dividing the digital objects to obtain a plurality of consensus groups; each consensus group is a block chain consisting of a plurality of transaction blocks; wherein different transaction blocks correspond to different digital objects, the transaction blocks include a set of contiguous block hash pointers, the set of contiguous block hash pointers includes a plurality of contiguous block hash pointers, different contiguous block hash pointers point to different contiguous consensus groups;
and the verification module is used for broadcasting the block head of the first newly-increased transaction block to all adjacent consensus groups respectively based on the adjacent block Hash pointer set after the current consensus group finishes the consensus on the first newly-increased transaction block under the condition that any transaction block generates the first newly-increased transaction block, so that the adjacent consensus groups store the block head of the first newly-increased transaction block, wherein the current consensus group is the consensus group where the transaction block generating the first newly-increased transaction block is located.
7. The ubiquitous digital object access transaction credentialing apparatus of claim 6, wherein the transaction block further comprises a prologue block hash pointer, the prologue block hash pointer pointing to a prologue block of the transaction block;
the digital object access transaction certificate storing device under the ubiquitous environment further comprises:
a consensus module configured to perform consensus on the first newly added transaction block in the current consensus group based on the preamble block hash pointer of the transaction block.
8. The ubiquitous digital object access transaction credentialing apparatus according to claim 7, wherein the consensus module comprises:
the pre-preparation message broadcasting submodule is used for taking the transaction block generating the first newly-increased transaction block as a main node, and the main node broadcasts a pre-preparation message aiming at the first newly-increased transaction block to a slave node based on the preorder block hash pointer; the slave nodes are a plurality of other nodes in the current consensus group except the master node;
a preparation information broadcasting sub-module, configured to broadcast, for any of the slave nodes, preparation information to a plurality of nodes other than the slave node in the current consensus group after the slave node receives the preparation message and successfully verifies the preparation message;
and the determining submodule is used for determining that the current consensus group agrees with the first newly-added transaction block when the number of the confirmation information which is received by one node in the current consensus group in an accumulated mode and successfully verified reaches a second preset number, wherein the second preset number is larger than the first preset number.
9. The ubiquitous digital object access transaction verification device according to claim 6, wherein the ubiquitous digital object access transaction verification device further comprises:
a block head adding module, configured to add a block head of a first newly-added transaction block into an adjacent block hash pointer set of a second newly-added transaction block when the second newly-added transaction block is generated by a transaction block in any adjacent consensus group, and complete consensus on the second newly-added transaction block in the adjacent consensus group;
and a broadcasting module, configured to broadcast the block headers of the second newly added transaction block to all adjacent consensus groups of the adjacent consensus groups after the consensus on the second newly added transaction block is completed in the adjacent consensus group.
10. The ubiquitous digital object access transaction verification apparatus according to claim 6, wherein the consensus group partitioning module comprises:
the mapping submodule is used for mapping the digital objects to a two-dimensional plane based on the position information of the digital objects to obtain a plurality of nodes; wherein different nodes correspond to different digital objects;
the Thiessen polygon construction submodule is used for dividing the two-dimensional plane into a plurality of polygons through a Delaunay triangulation algorithm based on the plurality of nodes so as to obtain a Thiessen polygon formed by the polygons;
and the consensus group partitioning submodule is used for partitioning the nodes belonging to the same polygon into the same consensus group, taking the nodes in each consensus group as transaction blocks, and constructing block chains corresponding to each consensus group to obtain the multiple consensus groups.
CN202211059908.0A 2022-08-31 2022-08-31 Digital object access transaction evidence storing method and device under ubiquitous environment Pending CN115481446A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211059908.0A CN115481446A (en) 2022-08-31 2022-08-31 Digital object access transaction evidence storing method and device under ubiquitous environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211059908.0A CN115481446A (en) 2022-08-31 2022-08-31 Digital object access transaction evidence storing method and device under ubiquitous environment

Publications (1)

Publication Number Publication Date
CN115481446A true CN115481446A (en) 2022-12-16

Family

ID=84421874

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211059908.0A Pending CN115481446A (en) 2022-08-31 2022-08-31 Digital object access transaction evidence storing method and device under ubiquitous environment

Country Status (1)

Country Link
CN (1) CN115481446A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108846749A (en) * 2018-05-31 2018-11-20 杭州秘猿科技有限公司 A kind of sliced transaction execution system and method based on block chain technology
WO2020211460A1 (en) * 2019-04-16 2020-10-22 北京艾摩瑞策科技有限公司 Logical sharding method and system for blockchain nodes
CN113541968A (en) * 2021-09-16 2021-10-22 中国信息通信研究院 Consensus method, device and block chain system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108846749A (en) * 2018-05-31 2018-11-20 杭州秘猿科技有限公司 A kind of sliced transaction execution system and method based on block chain technology
WO2020211460A1 (en) * 2019-04-16 2020-10-22 北京艾摩瑞策科技有限公司 Logical sharding method and system for blockchain nodes
CN113541968A (en) * 2021-09-16 2021-10-22 中国信息通信研究院 Consensus method, device and block chain system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
C. LUO ET AL: "Fission: Autonomous, Scalable Sharding for IoT Blockchain", 2022 IEEE 46TH ANNUAL COMPUTERS, SOFTWARE, AND APPLICATIONS CONFERENCE (COMPSAC) *

Similar Documents

Publication Publication Date Title
US11914712B1 (en) Blockchain based secure naming and update verification
CN109002725B (en) Data processing system based on block chain
CN109241161B (en) Meteorological data management method
CN110825420B (en) Method, device, equipment and storage medium for updating configuration parameters of distributed cluster
RU2449358C1 (en) Distributed file system and data block consistency managing method thereof
CN111177080A (en) Knowledge graph storage and verification method based on block chain and IPFS
US8943082B2 (en) Self-assignment of node identifier in a cluster system
US9069571B2 (en) Propagation of unique device names in a cluster system
CN110825698B (en) Metadata management method and related device
CN111931220B (en) Consensus processing method, device, medium and electronic equipment for block chain network
US8788465B2 (en) Notification of configuration updates in a cluster system
CN111737104A (en) Block chain network service platform, test case sharing method thereof and storage medium
CN113986143A (en) Block chain log storage-oriented high-reliability low-overhead data storage method
Dubois et al. The weakest failure detector for eventual consistency
CN112395113A (en) Practical Byzantine fault-tolerant consensus method and device and readable storage medium
CN114416665B (en) Method, device and medium for detecting and repairing data consistency
CN111245897A (en) Data processing method, device, system, storage medium and processor
CN115473895B (en) Method and device for dividing digital object warehouse node consensus groups under ubiquitous environment
CN113297133A (en) Service migration quality guarantee method and system
CN111327680B (en) Authentication data synchronization method, device, system, computer equipment and storage medium
WO2024001304A1 (en) Data processing method and related device
CN115481446A (en) Digital object access transaction evidence storing method and device under ubiquitous environment
CN111565173A (en) Intelligent contract management method and device for block chain system and hardware equipment
US20120209821A1 (en) Validation of access to a shared data record subject to read and write access by multiple requesters
CN110688200A (en) Method and device for migrating disk tree of virtual machine on line

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20221216