WO2021175109A1 - 一种区块链方法、系统及计算机可读存储介质 - Google Patents

一种区块链方法、系统及计算机可读存储介质 Download PDF

Info

Publication number
WO2021175109A1
WO2021175109A1 PCT/CN2021/076183 CN2021076183W WO2021175109A1 WO 2021175109 A1 WO2021175109 A1 WO 2021175109A1 CN 2021076183 W CN2021076183 W CN 2021076183W WO 2021175109 A1 WO2021175109 A1 WO 2021175109A1
Authority
WO
WIPO (PCT)
Prior art keywords
equity
transaction
group
token
output
Prior art date
Application number
PCT/CN2021/076183
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 徐皓
Publication of WO2021175109A1 publication Critical patent/WO2021175109A1/zh
Priority to US17/896,316 priority Critical patent/US11954120B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification

Definitions

  • the present invention relates to the field of block chains, in particular to a block chain method, system and computer readable storage medium.
  • Blockchain is a distributed accounting system.
  • This distributed accounting system includes a distributed network composed of multiple nodes, and each node runs a program that processes the same blockchain protocol to record transactions on the blockchain.
  • the transaction consists of a number of input and output tokens.
  • Token is a value-encrypted digital certificate that can be circulated in the blockchain. Token has two elements: value and ownership. Traditionally, the value elements of a token are expressed in a single numerical value. This type of token is called a numerical token. For example, a Bitcoin pass, if its owner and encryption are aside, its core content is the number of Bitcoins.
  • the present invention provides a blockchain method, which aims to solve the above technical problems.
  • the present invention is realized as a block chain method, which specifically includes the following steps:
  • S1. Receive transaction information or block information, where the block information is packaged and formed by the transaction information;
  • the received block is legal, the block is added to the end of the local blockchain data; if the received transaction is legal, the transaction is retained, and the received legal transaction is periodically packaged into Block, add the packaged block to the end of the local blockchain data and broadcast it to other nodes in the blockchain network;
  • the transaction includes a token, and the token includes a value item and an equity set, the equity set is a set of equity items, and the equity item is an index or handle pointing to a node in the equity forest;
  • the value item is: a numerical value, a geometric body or a unique value; the unique value is an identification of a thing;
  • the equity forest is composed of a set of equity trees.
  • the equity tree is a tree-like data structure.
  • the nodes in the equity tree contain text describing the scope of equity.
  • the child nodes of the node always exist in pairs, and the node has the equity of a pair of child nodes.
  • the scope is complementary within the equity scope of its parent node.
  • verifying the legitimacy of the transaction includes verifying the integrity of the transaction.
  • verifying the integrity of the transaction specifically includes the following steps:
  • verifying the legitimacy of the transaction includes verifying the integrity of the transaction.
  • verifying the integrity of the transaction specifically includes the following steps:
  • the basic equity set is a subset of the union of the input token equity set and the output token equity set in the transaction. No equity item in the subset is the ancestor of another equity item, and any equity item in the union or a basic equity
  • a concentrated basic equity item may be formed by a complementary combination of a group of basic equity items in a basic equity concentration;
  • Geometric integrity If the input geometry group and the output geometry group are the same, the input geometry group and the output geometry group are geometrically complete.
  • Condition 1 There is no spatial overlap between the geometry in the output geometry group
  • the geometry in the transaction is a polygon, and the polygon is represented in the form of a set of rings.
  • a ring is a set of ordered boundary lines.
  • the directed boundary lines are data containing boundary lines and their directions.
  • a line forest is a set of boundary line trees; the boundary line tree is a tree-like data structure; the boundary line is an index or handle pointing to a node in the boundary line forest, and the node of the boundary line tree represents the root of the node
  • the input merged polygon group and the output merged polygon group are composed of the same polygon, it is determined that the input merged polygon group and the output merged polygon group are geometrically complete;
  • Operation 1 Cycle through the list of directed boundary lines of one of the rings;
  • Operation 2 Replace a directed boundary line with a sub-boundary line in one of the rings;
  • the rings in the two polygons correspond one-to-one according to the equivalence relationship, the two polygons are the same.
  • the method of merging polygons specifically includes the following steps:
  • the ring Q and the ring R are rearranged in the original cyclic order but excluding the boundary lines in the zigzag line segment (e j , f j ) to form two directed boundary line lists, the first directed boundary line of the two directed boundary line lists
  • the start point and the end point of the tail directed boundary line are the end points of the zigzag line segment (e j , f j ), and then the above two directed boundary line lists are spliced into a list, and the spliced directed boundary line list forms a new ring W;
  • the basic equity set construction method specifically includes the following steps:
  • step 72) Based on step 73) and step 74) replace the equity items in the set R1 until the set R1 until there is no equity item with the ancestor-descendant relationship in the set R1, then the set R1 is the basic equity set;
  • test result If the test result is yes, then obtain each equity item r in the parent-child relationship chain between descendants and ancestors in the equity item pair except for the ancestor, and add the complement of the equity item r to the union R1, from The ancestor equity item is deleted from the union R1.
  • verifying the legitimacy of the transaction includes verifying the integrity of the transaction, the value item of the pass is a unique value, and verifying the integrity of the transaction specifically includes the following steps:
  • the present invention is realized in this way.
  • the user constructs a transaction and sends the transaction data to the node in the blockchain.
  • the structure of the transaction includes the splitting and merging of rights and interests.
  • the method of splitting rights is as follows:
  • the method of equity merger is as follows:
  • the transaction includes a token, which includes a value item and an equity set; the value item is: a value, a geometric body, or a unique value; the unique value is an identifier of a thing; the equity set is a collection of equity items, the
  • the equity item refers to the index or handle of the node in the equity forest; the equity forest is composed of a group of equity trees.
  • the equity tree is a tree-like data structure.
  • the nodes in the equity tree contain the text description of the scope of the equity, and the child nodes of the node Points exist in pairs, called child node pairs, and the rights and interests of the child node pairs are complementary within the rights and interests of the parent node.
  • the present invention is realized in this way, a blockchain system, the system is composed of a number of nodes and a number of terminals, and the nodes and the terminals are connected to the Internet and communicate with each other through the Internet;
  • the terminal constructs transaction information based on the aforementioned blockchain method according to the user, and sends the transaction information to the node in the blockchain system;
  • the node receives transaction information sent by the terminal or block information sent by other nodes, and the block information is packaged by transaction information; the node verifies the received transaction or block based on the aforementioned blockchain method If the received block is legal, the block will be added to the end of the local blockchain data; if the received transaction is legal, the transaction will be retained, and the received block will be periodically added.
  • the legal transactions are packaged into blocks, and the packaged blocks are added to the end of the local block chain data and broadcast to other nodes in the block chain network.
  • the present invention is implemented as a computer-readable storage medium with a computer program stored thereon, and is characterized in that, when the computer program is executed by a processor, any of the aforementioned blockchain methods is implemented.
  • the blockchain system consists of multiple blockchain nodes connected to the Internet. Each node can receive transaction information from network terminals and blocks from other nodes. After the node receives the transaction information, it verifies that the received transaction is legal, including verifying that the input of the transaction is an unused pass in the blockchain; the transaction has proper authorization; and the transaction is complete.
  • the blockchain system only accepts verified transactions.
  • the present invention proposes a method for generating and verifying transactions with equity certificates.
  • the present invention proposes that the token can contain a set of rights; rights can be divided or merged.
  • the present invention defines the method of division and merging; any rights can be divided into two complementary rights, positive and negative, according to any text definition, and vice versa.
  • Equity can also be combined into one equity.
  • the token can be split by equity, the equity set in the token is split into two disjoint subsets, and one token is split into two.
  • the present invention also proposes that the value form of the token can be not only a numerical value, but also a geometric body or a unique value.
  • the present invention proposes specific transaction verification, token splitting and merging methods. These methods together constitute a block chain system, which can realize the functions that the traditional block chain system cannot provide, and better meet the needs of users.
  • a traditional blockchain can only represent one kind of land rights, such as land ownership.
  • a blockchain with rights and interests represented by polygons can represent various land rights, such as ownership, contracting rights, management rights, and output rights. To better meet the needs of land circulation.
  • the traditional block chain can only fully transfer the rights represented by the value, and cannot perform partial transfers. For example, if the value represents the membership rights of a movie theater, the traditional blockchain only allows the transfer of the entire membership rights, and does not allow the transfer of part of the membership rights, such as the right to watch a certain movie.
  • the right to watch a certain movie can be transferred while retaining the rights of other members.
  • Unique value is suitable for representing unique objects in the real world, such as artworks. Although items are unique, there can be many rights to items. Artwork can be sold, pledged, rented, etc. By recording the circulation of artwork rights on the blockchain, the anti-counterfeiting of artwork can be improved, and the circulation of artwork can also be increased.
  • Figure 1 is a schematic structural diagram of a blockchain system provided by an embodiment of the present invention.
  • FIG. 2 is a schematic diagram of the structure of the equity relationship provided by an embodiment of the present invention.
  • FIG. 3 is a schematic diagram of a token transaction with equity polygons provided by an embodiment of the present invention, where (a) is a geometric diagram of the input polygon, and (b) is a geometric diagram of the output polygon;
  • FIG. 4 is a schematic diagram of the data structure storage of geometric figures provided by an embodiment of the present invention, where (a) is a schematic diagram of the geometric figures, (b) is a tree-like data storage structure of the geometric figures in Figure (a);
  • FIG. 5 is a schematic structural diagram of geometric figures to be merged according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram 1 of geometric figure merging provided by an embodiment of the present invention.
  • FIG. 7 is a second schematic diagram of geometric figure merging provided by an embodiment of the present invention.
  • Figure 1 is a blockchain system consisting of one or more network terminals (S102) connected to the Internet (S101) and one or more blockchain nodes (S103) connected to the Internet (S101).
  • the network terminal (S102) constructs a transaction according to the user's input, and sends the transaction information to the blockchain node (S103) via the Internet (S101).
  • Each blockchain node (S103) can receive transaction information from the network terminal (S102) and blocks from other blockchain nodes (S103).
  • a transaction includes a set of inputs and a set of outputs. Each output of the transaction is a token.
  • each input of the transaction is a reference to another transaction's output token; in other block implementations, each input of the transaction is also a token.
  • the node (S103) After receiving the transaction information, the node (S103) verifies that the received transaction is legal, including verifying that the input of the transaction is an unused token in the blockchain; for the blockchain that uses the unspent transaction output (UTXO) accounting method
  • the unused token refers to the output of a transaction that has not been cited as input by any transaction
  • the blockchain that uses account accounting the unused token refers to the token provider The token in the account; the transaction has proper authorization; the transaction is complete.
  • the node (S103) packages the legal transactions received within a period of time to generate a block, adds the block to the local blockchain data as the latest block of the blockchain, and sends it to other networks in the network through the Internet (S101)
  • the node (S103) broadcasts. After the node (S103) receives a new block from other nodes (S103), it verifies that all transactions in the received block are legal. If all transactions are verified as legal, the block is added to the end of the local blockchain as the
  • the network terminal (S102) can be a computer, a mobile phone, or other smart devices
  • the blockchain node (S103) can be a computer, a blockchain mining machine, or a server.
  • the embodiment of the present invention is a blockchain method, which specifically includes the following steps:
  • the received block is legal, the block is added to the end of the local blockchain data; if the received transaction is legal, the transaction is retained, and the received legal transaction is packaged into a block periodically, The packaged blocks are added to the end of the local blockchain data and broadcast to other nodes in the blockchain network.
  • the blockchain node verifies the legitimacy of the transaction.
  • the blockchain node is composed of equity database and processor unit.
  • the equity database stores the definitions of all equity in the blockchain in a tree-like data structure
  • the processor unit stores the equity definition data in the equity database, and verifies the legality of the transaction based on the information in the equity database.
  • the verification of the legality of the transaction includes verifying the integrity of the transaction.
  • a transaction includes a set of inputs and a set of outputs.
  • the input is a reference to the tokens available in the blockchain, and the output is a new token generated by the exchange.
  • the mainstream blockchain technology has two accounting methods. One is the UTXO accounting method, as used by the Bitcoin network. This method does not centrally record the user’s assets. The user uses cryptography to unlock the transaction output to prove The ownership of the transaction output simultaneously and spends the transaction output. The other is an account bookkeeping method that is more similar to traditional bookkeeping methods, such as the Ethereum network.
  • the blockchain in addition to transaction records, also stores the mapping relationship from address to asset; each The mapping relationship is an account; the address is the hash value of a public key, and the asset transfer party in the transaction cryptographically proves its ownership of the transaction input address; once the legal transaction is added to the blockchain, the node updates the mapping relationship, from The transferred assets are deducted from the account of the asset exporter and added to the account of the asset importer to complete the transfer.
  • the UTXO accounting method is selected, the available token is the unused output of other transactions.
  • the account is a mapping relationship from the blockchain address to the pass set, and the available pass is the pass in the pass set; the transferer of the pass in the transaction proves its transaction by cryptography
  • the ownership of the address in the input the node verifies that there is a pass required by the transaction input in the pass set corresponding to the address, once the transaction is recorded in the blockchain, the node deletes the pass of the transaction input from the pass set of the transaction input party’s account , Add the tokens in the transaction output to the token set of the transaction exporter’s account.
  • the pass contains the following data: a) a value item; b) an equity set consisting of equity items.
  • a value item a value item
  • V, R a token
  • V the value item of the token
  • R the set of equity items.
  • the value of the token can be one of the following three types:
  • a value for example, the value 5 represents 5 bitcoins;
  • a geometric body for example, a polygon represents a piece of land; the geometric body in the certificate is not limited to a polygon, it can be a polyhedron, or any mathematical geometric body, such as a sphere, a curved surface, and so on.
  • Unique values can represent real or virtual objects, events, or people.
  • a unique value can be a hash value, a real or virtual thing (including people, events, objects, places, regions, projects, plans, organizations, groups, concepts, procedures, methods, processes, natural phenomena, etc.) (Thing) name or code, an index value or handle.
  • the hash value of a scanned image of a painting used to represent a painting is a unique value.
  • the names of people and places can also be unique values.
  • the event name, such as "2016 Olympic Games” can also be used as a unique value.
  • Virtual things, such as the "Starship Enterprise”, can also be used as a unique value.
  • Any equity F can be split into two positive and negative equity according to any definition d; the original equity is called the parent equity, and the split equity is the child equity; these two child equity are complementary under the parent’s equity and are recorded in F
  • the child equity that is positive for the content of definition d is F(d)
  • the child equity that is negative for the content of definition d is F( ⁇ d).
  • F(d) is the supplement of F( ⁇ d)
  • F( ⁇ d) is the supplement of F(d).
  • Equity is represented by a triple (p, d, f), if its index value is R, it can be recorded as R (p, d, f), or simply as R.
  • p is the parent equity item, which is the index value of an equity item in the blockchain (nil if there is no parent equity item);
  • d is the definition item, which is any text of any length; the text includes human-readable Words, or data that can be processed by computer programs;
  • f is a qualitative item, which is a Boolean value; if f is true, the range of rights R is the right to affirm the content of the definition d within the range of p; if f is false, The scope of rights R is the right to negate the content of definition d within the meaning of p.
  • Equity forms a tree-like data structure according to its parent-child relationship, called the equity tree, where each node represents an equity, and the parent-child relationship of the nodes in the tree represents the parent-child relationship of equity.
  • the child nodes of a node always appear in pairs in a complementary relationship.
  • the equity database stores multiple equity trees, and these equity trees constitute an equity forest.
  • Each equity item in the token equity collection is the index or handle of the node in the equity forest.
  • a token covers an equity item if the equity item itself or one of its ancestors belongs to the equity set of the token.
  • the token holder can continue to split into [5, ⁇ S(R,“2019/11/12”,true) ⁇ ], and [5, ⁇ T(R,“2019/11/12” , False)) ⁇ ] Two tokens. With this constant, you can split the rights and interests every Tuesday and invite 5 people to watch the movie.
  • Blockchain nodes verify the legitimacy of the transaction. Verifying the legitimacy of the transaction includes verifying the integrity of the transaction. Only a complete transaction is a legal transaction. Integrity refers to the characteristics of input and output that are the same in nature and quantity, and its specific connotation depends on the type of token. The legality verification also includes the traditional cryptographic method to verify the ownership of the token in the transaction, but this does not belong to the content of the present invention.
  • the program to verify the integrity of the transaction can be part of the blockchain kernel program, or it can be included in the smart contract deployed on the blockchain.
  • the blockchain kernel program executes the smart contract, the transaction is verified. No matter what method is adopted, it belongs to the protection scope of the present invention.
  • An embodiment of the present invention is a method for verifying the integrity of a transaction for a token whose value item is a numerical value, which is specifically as follows:
  • the method of splitting is to construct a simple token for each equity item of the token for each token in the input token group and output token group.
  • the equity set of a simple pass only contains the equity item, and the value item is the same as the value item of the original pass; the simple pass split from the input pass is included in the input simple pass group; it is split from the output pass The simple token of is included in the output simple token group;
  • step a For the input token group, first divide the token into simple tokens according to step a), the result is: [5, a], [5, b], [5, c], [5, d], [7 , A], [7, e], [7, f], [7, g]. Then follow step d) to merge, the result is: [12, a], [5, b], [5, c], [5, d], [7, e], [7, f], [7, g]. Then step c) to merge, the result is: [5, a], [5, b], [5, a], [2, g], [5, d], [7, d], [7, f]. Then follow step d) to merge, the result is: [10, a], [5, b], [2, g], [12, d], [7, f].
  • step a For the output token group, first divide the token into simple tokens according to step a), the result is: [5, a], [5, d], [5, f], [5, g], [5 , K], [5, h], [7, a], [7, f], [7, g], [5, c], [5, e], [7, e]. Then follow step b) to merge, the result is: [5, d], [5, b], [5, c], [5, a], [7, a], [7, f], [7, g], [7,e].
  • step d) to merge the result is: [5, d], [5, b], [5, c], [12, a], [7, f], [7, g], [7, e].
  • step c) to merge the result is: [5, d], [5, b], [5, a], [5, a], [7, f], [2, g], [7, d].
  • step d) to merge the result is: [12, d], [5, b], [10, a], [7, f], [2, g].
  • step e) the final result of the output token group is the same as the input token group, and the transaction is complete.
  • An embodiment of the present invention is a method for verifying the integrity of a transaction for a token whose value item is a geometric body, which includes the following steps:
  • the basic equity set is a subset of the union of all input and output token equity sets in the transaction, in which no equity item is the ancestor of another equity item, and any equity item in the union belongs to the basic equity set, or It can be obtained through a complementary combination of equity items in a group of basic equity concentration.
  • the input geometry group and the output geometry group are geometrically complete.
  • condition 1 and condition 2 meet condition 1 and condition 2 to determine that the input geometry group is the same as the output geometry group.
  • condition 1 and condition 2 The details of condition 1 and condition 2 are as follows:
  • Condition 1 There is no spatial overlap between the geometry in the output geometry group
  • Figure 3 is an example of verifying the integrity of transactions involving geometry.
  • the relationship between equity a-g in the figure is the same as that shown in Figure 2.
  • the input polygon is U( ⁇ AED), V( ⁇ BEA), S( ⁇ BCF), T( ⁇ CDF), and the output polygon is X(ABCFE), Y( ⁇ CDF), Z( ⁇ ABCD).
  • Their respective equity sets are: U ⁇ f, c ⁇ , V ⁇ d, c ⁇ , S ⁇ d, c ⁇ , T ⁇ b, c ⁇ , X ⁇ g ⁇ , Y ⁇ g, e ⁇ , Z ⁇ f , C ⁇ .
  • the input and output polygons of the equity set covering F are ⁇ U,V,S,T ⁇ and ⁇ Z ⁇ , respectively, and the merged input polygon is ⁇ ABCD, which is the same as Z, so it is geometrically complete.
  • the input and output polygons of the equity set covering c are also ⁇ U, V, S, T ⁇ and ⁇ Z ⁇ respectively, so they are also geometrically complete.
  • the input and output polygons of the equity set covering g are ⁇ V, S, T ⁇ and ⁇ X, Y ⁇ , respectively.
  • the merged input polygons are polygon ABCDFE, and the merged input polygons are also polygon abcdfe, so they are geometrically complete.
  • the input and output polygons of the equity set covering e are ⁇ T ⁇ and ⁇ Y ⁇ respectively, and they are both ⁇ cdf, so they are geometrically complete. Therefore, for each basic equity item, the merged input polygon is the same as the merged output polygon, and they are all geometrically complete, so the transaction is complete.
  • a polygon is a type of geometry.
  • An embodiment of the present invention is a method for verifying the geometric integrity of an input geometry group and an output geometry group for transactions in which the value item in the token is a polygon.
  • the local device stores the boundary line forest;
  • the boundary line forest is a group of boundary line trees;
  • the boundary line tree is a tree-like data structure.
  • the boundary line is either an edge of the polygon itself, or it is composed of several other boundary lines connected end to end. The edges in the boundary line can belong to the same polygon or different polygons.
  • the boundary line on the data structure represents the node in the tree, and the node stores the actual data of the boundary line and information related to the structure of the tree.
  • the boundary line is generally the index or pointer of the node in the boundary line tree, and is usually the hash value of the node data.
  • a node represents a zigzag line formed by connecting edges between two vertices (they are not necessarily adjacent, they may not belong to the same ring or polygon). These two vertices are called the start point and the end point, collectively called the end point.
  • the node When the node has no child nodes, it represents the line segment connecting the two points, which is an edge in the polygon; when the node has child nodes At the time, the node represents the zigzag line formed by the edges represented by all the leaf nodes in the subtree rooted at the node in the boundary line tree. Nodes compose a tree structure according to their affiliation (also called parent-child relationship).
  • the node information includes the index of the vertices of the start and end of the boundary line and the index of its parent node (nil if there is no parent node).
  • This information is represented by a triple (a, b, f), a is the index of the starting point, b is the index of the end point, and f is the index of the parent node.
  • the node index is a value that uniquely represents a node, and the result of hashing its content can be used as an index.
  • the index of a vertex is a value that uniquely represents a vertex, and the result of a hash operation on the vertex coordinates can be used as the index of the vertex.
  • a polygon is represented in the form of a set of rings.
  • a ring is a set of ordered boundary lines.
  • the directed boundary line is the data containing the boundary line and its direction information; the boundary line is the index or handle of the node in the boundary line forest ;
  • the boundary line tree is a group of boundary line trees; the boundary line tree is a tree-like data structure; the leaf node of the boundary line tree represents an edge of the polygon; the node of the boundary line tree represents the child rooted at the node The zigzag line formed by the edges represented by all leaf nodes in the tree.
  • the direction flag f is true, otherwise the direction flag f is false. Therefore, if f is true, the start and end points of the directed boundary line are the start and end points of the boundary line d, respectively; if f is false, the start point of the directed boundary line is the end point of the boundary line d, and the end point of the directed boundary line is the boundary line The starting point of d.
  • the list of directed boundary lines of the ring is an ordered list.
  • the order of the directed boundary lines in the list is the same as the direction when walking along the direction of the ring; if the directed boundary lines in the ring are rearranged in the cyclic order, the result is obtained geometrically Is still the same ring, we call these two directed boundary line lists are cyclically equivalent.
  • Any boundary line is equivalent to a zigzag line composed of all its sub-boundary lines.
  • the resulting ring is equivalent to the original ring:
  • the boundary line in the directed boundary line A in the ring represents the boundary line with P as the starting point and Q as the end point, the trend mark is F;
  • the boundary line PQ has a set of sub-boundary lines PW 1 , W 1 W 2 ,..., W n-1 W n , W n Q, then replace A with the following set of directed boundary lines in the ring: If F is true, a set of ordered boundary lines are PW 1 , W 1 W 2 ,..., W n -1 W n , W n Q, the direction identification is true and directed boundary line; if F is false, a set of ordered boundary lines are W n Q, W n-1 W n ,. . . , W 1 W 2 , PW 1 , the direction mark is false directed boundary line.
  • the above operation is called replacing the directed boundary line with the sub-boundary line.
  • Operation 1 Cycle through the list of directed boundary lines of one of the rings;
  • Operation 2 Replace a directed boundary line with a sub-boundary line in one of the rings.
  • the methods to verify the geometric integrity of an input geometry group and an output geometry group include:
  • Fig. 4(a) is an example including 4 polygons (S301, S302, S303, S304).
  • Figure 4(b) is an example of the tree structure of the boundary line formed by the relationship between the partial boundary lines of the polygon in Figure 4(a).
  • the arrow in the figure represents the parent-child relationship between the boundary lines, and the box represents a For the boundary line, the previous letter is the starting point, and the next letter is the ending point.
  • the polygon S301 is composed of a ring that contains three boundary lines AE, EH, and HA.
  • the boundary line AE is the child boundary line of the boundary line AK, and is also the parent boundary line of the boundary lines AD and DE.
  • the boundary line AD is the parent boundary line of the boundary lines AB and BD.
  • the polygon S302 has only one ring, and there is a boundary line "-AD" in the ring.
  • the polygon S303 has only one ring, and there is a boundary line "-DE” in the ring.
  • the polygon S304 has a ring in which there is a boundary line "-EH". Among the four polygons, the data of the boundary lines AD, DE, and EH are shared between the two polygons.
  • One embodiment of the present invention is a method of merging polygons.
  • the polygons in the blockchain are represented in the aforementioned way.
  • Merging polygon A and polygon B specifically includes the following steps:
  • W 1 and W 2 are respectively composed of the directed boundary lines in the ring Q that appear between the second occurrences of O j in the cyclic order in the original cyclic order.
  • these two new rings are composed of boundary lines arranged in the following order: traverse all directed boundary lines in Q starting from O j in cyclic order, and the traversal will end after the first occurrence of O j to the second
  • the directional boundary line experienced before the appearance is added to a ring; the directional boundary line experienced after the second appearance of O j is added to before the reappearance is added to another ring.
  • the above method of merging polygons is not the only method of merging polygons.
  • anyone can cycle through the directed boundary lines in the ring, or replace the parent directed boundary lines in the ring with child boundary lines, or change the directed boundary lines in the ring.
  • the child boundary lines are merged into the parent directed boundary lines to produce a ring that is different from but equivalent to the above-mentioned method.
  • Any merging method that generates the polygon equivalent to the above-mentioned method belongs to the scope of patent protection of the present invention.
  • Figures 5 and 6 are examples of merged polygons.
  • the polygons P and Q to be merged have two zigzag line segments connected one after another, BCD and GHK. Because both P and Q have only one ring, we also use P and Q to refer to the corresponding ring.
  • the boundary lines in the P ring are: AF, FH, HL, LA.
  • the boundary lines in the Q ring are: ab, bc, and ca.
  • the sub-boundary lines of AF are: AB, BC, CD, DE, EF.
  • the sub-boundary lines of FH are: FG, GH.
  • the sub-boundary lines of HL are: HK, KL.
  • the sub-boundary lines of ab are: aK, -HK, -HG, GD, -DC, -CB, Bb.
  • the method is: delete the BCD from the Q ring and rearrange the directed boundary line with D as the starting point, that is, DE, EF, FG, GH, HK, KL, LA, AB.
  • rearrange the directed boundary line with B as the starting point that is, Bb, bc, ca, aK, -HK, -GH, GD.
  • the ring is divided into two rings according to step S133.
  • One ring is the directed boundary line from GD to the end of FG, namely: GD, DE , EF, FG.
  • the other ring is those directed boundary lines that cycle from KL to aK, namely: KL, LA, AB, Bb, bc, ca, aK.
  • the merged polygon is composed of these two rings, as shown in Figure 6.
  • Figures 6 and 7 are another example of merging polygons.
  • the merged polygon is merged with another single-ring polygon S.
  • the boundary line of S is -FG, -EF, -DE, -GD. That is, S is a ring in which the boundary line and the above-mentioned merged polygon have the same side but the opposite direction.
  • the common zigzag line segments of these two polygons are GD, DE, EF, FG.
  • the rings GD, DE, EF, FG and -FG, -EF, -DE, and -GD need to be merged.
  • the merging method is to first delete these boundary lines from the ring S and the rings GD, DE, EF, and FG.
  • An embodiment of the present invention is a method for constructing a basic rights set, including the following steps:
  • step c) Repeat step a) until there is no ancestor-descendant relationship equity item in R, then set R is the basic equity set of the original equity set.
  • an equity item belongs to an equity set, or an ancestor of the equity item belongs to the equity set, the equity set covers the equity item.
  • An embodiment of the present invention is a method for verifying the integrity of a transaction for a token whose value item is a unique value, which includes the following steps:
  • a and B be unique values.
  • a-h are equity items, and the relationship is shown in Figure 2.
  • the input of the transaction is [A, ⁇ g ⁇ ], [A, ⁇ f,h ⁇ ], [B, ⁇ d ⁇ ], and the output is [A, ⁇ a ⁇ ], [B, ⁇ c,g ⁇ ], [B, ⁇ f,h ⁇ ].
  • the unique value set is ⁇ A, B ⁇ .
  • step 32 First, taking A as the matching unique value, according to step 32), the input matching equity group [g, f, h] and the output matching equity group [a] are generated. Perform complementary consolidation according to step 33) to form an input consolidated equity group [a] and an output consolidated equity group [a]. According to step 34), it is determined that the transaction under A is complete.
  • step 32 an input matching equity group [d] and an output matching equity group [c, g, f, h] are generated.
  • step 33 a complementary combination is performed to form an input combined equity group [d] and an output combined equity group [d].
  • step 34 it is determined that the transaction under B is complete.
  • step 35 it is determined that the transaction is complete.
  • An embodiment of the present invention is a method for constructing transactions on the blockchain.
  • users construct transactions and send transaction data to nodes in the blockchain;
  • transactions include tokens , Token contains value items and equity sets; value items are numerical values, geometric bodies, or unique values; unique values are the identification of things;
  • equity sets are collections of equity items, and equity items are indexes or handles that point to nodes in the equity forest;
  • equity The forest is composed of a set of equity trees.
  • the equity tree is a tree-like data structure.
  • the nodes in the equity tree contain textual descriptions of the scope of rights.
  • the child nodes of the node always exist in pairs, and the node has the rights of a pair of child nodes.
  • the scope is complementary within the scope of the equity of its parent node; the structure of the transaction includes the split and merger of equity, and the specific method of equity split is as follows:
  • the method of equity merger is as follows:
  • Combining the rights and interests of two input tokens with the same value item includes constructing an output token, where the value item is the same as that in the input token, and the equity set is the union of the equity sets of the two input tokens.
  • An embodiment of the present invention is a blockchain system, which is characterized in that the system is composed of a number of nodes and a number of terminals, and the nodes and the terminals are connected to the Internet and communicate with each other through the Internet;
  • the terminal constructs transaction information according to the user based on the above-mentioned block chain method, and sends the transaction information to the node in the block chain system;
  • the node receives the transaction information sent by the terminal or the block information sent by other nodes.
  • the block information is packaged by the transaction information; the node verifies whether the received transaction or the transaction in the block is legal based on the aforementioned blockchain method If the received block is legal, the block is added to the end of the local blockchain data; if the received transaction is legal, the transaction is retained, and the received legal transaction is periodically packaged into a block Block, add the packaged block to the end of the local blockchain data and broadcast it to other nodes in the blockchain network.
  • An embodiment of the present invention is a computer-readable storage medium for a blockchain system, on which a computer program is stored, characterized in that, when the computer program is executed by a processor, any one of the aforementioned blockchain methods is implemented .
  • the embodiments of the present invention can be provided as a method, a system, or a computer program product. Therefore, the present invention may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements one or more functions specified in the process description.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment. Instructions provide steps for implementing one or more functions specified in the process description.
  • this application can be provided as methods, systems, or computer program products. Therefore, this application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one or more steps.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment. Instructions provide steps for implementing functions specified in one or more steps.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明是一种基于区块链记录权益流转的系统和方法。在本发明中,区块链的通证有三种类型,每一种可以包含权益定义。通证流转时也可以对权益进行拆分、合并。区块链系统保证流转前后通证总权益没有增减。

