US20200366463A1 - Apparatuses for Providing a Set of Cryptographically Protected, Filtered, and Sorted Transaction Data Records of a Link of a Blockchain - Google Patents

Apparatuses for Providing a Set of Cryptographically Protected, Filtered, and Sorted Transaction Data Records of a Link of a Blockchain Download PDF

Info

Publication number
US20200366463A1
US20200366463A1 US16/639,870 US201816639870A US2020366463A1 US 20200366463 A1 US20200366463 A1 US 20200366463A1 US 201816639870 A US201816639870 A US 201816639870A US 2020366463 A1 US2020366463 A1 US 2020366463A1
Authority
US
United States
Prior art keywords
transaction
blockchain
block
datasets
search
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.)
Abandoned
Application number
US16/639,870
Inventor
Rainer Falk
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Assigned to SIEMENS AKTIENGESELLSCHAFT reassignment SIEMENS AKTIENGESELLSCHAFT ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FALK, RAINER
Publication of US20200366463A1 publication Critical patent/US20200366463A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • 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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • 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/9027Trees
    • 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/602Providing cryptographic facilities or services
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/06Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
    • G06F7/08Sorting, i.e. grouping record carriers in numerical or other ordered sequence according to the classification of at least some of the information they carry
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/30Compression, e.g. Merkle-Damgard construction
    • H04L2209/38
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Definitions

  • the present disclosure relates to blockchain technology.
  • Various embodiments include devices for providing a set of cryptographically protected and filtered and sorted transaction datasets of a block of a blockchain, methods for forming a set of sorted transaction datasets, communication network arrangements, and associated computer program products.
  • FIG. 1 shows one example of such a blockchain.
  • a blockchain is generally understood to mean a database whose integrity (security against subsequent manipulation) is ensured by storing the one-way function value PH, also called hash value, of the preceding dataset or block B10 in the respective following block B11, that is to say by cryptographic chaining.
  • the protection is given by a multiplicity of trusted nodes BCN, illustrated by way of example in FIG. 3 , in a blockchain network N that performs what is known as mining or validation of blocks.
  • a new block for example B11 is formed at regular intervals, for example every 10 minutes, and in the process the hash value PH of an existing block is stored therewith.
  • a predefinable number, in the example 4 of transactions for example Tx0, Tx1, Tx2 and Tx3 are selected from a set M of transactions for example Tx0, Tx1, Tx2, Tx3, Tx4, Tx5 and Tx6 and are appended in a hash tree in the form of leaves in any desired order, at best a syntactic order numbered from 0 to 3.
  • the use of a Merkle tree or Patricia tree is conventional for example as hash trees.
  • the root node TxR of such a hash tree is anchored in a block for example B11.
  • the blockchain platform Ethereum supports a freely programmable runtime environment, such that the program code of a blockchain may be created flexibly.
  • business logic is stored in the transaction dataset and thus in the blockchain or in a blockchain infrastructure node as program code.
  • the transaction to be executed is stored in a (chain) block of the blockchain.
  • teachings of the present disclosure provide methods and devices that allow efficient and improved processing of those transactions by the nodes that are relevant to the nodes.
  • some embodiments of the teachings here include a method for forming a set of cryptographically protected and semantically sorted transaction datasets of a blockchain from a set of unsorted transaction datasets, comprising the following steps:
  • search terms in the second block (B11) are arranged in a search tree (TT), wherein the search terms form the nodes of the search tree.
  • some embodiments include an access unit (G) comprising a filtering apparatus as described above, characterized in that the further search term is able to be defined by a device (IoT) or a plurality of devices (IoTC, FD1, FD2, FD3) of a group (AN) and/or is able to be subscribed to such that the transaction datasets assigned to the search term are subscribed to thereby, and only the blocks of the blockchain that contain the defined and/or subscribed-to transaction datasets are forwarded to the device or the plurality of devices.
  • IoT device
  • IoTC FD1, FD2, FD3
  • AN group
  • what is known as a publish-subscribe protocol is able to be applied in the network infrastructure (N), in which the filtering apparatus is designed to allow the one or more devices of the group to subscribe to and/or define search terms.
  • FIG. 1 shows an exemplary embodiment in the form of a blockchain according to the prior art
  • FIG. 4 shows a flowchart of a method incorporating teachings of the present disclosure.
  • the method may be performed in a computer-assisted manner.
  • the terms “perform”, “calculate”, “computer-assisted”, “compute”, “establish”, “generate”, “configure”, “reconstruct”, and the like preferably relate to operations and/or processes and/or processing steps that change and/or generate data and/or convert the data into other data, wherein the data may be represented or be present in particular in the form of physical variables, for example in the form of electrical impulses.
  • the expression “computer” should in particular be interpreted as broadly as possible in order in particular to cover all electronic devices having data processing properties.
  • Some embodiments include a filtering apparatus suitable for coupling to the provision means of the abovementioned device, characterized by determination means for determining a set of filtered transaction datasets from the set of integrity-checked and sorted transaction datasets of a blockchain using the filtering criterion.
  • a computer program (product) containing program commands for a network node processing a blockchain, in particular of the type mentioned at the outset, that is configured by way of the program commands that are suitable for executing the methods as described above.
  • the computer program product contains program commands for configuring a creation device, for example a 3 D printer, a computer system, and/or a manufacturing machine suitable for creating processors and/or devices, may additionally be provided.
  • the uses, devices and computer program (products) may be designed in accordance with the developments/embodiments of the abovementioned method and the developments/embodiments thereof.
  • FIG. 1 shows the blocks, for example a first block B10 and a second block B11, of a blockchain.
  • the blocks each comprise a plurality of transactions Tx0 to Tx3.
  • the hash value PH which is formed depending on the preceding block, may in particular be a cryptographic hash value that is able to be determined for example by way of SHA2-256, SHA2-384, SHA-3, BLAKE2.
  • nodes are depicted proceeding from the node containing H1, containing sub-terms such as for example locations “Vaterstetten”, “Poing” and “Aschheim”. These nodes also each contain a hash value that is not illustrated in FIG. 2 .
  • the transactions Tx2, Tx1, and Tx0, Tx3 are shown on the leaves of the Merkle tree, these reaching the Merkle tree at the positions shown therein by being semantically sorted from an unsorted set M (see FIG. 1 ) of transactions.
  • the hash tree HT for example Merkle tree, Patricia tree or the like
  • search term search term
  • the transactions of a “search term” are able to be checked efficiently.
  • a node BCN (see FIG. 3 ) may load and check the subregion of the tree HT that contains the transactions of this search term. As a result, it is easy to distinguish between different types of transaction.
  • a node that wishes to evaluate only particular types of transaction is able to process, in a targeted manner, that or those parts of the tree HT containing relevant transactions.
  • the topic or the search term in the example of FIG. 2 consists of the main term “eon” and further subordinate sub-terms “M-state” and “Poing” and finally with the transaction reference “Reduceinfeed”, with a full stop separation symbol between the terms.
  • Such a separation symbol could identify an edge between the nodes “eon” and the nodes “M-state” in the tree TT.
  • all of the edges of the tree TT could be marked with separation symbols.
  • the gateway G generates, from a message of a publish-subscribe protocol (for example XMPP, MQTT, AMQP, OPC UA PubSub) that is provided by a publisher and that is assigned to a topic, a blockchain transaction, the eway in the opposite direction, a transaction, which is dnet, and which is confirmed in a block that is validated, provide it as a PubSub message to subscribers (devices of a group) as a PubSub message that contains the search term of the blockchain transaction as topic.
  • a device (not illustrated) that filters the transactions by way of an integrated or (remote) coupled filtering apparatus may preferably be implemented in the gateway or else in one of the nodes BCN. The filtering may be performed using the publish-subscribe approach described above.
  • the topic (further search term) determines a filtering criterion using which the filtered transactions or transaction datasets are able to be provided and forwarded to devices, for example IoT, or other nodes BCN.
  • a topic may be defined and subscribed to by a device for example via a user interface and/or predefined by a device, for example FD3, as projection data (for example application field: Industry 4.0, system: substation, device x in the substation, region: state of Kunststoff, operator: Eon, etc.).
  • a transaction is assigned to a topic (for example by a (sorting) attribute).
  • a topic may in this case be structured hierarchically (topic tree), for example topic1.topic2.topic3 (also see above). Namespaces may for example be used as a topic in order accordingly to be able to use the group communication for a particular topic.
  • nodes that are deemed to be trusted are able to code information about the real world into a blockchain transaction and thus make information from the real world accessible to smart contracts in the blockchain (https://blog.ledger.co/hardware-oracles-bridging-the-real-world-to-the-blockchainca97c2fc3e6c#.lu511vbrd).
  • FIG. 4 shows a flowchart of an example method incorporating teachings of the present disclosure. Since a blockchain is a decentralized, distributed database, it is normally possible to communicate with one of the multiplicity of identical blockchain nodes, for example BCN in FIG. 3 .
  • the example method in this case comprises:
  • S01 forming one or more (second) block(s) of a blockchain that has been chained or is chained to a first block thereof or a further blockchain.
  • the first block may be a starting block and/or Genesis block (originating block).
  • B2 The method is repeated, starting with S01, up to a sufficient length of the blockchain or until a predefinable or predefined number of blocks are formed in the blockchain.
  • Computer-readable memories are for example volatile memories such as caches, buffers or RAMS, as well as non-volatile memories such as exchangeable data carriers, hard disks, etc.
  • the functions or steps described above may in this case be present in the form of at least one set of instructions in/on a computer-readable memory.
  • the functions or steps are in this case not linked to a particular set of instructions or to a particular form of sets of instructions or to a particular storage medium or to a particular processor or to a particular execution scheme, and may be implemented by software, firmware, microcode, hardware, processors, integrated circuits, etc. operating on their own or in any desired combination.
  • a wide variety of processing strategies may be used, for example series processing using a single processor or multiprocessing or multitasking or parallel processing, etc.
  • the instructions may be stored in local memories, but it is also possible to store the instructions on a remote system and to access them via a network.

Abstract

Forming a set of protected and sorted transaction datasets of a blockchain may include: a) forming a second block chained to the first block; b) defining a search term in the second block; c) selecting a transaction dataset from a set of unsorted transaction datasets, wherein the selected transaction dataset has been checked for integrity; d) assigning the selected transaction dataset to the search term; e) repeating steps b) to d) until a predefined number of transaction datasets to be selected is reached or the set of unsorted transaction datasets is empty; f) semantically sorting the selected and assigned transaction datasets on the basis of a predefined sorting criterion, wherein the assigned search terms are in an order corresponding to the sorting criterion; and g) forming the set of cryptographically protected and semantically sorted transaction datasets using the order.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application is a U.S. National Stage Application of International Application No. PCT/EP2018/065299 filed Jun. 11, 2018, which designates the United States of America, and claims priority to EP Application No. 17186826.8 filed Aug. 18, 2017, the contents of which are hereby incorporated by reference in their entirety.
  • TECHNICAL FIELD
  • The present disclosure relates to blockchain technology. Various embodiments include devices for providing a set of cryptographically protected and filtered and sorted transaction datasets of a block of a blockchain, methods for forming a set of sorted transaction datasets, communication network arrangements, and associated computer program products.
  • BACKGROUND
  • A large number of transactions of different types may be contained in a single blockchain. If a blockchain is used for industrial applications, for example to control a smart energy grid, nodes of the network may have to process a multiplicity of transactions that are irrelevant to them. Blockchain technology or distributed ledger technology is at present a technology that is subject to intense discussion. It is described inter alia at https://en.wikipedia.org/wiki/Blockchain (database).
  • FIG. 1 shows one example of such a blockchain. A blockchain is generally understood to mean a database whose integrity (security against subsequent manipulation) is ensured by storing the one-way function value PH, also called hash value, of the preceding dataset or block B10 in the respective following block B11, that is to say by cryptographic chaining. The protection is given by a multiplicity of trusted nodes BCN, illustrated by way of example in FIG. 3, in a blockchain network N that performs what is known as mining or validation of blocks.
  • In the network of nodes participating in a blockchain, a new block for example B11 is formed at regular intervals, for example every 10 minutes, and in the process the hash value PH of an existing block is stored therewith. In this case, a predefinable number, in the example 4, of transactions for example Tx0, Tx1, Tx2 and Tx3 are selected from a set M of transactions for example Tx0, Tx1, Tx2, Tx3, Tx4, Tx5 and Tx6 and are appended in a hash tree in the form of leaves in any desired order, at best a syntactic order numbered from 0 to 3. The use of a Merkle tree or Patricia tree is conventional for example as hash trees. The root node TxR of such a hash tree is anchored in a block for example B11.
  • Transactions Tx0, Tx1, Tx2, Tx3 cannot be changed without being noticed once they arise in the blockchain. The validity or the integrity of transactions to be stored in the block is checked in this mining process. The transaction may be executed by way of a transaction dataset. A transaction is understood to mean a reciprocal transmission of virtual or real goods or of a payment (for example by way of Bitcoin or Ethereum) or other information from a sender to a receiver. In the case of Bitcoin, a relatively simple stack-based runtime environment is used in order to check the reliability of a transaction. A transaction in this case comprises the checksum for checking the validity of the transaction.
  • The blockchain platform Ethereum supports a freely programmable runtime environment, such that the program code of a blockchain may be created flexibly. In this case, for example, business logic is stored in the transaction dataset and thus in the blockchain or in a blockchain infrastructure node as program code. In this sense, the transaction to be executed is stored in a (chain) block of the blockchain. In this connection, it is accordingly barely possible to draw a distinction between the transaction to be executed and the transaction dataset that is configured for the execution of the transaction.
  • In the case of blockchains, it is possible for some nodes to completely validate a block, that is to say check all of the transactions of a block. Since this is burdensome, simple validation nodes that validate only individual transactions are also conceivable. To this end, they should in each case comb through and check the path through the hash tree of the transactions in question.
  • In addition to a mining process as proof of work, alternatives are also known, in particular a proof of stake, in which a block is confirmed by a pseudo-randomly but deterministically selected blockchain node, or an access-controlled blockchain (permissioned blockchain). A blockchain-protected and thus cryptographically protected transaction dataset generally comprises program code. The term “smart contract” is understood to mean a program code in which conditions may be defined at the time of creation and evaluated at its runtime, such that particular transactions of a certain (monetary) amount to one particular or several particular receivers may or may not be performed.
  • SUMMARY
  • The teachings of the present disclosure provide methods and devices that allow efficient and improved processing of those transactions by the nodes that are relevant to the nodes. For example, some embodiments of the teachings here include a method for forming a set of cryptographically protected and semantically sorted transaction datasets of a blockchain from a set of unsorted transaction datasets, comprising the following steps:
      • a) forming at least one second block (B11) of a blockchain that has been chained or is chained to a first block (B10) thereof or a further blockchain,
      • b) defining at least one search term in the second block or reading at least one previously defined search term that the second block contains,
      • c) selecting a transaction dataset (Tx0) from the set (M) of unsorted transaction datasets (Tx0 to Tx6), wherein the selected transaction dataset has been checked for integrity,
      • d) assigning the selected transaction dataset (Tx0) to the defined or read search term or to one of the defined or read search terms,
      • e) repeating steps b) to d) until a predefinable number of transaction datasets to be selected is reached and/or the set of unsorted transaction datasets is empty,
      • f) semantically sorting the selected and assigned transaction datasets on the basis of a predefinable sorting criterion, wherein the assigned search terms are put in an order corresponding to the sorting criterion, and
      • g) forming the set of cryptographically protected and semantically sorted transaction datasets (Tx2, Tx1, Tx0, Tx3) using said order.
  • In some embodiments, in the case of a plurality of defined or read search terms in the second block (B11), these are arranged in a search tree (TT), wherein the search terms form the nodes of the search tree.
  • In some embodiments, a search term is formed from a main term and a plurality of sub-terms, possibly in each case separated by a separation symbol.
  • In some embodiments, the search term is arranged hierarchically with the main term in the root node of the search tree as far as a furthest-away subordinate sub-term in the leaf node of the search tree and a separation symbol possibly identifies an edge of the search tree situated between the associated nodes.
  • As another example, some embodiments include a device for providing a set of cryptographically protected and filtered transaction datasets from a set of integrity-checked and semantically sorted transaction datasets (Tx2, Tx1, Tx0, Tx3) of a block (B10, B11) of a blockchain that is formed in particular according to the method as described above, having: provision means for providing at least one such block of a blockchain and coupling means for coupling the provision means to a filtering apparatus that determines the set of filtered transaction datasets from the set of checked and semantically sorted transaction datasets of the blockchain using a filtering criterion, and output means for providing the determined set of filtered transaction datasets.
  • As another example, some embodiments include a filtering apparatus suitable for coupling to the provision means of the device as described above, characterized by determination means for determining a set of filtered transaction datasets from the set of integrity-checked and sorted transaction datasets (Tx2, Tx1, Tx0, Tx3) of a blockchain (B11) using the filtering criterion.
  • In some embodiments, the filtering criterion is able to be defined using a further search term and/or at least part of the further search term that is identical to the search term in the provided block of the blockchain or is able to be derived therefrom or is derived therefrom.
  • As another example, some embodiments include an access unit (G) comprising a filtering apparatus as described above, characterized in that the further search term is able to be defined by a device (IoT) or a plurality of devices (IoTC, FD1, FD2, FD3) of a group (AN) and/or is able to be subscribed to such that the transaction datasets assigned to the search term are subscribed to thereby, and only the blocks of the blockchain that contain the defined and/or subscribed-to transaction datasets are forwarded to the device or the plurality of devices.
  • As another example, some embodiments include a communication network arrangement comprising the following components: at least one network node (BCN) processing a blockchain and that in each case has a device as described above, one (IoT) or more devices (IoTC, FD1, FD2, FD3) that are assigned to a group (AN), at least one filtering apparatus as described above or at least one access unit (G) as described above, and a network infrastructure (N) by way of which said components are able to communicate with one another.
  • In some embodiments, what is known as a publish-subscribe protocol is able to be applied in the network infrastructure (N), in which the filtering apparatus is designed to allow the one or more devices of the group to subscribe to and/or define search terms.
  • As another example, some embodiments include a computer program product containing program commands for a network node (BCN) processing a blockchain and that is configured by way of the program commands that are suitable for executing the method as described above.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The above-described properties, features, and advantages of the teachings herein and the way in which these are achieved will become clearer and better comprehensible in connection with the following description of the exemplary embodiments that are explained in more detail in connection with the figures. In this case, in each case schematically:
  • FIG. 1 shows an exemplary embodiment in the form of a blockchain according to the prior art;
  • FIG. 2 shows an exemplary embodiment incorporating teachings of the present disclosure in one or more transaction dataset(s) incorporated into a block of a blockchain;
  • FIG. 3 shows an exemplary embodiment of how the teachings of the present disclosure may be embedded into a network infrastructure;
  • FIG. 4 shows a flowchart of a method incorporating teachings of the present disclosure.
  • DETAILED DESCRIPTION
  • Some embodiments of the teachings herein include a method for forming or for generating a set of cryptographically protected and semantically sorted transaction datasets of a blockchain from a set of unsorted transaction datasets, comprising the following steps: a) forming at least one second block of a blockchain that has been chained or is chained to a first block thereof or a further blockchain, b) defining at least one search term in the second block or reading at least one previously defined search term that the second block contains, c) selecting a transaction dataset from the set of unsorted transaction datasets, wherein the selected transaction dataset has been checked for integrity, d) assigning the selected transaction dataset to the defined or read search term or to one of the defined or read search terms, e) repeating steps b) to d) until a predefinable number of transaction datasets to be selected is reached and/or the set of unsorted transaction datasets is empty, f) semantically sorting the selected and assigned transaction datasets on the basis of a predefinable sorting criterion, wherein the assigned search terms are put in an order corresponding to the sorting criterion, and g) forming the set of cryptographically protected and semantically sorted transaction datasets using said order.
  • Such methods may be repeated such that it is ultimately possible to form or generate a plurality of blocks beginning with a starting block, which may also be the originating block (Genesis block), wherein each block on its own may accordingly contain a check function of the type mentioned at the outset or sub-functions thereof. “Semantically sorted” as used herein is understood to mean that the sorting depends on the meaning of a search term. In this case, the semantic sorting may, purely randomly, give the same order as in the syntactic sorting mentioned at the outset in the arrangement of said transactions. This is however generally not the case. The order of the arranged transactions normally turns out differently semantically than it does syntactically or even than it does in unsorted form.
  • A search term may in this case be formed from a main term and one or more further subordinate sub-terms. A separation symbol, for example “.”, may in each case be inserted between the main term and the sub-terms. In the case of a plurality of defined or read search terms in said second block, these may be arranged in a search tree, e.g. a hash tree, wherein the search terms form the nodes of the search tree. A search term may also be arranged hierarchically with the main term in the root node of the search tree as far as a furthest-away subordinate sub-term in the leaf node of the search tree, wherein a separation symbol possibly identifies an edge of the search tree situated between the associated nodes. The search tree of a block is thus structured on the basis of search terms.
  • The method may be performed in a computer-assisted manner. Unless specified otherwise in the following description, the terms “perform”, “calculate”, “computer-assisted”, “compute”, “establish”, “generate”, “configure”, “reconstruct”, and the like preferably relate to operations and/or processes and/or processing steps that change and/or generate data and/or convert the data into other data, wherein the data may be represented or be present in particular in the form of physical variables, for example in the form of electrical impulses. The expression “computer” should in particular be interpreted as broadly as possible in order in particular to cover all electronic devices having data processing properties. Computers may thus for example be personal computers, servers, programmable logic controllers (PLCs), hand-held computer systems, pocket PC devices, mobile radio devices and other communication devices able to process data in a computer-assisted manner, processors and other electronic data processing devices.
  • “Computer-assisted” as used in this disclosure may be understood to mean for example an implementation of the method in which in particular a processor executes at least one method step of the method.
  • A processor may include, for example, a machine or an electronic circuit. A processor may include a main processor (central processing unit, CPU), a microprocessor, or a microcontroller, for example an application-specific integrated circuit or a digital signal processor, possibly in combination with a storage unit for storing program commands, etc. A processor may also be for example an IC (integrated circuit), in particular an FPGA (field-programmable gate array) or an ASIC (application-specific integrated circuit), or a DSP (digital signal processor) or a graphics processor GPU (graphic processing unit). A processor may include a virtualized processor, a virtual machine, or a soft CPU. It may also be for example a programmable processor that is equipped with configuration steps for executing the methods described herein or configured by way of configuration steps such that the programmable processor implements the features of the methods, the components, the modules, the means, or other aspects and/or partial aspects of the teachings herein.
  • A “storage unit” may include for example a memory in the form of working memory (random access memory, RAM) or a hard drive. Memory may include for example a processor and/or a storage unit for storing program commands. By way of example, the processor is specifically configured so as to execute the program commands such that the processor thereby executes functions in order to implement or perform the methods herein or a step of the methods.
  • A blockchain may be used relatively efficiently by nodes, in particular control computers or devices in an industrial IoT (Internet of Things) environment. Real-time behavior is furthermore improved, since less irrelevant information has to be evaluated by these nodes in terms of content. Nevertheless, a common blockchain platform may be used for a multiplicity of different tasks, as a result of which such a blockchain platform is able to be operated efficiently. The blockchain platform may furthermore be executed on different hardware platforms.
  • Some embodiments include a device for providing a set of cryptographically protected and filtered transaction datasets from a set of integrity-checked and semantically sorted transaction datasets of a block of a blockchain that is formed in one or more of the preceding methods, having:
      • provision means for providing at least one such block of a blockchain and
      • coupling means for coupling the provision means to a filtering apparatus that determines the set of filtered transaction datasets from the set of checked and semantically sorted transaction datasets of the blockchain using a filtering criterion, and
      • output means for providing the determined set of filtered transaction datasets.
  • “Providing” in connection with the instant disclosure may be understood to mean for example creating, loading, and/or storing the transaction dataset on or from a data carrier or platform.
  • The filtering criterion allows simple filtering of the relevant transactions of a blockchain block. The filtering criterion may be organized such that a node is thus able to process not the entire search tree containing all of the transactions, but is rather able to determine, in a targeted manner, a subtree that contains the transactions relevant thereto.
  • The filtering criterion may be designed as a kind of “publish-subscribe” criterion. Publish-subscribe protocols, for example MQTT, XMPP, OPC UA PubSub, may be used. In this case, what are known as publisher nodes publish messages, and subscribers, for example devices of a group, receive messages. Search terms identify topics of messages. A publisher (publication node) specifies the topic (or search term) of a message, and subscribers subscribe to the messages about particular topics. The messages are conveyed for example through a message broker. The search terms are in this case generally hierarchically structured, for example using the abovementioned search tree embodiment.
  • Some embodiments include a filtering apparatus suitable for coupling to the provision means of the abovementioned device, characterized by determination means for determining a set of filtered transaction datasets from the set of integrity-checked and sorted transaction datasets of a blockchain using the filtering criterion.
  • In some embodiments, the filtering apparatus makes provision for the filtering criterion to be able to be defined using a further search term and/or at least part of the further search term that is identical to the search term in the provided block of the blockchain or is able to be derived therefrom or is derived therefrom. The further search term may be a topic of the type already explained above (publish-subscribe) that is assigned to a search term in the search tree or is possibly identical thereto. The assignment or derivation may then be performed by way of an assignment table (search term—topic).
  • In some embodiments, there is an access unit comprising a filtering apparatus of the abovementioned type, characterized in that the further search term is able to be defined by a device or a plurality of devices of a group and/or is able to be subscribed to such that the transaction datasets assigned to the search term are subscribed to thereby, and only the blocks of the blockchain that contain the defined and/or subscribed-to transaction datasets are forwarded to the device or the plurality of devices. The access unit is thus a kind of gateway in particular for the devices, e.g. for IoT devices (which are often not able to process blockchains). The further search terms or topics may be defined via a user interface (UI). The search terms may also be predefined as projection data for an industrial system. The device may then subscribe to particular further search terms. The transactions that match the further search term are filtered, and only these are executed for said device or made available to the device.
  • In some embodiments, there is a communication network arrangement comprising the following components:
      • at least one network node processing a blockchain and that in each case has a device of the abovementioned type,
      • one or more devices that are assigned to a group,
      • at least one filtering apparatus of the abovementioned type or at least one access unit according to the abovementioned type, and
      • comprising a network infrastructure by way of which said components are able to communicate with one another.
  • A publish-subscribe protocol for example of the type already explained above may be applied in the network infrastructure, in the case of which protocol the filtering apparatus is designed to allow the one or more devices of the group to subscribe to and/or define search terms.
  • In some embodiments, the network infrastructure may be such that said components are able to communicate with one another in a wired manner or wirelessly via an air interface. The air interface may be designed in accordance with the GSM, UMT, LTE, 5G, WLAN, Zigbee, Bluetooth or NFC, etc. standard.
  • In some embodiments, a computer program (product) containing program commands for a network node processing a blockchain, in particular of the type mentioned at the outset, that is configured by way of the program commands that are suitable for executing the methods as described above. In some embodiments, the computer program product contains program commands for configuring a creation device, for example a 3D printer, a computer system, and/or a manufacturing machine suitable for creating processors and/or devices, may additionally be provided. The uses, devices and computer program (products) may be designed in accordance with the developments/embodiments of the abovementioned method and the developments/embodiments thereof.
  • Some embodiments include a provision device for storing and/or providing the computer program product. The provision device is for example a data carrier that stores and/or provides the computer program product. In some embodiments, the provision device is for example a network service, a computer system, a server system, in particular a distributed computer system, a cloud-based computer system and/or virtual computer system that stores and/or provides the computer program product preferably in the form of a data stream.
  • This provision takes place for example as a download in the form of a program data block and/or command data block, preferably as a file, in particular as a download file, or as a data stream, in particular as a download data stream, of the complete computer program product. This provision may however also for example take place as a partial download that consists of several parts and is downloaded in particular via a peer-to-peer network or is provided as a data stream. Such a computer program product is read into a system for example using the provision device in the form of the data carrier and executes the program commands such that the method according to the invention is executed on a computer or the creation device is configured such that it creates the block and/or the blockchain.
  • In the figures, functionally similar elements are provided with the same reference signs unless specified otherwise. FIG. 1 shows the blocks, for example a first block B10 and a second block B11, of a blockchain. The blocks each comprise a plurality of transactions Tx0 to Tx3. The hash value PH, which is formed depending on the preceding block, may in particular be a cryptographic hash value that is able to be determined for example by way of SHA2-256, SHA2-384, SHA-3, BLAKE2.
  • FIG. 2 shows an exemplary embodiment of the teachings of the present disclosure of one or more transaction dataset(s) incorporated into a block of a blockchain. The blocks may in each case comprise a hash (function) value, which may serve as root hash value TxR of a hash tree TT, to form their transactions T.
  • The hash tree, also called search tree, contains both a hash value, for example H01, H23, regarding the next node containing the hash values H0 and H1 of the hash tree TT and at least one search term—as shown in FIG. 2—“eon” or “Telecom”. The node containing H0 contains the search term “M-city” and the node containing H1 contains the search term for example as a main term “M-state”.
  • Further nodes are depicted proceeding from the node containing H1, containing sub-terms such as for example locations “Vaterstetten”, “Poing” and “Aschheim”. These nodes also each contain a hash value that is not illustrated in FIG. 2. Possible transaction names—as illustrated in FIG. 2—“Load shedding”, “Reduce infeed”, which as it were represent the root of a following hash tree HT, in the example formed as a Merkle tree, are provided on the leaves of the hash tree TT. The further nodes of the Merkle tree are not illustrated in FIG. 2. The transactions Tx2, Tx1, and Tx0, Tx3 are shown on the leaves of the Merkle tree, these reaching the Merkle tree at the positions shown therein by being semantically sorted from an unsorted set M (see FIG. 1) of transactions. In other words, the hash tree HT (for example Merkle tree, Patricia tree or the like) of a block is sorted, that is to say the transactions of a block are sorted. As a result, all of the transactions that meet a common sorting criterion (search term) are located in one branch of the tree.
  • In some embodiments, the transactions of a “search term” are able to be checked efficiently. A node BCN (see FIG. 3) may load and check the subregion of the tree HT that contains the transactions of this search term. As a result, it is easy to distinguish between different types of transaction. A node that wishes to evaluate only particular types of transaction is able to process, in a targeted manner, that or those parts of the tree HT containing relevant transactions.
  • The structure of the tree HT may be predefined or it may be determined adaptively (per block or over longer periods of time). The structure of the tree HT (that is to say the sorting) may furthermore be published as a transaction in the blockchain. The information is thereby easily able to be evaluated and may possibly be adapted. It is thereby efficiently possible to evaluate the blockchain transactions even for IoT nodes, for example in the Internet of Things. The transactions regarding a “search term” are accordingly not distributed arbitrarily in the Merkle tree.
  • According to FIG. 3, a device, for example IoT, that is assigned to a group AN, for example to an energy grid, that has subscribed for example to a topic “eon.M-state.Poing.Reduceinfeed”, then only the transactions Tx0 and Tx1 are filtered from the semantically sorted Merkle tree and possibly executed for this device.
  • The topic or the search term in the example of FIG. 2 consists of the main term “eon” and further subordinate sub-terms “M-state” and “Poing” and finally with the transaction reference “Reduceinfeed”, with a full stop separation symbol between the terms. Such a separation symbol could identify an edge between the nodes “eon” and the nodes “M-state” in the tree TT. In the same way, all of the edges of the tree TT could be marked with separation symbols.
  • FIG. 3 shows, by way of example, a communication network arrangement comprising nodes BCN that are able to form a blockchain (distributed database) and that are able to communicate with one another via a network infrastructure N that is indicated by the arrows. The abovementioned device IoT is additionally provided. The group AN comprises for example further devices FD1, FD2, FD3 and an IoT controller IoTC that is connected to the device IoT. A gateway G is also provided in the communication arrangement. This may be implemented for example as a server, appliance or as a cloud-based service (for example a specific app for an industrial platform). The gateway G generates, from a message of a publish-subscribe protocol (for example XMPP, MQTT, AMQP, OPC UA PubSub) that is provided by a publisher and that is assigned to a topic, a blockchain transaction, the eway in the opposite direction, a transaction, which is dnet, and which is confirmed in a block that is validated, provide it as a PubSub message to subscribers (devices of a group) as a PubSub message that contains the search term of the blockchain transaction as topic. A device (not illustrated) that filters the transactions by way of an integrated or (remote) coupled filtering apparatus may preferably be implemented in the gateway or else in one of the nodes BCN. The filtering may be performed using the publish-subscribe approach described above. The topic (further search term) determines a filtering criterion using which the filtered transactions or transaction datasets are able to be provided and forwarded to devices, for example IoT, or other nodes BCN.
  • In some embodiments, there may be a 1:1 assignment of the blockchain search term to the PubSub topics (further search terms, see above), that is to say the terms are identical. Blockchain search terms may also be assigned to PubSub topics and vice versa via a table Tab that may be integrated into the gateway G. This has the advantage that a blockchain infrastructure is easily able to be used by IoT devices or Industry 4.0 devices, for example FD1, FD2, without the devices themselves having to support the blockchain technology. They are able to access blockchains via PubSub protocols that may be used in the IoT environment. A topic (further search term) may be defined and subscribed to by a device for example via a user interface and/or predefined by a device, for example FD3, as projection data (for example application field: Industry 4.0, system: substation, device x in the substation, region: state of Munich, operator: Eon, etc.). To this end, a transaction is assigned to a topic (for example by a (sorting) attribute). A topic may in this case be structured hierarchically (topic tree), for example topic1.topic2.topic3 (also see above). Namespaces may for example be used as a topic in order accordingly to be able to use the group communication for a particular topic. One example is a virtual power plant (VPP) belonging to Eon in the region of the state of Munich (M-state) that has a separate group for the communication of infeed reductions: VPP.eon.M-state-Poing.reduce_infeed (see FIG. 2).
  • The sorting criterion or the multiplicity of sorting attributes may be predefined explicitly, for example administratively, or determined implicitly depending on the transaction. A hash value of the smart contract or of part of the smart contract may be formed and used as sorting criterion. In the communication arrangement (see FIG. 3) a node BCN may also be formed as a blockchain oracle. By virtue of what are known as blockchain oracles, nodes that are deemed to be trusted are able to code information about the real world into a blockchain transaction and thus make information from the real world accessible to smart contracts in the blockchain (https://blog.ledger.co/hardware-oracles-bridging-the-real-world-to-the-blockchainca97c2fc3e6c#.lu511vbrd).
  • FIG. 4 shows a flowchart of an example method incorporating teachings of the present disclosure. Since a blockchain is a decentralized, distributed database, it is normally possible to communicate with one of the multiplicity of identical blockchain nodes, for example BCN in FIG. 3.
  • The example method in this case comprises:
  • S01: forming one or more (second) block(s) of a blockchain that has been chained or is chained to a first block thereof or a further blockchain. As already mentioned above, the first block may be a starting block and/or Genesis block (originating block).
  • S02: defining at least one search term in the second block or each second block or reading at least one previously defined search term that the second block contains. The search terms have already been explained above;
  • S03: selecting a transaction dataset from the set M (see for example FIG. 1) of unsorted transaction datasets, wherein the selected transaction dataset has been checked for integrity; and
  • S04: assigning the selected transaction dataset to the defined or read search term or to one of the defined or read search terms;
  • B1: repeating steps S02 to S04 until a predefinable number of transaction datasets to be selected is reached and/or the set of unsorted transaction datasets is empty;
  • S05: semantically sorting the selected and assigned transaction datasets on the basis of a predefinable sorting criterion, wherein the assigned search terms are put in an order corresponding to the sorting criterion, and
  • S06: forming the set of cryptographically protected and semantically sorted transaction datasets using said order.
  • B2: The method is repeated, starting with S01, up to a sufficient length of the blockchain or until a predefinable or predefined number of blocks are formed in the blockchain.
  • Although the teachings have been described and illustrated in more detail through the exemplary embodiments, the scope of the disclosure is not restricted by the disclosed examples and other variations may be derived therefrom by a person skilled in the art without departing from the scope of protection herein.
  • In some embodiments, the processes or method sequences described above may be implemented on the basis of instructions that are present in computer-readable storage media or in volatile computer memories (referred to collectively below as computer-readable memories). Computer-readable memories are for example volatile memories such as caches, buffers or RAMS, as well as non-volatile memories such as exchangeable data carriers, hard disks, etc.
  • The functions or steps described above may in this case be present in the form of at least one set of instructions in/on a computer-readable memory. The functions or steps are in this case not linked to a particular set of instructions or to a particular form of sets of instructions or to a particular storage medium or to a particular processor or to a particular execution scheme, and may be implemented by software, firmware, microcode, hardware, processors, integrated circuits, etc. operating on their own or in any desired combination. In this case, a wide variety of processing strategies may be used, for example series processing using a single processor or multiprocessing or multitasking or parallel processing, etc.
  • The instructions may be stored in local memories, but it is also possible to store the instructions on a remote system and to access them via a network.
  • The term “processor”, “central signal processing”, “control unit” or “data evaluation means” as used here comprises processing means in the broadest sense, that is to say for example servers, universal processors, graphics processors, digital signal processors, application-specific integrated circuits (ASICs), programmable logic circuits such as FPGAs, discrete analog or digital circuits and any desired combinations thereof, including all other processing means known to a person skilled in the art or developed in the future. Processors may in this case consist of one or more devices or apparatuses or units. If a processor consists of a plurality of devices, these may be designed or configured so as to process or execute instructions in parallel or sequentially.

Claims (11)

What is claimed is:
1. A method for forming a set of cryptographically protected and semantically sorted transaction datasets of a blockchain from a set of unsorted transaction datasets, the method comprising:
a) forming a second block of a blockchain chained to a first block of a blockchain;
b) defining a search term in the second block or reading a previously defined search term contained in the second block;
c) selecting a transaction dataset from a set of unsorted transaction datasets, wherein the selected transaction dataset has been checked for integrity;
d) assigning the selected transaction dataset to the search term;
e) repeating steps b) to d) until a predefined number of transaction datasets to be selected is reached and/or the set of unsorted transaction datasets is empty;
f) semantically sorting the selected and assigned transaction datasets on the basis of a predefined sorting criterion, wherein the assigned search terms are in an order corresponding to the sorting criterion; and
g) forming the set of cryptographically protected and semantically sorted transaction datasets using the order.
2. The method as claimed in claim 1, wherein, in the case of a plurality of defined or read search terms in the second block, the plurality is arranged in a search tree, wherein the search terms form nodes of the search tree.
3. The method as claimed in claim 1, wherein a search term is formed from a main term and a plurality of sub-terms.
4. The method as claimed in claim 3, wherein the search term is arranged hierarchically with the main term in a root node of the search tree as far as a furthest-away subordinate sub-term in the leaf node of the search tree and a separation symbol identifies an edge of the search tree situated between the associated nodes.
5. A device for providing a set of cryptographically protected and filtered transaction datasets from a set of integrity-checked and semantically sorted transaction datasets of a block, the device comprising:
provision means for:
forming a second block of a blockchain chained to a first block of a blockchain;
and
defining a search term in the second block or reading a previously defined search term contained in the second block;
coupling means for coupling the provision means to a filtering apparatus;
filtering means for selecting a transaction dataset from a set of unsorted transaction datasets, wherein the selected transaction dataset has been checked for integrity, assigning the selected transaction dataset to the search term, and semantically sorting the selected and assigned transaction datasets on the basis of a predefined sorting criterion, wherein the assigned search terms are in an order corresponding to the sorting criterion, and determining the set of filtered transaction datasets from the set of checked and semantically sorted transaction datasets of the blockchain using a filtering criterion; and
output means for providing the determined set of filtered transaction datasets.
6. A filtering apparatus suitable for coupling to the provision means of the device as claimed in claim 5, further comprising determination means for determining a set of filtered transaction datasets from the set of integrity-checked and sorted transaction datasets of a blockchain using the filtering criterion.
7. The filtering apparatus as claimed in claim 6, wherein the filtering criterion is defined using a further search term and/or at least part of the further search term identical to the search term in the provided block of the blockchain or is able to be derived therefrom or is derived therefrom.
8. An access unit comprising a filtering apparatus as claimed in claim 7, wherein the further search term is defined by a device or a plurality of devices of a group and/or is able to be subscribed to such that the transaction datasets assigned to the search term are subscribed to thereby, and only the blocks of the blockchain that contain the defined and/or subscribed-to transaction datasets are forwarded to the device or the plurality of devices.
9. A communication network arrangement comprising:
a network node processing a blockchain with device as claimed in claim 5,
one or more devices assigned to a group;
a filtering apparatus as claimed in claim 6; and
a network infrastructure by way of which said components are able to communicate with one another.
10. The communication arrangement as claimed in claim 9, wherein:
a publish-subscribe protocol is applied in the network infrastructure; and
the filtering apparatus allows the one or more devices of the group to subscribe to and/or define search terms.
11. (canceled)
US16/639,870 2017-08-18 2018-06-11 Apparatuses for Providing a Set of Cryptographically Protected, Filtered, and Sorted Transaction Data Records of a Link of a Blockchain Abandoned US20200366463A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP17186826.8 2017-08-18
EP17186826.8A EP3444997A1 (en) 2017-08-18 2017-08-18 Devices to provide a quantity of cryptographically protected and filtered as well as sorted transaction datasets of a link of a block chain
PCT/EP2018/065299 WO2019034299A1 (en) 2017-08-18 2018-06-11 Apparatuses for providing a set of cryptographically protected and filtered and also sorted transaction data records of a link of a blockchain