Description

一种区块链方法、系统及计算机可读存储介质 技术领域
本发明涉及区块链领域,具体涉及一种区块链方法、系统及计算机可读存储介质。
背景技术
区块链是一种分布式记账系统。这种分布式记账系统包括由多个节点组成的分布式网络,每个节点都运行处理相同区块链协议的程序记录区块链上的交易。交易由若干输入和输出通证组成。通证(Token)是区块链中可流通的价值加密数字凭证。通证具备价值和权属二个要素。传统上通证的价值要素采用以单个数值表达的形态,这种通证我们称为数值通证。例如一个比特币的通证,如果抛开其拥有者和加密部分不谈,其核心内容就是比特币的数量。传统上数值通证的一个局限性就是对通证只能进行量的分拆和合并,不能对通证权益的性质进行分拆和合并。例如,传统上一个代表电影院会员权益的数值通证只能完整地转让给他人,而不能将观看某一场次电影的会员权益转让给他人,而原通证持有者保留剩余的会员权益。
发明内容
本发明提供一种区块链方法,旨在解决上述技术问题。
本发明是这样实现的,一种区块链方法,所述方法具体包括如下步骤:
S1、接收交易信息或者是区块信息,所述区块信息由交易信息打包形成;
S2、验证接收到的交易或区块中的交易是否合法;
S3、若接收到的区块合法,则将所述区块加入本地区块链数据的尾部;若接收 到的交易合法,则保留所述交易,周期性地将所收到的合法交易打包成区块,将所述打包成的区块加入本地区块链数据的尾部并向区块链网络中的其他节点广播;
所述交易包含通证,通证包含价值项和权益集,所述权益集是权益项的集合,所述权益项是指向权益树林中结点的索引或句柄;
所述价值项为:数值、几何体或独特值;所述独特值为事物的标识;
权益树林由一组权益树组成,权益树是一树状数据结构,权益树中结点包含描述权益范围的文本,结点的子结点总是成对存在,节点一对子结点的权益范围在其父结点的权益范围内互补。
进一步的,验证交易合法性包括验证交易的完整性,当所述价值项为数值时,对交易完整性进行验证具体包括如下步骤:
21)将输入通证组和输出通证组中每个通证拆为若干个简单通证,每个简单通证只包含所述通证权益集中的一个权益项,简单通证的价值项与所述通证的价值项相同,拆分后的简单通证分别构成输入简单通证组和输出简单通证组;
22)基于221)、222)及223)对输入简单通证组及输出简单通证组中通证进行合并,直至输入简单通证组和输出简单通证组相同,或不存在可以合并的通证;输出合并后的输入简单通证组及输出简单通证组;若合并之后的输入简单通证组与输出简单通证组相同,则判定交易是完整的;
221)若输入简单通证组或输出简单通证组中存在价值项相同,且权益项在同一父权益下互补的两个简单通证,则将所述二个简单通证合并,形成一个价值项与简单通证相同,权益集仅包含父权益项的通证;
222)若输入简单通证组或输出简单通证组中存在价值项不同,但权益项在同一父权益下互补的两个简单通证,则形成通证一和通证二,通证一的价值项为简单通证中的较小价值项,权益集仅包含父权益项,通证二的价值项为二个简单通证的价值项之差,权益集为价值项较大的简单通证的权益集;
223)若输入简单通证组或输出简单通证组中存在权益集相同的两个简单通证,则将二个简单通证进行合并,形成一个价值项为二个简单通证的价值项之和,权益集为所述权益集的通证。
进一步的,验证交易合法性包括验证交易的完整性,当所述通证的价值项是几何体时,对交易完整性进行验证具体包括如下步骤:
31)构造交易的基本权益集;
32)对于基本权益集中的每个基本权益项,分别查找涵盖基本权益项的匹配输入通证及匹配输出通证,分别对匹配输入通证及匹配输出通证的几何体进行合并,验证合并后的输入几何体组和合并后的输出几何体组是否几何完整,若是,则认定交易在该基本权益项下的是完整的;
33)若交易在所有基本权益项下均是完整的,则判定交易是完整的。
基本权益集是交易中输入通证权益集和输出通证权益集并集的一个子集,子集中没有任何一个权益项是另一个权益项的祖先,并集中的任一权益项或者是基本权益集中的基本权益项或者可由基本权益集中的一组基本权益项互补合并形成;
几何完整:输入几何体组和输出几何体组若相同,则输入几何体组和输出几何体组是几何完整的。
进一步的,输入几何体组及输出几何体组满足条件1及条件2才可判定输入几何体组与输出几何体组相同,条件1及条件2具体如下:
条件1:输出几何体组中的几何体之间不存在空间上的重叠;
条件2:所有输入几何体组的几何体所占据的空间与所有输出几何体组的几何体所占据的空间相同。
进一步的,交易中的几何体为多边形,多边形以一组环的形式表示,环是一组有序排列的有向边界线,有向边界线是包含边界线及其走向信息的数据,所述边界线树林是一组边界线树;所述边界线树是一树状数据结构;边界线是指向边界线树 林中结点的索引或句柄,边界线树的结点代表由所述结点为根的子树中所有叶结点所代表的边构成的曲折线;
将所有输入几何体组中的多边形及所有输出几何体组中的多边形分别进行合并,形成一组输入合并多边形及一组输出合并多边形;
若输入合并多边形组与输出合并多边形组由相同的多边形组成,则判定输入合并多边形组与输出合并多边形组是几何完整的;
若两个环的有向边界线列表的数量、顺序、和内容都相同,或者是经过若干次操作1或操作2后,两个环的有向边界线列表的数量、顺序、和内容都相同,则二个环等价:
操作1:循环轮换环其中一个环的有向边界线列表;
操作2:在其中一个环中以子边界线替换一个有向边界线;
如果两个多边形中的环按等价关系一一对应,则所述两个多边形是相同的。
进一步的,多边形的合并的方法具体包括如下步骤:
S11、检测待合并多边形A和多边形B是否有共同的边,若检测结果为是,获取多边形A及多边形B的所有共同边组成的若干条曲折线段,所述曲折线段的端点为(e 1,f 1),(e 2,f 2),...,(e w,f w),其中不存在二条有共同端点的曲折线段;
S12、对于上述每个曲折线段(e j,f j),执行以下步骤,全部完成后,A和B中所有的非空的环即组成合并后的多边形:
S121、若e j或f j不是所在有向边界线的端点,则在包括所述有向边界线的环中,反复以子边界线替换所述有向边界线,使该e j和f j在所述环中都是某条有向边界线的端点;
S122、若曲折线段(e j,f j)出现在二个不同的环Q和环R中,将环Q和环R合并为一个等价于W的环,产生环W的方法具体如下:
环Q和环R分别按原循环顺序但不包括曲折线段(e j,f j)中的边界线重新排列 形成两个有向边界线列表,两个有向边界线列表的首有向边界线的起点和尾有向边界线的终点都是曲折线段(e j,f j)的端点,然后将上述二个有向边界线列表拼接成为一个列表,拼接后的有向边界线列表构成新环W;
S123、若曲折线段(e j,f j)在一个环W中出现二次,将环W分拆为等价于环W 1和环W 2的二个新环,环W 1和环W 2分别由环W中按循环顺序出现在曲折线段(e j,f j)之间二组有向边界线按原循环顺序分别组成。
进一步的,基本权益集构造方法具体包括以下步骤:
71)将输入通证中的权益集和输出通证中的权益集进行合并,形成集合R1;
72)基于步骤73)及步骤74)替换集合R1中的权益项直至集合R1直至集合R1中不存在有祖先-后代关系的权益项,则集合R1为基本权益集;
73)检测集合R1中是否存在祖先-后代关系的权益项对;
74)若检测结果为是,则获取权益项对中后代到祖先之间的父子关系链上的除祖先之外的每个权益项r,将权益项r的补项添加至并集R1,从并集R1中删除该祖先权益项。
进一步的,验证交易合法性包括验证交易的完整性,所述通证的价值项是独特值,对交易完整性进行验证具体包括如下步骤:
81)将所有输入通证和输入通证中的独特值纳入一独特值集;
82)对于独特值集中的每个匹配独特值,分别查找含有所述匹配独特值的匹配输入通证及匹配输出通证,分别将匹配输入通证及匹配输出通证权益集中的全部权益项添加进输入匹配权益组和输出匹配权益组;
83)分别对输入匹配权益组和输出匹配权益组进行互补合并,形成输入合并权益组和输出合并权益组;
84)验证输入合并权益组和输出合并权益组是否相同,若是,则认定交易在匹配独特值下的是完整的;
85)若对于独特值集中的所有匹配独特值,交易都是在匹配独特值集下完整的,则判定交易是完整的。
本发明是这样实现的,通证在区块链系统中的流通过程中,用户构造交易,并将交易数据发送给区块链中的节点,所述交易的构造包括对权益的拆分和合并,权益拆分的方法具体如下:
将输入通证权益集中的权益项分割为二个互补的子集;
构造二个输出通证,其价值项与所述输入通证的价值项相同,其权益项分别为所述二个子集;
权益合并的方法具体如下:
对相同价值项的两输入通证进行权益合并,形成一个输出通证,输出通证的价值项与输入通证中的价值项相同,权益集是二个输入通证权益集的并集;
所述交易包含通证,通证包含价值项和权益集;所述价值项为:数值、几何体或独特值;所述独特值为事物的标识;所述权益集是权益项的集合,所述权益项是指向权益树林中结点的索引或句柄;权益树林由一组权益树组成,权益树是一树状数据结构,权益树中结点包含对权益范围的文字描述,结点的子结点成对存在,称为子结点对,子结点对的权益范围在其父结点的权益范围内互补。
本发明是这样实现的,一种区块链系统,所述系统由若干个节点和若干个终端组成,所述节点和所述终端与互联网相连并通过互联网相互通信;
所述终端根据用户基于前述区块链方法来构造交易信息,并将交易信息发送至所述区块链系统中的节点;
所述节点接收终端发送来的交易信息或者是其他节点发送来的区块信息,所述区块信息由交易信息打包形成;所述节点基于前述区块链方法来验证接收到的交易或区块中的交易是否合法,若接收到的区块合法,则将所述区块加入本地区块链数据的尾部;若接收到的交易合法,则保留所述交易,周期性地将所收到的合法交易 打包成区块,将所述打包成的区块加入本地区块链数据的尾部并向区块链网络中的其他节点广播。
本发明是这样实现的,一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现任意前述区块链方法。
区块链系统由与互联网相连的多个区块链节点组成。每个节点都可以接收来自网络终端的交易信息和来自其它节点的区块。节点收到交易信息后验证所收到的交易是合法的,包括验证交易的输入是区块链中未使用的通证;交易有恰当的授权;交易是完整的。区块链系统只接受通过验证的交易。本发明提出了带权益通证的交易生成和验证的方法。
本发明提出通证可以包含一个权益集;权益可以分割或合并,本发明定义了分割和合并的方法;任何权益都可以根据任意文字定义分割为肯定和否定的二种互补权益,反之这二种权益也可以合并为一个权益。进一步的,通证可以按权益进行拆分,将通证中的权益集拆分为二个不相交的子集,将一个通证拆分为二个。
进一步,本发明还提出通证的价值形态可以不仅仅是一个数值,还可以是一个几何体或者一个独特值。对于不同的价值类型,本发明提出了具体的交易验证、通证拆分和合并的方法。这些方法共同构成一个区块链系统,能够实现传统区块链系统无法提供的功能,更好地满足用户的需求。
以与土地相关的权益为例。如果在区块链中以多边形代表土地,一个传统方法的区块链只能代表一种土地权益,如土地所有权。而通过本发明所提供的权益拆分和合并的方法,一个带权益的以多边形代表土地的区块链可以代表各种土地权益,如所有权、承包权、经营权、产出权等。更好地满足土地流转的需要。
再以包含数值价值和权益的通证为例。传统方法的区块链只能对数值所代表的权利进行完全的转让,无法进行部分转让。例如,如果数值代表了电影院的会员权,传统区块链只允许转让整份的会员权,而不允许转让部分会员权利,如观看某场次 电影的权利。通过本发明所提供的权益拆分和合并的方法,可以将看某一场次电影的权利转让而保留其余会员权利。
再以包含独特价值和权益的通证为例。独特价值适合用于代表现实世界中独一无二的物品,如艺术品。物品虽然独一无二,但关于物品权益却可以有很多。艺术品可以出售、可以质押、可以出租等等。通过在区块链上记录艺术品权益的流转,能提高艺术品防伪性,也可增加艺术品的流通性。
附图说明
图1为本发明实施例提供的区块链系统的结构示意图;
图2为本发明实施例提供的权益关系的结构示意图;
图3为本发明实施例提供的带权益多边形通证交易的示意图,其中(a)为输入多边形的几何示意图,(b)为输出多边形的几何示意图;
图4为本发明实施例提供的几何图形的数据结构存储示意图,其中(a)为几何图形的示意图,(b)为图(a)中几何图形的树状数据存储结构;
图5为本发明实施例提供的待合并几何图形的结构示意图;
图6为本发明实施例提供的几何图形合并的示意图一;
图7为本发明实施例提供的几何图形合并的示意图二。
具体实施方式
基于本发明的原理可以有多种实施例。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例或原理,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1是一个区块链系统,由一个或多个连接到互联网(S101)的网络终端(S102)和一个或多个连接到互联网(S101)的区块链节点(S103)所组成。网络终端(S102)根据用户输入构造交易,将交易信息通过互联网(S101)发送给区块链节点(S103)。每个区块链节点(S103)都可以接收来自网络终端(S102)的交易信息和来自其它区块链节点(S103)的区块。交易包括一组输入和一组输出。交易的每个输出就是一个通证。在一些区块实施方案中,交易的每个输入是对另一个交易输出通证的引用;在另一些区块实施方案中,交易的每个输入也是一个通证。节点(S103)收到交易信息后验证所收到的交易是合法,包括验证交易的输入是区块链中未使用的通证;对于使用未花费交易输出(UTXO)记账方式的区块链来说,未使用的通证指的就是未被任何交易引用为输入的某个交易的输出;对于使用账户记账方式的区块链来说,未使用的通证指的就是通证提供者账户内的通证;交易有恰当的授权;交易是完整的。节点(S103)将一段时间内收到的合法交易打包产生一个区块,将该区块作为区块链的最新区块加进本地区块链数据,并通过互联网(S101)向网络中的其它节点(S103)广播。节点(S103)收到来自其它节点(S103)的新区块后验证所收到的区块中的所有交易都是合法的。如果所有交易都通过验证为合法,将该区块作为区块链的最新区块加进本地区块链末尾。
网络终端(S102)可以是电脑、手机、或者其它智能设备,区块链节点(S103)可以是电脑、区块链矿机、或者服务器。
本发明的实施例是一个区块链方法,具体包括以下步骤:
S1、接收交易信息或者是区块信息,区块信息由交易信息打包形成;
S2、验证接收到的交易或区块中的交易是否合法;
S3、若接收到的区块合法,则将区块加入本地区块链数据的尾部;若接收到的交易合法,则保留该交易,周期性地将所收到的合法交易打包成区块,将打包成的区块加入本地区块链数据的尾部并向区块链网络中的其他节点广播。
区块链节点验证交易的合法性。区块链节点由权益数据库、处理器单元组成。权益数据库中以树状数据结构储存有区块链中所有权益的定义,处理器单元将权益定义数据存入权益数据库,并根据权益数据库中的信息验证交易的合法性。对交易合法性的验证包括验证交易的完整性。
交易包括一组输入和一组输出。输入是对区块链中可用通证的引用,输出是交易所产生的新通证。主流区块链技术有二种记账方式,一种是UTXO记账方式,如比特币网络所采用的,这种方法不集中记录用户的资产,用户以密码学解锁交易输出的方式证明对该交易输出的所有权同时并花费该交易输出。另一种是与传统记账方式更类似的账户记账方式,如以太坊网络所采用的,这种方法中区块链除交易记录外,节点还储存从地址到资产的映射关系;每个映射关系就是一个账户;地址是一个公钥的哈希值,交易中资产转出方以密码学方式证明其对交易输入地址的所有权;合法交易一旦加入区块链,节点更新该映射关系,从资产输出方的账户中扣除所转出的资产,并添加进资产输入方的账户中,完成转账。实施本发明时可以随意选用这二种记账方式之一。若选用UTXO记账方式,可用通证就是其它交易未被使用的输出。若选用账户记账方式,账户就是一个从区块链地址到通证集的映射关系,可用通证就是该通证集中的通证;交易中通证转出方以密码学方式证明其对交易输入中地址的所有权,节点验证该地址所对应的通证集合中有交易输入所要求的通证,一旦交易记录进区块链,节点从交易输入方账户的通证集中删除交易输入的通证,将交易输出中的通证添加进交易输出方账户的通证集。对于本发明来说采用UTXO记账方式更为便利,所提供的实施例均基于UTXO记账方式。但本领域内的技术人员根据本发明的说明可以在没有作出创造性劳动的情况下构造本发明一个基于账户记账方式的实施例,这也属于本发明的保护范围
通证包含以下数据:a)一个价值项;b)一个权益项组成的权益集。我们以[V,R]来记一个通证,其中V是通证的价值项,R是权益项的集合。通证的价值项可以 是以下三种类型之一:
a)一个数值;例如数值5代表5个比特币;
b)一个几何体;例如一个多边形代表一块土地;通证中的几何体不限于多边形,可以是多面体,或者是任何数学上的几何体,如球体、曲面等等。
c)一个独特值;独特值是事物的标识。
独特值可以有很多种类,其特征是独特性,因而在信息处理过程中不可分割或与其它数据合并。独特值可以代表现实或虚拟的物体、事件或人物。独特值可以是一个哈希值、一个真实或虚拟事物(包括人物、事件、物体、地点、地区、项目、计划、组织机构、团体、概念、程序、方法、过程、自然现象等一切可命名的事物)的名称或代号、一个索引值或句柄。
例如一幅画作扫描图像的哈希值,用于代表一幅绘画作品,就是一个独特值。人名、地名也都可以是独特值。事件名称,例如“2016年奥运会”也可以作为一个独特值。虚拟事物,例如“企业号星舰”,也可以作为一个独特值。
任何权益F都可以根据任何定义d分拆为肯定和否定的二个权益;称原权益为父权益,分拆后的权益为子权益;这二个子权益在父权益之下互补,记在F范围内对定义d的内容肯定的子权益为F(d),对定义d的内容否定的子权益为F(~d)。称这二个子权益的每一个子权益为另一个子权益的补项,即F(d)是F(~d)的补项,F(~d)是F(d)的补项。而如此分拆而成的二个子权益F(d)、F(~d)也可以合并为其父权益F,即:F=F(d)∪F(~d);一个权益称为是另一个权益的祖先(或后代),如果它们之间存在一个有父子关系的权益所构成的链。
权益以一个三元组(p,d,f)来表示,若其索引值为R,可记为R(p,d,f),或简记为R。我们可以用该三元组的哈希值作为其索引值。在该三元组中p是父权益项,为区块链中一个权益项索引值(没有父权益项时为nil);d是定义项,是任意长度的任意文本;文本包括人类可读的文字,或者是计算机程序可处理的数据;f是性质项, 为一布尔值;如果f为真,权益R的范围是在p的范围内对定义d的内容肯定的权利;如果f为假,权益R的范围是在p的涵义范围内对定义d的内容否定的权利。
权益按其父子关系构成一树状的数据结构,称为权益树,其中每个结点代表一个权益,树中结点的父子关系代表权益的父子关系。结点的子结点总是成对地以互补关系出现。权益数据库储存多个权益树,这些权益树构成了权益树林。通证权益集中每个权益项都是权益树林中结点的索引或句柄。
通证的权益集若只包含一个权益项,称为简单通证。
在一个权益集或权益组中,二个权益项若存在互补关系,在该权益集或权益组中用它们的父权益项替换这二个互补的子权益项,这种操作称为互补合并。
一个通证涵盖一个权益项如果该权益项本身或其一个祖先属于该通证的权益集。
以与土地相关的权益为例。假设有代表一块土地的通证[L,{P(nil,“土地所有权”,true)}],L是代表土地的多边形。在土地承包时,持有通证[L,{P}]的村委会将通证分拆为[L,{Q(P,“土地承包权”,true)}]和[L,{S(P,“土地承包权”,false)}]二个通证,将前一个通证转让给承包户,而自己保留后一个通证。农户可进一步将后一个通证再分拆为[L,{T(Q,“土地经营权”,true)}]和[L,{U(Q,“土地经营权”,false)}]二个通证。
再以包含数值价值和权益的通证为例。假设电影院发放了价值为5,权益集为{P(nil,“会员权”,true)}的通证[5,{P}],该通证代表了5张会员卡。假设该电影院规定每周二会员免费看电影,则该通证持有人可以将该通证拆分为[5,{Q(P,“2019/11/5”,true)}],和[5,{R(P,“2019/11/5”,false)}]的二个通证。前者是代表的是观看2019年11月5日免费电影的权利,通证持有人可以继续将其分拆为5个[1,{Q}]的通证,并转给5位朋友于2019/11/5观影。后者,通证持有人可以继续分拆为[5,{S(R,“2019/11/12”,true)}],和[5,{T(R,“2019/11/12”,false))}]二个通证。如此不断,可以每周二都做一次权益分拆,邀请5人观影。
再以包含独特价值和权益的通证为例。假设博物馆有一幅代表画作的通证[D,{P (nil,“所有权”,true)}],D是一幅画作数字扫描图像的哈希值。假设该博物馆将画作租给另一博物馆在2019年12月中展出,原博物馆可以将该通证拆分为[D,{S(P,“2019年12月展出权”,true)}]和[D,{T(P,“2019年12月展出权”,false)}]。将前者转给展出的博物馆;后者自己保留,可以继续拆分为其它时间段的展出权。
区块链节点验证交易的合法性,验证交易合法性包括验证交易的完整性,只有完整的交易才是合法的交易。完整性指的是输入和输出在性质和数量上相同的特性,其具体内涵根据通证的类型而定。合法性验证还包括如传统的以密码学方法验证交易中通证的所有权,但这不属于本发明的内容。
验证交易完整性的程序可以属于区块链内核程序的一部分,也可以包括在部署于区块链上的智能合约中,当区块链内核程序执行智能合约时,交易得到验证。无论是采用何种方式,都属于本发明的保护范围。
本发明的一个实施例是对于价值项为数值类的通证验证交易完整性的方法,具体如下:
a)将交易中的通证拆分为简单通证,拆分方法是对于输入通证组和输出通证组中每个通证,为通证的每个权益项构造一个简单通证,该简单通证的权益集只包含该权益项、价值项与原通证的价值项相同;由输入通证拆分而来的简单通证纳入输入简单通证组;由输出通证拆分而来的简单通证纳入输出简单通证组;
b)若输入通证组或输出通证组中有二个通证的价值项相同,其权益项在同一父权益下互补,则在所述通证组中将所述二个通证合并为一个价值项与原通证相同,权益集仅包含所述父权益项的通证;
c)若输入通证组或输出通证组中有二个通证其价值项不同,权益项在同一父权益下互补,则将所述二个通证以一个价值项与原通证价值项中较小者相同,权益集仅包含该父权益项的通证,和一个价值项为二个通证价值项之差,权益集与原通证价值项较大者相同的通证替换;
d)若输入通证组或输出通证组中有二个通证权益集相同,则将这二个通证以一个价值项为这二个通证的价值项之和,权益集和这二个通证的权益集相同的通证替换;
f)若经过若干次上述操作后,输入通证组和输出通证组相同,则判定交易是完整的。
以一个具体的例子来说明用简单通证法验证交易完整性的方法。假设交易输入通证是A=[5,{a,b,c,d}],B=[7,{a,e,f,g}],输出通证是C=[5,{a,d,f}],D=[5,{g,k,h}],E=[7,{a,f,g}],F=[5,{c,e}],G=[7,{e}],其中权益树如图2所示,a=c∪g,b=d∪k,c=f∪h,d=e∪a。
对于输入通证组,首先按步骤a)将通证拆分为简单通证,结果为:[5,a],[5,b],[5,c],[5,d],[7,a],[7,e],[7,f],[7,g]。然后按步骤d)进行合并,结果为:[12,a],[5,b],[5,c],[5,d],[7,e],[7,f],[7,g]。然后再步骤c)进行合并,结果为:[5,a],[5,b],[5,a],[2,g],[5,d],[7,d],[7,f]。再按步骤d)进行合并,结果为:[10,a],[5,b],[2,g],[12,d],[7,f]。
对于输出通证组,首先按步骤a)将通证拆分为简单通证,结果为:[5,a],[5,d],[5,f],[5,g],[5,k],[5,h],[7,a],[7,f],[7,g],[5,c],[5,e],[7,e]。然后按步骤b)进行合并,结果为:[5,d],[5,b],[5,c],[5,a],[7,a],[7,f],[7,g],[7,e]。然后按步骤d)进行合并,结果为:[5,d],[5,b],[5,c],[12,a],[7,f],[7,g],[7,e]。然后再步骤c)进行合并,结果为:[5,d],[5,b],[5,a],[5,a],[7,f],[2,g],[7,d]。然后按步骤d)进行合并,结果为:[12,d],[5,b],[10,a],[7,f],[2,g]。根据步骤e)输出通证组与输入通证组的最后结果相同,交易是完整的。
本发明的一个实施例是对于价值项为几何体的通证验证交易完整性的方法,包括以下步骤:
11)构造交易的基本权益集;
12)对于基本权益集中的每个基本权益项,分别查找涵盖基本权益项的匹配输入通证及匹配输出通证,分别对匹配输入通证及匹配输出通证的几何体进行合并,验证合并后的输入几何体组和合并后的输出几何体组是否几何完整,若是,则认定交易在该基本权益项下的是完整的;
13)若交易在所有基本权益项下均是完整的,则交易是完整的。
基本权益集是交易中所有输入和输出通证权益集并集的一个子集,其中没有任何一个权益项是另一个权益项的祖先,且并集中的任一权益项或者属于基本权益集,或者可由一组基本权益集中的权益项通过互补合并而得。
输入几何体组和输出几何体组若相同,则输入几何体组和输出几何体组是几何完整的。
输入几何体组及输出几何体组满足条件1及条件2才可判定输入几何体组与输出几何体组相同,条件1及条件2具体如下:
条件1:输出几何体组中的几何体之间不存在空间上的重叠;
条件2:所有输入几何体组的几何体所占据的空间与所有输出几何体组的几何体所占据的空间相同。
图3是一个验证涉及几何体交易完整性的示例。图中权益a-g之间的关系与图2中所示相同。输入多边形为U(△AED),V(△BEA),S(△BCF),T(△CDF),输出多边形为X(ABCFE),Y(△CDF),Z(□ABCD)。它们各自的权益集为:U{f,c},V{d,c},S{d,c},T{b,c},X{g},Y{g,e},Z{f,c}。在本示例中,所有输入和输出中权益的集合是G={f,c,d,b,g,e},其基本权益集R={f,c,g,e}。对于权益f,权益集涵盖F的输入和输出多边形分别是{U,V,S,T}和{Z},输入多边形合并后是□ABCD,与Z相同,因此是几何完整的。权益集涵盖c的输入和输出多边形分别也是{U,V,S,T}和{Z},因此也是几何完整的。权益集涵盖g的输入和输出多边形分别是{V,S,T}和{X,Y},输入多边形合并后是多边形ABCDFE, 输入多边形合并后也是多边形abcdfe,因此是几何完整的。权益集涵盖e的输入和输出多边形分别是{T}和{Y},它们都是△cdf,因此是几何完整的。因此,对于每个基本权益项,输入多边形合并后与输出多边形合并后相同,它们都是几何完整的,因此该交易是完整性的。
多边形是一种几何体。本发明的一个实施例是对于通证中价值项为多边形的交易,验证一个输入几何体组和一个输出几何体组的几何完整性的方法。
首先,本地设备储存边界线树林;边界线树林是一组边界线树;边界线树是一树状数据结构。边界线之间具有树状层次结构。在几何意义上,边界线或者本身就是多边形的一条边,或者是由首尾相连的若干条其它边界线组成。边界线中的边可以属于同一个多边形,也可以属于不同的多边形。数据结构上边界线代表树中的结点,结点储存边界线的实际数据和与树的结构相关的信息。边界线一般是边界线树中结点的索引或指针,通常为结点数据的哈希值。几何意义上,结点代表二个顶点(它们不一定相邻,可以不属于同一个环或多边形)之间相连边构成的一条曲折线。这二个顶点分别称为起点和终点,统称为端点,当结点没有子结点时,它代表的就是连接这二点的线段,即为多边形中的一条边;当结点有子结点时,该结点代表的是边界线树中以该结点为根的子树中所有叶结点所代表的边构成的曲折线。结点按其从属关系(也称为父子关系)组成一个树形结构。本实施例中结点信息包含边界线起点和终点的顶点的索引以及其父结点的索引(没有父结点则为nil)。这些信息我们以一个三元组(a,b,f)表示,a是起点的索引,b是终点的索引,f是父结点的索引。结点索引是唯一代表一个结点的值,可以用对其内容作哈希运算所得的结果作为索引。顶点的索引是唯一代表一个顶点的值,可以用对顶点坐标作哈希运算所得的结果作为顶点的的索引。
多边形以一组环的形式表示,环是一组有序排列的有向边界线,有向边界线是包含边界线及其走向信息的数据;边界线是边界线树林中结点的索引或句柄;边界线 树林是一组边界线树;边界线树是一树状数据结构;边界线树的叶结点代表多边形的一条边;边界线树的结点代表由以该结点为根的子树中所有叶结点所代表的边构成的曲折线。
在本发明实施例中,如果有向边界线中的边界线d从起点到终点的方向与环的走向一致,则该走向标志f为真,否则走向标志f为假。因此若f为真,有向边界线的起点和终点分别就是边界线d的起点和终点;若f为假,有向边界线的起点是边界线d终点,有向边界线的终点是边界线d的起点。环的有向边界线列表是一个有序的列表,列表中的有向边界线排列顺序与沿环走向行走时的方向一致;如果按循环顺序重新排列环中的有向边界线,几何上得到的还是同一个环,我们称这二个有向边界线列表是循环等价的。
任一边界线都等价于其所有子边界线组成的曲折线。对于环中的有向边界线,如果按以下规则进行替换,所得的环与原环也是等价的:
如果环中有向边界线A中的边界线代表的是P为起点Q为终点的边界线,走向标志为F;该边界线PQ有一组子边界线PW 1,W 1W 2,…,W n-1W n,W nQ,则在环中以下列一组有向边界线替换A:如果F为真,一组有序的边界线为PW 1,W 1W 2,…,W n-1W n,W nQ,走向标识为真的有向边界线;如果F为假,一组有序的边界线为W nQ,W n-1W n,。。。,W 1W 2,PW 1,走向标识为假的有向边界线。
上述操作称为以子边界线替换有向边界线。
二个环如果可以通过反复以子边界线替换有向边界线成为循环等价的,我们称这二个环是等价的。环的等价也可以更正式地表述为:
通过若干次操作1或操作2后(包括不进行任何操作),若两个环的有向边界线列表的数量、顺序、和内容都相同,则二个环等价:
操作1:循环轮换其中一个环的有向边界线列表;
操作2:在其中一个环中以子边界线替换一个有向边界线。
二个多边形如果实际上占据相同的空间,无论它们以什么样的数据结构来表示,它们就是相同的。因此二个多边形,如果他们的环按等价关系一一对应,则这二个多边形是相同的。
对于按上述方式表示的多边形,验证一个输入几何体组和一个输出几何体组的几何完整性的方法包括:
将所有输入几何体组中的多边形及所有输出几何体组中的多边形分别进行合并,形成一组输入合并多边形及一组输出合并多边形;
若输入合并多边形组与输出合并多边形组由相同的多边形组成,则判定该交易是几何完整的。
图4(a)是一个包括4个多边形(S301,S302,S303,S304)的示例。图4(b)是图4(a)中多边形的部分边界线之间关系所形成的边界线的树状结构的示例,图中箭头代表的是边界线之间的父子关系,方框代表一条边界线,前一字母为起点,后一字母为终点。多边形S301由一个环组成,该环包含AE,EH,HA三条边界线。其中边界线AE是边界线AK的子边界线,也是边界线AD、DE的父边界线。边界线AD是边界线AB、BD的父边界线。当边界线的方向与环的走向不一致时,在环中该段边界线的走向标志为假,图中我们以在边界线前加“-”号来表示。因此多边形S302只有一个环,在该环中有边界线“-AD”。多边形S303只有一个环,在该环中有边界线“-DE”。多边形S304有一个环,在该环中有边界线“-EH”。在这4个多边形中,边界线AD、DE、EH的数据在二个多边形之间共享。
本发明的一个实施例是合并多边形的方法。区块链中的多边形采用前述方式表示。合并多边形A和多边形B具体包括如下步骤:
S11、找出A、B之间由且仅由全部共同边构成的曲折线段O 1,O 2,…..O n;其中没有二个曲折线段有共同端点;若不存在这样的曲折线段,则多边形A与多边形B不能进行合并;
S12、将多边形A和B所有的环添加进一个环的集合L;
S13、对于每条曲折线段O j,其中(e j,f j)是曲折线段O j两端的端点,执行如下步骤:
S131、若e j或f j不是所在的有向边界线的端点,则反复在包括所述有向边界线的环中以子边界线替换所述有向边界线使该e j和f j在所述环中都是某条有向边界线的端点;
S132、若O j出现在L的二个环Q和R中,在L中将它们合并为一个环。合并的方法是在L中以下述新环替换Q和R;该新环是从Q和R的有向边界线列表中剔除O j中的边界线后,按各自的原循环顺序重新排列它们的有向边界线使它们的第一条有向边界线的起点和最后一条有向边界线的终点都是O j的端点,然后将上述二个有向边界线列表拼接组成新环。
S133、若O j在L的一个环Q中出现二次,在L中将Q分拆为二个环W 1和W 2。W 1和W 2分别由环Q中按循环顺序出现在O j二次出现之间的有向边界线按原循环顺序组成。或者说,这二个新环分别由以下顺序排列的边界线组成:从O j开始按循环顺序遍历Q中所有有向边界线,遍历时将在O j第一次出现结束后到第二次出现之前所经历有向边界线添加进一个环;将在O j第二次出现结束后到再次出现之前所经历有向边界线添加进另一个环。
S134、按上述步骤处理完所有共同边界线后,L中的非空环即构成合并后的多边形。
上述合并多边形的方法不是唯一的多边形合并方法,任何人都可以通过循环轮换环中的有向边界线,或是用子边界线替换环中父有向边界线,或是将环中的有向子边界线合并为父有向边界线,产生不同于但等价于上述方法所产生的环,任何产生等价于上述方法所产生的多边形的合并方法都属于本发明的专利保护范围之内。
图5、图6是合并多边形的一个示例。图5中待合并多边形P和Q有二段前后 相连的曲折线段,BCD和GHK。因为P和Q都只有一个环,我们也以P、Q指代相应的环。P环中的边界线是:AF,FH,HL,LA。Q环中的边界线是:ab,bc,ca。AF的子边界线是:AB,BC,CD,DE,EF。FH的子边界线是:FG,GH。HL的子边界线是:HK,KL。ab的子边界线是:aK,-HK,-HG,GD,-DC,-CB,Bb。
1)首先处理曲折线段BCD。因为B、D不是P和Q中边界线的端点,根据步骤S131对P和Q中边界线以子边界线替换,替换后P环的边界线是:AB,BC,CD,DE,EF,FG,GH,HK,KL,LA。Q环的边界线是:aK,-HK,-GH,GD,-CD,-BC,Bb,bc,ca。
因为曲折线段BCD出现在P和Q二个环中,根据步骤S132将它们合并为一个环,方法是:从Q环中删除BCD后以D为起点重新排列有向边界线,即得:DE,EF,FG,GH,HK,KL,LA,AB。从P环中删除BCD后以B为起点重新排列有向边界线,即得:Bb,bc,ca,aK,-HK,-GH,GD。合并为:DE,EF,FG,GH,HK,KL,LA,AB,Bb,bc,ca,aK,-HK,-GH,GD。
2)然后处理曲折线段GHK。因为GHK在上述合并后的环中出现了二次,根据步骤S133将该环分拆为二个环,一个环是从GD开始循环到FG结束的那些有向边界线,即得:GD,DE,EF,FG。另一个环是从KL开始循环到aK的那些有向边界线,即得:KL,LA,AB,Bb,bc,ca,aK。合并后的多边形由这二个环组成,如图6所示。
图6、图7是合并多边形的另一个示例。以上述合并后的多边形与另一单环多边形S合并。S的边界线是-FG,-EF,-DE,-GD。即S是边界线与上述合并后的多边形中一个环有相同的边,但走向相反的环。这二个多边形的共同曲折线段就是GD,DE,EF,FG。根据S132,需要对环GD,DE,EF,FG和-FG,-EF,-DE,-GD进行合并。合并方法是先从环S和环GD,DE,EF,FG中删除这些边界线。因为删除后这二个环都是空环,因此没有新环需要添加。合并的结果就是单一环的多边形, 这个环就是:KL,LA,AB,Bb,bc,ca,aK,如图7所示。
本发明的一个实施例是构造基本权益集的方法,包括以下步骤:
a)合并交易中所有输入和输出中的权益集产生权益并集R;
b)如果R中有一对存在祖先-后代关系的权益项,对于从该后代(含)到该祖先(不含)的父子关系链上的每个权益项r,将r的补项添加进R;从R中删除该祖先权益项;
c)重复步骤a)直到R中不存在有祖先-后代关系权益项,则集合R即为原权益集的基本权益集。
如果一个权益项属于一个权益集,或所述权益项的一个祖先属于所述权益集,则所述权益集涵盖所述权益项。
本发明的一个实施例是对于价值项为独特值的通证验证交易完整性的方法,包括以下步骤:
31)将所有输入通证和输出通证中的独特值纳入一独特值集;
32)对于独特值集中的每个匹配独特值,分别查找含有所述匹配独特值的匹配输入通证及匹配输出通证,分别将匹配输入通证及匹配输出通证权益集中的全部权益项目添加进输入匹配权益组和输出匹配权益组;
33)分别对输入匹配权益组和输出匹配权益组进行互补合并,形成输入合并权益组和输出合并权益组;
34)验证输入合并权益组和输出合并权益组是否相同,若是,则认定交易在匹配独特值下的是完整的;
35)若对于独特值集中的所有匹配独特值,交易都是在匹配独特值集下完整的,则判定交易是完整的。
以一个具体的例子来说明上述方法。设A、B为独特值。a-h为权益项,其关系如图2所示。交易的输入为[A,{g}],[A,{f,h}],[B,{d}],输出为[A,{a}],[B,{c,g}], [B,{f,h}]。
根据步骤31),独特值集为{A,B}。
首先以A为匹配独特值,根据步骤32)产生输入匹配权益组[g,f,h]和输出匹配权益组[a]。根据步骤33)进行互补合并,形成输入合并权益组[a]和输出合并权益组[a]。根据步骤34)认定交易在A之下的是完整的。
然后以B为匹配独特值,根据步骤32)产生输入匹配权益组[d]和输出匹配权益组[c,g,f,h]。根据步骤33)进行互补合并,形成输入合并权益组[d]和输出合并权益组[d]。根据步骤34)认定交易在B之下的是完整的。
最后根据步骤35)判定交易是完整的。
本发明的一个实施例是构造区块链上交易的方法,通证在区块链系统中的流通过程中,用户构造交易,并将交易数据发送给区块链中的节点;交易包含通证,通证包含价值项和权益集;价值项为数值、几何体或独特值;独特值为事物的标识;权益集是权益项的集合,权益项是指向权益树林中结点的索引或句柄;权益树林由一组权益树组成,权益树是一树状数据结构,权益树中结点包含对权益范围的文字描述,结点的子结点总是成对存在,节点一对子结点的权益范围在其父结点的权益范围内互补;交易的构造包括对权益的拆分和合并,权益拆分的方法具体如下:
将输入通证权益集中的权益项分割为二个互补的子集;
构造二个输出通证,它们的价值项与输入通证中相同,它们的权益项分别为所述二个子集;
权益合并的方法具体如下:
对二个具有相同价值项的输入通证进行权益合并,包括构造一个输出通证,其中价值项与输入通证中相同,其权益集是二个输入通证的权益集的并集。
本发明的一个实施例是一种区块链系统,其特征在于,系统由若干个节点和若干个终端组成,所述节点和所述终端与互联网相连并通过互联网相互通信;
终端根据用户基于上述的区块链方法来构造交易信息,并将交易信息发送至所述区块链系统中的节点;
节点接收终端发送来的交易信息或者是其他节点发送来的区块信息,区块信息由交易信息打包形成;节点基于前述的区块链方法来验证接收到的交易或区块中的交易是否合法,若接收到的区块合法,则将所述区块加入本地区块链数据的尾部;若接收到的交易合法,则保留所述交易,周期性地将所收到的合法交易打包成区块,将所述打包成的区块加入本地区块链数据的尾部并向区块链网络中的其他节点广播。
本发明的一个实施例是一种区块链系统一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现前述任意一项区块链方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程说明(包括流程图、方框图、文字说明)来描述的。应理解可由计算机程序指令实现流程说明中的每一流程。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程中一项或多项指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程说明中的一项或 多项指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程说明中一项或多项指定的功能的步骤。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的步骤来描述的。应理解可由计算机程序指令实现的每一步骤。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在一个或多个步骤中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在一个或多个步骤中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在一个或多个步骤中指定的功 能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

Claims (11)

  1. 一种区块链方法,其特征在于,所述方法具体包括如下步骤:
    S1、接收交易信息或者是区块信息,所述区块信息由交易信息打包形成;
    S2、验证接收到的交易或区块中的交易是否合法;
    S3、若接收到的区块合法,则将所述区块加入本地区块链数据的尾部;若接收到的交易合法,则保留所述交易,周期性地将所收到的合法交易打包成区块,将所述打包成的区块加入本地区块链数据的尾部并向区块链网络中的其他节点广播;
    所述交易包含通证,通证包含价值项和权益集,所述权益集是权益项的集合,所述权益项是指向权益树林中结点的索引或句柄;
    所述价值项为:数值、几何体或独特值;所述独特值为事物的标识;
    权益树林由一组权益树组成,权益树是一树状数据结构,权益树中结点包含描述权益范围的文本,结点的子结点成对存在,称为子结点对,子结点对的权益范围在其父结点的权益范围内互补。
  2. 根据权利要求1所述区块链方法,其特征在于,所述验证交易合法性包括验证交易的完整性,当所述价值项为数值时,对交易完整性进行验证具体包括如下步骤:
    21)将输入通证组和输出通证组中每个通证拆为若干个简单通证,每个简单通证只包含所述通证权益集中的一个权益项,简单通证的价值项与所述通证的价值项相同,拆分后的简单通证分别构成输入简单通证组和输出简单通证组;
    22)基于221)、222)及223)对输入简单通证组及输出简单通证组中通证进行合并,直至输入简单通证组和输出简单通证组相同,或不存在可以合并的通证;输出合并后的输入简单通证组及输出简单通证组;若合并之后的输入简单通证组与输出简单通证组相同,则判定交易是完整的;
    221)若输入简单通证组或输出简单通证组中存在价值项相同,且权益项在同一 父权益下互补的两个简单通证,则将所述二个简单通证合并,形成一个价值项与简单通证相同,权益集仅包含父权益项的通证;
    222)若输入简单通证组或输出简单通证组中存在价值项不同,但权益项在同一父权益下互补的两个简单通证,则形成通证一和通证二,通证一的价值项为简单通证中的较小价值项,权益集仅包含父权益项,通证二的价值项为二个简单通证的价值项之差,权益集为价值项较大的简单通证的权益集;
    223)若输入简单通证组或输出简单通证组中存在权益集相同的两个简单通证,则将二个简单通证进行合并,形成一个价值项为二个简单通证的价值项之和,权益集为所述权益集的通证。
  3. 根据权利要求1所述区块链方法,其特征在于,所述验证交易合法性包括验证交易的完整性,当所述通证的价值项是几何体时,对交易完整性进行验证具体包括如下步骤:
    31)构造交易的基本权益集;
    32)对于基本权益集中的每个基本权益项,分别查找涵盖基本权益项的匹配输入通证及匹配输出通证,分别对匹配输入通证及匹配输出通证的几何体进行合并,验证合并后的输入几何体组和合并后的输出几何体组是否几何完整,若是,则认定交易在该基本权益项下的是完整的;
    33)若交易在所有基本权益项下均是完整的,则判定交易是完整的;
    基本权益集是交易中输入通证权益集和输出通证权益集并集的一个子集,子集中没有任何一个权益项是另一个权益项的祖先,并集中的任一权益项或者是基本权益集中的基本权益项或者可由基本权益集中的一组基本权益项互补合并形成;
    几何完整:输入几何体组和输出几何体组若相同,则输入几何体组和输出几何体组是几何完整的。
  4. 根据权利要求3所述区块链方法,其特征在于,输入几何体组及输出几何体 组满足条件1及条件2才可判定输入几何体组与输出几何体组相同,条件1及条件2具体如下:
    条件1:输出几何体组中的几何体之间不存在空间上的重叠;
    条件2:所有输入几何体组的几何体所占据的空间与所有输出几何体组的几何体所占据的空间相同。
  5. 根据权利要求3所述区块链方法,其特征在于,交易中的几何体为多边形,多边形以一组环的形式表示,环是一组有序排列的有向边界线,有向边界线是包含边界线及其走向信息的数据,所述边界线树林是一组边界线树;所述边界线树是一树状数据结构;边界线是指向边界线树林中结点的索引或句柄,边界线树的结点代表由所述结点为根的子树中所有叶结点所代表的边构成的曲折线;
    将所有输入几何体组中的多边形及所有输出几何体组中的多边形分别进行合并,形成一组输入合并多边形及一组输出合并多边形;
    若输入合并多边形组与输出合并多边形组由相同的多边形组成,则判定输入合并多边形组与输出合并多边形组是几何完整的;
    若两个环的有向边界线列表的数量、顺序、和内容都相同,或者是经过若干次操作1或操作2后,两个环的有向边界线列表的数量、顺序、和内容都相同,则二个环等价:
    操作1:循环轮换环其中一个环的有向边界线列表;
    操作2:在其中一个环中以子边界线替换一个有向边界线;
    如果两个多边形中的环按等价关系一一对应,则所述两个多边形是相同的。
  6. 如权利要求5所述区块链方法,其特征在于,多边形的合并的方法具体包括如下步骤:
    S11、检测待合并多边形A和多边形B是否有共同的边,若检测结果为是,获取多边形A及多边形B的所有共同边组成的若干条曲折线段,所述曲折线段的端点为 (e 1,f 1),(e 2,f 2),...,(e w,f w),其中不存在二条有共同端点的曲折线段;
    S12、对于上述每个曲折线段(e j,f j),执行以下步骤,全部完成后,A和B中所有的非空的环即组成合并后的多边形:
    S121、若e j或f j不是所在有向边界线的端点,则在包括所述有向边界线的环中,反复以子边界线替换所述有向边界线,使该e j和f j在所述环中都是某条有向边界线的端点;
    S122、若曲折线段(e j,f j)出现在二个不同的环Q和环R中,将环Q和环R合并为一个等价于W的环,产生环W的方法具体如下:
    环Q和环R分别按原循环顺序但不包括曲折线段(e j,f j)中的边界线重新排列形成两个有向边界线列表,两个有向边界线列表的首有向边界线的起点和尾有向边界线的终点都是曲折线段(e j,f j)的端点,然后将上述二个有向边界线列表拼接成为一个列表,拼接后的有向边界线列表构成新环W;
    S123、若曲折线段(e j,f j)在一个环W中出现二次,将环W分拆为等价于环W 1和环W 2的二个新环,环W 1和环W 2分别由环W中按循环顺序出现在曲折线段(e j,f j)之间二组有向边界线按原循环顺序分别组成。
  7. 根据权利要3至6任一权利要求所述区块链方法,其特征在于,基本权益集构造方法具体包括以下步骤:
    71)将输入通证中的权益集和输出通证中的权益集进行合并,形成集合R1;
    72)基于步骤73)及步骤74)替换集合R1中的权益项,直至集合R1中不存在有祖先-后代关系的权益项,则集合R1为基本权益集;
    73)检测集合R1中是否存在祖先-后代关系的权益项对;
    74)若检测结果为是,则获取权益项对中后代到祖先之间的父子关系链上的除祖先之外的每个权益项r,将权益项r的补项添加至集合R1,从集合R1中删除该祖先权益项;
  8. 根据权利要求1所述区块链方法,其特征在于,所述验证交易合法性包括验证交易的完整性,所述通证的价值项是独特值,对交易完整性进行验证具体包括如下步骤:
    81)将所有输入通证和输出通证中的独特值纳入一独特值集;
    82)对于独特值集中的每个匹配独特值,分别查找含有所述匹配独特值的匹配输入通证及匹配输出通证,分别将匹配输入通证及匹配输出通证权益集中的全部权益项添加进输入匹配权益组和输出匹配权益组;
    83)分别对输入匹配权益组和输出匹配权益组进行互补合并,形成输入合并权益组和输出合并权益组;
    84)验证输入合并权益组和输出合并权益组是否相同,若是,则认定交易在匹配独特值下的是完整的;
    85)若对于独特值集中的所有匹配独特值,交易都是在匹配独特值集下完整的,则判定交易是完整的。
  9. 一种区块链方法,其特征在于,通证在区块链系统中的流通过程中,用户构造交易,并将交易数据发送给区块链中的节点,所述交易的构造包括对权益的拆分和合并,权益拆分的方法具体如下:
    将输入通证权益集中的权益项分割为二个互补的子集;
    构造二个输出通证,两输出通证的价值项与所述输入通证的价值项相同,两输出通证的权益项分别为所述二个子集;
    权益合并的方法具体如下:
    对相同价值项的两输入通证进行权益合并,形成一个输出通证,输出通证的价值项与输入通证中的价值项相同,权益集是二个输入通证权益集的并集;
    所述交易包含通证,通证包含价值项和权益集;所述价值项为:数值、几何体或独特值;所述独特值为事物的标识;所述权益集是权益项的集合,所述权益项是 指向权益树林中结点的索引或句柄;权益树林由一组权益树组成,权益树是一树状数据结构,权益树中结点包含对权益范围的文字描述,结点的子结点成对存在,称为子结点对,子结点对的权益范围在其父结点的权益范围内互补。
  10. 一种区块链系统,其特征在于,所述系统由若干个节点和若干个终端组成,所述节点和所述终端与互联网相连并通过互联网相互通信;
    所述终端根据用户基于权利要求9所述的区块链方法来构造交易信息,并将交易信息发送至所述区块链系统中的节点;
    所述节点接收终端发送来的交易信息或者是其他节点发送来的区块信息,所述区块信息由交易信息打包形成;所述节点基于权利要求2至8所述的区块链方法来验证接收到的交易或区块中的交易是否合法,若接收到的区块合法,则将所述区块加入本地区块链数据的尾部;若接收到的交易合法,则保留所述交易,周期性地将所收到的合法交易打包成区块,将所述打包成的区块加入本地区块链数据的尾部并向区块链网络中的其他节点广播。
  11. 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-9任意一项所述的区块链方法。