Publications (1)

Publication Number Publication Date
US20200366463A1 true US20200366463A1 (en) 2020-11-19

Family

ID=59686770

Family Applications (2)

Application Number Title Priority Date Filing Date
US16/639,870 Abandoned US20200366463A1 (en) 2017-08-18 2018-06-11 Apparatuses for Providing a Set of Cryptographically Protected, Filtered, and Sorted Transaction Data Records of a Link of a Blockchain
US16/639,842 Active US11184151B2 (en) 2017-08-18 2018-07-09 Devices for providing a set of cryptographically secured and filtered and sorted transaction data sets of a block of a blockchain

Family Applications After (1)

Application Number Title Priority Date Filing Date
US16/639,842 Active US11184151B2 (en) 2017-08-18 2018-07-09 Devices for providing a set of cryptographically secured and filtered and sorted transaction data sets of a block of a blockchain

Country Status (7)

Country Link
US (2) US20200366463A1 (en)
EP (2) EP3444997A1 (en)
JP (2) JP2020531976A (en)
CN (2) CN110999214A (en)
BR (1) BR112020003304A2 (en)
ES (1) ES2878135T3 (en)
WO (2) WO2019034299A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200092362A1 (en) * 2018-09-13 2020-03-19 International Business Machines Corporation A sparse peer with transient participation
CN112783983A (en) * 2021-02-07 2021-05-11 中国人民解放军国防科技大学 Self-adaptive consensus method based on major-minor block diagram chain structure block chain account book design
CN112837156A (en) * 2021-02-10 2021-05-25 中国人民银行数字货币研究所 Transaction method and device with fixed execution sequence
US20210374756A1 (en) * 2020-05-29 2021-12-02 Mastercard International Incorporated Methods and systems for generating rules for unseen fraud and credit risks using artificial intelligence
US11245756B2 (en) 2018-09-13 2022-02-08 International Business Machines Corporation Sparse peer with transient participation
US20220051191A1 (en) * 2018-09-18 2022-02-17 Siemens Energy Global GmbH & Co. KG Distributed database
US11882447B2 (en) 2018-08-09 2024-01-23 Siemens Aktiengesellschaft Computer-implemented method and network access server for connecting a network component to a network with an extended network access identifier

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10938578B2 (en) * 2018-10-18 2021-03-02 Keir Finlow-Bates System and method for maintaining an integrity of a blockchain using digital certificates
CN112492006B (en) * 2018-10-31 2023-12-05 创新先进技术有限公司 Node management method and device based on block chain
US11196567B2 (en) * 2018-11-26 2021-12-07 Amazon Technologies, Inc. Cryptographic verification of database transactions
US10942910B1 (en) 2018-11-26 2021-03-09 Amazon Technologies, Inc. Journal queries of a ledger-based database
KR101997673B1 (en) * 2018-12-06 2019-07-08 주식회사 푸시풀시스템 Digital electronic device based on dual block chain comprising virtual blockchain
US11868327B2 (en) * 2019-01-08 2024-01-09 Jiheng ZHANG Method and apparatus for creating and adding a block based on a directed acyclic graph and building a ledger
CN110109926B (en) * 2019-04-25 2021-03-16 杭州德旺信息技术有限公司 Ordering device and ordering method for Equihash algorithm data
US11283595B1 (en) * 2019-08-29 2022-03-22 Hiro Systems Pbc Systems and methods for securing cached data stored off-chain in a blockchain-based network
CN113438219B (en) 2020-07-08 2023-06-02 支付宝(杭州)信息技术有限公司 Playback transaction identification method and device based on blockchain all-in-one machine
CN111541789A (en) 2020-07-08 2020-08-14 支付宝(杭州)信息技术有限公司 Data synchronization method and device based on block chain all-in-one machine
CN111539829B (en) 2020-07-08 2020-12-29 支付宝(杭州)信息技术有限公司 To-be-filtered transaction identification method and device based on block chain all-in-one machine
CN111541784B (en) 2020-07-08 2021-07-20 支付宝(杭州)信息技术有限公司 Transaction processing method and device based on block chain all-in-one machine
CN112492002B (en) 2020-07-08 2023-01-20 支付宝(杭州)信息技术有限公司 Transaction forwarding method and device based on block chain all-in-one machine
CN112256271B (en) * 2020-10-19 2022-11-29 中国科学院信息工程研究所 Block chain intelligent contract safety detection system based on static analysis

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9251155B1 (en) * 2012-05-04 2016-02-02 Paraccel Llc Maintaining sort order of data in databases
US10726098B2 (en) * 2014-01-23 2020-07-28 Dror Samuel Brama Method, system and program product for transferring genetic and health data
JP6364132B2 (en) * 2015-03-31 2018-07-25 ナスダック, インコーポレイテッドNasdaq, Inc. Blockchain transaction recording system and method
EP3320457B1 (en) * 2015-07-10 2021-04-07 Whether Or Knot LLC System and method for electronic data distribution
US10346826B2 (en) * 2015-07-28 2019-07-09 Wesley John Boudville Blockchain and deep links for mobile apps
US20170140375A1 (en) 2015-11-15 2017-05-18 Michael Kunstel System and Method for Permissioned Distributed Block Chain
US10013573B2 (en) * 2015-12-16 2018-07-03 International Business Machines Corporation Personal ledger blockchain
EP3394818A4 (en) 2015-12-21 2019-08-14 Kochava Inc. Self regulating transaction system and methods therefor
CN105719185B (en) * 2016-01-22 2019-02-15 杭州复杂美科技有限公司 The data comparison and common recognition method of block chain
US9979718B2 (en) * 2016-05-11 2018-05-22 Bank Of America Corporation System for managing security and access to resource sub-components
US10204341B2 (en) * 2016-05-24 2019-02-12 Mastercard International Incorporated Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees
US10198325B2 (en) * 2016-05-24 2019-02-05 Mastercard International Incorporated Method and system for desynchronization recovery for permissioned blockchains using bloom filters
CN106100847B (en) * 2016-06-14 2021-10-26 惠众商务顾问(北京)有限公司 Method and device for verifying identity information of asymmetric encryption block chain
US20180165758A1 (en) * 2016-12-09 2018-06-14 Cognitive Scale, Inc. Providing Financial-Related, Blockchain-Associated Cognitive Insights Using Blockchains
CN106530088B (en) * 2016-12-19 2023-11-17 杜伯仁 Method for trading certificate products based on blockchain security nodes
US10375105B2 (en) * 2017-03-03 2019-08-06 International Business Machines Corporation Blockchain web browser interface
CN106878000B (en) * 2017-03-06 2020-02-21 中钞信用卡产业发展有限公司杭州区块链技术研究院 Alliance chain consensus method and system
CN106971302A (en) * 2017-04-17 2017-07-21 北京工商大学 A kind of threedimensional model based on block chain technology is really weighed and method of commerce
US10341105B2 (en) * 2017-06-07 2019-07-02 At&T Intellectual Property I, L.P. Blockchain-based social media history maps
US10664797B2 (en) * 2017-07-19 2020-05-26 Amazon Technologies, Inc. Distributed ledger certification
US10616324B1 (en) * 2017-07-20 2020-04-07 Architecture Technology Corporation Decentralized ledger system and method for enterprises
US11281644B2 (en) * 2017-07-28 2022-03-22 Hitachi, Ltd. Blockchain logging of data from multiple systems

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11882447B2 (en) 2018-08-09 2024-01-23 Siemens Aktiengesellschaft Computer-implemented method and network access server for connecting a network component to a network with an extended network access identifier
US20200092362A1 (en) * 2018-09-13 2020-03-19 International Business Machines Corporation A sparse peer with transient participation
US11245756B2 (en) 2018-09-13 2022-02-08 International Business Machines Corporation Sparse peer with transient participation
US20220051191A1 (en) * 2018-09-18 2022-02-17 Siemens Energy Global GmbH & Co. KG Distributed database
US20210374756A1 (en) * 2020-05-29 2021-12-02 Mastercard International Incorporated Methods and systems for generating rules for unseen fraud and credit risks using artificial intelligence
CN112783983A (en) * 2021-02-07 2021-05-11 中国人民解放军国防科技大学 Self-adaptive consensus method based on major-minor block diagram chain structure block chain account book design
CN112837156A (en) * 2021-02-10 2021-05-25 中国人民银行数字货币研究所 Transaction method and device with fixed execution sequence