PCT/CN2021/076183 2020-03-04 2021-02-09 一种区块链方法、系统及计算机可读存储介质 WO2021175109A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/896,316 US11954120B2 (en) 2020-03-04 2022-08-26 Blockchain method and system, and computer readable storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010144044.7 2020-03-04
CN202010144044.7A CN111368001B (zh) 2020-03-04 2020-03-04 一种区块链方法、系统及计算机可读存储介质

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/896,316 Continuation-In-Part US11954120B2 (en) 2020-03-04 2022-08-26 Blockchain method and system, and computer readable storage medium

Publications (1)

Publication Number Publication Date
WO2021175109A1 true WO2021175109A1 (zh) 2021-09-10

Family

ID=71209692

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/076183 WO2021175109A1 (zh) 2020-03-04 2021-02-09 一种区块链方法、系统及计算机可读存储介质

Country Status (3)

Country Link
US (1) US11954120B2 (zh)
CN (1) CN111368001B (zh)
WO (1) WO2021175109A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111368001B (zh) * 2020-03-04 2023-06-02 徐皓 一种区块链方法、系统及计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180082290A1 (en) * 2016-09-16 2018-03-22 Kountable, Inc. Systems and Methods that Utilize Blockchain Digital Certificates for Data Transactions
CN109472696A (zh) * 2018-09-29 2019-03-15 腾讯科技(深圳)有限公司 资产交易方法、装置、存储介质及计算机设备
CN109583905A (zh) * 2018-12-21 2019-04-05 众安信息技术服务有限公司 基于区块链网络的利用通证来实现数据共享的方法和设备
CN110458700A (zh) * 2019-06-19 2019-11-15 远光软件股份有限公司 一种通证生成方法、供应链金融系统以及电子设备
CN111368001A (zh) * 2020-03-04 2020-07-03 芜湖明轩科技有限公司 一种区块链方法、系统及计算机可读存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011115839A2 (en) * 2010-03-15 2011-09-22 DynamicOps, Inc. Computer relational database method and system having role based access control
US20140074679A1 (en) * 2012-06-18 2014-03-13 Bart P.E. van Coppenolle Targeted objective complementary currency
WO2017148527A1 (en) * 2016-03-03 2017-09-08 Nec Europe Ltd. Method for managing data in a network of nodes
US11210593B1 (en) * 2016-12-22 2021-12-28 Brain Technologies, Inc. Storage and execution of operation sequences
US11341488B2 (en) * 2017-02-06 2022-05-24 Northern Trust Corporation Systems and methods for issuing and tracking digital tokens within distributed network nodes
CN108647951A (zh) * 2018-03-28 2018-10-12 深圳市网心科技有限公司 基于区块链的数字信息交易方法、系统、装置及存储设备
CN109325752A (zh) * 2018-08-15 2019-02-12 何帆 分布式发电收益流通结算系统、方法以及存储介质
US11455380B2 (en) * 2018-11-20 2022-09-27 International Business Machines Corporation Chain-of-custody of digital content in a database system
US11048690B2 (en) * 2018-11-21 2021-06-29 Adobe Inc. Contribution of multiparty data aggregation using distributed ledger technology
US11372817B2 (en) * 2019-04-18 2022-06-28 International Business Machines Corporation Synchronization of peers
CN110838063B (zh) * 2019-09-30 2024-04-12 远光软件股份有限公司 基于区块链的交易处理方法、电子设备和存储介质
US20210117938A1 (en) * 2019-10-21 2021-04-22 Mastercard International Incorporated Method and system for control of pii through limiting transfers on blockchain

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180082290A1 (en) * 2016-09-16 2018-03-22 Kountable, Inc. Systems and Methods that Utilize Blockchain Digital Certificates for Data Transactions
CN109472696A (zh) * 2018-09-29 2019-03-15 腾讯科技(深圳)有限公司 资产交易方法、装置、存储介质及计算机设备
CN109583905A (zh) * 2018-12-21 2019-04-05 众安信息技术服务有限公司 基于区块链网络的利用通证来实现数据共享的方法和设备
CN110458700A (zh) * 2019-06-19 2019-11-15 远光软件股份有限公司 一种通证生成方法、供应链金融系统以及电子设备
CN111368001A (zh) * 2020-03-04 2020-07-03 芜湖明轩科技有限公司 一种区块链方法、系统及计算机可读存储介质

Also Published As

Publication number Publication date
CN111368001A (zh) 2020-07-03
CN111368001B (zh) 2023-06-02
US20220414120A1 (en) 2022-12-29
US11954120B2 (en) 2024-04-09

Similar Documents

Publication Publication Date Title
US11677550B2 (en) Methods and apparatus for a distributed database including anonymous entries
US11232081B2 (en) Methods and apparatus for a distributed database within a network
AU2019229435B2 (en) Methods and apparatus for a distributed database within a network
US11734260B2 (en) Methods and apparatus for a distributed database within a network
WO2017040313A1 (en) Methods and apparatus for a distributed database within a network
WO2021175110A1 (zh) 区块链方法及系统、电子设备及计算机可读存储介质
WO2021175109A1 (zh) 一种区块链方法、系统及计算机可读存储介质
RU2775263C2 (ru) Способы и устройство для распределенной базы данных, содержащей анонимные входные данные
RU2778013C2 (ru) Способы и устройство для распределенной базы данных в сети
CN117834101A (zh) 一种基于区块链的数据权属高效溯源方法

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: 21763920

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21763920

Country of ref document: EP

Kind code of ref document: A1