Also Published As

Publication number Publication date
JP2020531976A (en) 2020-11-05
EP3444997A1 (en) 2019-02-20
US11184151B2 (en) 2021-11-23
CN110999214A (en) 2020-04-10
US20200387622A1 (en) 2020-12-10
ES2878135T3 (en) 2021-11-18
WO2019034329A1 (en) 2019-02-21
JP2020531975A (en) 2020-11-05
BR112020003304A2 (en) 2020-08-25
CN111201754B (en) 2023-08-29
CN111201754A (en) 2020-05-26
EP3652656A1 (en) 2020-05-20
WO2019034299A1 (en) 2019-02-21
JP7170712B2 (en) 2022-11-14
EP3652656B1 (en) 2021-06-09

Similar Documents

Publication Publication Date Title
US20200366463A1 (en) Apparatuses for Providing a Set of Cryptographically Protected, Filtered, and Sorted Transaction Data Records of a Link of a Blockchain
US20110295855A1 (en) Graph-Processing Techniques for a MapReduce Engine
CN107515878B (en) Data index management method and device
TW202016815A (en) Method, apparatus and system for executing block chain transaction in parallelized manner
CN108055343A (en) For the method for data synchronization and device of computer room
CN107578338B (en) Service publishing method, device and equipment
CN110704438B (en) Method and device for generating bloom filter in blockchain
KR20200062299A (en) Transaction selection device for selecting blockchain transactions
CN104994171A (en) Distributed storage method and system
CN109145053B (en) Data processing method and device, client and server
US10712731B2 (en) Control device, control method, and non-transitory computer-readable recording medium
CN111897623A (en) Cluster management method, device, equipment and storage medium
CN103595769A (en) Method and device for achieving file uploading through SDK
CN112882690B (en) Application development method and device
EP3138019B1 (en) Validating analytics results
CN113077260A (en) Data access method and device based on block chain and electronic equipment
EP2942711B1 (en) Dynamic generation of proxy connections
CN108021448B (en) Kernel space optimization method and device
CN105512168A (en) Cluster database composite data loading method and apparatus
CN109086362A (en) The management method of multimode project
CN114003210A (en) SDK-based multi-application program adaptation method, device, equipment and medium
CN110019008A (en) Data storage method and device
CN110297843B (en) Data query method and system for B/S system and terminal
CN108228708B (en) Big data ETL system and scheduling method thereof
US20190243913A1 (en) Event table management using type-dependent portions

Legal Events

Date Code Title Description
AS Assignment

Owner name: SIEMENS AKTIENGESELLSCHAFT, GERMANY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FALK, RAINER;REEL/FRAME:051845/0674

Effective date: 20200115

STPP Information on status: patent application and granting procedure in general

Free format text: APPLICATION DISPATCHED FROM PREEXAM, NOT YET DOCKETED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION