EP3804283A1 - Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten - Google Patents

Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten

Info

Publication number
EP3804283A1
EP3804283A1 EP19734298.3A EP19734298A EP3804283A1 EP 3804283 A1 EP3804283 A1 EP 3804283A1 EP 19734298 A EP19734298 A EP 19734298A EP 3804283 A1 EP3804283 A1 EP 3804283A1
Authority
EP
European Patent Office
Prior art keywords
data
distributed database
assigned
message
database system
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.)
Withdrawn
Application number
EP19734298.3A
Other languages
English (en)
French (fr)
Inventor
Thomas JETZFELLNER
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
Publication of EP3804283A1 publication Critical patent/EP3804283A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • 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

Definitions

  • the invention relates to methods, devices and a system for data exchange between a distributed database system and devices.
  • Devices such as field devices and manufacturing devices, are becoming increasingly networked and can be provided / operated by different operators, for example. Command sequences that can be executed by the devices are often transmitted to these devices.
  • the disadvantage here is that old devices often cannot easily communicate with the new IT infrastructure.
  • An object of the present invention is to find an alternative to known solutions from the prior art.
  • Distributed Ledgers is currently an intensively discussed technology that can be implemented in particular as a distributed database system or as a network application.
  • applications for decentralized payment systems e.g. Bitcoin
  • new applications are being developed in the financial industry.
  • transactions between companies can be realized without manipulators or clearing agents. This enables new business models without a trustworthy intermediary, it reduces transaction costs, and new digital services can be offered flexibly without having to set up a specially designed infrastructure and trust relationships have to.
  • a transaction record (or transaction for short) protected by a blockchain includes e.g. B.
  • Program code which can also be referred to as a so-called "smart contract”.
  • the invention relates to a receiving device comprising:
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to communicate with a distributed database system or a network application, for example the first communication interface is set up to send first messages or data (e.g. the first messages and / or further data such as e.g. to receive the data of a communication link) from the distributed database system or the network application;
  • first messages or data e.g. the first messages and / or further data such as e.g. to receive the data of a communication link
  • an identification module for example an identification module, wherein
  • the identification module is set up to use the data or the respective message content of the first messages or the data to calculate (or calculate) an assignment for which devices a corresponding first message is intended or for which devices the data are intended;
  • the conversion module is set up to convert the data or the message content of the corresponding first message or the data into a data format for the assigned device;
  • the second communication interface is set up to transmit the converted data and / or the data and / or the converted message content and / or the message content of the data or the corresponding first message (and / or the first message itself) to the device, that is assigned to the corresponding first message.
  • the invention relates to a receiving device comprising:
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to receive data from a network application
  • the conversion module is set up to convert the data into a data format for a device assigned to the data
  • the conversion module is set up for the device to determine whether and / or how this data is to be converted for the corresponding device (for example the assigned device);
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the converted data and / or the data to the device that is assigned to the data.
  • the invention relates to a receiving device comprising:
  • a first communication interface for example, a first communication interface, where for example the first communication
  • interface is set up to receive data from a network application
  • the conversion module is set up to determine a conversion test result for a device assigned to the data, whether and / or how the data is to be converted into a data format for the device assigned to the data, for example, the conversion module is set up to depend on the data convert the conversion test result into the data format for the device assigned to the data,
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the converted data and / or the data to the device that is assigned to the data.
  • the invention relates to a receiving device comprising:
  • a first communication interface (210), the first communication interface being set up to receive data from a network application;
  • the conversion module is set up to determine a conversion test result for the data
  • the conversion module is set up to determine whether and / or how when determining the data are to be converted into a data format for the device assigned to the data, the conversion module is set up to convert the data into the data format for the device assigned to the data depending on the conversion test result;
  • the second communication interface is set up to transmit the converted data to the device that is assigned to the data.
  • the conversion module checks in a test whether the device assigned to the data is able to process the data or parts of the data.
  • the result of the corresponding test can then z. B. stored in the conversion check result.
  • the data can be, for example, the first messages or the first message or the message content of the first message or data of a communication link.
  • the terms “perform”, “calculate”, “computer-aided”, “calculate”, “determine”, “generate”, “configure”, “reconstruct” and The like preferably on actions and / or processes and / or processing steps that change and / or generate data and / or convert the data into other data, the data being represented or being able to be present in particular as physical quantities, for example as electrical impulses
  • the expression “computer” should be interpreted as broadly as possible, in particular to cover all electronic devices with data processing properties.
  • Computers can thus, for example, personal computers, servers, programmable logic controllers (PLC), handheld computer systems, pocket PC devices, mobile radio devices and other communication devices that can process computer-supported data. NEN, processors and other electronic devices for data processing.
  • “computer-assisted” can be understood to mean, for example, an implementation of the method in which, in particular, a processor carries out at least one method step of the method.
  • “computer-assisted” is also to be understood as “computer-implemented”.
  • a processor can be understood in connection with the invention, for example, a machine or an electronic circuit device.
  • a processor can be, in particular, 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 memory unit for storing program commands, etc. act.
  • a processor can 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
  • a processor can also be understood to mean a virtualized processor, a virtual machine or a soft CPU. It can also be a programmable processor, for example, which is equipped with configuration steps for executing the aforementioned method according to the invention or is configured with configuration steps such that the programmable processor has the features according to the invention of the method, the component, the modules, or others Aspects and / or partial aspects of the invention realized.
  • volatile memory in the form of random access memory (RAM) or permanent memory such as a hard disk or a data carrier.
  • RAM random access memory
  • permanent memory such as a hard disk or a data carrier.
  • a “module” can be understood to mean, for example, a processor and / or a memory unit for storing program instructions.
  • the processor is specifically designed to execute the program instructions in such a way that the processor performs functions in order to carry out the inventive
  • a module can, for example, also be a node of the distributed database system, which, for example, implements the specific functions / features of a corresponding module.
  • the respective modules can, for example, also be separate or independent modules
  • the corresponding modules can include, for example, further elements.
  • interfaces eg database interfaces, communication interfaces - eg network interface, WLAN interface
  • evaluation unit e.g. B. a processor
  • storage unit e.g. B. a storage unit.
  • data can be exchanged using the interfaces (e.g.
  • data can, for example, be computer-aided and / or automatically compared, checked, processed, assigned or calculated.
  • data can be stored, called up or made available, for example, computer-aided and / or automatically.
  • a first date is assigned a second date using a memory address or a unique identifier (UID), in which, for. B. the first date is stored together with the memory address or the unique identifier of the second date in a data set.
  • UID unique identifier
  • Provision in particular with regard to data and / or information, can be understood in connection with the invention to mean, for example, a computer-assisted provision.
  • the provision is carried out, for example, via an interface (for example a database interface, a network interface, an interface to a storage unit)
  • This interface can be used, for example, to transmit and / or send and / or retrieve and / or receive corresponding data and / or information.
  • “provide” can also be understood to mean, for example, loading or storing, for example a transaction with corresponding data. This can be done, for example, on or from a memory module. “Providing” can also be used, for example, to transfer (or a sending or a transmission) of corresponding data from one node to another node of the block chain or the distributed database system (or its infrastructure) or the network application are understood.
  • a cryptographic checksum or cryptographic hash or Hash value can be understood, in particular by means of a cryptographic hash function via a data record and / or data and / or one or more of the transactions and / or a partial area of a data block (e.g. the block header of a block of a block chain or data block header of a Data blocks of the distributed database system (or the network application) or only a part of the transactions of a data block) are formed or calculated.
  • a checksum can in particular be a checksum or hash value (s) of a hash tree (e.g. Merkle Baum, Patricia-Baum). Furthermore, this can in particular also be understood to mean a digital signature or a cryptographic message authentication code. Using the checksums, for example, a cryptographic one can be created at different levels of the database system
  • Protection / manipulation protection for the transactions and the data (records) stored therein can be implemented. If, for example, a high level of security is required, the checksums are generated at the transaction level and checked. If less security is required, the checksums are generated and checked at the block level (e.g. over the entire data block or only over part of the data block and / or part of the transactions).
  • a “data block checksum” can be understood to mean a checksum that is calculated, for example, over part or all transactions of a data block.
  • a node can then, for example, check the integrity / authenticity of the corresponding part of a data block by means of the data block checksum.
  • the data block checksum can in particular also have been formed via transactions of a previous data block / predecessor data block of the data block.
  • the data block checksum can in particular also have a hash tree, for example a Merkle tree [1]. or a Patricia tree can be realized, the data block checksum in particular the root checksum of the Merkle tree or a Patricia tree or a binary hash tree.
  • transactions are secured by means of further checksums from the Merkle tree or Patricia tree (e.g. using the transaction checksums), the further checksums in particular being leaves in the Merkle tree or Patricia tree.
  • the data block checksum can thus secure the transactions, for example, by forming the root checksum from the further checksums.
  • the data block checksum can in particular be calculated for transactions of a specific data block of the data blocks.
  • such a data block checksum can be included in a subsequent data block of the specific data block in order to concatenate this subsequent data block, for example, with its previous data blocks, and in particular thus to make it possible to check the integrity of the distributed database system (or the network application).
  • the data block checksum can take over the function of the chaining checksum, for example, or be included in the chaining checksum.
  • the header of a data block (e.g. a new data block or the data block for which the data block checksum was formed) can comprise, for example, the data block checksum.
  • transaction checksum can be understood to mean a checksum which is formed in particular via a transaction of a data block.
  • a calculation of a data block checksum for a corresponding data block can be accelerated, since for this purpose transaction checksums already calculated, for example, equal to Leaves of a Merkle tree, for example, can be used.
  • a “chaining checksum” can be understood to mean a checksum which specifies, in particular, a respective data block of the distributed database system (or the network application) or the previous data block of the distributed database system (or the network application). referenced (often referred to in the specialist literature as "previous block hash") [1] .
  • a corresponding chaining checksum is formed in particular for the corresponding previous data block.
  • a chaining checksum for example, a transaction checksum or the data block checksum of a data block (i.e. an existing data block of the distributed database system or the network application) can be used to convert a new data block with an (existing) data block of the distributed database system (or the network Application).
  • a checksum is formed via a header of the previous data block or over the entire previous data block and to be used as a chaining checksum. This can also be calculated for several or all of the previous data blocks, for example. It is also feasible, for example, that the chaining checksum is formed via the header of a data block and the data block checksum.
  • a respective data block of the distributed database system preferably comprises a chaining checksum which was calculated for a previous data block, in particular even more preferably the directly preceding data block, of the respective data block or relates to this.
  • a corresponding chaining checksum to be formed only over part of the corresponding data block (for example a previous data block).
  • a data block can be realized which comprises an integrity-protected part and an unprotected part.
  • integrity-protected means in particular that a change in integrity-protected data can be determined by means of a checksum.
  • a network application can be used in the same way.
  • the data which are stored, for example, in a transaction of a data block, can in particular be provided in different ways.
  • user data such as measurement data or Da
  • a transaction of a data block can only include the checksum for this data.
  • the corresponding checksum can be implemented in different ways. This can e.g. B. be a corresponding data block checksum of a data block (with the corresponding data) of another database or the distributed database system or the network application, a transaction checksum of a data block with the corresponding data (of the distributed database system or another database) or a data checksum that was formed over the data.
  • the corresponding transaction can contain a reference or an indication of a storage location (e.g. an address of a file server and details of where the corresponding data can be found on the file server; or an address of another distributed database which contains the data includes) to include.
  • the corresponding data could then, for example, also be made available in a further transaction of a further data block of the distributed database system (or the network application) (e.g. if the corresponding data and the associated checksums are contained in different data blocks).
  • this data is made available via another communication channel (e.g. via another database and / or a cryptographically secured communication channel).
  • an additional data record (for example a reference or an indication of a storage location) can also be stored in the corresponding transactions, which in particular indicates a storage location where the data can be called up. This is particularly advantageous in that a data size of the block chain or the to keep the shared database system (or the network application) as low as possible.
  • security-protected can be understood to mean, for example, protection that is implemented in particular by a cryptographic method. For example, this can be done by using the distributed database system (or the network application) for the provision or transmission or sending entspre sponding data / transactions are realized.
  • security-protected in connection with the invention can also be understood to mean “cryptographically protected” and / or “manipulation-protected”, wherein “manipulation-protected” can also be referred to as “integrity-protected”.
  • Linking the / of data blocks of a distributed database system (or the network application) can be understood in connection with the invention, for example, that data blocks each comprise information (eg chaining checksum) that relates to another data block or refer to or reference several other data blocks of the distributed database system (or the network application) [1] [4] [5].
  • data blocks each comprise information (eg chaining checksum) that relates to another data block or refer to or reference several other data blocks of the distributed database system (or the network application) [1] [4] [5].
  • “Insert into the distributed database system (or the network application)” and the like can be understood in connection with the invention, for example, that in particular a transaction or the transactions or a data block with its transactions to one or more nodes of a distributed database system (or the network application), for example, if these transactions are successfully validated (e.g. by the Nodes), these transactions are linked in particular as a new data block with at least one existing data block of the distributed database system (or the network application) [1] [4] [5].
  • the corresponding transactions are stored, for example, in a new data block.
  • this validation and / or chaining can be carried out by a trustworthy node (for example a mining node, a block chain oracle or a block chain platform).
  • a block chain platform can be understood as a block chain as a service, as is particularly the case with
  • a trustworthy node and / or a node can each store a node checksum (e.g. a digital signature) in a data block (e.g. in the data block they have validated and generated, which is then linked) in order to in particular to enable the creator of the data block to be identified and / or to enable the node to be identified.
  • This node checksum indicates which node, for example, has linked the corresponding data block to at least one other data block of the distributed database system (or the network application).
  • transaction or “transactions” can be understood to mean, for example, a smart contract [4] [5], a data structure or a transaction data record, which in particular comprises one of the transactions or more transactions.
  • transaction or “transactions” can also be understood to mean, for example, the data of a transaction of a data block of a block chain.
  • a transaction can in particular comprise a program code which, for example, implements a smart contract.
  • a transaction can also be understood to mean a tax transaction and / or a confirmation transaction.
  • a transaction can be, for example, a data structure that stores data (e.g.
  • a “transaction” in connection with the invention can also be, for example, a message or a communication message or can be referred to as such.
  • a message corresponds to a transaction, the message comprising, for example, control commands for controlling the devices and / or also includes requirements (e.g. specified requirements) for executing the control commands.
  • Direct storage can mean, for example, that the corresponding data block (of the distributed database system or the network application) or the corresponding transaction of the distributed database system or the network application) comprises the respective data.
  • Indirect storage can be understood here, for example, to mean that the corresponding data block or the corresponding transaction comprises a checksum and optionally an additional data record (for example a reference or an indication of a storage location) for corresponding data and therefore does not include the corresponding data are stored directly in the data block (or the transaction) (i.e. only a checksum for this data instead).
  • these checksums can be validated, for example, as is explained, for example, under “inserting into the distributed database system (or into the network application”).
  • a “program code” (for example a smart contract) can be understood to mean, for example, a program command or a number of program commands that are stored in particular in one or more transactions.
  • the program code can be executed in particular and becomes, for example by the distributed database system (or by the network application).
  • the program code is preferably executed by the infrastructure of the distributed database system (or the network application) [4] [5].
  • a virtual machine is implemented through the infrastructure of the distributed database system (or the network application).
  • a “smart contract” can be understood to mean, for example, an executable program code [4] [5] (see in particular definition “program code”).
  • the smart contract is preferably stored in a transaction of a distributed database system (e.g. a block chain) or a network application, for example in a data block of the distributed database system (or the network application).
  • the smart contract can be executed in the same way as is explained in the definition of "program code", in particular in connection with the invention.
  • a “smart contract process” or a “smart contract” can in particular also execute a program code or a smart contract in a process through the distributed database system or its infrastructure (or through the network application and / or the corresponding infrastructure of the network application) can be understood.
  • “Proof-of-work proof” can be understood in connection with the invention to mean, for example, solving a computation-intensive task that is to be solved in particular depending on the data block content / content of a specific transaction [1] [4] [5 Such a computationally intensive task is also referred to as a cryptographic puzzle, for example.
  • a “network application” can include, for example, a decentrally distributed database, a distributed database system, a distributed database, a peer-to-peer application, a distributed memory management system, a block chain (English blockchain) , a distributed ledger, a distributed storage system, a distributed ledger technology (DLT) based system (DLTS), an audit-proof database system, a cloud, a cloud service, a block chain in a cloud or a peer-to-peer database
  • a network application (or also referred to as a network application) can be a distributed database system that is implemented, for example, by means of a block chain or a distributed ledger.
  • a block chain or a DLTS can also be used who, such as a block chain or a DLTS, which uses a Directed Acylic Graph (DAG), a k ryptographic puzzles, a hash graph or a combination of the implementation variants mentioned [6] [7].
  • DAG Directed Acylic Graph
  • k ryptographic puzzles e.g. a hash graph
  • hash graph a combination of the implementation variants mentioned [6] [7].
  • Different consensus algorithms can also be implemented, for example. This can be, for example, a consensus procedure using a cryptographic puzzle, Gossip about Gossip, Virtual Voting or a combination of the above-mentioned procedures (e.g. Gossip about Gossip combined with Virtual Voting) [6] [7].
  • a block chain this can be implemented in particular by means of a Bitcoin-based implementation or an Ethereum-based implementation
  • a “distributed database system” or a “network application” can also be understood to mean, for example, a distributed database system or a network application, of which at least some of its nodes and / or devices and / or infrastructure are provided by a cloud are realized.
  • the corresponding components are implemented as nodes / devices in the cloud (e.g. as a virtual node in a virtual machine). This can be done, for example, using VM goods, Amazon Web Services or Microsoft Azure. Due to the high flexibility of the Implementation variants explained, in particular also partial aspects of the implementation variants mentioned can be combined with one another, for example by B. a hash graph is used as a block chain, the block chain itself z. B. can also be blockless.
  • DAG Directed Acylic Graph
  • IOTA Directed Acylic Graph
  • Tangle transactions or blocks or nodes of the graph are linked to one another via directed edges.
  • Acyclic means in particular that there are no directed loops in the graph.
  • the distributed database system or the network application can be, for example, a public distributed database system or a public network application (for example a public block chain) or a closed (or private) distributed database system or a closed network Act application (e.g. a private block chain).
  • a public distributed database system or a public network application for example a public block chain
  • a closed (or private) distributed database system or a closed network Act application e.g. a private block chain
  • a distributed database system or the network application is, for example, a closed, distributed database system, new nodes and / or devices require, for example, a valid proof of authorization and / or valid authentication information and / or valid credentials and / or valid login information to do this distributed database system or to be able to join the network application or to be accepted by it.
  • a distributed database system or the network application can, for example, also be a distributed communication system for data exchange. This can be, for example, a network or a peer-to-peer network.
  • a / the distributed database system can, for example, also be a decentralized distributed database system and / or a decentralized distributed communication system.
  • a “network application” can also be, for example, a network application infrastructure or the network application comprises a corresponding network application infrastructure.
  • This infrastructure can, for example, include nodes and / or communication networks and / or data interfaces and / or other components
  • the network application can be, for example, a distributed network application (for example a distributed peer-to-peer application or a distributed database system) , which is executed on several nodes of the network application infrastructure, for example.
  • a distributed database system can include a decentrally distributed database, a blockchain, a distributed ledger, a distributed storage system, and a distributed ledger technology (DLT) based system (DLTS), an audit-proof database system, a cloud, a cloud service, a block chain in a cloud or a peer-to-peer database.
  • DLT distributed ledger technology
  • a block chain or a DLTS can also be used, for example such as a block chain or a DLTS, which is generated using a Directed Acylic Graph (DAG), a cryptographic puzzle, a hash graph or a combination tion from the implementation variants mentioned [6] [7].
  • DAG Directed Acylic Graph
  • cryptographic puzzle a cryptographic puzzle
  • hash graph a combination tion from the implementation variants mentioned [6] [7].
  • Different consensus algorithms can also be implemented, for example. This can be, for example, a consensus method using a cryptographic puzzle, Gossip about Gossip, Virtual Voting or a combination of the above-mentioned methods (eg Gossip about Gossip combined with Virtual Voting) [6] [7]. If, for example, a block chain is used, this can be implemented in particular by means of a Bitcoin-based implementation or an Ethereum-based implementation
  • a “distributed database system” can also be understood to mean, for example, a distributed database system, of which at least some of its nodes and / or devices and / or infrastructure are implemented by a cloud.
  • the corresponding components are in the form of nodes / devices Cloud (eg as a virtual node in a virtual machine) can be implemented using VM goods, Amazon Web Services or Microsoft Azure, for example. Due to the high flexibility of the implementation variants explained, partial aspects of the implementation variants mentioned can also be combined with one another can be combined, for example by using a hash graph as a block chain, whereby the block chain itself can also be blockless, for example.
  • DAG Directed Acylic Graph
  • transactions or blocks or nodes of the graph are connected to one another via directed edges.
  • edges preferably all edges
  • Acyclic means in particular that there are no loops when the graph is traversed.
  • the distributed database system can be, for example, a public distributed database system (e.g. a public block chain) or a closed (or private) distributed database system (e.g. a private block chain).
  • new nodes and / or devices require, for example, a valid proof of authorization and / or valid authentication information and / or valid credentials and / or valid credentials for the distributed database system To be able to join the database system or to be accepted by it.
  • a distributed database system can, for example, also be a distributed communication system for data exchange. This can be, for example, a network or a peer-2-peer network. Alternatively or additionally, the invention can also be implemented, for example, by means of a peer-2-peer application instead of the distributed database system.
  • data block which can also be referred to as a "link” or “block”, depending on the context and implementation, in connection with the invention, for example, a data block of a distributed database system (e.g. a block chain or a peer to peer database) or a network application, which is implemented in particular as a data structure and preferably comprises one or more of the transactions.
  • the database or the database system
  • a data block can be a block of the block chain or the DLTS.
  • a data block can include, for example, information on the size (data size in bytes) of the data block, a data block header, a transaction counter and one or more transactions [1].
  • the data block header can, for example, contain a version, a chaining checksum, a data block checksum, a time stamp, a proof-of-work proof and a nonce (one-time value, random value or counter that is used for the proof-of-work proof) include [1] [4] [5].
  • a data block can also be, for example, only a specific memory area or address area of the total data which are stored in the distributed database system. This allows, for example, blockless distributed database systems, such as. B. implement the IoT Chain (ITC), IOTA, and Byteball.
  • ITC IoT Chain
  • IOTA IOTA
  • Byteball Byteball
  • a data block can also comprise one or more transactions, for example, in the simplest case a data block corresponding to a transaction.
  • nonce can be understood to mean, for example, a cryptographic nonce (abbreviation for “used only once” [2] or “number used once” [3]).
  • a nonce denotes individual numbers or a combination of letters, which is preferably used once in the respective context (e.g. transaction, data transfer).
  • Previous data blocks of a (certain) data block of the distributed database system can be understood in connection with the invention, for example, the data block of the distributed database system that in particular directly precedes a (certain) data block.
  • previously data blocks of a (certain ) Data block of the distributed database system in particular all data blocks of the distributed database system are understood that precede the particular data block.
  • the chaining checksum or the transaction checksum can in particular only be formed via the data block (or its transactions) preceding the particular data block directly or via all data blocks (or its transactions) preceding the first data block.
  • nodes Under a “block chain node”, “node”, “node of a distributed database system or a network application” and the like, devices (eg field devices, mobile telephones), computers, smart phones, Clients or subscribers are understood who carry out operations (with) the distributed database system (for example a block chain) [1] [4] [5]
  • Such nodes can, for example, transactions of a network application or a distributed database system or their data blocks Execute or insert or chain new data blocks with new transactions into the distributed database system (or into the network application) using new data blocks, in particular this can be validated and / or linked by a trustworthy node (e.g. a mining Node) or only by trusted nodes, for example a trusted node Node that has additional security measures (e.g.
  • a trustworthy node can store a node checksum (e.g. a digital signature or a certificate) in the new data block. In particular, it can be used to provide evidence that indicates that the corresponding data block was inserted by a specific node or indicates its origin.
  • the devices e.g. the corresponding device
  • the devices are, for example, devices of a technical system and / or industrial system and / or an automation network and / or a production system, which in particular also a node of the distributed database system (or the Network application).
  • the devices can, for example, be field devices or devices in the Internet of Things, which in particular are also a node of the distributed database system (or the network application).
  • nodes can also include at least one processor in order to, for. B. to execute their computer-implemented functionality.
  • a “block chain oracle” and the like can be understood to mean, for example, nodes, devices or computers which, for example, have a security module which can be used, for example, by means of software protection mechanisms (for example cryptographic methods), mechanical protective devices (e.g. a lockable housing) or electrical protective devices (e.g. tamper protection or a protection system that includes the data of the safety module in the event of unauthorized use / treatment of the block chain oracle deletes)
  • Security module can include, for example, cryptographic keys that are necessary for the calculation of the checksums (e.g. transaction checksums or node checksums).
  • a “computer” or a “device” can be understood to mean, for example, a computer (system), a client, a smart phone, a device or a server are arranged outside the block chain and are not part of the infrastructure of the distributed database system (or the network application) or form a separate, separate infrastructure.
  • a device is, for example, a production device and / or an electromechanical device and / or an electronic device and / or a device of an automation network (e.g. for industrial technical systems, production systems, energy or resource distribution systems), these In particular, devices are not able to communicate directly with the distributed database system (direct) or the network application.
  • Such a device outside of the distributed database system (or the network application) cannot, for example, access the data of the distributed database system (or the network application) because the device is, for example, too old and does not have the necessary cryptographic and / or IT Security capabilities are still compatible with the data format of the distributed database system (or network application).
  • the invention it is particularly possible to couple a decentralized (block chain-based) infrastructure with old or legacy devices.
  • such old devices can be coupled to a new blockchain-based infrastructure.
  • This is advantageous, for example, for energy supply networks, the control of which is converted to a block chain infrastructure, but not every individual device in the existing energy supply network is replaced.
  • the invention allows, for example, that. B. by means of a block chain messages (z. B. in transactions) with control commands to the individual devices ge, the receiving device being communicatively arranged between the devices and the distributed database system (or the network application) and the assignment and / or Transmission of the respective messages to a (corresponding) device.
  • the corresponding appropriate message content or data is also converted into a data format that is compatible with a device.
  • data or a message content can be cryptographically checked and / or cryptographic protection can be removed (e.g. by decrypting the message content or data).
  • the receiving device retrieves a device status (e.g. error status, operating status) from the device assigned to a corresponding first message or the corresponding data (e.g. by means of the identification module or the second communication interface), wherein a Transfer to the assigned device takes place depending on the retrieved device status.
  • a device status e.g. error status, operating status
  • the receiving device is advantageous in that, in particular, before the transmission of the message content or the data to the device to check whether, for. B. the corresponding device is switched on or is ready for operation. In particular, this can prevent messages from being sent to devices that are in an error state. If, for example, a message is not sent to a correspondingly assigned device (e.g. because this is not possible depending on the device status), a corresponding message or transaction can be sent that includes this device status (e.g. the error status) , are transmitted to the distributed database system (or the network application) or are stored by the distributed database system (or the network application).
  • the device status includes a data record about the available device resources and / or current device properties.
  • the receiving device it is transmitted to the corresponding device if there are given requirements of the corresponding first message are fulfilled by the assigned device, for example the fulfillment of the previous requirements being checked on the basis of the device status.
  • the receiving device is advantageous in particular to check whether a corresponding message can even be processed by a device. If a corresponding message includes, for example, control commands to start up or control a generator or a reserve power plant, the requirements may, for example, stipulate that at least a certain amount of energy should be generated. Alternatively (that is, in another application scenario), the specified requirements can be used to specify a specific manufacturing precision or manufacturing time that is to be adhered to. These requirements can be checked by the receiving device, for example, by the corresponding available device resources and / or the device status and / or the current device properties (e.g. the device is installed in the correct location, for example none) To violate data protection regulations; the device or the data processed by the device is protected against unauthorized access (e.g.
  • the z. B. a corresponding data record are stored, for. B. from the identification module, the conversion module, the second communication interface (z. B. a network interface) or an evaluation module of the receiving device, which is arranged in front of the communication interface (z. B. a network interface) of a communication bus of the receiving device.
  • the specified requirements can also be, for example, preconfigured control commands or include those, the preconfigured control commands, for example, stipulate that they should already be executed by one of the devices or the device before the corresponding data and / or messages or message content (e.g. the converted night content or the converted data) are transmitted to the devices.
  • the control commands required can also relate to further devices, the further devices being, for example, devices of a further automation network.
  • corresponding messages or transactions in the distributed database system (or in the network application) can be read out or checked, which, for example, confirm execution of the required control commands.
  • corresponding messages or transactions can be identified, for example, net to confirm transactions and commands from the corresponding devices in play as oraus distressen according to an embodiment of the V control, z. B. by means of the transmitting device in the distributed th database system (or the network application) saved.
  • the receiving device comprises a cryptography module, the cryptography module comprising cryptographic data assigned to the devices.
  • the cryptography module uses the cryptographic data to check and / or decrypt at least part of the data or part of the message content of the corresponding first message for an assigned device, the appropriate ones being used for checking and / or decrypting cryptographic data can be loaded using the assigned device.
  • the receiving device is advantageous in that it checks in particular the messages that are to be transmitted to a corresponding device.
  • the message creator may have received, for example, a first cryptographic key, with which, for example, a checksum (e.g. a transaction checksum or a different of the checksums mentioned) about the data or the messages or the message content was formed.
  • the message content or the data or part of the data may have been encrypted using this first cryptographic key.
  • the first cryptographic key in the case of a symmetrical cryptographic method
  • a second cryptographic key that is assigned to the first cryptographic key (e.g. in the case of an asymmetrical cryptographic method in which, for example, the first key is a private one Is key and the second key is a public key)
  • the decryption or verification of the corresponding message content or the data is followed.
  • the cryptographic data (e.g. the cryptographic key) can, for example, have been generated specifically for a device using device-specific data (e.g. a UID of the device, a random number that was generated by the corresponding device, or was based on calculated from sensor data characteristic of the device - e.g. a calculated characteristic for a noise signal determined by a sensor of the device).
  • the cryptographic data is a combination of device-specific data and receiver-device-specific data (e.g. a UID of the receiver, a random number that was generated by the receiver, or was calculated on the basis of sensor data for the receiver - e.g. B. a calculated characteristic for a noise signal, which was determined by a sensor of the receiving device).
  • the device-specific data and / or receiver-device-specific data for the corresponding device can determine the cryptographic data in a reproducible manner, or for this data to provide cryptographic protection (for example encryption) with which the corresponding cryptographic data of a device are protected, saved (e.g. decrypted) and / or checked (e.g. a digital signature is checked).
  • the device-specific data can, for example, be called up when the device status is called up for a device.
  • the device-specific data and / or receiver-device-specific data are preferably data which are difficult to forge, e.g. B.
  • the device-specific data can also be determined or exchanged by means of a challenge response method, for example by configuring the method on the device side and on the receiving device side with corresponding initial values (for example by storing the device in a protected memory or receiving device) Corresponding initial values are preconfigured or these initial values are calculated and / or provided by the protected memory) and corresponding device-specific data (e.g. a cryptographic key or part of a cryptographic key) can be called up by the receiving device.
  • the conversion module is set up to use the device to check which data (for example which data parts and / or which part of the data and / or all data) of the data can be processed by the (assigned) device.
  • the result of this check is stored, for example, in the conversion test result, for example that
  • the conversion test result indicates which parts of the data or whether data as such are to be converted for the assigned device.
  • the conversion check result includes e.g. B. device-specific conversion instructions for the data, for example to convert the data specifically for the assigned device, so that the assigned Device z. B. can process the corresponding data (e.g. also the parts of the data to be converted).
  • the device properties and / or the current device properties and / or device information of the assigned device can be taken into account for the test.
  • the device information can, for example, also include the corresponding device properties (e.g. current device properties).
  • the data can be in a text format, XML format or JSON format, but the assigned device can (only) process a certain binary data format according to its device properties.
  • the conversion test result includes, for example, information that the data must be converted for processing by the device and / or can additionally include, for example, instructions on how to convert the data.
  • data types that are incompatible with the assigned device can also be used in the data. These can be double data types, big integer data types or date formats, for example, that the assigned device cannot process. For this too, z. B. a corresponding conversion can be made, as has already been shown for other examples.
  • Incompatible means, for example, that corresponding data (e.g. the data format or the data form of the data) cannot be processed or is not supported (e.g. by the network application or the distributed database system).
  • Compatible means, for example, that corresponding data (e.g. the data format or the data form of the data) can be processed or supported (e.g. by the network application or the distributed database system). If, for example, it is determined during the check that parts of the data (for example part of a message content which is stored in the data) cannot be processed by the assigned device (for example the corresponding data format for the corresponding parts of the data is incompatible) and other parts of the data can be processed by the device, for example the conversion module preferably only converts the data that cannot be processed by the device (or are incompatible).
  • converted parts of the data and the parts of the data that the assigned device was able to execute are then merged again into (converted) data (or a data record) which, for. B. can be processed as a whole by the assigned device.
  • converted data or data record
  • the assigned device can, for example, only process dates up to a certain point in time (e.g. December 31, 1999).
  • z. B. current dates (1.1.2018) can be converted into a processable date (e.g. 1.1.1988).
  • the incompatible data parts e.g. dates that lie after December 31, 1999
  • a conversion rule for the device-specific conversion instructions e.g. current date - 30 years
  • advised e.g. 1.1.1988
  • corresponding data or parts of the data can be assigned standard values (e.g. an empty string, a date in a valid format that is e.g. not the current date). B. at least other parts of the data can be transmitted.
  • the receiving device comprises an identification module.
  • the identification module is in particular set up to use the data to calculate an assignment (or the assignment) for which devices the data is intended, for example.
  • the identification module is in particular set up, for example, to calculate an assignment or the assignment based on the data, for example in order to determine the assigned device.
  • the identification module uses the data to calculate (or determine) which device is to process the data. Accordingly, such a device is then, for example, by means of the assignment, for.
  • assignment data record in the form of an assignment data record, assigned to the data.
  • the assignment or the assignment data record can include, for example, device information or device properties of the assigned device.
  • This assignment or the assignment data record can then be used, for example, by the conversion module, for example to B. to check which data (e.g. which part of the data and / or all data) of the data can be processed by the assigned device.
  • these can additionally each include, for example, a configuration interface and / or a fan and / or a monitoring module.
  • the configuration interface for example, updates or firmware versions can be imported.
  • the fan z. B. the receiving device can be cooled ge.
  • the monitoring module the state and / or the operating behavior of the corresponding receiving device can be monitored and z. B. saved in a file (e.g. a logging file).
  • the invention relates to a transmission device, having, for example, a first communication interface, wherein
  • the first communication interface is set up to communicate with devices
  • the communication interface is set up to receive first messages or data from the devices
  • an identification module for example an identification module, wherein
  • the identification module is set up on the basis of the data or the respective message content of the first messages, an assignment is calculated which device sent a corresponding first message;
  • the conversion module is set up to convert the data or the message content of the corresponding first message into a data format for the distributed database system or the network application;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to communicate with a distributed database system or a network application, for example the communication interface is set up for the converted data and / or the data and / or the converted message content and / or the message content of the corresponding first message (and / or the first message itself) to the distributed database system or to the network
  • the invention relates to a transmitting device comprising
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to communicate with devices
  • the communication interface is set up to receive first messages or data from the devices
  • an identification module for example an identification module, wherein
  • the identification module is set up on the basis of the data or the respective message content of the first messages, an assignment is calculated which device sent the data or a corresponding first message;
  • the conversion module is set up to convert the data or the message content of the corresponding first message into a data format for the distributed database system or for a network application,
  • the conversion module is set up to convert the data specifically for the distributed database system or for the network application using the assigned device,
  • the conversion module is set up to check which data formats can be processed by the distributed database system or by the network application or by further distributed database systems or other network applications, For example, the conversion module is set up to convert the data into a data format compatible with the distributed database system or the network application;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to communicate with a distributed database system or the network application
  • the communication interface is set up to transmit the converted data or the converted message content to the distributed database system or the network application.
  • the invention relates to a transmitting device comprising
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to communicate with devices
  • the communication interface is set up to receive first messages or data from the devices
  • the identification module is set up on the basis of the data or the respective message content of the first messages, an assignment is calculated which device sent the data or a corresponding first message;
  • a conversion module for example the conversion module being set up specifically for the data to determine associated device data format requirements, e.g. B. are predefined by the assigned device Ge,
  • the conversion module is set up to determine a test result about which data formats distributed database systems or network applications can process. Convert application of the network applications or a distributed database system of the distributed database systems;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the converted data or the converted message content to the distributed database system or the network application.
  • the conversion module can be set up to convert the data or the message content of the corresponding first message into a data format for the distributed database system or for a network application.
  • B. is predetermined by the assigned device.
  • the conversion module can be set up to select the (corresponding) distributed database system from the distributed database systems or the (corresponding) network application from the network applications on the basis of the test result and / or the data format requirements.
  • the second communication interface can be set up to convert the converted data and / or to transmit the data to the selected (corresponding) distributed database system or the selected (corresponding) network application.
  • the network application is the selected network application or the distributed database system is the selected distributed database system.
  • the data format requirements can be predetermined, for example, by the assignment and / or device properties (of the assigned device) that are stored in the assignment (or an assignment data record).
  • multiple distributed database systems or multiple network applications meet the data format requirements - that is, they are each compatible with the data format requirements - B. for the respective compatible distributed database systems or the each compatible network applications are converted and / or respectively transferred to them.
  • Compatible means, for example, that the respective distributed database system or the respective network application supports and / or can process at least one data format of the data format requirements.
  • the data format specifies, for example, a format for data that can be processed by the network application or the distributed database system.
  • the network application or the distributed database system can also be used for data conversion (or for converting the data) and / or data transmission (for the converted data or data).
  • the selection criterion can be, for example, reliability, cryptographic requirements (e.g. key lengths used, cryptographic protocols) or requirements for the corresponding infrastructure (e.g. at least one pre-defined give a given number of nodes or the network application or the distributed database system are e.g. B. realized as a cloud service), which are to be supported by the network application or the distributed database system.
  • a distributed database system or a network application is selected that best fulfills the selection criterion.
  • the second communication interface can be set up with the distributed database systems (e.g. the distributed database system or the further distributed database systems or the selected distributed database system) or the network applications (for example the network application or the further network applications) or the selected network application) to communicate z. B. to retrieve the supported data formats of the network applications or the distributed database systems and / or to transmit the converted data.
  • the distributed database systems e.g. the distributed database system or the further distributed database systems or the selected distributed database system
  • the network applications for example the network application or the further network applications or the selected network application
  • the data can be, for example, the first messages or the first message or the message content of the first message or data of a communication link.
  • a decentralized infrastructure with old or legacy devices.
  • such old devices can be coupled to a new block chain-based infrastructure.
  • This is advantageous, for example, for energy supply networks, the control of which is converted to a block chain infrastructure, but not every individual device in the existing energy supply network is replaced.
  • the invention allows, for example, that.
  • B. a device messages (e.g. with control commands or status messages for processing control commands) to the distributed data sends banking system or the network application, the transmitting device being arranged communicatively between the devices and the distributed database system (or the network application) and the assignment and / or transmission of the respective messages to the distributed database system (or to the network application) realized.
  • the corresponding message contents or data are also converted into a data format that is compatible with the distributed database system (or the network application).
  • the devices do not have to be adapted to the new infrastructure.
  • device properties of the assigned device dictate that the data can be stored in one or more data formats in the distributed database system or the network application.
  • the data format requirements can stipulate that the data of the assigned device should be saved in an XML format or a JSON format, but not in a binary format.
  • the distributed database system supports an XML format and the network application only a proprietary binary format.
  • the second communication interface and / or the conversion module first check which data formats are supported by the distributed database system or the network application (supported means, for example, which data formats are supported by the distributed database system or the network). Application can be processed), also meet the data format requirements of the data format requirements of the assigned device.
  • the second communication interface then transmits, for example, on the basis of the test result determined during this test, to which distributed database system (there may also be several distributed database systems) or to which network application the converted data are transmitted.
  • This test result can alternatively be obtained in the same way by the conversion module or by the identification module. be averaged and z. B. the second communication interface can be provided.
  • the second communication interface can be set up to transmit the converted data or the converted message content, depending on the test result, to the distributed database system or a further distributed database system or the network application or a further network application.
  • the transmission device comprises a cryptography module, the cryptography module comprising cryptographic data assigned to the devices.
  • the cryptography module loads corresponding cryptographic data on the basis of the assigned device, with at least part of the data or part of the message content of the corresponding first message being device-specific for the assigned device using the corresponding cryptographic data (which are preferably device-specific) Devices are cryptographically protected and, for example, the cryptographic protection takes place before sending the message content or data (or the converted variants of the data, messages and message content mentioned here).
  • the sending device is advantageous in that, in particular, the messages that are sent to (and / or stored by) the distributed database system (or to the network application) are cryptographically protected. This can be done, for example, in that the corresponding data or the corresponding message content is protected and / or encrypted using a (cryptographic) checksum (e.g. a transaction checksum).
  • the sending device can comprise, for example, a first cryptographic key (this is, for example, specific for the device), with which, for example, a checksum about the data or the news or the news content is formed.
  • the message content can also be encrypted, for example, or the data can also be encrypted using this first cryptographic key.
  • a recipient of the message can, for example, use the first cryptographic key (in the case of a symmetrical cryptographic method) or a second cryptographic key that is assigned to the first cryptographic key (e.g. in the case of an asymmetric cryptographic method in the example of the the first key is a private key and the second key is a public key), decrypt or check the corresponding message content or the corresponding data.
  • the corresponding can be found here
  • Key material may have been transmitted to the recipient, for example, via a secure channel.
  • the cryptographic data (e.g. the cryptographic key) can be generated, for example, on the basis of device-specific data (e.g. a UID of the device, a random number that was generated by the corresponding device, or on the basis of characteristics that are characteristic of the device Sensor data was calculated - e.g. a calculated characteristic for a noise signal that was determined by a sensor of the device).
  • the cryptographic data is a combination of device-specific data and transmission device-specific data (e.g. a UID of the transmission device, a random number that was generated by the transmission device, or was calculated on the basis of sensor data for the transmission device - e.g. B.
  • the cryptographic data can be reproducibly determined for the corresponding device by means of the device-specific data and / or transmission device-specific data.
  • cryptographic protection e.g. encryption
  • the device-specific data and / or data specific to the transmission device with which the corresponding cryptographic data of a device is protected, stored (e.g. decrypted) and / or checked (e.g. a digital signature is checked or a (cryptographic) checksum for the cryptographic data is checked) if z.
  • a separate cryptographic key is derived or calculated for this purpose from the device-specific data and / or transmit device-specific data.
  • the device-specific data can, for example, be stored in the message of the corresponding device.
  • the device-specific data and / or data specific to the transmission device are preferably data which are difficult to forge, e.g. B. a characteristic of a noise signal (z. B. detected by egg nem sensor or a tamper protection module) that is manipulated when the device is changed such that the characteristic changes such that the cryptographic data become invalid or not on this more accessible.
  • the device-specific data can also be determined or exchanged by means of a challenge-response method, for example by configuring the method on the device side and on the transmitting device side with corresponding initial values (e.g. by correspondingly in a protected memory of the device or the transmitting device Initial values are preconfigured or these initial values are calculated by the protected memory
  • corresponding device-specific data for example a cryptographic key or part of a cryptographic key
  • the network application or the distributed database system is a block chain, wherein, for example, the messages which are sent and / or received by the distributed database system (or the network application) are transactions.
  • the transmitting device and / or the receiving device at least some of the devices are devices of an automation network.
  • these can additionally each comprise, for example, a configuration interface and / or a fan and / or a monitoring module.
  • the configuration interface for example, updates or firmware versions can be imported.
  • the fan z. B. the transmission device can be cooled ge.
  • the monitoring module the state and / or the operating behavior of the corresponding Sendevor device can be monitored and z. B. saved in a file (e.g. a logging file).
  • the invention relates to a system comprising: for example a receiving device according to the invention or a receiving device according to one of the embodiments mentioned;
  • a transmission device for example, a transmission device according to the invention or a transmission device according to one of the above-mentioned embodiments.
  • the invention relates to a method for the computer-aided reception of messages or data with the following method steps:
  • a method step for calculating an assignment for the first messages the calculation determining which devices a corresponding first message or the data is intended for; for example a method step for converting the data or the message content of the corresponding first message into a data format for the assigned device;
  • the method comprises further method steps in order to implement the functional features or further features of the receiving device or its embodiments.
  • the invention relates to a method for computer-aided reception of data with the following method steps:
  • the data is converted into the data format for the device assigned to the data, depending on the conversion check result,
  • the method comprises further method steps to perform the functional Features or to realize further features of the receiving device or its embodiments.
  • the invention relates to a method for computer-aided reception of data with the following method steps:
  • the data is converted into the data format for the device assigned to the data, depending on the conversion check result,
  • the method comprises further method steps in order to implement the functional features or further features of the receiving device or its embodiments.
  • the invention relates to a method for computer-aided transmission of messages with the following method steps:
  • a method step for receiving data or first (further) messages from devices using a communication interface For example, a method step for calculating an assignment based on the data or the respective message content of the first (further) subsequent direct, calculating which device sent a corresponding first further message or data;
  • a method step for transferring the converted message content or the converted data to the distributed database system or the network application for example, a method step for transferring the converted message content or the converted data to the distributed database system or the network application.
  • the method comprises further method steps in order to implement the functional features or further features of the transmitting device or its embodiments.
  • the invention relates to a method for computer-aided transmission of data or messages with the following method steps:
  • the data specifically for the distributed database system or for the network application be converted based on the assigned device
  • the data can be converted into a data format compatible with the distributed database system or the network application;
  • the method comprises further method steps in order to implement the functional features or further features of the transmitting device or its embodiments.
  • the invention relates to a method for computer-aided sending of messages or data with the following method steps:
  • a method step for determining data format requirements that are determined specifically for the device assigned to the data. B. be specified by the assigned device; For example, a method step for determining a test result as to which data formats distributed database systems or network applications can process;
  • the method comprises further method steps in order to implement the functional features or further features of the transmitting device or its embodiments.
  • a variant of the computer program product with program commands for configuring a creation device for example a 3D printer, a computer system or a production machine suitable for creating processors and / or devices, is claimed, the creation device being configured with the program commands in such a way that the said one transmitting device and / or receiving device according to the invention is created.
  • the provision device is, for example, a data carrier that stores and / or provides the computer program product.
  • 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 a virtual computer system, which preferably stores and / or provides the computer program product in the form of a data stream.
  • This provision is made, 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 can, for example, also take the form of a partial download, which consists of several parts and in particular is downloaded via a peer-to-peer network or provided as a data stream.
  • Such a computer program product is, for example, read into a system using the provision device in the form of the data carrier and executes the program commands, so that the method according to the invention is carried out on a computer or the creation device is configured such that it transmits the inventive transmission device and / or created the receiving device.
  • Figure 1 shows a first embodiment of the invention.
  • Fig. 2 shows a further exemplary embodiment of the invention
  • 3 shows a further exemplary embodiment of the invention
  • Fig. 5 shows another embodiment of the invention.
  • the following exemplary embodiments have at least one processor and / or a memory unit in order to implement or execute the method.
  • a combination of hardware (components) and software (components) according to the invention can occur in particular if some of the effects according to the invention are preferably carried out exclusively by special hardware (e.g. a processor in the form of an ASIC or FPGA) and / or another part by (processor and / or memory-based) software is effected.
  • special hardware e.g. a processor in the form of an ASIC or FPGA
  • processor and / or memory-based software is effected.
  • Fig. 1 shows a first embodiment of the inven tion.
  • Fig. 1 shows a system SYS which includes a Sendevor direction S and a receiving device E. 1 additionally shows an automation network AN with a first device D1, a second device D2 and a third device D3.
  • the devices (DI, D2, D3) of the automation network (which can also be referred to as an automation network) are communicatively connected to one another via a second network NW2 (for example a communication network such as the Internet or an Ethernet network).
  • NW2 for example a communication network such as the Internet or an Ethernet network
  • FIG. 1 shows blocks B, for example a first block B1, a second block B2 and a third block B3, of a block chain BC, a section of the block chain BC in particular being shown here by way of example.
  • Blocks B each comprise several transactions T. Transactions T can include control transactions and / or confirmation transactions.
  • the first block B1 comprises, for example, a first transaction Tla, a second transaction Tlb, a third transaction Tic and a fourth transaction Tld.
  • the second block B2 comprises, for example, a fifth transaction T2a, a sixth transaction T2b, a seventh transaction T2c and an eighth transaction T2d.
  • the third block B3 comprises, for example, a ninth transaction T3a, a tenth transaction T3b, an eleventh transaction T3c and a twelfth transaction T3d.
  • the blocks B each additionally comprise one of the chaining checksums CRC, which is formed as a function of the direct predecessor block.
  • the first block B1 comprises a first chaining checksum CRC1 from its predecessor block
  • the second block B2 a second chaining checksum CRC2 from the first block B1
  • the third block B3 a third chaining checksum CRC3 from the second block B2.
  • the respective chaining checksum CRC1, CRC2, CRC3 is preferably formed via the block header of the corresponding predecessor block.
  • the chaining checksums CRC can preferably be done using a cryptographic hash function such as SHA-256, KECCAK-256 or SHA-3 can be formed.
  • the chaining checksum can also be calculated using the data block checksum or the header includes the data block checksum (the data block checksum is explained below).
  • each of the blocks can include a data block checksum. This can be implemented, for example, using a hash tree.
  • a transaction checksum (e.g. also a hash value) is calculated for each transaction of a data (block).
  • a transaction checksum can be generated by the transaction creator preferably created when the transaction was created, can be used for this purpose.
  • a hash tree e.g. B. a Merkle Tree or Patricia Tree, whose root hash value / root checksum is preferably stored as a corresponding data block checksum in the respective blocks.
  • the data block checksum is used as the chaining checksum.
  • a block can furthermore have a time stamp, a digital signature, a proof of work proof, as was explained in the embodiments of the invention.
  • the block chain BC itself is realized by a block chain infrastructure with several block chain nodes BCN.
  • the nodes can be, for example, block chain oracles or trustworthy nodes or a system SYS.
  • the nodes are communicatively connected to one another via a first network NW1 (for example a communication network such as the Internet or an Ethernet network).
  • NW1 for example a communication network such as the Internet or an Ethernet network.
  • the automation network AN is connected to the distributed database system or a network application by means of the system SYS. B.
  • the network application z. B. includes or implements the distributed database system (e.g. a block chain).
  • the system SYS comprises, in addition to the transmitting device S and the receiving device E, a first communication interface Nil, which is connected to the first network NW1 and thus realizes a communication connection with the distributed database system (or the network application).
  • the SYS system also includes a second communication interface NI2, which is connected to the second network NW2 is connected and thus realizes a communication link with the automation network AN.
  • the receiving device E is communicatively connected via a first bus BEI to the first communication interface Nil and communicatively connected to the second communication interface NI2 via a second bus BE2.
  • the transmitting device S is communicatively connected via a third bus BS1 to the second communication interface NI2 and communicatively connected to the first communication interface Nil via a fourth bus BS2.
  • the system SYS or the sending device S and / or the receiving device E preferably prevents direct communication between the automation network AN and the distributed database system (eg implemented as a blockchain BC) or the network application.
  • the automation network AN with the devices (D1, D2, D3) can be an old system, the operation of which can be disturbed, for example, if the messages of the distributed database system (or the network application ) are transferred directly to the automation network. Problems can occur with regard to bandwidth, for example, so that communication between the devices (D1-D3) z. B. because of a high network load (which are generated by the messages from the distributed database system or the network application) of the two-th network NW2 is restricted or disrupted.
  • the operation of the devices can be disturbed, for example, because the devices receive messages that are in a data format that cannot be processed or processed.
  • the system SYS can also include the sending device S or the receiving device E. If the system SYS comprises the sending device S (ie without the receiving device E, in which case the sending device S corresponds to the system SYS), such a system is advantageous in that, for example, (only) the messages can be sent from the devices. This can be the case if the devices e.g. B. Send status information or send control commands, but should not have to process any information from the distributed database system (or the network application).
  • the system SYS for example, include a receiving device E (without the sending device S, the receiving device E corresponds to the system SYS), this can be advantageous if the devices (D1-D3) are only supposed to receive data, for example, and process them without to send / send messages back to the distributed database system (or to the network application).
  • information about the status of the processing of the messages by the devices could be transmitted via another communication channel (for example by means of sensors which communicate with the distributed database system or the network via a third communication network or via the first communication network werk application are connected).
  • the receiving device E comprises a first communication interface 210 (e.g. a network interface to one
  • Ethernet network an identification module 220, a conversion module 230 and a second communication interface 240 (e.g. a network interface to an Ethernet network), which are communicatively connected to one another via a bus 201.
  • second communication interface 240 e.g. a network interface to an Ethernet network
  • the receiving device E is communicatively connected via a first bus BEI to the first communication interface Nil and communicatively connected to the second communication interface NI2 via a second bus BE2.
  • the communication interfaces of the receiving device or the transmitting device can, for example, also be referred to as a communication module or network interface.
  • the first communication interface 210 is set up to communicate with a distributed database system or a network application and is connected to the first bus BEI.
  • the first communication interface 210 is thus communicatively connected to the first communication interface Nil of the system SYS via the first bus BEI.
  • the first communication interface is set up to receive first messages (for example the first transaction Tla and / or further transactions of the first block B1) or data from the distributed database system (or the network application).
  • the first messages or data are stored, for example, in a data format (for example an XML data format) of the distributed database system (or the network application).
  • the identification module is set up to use the data or the respective message content of the data or the respective message content of the first messages to calculate an assignment for which devices a corresponding first message TE (e.g. the first message is a message of the first one) Messages) or the (corresponding) data is or are determined.
  • the (corresponding) data or a corresponding message content can be a digital signature, a digital certificate, a device address (e.g. a network address), a specific technical task, a unique identifier (e.g. a UID) or a combination thereof, from which the device or devices can be determined.
  • the data or the message or the message content can include an indication that the devices are intended to perform a specific technical task.
  • the identification module 220 then identifies which devices are suitable for performing this task. For example, the The task must be that a reserve power plant should provide a specified output (eg 500 MW) within a specified time (e.g. 4 hours) for a specified period (e.g. 24 hours). The identification module 220 then determines the devices that are necessary for the implementation of such a task.
  • the first device D1 can be a gas turbine with a power of 200 MW
  • the second device can be a gas turbine with a power of 200 MW
  • the third device can be a gas turbine with a power of 200 MW. If the automation network or the devices are able to perform the task, a corresponding confirmation message is sent to the distributed database system (or the network application). If the automation network or the devices are not able to perform the task, a corresponding rejection message for the task is sent to the distributed database system (or the network application).
  • the assignment can, for example, be implemented as an assignment data record which, for. B. includes the corresponding information for assignment.
  • This can be, for example, a digital certificate of the device, a device address (e.g. a network address), a unique identification (e.g. a UID) or a combination thereof.
  • the assignment or the assignment data record can include further data, for example.
  • These can be device properties, for example, the z. B. specify which data (or parts of data) z. B. of data or messages or of a corresponding message content (z. B.
  • the message content of the first message or the first message itself can be processed by a corre sponding device (ie by a specific device) and / or which data or which Data of the message and / or the message content for the device must be converted.
  • the assignment can also include, for example, specific conversion information on how the data or the corresponding message content or the corresponding message must be converted.
  • (the corresponding) data or a corresponding message or a corresponding message content, for. B. can be assigned to a device that can process this data or this message or the corresponding message content.
  • Such a device, which is assigned in this way can also be referred to as an assigned device, for example.
  • the conversion module 230 is set up to convert the data or the message content of the corresponding first message TE (for example the first message is a message of the first messages) into a data format for the assigned device (for example the first device DI) convert.
  • the assigned device is used to check which data or which data of the message content can be processed by the device at all and / or it is also checked using the assigned device via how these data can be converted for a corresponding device.
  • control of the reserve power plant which is stored in the message, it can be converted into specific control commands for the devices or generators.
  • the control commands are determined according to the requirements of the task.
  • the first two devices or gas turbines are used or driven at full power and the third gas turbine only at half power in order to achieve the required 500 MW power.
  • the data format is z. B. a proprietary data format of the devices.
  • the second communication interface 240 is set up to transmit the converted message content to the device that is assigned to the corresponding first message.
  • the second communication interface 240 is connected to the second bus BE2 and protrudes this communicatively communicates with the second communication interface NI2 of the SYS system.
  • the data or the corresponding message content, which is transmitted to the corresponding device or devices, can, for.
  • the conversion module 230 is an optional module in particular. This is the case, for example, when the data or the message content of the corresponding first message does not have to be converted or the data or the message content or the corresponding first message has a data format which can be processed by the devices.
  • the converted message content (or the converted data) corresponds to the (unconverted) message content of the corresponding first message (or the unconverted data) when transmitted to the device or devices. Consequently, for example, the corresponding first message is sent to the device or the corresponding devices as a second message. Consequently, the message content of the corresponding first message corresponds to the converted message content, in particular for other embodiments of the receiving device.
  • the receiving device can include the following features:
  • a first communication interface for example, a first communication interface
  • the first network interface is set up to communicate with a distributed database system or a network application
  • the first communication interface is set up to receive data or first messages from the distributed database system or the network application;
  • an identification module for example an identification module, wherein for example, the identification module is set up to use the data or the respective message content of the first messages to calculate an association for which devices a corresponding first message or the data is / are intended;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the data or the converted data or the converted message content and / or the message content of the corresponding first message (and / or the first message itself) to the device that corresponds to the first Message is assigned.
  • the receiving device retrieves a device status from the device associated with a corresponding first message TE or the data (for example device D1). A transfer to the assigned device depends on the device status called up.
  • a data record about the available device resources and / or current device properties can also be called up.
  • the second turbine (second device) currently has a reduced power due to wear or a technical defect
  • this can be taken into account, for example, when determining the devices and also taken into account when converting or creating the control commands for starting or controlling the gas turbines
  • the first and the third device can be full Power is used or started and the second device is used accordingly with half the power.
  • the transmission to the corresponding device or devices takes place if predefined requirements of the data or the corresponding first message TE are met by the assigned device, for example by checking the fulfillment of the previous requirements on the basis of the device status.
  • the technical task can be determined for example by the specified requirements.
  • the specified requirements can be stored in a corresponding data record of the corresponding first message TE or the data.
  • the previous requirements can, for example, be a requirement to provide 500 MW for 24 hours on a given date (e.g. July 9, 2018 at 2:43 p.m.) at a given location or region (e.g. Kunststoff or Bavaria or Germany).
  • the previous requirements can include, for example, manufacturing instructions or the manufacturing specifications in order to, for example, B.
  • a gearbox or gearbox parts on a specified date e.g. July 9, 2018 at 2:43 p.m.
  • a specified location or region e.g. Munich or Bavaria or Germany
  • a counter precision e.g. deviation of CAD data by max. times 1 mm.
  • the specified requirements can, for example, also include or include control commands.
  • the specified requirements give z. B. before that the required control commands, for example from one of the devices or the corresponding device should already be executed before the data or the corresponding messages or message content (z. B. the converted message content) are transmitted to the devices.
  • the prerequisite control commands can also concern further devices, the further devices for example Devices of another automation network.
  • the further automation network e.g. a distribution network for fuel
  • control commands e.g. turbines, Gas turbines
  • corresponding messages or transactions in the distributed database system can be read out or checked, which, for example, confirm execution of the required control commands.
  • These corresponding messages or transactions can, for example, be referred to as confirmation transactions and are commanded by the corresponding devices, for example, after execution of the required control, e.g. B. by means of the transmission device S, stored in the distributed database system (or in the network application).
  • confirmation transactions can include, for example, information about the execution of the required control commands (e.g. location, time and execution time of the required control commands), device properties (e.g. which devices have executed the required control commands), device states (e.g. B. was the Ge advises in a regular operating state, it was in a maintenance state).
  • the control commands presented are also advantageous in that the automation network AN and the devices are a production system (e.g. the devices are production machines).
  • the prerequisite control commands can also be used to ensure that a workpiece to be manufactured is in a (production) state so that the control instructions of the (converted) message content to be transferred or the data to be transferred are carried out correctly for further processing of the workpiece can be.
  • the (current, converted) message content or the (current, converted) data with control commands that is to be transmitted is, for example, intended for a polishing machine ((for example, the second device D2) (that is, should be transmitted to it) that picks up and polishes the corresponding workpiece at the specified position.
  • a polishing machine (for example, the second device D2) (that is, should be transmitted to it) that picks up and polishes the corresponding workpiece at the specified position.
  • the preceding control commands are also advantageous in that the automation network AN and the devices are, for example, networked ATMs or ATMs.
  • the required tax provisions can also be used to ensure that a cash payment is made by an automated teller machine (e.g. by the device Dl) if the bank customer has previously been authenticated and confirmed in corresponding confirmation transactions by the distributed customer Database system (or the network application) has been saved.
  • the prerequisite control commands that is, the specified requirements
  • a user authentication or user authentication by means of a predetermined authentication method z. B. two-factor authentication, pin input
  • the receiving device E only then transmits the corresponding (converted) data or the corresponding (converted) message content (the corresponding first message) with control commands to the device (for example the ATM) if z. B. in the distributed database system (or in the network application) there is a confirmation transaction which, for example, confirms successful user authentication or user authentication.
  • the control commands are then used, for example, to configure the money counter that the user or Bank customers requested amount of money is provided and then the flap is opened to withdraw money.
  • the sending device S is designed to transmit the corresponding messages or confirmation transactions, if necessary for the required control commands, to the distributed database system (or to the network application) or in the distributed database system (or in the Network application) when the devices have successfully executed the corresponding required control commands or control command. If the execution was not successful, for example, this can also be saved in confirmation transactions or corresponding messages in the distributed database system (or in the network application).
  • the conversion module 230 is e.g. B. set up the data or the message content of the corresponding first message TE (z. B. the first message is a message of the first messages) in a data format for the assigned device (z. B. the first device Dl) convert.
  • old devices so-called legacy devices
  • the assigned device is used to check which of the data or parts of the data or data of the message content can be processed by the device (for example the assigned device) and / or the assigned device is used to check how this data relates to a corresponding device Device (e.g. the assigned device) can be converted.
  • the conversion module is then set up, for example, to check for the devices (e.g. using the assignment, which was calculated, for example, for the determination of a corresponding device), such as this data (e.g. the message content or the message or parts of the data) for that corresponding device (e.g. the assigned device) must be converted.
  • this data e.g. the message content or the message or parts of the data
  • control of the reserve power plant which is stored in the data or in the message, can be converted into specific control commands for the devices (for example the assigned device) or generators.
  • the control commands are determined according to the requirements of the task. For example, the first two devices or gas turbines are used or driven at full power and the third gas turbine only at half power in order to achieve the required 500 MW power.
  • the data format is z. B. a proprietary data format of the devices.
  • data can also be used, for example, instead of first messages or the message content of the first message TE.
  • the data can be, for example, the first messages or the first message or the message content of the first message or data of a communication link.
  • the receiving device can comprise the following features:
  • a first communication interface for example, a first communication interface
  • the first network interface is set up to communicate with a distributed database system (or a network application),
  • the first communication interface is set up for data or receive first messages from the distributed database system (or the network application);
  • an identification module for example an identification module, wherein
  • the identification module is set up to calculate an assignment based on the data or the respective message content of the first messages. B. to determine for which devices a corre sponding first message is intended;
  • the conversion module is set up to convert the data or the message content of the corresponding first message TE into a data format for a device (e.g. a device determined by the assignment, such as a legacy device or one of the devices D1-D3 ) to convert,
  • a device e.g. a device determined by the assignment, such as a legacy device or one of the devices D1-D3
  • the conversion module is set up to use the device (for example, using the corresponding assignment for a corresponding device) to check which data (or data parts) z.
  • the device for example, using the corresponding assignment for a corresponding device
  • the data or the message content can be processed by the device
  • the conversion module is set up to check for the devices (e.g. using the assignment that was calculated, for example, for the determination of a corresponding device) such as this data (e.g. the message content or the message). or parts of data are to be converted for the corresponding device (e.g. the assigned device); for example, a second communication interface, where
  • the second communication interface is set up for this purpose, the data and / or the converted data and / or the convert message content and / or the message content of the corresponding first message (and / or the first message itself) to the device that is assigned to the corresponding first message.
  • the receiving device can comprise the following features:
  • a first communication interface for example, a first communication interface
  • the first network interface is set up to communicate with a distributed database system (or a network application),
  • the first communication interface is set up to receive data or first messages from the distributed database system (or the network application);
  • the conversion module is set up to convert the data or the message content of the corresponding first message TE into a data format for a device (for example an assigned device such as a legacy device or one of the devices D1-D3 or z. B. to convert a device determined by the assignment, such as a legacy device or one of the devices D1-D3),
  • the conversion module is set up to use the device to check which data (or data parts) z. B. the data or the message content can be processed by the device, for example the conversion module is set up to check for the device (z. B. the assigned device) how this data (or parts of data) are to be converted for the corresponding device (e.g. the assigned device);
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the converted message content and / or the message content of the corresponding first message (and / or the first message itself) to the device which is assigned to the corresponding first message.
  • the receiving device can comprise the following features:
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to receive data or first messages from the distributed database system (or a network application);
  • the conversion module is set up to have the data or the message content of the corresponding first message TE (e.g. the first message is a message of the first messages) in a data format for a device (e.g. an associated device such as e.g. to convert a legacy device or one of the devices D1-D3 or e.g. a device determined by the assignment such as a legacy device or one of the devices D1-D3),
  • a device e.g. an associated device such as e.g. to convert a legacy device or one of the devices D1-D3 or e.g. a device determined by the assignment such as a legacy device or one of the devices D1-D3
  • the conversion module is set up to use the device to check which data (or data parts) z. B. the data or the message content can be processed by the device, for example the conversion module is set up to check for the device (e.g. the assigned device) how this data (or parts of data) for the corresponding device (e.g. the assigned device) Device) are to be converted;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the data and / or the converted data and / or the converted message content and / or the message content of the corresponding first message (and / or the first message itself) to the device, that of the corresponding first Message is assigned.
  • the receiving device can comprise the following features:
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to receive data or first messages from the distributed database system (or the network application);
  • the conversion module is set up to have the data or the message content of the corresponding first message TE (e.g. the first message is a message of the first messages) in a data format for a device (e.g. an associated device such as e.g. a legacy device or one of the devices D1-D3 or e.g. one assigned by the certain device such. B. to convert a legacy device or one of the devices D1-D3),
  • a device e.g. an associated device such as e.g. a legacy device or one of the devices D1-D3 or e.g. one assigned by the certain device such. B. to convert a legacy device or one of the devices D1-D3
  • the conversion module is set up to use the device to check which data (or data parts) z. B. the data or the message content can be processed by the device, for example the conversion module is set up to check for the device (e.g. the assigned device) how this data (or data parts) for the corresponding device (e.g. the assigned device) are to be converted;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the data and / or the converted data and / or the converted message content and / or the message content of the corresponding first message (and / or the first message itself) to the device, that of the corresponding first Message is assigned.
  • the device for which the message content of the first message TE and / or the first message TE is converted can be converted, for example, on the basis of the device assigned to the data or to the message content and / or the first message TE.
  • This can e.g. B.
  • On the basis of the assignment and / or the assignment data record and the data stored therein can be controlled by z. B. include the assignment and / or the assignment data record corresponding information or instructions for the conversion.
  • the receiving device can include the following features: for example, a first communication interface, where
  • the first communication interface is set up to receive data or first messages from the distributed database system (or the network application);
  • the conversion module is set up to convert the data or the message content of the corresponding first message TE (e.g. the first message is a message of the first messages) into a data format,
  • a device e.g. an assigned device such as a legacy device or one of the devices D1-D3 or e.g. a device determined by the assignment such as a legacy device or one of the devices D1-D3
  • a device e.g. an assigned device such as a legacy device or one of the devices D1-D3 or e.g. a device determined by the assignment such as a legacy device or one of the devices D1-D3
  • the device is assigned by means of / to the assignment of the data or the message content of the corresponding first message TE or the first message TE, for example the conversion module is set up to use the device to check which data (or data parts) z. B. the data or the message content can be processed by the device,
  • the conversion module is set up to check for the device (e.g. the assigned device) how these data (or data parts) are to be converted for the corresponding device (e.g. the assigned device);
  • a second communication interface for example, a second communication interface, where for example the second communication
  • Interface is set up to transmit the data and / or the converted data and / or the converted message content and / or the message content of the corresponding first message (and / or the first message itself) to the device that is assigned to the corresponding first message.
  • Data parts or part of the data or parts of the data are understood to mean, for example, a data area (for example an address area or a memory area) and / or data types where, for example, binary data and / or text-based data (for example XML Data or JSON, ASCII data), which preferably have a specific data format.
  • binary data is e.g. B. is data from a binary file and the text-based data is, for example, data from a text file.
  • the receiving device can also be an identification module, as is explained in the various variants and exemplary embodiments of the receiving device.
  • the receiving device can convert the message TE itself or also the data (for example the first messages) of a communication link and / or assign it to a device and / or transmit it to the assigned device.
  • the first communication interface is e.g. B. set up to communicate with a distributed database system (or a network application).
  • the first communication interface is set up to receive data or first messages from the distributed database system (or the network application) and / or to communicate with the distributed database system (or the network application) via a communication link, and e.g. B. Exchange data with the distributed database system (or the network application).
  • the identification module is set up to calculate an assignment based on the data or the respective message content of the first messages or the first messages or a message TE of the first messages or the data of the communication link. B. to determine for which devices the data or a corresponding first message TE or first messages or the message content of a message (or messages) or the data of the communication link are intended.
  • the identification module z. B. data (z. B. the respective message content of the first messages or the first messages or the first message TE of the first messages or the data of the communication link or the message content) to a corresponding device.
  • the conversion module is set up to convert the data or the message content of the corresponding first message TE or the first messages or the first message or the data of the communication link into a data format for a device (for example a device determined by the assignment such as, for B. to convert a legacy device or one of the devices D1-D3).
  • a device for example a device determined by the assignment such as, for B. to convert a legacy device or one of the devices D1-D3
  • the conversion module is set up to use the device (for example, using the corresponding assignment for a corresponding device or the assigned device) to check which data, for. B. the message content or the data of the communication link or the messages or the first message can be processed by the device.
  • the conversion module is set up to check for the device (e.g. using the assignment that was calculated, for example, for the determination of a corresponding device) such as this data (e.g. the message content or the message) for the corresponding device (e.g. the assigned device).
  • this data e.g. the message content or the message
  • the second communication interface is set up to transmit the converted data to the device that is assigned to the corresponding data.
  • the converted data may be the respective converted message content of the first messages or the converted first messages or the converted message content or the converted first message TE of the first messages or the converted data of the communication link.
  • a network application (or also called a network application) can also be used.
  • the receiving device can include the following features, for example:
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to receive data from a network application
  • the conversion module is set up to convert the data into a data format
  • a device e.g. an assigned device such as a legacy device or one of the devices D1-D3 or e.g. a device determined by the assignment such as a legacy device or one of the devices D1-D3
  • a device e.g. an assigned device such as a legacy device or one of the devices D1-D3 or e.g. a device determined by the assignment such as a legacy device or one of the devices D1-D3
  • the device is assigned by means of an assignment of the data,
  • the conversion module is set up to use the device to check which data (for example which part of the data or which part of the data) z. B. the data can be processed by the device, for example the conversion module is set up to check for the device (e.g. the assigned device) how this data (e.g. the corresponding part of the data) for the corresponding device ( e.g. the assigned device) is to be converted;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the converted data to the device that is assigned to the data or data parts.
  • the receiving device can comprise, for example, an identification module, wherein, for example, the identification module is set up to calculate the assignment on the basis of the data in order, for. B. to determine for which devices the data is intended.
  • the receiving device comprises, for example, a first communication interface 210, for example the first communication interface being set up to receive data from a network application.
  • the receiving device comprises, for example, a conversion module, for example the conversion module being set up to convert the data into a data format for a device assigned to the data.
  • the conversion module is set up to determine whether and / or how for the (assigned) device this data is to be converted for the corresponding (assigned) device (e.g. the assigned device).
  • the receiving device comprises, for example, a second communication interface (240), wherein, for example, the second communication interface is designed to transmit the converted data and / or the data to the device that is assigned to the data.
  • a second communication interface (240)
  • the second communication interface is designed to transmit the converted data and / or the data to the device that is assigned to the data.
  • the receiving device comprises, for example, a first communication interface, for example the first communication interface being set up to receive data from a network application.
  • the receiving device comprises, for example, a conversion module, wherein, for example, the conversion module is set up to determine a conversion check result for the data.
  • the conversion test result gives z. B. on whether and / or how the data example to be converted into a data format for the device assigned to the data.
  • the determination of the conversion check result is preferably device-specific for a device assigned to the data (or the device assigned to the devices) in order, for. B. determine whether the assigned device can process the corresponding data (or parts of the data) and / or if necessary, to vertically convert the data or parts of the data specifically for the assigned device.
  • the conversion module is e.g. B. set up to determine the conversion test result for the data, z. B. the conversion test result depending on the assigned device is determined.
  • the conversion test result it is checked, for example, whether the ordered device can process the data (at all) and / or it is also checked using the assigned device how this data is converted for a corresponding device so that the assigned device can process this data e.g. B. can process.
  • the conversion test result then gives e.g. B. whether and / or how the data are to be converted, for example, into a data format for the device assigned to the data.
  • the conversion module z. B. set up to convert the data depending on the conversion test result in the data format for the device assigned to the data.
  • the receiving device comprises, for example, a second communication interface, for example the second communication interface being set up to transmit the converted data and / or the data to the device which is assigned to the data.
  • the conversion module is set up to use the device to check which data (for example which part of the data and / or all data) of the data can be processed by the (assigned) device.
  • the result of this check is stored, for example, in the conversion test result, for example that
  • the conversion test result indicates which parts of the data or whether the data as such are to be converted for the assigned device.
  • the conversion check result includes e.g. B. device-specific conversion instructions for the data, for example to convert the data specifically for the assigned device, so that the assigned device z. B. can process the corresponding data (e.g. also the parts of the data to be converted).
  • the device properties and / or the current devices can be used for the test. properties and / or device information of the assigned device are taken into account.
  • the device information can also include the corresponding device properties (e.g. current device properties), for example.
  • the data can be in a text format, XML format or JSON format, but the assigned device can (only) process a certain binary data format according to its device properties. This is then determined during the check and the conversion test result then includes, for example, information that the data must be converted for processing by the device and / or can additionally include, for example, instructions on how the data are to be converted.
  • data types that are incompatible with the assigned device can also be used in the data. These can be, for example, double data types, big integer data types or date formats that the assigned device cannot process. For this too, z. B. a corresponding conversion can be made, as has already been shown for other examples ge.
  • the conversion module preferably only converts the data that cannot be processed by the device (or are incompatible).
  • the converted parts of the data and the parts of the data that the assigned device was able to execute are then merged again into (converted) data (or a data record) which, for. B. can be processed as a whole by the assigned device.
  • These converted data (or data record) are then transferred to the assigned device accordingly.
  • the assigned device can, for example, only process dates up to a certain point in time (e.g. December 31, 1999).
  • z. B. current dates (1.1.2018) can be converted into a processable date (e.g. 1.1.1988).
  • the incompatible data parts e.g. dates that lie after December 31, 1999
  • a conversion rule for the device-specific conversion instructions e.g. current date - 30 years
  • advised e.g. 1.1.1988
  • corresponding data or parts of the data can be assigned standard values (e.g. an empty string, a date in a valid format that is e.g. not the current date). B. at least other parts of the data can be transmitted.
  • the receiving device comprises an identification module (if not yet available), the identification module being set up in particular to use the data to calculate an assignment for which devices the data is intended, for example, and the identification module being set up for this purpose, for example to calculate an assignment or the assignment based on the data, for example to determine the assigned device.
  • the identification module being set up in particular to use the data to calculate an assignment for which devices the data is intended, for example, and the identification module being set up for this purpose, for example to calculate an assignment or the assignment based on the data, for example to determine the assigned device.
  • the identification module uses the data to calculate (or determine) which ches device to process the data. Accordingly, such a device is then, for example, by means of the assignment, for.
  • assignment data record in the form of an assignment data record, assigned to the data.
  • the assignment or the assignment data record can include, for example, device information or device properties of the assigned device.
  • This assignment or the assignment data record can then be used, for example, by the conversion module, for example to B. to check which data (e.g. which part of the data and / or all data) of the data can be processed by the assigned device.
  • these can additionally each include, for example, a configuration interface and / or a fan and / or a monitoring module.
  • the configuration interface for example, updates or firmware versions can be imported.
  • the fan z. B. the receiving device can be cooled ge.
  • the monitoring module the state and / or the operating behavior of the corresponding receiving device can be monitored and z. B. saved in a file (e.g. a logging file).
  • the transmission device S comprises a first communication interface 310 (e.g. a network interface to one
  • Ethernet network an identification module 320, a conversion module 330 and a second communication interface (e.g. a network interface to an Ethernet network) 340, which are communicatively connected to one another via a bus 301.
  • second communication interface e.g. a network interface to an Ethernet network
  • the first communication interface 310 is set up to communicate with the devices.
  • the first communication interface 310 is connected to the third bus BS1 and is therefore communicatively connected to the second communication interface NI2 of the system SYS.
  • the first communication interface is set up to receive first messages or data from the devices. there are the the dates or the first messages z. B. stored in a proprietary data format of the devices.
  • the identification module 320 is set up to use the data or the respective message content of the first messages to calculate an assignment of which device has sent a corresponding first message NS or the data.
  • the data or a corresponding message content can identify a digital signature, a digital certificate, a device address (e.g. a network address), a device status (e.g. a device status) or a unique identifier (e.g. a UID), on the basis of which the corresponding device or devices can be determined.
  • the data or the message or the message content can include a device status, to what degree the technical task has been fulfilled by the devices or the automation network.
  • the devices do not deliver the required performance in total.
  • the total output can only be 300 MW.
  • individual messages can be sent through the devices, which can be, for. B. to what degree or to what extent they have each fulfilled the technical task (e.g. first device 50 MW, second device 100 MW, third device 150 MW he brought power).
  • the sending device S or another device (e.g., which has sent the message to the sending device S ge) of the automation network AN then calculate to what extent the technical task has been accomplished.
  • the missing part of the power can, for example, be sent again as a message via the distributed database system (or the network application) to a further automation network of a coal-fired power plant or a wind power plant as a second message TS. These can then, for example, provide the performance deficit in energy generation.
  • the second message TS is then, for example, in Transactions (e.g. the twelfth transaction T3d) of the distributed database system (or the network application) are stored or the second message (e.g. the twelfth transaction T3d) is already one in the distributed database system (or the Network application) saved transaction after it was successfully sent or transferred.
  • the conversion module 330 is set up to convert the data or the message content of the corresponding first message NS into a data format for the distributed database system (or the network application).
  • the data or the message content of the corresponding first message can be converted into a general data format (e.g. XML or according to an XML schema) that is compatible with the distributed database system (or the network application).
  • a general data format e.g. XML or according to an XML schema
  • the conversion module 330 is an optional module in particular. This is the case, for example, if the data or the message content of the corresponding first message does not have to be converted or the message content or the corresponding first message has a data format which is processed by the distributed database system (or the network application) can. In such a case, the converted message content or the converted data corresponds to the (unconverted) message content of the corresponding first message when it is transmitted to the network application or the distributed database system. Consequently, for example, the corresponding first message is sent as a second message to the distributed database system (or the network application) or, analogously, the unconverted data is sent to the distributed database system or the network application. Consequently, in particular for corresponding embodiments of the sending device, the message content of the corresponding first message may correspond to the converted message content.
  • the transmission device can include the following features:
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to communicate with devices
  • the communication interface is set up to receive first messages or data from the devices
  • an identification module for example an identification module, wherein
  • the identification module is set up on the basis of the data or the respective message content of the first messages, an assignment is calculated which device sent a corresponding first message;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to communicate with a distributed database system (or a network application), for example the communication interface is set up for the data or the converted data or the converted message content and / or the message content of the corresponding first message (and / or to transmit the first message itself) to the distributed database system (or the network application).
  • the second communication interface 340 is set up to transmit the converted message content or the converted data to the distributed database system (or the network application).
  • the second communication interface 340 is with the fourth bus BS2 is connected and is communicatively connected via this to the second communication interface NI2 of the SYS system.
  • the (corresponding) data or the corresponding message content that is transmitted to the distributed database system (or the network application) can, for. B. in the form of a second message TE to the devices / the device.
  • the second message TE can be, for example, a transaction of the distributed database system (or the network application), the second message comprising / storing the converted message content or the converted data.
  • the transmission device S and the reception device E can each comprise an independent cryptography module in different variants. This is advantageous in order to increase the security, since z. B. have received unauthorized access to the cryptographic data of one of the cryptography module, this unauthorized person does not automatically get access to the other cryptographic data of the other cryptographic module.
  • the sending device S and the receiving device E can use a common cryptography module. This is advantageous in order to keep the manufacturing costs for the individual modules low.
  • the corresponding cryptographic data can be shared between the sending device S and / or the receiving device E.
  • the cryptography module is preferably provided with a tamper protection module (e.g. tamper protection module).
  • a tamper protection module e.g. tamper protection module
  • the cryptography module can comprise a mechanical and / or an electrical and / or electronic and / or electromechanical protection device. This can be realized, for example, by the cryptography module storing the cryptographic data for the devices in a protected memory module or memory (for example a key memory), the data of which (only) the cryptography module can access. Accordingly, this memory and / or the cryptography module are protected by a steel housing (mechanical
  • the z. B. prevents access by unauthorized persons.
  • the cryptography module or the memory can be protected by a protective film against drilling. As soon as someone tries to access the memory in an unauthorized manner or via an unauthorized interface, e.g. B. deleted the cryptographic data.
  • the cryptography module includes, for example, cryptographic data specific to the devices (device-specific cryptographic data).
  • the cryptographic data can be, for example, one or more cryptographic keys that have been calculated specifically for a particular device.
  • the cryptographic keys can e.g. B. are symmetric cryptographic keys or asymmetric cryptographic keys (e.g. a public / private key pair).
  • This cryptographic data can, for example, be stored permanently in or by the cryptography module.
  • the cryptographic data can be deleted from the cryptography module after a predetermined time (for example if a corresponding device has not communicated any data / messages for a few hours). If the corresponding device communicates again later, the necessary cryptographic key can be recalculated.
  • the cryptographic data can be calculated in a reproducible manner for a respective device or calculated again.
  • unique device-specific data of the corresponding device can be used. Unique device-specific data are, for example, a UID of the device, a unique identifier that was calculated on the basis of sensor data characteristic of the device - e.g. B. a calculated characteristic for a noise signal, the was determined by a sensor of the device.
  • This unambiguous device-specific data can be used, for example, in combination with a secret starting value (e.g. a seed), which is securely stored or managed, for example, by the cryptography module, in order to recalculate the corresponding cryptographic data.
  • a secret starting value e.g. a seed
  • a first secret starting value can be used to calculate the cryptographic data for the transmitting device and a second secret starting value can be used to calculate the cryptographic data for the receiving device.
  • the calculations mentioned are preferably carried out by the cryptography module, so that e.g. B. the algorithms used and temporarily calculated data are protected from unauthorized access.
  • the cryptography module can then, for example, load, calculate or access the corresponding cryptographic data using the assigned device.
  • the cryptographic data can also be loaded, for example, by first using the device-specific data and / or device-specific data (for example, send device-specific data and / or receiver-device-specific data) to add another cryptographic data
  • the (device-specific) cryptographic data are - as already mentioned - preferably stored by or in the cryptography module.
  • a UID of a corresponding device is combined with a secret starting value of the transmitting device S and / or the receiving device E and / or the system SYS in order to form the further cryptographic key in order to decrypt the cryptographic data in the case of example.
  • the further cryptographic key z. B. the data are combined into a combined character string (UID + secret start value).
  • the combined character string or part of the combined nated character string as an input parameter for a key derivation function, a corresponding key being able to be derived in a reproducible manner, provided, for example, B.
  • the content-identical / identical character string is used as an input parameter.
  • the sending device S for example, by means of the corresponding cryptographic data, at least some of the data or the message content of the corresponding first message can be cryptographically protected device-specifically for the assigned device (for example, a device-specific cryptographic protection can be generated). This cryptographic protection takes place, for example, before sending the message content or data.
  • a receiving device E at least part of the data or the message content of the corresponding first message is checked and / or decrypted for an assigned device using the cryptographic data.
  • a device-specific cryptographic protection is to be understood to mean that e.g. B. the data or the messages (or their message content), which originate from a corresponding device, are protected by means of the device-specific cryptographic data, in order to make an authenticity of the corresponding data or the corresponding messages or the message content preferably verifiable.
  • the sending device S this is advantageous in that, in particular, the messages that are sent to (and / or stored by) the distributed database system (or the network application) are cryptographically protected (or messages that were sent by the devices) to be checked cryptographically, e.g. analogous to the receiving device).
  • This can be done, for example, by the corresponding data or the corresponding message content being protected and / or encrypted using a (cryptographic) checksum.
  • the sending device S can include, for example, a first cryptographic key (this is, for example, specific to the device). with which, for example, a checksum about the data or the messages or the message content is formed.
  • the message content or the data can be encrypted with this first cryptographic key, for example.
  • a recipient of the message or the data can for example use the first cryptographic key (in the case of a symmetrical cryptographic method) or a second cryptographic key which is assigned to the first cryptographic key (e.g. in the case of an asymmetrical cryptographic method in the e.g. ,
  • the first key is a private key and the second key is a public key
  • the corresponding key material may have been transmitted to the receiver, for example, via a secure channel.
  • the cryptographic data (e.g. the cryptographic key), for e.g. B. the transmitting device S, he can have been generated for example based on device-specific data or unique device-specific data of a corresponding device (e.g. a UID of the device, a random number that was generated by the corresponding device, or based on characteristic sensor data for the device was calculated - e.g. a calculated characteristic for a noise signal, which was determined by a sensor of the device).
  • the cryptographic data is a combination of (unique) device-specific data and transmission device-specific data (e.g.
  • a UID of the transmission device a random number that was generated by the transmission device, or was calculated on the basis of sensor data for the transmission device - e.g. a calculated characteristic for a noise signal, which was determined by a sensor of the transmitting device).
  • the sensor data can be detected, for example, by a sensor which, for. B. the thermal noise of a
  • Circuit of the device or the noise of the transmitter sors themselves can be used.
  • This can be, for example (e.g. for the devices or for the SYS system) a token ring network interface of a device or an RS232 interface.
  • Also, e.g. B. will use the noise of data acquisition hardware.
  • the transmitting device S that the device-specific data and / or device-specific data (e.g. the secret start value) for the corresponding device are used to reproducibly determine the cryptographic data or that this data is used to provide cryptographic protection (e.g. encryption), with which the corresponding cryptographic data of a device is protected, canceled (e.g. decrypted) and / or checked (e.g. a digital signature is checked).
  • the device-specific data can, for example, be stored in the message of the corresponding device.
  • the device-specific data and / or device-specific data are preferably data which are difficult to forge, e.g. B. a characteristic of a noise signal (e.g.
  • this device-specific data and / or (sending) device-specific data would be changed such that, for. B. changed the characteristic such that the cryptographic data become invalid or can no longer be accessed.
  • cryptographic data or key material or device-specific data or clearly device-specific data of a corresponding device can also be exchanged by means of a challenge-response method.
  • This can be done, for example, by configuring the method on the device side and on the transmitting device side with corresponding initial values (e.g. by Protected memory of the device or the transmitting device are preconfigured corresponding initial values or these initial values are calculated and / or provided by the protected memory) and / or corresponding device-specific data (e.g. a cryptographic key or part of a cryptographic key ) can be called up from the sending device.
  • the receiving device E with a cryptography module is advantageous in that, in particular, the messages that are to be transmitted to a corresponding device are to be cryptographically checked (or, for example, to be cryptographically protected analogously to the transmitting device).
  • the message creator may have received, for example, a first cryptographic key with which, for example, a check sum of the messages or the message content or the data was received that was received by the receiving device E.
  • the message content or the data can also have been encrypted with this first cryptographic key.
  • the first cryptographic key in the case of a symmetrical cryptographic method
  • a second cryptographic key which is assigned to the first cryptographic key for example in the case of an asymmetrical cryptographic method in which the first key is used, for example
  • the corresponding message content or data is decrypted or checked.
  • the cryptographic data (for example the cryptographic keys) of the receiving device E can be generated, for example, on the basis of device-specific data or unique device-specific data of a corresponding device (e.g. a UID of the device, a random number which is given by the corresponding device) Device was generated, or was calculated based on sensor data characteristic of the device - e.g. B. a calculated characteristic for a noise signal, which was determined by a sensor of the device).
  • a corresponding device e.g. a UID of the device, a random number which is given by the corresponding device
  • the sensor data can be detected for the receiving device E and / or the system SYS, for example, by a sensor who, for. B. the thermal noise of a circuit of the device is detected or the noise of the sensor itself is used ver.
  • the noise at an unused data interface or also at a ge used data interface can be used. This can be, for example, a token ring network interface of a device or an RS232 interface. Also, e.g. B. will use the noise of data acquisition hardware.
  • the cryptographic data for a receiving device E are a combination of device-specific data and receiving device-specific data (e.g. a UID of the receiving device, a random number that was generated by the receiving device, or was calculated on the basis of sensor data for the receiving device - e.g. a calculated characteristic for a noise signal that was determined by a sensor of the receiving device).
  • the cryptographic data it is also possible for the cryptographic data to be reproducibly determined by means of the device-specific data and / or receiving device-specific data for the corresponding device.
  • cryptographic protection e.g. encryption
  • can be canceled e.g.
  • a cryptographic key can be calculated on the basis of this data in order to carry out the cryptographic operations required for this.
  • the device-specific data of the devices for the receiving device E can be obtained, for example, when the device Stand for a device can be accessed.
  • the device-specific data and / or receiver-device-specific data are preferably data which are difficult to forge, e.g. B. a secret start value or a characteristic of a noise signal (z. B. from a sensor or a tamper protection module is detected), which is changed when the device is tampered with such that. B. changed the characteristics such that the cryptographic data become invalid or can no longer be accessed.
  • a device has been replaced by a manipulated other device by an unauthorized person, it is very difficult, for example, to duplicate or falsify the characteristic of a noise signal of the original device by the manipulated device.
  • the characteristic of the noise signal (of the manipulated device) is now used, for example, to generate a cryptographic key.
  • the cryptographic key is now tried z. B. to decrypt the cryptographic data. Since based on the changed characteristics of the noise signal not the correct key for decrypting who could be formed, z. B. the decryption of the cryptographic data unsuccessfully.
  • device-specific data or unique device-specific data can also be determined or exchanged using a challenge-response method (for example when a device status is called up), for example by configuring the method on the device side and on the receiving device side with corresponding initial values (e.g. B. in the protected memory of the device or the receiving device corresponding initial values are preconfigured or these initial values are calculated and / or provided by the protected memory) and corresponding device-specific data (e.g. a cryptographic key or part) a cryptographic key) can be called up by the receiving device.
  • the transmitting device S and / or the receiving device E can also each comprise an initialization module or use a common initialization module. This initialization module is set up so that, for. B.
  • the corresponding cryptographic data be calculated if data are to be received for the first time for this device or are to be sent to it.
  • This can e.g. B. generated using the above-mentioned method (a clear device-specific data + seed).
  • the transmitting device S and / or the receiving device E can also form virtual devices which have the appropriate interfaces and technical features in order to communicate with the distributed database system (or the network application).
  • corresponding virtual devices can be instantiated with a predetermined configuration, the configuration being determined or calculated depending on corresponding device information about the physical device.
  • Configuration means, for example, which interfaces and functions a corresponding virtual device should provide.
  • the transmitting device S and / or the receiving device E forwards the corresponding information to the old device or legacy device, whereby before the corresponding conversion and processing is carried out as described above.
  • B. are not blockchain capable, but should be controlled by a blockchain-based control system.
  • the identification module can use the corresponding virtual devices for this, or the identification module is a component / element that is made by one or multiple virtual devices.
  • the virtual devices preferably behave like a node of the distributed database system (or of the network application) and emulate or supplement functions for the physical devices which are used for communication or cooperation with the nodes of the distributed database system (or the network application) are missing.
  • a corresponding identification module (with virtual devices) for a receiving device E can be implemented as follows, for example.
  • the identification module is set up to use the data or the respective message content of the first messages to calculate an assignment for which virtual devices a corresponding first message is intended.
  • the virtual devices include z. B. the conversion module and / or the second communication interface or each include its own virtual variant of these or access the conversion module and / or the second communication interface to the data or the messages or the message content to the physical device associated with the corresponding virtual device.
  • a receiving device with corresponding virtual devices can have the following features, for example:
  • a first communication interface for example, a first communication interface
  • the first network interface is set up to communicate with a distributed database system (or a network application),
  • the first communication interface is set up to receive first messages or data from the distributed database system (or the network application);
  • a corresponding (physical) device e.g. of the automation network AN
  • AN corresponding (physical) device
  • an assignment is calculated for which the virtual devices a corresponding first message or data is intended;
  • the conversion module is set up to convert the data or the message content of the corresponding first message into a data format for the assigned device;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the data and / or the converted data and / or the converted message content and / or the message content of the corresponding first message (and / or the first message itself) to the device, that of the corresponding first Message is assigned.
  • a corresponding identification module for a Sendevor direction S can for example be implemented as follows.
  • the identification module is set up to use the data or the respective message content of the first messages to calculate an assignment of the physical device from which a message was received. This assignment is now used to determine which virtual device should process and / or send a corresponding message.
  • the virtual devices include the conversion module and / or the second communication interface or each include their own virtual variant thereof or access the conversion module and / or the second communication interface in order to transfer the data or the messages or the message content to the distributed database system (or the network) by means of the corresponding virtual device - application).
  • a transmission device S with corresponding virtual devices can have the following features, for example:
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to communicate with devices
  • the communication interface is set up to receive first messages or data from the devices
  • a corresponding (physical) device e.g. an automation network
  • a corresponding (physical) device e.g. an automation network
  • an assignment is calculated to which device sent a corresponding first message or the data;
  • the conversion module is set up to convert the data or the message content of the corresponding first message into a data format for the distributed database system (or the network application);
  • a second communication interface for example, a second communication interface, where for example the second communication
  • Interface is set up to communicate with a distributed database system (or a network application), for example the communication interface is set up to have the data and / or the converted data and / or the converted message content and / or the message content of the corresponding first message
  • the variants mentioned with the virtual devices can, for example, also do without the conversion module if, for example, no data conversion is necessary.
  • the variants with the virtual devices can also each comprise a corresponding cryptography module that encompasses the corresponding cryptographic data for one device (physical and / or virtual) and / or for several devices (physical and / or virtual).
  • a virtual device can each comprise a corresponding cryptography module, or the virtual devices access a common cryptography module.
  • the receiving device E can, for example, be implemented passively or actively.
  • the first messages are sent, for example, directly through the distributed database system (or the network application) to the receiving device E or the system SYS (or received by the receiving device E or the system SYS).
  • the corresponding messages can z. B. include an indication for which of the devices of the automation network AN the corresponding message is intended.
  • the first messages are received indirectly, for example, by the receiving device E or the system SYS.
  • the receiving device E or the system SYS detects or receives the messages from the first network NW1, for example using a packet filter or a network analysis tool (e.g. Wireshark) or a tool to retrieve data packets from the network (e.g. WinPCap , libpcap).
  • the corresponding messages are e.g. B. not directed to the receiving device E (or the system SYS) or its network address, but are directed to the devices of the automation network AN (eg by specifying a specific device type in the message or its content).
  • the receiving device comprises, for example, a device database that includes a directory of the devices of the automation network AN.
  • device information on the respective devices can also be stored in this directory, for example.
  • the device information can include, for example, general information about a device. This can e.g. B. technical features such as performance, manufacturing speed, energy consumption, manufacturing precision, location of the device or a combination thereof.
  • the corresponding device information can also include the device status last received or retrieved.
  • the device information can for example also include the corresponding device properties (e.g. current device properties).
  • the transmitting device S can, for example, be implemented passively or actively.
  • the first messages are sent, for example, directly by the devices of the automation network to the sending device S or the system SYS.
  • the corresponding messages can z. B. include an indication for which network application or which distributed database system (if there are several of these systems) or network (for example the first communication network) the corresponding message is intended.
  • the first messages are received indirectly, for example, by the transmitting device S or the system SYS.
  • the sending device S or the system SYS detects or receives the messages from the second network NW2, for example using a packet filter or a network analysis tool (e.g. Wireshark) or a tool to retrieve data packets from the network (e.g. WinPCap , libpcap).
  • the corresponding messages are e.g. B. not directed to the sending device S (or the system SYS) or its network address, but are z.
  • the sending device S can also include a device database (e.g. analogous to the receiving device), for example to determine which device has sent a corresponding message. If the messages are initially received passively, for example, such information can be determined, for example, using the send address of the message.
  • the device information e.g. B. accessed by means of the Sen de address.
  • the invention is advantageous in that z. B. Legacy Ge devices, whose configuration may not be changed, to communicate with a new block chain infrastructure.
  • the conversion of the data is carried out by the device or the system.
  • the devices eg the transmitting device or the receiving device
  • the system can also execute smart contracts for the legacy systems or devices.
  • the devices can be made blockchain-compatible without changing anything on these devices.
  • these devices or the system comprises the necessary components to communicate with a block chain.
  • These are, for example, key stores with cryptographic keys to sign transactions / messages for the block chain or to check corresponding checksums.
  • one module, several modules or all modules can be implemented as software components or as hardware components or as a combination of hardware and software components.
  • the system and / or the modules and / or the transmitting device and / or the receiving device and / or the distributed database system and / or the network application and / or the network infrastructure of the network application and / or nodes of the network application and / or the nodes of the distributed th database system (e.g. blockchain nodes) and / or devices can, for example, each additionally include a further one or more additional components, such as a processor, a memory unit, further communication interfaces (e.g. Ethernet , WLAN), an input device, in particular a computer keyboard or a computer mouse, and a display device (e.g. a monitor).
  • the processor can, for example, include several further processors, which can be used in particular to implement further exemplary embodiments.
  • the processor can be, for example, an ASIC that was implemented in an application-specific manner for the functions of a respective module or all modules of the exemplary embodiment (and / or further exemplary embodiments), the program component or the program commands being implemented in particular as integrated circuits.
  • the processor may also be an FPGA, for example, which is configured in particular by means of the program instructions in such a way that the FPGA performs the functions of a respective module or all modules of the exemplary embodiment
  • the network interfaces can also be formed as integral network interfaces.
  • the first communication interface Nil of the system SYS and the first communication interface 210 of the receiving device E and / or the second communication interface 340 of the transmitting device S can be designed as a first integral communication interface.
  • the second communication interface NI2 of the system SYS and the second communication interface 240 of the receiving device E and / or the first communication interface 310 of the transmitting device S can be formed as a second integral communication interface.
  • the first integral communication interface and the second integral communication tion interface as a common integral communication interface.
  • the transmitting device S and / or the receiving device E and / or the system SYS can be designed, for example, as an integral component of one of the devices, the corresponding communication interfaces for communicating with the corresponding device, for example in such a case, a communication interface for one Data bus is (e.g. a PCI interface, a USB interface).
  • legacy devices or devices can be connected directly to the distributed database system (or the network application), for example by sending the device S and / or the receiving device E and / or the system SYS in a communication interface of the legacy device or the device is integrated (e.g. as ASIC or FPGA).
  • the communication interface of the device can be, for example, an interchangeable network card, for example an old network card having been replaced by a corresponding communication interface according to the invention.
  • a communication interface can include the sending device S and / or the receiving device E and / or the system SYS, or the communication interface is designed as the sending device S and / or the receiving device E and / or the system SYS.
  • the transmission device comprises the following:
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to communicate with devices
  • the communication interface is set up to receive first messages or data from the devices;
  • an identification module wherein, for example, the identification module is set up on the basis of the data or the respective message content of the first messages, an assignment is calculated which device sent the data or a corresponding first message;
  • the conversion module is set up to convert the data or the message content of the corresponding first message into a data format for the distributed database system or for a network application,
  • the conversion module is set up to convert the data specifically for the distributed database system or for the network application using the assigned device,
  • the conversion module is set up to check which data formats can be processed by the distributed database system or by the network application or by further distributed database systems or other network applications, for example the conversion module is set up to include the data in a convert the compatible data format to the distributed database system or the network application;
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to communicate with a distributed database system or the network application
  • the communication interface is set up to convert the data or to transmit the converted message content to the distributed database system or the network application.
  • the transmission device comprises the following:
  • a first communication interface for example, a first communication interface
  • the first communication interface is set up to communicate with devices
  • the communication interface is set up to receive first messages or data from the devices
  • the identification module is set up on the basis of the data or the respective message content of the first messages, an assignment is calculated which device sent the data or a corresponding first message;
  • a conversion module (330), for example, the conversion module is set up to determine data format requirements specifically for the device assigned to the data. B. are predefined by the assigned device Ge,
  • the conversion module is set up to determine a test result about which data formats can be processed by distributed database systems or network applications.
  • a second communication interface for example, a second communication interface
  • the second communication interface is set up to transmit the converted data or the converted message content to the distributed database system or the network application.
  • the conversion module can be set up to convert the data or the message content of the corresponding first message into a data format for the distributed database system or for a network application.
  • B. is predetermined by the assigned device.
  • the conversion module can be set up to select the (corresponding) distributed database system from the distributed database systems or the (corresponding) network application from the network applications on the basis of the test result and / or the data format requirements.
  • the second communication interface can be set up to convert the converted data
  • the network application is the selected network application or the distributed database system is the selected distributed database system.
  • the data format requirements can be predetermined, for example, by the assignment and / or device properties (of the assigned device) that are stored in the assignment (or an assignment data record). For example, if multiple distributed database systems or multiple network applications meet the data format requirements - that is, they are each compatible with the data format requirements - B. for the ever compatible distributed database systems or because each compatible network applications are converted and / or respectively transferred to them. Compatible means, for example, that the respective distributed database system or the respective network application supports and / or can process at least one data format of the data format requirements.
  • the data format specifies, for example, a format for data that can be processed by the network application or the distributed database system.
  • the network application or the distributed database system can also be used for data conversion (or for converting the data) and / or data transmission (for the converted data or data). can be selected that meets an additional selection criterion.
  • the selection criterion can be, for example, reliability, cryptographic requirements (for example key lengths used, cryptographic protocols) or requirements for the corresponding infrastructure (for example there must be at least a predetermined number of nodes or the network application or the distributed database system are, for example, implemented as a cloud service) which are to be supported by the network application or the distributed database system. For example, only a distributed database system or a network application is selected that best fulfills the selection criterion.
  • the second communication interface can be set up with the distributed database systems (for example the distributed database system or the further distributed database systems or the selected distributed data system).
  • the distributed database systems for example the distributed database system or the further distributed database systems or the selected distributed data system.
  • tenbank system or the network applications (e.g. the network application or the other network applications or the selected network application) to communicate z. B. to retrieve the supported data formats of the network applications or the distributed database systems and / or to transmit the converted data.
  • the data can be, for example, the first messages or the first message or the message content of the first message or data of a communication link.
  • a decentralized infrastructure with old or legacy devices.
  • old devices e.g. legacy devices
  • a new blockchain-based infrastructure This is advantageous, for example, for energy supply networks, the control of which is converted to a block chain infrastructure, but not every individual device in the existing energy supply network is replaced.
  • the invention allows, for example, that.
  • B. a device sends messages (e.g. with control commands or status messages for processing control commands) to the distributed database system or the network application, the transmitting device being arranged communicatively between the devices and the distributed database system (or the network application) and the assignment and / or transmission of the respective messages to the distributed database system (or to the network application) is realized.
  • the corresponding message contents or data are also converted into a data format that is compatible with the distributed database system (or the network application).
  • the devices do not have to be adapted to the new infrastructure.
  • device properties of the assigned device dictate that the data can be stored in one or more data formats in the distributed database system or the network application.
  • the data format requirements can stipulate that the data of the assigned device should be saved in an XML format or a JSON format, but not in a binary format.
  • the distributed database system supports an XML format and the network application only a proprietary binary format.
  • the second communication interface and / or the conversion module first check which data formats are supported by the distributed database system or the network application (supported means, for example, which data formats are supported by the distributed database system or the network). Application can be processed), also meet the data format requirements of the data format requirements of the assigned device.
  • the second communication interface then transmits, for example, on the basis of the test result determined during this test, to which distributed database system (there may also be several distributed database systems) or to which network application the converted data are transmitted.
  • This test result can alternatively be determined by the conversion module or by the identification module in the same way and z. B. the second communication interface can be provided.
  • the second communication interface can be set up to transmit the converted data or the converted message content, depending on the test result, to the distributed database system or a further distributed database system or the network application or a further network application.
  • the transmitting devices and / or receiving devices and / or distributed database systems (or their exemplary embodiments, embodiments) explained in the patent application or variants) and / or network application can additionally each include, for example, a configuration interface and / or a fan and / or a monitoring module.
  • the configuration interface for example, updates or firmware versions can be imported.
  • the fan ter z. B the corresponding transmitting device S and / or the receiving device E and / or the distributed database system can be cooled.
  • the monitoring module the state and / or the operating behavior of a corresponding transmitting device and / or a corresponding receiving device and / or the distributed database system can be monitored and z. B. saved in a file (e.g. a logging file).
  • Fig. 4 shows a fourth embodiment of the inven tion as a flowchart of the inventive method.
  • the method is preferably implemented with the aid of a computer.
  • the method comprises a first method step 410 for receiving first messages from a distributed database system by means of a first communication interface.
  • the first messages are stored, for example, in a data format (for example an XML data format) of the distributed database system or a network application.
  • the method comprises a second method step 420 for calculating an assignment for the first messages, wherein the calculation determines which devices a corresponding first message is intended for.
  • the method comprises a third method step 430 for converting the message content of the corresponding first message into a data format for the assigned device.
  • the Data format is in particular a proprietary data format of the devices.
  • the third process step is in particular an optional process step. This is the case, for example, when the message content of the corresponding first message does not have to be converted or the message content or the corresponding first message has a data format that can be processed by the devices.
  • the converted message content of the fourth method step corresponds to the (unconverted) message content of the corresponding first message or the corresponding first message is sent as a second message to the corresponding device or devices.
  • the method comprises a fourth method step 440 for transmitting the converted message content to the device that is assigned to the corresponding first message.
  • Fig. 5 shows a fifth embodiment of the inven tion as a flowchart of the inventive method.
  • the method is preferably implemented with the aid of a computer.
  • the method comprises a first method step 510 for receiving first (further) messages from devices by means of a communication interface. These messages are stored, for example, in a proprietary data format of the devices.
  • the method comprises a second method step 520 for calculating an assignment on the basis of the respective message content of the first (further) messages, it being calculated which device has sent a corresponding first further message.
  • the method comprises a third method step 530 for converting the message content of the corresponding first (further) message into a data format for the distributed database system (or the network application).
  • B. can be processed by the distributed database system (or the network application).
  • the data format can be e.g. For example, an XML data format for which a suitable XML schema is available.
  • the nodes of the distributed database system (or the network application) can, for. B. evaluate a device status of one of the devices of the automation network to z. B. the corresponding automation network or the corresponding device depending on the device status to send a message.
  • the third process step is in particular an optional process step. This is the case, for example, when the message content of the corresponding first message does not have to be converted or the message content or the corresponding first message has a data format that can be processed by the distributed database system (or the network application).
  • the converted message content of the fourth method step corresponds to the (unconverted) message content of the corresponding first message or the corresponding first message is sent as a second message to the distributed database system (or to the network application).
  • the method comprises a fourth method step 540 for transferring the converted message content to the distributed database system (or the network application).
  • the invention relates, for example, to a gateway or a network adapter with which old devices or legacy devices can be connected to a distributed database system (or to a network application) such as a block chain, without having to change a configuration in the old devices
  • a distributed database system or to a network application
  • the messages that are sent or received by the distributed database system are transactions.
  • the messages that are sent to the distributed database system are transactions.
  • the second network NW2 with its devices is also a distributed database system (or a network application)
  • the invention can also be used to create two different distributed database systems ( or network applications) communicate with each other.
  • a receiving device (E) comprising:
  • a first communication interface (210), the first network interface or communication interface (e.g. the first communication interface) being set up to communicate with a distributed database system,
  • the first communication interface is set up to receive first messages from the distributed database system
  • the identification module is set up to use the respective message content of the first messages to calculate an association for which devices a corresponding first message is intended;
  • the conversion module is set up to handle the message content of the corresponding first convert the message into a data format for the associated device
  • the second communication interface is set up to transmit the converted message content to the device that is assigned to the corresponding first message.
  • the receiving device retrieves a device status from the device assigned to a corresponding first message, a transmission to the assigned device taking place depending on the device status called up.
  • the device status comprises a data record about the available device resources and / or current device properties.
  • a transmission to the corresponding device takes place when predetermined requirements of the corresponding first message are met by the assigned device, for example the fulfillment of the previous requirements being checked on the basis of the device state.
  • the receiving device comprises a cryptography module, the cryptography module comprising cryptographic data assigned to the devices.
  • the cryptography module uses the cryptographic data to check and / or decrypt at least part of the message content of the corresponding first message for an assigned device, for example for checking and / or decrypting the corresponding cryptographic data are loaded using the assigned device.
  • a first communication interface (310), the first communication interface being set up to communicate with devices, the communication interface being set up to receive first messages from the devices;
  • the identification module is set up to calculate an assignment based on the respective message content of the first messages, which device has sent a corresponding first message;
  • the conversion module is set up to convert the message content of the corresponding first message into a data format for the distributed database system
  • the second communication interface is set up to communicate with a distributed database system
  • the communication interface is set up to transmit the converted message content to the distributed database system.
  • the transmission device comprises a cryptography module, the cryptography module comprising cryptographic data assigned to the devices.
  • the cryptography module discharges on the basis of the assigned device. speaking cryptographic data, with at least part of the message content of the corresponding first message being device-specifically protected for the assigned devices by means of the corresponding cryptographic data, and for example cryptographic protection takes place before the message content is sent.
  • the distributed database system is a block chain, for example the messages that are sent and / or received by the distributed database system are transactions.
  • At least some of the devices are devices of an automation network.
  • One system comprising:

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Die Erfindung betrifft ein Gateway oder einen Netzwerkadapter mit dem alte Geräte oder Legacy-Geräte an ein verteiltes Datenbanksystem wie eine Blockkette angebunden werden können, ohne eine Konfiguration bei den alten Geräten ändern zu müssen.

Description

Beschreibung
Verfahren, Vorrichtungen und System zum Datenaustausch zwi schen einem verteilten Datenbanksystem und Geräten
Die Erfindung bezieht sich auf Verfahren, Vorrichtungen und ein System zum Datenaustausch zwischen einem verteilten Da tenbanksystem und Geräten.
Geräte, wie Feldgeräte und Fertigungsgeräte, werden immer stärker vernetzt und können beispielsweise von unterschiedli chen Betreibern bereitgestellt/betrieben werden. Diesen Gerä ten werden oft Befehlsfolgen übermittelt, die durch die Gerä te ausgeführt werden können. Nachteilig ist dabei, dass alte Geräte oft nicht mit der neuen IT-Infrastruktur ohne weiteres kommunizieren können.
Eine Aufgabe der vorliegenden Erfindung ist es, eine Alterna tive zu bekannten Lösungen aus dem Stand der Technik zu fin den .
Die Aufgabe wird durch die in den unabhängigen Ansprüchen an gegebenen Merkmale gelöst. In den abhängigen Ansprüchen sind vorteilhafte Weiterbildungen der Erfindung dargestellt.
Die Technologie von Blockketten (engl. Blockchains) bzw.
"Distributed Ledgers" ist aktuell eine intensiv diskutierte Technologie, die insbesondere als verteiltes Datenbanksystem oder als Netzwerk-Applikation realisiert sein kann. Neben An wendungen für dezentrale Bezahlsysteme (z. B. Bitcoin) werden in der Finanzindustrie neue Anwendungsmöglichkeiten entwi ckelt. Insbesondere können Transaktionen zwischen Firmen dadurch ohne Vermittler bzw. Clearing-Stelle manipulationsge schützt realisiert werden. Dies ermöglicht neue Geschäftsmo delle ohne einen vertrauenswürdigen Vermittler, es reduziert die Transaktionskosten, und es können flexibel neue digitale Dienste angeboten werden, ohne eine dafür speziell eingerich tete Infrastruktur und Vertrauensbeziehungen einrichten zu müssen. Ein durch eine Blockchain geschützter Transaktionsda tensatz (oder kurz Transaktion) umfasst z. B. Programmcode, der auch als sogenannter „Smart Contract" bezeichnet werden kann .
Gemäß einem ersten Aspekt betrifft die Erfindung eine Emp fangsvorrichtung, umfassend:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist mit einem verteilten Datenbanksystem oder einer Netz werk-Applikation kommunizieren, beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist erste Nachrichten oder Daten (z. B. die ersten Nach richten und/oder weitere Daten wie z. B. die Daten einer Kommunikationsverbindung) von dem verteilten Datenbanksystem oder der Netzwerk- Applikation zu empfangen;
beispielsweise ein Identifikationsmodul, wobei
beispielsweise das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder anhand des jeweiligen Nachrichteninhalts der ersten Nachrichten oder der Daten eine Zuordnung be rechnet (oder zu berechnen) , für welche Geräte eine entsprechende erste Nachricht bestimmt ist oder für welche Geräte die Daten bestimmt sind;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht oder der Daten in ein Datenformat für das zu geordnete Gerät zu konvertieren;
beispielsweise eine zweite Kommunikationsschnittstelle, wobei beispielsweise die zweite Kommunikationsschnitt stelle dazu eingerichtet ist die konvertierten Da ten und/oder die Daten und/oder den konvertieren Nachrichteninhalt und/oder den Nachrichteninhalt der Daten oder der entsprechenden ersten Nachricht (und/oder die erste Nachricht selbst) an das Gerät zu übertragen, das der entsprechenden ersten Nach richt zugeordnet ist.
Gemäß einem weiteren möglichen Aspekt betrifft die Erfindung eine Empfangsvorrichtung, umfassend:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist Daten von einer Netzwerkapplikation zu empfangen;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten in ein Datenformat für ein den Daten zugeordnetes Gerät zu kon vertieren,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist für das Gerätes zu bestimmen, ob und/oder wie diese Daten für das entspre chende Gerät (z. B. das zugeordnete Gerät) zu konvertieren sind;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist die kon vertieren Daten und/oder die Daten an das Ge rät zu übertragen, das den Daten zugeordnet ist .
Gemäß einem weiteren möglichen Aspekt betrifft die Erfindung eine Empfangsvorrichtung, umfassend:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei beispielsweise die erste Kommunikations
schnittstelle dazu eingerichtet ist Daten von einer Netzwerkapplikation zu empfangen;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist ein Konvertierungsprüfergeb nis für ein den Daten zugeordnetes Gerät zu bestimmen, ob und/oder wie die Daten bei spielsweise in ein Datenformat für das den Da ten zugeordnete Gerät zu konvertieren sind, das Konvertierungsmodul dazu eingerichtet ist die Daten abhängig von dem Konvertierungsprü fergebnis in das Datenformat für das den Daten zugeordnetes Gerät zu konvertieren,
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist die kon vertieren Daten und/oder die Daten an das Ge rät zu übertragen, das den Daten zugeordnet ist .
Gemäß einem weiteren möglichen Aspekt betrifft die Erfindung eine Empfangsvorrichtung, umfassend:
eine erste Kommunikationsschnittstelle (210), wobei die erste Kommunikationsschnittstelle dazu eingerichtet ist Daten von einer Netzwerk applikation zu empfangen;
ein Konvertierungsmodul (230), wobei
das Konvertierungsmodul dazu eingerichtet ist ein Konvertierungsprüfergebnis für die Daten zu bestimmen,
das Konvertierungsprüfergebnis abhängig von einem den Daten zugeordnetes Gerät bestimmen wird,
das Konvertierungsmodul dazu eingerichtet ist beim Bestimmen festzustellen, ob und/oder wie die Daten in ein Datenformat für das den Daten zugeordnete Gerät zu konvertieren sind, das Konvertierungsmodul dazu eingerichtet ist die Daten abhängig von dem Konvertierungsprü fergebnis in das Datenformat für das den Daten zugeordnetes Gerät zu konvertieren;
eine zweite Kommunikationsschnittstelle (240), wo bei
die zweite Kommunikationsschnittstelle dazu eingerichtet ist die konvertieren Daten an das Gerät zu übertragen, das den Daten zugeordnet ist.
Beispielsweiseweise überprüft das Konvertierungsmodul in ei ner Prüfung, ob das den Daten zugeordnet Gerät in der Lage ist, die Daten oder Teile der Daten zu verarbeiten. Das Er gebnis der entsprechenden Prüfung kann dann z. B. in dem Konvertierungsprüfergebnis gespeichert werden.
Die Daten können dabei beispielsweise die ersten Nachrichten oder die erste Nachricht oder der Nachrichteninhalt der ers ten Nachricht oder Daten einer Kommunikationsverbindung sein.
Sofern es in der nachfolgenden Beschreibung nicht anders an gegeben ist, beziehen sich die Begriffe "durchführen", "be rechnen", "rechnergestützt", "rechnen", "feststellen", "gene rieren", "konfigurieren", "rekonstruieren" und dergleichen vorzugsweise auf Handlungen und/oder Prozesse und/oder Verar beitungsschritte, die Daten verändern und/oder erzeugen und/oder die Daten in andere Daten überführen, wobei die Da ten insbesondere als physikalische Größen dargestellt werden oder vorliegen können, beispielsweise als elektrische Impul se. Insbesondere sollte der Ausdruck "Computer" möglichst breit ausgelegt werden, um insbesondere alle elektronischen Geräte mit Datenverarbeitungseigenschaften abzudecken. Compu ter können somit beispielsweise Personal Computer, Server, speicherprogrammierbare Steuerungen (SPS) , Handheld-Computer- Systeme, Pocket-PC-Geräte, Mobilfunkgeräte und andere Kommu nikationsgeräte, die rechnergestützt Daten verarbeiten kön- nen, Prozessoren und andere elektronische Geräte zur Daten verarbeitung sein.
Unter „rechnergestützt" kann im Zusammenhang mit der Erfin dung beispielsweise eine Implementierung des Verfahrens ver standen werden, bei dem insbesondere ein Prozessor mindestens einen Verfahrensschritt des Verfahrens ausführt. Beispiels weise ist unter „rechnergestützt" auch „computerimplemen tiert" zu verstehen.
Unter einem Prozessor kann im Zusammenhang mit der Erfindung beispielsweise eine Maschine oder eine elektronische Schal tung verstanden werden. Bei einem Prozessor kann es sich ins besondere um einen Hauptprozessor (engl. Central Processing Unit, CPU) , einen Mikroprozessor oder einen Mikrokontroller, beispielsweise eine anwendungsspezifische integrierte Schal tung oder einen digitalen Signalprozessor, möglicherweise in Kombination mit einer Speichereinheit zum Speichern von Pro grammbefehlen, etc. handeln. Bei einem Prozessor kann es sich beispielsweise auch um einen IC (integrierter Schaltkreis, engl. Integrated Circuit), insbesondere einen FPGA (engl. Field Programmable Gate Array) oder einen ASIC (anwendungs spezifische integrierte Schaltung, engl. Application-Specific Integrated Circuit) , oder einen DSP (Digitaler Signal
prozessor, engl. Digital Signal Processor) oder einen Grafik prozessor GPU (Graphic Processing Unit) handeln. Auch kann unter einem Prozessor ein virtualisierter Prozessor, eine virtuelle Maschine oder eine Soft-CPU verstanden werden. Es kann sich beispielsweise auch um einen programmierbaren Pro zessor handeln, der mit Konfigurationsschritten zur Ausfüh rung des genannten erfindungsgemäßen Verfahrens ausgerüstet wird oder mit Konfigurationsschritten derart konfiguriert ist, dass der programmierbare Prozessor die erfindungsgemäßen Merkmale des Verfahrens, der Komponente, der Module, oder an derer Aspekte und/oder Teilaspekte der Erfindung realisiert.
Unter einer „Speichereinheit" oder „Speichermodul" und der gleichen kann im Zusammenhang mit der Erfindung beispielswei- se ein flüchtiger Speicher in Form von Arbeitsspeicher (engl. Random-Access Memory, RAM) oder ein dauerhafter Speicher wie eine Festplatte oder ein Datenträger verstanden werden.
Unter einem „Modul" kann im Zusammenhang mit der Erfindung beispielsweise ein Prozessor und/oder eine Speichereinheit zum Speichern von Programmbefehlen verstanden werden. Bei spielsweise ist der Prozessor speziell dazu eingerichtet, die Programmbefehle derart auszuführen, damit der Prozessor Funk tionen ausführt, um das erfindungsgemäße Verfahren oder einen Schritt des erfindungsgemäßen Verfahrens zu implementieren oder realisieren. Ein Modul kann beispielsweise auch ein Kno ten des verteilten Datenbanksystems sein, der beispielsweise die spezifischen Funktionen/Merkmale eines entsprechenden Mo duls realisiert. Die jeweiligen Module können beispielsweise auch als separate bzw. eigenständige Module ausgebildet sein. Hierzu können die entsprechenden Module beispielsweise weite re Elemente umfassen. Diese Elemente sind beispielsweise eine oder mehrere Schnittstellen (z. B. Datenbankschnittstellen, Kommunikationsschnittstellen - z. B. Netzwerkschnittstelle, WLAN-Schnittstelle) und/oder eine Evaluierungseinheit (z. B. ein Prozessor) und/oder eine Speichereinheit. Mittels der Schnittstellen können beispielsweise Daten ausgetauscht (z.
B. empfangen, übermittelt, gesendet oder bereitgestellt wer den) . Mittels der Evaluierungseinheit können Daten beispiels weise rechnergestützt und/oder automatisiert verglichen, überprüft, verarbeitet, zugeordnet oder berechnet werden. Mittels der Speichereinheit können Daten beispielsweise rech nergestützt und/oder automatisiert gespeichert, abgerufen o- der bereitgestellt werden.
Unter „umfassen", insbesondere in Bezug auf Daten und/oder Informationen, kann im Zusammenhang mit der Erfindung bei spielsweise ein (rechnergestütztes) Speichern einer entspre chenden Information bzw. eines entsprechenden Datums in einer Datenstruktur/Datensatz (die z. B. wiederum in einer Spei chereinheit gespeichert ist) verstanden werden. Unter „zuordnen", insbesondere in Bezug auf Daten und/oder Informationen, kann im Zusammenhang mit der Erfindung bei spielsweise eine rechnergestützte Zuordnung von Daten
und/oder Informationen verstanden werden. Beispielsweise wird einem ersten Datum hierzu mittels einer Speicheradresse oder eines eindeutigen Identifizierers (engl, unique identifier (UID) ) ein zweites Datum zugeordnet, in dem z. B. das erste Datum zusammen mit der Speicheradresse oder des eindeutigen Identifizierers des zweiten Datums in einem Datensatz gespei chert wird.
Unter „bereitstellen" , insbesondere in Bezug auf Daten und/oder Informationen, kann im Zusammenhang mit der Erfin dung beispielsweise ein rechnergestütztes Bereitstellen ver standen werden. Das Bereitstellen erfolgt beispielsweise über eine Schnittstelle (z. B. eine Datenbankschnittstelle, eine Netzwerkschnittstelle, eine Schnittstelle zu einer Speicher einheit) . Über diese Schnittstelle können beispielsweise beim Bereitstellen entsprechende Daten und/oder Informationen übermittelt und/oder gesendet und/oder abgerufen und/oder empfangen werden.
Unter „bereitstellen" kann im Zusammenhang mit der Erfindung beispielsweise auch ein Laden oder ein Speichern, beispiels weise einer Transaktion mit entsprechenden Daten verstanden werden. Dies kann beispielsweise auf oder von einem Speicher modul erfolgen. Unter „Bereitstellen" kann beispielsweise auch ein Übertragen (oder ein Senden oder ein Übermitteln) von entsprechenden Daten von einem Knoten zu einem anderen Knoten der Blockkette oder des verteilten Datenbanksystems (bzw. deren Infrastruktur) oder der Netzwerk-Applikation ver standen werden.
Unter einer „Prüfsumme", beispielsweise eine Datenblockprüf- summe, eine Datenprüfsumme, eine Knotenprüfsumme, eine Trans aktionsprüfsumme, eine Verkettungsprüfsumme oder dergleichen, kann im Zusammenhang mit der Erfindung beispielsweise eine kryptographische Prüfsumme oder kryptographischer Hash bzw. Hashwert verstanden werden, die insbesondere mittels einer kryptographischen Hashfunktion über einen Datensatz und/oder Daten und/oder eine oder mehrere der Transaktionen und/oder einem Teilbereich eines Datenblocks (z. B. der Block-Header eines Blocks einer Blockkette oder Datenblock-Header eines Datenblocks des verteilten Datenbanksystems (oder der Netz werk-Applikation) oder nur einem Teil der Transaktionen ei nes Datenblocks) gebildet oder berechnet werden. Bei einer Prüfsumme kann es sich insbesondere um eine Prüfsumme/n oder Hashwert/e eines Hash-Baumes (z. B. Merkle Baum, Patricia- Baum) handeln. Weiterhin kann darunter insbesondere auch eine digitale Signatur oder ein kryptographischer Nachrichten- authentisierungscode verstanden werden. Mittels der Prüfsum men kann beispielsweise auf unterschiedlichen Ebenen des Da tenbanksystems ein kryptographischer
Schutz/Manipulationsschutz für die Transaktionen und die da rin gespeicherten Daten (sätze) realisiert werden. Ist bei spielsweise eine hohe Sicherheit gefordert, werden beispiels weise die Prüfsummen auf Transaktionsebene erzeugt und über prüft. Ist eine weniger hohe Sicherheit gefordert, werden beispielsweise die Prüfsummen auf Blockebene (z. B. über den ganzen Datenblock oder nur über einen Teil des Datenblocks und/oder einen Teil der Transkationen) erzeugt und überprüft.
Unter einer „Datenblockprüfsumme" kann im Zusammenhang mit der Erfindung eine Prüfsumme verstanden werden, die bei spielsweise über einen Teil oder alle Transaktionen eines Da tenblocks berechnet wird. Ein Knoten kann dann beispielsweise die Integrität/Authentizität des entsprechenden Teils eines Datenblocks mittels der Datenblockprüfsumme prü- fen/feststellen . Zusätzlich oder alternativ kann die Daten blockprüfsumme insbesondere auch über Transaktionen eines vorhergehenden Datenblocks/Vorgänger-Datenblocks des Daten blocks gebildet worden sein. Die Datenblockprüfsumme kann da bei insbesondere auch mittels eines Hash-Baumes, beispiels weise einem Merkle Baum [1] oder einem Patricia-Baum, reali siert werden, wobei die Datenblockprüfsumme insbesondere die Wurzel-Prüfsumme des Merkle-Baumes bzw. eines Patricia-Baumes bzw. eines binären Hashbaumes ist. Insbesondere werden Trans aktionen mittels weiterer Prüfsummen aus dem Merkle-Baum bzw. Patricia-Baum abgesichert (z. B. unter Verwendung der Trans aktionsprüfsummen) , wobei insbesondere die weiteren Prüfsum men Blätter im Merkle-Baum bzw. Patricia-Baum sind. Die Da tenblockprüfsumme kann damit beispielsweise die Transaktionen absichern, indem die Wurzel-Prüfsumme aus den weiteren Prüf summen gebildet wird. Die Datenblockprüfsumme kann insbeson dere für Transaktionen eines bestimmten Datenblocks der Da tenblöcke berechnet werden. Insbesondere kann eine solche Da tenblockprüfsumme in einen nachfolgenden Datenblock des be stimmten Datenblocks eingehen, um diesen nachfolgenden Daten block beispielsweise mit seinen vorhergehenden Datenblöcken zu verketten und insbesondere damit eine Integrität des ver teilten Datenbanksystems (oder der Netzwerk-Applikation) prüfbar zu machen. Hierdurch kann die Datenblockprüfsumme beispielsweise die Funktion der Verkettungsprüfsumme überneh men oder in die Verkettungsprüfsumme eingehen. Der Header ei nes Datenblocks (z. B. eines neuen Datenblocks oder des Da tenblocks für den die Datenblockprüfsumme gebildet wurde) kann beispielsweise die Datenblockprüfsumme umfassen.
Unter „Transaktionsprüfsumme" kann im Zusammenhang mit der Erfindung eine Prüfsumme verstanden werden, die insbesondere über eine Transaktion eines Datenblocks gebildet wird. Zu sätzlich kann beispielsweise eine Berechnung einer Daten blockprüfsumme für einen entsprechenden Datenblock beschleu nigt werden, da hierfür beispielsweise bereits berechnete Transaktionsprüfsummen gleich als Blätter z. B. eines Merkle- Baumes verwendet werden können.
Unter einer „Verkettungsprüfsumme" kann im Zusammenhang mit der Erfindung eine Prüfsumme verstanden werden, die insbeson dere einen jeweiligen Datenblock des verteilten Datenbanksys tems (oder der Netzwerk-Applikation) den vorhergehenden Da tenblock des verteilten Datenbanksystems (oder der Netzwerk- Applikation) angibt bzw. referenziert (in der Fachliteratur insbesondere häufig als „previous block hash" bezeichnet) [1] . Hierfür wird insbesondere für den entsprechenden vorher gehenden Datenblock eine entsprechende Verkettungsprüfsumme gebildet. Als Verkettungsprüfsumme kann beispielsweise eine Transaktionsprüfsumme oder die Datenblockprüfsumme eines Da tenblocks (also ein vorhandener Datenblock des verteilten Da tenbanksystems oder der Netzwerk-Applikation) verwendet wer den, um einen neuen Datenblock mit einem (vorhandenen) Daten block des verteilten Datenbanksystems (oder der Netzwerk- Applikation) zu verketten. Es ist beispielsweise aber auch möglich, dass eine Prüfsumme über einen Header des vorherge henden Datenblocks oder über den gesamten vorhergehenden Da tenblock gebildet wird und als Verkettungsprüfsumme verwendet wird. Dies kann beispielsweise auch für mehrere oder alle vorhergehenden Datenblöcke berechnet werden. Es ist bei spielsweise auch realisierbar, dass über den Header eines Da tenblocks und der Datenblockprüfsumme die Verkettungsprüfsum me gebildet wird. Ein jeweiliger Datenblock des verteilten Datenbanksystems umfasst jedoch vorzugsweise jeweils eine Verkettungsprüfsumme, die für einen vorhergehenden Daten block, insbesondere noch bevorzugter den direkt vorhergehen den Datenblock, des jeweiligen Datenblockes berechnet wurde bzw. sich auf diesen bezieht. Es ist beispielsweise auch mög lich, dass eine entsprechende Verkettungsprüfsumme auch nur über einen Teil des entsprechenden Datenblocks (z. B. vorher gehenden Datenblock) gebildet wird. Hierdurch kann beispiels weise ein Datenblock realisiert werden, der einen integri- tätsgeschützten Teil und einen ungeschützten Teil umfasst. Damit ließe sich beispielsweise ein Datenblock realisieren, dessen integritätsgeschützter Teil unveränderlich ist und dessen ungeschützter Teil auch noch später verändert werden kann. Unter integritätsgeschützt ist dabei insbesondere zu verstehen, dass eine Veränderung von integritätsgeschützten Daten mittels einer Prüfsumme feststellbar ist. Wie bereits erläutert kann z. B. anstelle des verteilten Datenbanksystems auf die gleiche Weise eine Netzwerk-Applikation verwendet werden . Die Daten, die beispielsweise in einer Transkation eines Da tenblocks gespeichert werden, können insbesondere auf unter schiedliche Weise bereitgestellt werden. Anstelle der Daten, z. B. Nutzerdaten wie Messdaten oder Da
ten/Eigentumsverhältnisse zu Assets, kann beispielsweise eine Transaktion eines Datenblocks nur die Prüfsumme für diese Da ten umfassen. Die entsprechende Prüfsumme kann dabei auf un terschiedliche Weise realisiert werden. Dies kann z. B. eine entsprechende Datenblockprüfsumme eines Datenblocks (mit den entsprechenden Daten) einer anderen Datenbank oder des ver teilten Datenbanksystems oder der Netzwerk-Applikation sein, eine Transaktionsprüfsumme eines Datenblocks mit den entspre chenden Daten (des verteilten Datenbanksystems oder einer an deren Datenbank) oder eine Datenprüfsumme, die über die Daten gebildet wurde.
Zusätzlich kann die entsprechende Transkation noch einen Ver weis oder eine Angabe zu einem Speicherort (z. B. eine Adres se eines Fileservers und Angaben, wo die entsprechenden Daten auf dem Fileserver zu finden sind; oder eine Adresse einer anderen verteilten Datenbank, welche die Daten umfasst) um fassen. Die entsprechenden Daten könnten dann beispielsweise auch in einer weiteren Transaktion eines weiteren Datenblocks des verteilten Datenbanksystems (oder der Netzwerk- Applikation) bereitgestellt werden (z. B. wenn die entspre chenden Daten und die zugehörigen Prüfsummen in unterschied lichen Datenblöcken umfasst sind) . Es ist beispielsweise aber auch denkbar, dass diese Daten über einen anderen Kommunika tionskanal (z. B. über eine andere Datenbank und/oder einen kryptographisch gesicherten Kommunikationskanal) bereitge stellt werden.
Auch kann beispielsweise zusätzlich zu der Prüfsumme ein Zu- satzdatensatz (z. B. ein Verweis oder eine Angabe zu einem Speicherort) in den entsprechenden Transaktionen abgelegt sein, der insbesondere einen Speicherort angibt, wo die Daten abgerufen werden können. Das ist insbesondere dahingehend vorteilhaft, um eine Datengröße der Blockkette oder des ver- teilten Datenbanksystems (oder der Netzwerk-Applikation) mög lichst gering zu halten.
Unter „sicherheitsgeschützt" kann im Zusammenhang mit der Er findung beispielsweise ein Schutz verstanden werden, der ins besondere durch ein kryptographisches Verfahren realisiert wird. Beispielsweise kann dies durch eine Nutzung des ver teilten Datenbanksystems (oder der Netzwerk-Applikation) für das Bereitstellen oder Übertragen oder Senden von entspre chenden Daten/Transaktionen realisiert werden. Dies wird vor zugsweise durch eine Kombination der verschiedenen (krypto- graphischen) Prüfsummen erreicht, indem diese insbesondere synergetisch Zusammenwirken, um beispielsweise die Sicherheit bzw. die kryptographische Sicherheit für die Daten der Trans aktionen zu verbessern. Mit anderen Worten kann insbesondere unter „sicherheitsgeschützt" im Zusammenhang mit der Erfin dung auch „kryptographisch geschützt" und/oder „manipulati onsgeschützt" verstanden werden, wobei „manipulationsge schützt" auch als „integritätsgeschützt" bezeichnet werden kann .
Unter „Verketten der/von Datenblöcken eines verteilten Daten banksystems (oder der Netzwerk-Applikation)" kann im Zusam menhang mit der Erfindung beispielsweise verstanden werden, dass Datenblöcke jeweils eine Information (z. B. Verkettungs prüfsumme) umfassen, die auf einen anderen Datenblock oder mehrere andere Datenblöcke des verteilten Datenbanksystems (oder der Netzwerk-Applikation) verweisen bzw. diese referen- zieren [1] [4] [5] .
Unter „Einfügen in das verteilte Datenbanksystem (oder der Netzwerk-Applikation) " und dergleichen kann im Zusammenhang mit der Erfindung beispielsweise verstanden werden, dass ins besondere eine Transaktion bzw. die Transaktionen oder ein Datenblock mit seinen Transaktionen an einen oder mehrere Knoten eines verteilten Datenbanksystems (oder der Netzwerk- Applikation) übermittelt wird. Werden diese Transaktionen beispielsweise erfolgreich validiert (z. B. durch den/die Knoten) , werden diese Transaktionen insbesondere als neuer Datenblock mit mindestens einem vorhandenen Datenblock des verteilten Datenbanksystems (oder der Netzwerk-Applikation) verkettet [1] [4] [5] . Hierzu werden die entsprechenden Trans aktionen beispielsweise in einem neuen Datenblock gespei chert. Insbesondere kann dieses Validieren und/oder Verketten durch einen vertrauenswürdigen Knoten (z. B. einen Mining No- de, einen Blockketten-Orakel oder eine Blockketten-Plattform) erfolgen. Insbesondere kann dabei unter einer Blockketten- Plattform eine Blockkette als Dienst (engl. Blockkette als Service) verstanden werden, wie dies insbesondere durch
Microsoft oder IBM vorgeschlagen wird. Insbesondere können ein vertrauenswürdiger Knoten und/oder ein Knoten jeweils ei ne Knoten-Prüfsumme (z. B. eine digitale Signatur) in einem Datenblock hinterlegen (z. B. in denen von ihnen validierten und erzeugten Datenblock, der dann verkettet wird) , um insbe sondere eine Identifizierbarkeit des Erstellers des Datenblo ckes zu ermöglichen und/oder eine Identifizierbarkeit des Knotens zu ermöglichen. Dabei gibt diese Knoten-Prüfsumme an, welcher Knoten beispielsweise den entsprechenden Datenblock mit mindestens einem anderen Datenblock des verteilten Daten banksystems (oder der Netzwerk-Applikation) verkettet hat.
Unter „Transaktion" bzw. „Transaktionen" können im Zusammen hang mit der Erfindung beispielsweise ein Smart-Contract [4] [5], eine Datenstruktur oder ein Transaktionsdatensatz ver standen werden, der insbesondere jeweils eine der Transaktio nen oder mehrere Transaktionen umfasst. Unter „Transaktion" bzw. „Transaktionen" können im Zusammenhang mit der Erfindung beispielsweise auch die Daten einer Transaktion eines Daten blocks einer Bockkette (engl. Blockchain) verstanden werden. Eine Transaktion kann insbesondere einen Programmcode umfas sen, der beispielsweise einen Smart Contract realisiert. Bei spielsweise können im Zusammenhang mit der Erfindung unter Transaktion auch eine Steuertransaktionen und/oder Bestäti gungstransaktion verstanden werden. Alternativ kann eine Transaktion beispielsweise eine Datenstruktur sein, die Daten speichert (z. B. die Steuerbefehle und/oder Vertragsdaten und/oder andere Daten wie Videodaten, Nutzerdaten, Messdaten etc.) . Eine „Transaktion" kann im Zusammenhang mit der Erfin dung beispielsweise auch eine Nachricht oder eine Kommunika tionsnachricht sein bzw. als ein solche bezeichnet werden. Entsprecht ist beispielsweise eine Nachricht eine Transakti on, wobei die Nachricht beispielsweise Steuerbefehle zum An steuern der Geräte umfasst und/oder auch Voraussetzungen (z. B. vorgegebene Anforderungen) für das Ausführen der Steuerbe fehle umfasst.
Insbesondere ist unter „Speichern von Transaktionen in Daten blöcken", „Speichern von Transaktionen" und dergleichen ein direktes Speichern oder indirektes Speichern zu verstehen. Unter einem direkten Speichern kann dabei beispielsweise ver standen werden, dass der entsprechende Datenblock (des ver teilten Datenbanksystems oder der Netzwerk-Applikation) oder die entsprechende Transaktion des verteilten Datenbanksystems oder der Netzwerk-Applikation) die jeweiligen Daten umfasst. Unter einem indirekten Speichern kann dabei beispielsweise verstanden werden, dass der entsprechende Datenblock oder die entsprechende Transaktion eine Prüfsumme und optional einen Zusatzdatensatz (z. B. einen Verweis oder eine Angabe zu ei nem Speicherort) für entsprechende Daten umfasst und die ent sprechenden Daten somit nicht direkt in dem Datenblock (oder der Transaktion) gespeichert sind (also stattdessen nur eine Prüfsumme für diese Daten) . Insbesondere können beim Spei chern von Transaktionen in Datenblöcken diese Prüfsummen bei spielsweise validiert werden, so wie dies beispielsweise un ter „Einfügen in das verteilte Datenbanksystem (oder in die Netzwerk-Applikation" erläutert ist.
Unter einem „Programmcode" (z. B. ein Smart-Contract) kann im Zusammenhang mit der Erfindung beispielsweise ein Programmbe fehl oder mehrere Programmbefehle verstanden werden, die ins besondere in einer oder mehreren Transaktionen gespeichert sind. Der Programmcode ist insbesondere ausführbar und wird beispielsweise durch das verteilte Datenbanksystem (oder durch die Netzwerk-Applikation) ausgeführt. Dies kann bei- spielsweise mittels einer Ausführungsumgebung (z. B. einer virtuellen Maschine) realisiert werden, wobei die Ausfüh rungsumgebung bzw. der Programmcode vorzugsweise Turing- vollständig sind. Der Programmcode wird vorzugsweise durch die Infrastruktur des verteilten Datenbanksystems (oder der Netzwerk-Applikation) ausgeführt [4] [5] . Dabei wird bei spielsweise eine virtuelle Maschine durch die Infrastruktur des verteilten Datenbanksystems (oder der Netzwerk- Applikation) realisiert.
Unter einem „Smart Contract" kann im Zusammenhang mit der Er findung beispielsweise ein ausführbarer Programmcode verstan den werden [4] [5] (siehe insbesondere Definition „Programm code") . Der Smart Contract ist vorzugsweise in einer Transak tion eines verteilten Datenbanksystems (z. B. eine Blockket te) oder einer Netzwerk-Applikation gespeichert, beispiels weise in einem Datenblock des verteilten Datenbanksystems (o- der der Netzwerk-Applikation) . Beispielsweise kann der Smart Contract auf die gleiche Weise ausgeführt werden, wie dies bei der Definition von „Programmcode", insbesondere im Zusam menhang mit der Erfindung, erläutert ist.
Unter „Smart-Contract-Prozess" bzw. ein „Smart-Contract" kann im Zusammenhang mit der Erfindung insbesondere auch ein Aus führen eines Programmcodes bzw. eines Smart-Contracts in ei nem Prozess durch das verteilte Datenbanksystem bzw. deren Infrastruktur (oder durch die Netzwerkapplikation und/oder der entsprechenden Infrastruktur der Netzwerkapplikation) verstanden werden.
Unter „Proof-of-Work-Nachweis" kann im Zusammenhang mit der Erfindung beispielsweise ein Lösen einer rechenintensiven Aufgabe verstanden werden, die insbesondere abhängig vom Da- tenblock-Inhalt/Inhalt einer bestimmten Transaktion zu lösen ist [1] [4] [5] . Eine solche rechenintensive Aufgabe wird bei spielsweise auch als kryptographisches Puzzle bezeichnet. Unter einer „Netzwerk-Applikation", kann im Zusammenhang mit der Erfindung beispielsweise eine dezentral verteilte Daten bank, ein verteiltes Datenbanksystem, eine verteilte Daten bank, eine Peer-to-Peer Applikation, ein verteiltes Speicher verwaltungssystem, eine Blockkette (engl. Blockchain) , ein distributed Ledger, ein verteiltes Speichersystem, ein dis- tributed ledger technology (DLT) based System (DLTS) , ein revisionssicheres Datenbanksystem, eine Cloud, ein Cloud- Service, eine Blockkette in einer Cloud oder eine Peer-to- Peer Datenbank verstanden werden. Beispielsweise kann eine Netzwerk-Applikation (oder auch als Netzwerkapplikation be zeichnet) ein verteiltes Datenbanksystem sein, das z. B. mit tels einer Blockkette oder einem distributed ledger reali siert ist. Auch können beispielsweise unterschiedliche Imple mentierungen einer Blockkette oder eines DLTS verwendet wer den, wie z. B. eine Blockkette oder ein DLTS, die mittels ei nes Directed Acylic Graph (DAG) , eines kryptographischen Puz zles, einem Hashgraph oder einer Kombination aus den genann ten Implementierungsvarianten [6] [7] umgesetzt ist. Auch kön nen beispielsweise unterschiedliche Konsensusverfahren (engl, consensus algorithms) implementiert werden. Dies kann bei spielsweise ein Konsensusverfahren mittels eines kryptogra phischen Puzzles, Gossip about Gossip, Virtual Voting oder eine Kombination der genannten Verfahren sein (z. B. Gossip about Gossip kombiniert mit Virtual Voting) [6] [7] . Wird bei spielsweise eine Blockkette verwendet, so kann diese insbe sondere mittels einer Bitcoin-basierten Realisierung oder ei ner Ethereum-basierten Realisierung umgesetzt werden
[1] [4] [5] . Unter einem „verteilten Datenbanksystem" oder ei ner „Netzwerk-Applikation" kann beispielsweise auch ein ver teiltes Datenbanksystem oder eine Netzwerk-Applikation ver standen werden, von dem/der zumindest ein Teil seiner Knoten und/oder Geräte und/oder Infrastruktur durch eine Cloud rea lisiert sind. Beispielsweise sind die entsprechenden Kompo nenten als Knoten/Geräte in der Cloud (z. B. als virtueller Knoten in einer virtuellen Maschine) realisiert. Dies kann beispielsweise mittels VM-Ware, Amazon Web Services oder Microsoft Azure erfolgen. Aufgrund der hohen Flexibilität der erläuterten Implementierungsvarianten, können insbesondere auch Teilaspekte der genannten Implementierungsvarianten mit einander kombiniert werden, indem z. B. ein Hashgraph als Blockkette verwendet wird, wobei die Blockkette selbst z. B. auch blocklos sein kann.
Wird beispielsweise ein Directed Acylic Graph (DAG) verwendet (z. B. IOTA oder Tangle) , sind insbesondere Transaktionen o- der Blöcke oder Knoten des Graphen über gerichtete Kanten miteinander verbunden. Azyklisch bedeutet dabei insbesondere, dass es keine gerichteten Schleifen im Graphen gibt.
Bei dem verteilten Datenbanksystem oder bei der Netzwerk- Applikation kann es sich beispielsweise um ein öffentliches verteiltes Datenbanksystem oder eine ein öffentliche Netz werk-Applikation (z. B. eine öffentliche Blockkette) oder ein geschlossenes (oder privates) verteiltes Datenbanksystem oder eine geschlossene Netzwerk-Applikation (z. B. eine private Blockkette) handeln.
Handelt es sich beispielsweise um ein öffentliches verteiltes Datenbanksystem oder eine öffentliche Netzwerk-Applikation, bedeutet dies, dass neue Knoten und/oder Geräte ohne Berech tigungsnachweise oder ohne Authentifizierung oder ohne Anmel deinformationen oder ohne Credentials dem verteilten Daten banksystem oder der Netzwerk-Applikation beitreten können bzw. von diesem akzeptiert werden. Insbesondere können in ei nem solchen Fall die Betreiber der Knoten und/oder Geräte anonym bleiben.
Handelt es sich bei dem verteilten Datenbanksystem oder der Netzwerk-Applikation beispielsweise um ein geschlossenes ver teiltes Datenbanksystem, benötigen neue Knoten und/oder Gerä te beispielsweise einen gültigen Berechtigungsnachweis und/oder gültige Authentifizierungsinformationen und/oder gültige Credentials und/oder gültige Anmeldeinformationen, um dem verteilten Datenbanksystem oder der Netzwerk-Applikation beitreten zu können bzw. von diesem akzeptiert zu werden. Bei einem verteilten Datenbanksystem oder bei der Netzwerk- Applikation kann es sich beispielsweise auch um ein verteil tes Kommunikationssystem zum Datenaustausch handeln. Dies kann beispielsweise ein Netzwerk oder ein Peer-to-Peer Netz werk sein.
Bei einem/dem verteilten Datenbanksystem kann es sich bei spielsweise auch um ein dezentrales verteiltes Datenbanksys tem und/oder ein dezentrales verteiltes Kommunikationssystem handeln .
Bei einer „Netzwerk-Applikation" kann es sich beispielsweise auch um eine Netzwerk-Applikationsinfrastruktur handeln oder die Netzwerk-Applikation umfasst eine entsprechende Netzwerk- Applikationsinfrastruktur. Diese Infrastruktur kann bei spielsweise Knoten und/oder Kommunikationsnetze und/oder Da tenschnittstelle und/oder weitere Komponenten umfassen, um die Netzwerk-Applikation zu realisieren oder auszuführen. Bei der Netzwerk-Applikation kann es sich z. B. um eine verteilte Netzwerk-Applikation (z. B. eine verteilte Peer-to-Peer Ap plikation oder ein verteiltes Datenbanksystem) handeln, die beispielsweise auf mehreren Knoten der Netzwerk- Applikationsinfrastruktur ausgeführt wird.
Unter einem „verteilten Datenbanksystem", das beispielsweise auch als verteilte Datenbank bezeichnet werden kann, kann im Zusammenhang mit der Erfindung beispielsweise eine dezentral verteilte Datenbank, eine Blockkette (engl. Blockchain) , ein distributed Ledger, ein verteiltes Speichersystem, ein dis- tributed ledger technology (DLT) based System (DLTS) , ein revisionssicheres Datenbanksystem, eine Cloud, ein Cloud- Service, eine Blockkette in einer Cloud oder eine Peer-to- Peer Datenbank verstanden werden. Auch können beispielsweise unterschiedliche Implementierungen einer Blockkette oder ei nes DLTS verwendet werden, wie z. B. eine Blockkette oder ein DLTS, die mittels eines Directed Acylic Graph (DAG) , eines kryptographischen Puzzles, einem Hashgraph oder eine Kombina- tion aus den genannten Implementierungsvarianten [6] [7] . Auch können beispielsweise unterschiedliche Konsensusverfahren (engl, consensus algorithms) implementiert werden. Dies kann beispielsweise ein Konsensusverfahren mittels eines krypto- graphischen Puzzles, Gossip about Gossip, Virtual Voting oder eine Kombination der genannten Verfahren sein (z. B. Gossip about Gossip kombiniert mit Virtual Voting) [6] [7] . Wird bei spielsweise eine Blockkette verwendet, so kann diese insbe sondere mittels einer Bitcoin-basierten Realisierung oder ei ner Ethereum-basierten Realisierung umgesetzt werden
[1] [4] [5] . Unter einem „verteilten Datenbanksystem" kann bei spielsweise auch ein verteiltes Datenbanksystem verstanden werden, von dem zumindest ein Teil seiner Knoten und/oder Ge räte und/oder Infrastruktur durch eine Cloud realisiert sind. Beispielsweise sind die entsprechenden Komponenten als Kno ten/Geräte in der Cloud (z. B. als virtueller Knoten in einer virtuellen Maschine) realisiert. Dies kann beispielsweise mittels VM-Ware, Amazon Web Services oder Microsoft Azure er folgen. Aufgrund der hohen Flexibilität der erläuterten Im plementierungsvarianten, können insbesondere auch Teilaspekte der genannten Implementierungsvarianten miteinander kombi niert werden, indem z. B. ein Hashgraph als Blockkette ver wendet wird, wobei die Blockkette selbst z. B. auch blocklos sein kann.
Wird beispielsweise ein Directed Acylic Graph (DAG) verwendet (z. B. IOTA oder Tangle) , sind insbesondere Transaktionen o- der Blöcke oder Knoten des Graphen miteinander über gerichte te Kanten miteinander verbunden. Dies bedeutet insbesondere, dass Kanten (vorzugsweise alle Kanten) die gleiche Richtung (vorzugsweise immer die gleiche Richtung) haben, ähnlich wie dies z. B. bei Zeit ist. Mit anderen Worten ist es insbeson dere nicht möglich rückwärts (also entgegen der gemeinsamen gleichen Richtung) die Transaktionen oder die Blöcke oder die Knoten des Graphen anzulaufen bzw. anzuspringen. Azyklisch bedeutet dabei insbesondere, dass es keine Schleifen bei ei nem Durchlaufen des Graphen gibt. Bei dem verteilten Datenbanksystem kann es sich beispielswei se um ein öffentliches verteiltes Datenbanksystem (z. B. eine öffentliche Blockkette) oder ein geschlossenes (oder priva tes) verteiltes Datenbanksystem (z. B. eine private Blockket te) handeln.
Handelt es sich beispielsweise um ein öffentliches verteiltes Datenbanksystem, bedeutet dies, dass neue Knoten und/oder Ge räte ohne Berechtigungsnachweise oder ohne Authentifizierung oder ohne Anmeldeinformationen oder ohne Credentials dem ver teilten Datenbanksystem beitreten können bzw. von diesem ak zeptiert werden. Insbesondere können in einem solchen Fall die Betreiber der Knoten und/oder Geräte anonym bleiben.
Handelt es sich bei dem verteilten Datenbanksystem beispiels weise um ein geschlossenes verteiltes Datenbanksystem, benö tigen neue Knoten und/oder Geräte beispielsweise einen gülti gen Berechtigungsnachweis und/oder gültige Authentifizie- rungsinformationen und/oder gültige Credentials und/oder gül tige Anmeldeinformationen, um dem verteilten Datenbanksystem beitreten zu können bzw. um von diesem akzeptiert zu werden.
Bei einem verteilten Datenbanksystem kann es sich beispiels weise auch um ein verteiltes Kommunikationssystem zum Daten austausch handeln. Dies kann beispielsweise ein Netzwerk oder ein Peer-2-Peer Netzwerk sein. Alternativ oder zusätzlich kann die Erfindung beispielsweise auch mittels einer Peer-2- Peer Applikation anstelle des verteilten Datenbanksystems re alisiert werden.
Unter „Datenblock", der insbesondere je nach Kontext und Rea lisierung auch als „Glied" oder „Block" bezeichnet sein kann, kann im Zusammenhang mit der Erfindung beispielsweise ein Da tenblock eines verteilten Datenbanksystems (z. B. eine Block kette oder eine Peer to Peer Datenbank) oder einer Netzwerk- Applikation verstanden werden, die insbesondere als Daten struktur realisiert ist und vorzugsweise jeweils eine der Transaktionen oder mehrere der Transaktionen umfasst. Bei ei- ner Implementierung kann beispielsweise die Datenbank (oder das Datenbanksystem) ein DLT basiertes System (DLTS) oder ei ne Blockkette sein und ein Datenblock ein Block der Blockket te oder des DLTS. Ein Datenblock kann beispielsweise Angaben zur Größe (Datengröße in Byte) des Datenblocks, einen Daten block-Header (engl. Blockheader), einen Transaktionszähler und eine oder mehrere Transaktionen umfassen [1] . Der Daten block-Header kann beispielsweise eine Version, eine Verket tungsprüfsumme, eine Datenblockprüfsumme, einen Zeitstempel, einen Proof-of-Work Nachweis und eine Nonce (Einmalwert, Zu fallswert oder Zähler, der für den Proof-of-Work Nachweis verwendet wird) umfassen [1] [4] [5] . Bei einem Datenblock kann es sich beispielsweise auch nur um einen bestimmten Speicher bereich oder Adressbereich der Gesamtdaten handeln, die in dem verteilten Datenbanksystem gespeichert sind. Damit lassen sich beispielsweise blocklose (engl, blockless) verteilte Da tenbanksysteme, wie z. B. die IoT Chain (ITC), IOTA, und Byteball, realisieren. Hierbei werden insbesondere die Funk tionalitäten der Blöcke einer Blockkette und der Transaktio nen miteinander derart kombiniert, dass z. B. die Transaktio nen selbst die Sequenz oder Kette von Transaktionen (des ver teilten Datenbanksystems) absichern (also insbesondere si cherheitsgeschützt gespeichert werden) . Hierzu können bei spielsweise mit einer Verkettungsprüfsumme die Transaktionen selbst miteinander verkettet werden, indem vorzugsweise eine separate Prüfsumme oder die Transaktionsprüfsumme einer oder mehrerer Transaktionen als Verkettungsprüfsumme dient, die beim Speichern einer neuen Transaktion in dem verteilten Da tenbanksystem in der entsprechenden neuen Transaktion mit ge speichert wird. In einer solchen Ausführungsform kann ein Da tenblock beispielsweise auch eine oder mehrere Transaktionen umfassen, wobei im einfachsten Fall beispielsweise ein Daten block einer Transaktion entspricht.
Unter „Nonce" kann im Zusammenhang mit der Erfindung bei spielsweise eine kryptographische Nonce verstanden werden (Abkürzung für: „used only once"[2] oder „number used on- ce"[3]). Insbesondere bezeichnet eine Nonce einzelne Zahlen- oder eine Buchstabenkombination, die vorzugsweise ein einzi ges Mal in dem jeweiligen Kontext (z. B. Transaktion, Daten übertragung) verwendet wird.
Unter „vorhergehende Datenblöcke eines (bestimmten) Datenblo ckes des verteilten Datenbanksystems" kann im Zusammenhang mit der Erfindung beispielsweise der Datenblock des verteil ten Datenbanksystems verstanden werden, der insbesondere ei nem (bestimmten) Datenblock direkt vorhergeht. Alternativ können unter „vorhergehender Datenblöcke eines (bestimmten) Datenblockes des verteilten Datenbanksystems" insbesondere auch alle Datenblöcke des verteilten Datenbanksystems ver standen werden, die dem bestimmten Datenblock vorhergehen. Hierdurch kann beispielsweise die Verkettungsprüfsumme oder die Transaktionsprüfsumme insbesondere nur über den dem be stimmten Datenblock direkt vorhergehenden Datenblock (bzw. deren Transaktionen) oder über alle dem ersten Datenblock vorhergehenden Datenblöcke (bzw. deren Transaktionen) gebil det werden.
Unter einem „Blockketten-Knoten" , „Knoten", „Knoten eines verteilten Datenbanksystems oder einer Netzwerk-Applikation" und dergleichen, können im Zusammenhang mit der Erfindung beispielsweise Geräte (z. B. Feldgeräte, Mobiltelefone), Rechner, Smart-Phones , Clients oder Teilnehmer verstanden werden, die Operationen (mit) dem verteilten Datenbanksystem (z. B. eine Blockkette) durchführen [1] [4] [5] . Solche Knoten können beispielsweise Transaktionen einer Netzwerk- Applikation oder eines verteilten Datenbanksystems bzw. deren Datenblöcke ausführen oder neue Datenblöcke mit neuen Trans aktionen in das verteilte Datenbanksystem (oder in die Netz werk-Applikation) mittels neuer Datenblöcke einfügen bzw. verketten. Insbesondere kann dieses Validieren und/oder Ver ketten durch einen vertrauenswürdigen Knoten (z. B. einen Mi ning Node) oder ausschließlich durch vertrauenswürdige Knoten erfolgen. Bei einem vertrauenswürdigen Knoten handelt es sich beispielsweise um einen Knoten, der über zusätzliche Sicher heitsmaßnahmen verfügt (z. B. Firewalls, Zugangsbeschränkun- gen zum Knoten oder ähnliches) , um eine Manipulation des Kno tens zu verhindern. Alternativ oder zusätzlich kann bei spielsweise ein vertrauenswürdiger Knoten beim Verketten ei nes neuen Datenblocks mit dem verteilten Datenbanksystem, ei ne Knotenprüfsumme (z. B. eine digitale Signatur oder ein Zertifikat) in dem neuen Datenblock speichern. Damit kann insbesondere ein Nachweis bereitgestellt werden, der angibt, dass der entsprechende Datenblock von einem bestimmten Knoten eingefügt wurde bzw. seine Herkunft angibt. Bei den Geräten (z. B. dem entsprechenden Gerät) handelt es sich beispiels weise um Geräte eines technischen Systems und/oder industri ellen Anlage und/oder eines Automatisierungsnetzes und/oder einer Fertigungsanlage, die insbesondere auch ein Knoten des verteilten Datenbanksystems (oder der Netzwerk-Applikation) sind. Dabei können die Geräte beispielsweise Feldgeräte sein oder Geräte im Internet der Dinge sein, die insbesondere auch ein Knoten des verteilten Datenbanksystems (oder der Netz werk-Applikation) sind. Knoten können beispielsweise auch zu mindest einen Prozessor umfassen, um z. B. ihre computerim plementierte Funktionalität auszuführen.
Unter einem „Blockketten-Orakel" und dergleichen können im Zusammenhang mit der Erfindung beispielsweise Knoten, Geräte oder Rechner verstanden werden, die z. B. über ein Sicher heitsmodul verfügen, das beispielsweise mittels Software- Schutzmechanismen (z. B. kryptographische Verfahren), mecha nische Schutzeinrichtungen (z. B. ein abschließbares Gehäuse) oder elektrische Schutzeinrichtungen verfügt (z. B. Tamper- Schutz oder ein Schutzsystem, das die Daten des Sicherheits moduls bei einer unzulässigen Nutzung/Behandlung des Block ketten-Orakel löscht umfasst) . Das Sicherheitsmodul kann da bei beispielsweise kryptographische Schlüssel umfassen, die für die Berechnung der Prüfsummen (z. B. Transaktionsprüfsum men oder Knotenprüfsummen) notwendig sind.
Unter einem „Rechner" oder einem „Gerät" kann im Zusammenhang mit der Erfindung beispielsweise ein Computer ( System) , ein Client, ein Smart-Phone, ein Gerät oder ein Server verstanden werden, die jeweils außerhalb der Blockkette angeordnet sind und kein Teil der Infrastruktur des verteilten Datenbanksys tems (oder der Netzwerk-Applikation) sind bzw. eine separate getrennte Infrastruktur bilden. Bei einem Gerät handelt es sich beispielsweise um ein Fertigungsgerät und/oder ein elektromechanisches Gerät und/oder ein elektronisches Gerät und/oder ein Gerät eines Automatisierungsnetzwerkes (z. B. für industrielle technische Anlagen, Fertigungsanlagen, Ener gie- bzw. Ressourcenverteilungsanlagen), diese Geräte sind insbesondere nicht in der Lage direkt mit dem verteilten Da tenbanksystem (direkt) oder der Netzwerk-Applikation zu kom munizieren .
Ein solches Gerät außerhalb des verteilten Datenbanksystems (oder der Netzwerk-Applikation) kann beispielsweise nicht auf die Daten des verteilten Datenbanksystems (oder der Netzwerk- Applikation) zugreifen, da das Gerät beispielsweise zu alt ist und weder über die notwendigen kryptographischen und/oder IT-Security-Fähigkeiten verfügt noch mit dem Datenformat des verteilten Datenbanksystems (oder der Netzwerk-Applikation) kompatibel ist.
Mit der Erfindung ist es insbesondere möglich eine dezentrale (blockkettenbasierte) Infrastruktur mit alten bzw. legacy Ge räten zu koppeln. Mit der Erfindung kann insbesondere eine Koppelung von solchen Altgeräten an eine neue blockkettenba sierten Infrastruktur erfolgen. Dies ist beispielsweise für Energieversorgungsnetze vorteilhaft, deren Steuerung auf eine Blockketten-Infrastruktur umgestellt wird, wobei jedoch nicht jedes einzelne Gerät des bestehenden Energieversorgungsnetzes ausgetauscht wird. Die Erfindung erlaubt es beispielsweise, dass z. B. mittels einer Blockkette Nachrichten (z. B. in Transaktionen) mit Steuerbefehlen an die einzelnen Geräte ge sendet werden, wobei die Empfangsvorrichtung kommunikativ zwischen den Geräten und dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) angeordnet ist und die Zuordnung und/oder Übermittlung der jeweiligen Nachrichten an ein (ent sprechendes) Gerät vornimmt. Insbesondere werden die entspre- chenden Nachrichteninhalte oder Daten auch in ein Datenformat konvertiert, das mit einem Gerät kompatibel ist. Auch können z. B. Daten oder ein Nachrichteninhalt kryptographisch über prüft werden und/oder ein kryptographischer Schutz entfernt werden (z. B. durch ein entschlüsseln des Nachrichteninhalts oder der Daten) .
Bei einer ersten Ausführungsform der Empfangsvorrichtung ruft die Empfangsvorrichtung einen Gerätezustand (z. B. Fehlerzu stand, Betriebszustand) von dem einer entsprechenden ersten Nachricht oder den entsprechenden Daten zugeordneten Gerät ab (z. B. mittels des Identifikationsmoduls oder der zweiten Kommunikationsschnittstelle) , wobei eine Übertragung an das zugeordnete Gerät abhängig von dem abgerufenen Gerätezustand erfolgt .
Die Empfangsvorrichtung ist dahingehend vorteilhaft, um ins besondere vor dem Übermitteln des Nachrichteninhalts oder der Daten an das Gerät zu überprüfen, ob z. B. das entsprechende Gerät eingeschaltet ist oder betriebsbereit ist. Damit kann insbesondere verhindert werden, Nachrichten an Geräte zu sen den, die sich in einem Fehlerzustand befinden. Wird bei spielsweise eine Nachricht nicht an ein entsprechend zugeord netes Gerät gesendet (z. B. weil dies entsprechend des Gerä tezustandes nicht möglich ist) , kann eine entsprechende Nach richt bzw. Transaktion, die diesen Gerätezustand (z. B. den Fehlerzustand) umfasst, an das verteilte Datenbanksystem (o- der die Netzwerk-Applikation) übermittelt werden bzw. von dem verteilten Datenbanksystem (oder die Netzwerk-Applikation) gespeichert werden.
Bei weiteren Ausführungsformen der Empfangsvorrichtung um fasst der Gerätezustand einen Datensatz über die verfügbaren Geräteressourcen und/oder aktuellen Geräteeigenschaften.
Bei weiteren Ausführungsformen der Empfangsvorrichtung er folgt eine Übertragung an das entsprechende Gerät, wenn vor gegebene Anforderungen der entsprechenden ersten Nachricht durch das zugeordnete Gerät erfüllt sind, wobei beispielswei se die Erfüllung der vorgegenen Anforderungen anhand des Ge rätezustandes überprüft wird.
Die Empfangsvorrichtung ist dahingehend vorteilhaft, um ins besondere zu überprüfen, ob eine entsprechende Nachricht überhaupt von einem Gerät verarbeitet werden kann. Umfasst eine entsprechende Nachricht beispielsweise Steuerbefehle um einen Generator oder ein Reservekraftwerk anzufahren bzw. zu steuern, kann beispielsweise in den Anforderungen vorgegeben sein, dass eine bestimmte Menge an Energie mindestens erzeugt werden soll. Alternativ (also in einem anderen Anwendungssze nario) kann durch die vorgegebenen Anforderungen eine be stimmte Fertigungspräzision oder Fertigungsdauer vorgegeben werden, die eingehalten werden soll. Diese Anforderungen kön nen beispielsweise von der Empfangsvorrichtung überprüft wer den, indem die entsprechenden verfügbaren Geräteressourcen und/oder der Gerätezustand und/oder die aktuellen Geräteei genschaften (z. B. ist das Gerät an dem richtigen Ort instal liert, um z. B. keine Datenschutzvorschriften zu verletzen; ist das Gerät bzw. die vom Gerät verarbeiteten Daten vor dem Zugriff Unbefugter geschützt - z. B. kryptographisch -, um insbesondere Firmen/Fertigungs-Know-How zu schützen) über prüft werden. Diese Überprüfung der vorgegebenen Anforderun gen, die z. B. einem entsprechenden Datensatz gespeichert sind, können z. B. von dem Identifikationsmodul, dem Konver tierungsmodul, der zweiten Kommunikationsschnittstelle (z. B. eine Netzwerkschnittstelle) oder einem Evaluierungsmodul der Empfangsvorrichtung, das vor der Kommunikationsschnittstelle (z. B. eine Netzwerkschnittstelle) eines Kommunikationsbusses der Empfangsvorrichtung angeordnet ist, durchgeführt werden.
Die vorgegebenen Anforderungen können beispielsweise auch vo rausgesetzte Steuerbefehle sein bzw. solche umfassen, die vo rausgesetzten Steuerbefehle geben beispielsweise vor, dass diese von einem der Geräte bzw. dem Gerät bereits ausgeführt sein sollen, bevor die entsprechenden Daten und/oder Nach richten bzw. Nachrichteninhalt (z. B. der konvertierte Nach- richteninhalt oder die konvertierten Daten) an die Geräte übermittelt werden. Alternativ oder zusätzlich können die vo rausgesetzten Steuerbefehle auch weitere Geräte betreffen, wobei die weiteren Geräte beispielsweise Geräte eines weite ren Automatisierungsnetzwerkes sind. Um z. B. zu überprüfen, ob die vorausgesetzten Steuerbefehle bereits ausgeführt sind, können beispielsweise entsprechende Nachrichten bzw. Transak tionen im verteilten Datenbanksystem (oder in der Netzwerk- Applikation) ausgelesen bzw. überprüft werden, die beispiels weise eine Ausführung der vorausgesetzten Steuerbefehle be stätigen. Diese entsprechenden Nachrichten bzw. Transaktionen können beispielsweise als Bestätigungstransaktionen bezeich net werden und werden von den entsprechenden Geräten bei spielsweise nach einer Ausführung der Vorausgesetzen Steuer befehle, z. B. mittels der Sendevorrichtung, in dem verteil ten Datenbanksystem (oder der Netzwerk-Applikation) gespei chert .
Bei weiteren Ausführungsformen der Empfangsvorrichtung um fasst die Empfangsvorrichtung ein Kryptographiemodul, wobei das Kryptographiemodul den Geräten zugeordnete kryptographi- sche Daten umfasst.
Bei weiteren Ausführungsformen der Empfangsvorrichtung über prüft und/oder entschlüsselt das Kryptographiemodul anhand der kryptographischen Daten zumindest einen Teil der Daten oder einen Teil des Nachrichteninhalts der entsprechenden ersten Nachricht für ein zugeordnetes Gerät, wobei beispiels weise für das Überprüfen und/oder das Entschlüsseln die ent sprechenden kryptographischen Daten anhand des zugeordneten Gerätes geladen werden.
Die Empfangsvorrichtung ist dahingehend vorteilhaft, um ins besondere die Nachrichten die an ein entsprechendes Gerät übermittelt werden sollen zu überprüfen. Hierzu kann der Nachrichtenersteller beispielsweise einen ersten kryptogra phischen Schlüssel erhalten haben, mit dem beispielsweise ei ne Prüfsumme (z. B. eine Transaktionsprüfsumme oder eine an- dere der genannten Prüfsummen) über die Daten oder die Nach richten bzw. den Nachrichteninhalt gebildet wurde. Alternativ kann mit diesem ersten kryptographischen Schlüssel beispiels weise auch der Nachrichteninhalt oder die Daten oder ein Teil der Daten verschlüsselt worden sein. Beispielsweise kann mit dem ersten kryptographischen Schlüssel (im Falle eines sym metrischen kryptographischen Verfahrens) oder einem zweiten kryptographischen Schlüssel, der dem ersten kryptographischen Schlüssel zugeordnet ist (z. B. bei einem asymmetrischen kryptographischen Verfahren bei dem z. B. der erste Schlüssel ein privater Schlüssel ist und der zweite Schlüssel ein öf fentlicher Schlüssel ist) , die Entschlüsselung oder Überprü fung des entsprechenden Nachrichteninhalts oder der Daten er folgen .
Die kryptographischen Daten (z. B. die kryptographischen Schlüssel) können beispielsweise anhand von gerätespezifi schen Daten spezifisch für ein Gerät erzeugt worden sein (z. B. eine UID des Gerätes, einer Zufallszahl, die durch das entsprechende Gerät erzeugt wurde, oder wurde anhand von für das Gerät charakteristischen Sensordaten berechnet - z. B. eine berechnete Charakteristik für ein Rauschsignal, das durch einen Sensor des Gerätes ermittelt wurde) . Alternativ oder zusätzlich sind die kryptographischen Daten eine Kombi nation aus gerätespezifischen Daten und empfangsvorrichtungs spezifischer Daten (z. B. eine UID der Empfangsvorrichtung, einer Zufallszahl, die durch die Empfangsvorrichtung erzeugt wurde, oder anhand von für die Empfangsvorrichtung Sensorda ten berechnet wurde - z. B. eine berechnete Charakteristik für ein Rauschsignal, das durch einen Sensor der Empfangsvor richtung ermittelt wurde) . Beispielsweise ist es auch mög lich, dass mittels der gerätespezifischen Daten und/oder emp fangsvorrichtungsspezifischer Daten für das entsprechende Ge rät die kryptographischen Daten reproduzierbar ermittelt wer den oder mittels dieser Daten ein kryptographischer Schutz (z. B. eine Verschlüsselung), mit dem die entsprechenden kryptographischen Daten eines Gerätes geschützt sind, aufge hoben (z. B. entschlüsselt werden) und/oder überprüft werden (z. B. eine digitale Signatur überprüft wird) . Die gerätespe zifischen Daten können beispielsweis beim Abrufen des Geräte zustandes für ein Gerät mit abgerufen werden. Bei den geräte spezifischen Daten und/oder empfangsvorrichtungsspezifischer Daten handelt es sich vorzugsweise um Daten, die nur schwer gefälscht werden können, z. B. eine Charakteristik eines Rauschsignals (das z. B. von einem Sensor oder einem Manipu- lationsschutzmodul erfasst wird) , das bei einer Manipulation des Gerätes derart verändert wird, dass sich die Charakteris tik derart verändert, dass die kryptographischen Daten ungül tig werden oder auf diese nicht mehr zugegriffen werden kann. Die gerätespezifischen Daten können auch mittels eines Chal- lenge-Response-Verfahren ermittelt bzw. ausgetauscht werden, indem beispielsweise das Verfahren auf Geräteseite und auf Empfangsvorrichtungsseite mit entsprechenden Initialwerten konfiguriert wird (z. B. indem in einem geschützten Speicher des Gerätes bzw. der Empfangsvorrichtung entsprechende Initi alwerte vorkonfiguriert sind bzw. diese Initialwerte durch den geschützten Speicher berechnet und/oder bereitgestellt werden) und entsprechende gerätespezifischen Daten (z. B. ein kryptographischer Schlüssel oder ein Teil eines kryptographi schen Schlüssels) von der Empfangsvorrichtung abgerufen wer den können.
Bei weiteren Ausführungsformen der Empfangsvorrichtung ist das Konvertierungsmodul dazu eingerichtet anhand des Gerätes zu überprüfen, welche Daten (z. B. welche Datenteile und/oder welcher Teil der Daten und/oder alle Daten) der Daten von dem (zugeordneten) Gerät verarbeitet werden können.
Das Ergebnis dieser Prüfung wird beispielsweise im Konvertie rungsprüfergebnis gespeichert, wobei beispielsweise das
Konvertierungsprüfergebnis angibt, welche Teile der Daten o- der ob Daten als solche für das zugeordnete Gerät zu konver tieren sind. Mit anderen Worten umfasst das Konvertierungs prüfergebnis z. B. gerätespezifische Konvertierungsanweisun gen für die Daten, um die Daten beispielsweise spezifisch für das zugeordnete Gerät zu konvertieren, damit das zugeordnete Gerät z. B. die entsprechenden Daten (z. B. auch die zu kon vertierenden Teile der Daten) verarbeiten kann. Um beispiels weise festzustellen, ob die Daten von dem zugeordneten Gerät ausgeführt werden können, können für die Prüfung die Gerä teeigenschaften und/oder die aktuellen Geräteeigenschaften und/oder Geräteinformationen des zugeordneten Gerätes berück sichtigt werden. Die Geräteinformationen können beispielswei se auch die entsprechenden Geräteeigenschaften (z. B. aktuel le Geräteeigenschaften) umfassen.
Beispielsweise können die Daten in einem Text-Format, XML- Format oder JSON-Format vorliegen, das zugeordnete Gerät kann jedoch entsprechend seiner Geräteeigenschaften (nur) ein be stimmtes binäres Datenformat verarbeiten. Bei dem Prüfen wird dies dann z. B. festgestellt und das Konvertierungsprüfergeb nis umfasst dann beispielsweise Angaben darüber, dass die Da ten für eine Verarbeitung durch das Gerät konvertiert werden müssen und/oder kann zusätzlich beispielsweise Anweisungen umfassen, wie die Daten zu konvertieren sind. In den Daten können beispielsweise auch Datentypen verwendet werden, die mit dem zugeordneten Gerät inkompatibel sind. Dies können beispielsweise Double-Datentypen, Big-Integer-Datentypen oder Datumsformate sein, die das zugeordnete Gerät nicht verarbei ten kann. Auch hierfür kann dann z. B. eine entsprechende Konvertierung vorgenommen werden, wie dies bereits für andere Beispiele gezeigt wurde.
Inkompatibel bedeutet beispielsweise, dass entsprechende Da ten (also z. B. das Datenformat oder die Datenformte der Da ten) nicht verarbeitet werden können oder nicht unterstützt werden (z. B. von der Netzwerkapplikation oder dem verteilten Datenbanksystem) . Kompatibel bedeutet beispielsweise, dass entsprechende Daten (also z. B. das Datenformat oder die Da tenformte der Daten) verarbeitet werden können oder unter stützt werden (z. B. von der Netzwerkapplikation oder dem verteilten Datenbanksystem) . Wird beispielsweise beim Prüfen festgestellt, dass Teile der Daten (z. B. ein Teil eines Nachrichteninhalts, der in den Daten gespeichert ist) von dem zugeordneten Gerät nicht ver arbeitet werden können (also z. B. das entsprechende Daten format für die entsprechenden Teile der Daten inkompatibel ist) und weitere Teile der Daten durch das Gerät verarbeitet werden können, so konvertiert beispielsweise das Konvertie rungsmodul vorzugsweise nur die Daten, die durch das Gerät nicht verarbeitet werden können (bzw. inkompatibel sind) . Die konvertierten Teile der Daten und die Teile der Daten, die das zugeordnete Gerät ausführen konnte, werden dann wieder zu (konvertierten) Daten (oder einem Datensatz) zusammengeführt, der z. B. von dem zugeordneten Gerät als Ganzes verarbeitet werden kann. Diese konvertierten Daten (oder Datensatz) wer den dann entsprechend an das zugeordnete Gerät übertragen.
Dies ist beispielsweise vorteilhaft, wenn das zugeordnete Ge rät beispielsweise Datumsangaben nur bis zu einem bestimmten Zeitpunkt verarbeiten kann (z. B. 31.12.1999). In einem sol chen Fall können z. B. aktuelle Datumsangaben (1.1.2018) in ein verarbeitbares Datum konvertiert werden (z. B. 1.1.1988). Bei der Konvertierung werden beispielsweise die inkompatiblen Datenteile (z. B. Datumsangaben, die nach dem 31.12.1999 lie gen) mittels einer Konvertierungsvorschrift der gerätespezi fischen Konvertierungsanweisungen (z. B. aktuelles Datum - 30 Jahre) in ein kompatibles Datenformat für das zugeordnete Ge rät gebracht (z. B. 1.1.1988).
Es kann beispielsweise beim Überprüfen auch festgestellt wer den, dass bestimmte Teile der Daten nicht konvertierbar sind. Das heißt beispielsweise, es gibt keine Möglichkeit entspre chende Daten bzw. Teile der Daten in ein Datenformat zu kon vertieren, das vom zugeordneten Gerät verarbeitet werden kann. In einem solchen Fall kann beispielsweise eine Übertra gung von solchen Daten an das zugeordnete Gerät unterbunden werden und/oder eine Fehlermeldung an einen Administrator ge schickt werden. Alternativ oder zusätzlich können entspre chende Daten oder Teile der Daten mit Standardwerten belegt werden (z. B. ein Leer-String, ein Datum in einem gültigen Format, das z. B. nicht das aktuelle Datum ist), damit z. B. zumindest andere Teile der Daten übertragen werden können.
Bei weiteren Ausführungsformen der Empfangsvorrichtung um fasst die Empfangsvorrichtung ein Identifikationsmodul um fasst. Das Identifikationsmodul ist insbesondere dazu einge richtet anhand der Daten eine Zuordnung (oder die Zuordnung) zu berechnen, für welche Geräte beispielsweise die Daten be stimmt sind. Alternativ oder zusätzlich ist das Identifikati onsmodul insbesondere dazu eingerichtet beispielsweise anhand der Daten eine Zuordnung oder die Zuordnung zu berechnen, um beispielsweise das zugeordnete Gerät zu bestimmen.
Mit anderen Worten wird beispielsweise anhand der Daten durch das Identifikationsmodul berechnet (oder festgestellt) , wel ches Gerät die Daten verarbeiten soll. Entsprechend wird ein solches Gerät dann beispielsweise mittels der Zuordnung, z.
B. in Form eines Zuordnungsdatensatzes, den Daten zugeordnet. Die Zuordnung oder der Zuordnungsdatensatz kann beispielswei se Geräteinformationen oder Geräteeigenschaften des zugeord neten Gerätes umfassen. Diese Zuordnung oder der Zuordnungs datensatz kann dann beispielsweise von dem Konvertierungsmo dul verwendet werden, um z. B. zu überprüfen, welche Daten (z. B. welcher Teil der Daten und/oder alle Daten) der Daten von dem zugeordneten Gerät verarbeitet werden können.
In weiteren Ausführungsformen der Empfangsvorrichtungen kann diese zusätzlich jeweils beispielsweise eine Konfigurations schnittstelle und/oder einen Lüfter und/oder ein Monitoring modul umfassen. Mit der Konfigurationsschnittstelle können beispielsweise Updates oder Firmwareversionen eingespielt werden. Mit dem Lüfter kann z. B. die Empfangsvorrichtung ge kühlt werden. Mit dem Monitoringmodul kann der Zustand und/oder das Betriebsverhalten der entsprechenden Empfangs vorrichtung überwacht werden und z. B. in einer Datei gespei chert werden (z. B. einer Logging-Datei ) . Gemäß einem weiteren Aspekt betrifft die Erfindung eine Sen devorrichtung, aufweisend beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist mit Gerä ten zu kommunizieren,
beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist erste Nachrichten oder Daten von den Geräten zu empfangen;
beispielsweise ein Identifikationsmodul, wobei
beispielsweise das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder des je weiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung berechnet, welches Ge rät eine entsprechende erste Nachricht gesen det hat;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht in ein Datenformat für das verteilte Daten banksystem oder die Netzwerk-Applikation zu konvertieren;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist mit einem verteilten Datenbanksystem oder einer Netz werk-Applikation kommunizieren, beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist die konvertierten Daten und/oder die Daten und/oder den konvertierten Nachrichteninhalt und/oder den Nachrichtenin halt der entsprechenden ersten Nachricht (und/oder die erste Nachricht selbst) an das verteilte Datenbanksystem oder an die Netz
werk-Applikation zu übertragen.
Gemäß einem weiteren möglichen Aspekt betrifft die Erfindung eine Sendevorrichtung, aufweisend
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist mit Gerä ten zu kommunizieren,
beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist erste Nachrichten oder Daten von den Geräten zu empfangen;
beispielsweise ein Identifikationsmodul, wobei
beispielsweise das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder des je weiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung berechnet, welches Ge rät die Daten oder eine entsprechende erste Nachricht gesendet hat;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht in ein Datenformat für das verteilte Daten banksystem oder für eine Netzwerk-Applikation zu konvertieren,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten spezifisch für das verteilte Datenbanksystem oder für die Netz werk-Applikation anhand des zugeordneten Gerä tes zu konvertieren,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist zu überprüfen, welche Daten formate von dem verteilten Datenbanksystem o- der von der Netzwerk-Applikation oder von wei teren verteilten Datenbanksystemen oder weite ren Netzwerk-Applikationen verarbeiten können, beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten in ein mit dem ver teilten Datenbanksystem oder der Netzwerk- Applikation kompatibles Datenformat zu konver tieren;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist mit einem verteilten Datenbanksystem oder der Netzwerk- Applikation zu kommunizieren,
beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist die konvertierten Daten oder den konvertierten Nachrichteninhalt an das verteilte Datenbanksystem oder die Netz werk-Applikation zu übertragen.
Gemäß einem weiteren möglichen Aspekt betrifft die Erfindung eine Sendevorrichtung, aufweisend
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist mit Gerä ten zu kommunizieren,
beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist erste Nachrichten oder Daten von den Geräten zu empfangen;
beispielsweise ein Identifikationsmodul (320), wo bei
beispielsweise das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder des je weiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung berechnet, welches Ge rät die Daten oder eine entsprechende erste Nachricht gesendet hat;
beispielsweise ein Konvertierungsmodul (330), wobei beispielsweise das Konvertierungsmodul dazu eingerichtet ist spezifisch für das den Daten zugeordnete Gerät Datenformatanforderungen zu bestimmen, die z. B. durch das zugeordnete Ge rät vorgegebenen sind,
beispielsweise das Konvertierungsmodul dazu eingerichtet ein Prüfergebnis darüber zu er mitteln, welche Datenformate von verteilten Datenbanksystemen oder von Netzwerk- Applikationen verarbeiten können, beispielsweise das Konvertierungsmodul dazu eingerichtet ist abhängig von dem Prüfergebnis und/oder den Datenformatanforderungen die Da ten in ein Datenformat für eine Netzwerk- Applikation der Netzwerk-Applikationen oder ein verteiltes Datenbanksystem der verteilten Datenbanksysteme zu konvertieren;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist, die konvertierten Daten oder den konvertierten Nachrichteninhalt an das verteilte Datenbank system oder die Netzwerk-Applikation zu über tragen .
Beispielsweise kann das Konvertierungsmodul dazu eingerichtet sein, die Daten oder den Nachrichteninhalt der entsprechenden ersten Nachricht in ein Datenformat für das verteilte Daten banksystem oder für eine Netzwerk-Applikation zu konvertie ren, wobei das Datenformat z. B. durch das zugeordnete Gerät vorgegeben ist.
Beispielsweise kann das Konvertierungsmodul dazu eingerichtet sein, das (entsprechende) verteilte Datenbanksystem aus den verteilten Datenbanksystemen oder die (entsprechende) Netz werk-Applikation aus den Netzwerkapplikationen anhand des Prüfergebnisses und/oder der Datenformatanforderungen auszu wählen. Beispielsweise kann die zweite Kommunikationsschnitt stelle dazu eingerichtet sein die konvertierten Daten und/oder die Daten an das ausgewählte (entsprechende) ver teilte Datenbanksystem oder die ausgewählte (entsprechende) Netzwerk-Applikation zu übertragen. Mit anderen Worten ist beispielsweise die Netzwerk-Applikation die ausgewählte Netz werk-Applikation oder das verteilte Datenbanksystem ist das ausgewählte verteilte Datenbanksystem.
Die Datenformatanforderungen können beispielsweise durch die Zuordnung und/oder von Geräteeigenschaften (des zugeordneten Gerätes) , die in der Zuordnung (oder einem Zuordnungsdaten satz) gespeichert sind, vorgegeben sein.
Erfüllen beispielsweise mehrere verteilte Datenbanksysteme oder mehrere Netzwerk-Applikationen die Datenformatanforde rungen - sprich sie sind jeweils mit den Datenformatanforde rungen kompatibel - , so können die Daten z. B. für die je weils kompatiblen verteilten Datenbanksysteme oder die je weils kompatiblen Netzwerk-Applikationen konvertiert werden und/oder jeweils an diese übertragen werden. Kompatibel be deutet beispielsweise, dass das jeweilige verteilte Daten banksystem oder die jeweilige Netzwerkapplikation zumindest ein Datenformat der Datenformatanforderungen unterstützt und/oder verarbeiten kann. Das Datenformat gibt dabei bei spielsweise ein Format für Daten an, das von der Netzwerk- Applikation oder dem verteilten Datenbanksystem verarbeitet werden kann.
Beispielsweise kann alternativ oder zusätzlich aus den kompa tiblen verteilten Datenbanksystemen oder aus den kompatiblen Netzwerk-Applikationen auch die Netzwerk-Applikation oder das verteilte Datenbanksystem für eine Datenkonvertierung (oder für eine Konvertierung der Daten) und/oder Datenübertragung (der konvertierten Daten oder der Daten) ausgewählt werden, das ein zusätzliches Auswahlkriterium erfüllt. Das Auswahl kriterium kann beispielsweise eine Zuverlässigkeit, krypto- graphische Anforderungen (z. B. verwendete Schlüssellängen, kryptographische Protokolle) oder Anforderungen an die ent sprechende Infrastruktur (z. B. es muss mindestens eine vor- gegebene Anzahl von Knoten geben oder die Netzwerk- Applikation oder das verteilte Datenbanksystem sind z. B. als Cloud-Service realisiert) vorgeben, die von der Netzwerk- Applikation oder dem verteilten Datenbanksystem unterstützt werden sollen. Beispielsweise wird dann nur ein verteiltes Datenbanksystem oder eine Netzwerk-Applikation ausgewählt, die das Auswahlkriterium am besten erfüllt.
Beispielsweise kann die zweite Kommunikationsschnittstelle dazu eingerichtet sein mit den verteilten Datenbanksystemen (z. B. das verteilte Datenbanksystem oder die weiteren ver teilten Datenbanksysteme oder das ausgewählte verteilte Da tenbanksystem) oder den Netzwerk-Applikationen (z. b. die Netzwerk-Applikation oder die weiteren Netzwerk-Applikationen oder der ausgewählten Netzwerk-Applikation) zu kommunizieren um z. B. die unterstützten Datenformate der Netzwerk- Applikationen oder der verteilten Datenbanksysteme abzurufen und/oder die konvertierten Daten zu übermitteln.
Konkrete Beispiele wie z. B. eine Konvertierung der Daten re alisiert sein kann, können analog zu den Beispielen der Emp fangsvorrichtung realisiert sein.
Die Daten können dabei beispielsweise die ersten Nachrichten oder die erste Nachricht oder der Nachrichteninhalt der ers ten Nachricht oder Daten einer Kommunikationsverbindung sein.
Mit der Erfindung ist es insbesondere möglich eine dezentrale Infrastruktur mit alten bzw. legacy Geräten zu koppeln. Mit der Erfindung kann insbesondere eine Koppelung von solchen Altgeräten an eine neue blockkettenbasierten Infrastruktur erfolgen. Dies ist beispielsweise für Energieversorgungsnetze vorteilhaft, deren Steuerung auf eine Blockketten Infrastruk tur umgestellt wird, wobei jedoch nicht jedes einzelne Gerät des bestehenden Energieversorgungsnetzes ausgetauscht wird. Die Erfindung erlaubt es beispielsweise, dass z. B. ein Gerät Nachrichten (z. B. mit Steuerbefehlen oder Statusmeldungen zur Abarbeitung von Steuerbefehlen) an das verteilte Daten- banksystem oder die Netzwerk-Applikation sendet, wobei die Sendevorrichtung kommunikativ zwischen den Geräten und dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) angeordnet ist und die Zuordnung und/oder Übermittlung der jeweiligen Nachrichten an das verteilte Datenbanksystem (oder an die Netzwerk-Applikation) realisiert. Insbesondere werden die entsprechenden Nachrichteninhalte oder Daten auch in ein Datenformat konvertiert, das mit dem verteilten Datenbanksys tem (oder der Netzwerk-Applikation) kompatibel ist. Insbeson dere müssen die Geräte nicht an die neue Infrastruktur ange passt werden.
Beispielsweise wird durch Geräteeigenschaften des zugeordne ten Gerätes vorgegeben, dass die Daten in einem oder mehreren Datenformaten in dem verteilten Datenbanksystem oder der Netzwerk-Applikation gespeichert werden können. Beispielswei se kann durch die Datenformatanforderungen vorgegeben werden, dass die Daten des zugeordneten Gerätes in einem XML-Format oder einem JSON-Format, jedoch nicht in einem Binärformat ge speichert werden sollen. Beispielsweise unterstützt das ver teilte Datenbanksystem ein XML-Format und die Netzwerk- Applikation nur ein proprietäres Binärformat. Die zweite Kom munikationsschnittstelle und/oder das Konvertierungsmodul überprüfen zunächst, welche Datenformate, die von dem ver teilten Datenbanksystem oder der Netzwerk-Applikation unter stützt werden (unterstützt bedeutet dabei z. B., welche Da tenformate von dem verteilten Datenbanksystem oder der Netz werk-Applikation verarbeitet werden können) , ebenfalls den Datenformatvorgaben der Datenformatanforderungen des zugeord neten Gerätes entsprechen. Die zweite Kommunikationsschnitt stelle übermittelt dann in einer Variante beispielsweise an hand des bei dieser Prüfung ermittelten Prüfergebnisses an welches verteilte Datenbanksystem (es können auch mehrere verteilte Datenbanksysteme vorliegen) oder an welche Netz werk-Applikation die konvertierten Daten übermittelt werden. Dieses Prüfergebnis kann alternativ auch vom Konvertierungs modul oder vom Identifikationsmodul auf die gleiche Weise er- mittelt werden und z. B. der zweiten Kommunikationsschnitt stelle bereitgestellt werden.
Beispielsweise kann die zweite Kommunikationsschnittstelle dazu eingerichtet sein, die konvertierten Daten oder den konvertierten Nachrichteninhalt abhängig von dem Prüfergebnis an das verteilte Datenbanksystem oder ein weiteres verteiltes Datenbanksystem oder die Netzwerk-Applikation oder eine wei tere Netzwerkapplikation zu übertragen.
Bei weiteren Ausführungsformen der Sendevorrichtung umfasst die Sendevorrichtung ein Kryptographiemodul, wobei das Kryp tographiemodul den Geräten zugeordnete kryptographische Daten umfasst .
Bei weiteren Ausführungsformen der Sendevorrichtung lädt das Kryptographiemodul anhand des zugeordneten Gerätes entspre chende kryptographische Daten, wobei mittels der entsprechen den kryptographischen Daten (die vorzugsweise gerätespezi fisch sind) zumindest ein Teil der Daten oder ein Teil des Nachrichteninhalts der entsprechenden ersten Nachricht gerä tespezifischen für das zugeordnete Geräte kryptographisch ge schützt werden und wobei beispielsweise das kryptographische Schützen vor dem Senden des Nachrichteninhalts oder der Daten (oder der konvertierten Varianten der hier genannten Daten, Nachrichten und Nachrichteninhalte) erfolgt.
Die Sendevorrichtung ist dahingehend vorteilhaft, um insbe sondere die Nachrichten, die an das verteilte Datenbanksystem (oder an die Netzwerk-Applikation) gesendet werden (und/oder von diesem gespeichert werden) kryptographisch zu schützen. Dies kann beispielsweise dadurch erfolgen, dass die entspre chenden Daten oder der entsprechende Nachrichteninhalt mit tels einer (kryptographischen) Prüfsumme (z. B. eine Transak tionsprüfsumme) geschützt wird und/oder verschlüsselt wird. Hierzu kann die Sendevorrichtung beispielsweise einen ersten kryptographischen Schlüssel (diese ist z. B. spezifisch für das Gerät) umfassen, mit dem beispielsweise eine Prüfsumme über die Daten oder die Nachrichten bzw. den Nachrichtenin halt gebildet wird. Alternativ kann mit diesem ersten krypto- graphischen Schlüssel beispielsweise auch der Nachrichtenin halt verschlüsselt werden oder auch die Daten verschlüsselt werden. Ein Empfänger der Nachricht kann beispielsweise mit dem ersten kryptographischen Schlüssel (im Falle eines sym metrischen kryptographischen Verfahrens) oder einem zweiten kryptographischen Schlüssel, der dem ersten kryptographischen Schlüssel zugeordnet ist (z. B. bei einem asymmetrischen kryptographischen Verfahren bei dem z. B. der erste Schlüssel ein privater Schlüssel ist und der zweite Schlüssel ein öf fentlicher Schlüssel ist) , die Entschlüsselung oder Überprü fung des entsprechenden Nachrichteninhalts oder der entspre chenden Daten durchführen. Hier kann das entsprechende
Schlüsselmaterial dem Empfänger beispielsweise über einen si cheren Kanal übermittelt worden sein.
Die kryptographischen Daten (z. B. die kryptographischen Schlüssel) können beispielsweise anhand von gerätespezifi schen Daten erzeugt worden sein (z. B. eine UID des Gerätes, einer Zufallszahl, die durch das entsprechende Gerät erzeugt wurde, oder anhand von für das Gerät charakteristischen Sens ordaten berechnet wurde - z. B. eine berechnete Charakteris tik für ein Rauschsignal, das durch einen Sensor des Gerätes ermittelt wurde) . Alternativ oder zusätzlich sind die krypto graphischen Daten eine Kombination aus gerätespezifischen Da ten und sendevorrichtungsspezifischer Daten (z. B. eine UID der Sendevorrichtung, einer Zufallszahl, die durch die Sende vorrichtung erzeugt wurde, oder anhand von für die Sendevor richtung Sensordaten berechnet wurde - z. B. eine berechnete Charakteristik für ein Rauschsignal, das durch einen Sensor der Sendevorrichtung ermittelt wurde) . Beispielsweise ist es auch möglich, dass mittels der gerätespezifischen Daten und/oder sendevorrichtungsspezifischer Daten für das entspre chende Gerät die kryptographischen Daten reproduzierbar er mittelt werden. Beispielsweise kann mittels der gerätespezi fischen Daten und/oder sendevorrichtungsspezifischer Daten ein kryptographischer Schutz (z. B. eine Verschlüsselung), mit dem die entsprechenden kryptographischen Daten eines Ge rätes geschützt sind, aufgehoben (z. B. entschlüsselt werden) und/oder überprüft werden (z. B. eine digitale Signatur über prüft wird oder eine (kryptographische) Prüfsumme für die kryptographischen Daten überprüft wird), wenn z. B. aus den gerätespezifischen Daten und/oder sendevorrichtungsspezifi scher Daten hierfür ein separater kryptographischer Schlüssel abgeleitet bzw. berechnet wird. Die gerätespezifischen Daten können beispielsweise in der Nachricht des entsprechenden Ge rätes gespeichert sein. Bei den gerätespezifischen Daten und/oder sendevorrichtungsspezifischen Daten handelt es sich vorzugsweise um Daten die nur schwer gefälscht werden können, z. B. eine Charakteristik eines Rauschsignals (z. B. von ei nem Sensor oder einem Manipulationsschutzmodul erfasst wird) , das bei einer Manipulation des Gerätes derart verändert wird, dass sich die Charakteristik derart verändert, dass die kryp tographischen Daten ungültig werden oder auf diese nicht mehr zugegriffen werden kann. Die gerätespezifischen Daten können auch mittels eines Challenge-Response-Verfahren ermittelt bzw. ausgetauscht werden, indem beispielsweise das Verfahren auf Geräteseite und auf Sendevorrichtungsseite mit entspre chenden Initialwerten konfiguriert wird (z. B. indem in einem geschützten Speicher des Gerätes bzw. der Sendevorrichtung entsprechende Initialwerte vorkonfiguriert sind bzw. diese Initialwerte durch den geschützten Speicher berechnet
und/oder bereitgestellt werden) und entsprechende gerätespe zifischen Daten (z. B. ein kryptographischer Schlüssel oder ein Teil eines kryptographischen Schlüssels) von der Sende vorrichtung abgerufen werden können.
Bei weiteren Ausführungsformen der Sendevorrichtung und/oder der Empfangsvorrichtung ist die Netzwerkapplikation oder das verteilte Datenbanksystem eine Blockkette, wobei beispiels weise die Nachrichten die von dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) gesendet und/oder empfangen werden Transaktionen sind. Bei weiteren Ausführungsformen der Sendevorrichtung und/oder der Empfangsvorrichtung sind zumindest ein Teil der Geräte, Geräte eines Automatisierungsnetzwerkes.
In weiteren Ausführungsformen der Sendevorrichtungen kann diese zusätzlich jeweils beispielsweise eine Konfigurations schnittstelle und/oder einen Lüfter und/oder ein Monitoring modul umfassen. Mit der Konfigurationsschnittstelle können beispielsweise Updates oder Firmwareversionen eingespielt werden. Mit dem Lüfter kann z. B. die Sendevorrichtung ge kühlt werden. Mit dem Monitoringmodul kann der Zustand und/oder das Betriebsverhalten der entsprechenden Sendevor richtung überwacht werden und z. B. in einer Datei gespei chert werden (z. B. einer Logging-Datei ) .
Gemäß einem weiteren Aspekt betrifft die Erfindung ein System umfassend : beispielsweise eine erfindungsgemäße Empfangsvorrichtung bzw. eine Empfangsvorrichtung nach einer der genannten Ausführungsformen;
beispielsweise eine erfindungsgemäße Sendevorrichtung bzw. eine Sendevorrichtung nach einer der genannten Aus führungsformen .
Gemäß einem weiteren Aspekt betrifft die Erfindung ein Ver fahren zum rechnergestützten Empfangen von Nachrichten oder Daten mit folgenden Verfahrensschritten:
beispielsweise ein Verfahrensschritt zum Empfangen von Daten oder ersten Nachrichten von einem verteilten Da tenbanksystem oder einer Netzwerk-Applikation mittels einer ersten Kommunikationsschnittstelle;
beispielsweise ein Verfahrensschritt zum Berechnen einer Zuordnung für die ersten Nachrichten, wobei beim Berech nen bestimmt wird für welche Geräte eine entsprechende erste Nachricht oder die Daten bestimmt ist; beispielsweise ein Verfahrensschritt zum Konvertieren der Daten oder des Nachrichteninhalt der entsprechenden ersten Nachricht in ein Datenformat für das zugeordnete Gerät ;
beispielsweise ein Verfahrensschritt zum Übertragen des konvertierten Nachrichteninhalts oder der konvertierten Daten an das Gerät, das der entsprechenden ersten Nach richt oder den Daten zugeordnet ist.
Bei weiteren Ausführungsformen des Verfahrens umfasst das Verfahren weitere Verfahrensschritte, um die funktionalen Merkmale oder um weitere Merkmale der Empfangsvorrichtung bzw. deren Ausführungsformen zu realisieren.
Gemäß einem weiteren möglichen Aspekt betrifft die Erfindung ein Verfahren zum rechnergestützten Empfangen von Daten mit folgenden Verfahrensschritten:
beispielsweise ein Verfahrensschritt zum Empfangen von Daten oder ersten Nachrichten von einem verteilten Da tenbanksystem oder einer Netzwerk-Applikation mittels einer ersten Kommunikationsschnittstelle;
beispielsweise ein Verfahrensschritt zum Bestimmen eines Konvertierungsprüfergebnisses für ein den Daten zugeord netes Gerät, wobei
bestimmt wird ob und/oder wie die Daten beispiels weise in ein Datenformat für das den Daten zugeord nete Gerät zu konvertieren sind,
die Daten abhängig von dem Konvertierungsprüfergeb nis in das Datenformat für das den Daten zugeordne tes Gerät konvertiert wird,
beispielsweise ein Verfahrensschritt zum Übertragen der konvertierten Daten und/oder der Daten an das Gerät, das der entsprechenden ersten Nachricht oder den Daten zuge ordnet ist.
Bei weiteren Ausführungsformen des Verfahrens umfasst das Verfahren weitere Verfahrensschritte, um die funktionalen Merkmale oder um weitere Merkmale der Empfangsvorrichtung bzw. deren Ausführungsformen zu realisieren.
Gemäß einem weiteren möglichen Aspekt betrifft die Erfindung ein Verfahren zum rechnergestützten Empfangen von Daten mit folgenden Verfahrensschritten:
Empfangen von Daten oder ersten Nachrichten von einem verteilten Datenbanksystem oder einer Netzwerk- Applikation mittels einer ersten Kommunikationsschnitt stelle;
Bestimmen eines Konvertierungsprüfergebnisses die Daten, wobei
das Konvertierungsprüfergebnis abhängig von einem den Daten zugeordnetes Gerät bestimmen wird bestimmt wird ob und/oder wie die Daten in ein Da tenformat für das den Daten zugeordnete Gerät zu konvertieren ist,
die Daten abhängig von dem Konvertierungsprüfergeb nis in das Datenformat für das den Daten zugeordne tes Gerät konvertiert wird,
Übertragen der konvertierten Daten und/oder der Daten an das Gerät, das der entsprechenden ersten Nachricht oder den Daten zugeordnet ist.
Bei weiteren Ausführungsformen des Verfahrens umfasst das Verfahren weitere Verfahrensschritte, um die funktionalen Merkmale oder um weitere Merkmale der Empfangsvorrichtung bzw. deren Ausführungsformen zu realisieren.
Gemäß einem weiteren Aspekt betrifft die Erfindung ein Ver fahren zum rechnergestützten Senden von Nachrichten mit fol genden Verfahrensschritten:
beispielsweise ein Verfahrensschritt zum Empfangen von Daten oder ersten (weiteren) Nachrichten von Geräten mittels einer Kommunikationsschnittstelle; beispielsweise ein Verfahrensschritt zum Berechnen einer Zuordnung anhand der Daten oder des jeweili gen Nachrichteninhalts der ersten (weiteren) Nach- richten, wobei berechnet wird, welches Gerät eine entsprechende erste weitere Nachricht oder die Da ten gesendet hat;
beispielsweise ein Verfahrensschritt zum Konvertie ren der Daten oder des Nachrichteninhalts der ent sprechenden ersten (weiteren) Nachricht in ein Da tenformat für das verteilte Datenbanksystem oder die Netzwerk-Applikation;
beispielsweise ein Verfahrensschritt zum Übertragen des konvertierten Nachrichteninhalts oder der konvertierten Daten an das verteilte Datenbanksys tem oder die Netzwerk-Applikation.
Bei weiteren Ausführungsformen des Verfahrens umfasst das Verfahren weitere Verfahrensschritte, um die funktionalen Merkmale oder um weitere Merkmale der Sendevorrichtung bzw. deren Ausführungsformen zu realisieren.
Gemäß einem weiteren möglichen Aspekt betrifft die Erfindung ein Verfahren zum rechnergestützten Senden von Daten oder Nachrichten mit folgenden Verfahrensschritten:
beispielsweise ein Verfahrensschritt zum Empfangen von Daten oder ersten Nachrichten von Geräten mit tels einer Kommunikationsschnittstelle;
beispielsweise ein Verfahrensschritt zum Berechnen einer Zuordnung anhand der Daten oder des jeweili gen Nachrichteninhalts der ersten Nachrichten, wo bei berechnet wird, welches Gerät die Daten oder eine entsprechende erste weitere Nachricht gesendet hat ;
beispielsweise ein Verfahrensschritt zum Konvertie ren der Daten oder des Nachrichteninhalts der ent sprechenden ersten Nachricht in ein Datenformat für das verteilte Datenbanksystem oder eine Netzwerk- Applikation, wobei
die Daten spezifisch für das verteilte Daten banksystem oder für die Netzwerk-Applikation anhand des zugeordneten Gerätes konvertiert werden,
beispielsweise überprüft wird, welche Daten formate von dem verteilten Datenbanksystem o- der von der Netzwerk-Applikation verarbeiten werden können,
beispielsweise die Daten in ein mit dem ver teilten Datenbanksystem oder der Netzwerk- Applikation kompatibles Datenformat konver tiert werden;
beispielsweise ein Verfahrensschritt zum Übertragen der konvertierten Daten oder des konvertierten Nachrichteninhalts an das verteilte Datenbanksystem oder die Netzwerk-Applikation.
Bei weiteren Ausführungsformen des Verfahrens umfasst das Verfahren weitere Verfahrensschritte, um die funktionalen Merkmale oder um weitere Merkmale der Sendevorrichtung bzw. deren Ausführungsformen zu realisieren.
Gemäß einem weiteren möglichen Aspekt betrifft die Erfindung ein Verfahren zum rechnergestützten Senden von Nachrichten oder Daten mit folgenden Verfahrensschritten:
beispielsweise ein Verfahrensschritt zum Empfangen von Daten oder ersten Nachrichten von Geräten mit tels einer Kommunikationsschnittstelle;
beispielsweise ein Verfahrensschritt zum Berechnen einer Zuordnung anhand der Daten oder des jeweili gen Nachrichteninhalts der ersten Nachrichten, wo bei berechnet wird, welches Gerät die Daten oder eine entsprechende erste weitere Nachricht gesendet hat ;
beispielsweise ein Verfahrensschritt zum Bestimmen von Datenformatanforderungen, die spezifisch für das den Daten zugeordnete Gerät bestimmt werden, wobei die Datenformatanforderungen z. B. durch das zugeordnete Gerät vorgegebenen werden; beispielsweise ein Verfahrensschritt zum Ermitteln eines Prüfergebnisses darüber, welche Datenformate von verteilten Datenbanksystemen oder von Netzwerk- Applikationen verarbeiten können;
beispielsweise ein Verfahrensschritt zum Konvertie ren der Daten in ein Datenformat für eine Netzwerk- Applikation der Netzwerk-Applikationen oder ein verteiltes Datenbanksystem der verteilten Daten banksysteme abhängig von dem Prüfergebnis und/oder den Datenformatanforderungen;
beispielsweise ein Verfahrensschritt zum Übertragen der konvertierten Daten oder des konvertierten Nachrichteninhalts an das verteilte Datenbanksystem oder die Netzwerk-Applikation.
Bei weiteren Ausführungsformen des Verfahrens umfasst das Verfahren weitere Verfahrensschritte, um die funktionalen Merkmale oder um weitere Merkmale der Sendevorrichtung bzw. deren Ausführungsformen zu realisieren.
Des Weiteren wird ein Computerprogrammprodukt mit Programmbe fehlen zur Durchführung der genannten erfindungsgemäßen Ver fahren beansprucht, wobei mittels des Computerprogrammpro dukts jeweils eines der erfindungsgemäßen Verfahren, alle er findungsgemäßen Verfahren oder eine Kombination der erfin dungsgemäßen Verfahren durchführbar ist.
Zusätzlich wird eine Variante des Computerprogrammproduktes mit Programmbefehlen zur Konfiguration eines Erstellungsge räts, beispielsweise ein 3D-Drucker, ein Computersystem oder ein zur Erstellung von Prozessoren und/oder Geräten geeignete Herstellungsmaschine, beansprucht, wobei das Erstellungsgerät mit den Programmbefehlen derart konfiguriert wird, dass die genannte erfindungsgemäße Sendevorrichtung und/oder Empfangs vorrichtung erstellt wird.
Darüber hinaus wird eine Bereitstellungsvorrichtung zum Spei chern und/oder Bereitstellen des Computerprogrammprodukts be- ansprucht. Die Bereitstellungsvorrichtung ist beispielsweise ein Datenträger, der das Computerprogrammprodukt speichert und/oder bereitstellt . Alternativ und/oder zusätzlich ist die Bereitstellungsvorrichtung beispielsweise ein Netzwerkdienst, ein Computersystem, ein Serversystem, insbesondere ein ver teiltes Computersystem, ein cloudbasiertes Rechnersystem und/oder virtuelles Rechnersystem, welches das Computerpro grammprodukt vorzugsweise in Form eines Datenstroms speichert und/oder bereitstellt .
Diese Bereitstellung erfolgt beispielsweise als Download in Form eines Programmdatenblocks und/oder Befehlsdatenblocks, vorzugsweise als Datei, insbesondere als Downloaddatei, oder als Datenstrom, insbesondere als Downloaddatenstrom, des vollständigen Computerprogrammprodukts. Diese Bereitstellung kann beispielsweise aber auch als partieller Download erfol gen, der aus mehreren Teilen besteht und insbesondere über ein Peer-to-Peer Netzwerk heruntergeladen oder als Datenstrom bereitgestellt wird. Ein solches Computerprogrammprodukt wird beispielsweise unter Verwendung der Bereitstellungsvorrich tung in Form des Datenträgers in ein System eingelesen und führt die Programmbefehle aus, sodass das erfindungsgemäße Verfahren auf einem Computer zur Ausführung gebracht wird o- der das Erstellungsgerät derart konfiguriert, dass es die er findungsgemäße Sendevorrichtung und/oder die Empfangsvorrich tung erstellt.
Die oben beschriebenen Eigenschaften, Merkmale und Vorteile dieser Erfindung sowie die Art und Weise, wie diese erreicht werden, werden klarer und deutlicher verständlich im Zusam menhang mit der folgenden Beschreibung der Ausführungsbei spiele, die im Zusammenhang mit den Figuren näher erläutert werden. Dabei zeigen in schematischer Darstellung:
Fig. 1 ein erstes Ausführungsbeispiel der Erfindung;
Fig . 2 ein weiteres Ausführungsbeispiel der Erfindung; Fig. 3 ein weiteres Ausführungsbeispiel der Erfindung;
Fig. 4 ein weiteres Ausführungsbeispiel der Erfindung; und
Fig. 5 ein weiteres Ausführungsbeispiel der Erfindung.
In den Figuren sind funktionsgleiche Elemente mit denselben Bezugszeichen versehen, sofern nichts anderes angegeben ist.
Die nachfolgenden Ausführungsbeispiele weisen, sofern nicht anders angegeben oder bereits angegeben, zumindest einen Pro zessor und/oder eine Speichereinheit auf, um das Verfahren zu implementieren oder auszuführen.
Auch sind insbesondere einem (einschlägigen) Fachmann in Kenntnis des/der Verfahrensanspruchs/Verfahrensansprüche alle im Stand der Technik üblichen Möglichkeiten zur Realisierung von Produkten oder Möglichkeiten zur Implementierung selbst verständlich bekannt, sodass es insbesondere einer eigenstän digen Offenbarung in der Beschreibung nicht bedarf. Insbeson dere können diese gebräuchlichen und dem Fachmann bekannten Realisierungsvarianten ausschließlich per Hard
ware ( komponenten) oder ausschließlich per Soft
ware ( komponenten) realisiert werden. Alternativ und/oder zu sätzlich kann der Fachmann im Rahmen seines fachmännischen Könnens weitestgehend beliebige erfindungsgemäße Kombinatio nen aus Hardware ( komponenten) und Software ( komponenten) wäh len, um erfindungsgemäße Realisierungsvarianten umzusetzen.
Eine erfindungsgemäße Kombination aus Hardware ( komponenten) und Software ( komponenten) kann insbesondere dann eintreten, wenn ein Teil der erfindungsgemäßen Wirkungen vorzugsweise ausschließlich durch Spezialhardware (z. B. einem Prozessor in Form eines ASIC oder FPGA) und/oder ein anderer Teil durch die (prozessor- und/oder speichergestützte) Software bewirkt wird . Insbesondere ist es angesichts der hohen Anzahl an unter schiedlichen Realisierungsmöglichkeiten unmöglich und auch für das Verständnis der Erfindung nicht zielführend oder not wendig, all diese Realisierungsmöglichkeiten zu benennen. In sofern sollen insbesondere all die nachfolgenden Ausführungs beispiele lediglich beispielhaft einige Wege aufzeigen, wie insbesondere solche Realisierungen der erfindungsgemäßen Leh re aussehen könnten.
Folglich sind insbesondere die Merkmale der einzelnen Ausfüh rungsbeispiele nicht auf das jeweilige Ausführungsbeispiel beschränkt, sondern beziehen sich insbesondere auf die Erfin dung im Allgemeinen. Entsprechend können vorzugsweise Merkma le eines Ausführungsbeispiels auch als Merkmale für ein ande res Ausführungsbeispiel dienen, insbesondere ohne dass dies expliziert in dem jeweiligen Ausführungsbeispiel genannt sein muss .
Die Fig. 1 zeigt ein erstes Ausführungsbeispiel der Erfin dung. Fig. 1 zeigt dabei ein System SYS das eine Sendevor richtung S und eine Empfangsvorrichtung E umfasst. Zusätzlich zeigt Fig. 1 ein Automatisierungsnetzwerk AN mit einem ersten Gerät Dl, einem zweiten Gerät D2 und einem dritten Gerät D3. Die Geräte (Dl, D2, D3) des Automatisierungsnetzwerkes (das auch als Automatisierungsnetz bezeichnet sein kann) sind über ein zweites Netzwerk NW2 (z. B. ein Kommunikationsnetzwerk wie das Internet oder ein Ethernet-Netzwerk) miteinander kom munikativ verbunden.
Des Weiteren zeigt die Fig. 1 Blöcke B, beispielsweise einen ersten Block Bl, einen zweiten Block B2 und einen dritten Block B3, einer Blockkette BC, wobei hier insbesondere ein Ausschnitt der Blockkette BC exemplarisch gezeigt ist.
Die Blöcke B umfassen jeweils mehrere Transaktionen T. Die Transaktionen T können dabei Steuertransaktionen und/oder Be stätigungstransaktionen umfassen . Der erste Block Bl umfasst beispielsweise eine erste Transak tion Tla, eine zweite Transaktion Tlb, eine dritte Transakti on Tic und eine vierte Transaktion Tld.
Der zweite Block B2 umfasst beispielsweise eine fünfte Trans aktion T2a, eine sechste Transaktion T2b, eine siebte Trans aktion T2c und eine achte Transaktion T2d.
Der dritte Block B3 umfasst beispielsweise eine neunte Trans aktion T3a, eine zehnte Transaktion T3b, eine elfte Transak tion T3c und eine zwölfte Transaktion T3d.
Die Blöcke B umfassen jeweils zusätzlich noch eine der Ver kettungsprüfsummen CRC, die abhängig vom direkten Vorgänger- Block gebildet wird. Somit umfasst der erste Block Bl eine erste Verkettungsprüfsumme CRC1 von seinem Vorgänger-Block, der zweite Block B2 eine zweite Verkettungsprüfsumme CRC2 vom ersten Block Bl, und der dritte Block B3 eine dritte Verket tungsprüfsumme CRC3 vom zweiten Block B2.
Die jeweilige Verkettungsprüfsumme CRC1, CRC2, CRC3 wird vor zugsweise über den Block-Header des entsprechenden Vorgänger blockes gebildet. Die Verkettungsprüfsummen CRC können vor zugsweise unter Verwendung einer kryptographischen Hash- Funktion wie z.B. SHA-256, KECCAK-256 oder SHA-3 gebildet werden. Beispielsweise kann die Verkettungsprüfsumme zusätz lich über die Datenblockprüfsumme berechnet werden oder der Header umfasst die Datenblockprüfsumme (die Datenblockprüf- summe ist im Nachgang erläutert) .
Zusätzlich kann jeder der Blöcke eine Datenblockprüfsumme um fassen. Diese kann beispielsweise mittels eines Hash-Baumes realisiert werden.
Um den Hash-Baum zu bilden, wird für jede Transaktion eines Daten (blockes ) eine Transaktionsprüfsumme (z. B. ebenfalls ein Hash-Wert) berechnet. Alternativ oder zusätzlich kann ei ne Transaktionsprüfsumme, die vom Erzeuger der Transaktion vorzugsweise beim Erzeugen der Transaktion erstellt wurde, hierfür weiterverwendet werden.
Üblicherweise wird für einen Hash-Baum, z. B. ein Merkle Tree oder Patricia Tree, verwendet, dessen Wurzel-Hash- Wert/Wurzel-Prüfsumme vorzugsweise als entsprechende Daten blockprüfsumme in den jeweiligen Blöcken hinterlegt wird.
In einer Variante wird die Datenblockprüfsumme als Verket tungsprüfsumme verwendet.
Ein Block kann weiterhin einen Zeitstempel, eine digitale Signatur, einen Proof-of-Work-Nachweis aufweisen, so wie es in den Ausführungsformen der Erfindung erläutert wurde.
Die Blockkette BC selbst wird durch eine Blockketten- Infrastruktur mit mehreren Blockketten-Knoten BCN, reali siert. Bei den Knoten kann es sich beispielsweise um Block kettenorakel oder vertrauenswürdige Knoten oder ein System SYS handeln. Die Knoten sind über ein erstes Netzwerk NW1 (z. B. ein Kommunikationsnetzwerk wie das Internet oder ein Ethernet-Netzwerk) miteinander kommunikativ verbunden. Mit tels der Blockketten-Infrastruktur werden beispielsweise zu mindest ein Teil der Datenblöcke B oder alle Datenblöcke B der Blockkette BC für einen Teil oder alle Knoten der Block kette repliziert.
Mittels des Systems SYS ist das Automatisierungsnetzwerk AN mit dem verteilten Datenbanksystem oder einer Netzwerk- Applikation verbunden, wobei z. B. die Netzwerk-Applikation z. B. das verteilte Datenbanksystem (z. B. eine Blockkette) umfasst oder realisiert. Hierzu umfasst das System SYS neben der Sendevorrichtung S und der Empfangsvorrichtung E eine erste Kommunikationsschnittstelle Nil, die mit dem ersten Netzwerk NW1 verbunden ist und damit eine Kommunikationsver bindung mit dem verteilten Datenbanksystem (oder der Netz werk-Applikation) realisiert. Zudem umfasst das System SYS eine zweite Kommunikationsschnittstelle NI2, die mit dem zweiten Netzwerk NW2 verbunden ist und damit eine Kommunika tionsverbindung mit dem Automatisierungsnetzwerk AN reali siert .
Die Empfangsvorrichtung E ist über einen ersten Bus BEI mit der ersten Kommunikationsschnittstelle Nil kommunikativ ver bunden und über einen zweiten Bus BE2 mit der zweiten Kommu nikationsschnittstelle NI2 kommunikativ verbunden.
Die Sendevorrichtung S ist über einen dritten Bus BS1 mit der zweiten Kommunikationsschnittstelle NI2 kommunikativ verbun den und über einen vierten Bus BS2 mit der ersten Kommunika tionsschnittstelle Nil kommunikativ verbunden.
Vorzugsweise unterbindet das System SYS bzw. die Sendevor richtung S und/oder die Empfangsvorrichtung E eine direkte Kommunikation zwischen den Automatisierungsnetzwerk AN und dem verteilten Datenbanksystem (z. B. als Blockchain BC rea lisiert) oder der Netzwerk-Applikation. Dies ist vorteilhaft, da es sich bei dem Automatisierungsnetzwerk AN mit den Gerä ten (Dl, D2, D3) um ein altes System handeln kann, dessen Be trieb beispielsweise gestört werden kann, wenn die Nachrich ten des verteilten Datenbanksystems (oder der Netzwerk- Applikation) direkt in das Automatisierungsnetzwerk übertra gen werden. Probleme können hierbei beispielsweise hinsicht lich der Bandbreite auftreten, sodass die Kommunikation zwi schen den Geräten (D1-D3) z. B. wegen einer hohen Netzwerk last (die durch die Nachrichten des verteilten Datenbanksys tems oder der Netzwerk-Applikation erzeugt werden) des zwei ten Netzwerkes NW2 eingeschränkt oder gestört wird. Zusätz lich kann der Betrieb der Geräte beispielsweise gestört wer den, da die Geräte Nachrichten empfangen, die in einem für sie nicht verarbeitbaren bzw. nicht zu verarbeitenden Daten format vorliegen.
Die Fig. 2 und die Fig. 3 erläutern detailliert die Funkti onsweise der Sendevorrichtung S (Fig. 3) und der Empfangsvor richtung E (Fig. 2) . Je nach Implementierungsvariante kann das System SYS auch die Sendevorrichtung S oder die Empfangsvorrichtung E umfassen. Sollte das System SYS die Sendevorrichtung S umfassen (also ohne die Empfangsvorrichtung E, dabei entspricht dann die Sendevorrichtung S dem System SYS) , ist ein solches System dahingehend vorteilhaft, um beispielsweise (nur) ein Senden der Nachrichten von den Geräten zu erlauben. Dies kann der Fall sein, wenn die Geräte z. B. Statusinformationen senden oder Steuerbefehle senden, aber keine Informationen von dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) verarbeiten sollen/müssen. Sollte das System SYS beispiels weise eine Empfangsvorrichtung E umfassen (ohne die Sendevor richtung S, dabei entspricht die Empfangsvorrichtung E dem System SYS) , so kann dies vorteilhaft sein, wenn die Geräte (D1-D3) beispielsweise nur Daten empfangen sollen und diese abarbeiten ohne dabei Nachrichten zurück zum verteilten Da tenbanksystem (oder zu der Netzwerk-Applikation) zu schi cken/übertragen. Beispielsweise könnten in einem solchen Fall Informationen über den Status der Verarbeitung der Nachrich ten durch die Geräte über einen anderen Kommunikationskanal übertragen werden (z. B. mittels Sensoren die über ein drit tes Kommunikationsnetzwerk oder über das erste Kommunikati onsnetzwerk mit dem verteilten Datenbanksystem oder der Netz werk-Applikation verbunden sind) .
Die Empfangsvorrichtung E umfasst eine erste Kommunikations schnittstelle 210 (z. B. eine Netzwerkschnittstelle zu einem
Ethernetnetzwerk), ein Identifikationsmodul 220, ein Konver tierungsmodul 230 und eine zweite Kommunikationsschnittstelle 240 (z. B. eine Netzwerkschnittstelle zu einem Ethernetnetz werk) , die über einen Bus 201 miteinander kommunikativ ver bunden sind.
Die Empfangsvorrichtung E ist über einen ersten Bus BEI mit der ersten Kommunikationsschnittstelle Nil kommunikativ ver bunden und über einen zweiten Bus BE2 mit der zweiten Kommu nikationsschnittstelle NI2 kommunikativ verbunden. Die Kommunikationsschnittstellen der Empfangsvorrichtung oder der Sendevorrichtung können beispielsweise auch als Kommuni kationsmodul oder Netzwerkschnittstelle bezeichnet werden.
Die erste Kommunikationsschnittstelle 210 ist dazu einge richtet ist mit einem verteilten Datenbanksystem oder einer Netzwerk-Applikation kommunizieren und ist mit dem ersten Bus BEI verbunden. Damit ist die erste Kommunikations schnittstelle 210 über den ersten Bus BEI mit der ersten Kommunikationsschnittstelle Nil des Systems SYS kommunikativ verbunden. Zudem ist die erste Kommunikationsschnittstelle dazu eingerichtet erste Nachrichten (z. B. die erste Trans aktion Tla und/oder weitere Transaktionen des ersten Blocks Bl) oder Daten von dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) zu empfangen. Die ersten Nachrichten oder Daten sind beispielsweise in einem Datenformat (z. B. ein XML-Datenformat) des verteilten Datenbanksystems (oder der Netzwerk-Applikation) gespeichert.
Das Identifikationsmodul ist dazu eingerichtet anhand der Da ten oder des jeweiligen Nachrichteninhalts der Daten oder des jeweiligen Nachrichteninhalts der ersten Nachrichten eine Zu ordnung zu berechnen, für welche Geräte eine entsprechende erste Nachricht TE (z. B. ist die erste Nachricht eine Nach richt der ersten Nachrichten) oder die (entsprechenden) Daten bestimmt ist oder sind. Beispielsweise können die (entspre chenden) Daten oder kann ein entsprechender Nachrichteninhalt eine digitale Signatur, ein digitales Zertifikat, eine Gerä teadresse (z. B. eine Netzwerkadresse), eine bestimmte tech nische Aufgabe, einen eindeutigen Identifizierer (z. B. eine UID) oder eine Kombination hiervon umfassen, anhand dessen das Gerät oder die Geräte bestimmt werden können. Beispiels weise können die Daten oder kann die Nachricht bzw. der Nach richteninhalt eine Angabe umfassen, dass die Geräte eine be stimmte technische Aufgabe erfüllen sollen. Das Identifikati onsmodul 220 identifiziert dann welche Geräte für die Erfül lung dieser Aufgabe geeignet sind. Beispielsweise kann die Aufgabe sein, dass ein Reservekraftwerk innerhalb einer vor gegebenen Zeit (z. B. 4 Stunden) für einen vorgegebenen Zeit raum (z. B. 24 Stunden) eine vorgegebene Leistung (z. B. 500 MW) erbringen soll. Das Identifikationsmodul 220 bestimmt dann die Geräte die für eine Umsetzung einer solchen Aufgabe notwendig sind. Beispielsweise kann das erste Gerät Dl eine Gasturbine mit 200 MW Leistung sein, das zweite Gerät eine Gastrubine mit 200 MW Leistung sein und das dritte Gerät eine Gasturbine mit 200 MW Leistung sein. Ist das Automatisie rungsnetzwerk bzw. sind die Geräte in der Lage die Aufgabe zu erfüllen, wird eine entsprechende Bestätigungsnachricht an das verteilte Datenbanksystem (oder die Netzwerk-Applikation) geschickt. Ist das Automatisierungsnetzwerk bzw. sind die Ge räte nicht in der Lage die Aufgabe zu erfüllen, wird eine entsprechende Ablehnungsnachricht für die Aufgabe an das ver teilte Datenbanksystem (oder die Netzwerk-Applikation) ge schickt .
Die Zuordnung kann beispielsweise als Zuordnungsdatensatz re alisiert sein, der z. B. die entsprechenden Informationen für Zuordnung umfasst. Dies können beispielsweise ein digitales Zertifikat des Gerätes sein, eine Geräteadresse (z. B. eine Netzwerkadresse), ein eindeutigen Identifizieren (z. B. eine UID) oder eine Kombination hiervon sein. Die Zuordnung oder der Zuordnungsdatensatz kann beispielsweise noch weitere Da ten umfassen. Dies können beispielsweise Geräteeigenschaften sein, die z. B. angeben, welche Daten (oder Datenteile) z. B. von Daten oder Nachrichten oder von einem entsprechenden Nachrichteninhalt (z. B. des Nachrichteninhalts der ersten Nachricht oder die erste Nachricht selbst) von einem entspre chende Gerät (also durch eine Zuordnung bestimmtes Gerät) verarbeitet werden können und/oder welche Daten oder welche Daten der Nachricht und/oder des Nachrichteninhalts für das Gerät konvertiert werden müssen. Die Zuordnung kann bei spielsweise auch konkrete Konvertierungsangaben umfassen, wie die Daten oder der entsprechende Nachrichteninhalt oder die entsprechende Nachricht konvertiert werden muss. Mit der Zuordnung bzw. dem Zuordnungsdatensatz kann damit beispielsweise (den entsprechenden) Daten oder einer entspre chenden Nachricht bzw. einem entsprechenden Nachrichteninhalt z. B. einem Gerät zugeordnet werden, das diese Daten oder diese Nachricht bzw. den entsprechenden Nachrichteninhalt verarbeiten kann. Ein solches Gerät, das auf diese Weise zu geordnet wird, kann beispielsweise auch als zugeordnetes Ge rät bezeichnet werden.
Das Konvertierungsmodul 230 ist dazu eingerichtet die Daten oder den Nachrichteninhalt der entsprechenden ersten Nach richt TE (z. B. ist die erste Nachricht eine Nachricht der ersten Nachrichten) in ein Datenformat für das zugeordnete Gerät (z. B. das erste Gerät Dl) zu konvertieren. Insbesonde re alte Geräte (sog. Legacy-Geräte) sind nicht in der Lage die Kommunikationsdaten eines verteilten Datenbanksystems (o- der einer Netzwerk-Applikation) bzw. einer Blockkette zu ver arbeiten. Entsprechend wird anhand des zugeordneten Gerätes überprüft, welche Daten oder welche Daten des Nachrichtenin halts überhaupt von dem Gerät verarbeitet werden können und/oder es wird auch anhand des zugeordneten Gerätes über prüft wie diese Daten für ein entsprechendes Gerät konver tiert werden können. Beispielsweise kann im Falle der oben genannten technischen Aufgabe (ansteuern des Reservekraftwer kes) , die in der Nachricht gespeichert ist, in konkrete Steu erbefehle für die Geräte bzw. Generatoren konvertiert werden. Die Steuerbefehle werden entsprechend den Anforderungen der Aufgabe ermittelt. Beispielsweise werden die ersten beiden Geräte bzw. Gasturbinen mit voller Leistung genutzt bzw. ge fahren und die dritte Gasturbine nur mit halber Leistung um die geforderten 500 MW Leistung zu erbringen. Dabei ist das Datenformat z. B. ein proprietäres Datenformat der Geräte.
Die zweite Kommunikationsschnittstelle 240 ist dazu einge richtet den konvertieren Nachrichteninhalt an das Gerät zu übertragen, das der entsprechenden ersten Nachricht zugeord net ist. Entsprechend ist die zweite Kommunikationsschnitt stelle 240 mit dem zweiten Bus BE2 verbunden und steht über diesen mit der zweiten Kommunikationsschnittstelle NI2 des Systems SYS kommunikativ in Verbindung. Die Daten oder der entsprechende Nachrichteninhalt, der an das entsprechende Ge rät bzw. die entsprechenden Geräte übertragen wird, kann z.
B. in Form einer zweiten Nachricht NE an die Geräte/das Gerät übertragen werden.
In einer Variante ist das Konvertierungsmodul 230 insbesonde re ein optionales Modul. Dies ist beispielsweise der Fall, wenn die Daten oder der Nachrichteninhalt der entsprechenden ersten Nachricht nicht konvertiert werden muss bzw. die Daten oder der Nachrichteninhalt bzw. die entsprechende erste Nach richt ein Datenformat aufweist, das von den Geräten verarbei tet werden kann. In einem solchen Fall entspricht der konver tierte Nachrichteninhalt (oder die konvertierten Daten) beim Übertragen an das Gerät bzw. die Geräte dem (unkonvertierten) Nachrichteninhalt der entsprechenden ersten Nachricht (oder den unkonvertierten Daten) . Folglich wird beispielsweise die entsprechende erste Nachricht als zweite Nachricht an das Ge rät oder die entsprechenden Geräte gesendet. Folglich ent spricht insbesondere für andere Ausführungsformen ggf. der Empfangsvorrichtung der Nachrichteninhalt der entsprechenden ersten Nachricht dem konvertierten Nachrichteninhalt.
In dieser Variante kann die Empfangsvorrichtung folgende Merkmale umfassen:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Netzwerkschnittstelle dazu eingerichtet ist mit einem verteilten Da tenbanksystem oder einer Netzwerk-Applikation kommunizieren,
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist Daten oder erste Nachrichten von dem verteilten Daten banksystem oder der Netzwerk-Applikation zu empfangen;
beispielsweise ein Identifikationsmodul, wobei beispielsweise das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder des je weiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung berechnet, für welche Geräte eine entsprechende erste Nachricht oder die Daten bestimmt ist/sind;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist die Daten oder die konvertierten Daten oder den konver tieren Nachrichteninhalt und/oder den Nach richteninhalt der entsprechenden ersten Nach richt (und/oder die erste Nachricht selbst) an das Gerät zu übertragen, das der entsprechen den ersten Nachricht zugeordnet ist.
In einer Variante ruft die Empfangsvorrichtung einen Geräte zustand von dem einer entsprechenden ersten Nachricht TE oder den Daten zugeordneten Gerät (z. B. Gerät Dl) ab. Eine Über tragung an das zugeordnete Gerät ist dabei abhängig von dem abgerufenen Gerätezustand.
Auch können beispielsweise mit dem Gerätezustand ein Daten satz über die verfügbaren Geräteressourcen und/oder aktuellen Geräteeigenschaften mit abgerufen werden.
Insbesondere bei älteren Geräten ist es sinnvoll eine Über prüfung durchzuführen, ob die Geräte überhaupt in der Lage sind die entsprechenden Nachrichten zu verarbeiten.
Hat beispielsweise die zweite Turbine (zweites Gerät) auf grund von Verschleiß oder eines technischen Defekts aktuell eine reduzierte Leistung kann dies beispielsweise beim Be stimmen der Geräte berücksichtigt werden und auch beim Kon vertieren bzw. erstellen der Steuerbefehle zum Anfahren bzw. Ansteuern der Gasturbinen berücksichtigt werden. Entsprechend kann beispielsweise das erste und das dritte Gerät auf voller Leistung genutzt bzw. angefahren werden und das zweite Gerät wird entsprechend mit halber Leistung genutzt.
Mit anderen Worten erfolgt die Übertragung an das entspre chende Gerät bzw. Geräte, wenn vorgegebene Anforderungen der Daten oder der entsprechenden ersten Nachricht TE durch das zugeordnete Gerät erfüllt sind, indem beispielsweise die Er füllung der vorgegenen Anforderungen anhand des Gerätezustan des überprüft wird. Die technische Aufgabe kann dabei bei spielsweise durch die vorgegebenen Anforderungen festgelegt sein. Die vorgegebenen Anforderungen können dabei in einem entsprechenden Datensatz der entsprechenden ersten Nachricht TE oder der Daten gespeichert sein. Die vorgegenen Anforde rungen können beispielsweise eine Anforderung zum Bereitstel len von 500 MW für 24 h an einem vorgegebenen Datum (z. B. 9. Juli 2018 um 14:43 Uhr) an einem vorgegebenen Ort oder Region (z. B. München oder Bayern oder Deutschland) . Die vorgegenen Anforderungen können beispielsweise Fertigungsanweisungen o- der Fertigungsvorgaben umfassen, um z. B. ein Getriebe oder Getriebeteile an einem vorgegebenen Datum (z. B. 9. Juli 2018 um 14:43 Uhr), an einem vorgegebenen Ort oder Region (z. B. München oder Bayern oder Deutschland) , innerhalb eines vorge gebenen Zeitraums (startend am vorgegebenen Datum) , mit einer vorgegenen Präzision (z. B. Abweichung von CAD-Daten um maxi mal 1 mm) zu fertigen. Entsprechend können die vorgegenen An forderungen die genannten Beispiele oder eine Kombination der genannten Beispiele umfassen.
Die vorgegebenen Anforderungen können beispielsweise auch vo rausgesetzte Steuerbefehle sein bzw. solche umfassen. Die vorgegebenen Anforderungen geben dabei z. B. vor, dass die vorausgesetzten Steuerbefehle beispielsweise von einem der Geräte bzw. dem entsprechenden Gerät bereits ausgeführt sein sollen, bevor die Daten oder die entsprechenden Nachrichten bzw. Nachrichteninhalt (z. B. der konvertierte Nachrichtenin halt) an die Geräte übermittelt werden. Alternativ oder zu sätzlich können die vorausgesetzten Steuerbefehle auch weite re Geräte betreffen, wobei die weiteren Geräte beispielsweise Geräte eines weiteren Automatisierungsnetzwerkes sind. Bei spielsweise wird gefordert, dass von dem weiteren Automati sierungsnetzwerk (z. B. ein Verteilungsnetzwerk für Treib stoff) zumindest eine vorgegebene Menge an Treibstoff für die Generatoren bereitgestellt wurde, bevor die entsprechenden Nachrichten mit Steuerbefehlen an die Geräte (z. B. Turbinen, Gasturbinen) übertragen werden. Um z. B. zu überprüfen, ob die vorausgesetzten Steuerbefehle bereits ausgeführt sind, können beispielsweise entsprechende Nachrichten bzw. Transak tionen im verteilten Datenbanksystem (oder in der Netzwerk- Applikation) ausgelesen bzw. überprüft werden, die beispiels weise eine Ausführung der vorausgesetzten Steuerbefehle be stätigen. Diese entsprechenden Nachrichten bzw. Transaktionen können beispielsweise als Bestätigungstransaktionen bezeich net werden und werden von den entsprechenden Geräten bei spielsweise nach einer Ausführung der vorausgesetzten Steuer befehle, z. B. mittels der Sendevorrichtung S, in dem ver teilten Datenbanksystem (oder in der Netzwerk-Applikation) gespeichert. Diese Bestätigungstransaktionen können bei spielsweise Informationen über die Ausführung der vorausge setzten Steuerbefehle umfassen (z. B. Ort, Zeitpunkt und Aus führungsdauer der vorausgesetzten Steuerbefehle) , Geräteei genschaften (z. B. welche Geräte haben die vorausgesetzten Steuerbefehle ausgeführt), Gerätezustände (z. B. war das Ge rät in einem regulären Betriebszustand, war es in einem War tungszustand) .
Die vorausgeführten Steuerbefehle sind auch dahingehend vor teilhaft, wenn das Automatisierungsnetzwerk AN und die Geräte eine Fertigungsanlage sind (z. B. sind die Gerät Fertigungs maschinen) . Beispielsweise kann mit den vorausgesetzten Steu erbefehlen auch sichergestellt werden, dass ein zu fertigen des Werkstück sich in einem (Fertigungs-) Zustand befindet, damit die Steuerbefehle des zu übertragenden (konvertierten) Nachrichteninhalts oder der zu übertragenden Daten korrekt für eine weitere Bearbeitung des Werkstücks ausgeführt werden können. Beispielsweise wird in den vorausgesetzten Steuerbe fehlen vorgegeben, dass ein Werkstück von einer Drehbank (z. B. das erste Gerät Dl) zunächst bearbeitet wird und für die weitere Bearbeitung an einer vorgegebenen Position bereitge stellt wird. Der (aktuelle, konvertierte) Nachrichteninhalt oder die (aktuell, konvertierten) Daten mit Steuerbefehlen, der übertragen werden soll, ist beispielsweiseweise für eine Poliermaschine ((z. B. das zweite Gerät D2) bestimmt (soll also an diese übertragen werden) , die das entsprechende Werk stück an der vorgegebenen Position aufnimmt und poliert.
Die vorausgeführten Steuerbefehle sind auch dahingehend vor teilhaft, wenn das Automatisierungsnetzwerk AN und die Geräte beispielsweise vernetzte Geldautomaten oder Bankautomaten sind. Beispielsweise kann mit den vorausgesetzten Steuerbe fehlen auch sichergestellt werden, dass eine Geldauszahlung durch einen Bankautomaten (z. B. durch das Gerät Dl) dann er folgt, wenn vorher eine Authentifizierung des Bankkunden er folgreich durchgeführt wurde und eine Bestätigung dafür in entsprechenden Bestätigungstransaktionen des verteilten Da tenbanksystems (oder der Netzwerk-Applikation) gespeichert wurde .
Beispielsweise wird in den vorausgesetzten Steuerbefehlen (also den vorgegeben Anforderungen) vorgegeben, dass z. B. eine Nutzerauthentisierung bzw. Nutzerauthentifizierung mit tels eines vorgegebenen Authentifizierungsverfahrens (z. B. Zwei-Faktor-Authentifizierung, Pin-Eingabe) erfolgreich er folgt sein muss, bevor z. B. die Auszahlung des Geldes er laubt bzw. durchführt wird. Die Empfangsvorrichtung E (z. B. mittels der zweiten Kommunikationsschnittstelle 240) über trägt erst dann die entsprechenden (konvertierten) Daten oder den entsprechenden (konvertierten) Nachrichteninhalt (der entsprechenden ersten Nachricht) mit Steuerbefehlen an das Gerät (z. B. den Geldautomat), wenn z. B. in dem verteilten Datenbanksystem (oder in der Netzwerk-Applikation) eine Be stätigungstransaktion vorliegt, die beispielsweise eine er folgreiche Nutzerauthentisierung bzw. Nutzerauthentifizierung bestätigt. Mit den Steuerbefehlen wird dann beispielsweise der Geldzähler konfiguriert, dass die von dem Nutzer bzw. Bankkunden angeforderte Geldmenge bereitgestellt wird und an schließend die Klappe zu Geldentnahme geöffnet wird.
Insbesondere ist in diesen Varianten auch die Sendevorrich tung S dahingehend ausgebildet, die entsprechenden Nachrich ten bzw. Bestätigungstransaktionen ggf. für die vorausgesetz ten Steuerbefehle an das verteilte Datenbanksystem (oder an die Netzwerk-Applikation) zu übermitteln bzw. im verteilten Datenbanksystem (oder in der Netzwerk-Applikation) zu spei chern, wenn die Geräte die entsprechenden vorausgesetzten Steuerbefehle bzw. Steuerbefehl erfolgreich ausgeführt haben. War die Ausführung beispielsweise nicht erfolgreich, so kann auch dies in Bestätigungstransaktionen bzw. entsprechenden Nachrichten im verteilten Datenbanksystem (oder in der Netz werk-Applikation) gespeichert werden.
In einer Variante ist das Konvertierungsmodul 230 z. B. dazu eingerichtet die Daten oder den Nachrichteninhalt der ent sprechenden ersten Nachricht TE (z. B. ist die erste Nach richt eine Nachricht der ersten Nachrichten) in ein Datenfor mat für das zugeordnete Gerät (z. B. das erste Gerät Dl) zu konvertieren. Insbesondere alte Geräte (sog. Legacy-Geräte) sind nicht in der Lage die Kommunikationsdaten einer Netz werk-Applikation oder eines verteilten Datenbanksystems bzw. einer Blockkette zu verarbeiten. Entsprechend wird anhand des zugeordneten Gerätes überprüft, welche der Daten oder Teile der Daten oder Daten des Nachrichteninhalts von dem Gerät (z. B. dem zugeordneten Gerät) verarbeitet werden können und/oder es wird anhand des zugeordneten Gerätes überprüft wie diese Daten für ein entsprechendes Gerät (z. B. dem zugeordneten Gerät) konvertiert werden können.
Das Konvertierungsmodul in dann beispielsweise dazu einge richtet für das Geräte zu überprüfen (z. B. anhand der Zuord nung, die z. B. für die Bestimmung für ein entsprechendes Ge rät berechnet wurde) wie diese Daten (z. B. des Nachrichten inhalts oder der Nachricht oder die Teile der Daten) für das entsprechende Gerät (z. B. dem zugeordneten Gerät) zu konver tieren sind.
Beispielsweise kann im Falle der oben genannten technischen Aufgabe (ansteuern des Reservekraftwerkes) , die in den Daten oder in der Nachricht gespeichert ist, in konkrete Steuerbe fehle für die Geräte (z. B. das zugeordnete Gerät) bzw. Gene ratoren konvertiert werden. Die Steuerbefehle werden entspre chend den Anforderungen der Aufgabe ermittelt. Beispielsweise werden die ersten beiden Geräte bzw. Gasturbinen mit voller Leistung genutzt bzw. gefahren und die dritte Gasturbine nur mit halber Leistung um die geforderten 500 MW Leistung zu er bringen. Dabei ist das Datenformat z. B. ein proprietäres Da tenformat der Geräte.
Für die erläuterten Ausführungsbeispiele, Ausführungsformen oder Varianten von diesen können beispielsweise anstelle von ersten Nachrichten oder des Nachrichteninhaltes der ersten Nachricht TE auch Daten verwendet werden.
Die Daten können dabei beispielsweise die ersten Nachrichten oder die erste Nachricht oder der Nachrichteninhalt der ers ten Nachricht oder Daten einer Kommunikationsverbindung sein.
Nachfolgend werden noch einige Varianten des Ausführungsbei spiels der Empfangsvorrichtung erläutert, bei dem insbesonde re Varianten des Konvertierungsaspektes erläutert werden.
In einer weiteren Variante kann die Empfangsvorrichtung fol gende Merkmale umfassen:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Netzwerkschnittstelle dazu eingerichtet ist mit einem verteilten Da tenbanksystem (oder einer Netzwerk- Applikation) kommunizieren,
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist Daten oder erste Nachrichten von dem verteilten Daten banksystem (oder der Netzwerk-Applikation) zu empfangen;
beispielsweise ein Identifikationsmodul, wobei
beispielsweise das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder des je weiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung zu berechnen, um z. B. zu ermitteln für welche Geräte eine entspre chende erste Nachricht bestimmt ist;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht TE in ein Datenformat für ein Gerät (z. B. ein durch die Zuordnung bestimmtes Gerät wie z. B. ein Legacy-Gerät oder eines der Geräte D1-D3) zu konvertieren,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist anhand des Gerätes (z. B. an hand der entsprechenden Zuordnung für ein ent sprechendes Gerät) zu überprüfen, welche Daten (oder Datenteile) z. B. der Daten oder des Nachrichteninhalts von dem Gerät verarbeitet werden können,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist für das Geräte zu überprüfen (z. B. anhand der Zuordnung, die z. B. für die Bestimmung für ein entsprechendes Gerät be rechnet wurde) wie diese Daten (z. B. des Nachrichteninhalts oder der Nachricht) oder Datenteile für das entsprechende Gerät (z. B. dem zugeordneten Gerät) zu konvertieren sind; beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist die Daten und/oder die konvertierte Daten und/oder den konvertieren Nachrichteninhalt und/oder den Nachrichteninhalt der entsprechenden ersten Nachricht (und/oder die erste Nachricht selbst) an das Gerät zu übertragen, das der entsprechenden ersten Nachricht zugeordnet ist .
In einer weiteren Variante kann die Empfangsvorrichtung fol gende Merkmale umfassen:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Netzwerkschnittstelle dazu eingerichtet ist mit einem verteilten Da tenbanksystem (oder einer Netzwerk- Applikation) kommunizieren,
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist Daten oder erste Nachrichten von dem verteilten Daten banksystem (oder der Netzwerk-Applikation) zu empfangen;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist den Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht TE in ein Datenformat für ein Gerät (z. B. ein zugeordnetes Gerät wie z. B. ein Legacy-Gerät oder eines der Geräte D1-D3 oder z. B. ein durch die Zuordnung bestimmtes Gerät wie z. B. ein Legacy-Gerät oder eines der Geräte D1-D3) zu konvertieren,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist anhand des Gerätes zu über prüfen, welche Daten (oder Datenteile) z. B. der Daten oder des Nachrichteninhalts von dem Gerät verarbeitet werden können, beispielsweise das Konvertierungsmodul dazu eingerichtet ist für das Gerätes zu überprüfen (z. B. das zugeordnete Gerät) wie diese Daten (oder Datenteile) für das entsprechende Gerät (z. B. dem zugeordneten Gerät) zu konvertieren sind;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist den kon vertieren Nachrichteninhalt und/oder den Nach richteninhalt der entsprechenden ersten Nach richt (und/oder die erste Nachricht selbst) an das Gerät zu übertragen, das der entsprechen den ersten Nachricht zugeordnet ist.
In einer weiteren Variante kann die Empfangsvorrichtung fol gende Merkmale umfassen:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist Daten oder erste Nachrichten von dem verteilten Daten banksystem (oder einer Netzwerk-Applikation) zu empfangen;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht TE (z. B. ist die erste Nachricht eine Nach richt der ersten Nachrichten) in ein Datenfor mat für ein Gerät (z. B. ein zugeordnetes Ge rät wie z. B. ein Legacy-Gerät oder eines der Geräte D1-D3 oder z. B. ein durch die Zuord nung bestimmtes Gerät wie z. B. ein Legacy- Gerät oder eines der Geräte D1-D3) zu konver tieren,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist anhand des Gerätes zu über prüfen, welche Daten (oder Datenteile) z. B. der Daten oder des Nachrichteninhalts von dem Gerät verarbeitet werden können, beispielsweise das Konvertierungsmodul dazu eingerichtet ist für das Gerätes zu überprüfen (z. B. das zugeordnete Gerät) wie diese Daten (oder Datenteile) für das entsprechende Gerät (z. B. dem zugeordneten Gerät) zu konvertieren sind;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist die Daten und/oder die konvertierten Daten und/oder den konvertieren Nachrichteninhalt und/oder den Nachrichteninhalt der entsprechenden ersten Nachricht (und/oder die erste Nachricht selbst) an das Gerät zu übertragen, das der entsprechenden ersten Nachricht zugeordnet ist .
In einer weiteren Variante kann die Empfangsvorrichtung fol gende Merkmale umfassen:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist Daten oder erste Nachrichten von dem verteilten Daten banksystem (oder der Netzwerk-Applikation) zu empfangen;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht TE (z. B. ist die erste Nachricht eine Nach richt der ersten Nachrichten) in ein Datenfor mat für ein Gerät (z. B. ein zugeordnetes Ge rät wie z. B. ein Legacy-Gerät oder eines der Geräte D1-D3 oder z. B. ein durch die Zuord- nung bestimmtes Gerät wie z. B. ein Legacy- Gerät oder eines der Geräte D1-D3) zu konver tieren,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist anhand des Gerätes zu über prüfen, welche Daten (oder Datenteile) z. B. der Daten oder des Nachrichteninhalts von dem Gerät verarbeitet werden können, beispielsweise das Konvertierungsmodul dazu eingerichtet ist für das Gerätes zu überprüfen (z. B. das zugeordnete Gerät) wie diese Daten (oder Datenteile) für das entsprechende Gerät (z. B. dem zugeordneten Gerät) zu konvertieren sind;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist die Daten und/oder die konvertierten Daten und/oder den konvertieren Nachrichteninhalt und/oder den Nachrichteninhalt der entsprechenden ersten Nachricht (und/oder die erste Nachricht selbst) an das Gerät zu übertragen, das der entsprechenden ersten Nachricht zugeordnet ist .
Das Gerät für das der Nachrichteninhalt der erste Nachricht TE und/oder die erste Nachricht TE konvertiert wird, kann beispielsweise anhand der den Daten oder der dem Nachrichten inhalt und/oder der ersten Nachricht TE zugeordneten Gerät konvertiert werden. Dies kann z. B. Anhand von der Zuordnung und/oder dem Zuordnungsdatensatz und den darin gespeicherten Daten gesteuert werden, indem z. B. die Zuordnung und/oder dem Zuordnungsdatensatz entsprechende Inforationen oder An weisungen für die Konvertierung umfassen.
In einer weiteren Variante kann hierzu beispielsweise die Empfangsvorrichtung folgende Merkmale umfassen: beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist Daten oder erste Nachrichten von dem verteilten Daten banksystem (oder der Netzwerk-Applikation) zu empfangen;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht TE (z. B. ist die erste Nachricht eine Nach richt der ersten Nachrichten) in ein Datenfor mat zu konvertieren,
beispielsweise in ein Datenformat eines Gerä tes konvertiert wird (z. B. ein zugeordnetes Gerät wie z. B. ein Legacy-Gerät oder eines der Geräte D1-D3 oder z. B. ein durch die Zu ordnung bestimmtes Gerät wie z. B. ein Legacy- Gerät oder eines der Geräte D1-D3) ,
beispielsweise das Gerät mittels einer/der Zu ordnung den Daten oder dem Nachrichteninhalt der entsprechenden ersten Nachricht TE oder der ersten Nachricht TE zugeordnet ist, beispielsweise das Konvertierungsmodul dazu eingerichtet ist anhand des Gerätes zu über prüfen, welche Daten (oder Datenteile) z. B. der Daten oder des Nachrichteninhalts von dem Gerät verarbeitet werden können,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist für das Gerätes zu überprüfen (z. B. das zugeordnete Gerät) wie diese Daten (oder Datenteile) für das entsprechende Gerät (z. B. dem zugeordneten Gerät) zu konvertieren sind;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei beispielsweise die zweite Kommunikations
schnittstelle dazu eingerichtet ist die Daten und/oder die konvertierten Daten und/oder den konvertieren Nachrichteninhalt und/oder den Nachrichteninhalt der entsprechenden ersten Nachricht (und/oder die erste Nachricht selbst) an das Gerät zu übertragen, das der entsprechenden ersten Nachricht zugeordnet ist .
Unter Datenteile oder Teil der Daten oder Teile der Daten wird beispielsweise ein Datenbereich (z. B. ein Adressbereich oder ein Speicherbereich) und/oder Datentypen verstanden, wo bei die Daten beispielsweise binäre Daten und/oder textba sierte Daten (z. B. XML-Daten oder JSON, ASCII-Daten) sind, die vorzugsweise ein spezifischen Datenformat aufweisen. Bei den binären Daten handelt es sich z. B. um Daten einer Binär datei und bei den textbasierenden Daten handelt es sich bei spielsweise um Daten einer Textdatei.
Beispielsweise kann die Empfangsvorrichtung auch ein Identi fikationsmodul, so wie es in den diversen Varianten und Aus führungsbeispielen der Empfangsvorrichtung erläutert ist.
Die Empfangsvorrichtung kann beispielsweise anstelle des Nachrichteninhalts der ersten Nachricht TE, die Nachricht TE selbst oder auch die Daten (z. B die ersten Nachrichten) ei ner Kommunikationsverbindung konvertieren und/oder einem Ge rät zuordnen und/oder dem zugeordneten Gerät übertragen.
Die erste Kommunikationsschnittstelle ist z. B. dazu einge richtet mit einem verteilten Datenbanksystem (oder einer Netzwerk-Applikation) zu kommunizieren. Beispielsweise ist die erste Kommunikationsschnittstelle dazu eingerichtet Daten oder erste Nachrichten von dem verteilten Datenbanksystem (o- der der Netzwerk-Applikation) zu empfangen und/oder über eine Kommunikationsverbindung mit dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) zu kommunizieren und z. B. Daten mit dem verteilten Datenbanksystem (oder der Netzwerk- Applikation) auszutauschen.
Beispielsweise ist das Identifikationsmodul dazu eingerichtet anhand der Daten oder des jeweiligen Nachrichteninhalts der ersten Nachrichten oder der ersten Nachrichten oder einer Nachricht TE der ersten Nachrichten oder der Daten der Kommu nikationsverbindung eine Zuordnung zu berechnen, um z. B. zu ermitteln für welche Geräte die daten oder eine entsprechende erste Nachricht TE oder erste Nachrichten oder der Nachrich teninhalt einer Nachricht (oder der Nachrichten) oder die Da ten der Kommunikationsverbindung bestimmt sind. Mit anderen Worten ordnet das Identifikationsmodul z. B. Daten (z. B. der jeweilige Nachrichteninhalts der ersten Nachrichten oder die ersten Nachrichten oder die erste Nachricht TE der ersten Nachrichten oder die Daten der Kommunikationsverbindung oder der Nachrichteninhalt) ein entsprechendes Gerät zu.
Beispielsweise ist das Konvertierungsmodul dazu eingerichtet die Daten oder den Nachrichteninhalt der entsprechenden ers ten Nachricht TE oder die ersten Nachrichten oder die erste Nachricht oder die Daten der Kommunikationsverbindung in ein Datenformat für ein Gerät (z. B. ein durch die Zuordnung be stimmtes Gerät wie z. B. ein Legacy-Gerät oder eines der Ge räte D1-D3) zu konvertieren.
Beispielsweise ist das Konvertierungsmodul dazu eingerichtet anhand des Gerätes (z. B. anhand der entsprechenden Zuordnung für ein entsprechendes Gerät bzw. das zugeordnete Gerät) zu überprüfen, welche Daten z. B. des Nachrichteninhalts oder der Daten der Kommunikationsverbindung oder der Nachrichten oder der ersten Nachricht von dem Gerät verarbeitet werden können .
Beispielsweise ist das Konvertierungsmodul dazu eingerichtet für das Geräte zu überprüfen (z. B. anhand der Zuordnung, die z. B. für die Bestimmung für ein entsprechendes Gerät berech net wurde) wie diese Daten (z. B. des Nachrichteninhalts oder der Nachricht) für das entsprechende Gerät (z. B. dem zuge ordneten Gerät) zu konvertieren sind.
Beispielsweise ist die zweite Kommunikationsschnittstelle da zu eingerichtet die konvertierten Daten an das Gerät zu über tragen, das den entsprechenden Daten zugeordnet ist.
Die konvertierten Daten sind dabei ggf. der jeweilige konver tierte Nachrichteninhalt der ersten Nachrichten oder die konvertierte erste Nachrichten oder der konvertierte Nach richteninhalt oder die konvertierte erste Nachricht TE der ersten Nachrichten oder die konvertierten Daten der Kommuni kationsverbindung .
Beispielsweise kann anstelle eines verteilten Datenbanksys tems in den Ausführungsbeispielen und Varianten auch eine Netzwerkapplikation (oder auch Netzwerk-Applikation genannt) verwendet werden.
In einer weiteren Variante kann beispielsweise die Empfangs vorrichtung folgende Merkmale umfassen:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist Daten von einer Netzwerkapplikation zu empfangen;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten in ein Datenformat zu konvertieren,
beispielsweise in das Datenformat eines Gerä tes konvertiert wird (z. B. ein zugeordnetes Gerät wie z. B. ein Legacy-Gerät oder eines der Geräte D1-D3 oder z. B. ein durch die Zu ordnung bestimmtes Gerät wie z. B. ein Legacy- Gerät oder eines der Geräte D1-D3) ,
beispielsweise das Gerät mittels einer/der Zu ordnung der Daten zugeordnet ist, beispielsweise das Konvertierungsmodul dazu eingerichtet ist anhand des Gerätes zu über prüfen, welche Daten (z. B. welcher Teil der Daten oder welcher Datenteil) z. B. der Daten von dem Gerät verarbeitet werden können, beispielsweise das Konvertierungsmodul dazu eingerichtet ist für das Gerätes zu überprüfen (z. B. das zugeordnete Gerät) wie diese Daten (z. B. der entsprechende Teil der Daten) für das entsprechende Gerät (z. B. dem zugeordne ten Gerät) zu konvertieren ist;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist die konvertierten Daten an das Gerät zu übertra gen, das den Daten oder Datenteilen zugeordnet ist .
Die Empfangsvorrichtung kann beispielsweise ein Identifikati onsmodul umfassen, wobei beispielsweise das Identifikations modul dazu eingerichtet ist anhand der Daten die Zuordnung zu berechnen, um z. B. zu ermitteln für welche Geräte die Daten bestimmt sind.
In einer weiteren Variante des Ausführungsbeispiels umfasst die Empfangsvorrichtung beispielsweise eine erste Kommunika tionsschnittstelle 210, wobei beispielsweise die erste Kommu nikationsschnittstelle dazu eingerichtet ist Daten von einer Netzwerkapplikation zu empfangen.
Darüber hinaus umfasst die Empfangsvorrichtung beispielsweise ein Konvertierungsmodul, wobei beispielsweise das Konvertie rungsmodul dazu eingerichtet ist die Daten in ein Datenformat für ein den Daten zugeordnetes Gerät zu konvertieren. Zudem ist beispielsweise das Konvertierungsmodul dazu eingerichtet für das (zugeordnete) Gerät zu bestimmen, ob und/oder wie diese Daten für das entsprechende (zugeordnete) Gerät (z. B. das zugeordnete Gerät) zu konvertieren sind.
Darüber hinaus umfasst die Empfangsvorrichtung beispielsweise eine zweite Kommunikationsschnittstelle (240), wobei bei spielsweise die zweite Kommunikationsschnittstelle dazu ein gerichtet ist die konvertieren Daten und/oder die Daten an das Gerät zu übertragen, das den Daten zugeordnet ist.
In einer weiteren Variante des Ausführungsbeispiels umfasst die Empfangsvorrichtung beispielsweise eine erste Kommunika tionsschnittstelle, wobei beispielsweise die erste Kommunika tionsschnittstelle dazu eingerichtet ist Daten von einer Netzwerkapplikation zu empfangen.
Darüber hinaus umfasst die Empfangsvorrichtung beispielsweise ein Konvertierungsmodul, wobei beispielsweise das Konvertie rungsmodul dazu eingerichtet ist ein Konvertierungsprüfergeb nis für die Daten zu bestimmen. Das Konvertierungsprüfergeb nis gibt dabei z. B. an, ob und/oder wie die Daten beispiels weise in ein Datenformat für das den Daten zugeordnete Gerät zu konvertieren sind. Das Bestimmen des Konvertierungsprüfer gebnisses erfolgt vorzugsweise gerätespezifisch für ein den Daten zugeordnetes Gerät (oder das den Geräten zugeordnete Gerät), um z. B. festzustellen, ob das zugeordnete Gerät überhaupt die entsprechenden Daten (oder Teile der Daten) verarbeiten kann und/oder falls notwendig, die Daten oder Teile der Daten spezifisch für das zugeordnete Gerät zu kon vertieren .
Damit kann beispielsweise für die Daten, denen z. B. das Ge rät zugeordnet ist, das Konvertierungsprüfergebnis gerätespe zifisch (z. B. für das zugeordnete Gerät) bestimmt werden.
Mit anderen Worten ist das Konvertierungsmodul z. B. dazu eingerichtet das Konvertierungsprüfergebnis für die Daten zu bestimmen, wobei z. B. das Konvertierungsprüfergebnis abhän gig von dem zugeordneten Gerät bestimmt wird. Beim Bestimmen des Prüfergebnisses wird beispielsweise geprüft, ob das zuge- ordnete Gerät die Daten (überhaupt) verarbeiten kann und/oder es wird auch anhand des zugeordneten Gerätes überprüft wie diese Daten für ein entsprechendes Gerät konvertiert werden, damit das zugeordnete Gerät diese Daten z. B. verarbeiten kann. Das Konvertierungsprüfergebnis gibt dann z. B. an ob und/oder wie die Daten beispielsweise in ein Datenformat für das den Daten zugeordnete Gerät zu konvertieren sind.
Darüber hinaus ist das Konvertierungsmodul z. B. dazu einge richtet die Daten abhängig von dem Konvertierungsprüfergebnis in das Datenformat für das den Daten zugeordnetes Gerät zu konvertieren .
Darüber hinaus umfasst die Empfangsvorrichtung beispielsweise eine zweite Kommunikationsschnittstelle, wobei beispielsweise die zweite Kommunikationsschnittstelle dazu eingerichtet ist die konvertieren Daten und/oder die Daten an das Gerät zu übertragen, das den Daten zugeordnet ist.
In weiteren Varianten der Empfangsvorrichtung ist das Konver tierungsmodul dazu eingerichtet anhand des Gerätes zu über prüfen, welche Daten (z. B. welcher Teil der Daten und/oder alle Daten) der Daten von dem (zugeordneten) Gerät verarbei tet werden können.
Das Ergebnis dieser Prüfung wird beispielsweise im Konvertie rungsprüfergebnis gespeichert, wobei beispielsweise das
Konvertierungsprüfergebnis angibt welche Teile der Daten oder ob die Daten als solche für das zugeordnete Gerät zu konver tieren sind. Mit anderen Worten umfasst das Konvertierungs prüfergebnis z. B. gerätespezifische Konvertierungsanweisun gen für die Daten, um die Daten beispielsweise spezifisch für das zugeordnete Gerät zu konvertieren, damit das zugeordnete Gerät z. B. die entsprechenden Daten (z. B. auch die zu kon vertierenden Teile der Daten) verarbeiten kann. Um beispiels weise festzustellen, ob die Daten von dem zugeordneten Gerät ausgeführt und/oder verarbeitet werden können, können für die Prüfung die Geräteeigenschaften und/oder die aktuellen Gerä- teeigenschaften und/oder Geräteinformationen des zugeordneten Gerätes berücksichtigt werden. Die Geräteinformationen können beispielsweise auch die entsprechenden Geräteeigenschaften (z. B. aktuelle Geräteeigenschaften) umfassen.
Beispielsweise können die Daten in einem Text-Format, XML- Format oder JSON-Format vorliegen, das zugeordnete Gerät kann jedoch entsprechend seiner Geräteeigenschaften (nur) ein be stimmtes binäres Datenformat verarbeiten. Bei dem Prüfen wird dies dann festgestellt und das Konvertierungsprüfergebnis um fasst dann beispielsweise Angaben darüber, dass die Daten für eine Verarbeitung durch das Gerät konvertiert werden müssen und/oder kann zusätzlich beispielsweise Anweisungen umfassen, wie die Daten zu konvertieren sind. In den Daten können bei spielsweise auch Datentypen verwendet werden, die mit dem zu geordneten Gerät inkompatibel sind. Dies können beispielswei se Double-Datentypen, Big-Integer-Datentypen oder Datumsfor mate sein, die das zugeordnete Gerät nicht verarbeiten kann. Auch hierfür kann dann z. B. eine entsprechende Konvertierung vorgenommen werden, wie dies bereits für andere Beispiele ge zeigt wurde.
Wird beispielsweise beim Prüfen festgestellt, dass Teile der Daten (z. B. ein Teil eines Nachrichteninhalts, der in den Daten gespeichert ist) von dem zugeordneten Gerät nicht ver arbeitet werden können (also z. B. das entsprechende Daten format für die entsprechenden Teile der Daten inkompatibel ist) und weitere Teile der Daten durch das Gerät verarbeitet werden können, so konvertiert beispielsweise das Konvertie rungsmodul vorzugsweise nur die Daten, die durch das Gerät nicht verarbeitet werden können (bzw. inkompatibel sind) . Die konvertierten Teile der Daten und die Teile der Daten, die das zugeordnete Gerät ausführen konnte, werden dann wieder zu (konvertierten) Daten (oder einem Datensatz) zusammengeführt, der z. B. von dem zugeordneten Gerät als Ganzes verarbeitet werden kann. Diese konvertierten Daten (oder Datensatz) wer den dann entsprechend an das zugeordnete Gerät übertragen. Dies ist beispielsweise vorteilhaft, wenn das zugeordnete Ge rät beispielsweise Datumsangaben nur bis zu einem bestimmten Zeitpunkt verarbeiten kann (z. B. 31.12.1999). In einem sol chen Fall können z. B. aktuelle Datumsangaben (1.1.2018) in ein verarbeitbares Datum konvertiert werden (z. B. 1.1.1988). Bei der Konvertierung werden beispielsweise die inkompatiblen Datenteile (z. B. Datumsangaben, die nach dem 31.12.1999 lie gen) mittels einer Konvertierungsvorschrift der gerätespezi fischen Konvertierungsanweisungen (z. B. aktuelles Datum - 30 Jahre) in ein kompatibles Datenformat für das zugeordnete Ge rät gebracht (z. B. 1.1.1988).
Es kann beispielsweise beim Überprüfen auch festgestellt wer den, dass bestimmte Teile der Daten nicht konvertierbar sind. Das heißt beispielsweise, es gibt keine Möglichkeit entspre chende Daten bzw. Teile der Daten in ein Datenformat zu kon vertieren, das vom zugeordneten gerät verarbeitet werden kann. In einem solchen Fall kann beispielsweise eine Übertra gung von solchen Daten an das zugeordnete Gerät unterbunden werden und/oder eine Fehlermeldung an einen Administrator ge schickt werden. Alternativ oder zusätzlich können entspre chende Daten oder Teile der Daten mit Standardwerten belegt werden (z. B. ein Leer-String, ein Datum in einem gültigen Format, das z. B. nicht das aktuelle Datum ist), damit z. B. zumindest andere Teile der Daten übertragen werden können.
In weiteren Varianten der Empfangsvorrichtung umfasst die Empfangsvorrichtung ein Identifikationsmodul (falls noch nicht vorhanden) , wobei das Identifikationsmodul insbesondere dazu eingerichtet ist anhand der Daten eine Zuordnung zu be rechnen, für welche Geräte beispielsweise die Daten bestimmt sind und wobei das Identifikationsmodul insbesondere dazu eingerichtet ist beispielsweise anhand der Daten eine Zuord nung oder die Zuordnung zu berechnen, um beispielsweise das zugeordnete Gerät zu bestimmen.
Mit anderen Worten wird beispielsweise anhand der Daten durch das Identifikationsmodul berechnet (oder festgestellt) , wel- ches Gerät die Daten verarbeiten soll. Entsprechend wird ein solches Gerät dann beispielsweise mittels der Zuordnung, z.
B. in Form eines Zuordnungsdatensatzes, den Daten zugeordnet. Die Zuordnung oder der Zuordnungsdatensatz kann beispielswei se Geräteinformationen oder Geräteeigenschaften des zugeord neten Gerätes umfassen. Diese Zuordnung oder der Zuordnungs datensatz kann dann beispielsweise von dem Konvertierungsmo dul verwendet werden, um z. B. zu überprüfen, welche Daten (z. B. welcher Teil der Daten und/oder alle Daten) der Daten von dem zugeordneten Gerät verarbeitet werden können.
In weiteren Ausführungsformen der Empfangsvorrichtungen kann diese zusätzlich jeweils beispielsweise eine Konfigurations schnittstelle und/oder einen Lüfter und/oder ein Monitoring modul umfassen. Mit der Konfigurationsschnittstelle können beispielsweise Updates oder Firmwareversionen eingespielt werden. Mit dem Lüfter kann z. B. die Empfangsvorrichtung ge kühlt werden. Mit dem Monitoringmodul kann der Zustand und/oder das Betriebsverhalten der entsprechenden Empfangs vorrichtung überwacht werden und z. B. in einer Datei gespei chert werden (z. B. einer Logging-Datei ) .
Die Sendevorrichtung S umfasst eine erste Kommunikations schnittstelle 310 (z. B. eine Netzwerkschnittstelle zu einem
Ethernetnetzwerk), ein Identifikationsmodul 320, ein Konver tierungsmodul 330 und eine zweite Kommunikationsschnittstelle (z. B. eine Netzwerkschnittstelle zu einem Ethernetnetzwerk) 340, die über einen Bus 301 miteinander kommunikativ verbun den sind.
Die erste Kommunikationsschnittstelle 310 ist dazu eingerich tet mit den Geräten zu kommunizieren. Die erste Kommunikati onsschnittstelle 310 ist mit dem dritten Bus BS1 verbunden und steht damit mit der zweiten Kommunikationsschnittstelle NI2 des Systems SYS kommunikativ in Verbindung. Zudem ist die erste Kommunikationsschnittstelle dazu eingerichtet erste Nachrichten oder Daten von den Geräten zu empfangen. Dabei sind die die Daten oder die ersten Nachrichten z. B. in einem proprietären Datenformat der Geräte gespeichert.
Das Identifikationsmodul 320 ist dazu eingerichtet anhand der Daten oder des jeweiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung zu berechnen, welches Gerät eine ent sprechende erste Nachricht NS oder die Daten gesendet hat.
Beispielsweise können die Daten oder kann ein entsprechender Nachrichteninhalt eine digitale Signatur, ein digitales Zer tifikat, eine Geräteadresse (z. B. eine Netzwerkadresse), ein Gerätestatus (z. B. einen Gerätezustand) oder einen eindeuti gen Identifizieren (z. B. eine UID) umfassen, anhand dessen das entsprechende Gerät oder die Geräte bestimmt werden kön nen. Beispielsweise können die Daten oder kann die Nachricht bzw. der Nachrichteninhalt einen Gerätestatus umfassen, zu welchem Grad die technische Aufgabe durch die Geräte bzw. das Automatisierungsnetzwerk erfüllt wurde.
Zurückkommend auf das oben genannte Beispiel mit den Gastur binen: Es könnte z. B. sein, dass die Geräte in Summe nicht die geforderte Leistung erbringen. Beispielsweise kann die erbrachte Leistung in Summe nur 300 MW betragen. Auch können jeweils einzelne Nachrichten durch die Geräte verschickt wor den sein, z. B. zu welchem Grad bzw. in welchem Umfang sie jeweils die technische Aufgabe erfüllt haben (z. B. erstes Gerät 50 MW, zweites Gerät 100 MW, drittes Gerät 150 MW er brachte Leistung) . Die Sendevorrichtung S oder ein weiteres Gerät (z. B. das die Nachricht an die Sendevorrichtung S ge sendet hat) des Automatisierungsnetzwerkes AN berechnen dann, inwieweit die technische Aufgabe erfüllt ist. Der fehlende Teil der Leistung kann beispielsweise wieder als Nachricht über das verteilte Datenbanksystem (oder die Netzwerk- Applikation) an ein weiteres Automatisierungsnetzwerk eines Kohlekraftwerkes oder eines Windkraftwerkanlage als zweite Nachricht TS gesendet werden. Diese können dann beispielswei se den Leistungsfehlbetrag bei der Energieerzeugung erbrin gen. Die zweite Nachricht TS wird dann beispielsweise in Transaktionen (z. B. die zwölfte Transaktion T3d) des ver teilten Datenbanksystems (oder der Netzwerk-Applikation) ge speichert oder die zweite Nachricht (z. B. die zwölfte Trans aktion T3d) ist bereits eine in dem verteilten Datenbanksys tem (oder der Netzwerk-Applikation) gespeicherte Transaktion, nachdem diese erfolgreich versendet bzw. übertragen wurde.
Das Konvertierungsmodul 330 ist dazu eingerichtet die Daten oder den Nachrichteninhalt der entsprechenden ersten Nach richt NS in ein Datenformat für das verteilte Datenbanksystem (oder die Netzwerk-Applikation) zu konvertieren. Beispiels weise können die Daten oder der Nachrichteninhalt der ent sprechenden ersten Nachricht in ein allgemeingültiges Daten format (z. B. XML bzw. entsprechend eines XML-Schemas) kon vertiert werden, das kompatibel mit dem verteilten Datenbank system (oder der Netzwerk-Applikation) ist bzw. ein Datenfor mat ist, welches das verteilte Datenbanksystem (oder die Netzwerk-Applikation) verarbeiten kann.
In einer Variante ist das Konvertierungsmodul 330 insbesonde re ein optionales Modul. Dies ist beispielsweise der Fall, wenn die Daten oder der Nachrichteninhalt der entsprechenden ersten Nachricht nicht konvertiert werden muss bzw. der Nach richteninhalt bzw. die entsprechende erste Nachricht ein Da tenformat aufweist, das von dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) verarbeitet werden kann. In einem solchen Fall entspricht der konvertierte Nachrichtenin halt oder die konvertierten Daten beim Übertragen an die Netzwerk-Applikation oder das verteilte Datenbanksystem dem (unkonvertierten) Nachrichteninhalt der entsprechenden ersten Nachricht. Folglich wird beispielsweise die entsprechende erste Nachricht als zweite Nachricht an das verteilte Daten banksystem (oder die Netzwerk-Applikation) gesendet oder ana log werden die unkonvertierten Daten an das verteilte Daten banksystem oder die Netzwerkapplikation gesendet. Folglich entspricht insbesondere für entsprechende Ausführungsformen der Sendevorrichtung ggf. der Nachrichteninhalt der entspre chenden ersten Nachricht dem konvertierten Nachrichteninhalt. In dieser Variante kann die Sendevorrichtung folgende Merkma le umfassen:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist mit Gerä ten zu kommunizieren,
beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist erste Nachrichten oder Daten von den Geräten zu empfangen;
beispielsweise ein Identifikationsmodul, wobei
beispielsweise das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder des je weiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung berechnet, welches Ge rät eine entsprechende erste Nachricht gesen det hat;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist mit einem verteilten Datenbanksystem (oder einer Netz werk-Applikation) kommunizieren, beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist die Daten oder die konvertierten Daten oder den konvertierten Nachrichteninhalt und/oder den Nachrichtenin halt der entsprechenden ersten Nachricht (und/oder die erste Nachricht selbst) an das verteilte Datenbanksystem (oder die Netzwerk- Applikation) zu übertragen.
Die zweite Kommunikationsschnittstelle 340 ist dazu einge richtet den konvertieren Nachrichteninhalt oder die konver tierten Daten an das verteilte Datenbanksystem (oder die Netzwerk-Applikation) zu übertragen. Entsprechend ist die zweite Kommunikationsschnittstelle 340 mit dem vierten Bus BS2 verbunden und steht über diesen mit der zweiten Kommuni kationsschnittstelle NI2 des Systems SYS kommunikativ in Ver bindung. Die (entsprechenden) Daten oder der entsprechende Nachrichteninhalt, der an das verteilte Datenbanksystem (oder die Netzwerk-Applikation) übertragen wird, kann z. B. in Form einer zweiten Nachricht TE an die Geräte/das Gerät übertragen werden. Die zweite Nachricht TE kann hierbei beispielsweise eine Transaktion des verteilten Datenbanksystems (oder der Netzwerk-Applikation) sein, wobei die zweite Nachricht den konvertierten Nachrichteninhalt oder die konvertierten Daten umfasst/speichert .
Die Sendevorrichtung S und die Empfangsvorrichtung E können in unterschiedlichen Varianten jeweils ein eigenständiges Kryptographiemodul umfassen. Dies ist vorteilhaft, um die Si cherheit zu erhöhen, da sollte z. B. ein unbefugter Zugriff auf die kryptographische Daten eines der Kryptographiemodul erhalten haben, dieser Unbefugte nicht automatisch Zugriff auf die anderen kryptographische Daten des anderen Kryptogra phiemoduls erhält. Alternativ können die Sendevorrichtung S und die Empfangsvorrichtung E ein gemeinsames Kryptogra phiemodul nutzen. Dies ist vorteilhaft um die Herstellungs kosten für die einzelnen Module gering zu halten. Im Falle eines gemeinsamen Kryptographiemoduls können die entsprechen den kryptographischen Daten von der Sendevorrichtung S und/oder die Empfangsvorrichtung E gemeinsam genutzt werden.
Das Kryptographiemodul ist vorzugsweise durch ein einem Mani- pulationsschutzmodul (z. B. durch Tamper-
Mechanismen/Manipulationsschutz-Mechanismen) vor einem Zu griff von Unbefugten geschützt. Beispielsweise kann das Kryp tographiemodul eine mechanische und/oder eine elektrische und/oder elektronische und/oder elektromechanische Schutzvor richtung umfassen. Dies kann beispielsweise dadurch reali siert werden, dass das Kryptographiemodul die kryptographi sche Daten für die Geräte in einem geschützten Speichermodul bzw. Speicher (z. B. ein Schlüsselspeicher) speichert, auf dessen Daten (nur) das Kryptographiemodul zugreifen kann. Entsprechend sind dieser Speicher und/oder das Kryptogra phiemodul durch ein Stahlgehäuse geschützt (mechanische
Schutzvorrichtung), das z. B. einen Zugriff von Unbefugten unterbindet. Alternativ oder zusätzlich kann das Kryptogra phiemodul oder der Speicher durch eine Bohrschutzfolie ge schützt sein. Sobald jemand versucht auf unberechtigte Weise oder über eine unerlaubte Schnittstelle auf den Speicher zu zugreifen, werden z. B. die kryptographische Daten gelöscht.
Das Kryptographiemodul umfasst beispielsweise kryptographi sche Daten spezifisch für die Geräte (gerätespezifische kryp tographische Daten) .
Bei den kryptographische Daten kann es sich beispielsweise um einen oder mehrere kryptographische Schlüssel handeln, die spezifisch für ein jeweiliges Gerät berechnet wurden. Bei den kryptographischen Schlüsseln kann es sich z. B. um symmetri sche kryptographische Schlüssel handeln oder um asymmetrische kryptographische Schlüssel handeln (z. B. ein Public/Private Schlüsselpaar) .
Diese kryptographische Daten können beispielsweise dauerhaft im bzw. durch das Kryptographiemodul gespeichert werden.
Alternativ können die kryptographische Daten nach einer vor gegebenen Zeit (z. B. wenn ein entsprechendes Gerät für eini ge Stunden keine Daten/Nachrichten kommuniziert hat) aus dem Kryptographiemodul gelöscht werden. Kommuniziert das entspre chende Gerät später wieder, kann der notwendige kryptographi sche Schlüssel wieder neu berechnet werden. Entsprechend kön nen die kryptographischen Daten für ein jeweiliges Gerät re produzierbar berechnet werden bzw. erneut berechnet werden. Hierzu können beispielsweise eindeutige gerätespezifische Da ten des entsprechenden Gerätes genutzt werden. Eindeutige ge rätespezifische Daten sind beispielsweise eine UID des Gerä tes, ein eindeutiger Identifizierer, der anhand von für das Gerät charakteristischen Sensordaten berechnet wurde - z. B. eine berechnete Charakteristik für ein Rauschsignal, das durch einen Sensor des Gerätes ermittelt wurde. Diese eindeu tigen gerätespezifischen Daten können beispielsweise in Kom bination mit einem geheimen Startwert (z. B. eine Seed) , der beispielsweise durch das Kryptographiemodul sicher gespei chert bzw. verwaltet, genutzt werden, um die entsprechenden kryptographischen Daten erneut zu berechnen. Beispielsweise kann ein erster geheimer Startwert genutzt werden, um die kryptographischen Daten für die Sendevorrichtung zu berechnen und ein zweiter geheimer Startwert kann dazu verwendet werden die kryptographischen Daten für die Empfangsvorrichtung zu berechnen. Die genannten Berechnungen erfolgen vorzugsweise durch das Kryptographiemodul, sodass z. B. auch die verwende ten Algorithmen und temporär berechnete Daten vor dem Zugriff Unbefugter geschützt sind.
Das Kryptographiemodul kann dann beispielsweise anhand des zugeordneten Gerätes die entsprechenden kryptographischen Da ten laden, diese berechnen oder auf diese zugreifen.
Das Laden der kryptographische Daten kann beispielsweise auch dadurch erfolgen, dass mittels der gerätespezifischen Daten und/oder mit vorrichtungsspezifischen Daten (z. B. sendevor richtungsspezifischen Daten und/oder empfangsvorrichtungsspe zifischen Daten) zunächst ein weitere kryptographischer
Schlüssel gebildet wird, um beispielsweise auf die gerätespe zifischen kryptographischen Daten eines entsprechenden Gerä tes zugreifen zu können. Die (gerätespezifischen) kryptogra phischen Daten sind dabei - wie bereits erwähnt - vorzugswei se durch das bzw. im Kryptographiemodul gespeichert. Bei spielsweise wird eine UID eines entsprechenden Gerätes mit einem geheimen Startwert der Sendevorrichtung S und/oder der Empfangsvorrichtung E und/oder des Systems SYS kombiniert, um den weiteren kryptographischen Schlüssel zu bilden, um bei spielsweise die kryptographischen Daten zu entschlüsseln. Zum Bilden des Weiteren kryptographischen Schlüssels können z. B. die Daten zu einer kombinierten Zeichenkette zusammengefügt werden (UID + geheimer Startwert) . Alternativ oder zusätzlich dient die kombinierte Zeichenkette oder ein Teil der kombi- nierten Zeichenkette als Eingabeparameter für eine Schlüssel ableitungsfunktion, wobei ein entsprechender Schlüssel repro duzierbar abgeleitet werden kann, sofern z. B. die inhaltlich gleiche/identische Zeichenkette als Eingabeparameter verwen det wird.
Im Falle der Sendevorrichtung S kann beispielsweise mittels der entsprechenden kryptographischen Daten zumindest ein Teil der Daten oder des Nachrichteninhalts der entsprechenden ers ten Nachricht gerätespezifischen für das zugeordnete Gerät kryptographisch geschützt werden (also z. B. ein gerätespezi fischer kryptographischer Schutz erzeugt werden) . Dieses kryptographische Schützen erfolgt beispielsweise vor dem Sen den des Nachrichteninhalts oder der Daten. Im Falle einer Empfangsvorrichtung E wird anhand der kryptographischen Daten zumindest einen Teil der Daten oder des Nachrichteninhalts der entsprechenden ersten Nachricht für ein zugeordnetes Ge rät überprüft und/oder entschlüsselt. Dabei ist beispielswei se unter einem gerätespezifischen kryptographischen Schutz zu verstehen, dass z. B. die Daten oder die Nachrichten (bzw. deren Nachrichteninhalt) , die von einem entsprechenden Gerät stammen, mittels der gerätespezifischen kryptographischen Da ten geschützt werden, um vorzugsweise eine Authentizität der entsprechenden Daten oder der entsprechenden Nachrichten bzw. des Nachrichteninhalts überprüfbar zu machen.
Bei der Sendevorrichtung S ist dies dahingehend vorteilhaft, um insbesondere die Nachrichten die an das verteilte Daten banksystem (oder die Netzwerk-Applikation) gesendet werden (und/oder von diesem gespeichert werden) kryptographisch zu schützen (oder Nachrichten die von den Geräten geschickt wur den kryptographisch zu überprüfen z. B. analog zu Empfangs vorrichtung) . Dies kann beispielsweise dadurch erfolgen, dass die entsprechenden Daten oder der entsprechende Nachrichten inhalt mittels einer (kryptographischen) Prüfsumme geschützt wird und/oder verschlüsselt wird. Hierzu kann die Sendevor richtung S beispielsweise einen ersten kryptographischen Schlüssel (dieser ist z. B. spezifisch für das Gerät) umfas- sen, mit dem beispielsweise eine Prüfsumme über die Daten o- der die Nachrichten bzw. den Nachrichteninhalt gebildet wird. Alternativ kann mit diesem ersten kryptographischen Schlüssel beispielsweise auch der Nachrichteninhalt oder die Daten ver schlüsselt werden. Ein Empfänger der Nachricht oder der Daten kann beispielsweise mit dem ersten kryptographischen Schlüs sel (im Falle eines symmetrischen kryptographischen Verfah rens) oder einem zweiten kryptographischen Schlüssel, der dem ersten kryptographischen Schlüssel zugeordnet ist (z. B. bei einem asymmetrischen kryptographischen Verfahren bei dem z.
B. der erste Schlüssel ein privater Schlüssel ist und der zweite Schlüssel ein öffentlicher Schlüssel ist) , die Ent schlüsselung oder Überprüfung des entsprechenden Nachrichten inhalts oder der Daten durchführen. Hierzu kann das entspre chende Schlüsselmaterial dem Empfänger beispielsweise über einen sicheren Kanal übermittelt worden sein.
Die kryptographischen Daten (z. B. die kryptographischen Schlüssel), für z. B. die Sendevorrichtung S, können bei spielsweise anhand von gerätespezifischen Daten oder eindeu tig gerätespezifischen Daten eines entsprechenden Gerätes er zeugt worden sein (z. B. eine UID des Gerätes, einer Zufalls zahl, die durch das entsprechende Gerät erzeugt wurde, oder anhand von für das Gerät charakteristischen Sensordaten be rechnet wurde - z. B. eine berechnete Charakteristik für ein Rauschsignal, das durch einen Sensor des Gerätes ermittelt wurde) . Alternativ oder zusätzlich sind die kryptographischen Daten eine Kombination aus (eindeutigen) gerätespezifischen Daten und sendevorrichtungsspezifischer Daten (z. B. eine UID der Sendevorrichtung, einer Zufallszahl, die durch die Sende vorrichtung erzeugt wurde, oder anhand von für die Sendevor richtung Sensordaten berechnet wurde - z. B. eine berechnete Charakteristik für ein Rauschsignal, das durch einen Sensor der Sendevorrichtung ermittelt wurde) .
Die Sensordaten können dabei beispielsweise von einem Sensor erfasst werden, der z. B. das thermische Rauschen eines
Schaltkreises des Gerätes erfasst oder das Rauschen des Sen- sors selbst verwendet werden. Es kann beispielsweise auch das Rauschen an einer ungenutzten Datenschnittstelle oder auch an einer genutzten Datenschnittstelle verwendet werden. Dies kann beispielsweise (z. B. für die Geräte oder für das System SYS) eine Tokenring-Netzwerkschnittstelle eines Gerätes sein oder eine RS232 Schnittstelle. Auch kann z. B. das Rauschen einer Datenakquisitionshardware verwenden werden.
Beispielsweise ist es für die Sendevorrichtung S auch mög lich, dass mittels der gerätespezifischen Daten und/oder sen devorrichtungsspezifischer Daten (z. B. der geheime Start wert) für das entsprechende Gerät die kryptographischen Daten reproduzierbar ermittelt werden oder mittels dieser Daten ein kryptographischer Schutz (z. B. eine Verschlüsselung), mit dem die entsprechenden kryptographischen Daten eines Gerätes geschützt sind, aufgehoben (z. B. entschlüsselt werden) und/oder überprüft werden (z. B. eine digitale Signatur über prüft wird) . Die gerätespezifischen Daten können beispiels weise in der Nachricht des entsprechenden Gerätes gespeichert sein. Bei den gerätespezifischen Daten und/oder sendevorrich tungsspezifischen Daten handelt es sich vorzugsweise um Daten die nur schwer gefälscht werden können, z. B. eine Charakte ristik eines Rauschsignals (z. B. von einem Sensor oder einem Manipulationsschutzmodul erfasst wird) . Bei einer Manipulati on des Gerätes oder der Vorrichtung (z. B. Sendevorrichtung oder Empfangsvorrichtung) würde diese gerätespezifischen Da ten und/oder (sende) vorrichtungsspezifischen Daten derart verändert werden, dass sich z. B. die Charakteristik derart verändert, dass die kryptographischen Daten ungültig werden oder auf diese nicht mehr zugegriffen werden kann.
Es können z. B. auch mittels eines Challenge-Response- Verfahren kryptographische Daten oder Schlüsselmaterial oder gerätespezifischen Daten oder eindeutig gerätespezifischen Daten eines entsprechenden Gerätes ausgetauscht werden. Dies kann beispielsweise dadurch erfolgen indem das Verfahren auf Geräteseite und auf Sendevorrichtungsseite mit entsprechenden Initialwerten konfiguriert wird (z. B. indem in einem ge- schützten Speicher des Gerätes bzw. der Sendevorrichtung ent sprechende Initialwerte vorkonfiguriert sind bzw. diese Ini tialwerte durch den geschützten Speicher berechnet und/oder bereitgestellt werden) und/oder entsprechende gerätespezifi schen Daten (z. B. ein kryptographischer Schlüssel oder ein Teil eines kryptographischen Schlüssels) von der Sendevor richtung abgerufen werden können.
Die Empfangsvorrichtung E ist mit einem Kryptographiemodul dahingehend vorteilhaft, um insbesondere die Nachrichten die an ein entsprechendes Gerät übermittelt werden sollen krypto- graphisch zu überprüfen (oder z. B. analog zur Sendevorrich tung auch kryptographisch zu schützen) . Hierzu kann der Nach richtenerstelle beispielsweise einen ersten kryptographischen Schlüssel erhalten haben, mit dem beispielsweise eine Prüf summe über die Nachrichten bzw. den Nachrichteninhalt oder die Daten gebildet wurde, die von der Empfangsvorrichtung E empfangen wurde. Alternativ kann mit diesem ersten kryptogra phischen Schlüssel beispielsweise auch der Nachrichteninhalt oder die Daten verschlüsselt worden sein. Beispielsweise kann mit dem ersten kryptographischen Schlüssel (im Falle eines symmetrischen kryptographischen Verfahrens) oder einem zwei ten kryptographischen Schlüssel, der dem ersten kryptographi schen Schlüssel zugeordnet ist (z. B. bei einem asymmetri schen kryptographischen Verfahren bei dem z. B. der erste Schlüssel ein privater Schlüssel ist und der zweite Schlüssel ein öffentlicher Schlüssel ist) , die Entschlüsselung oder Überprüfung des entsprechenden Nachrichteninhalts oder der Daten erfolgen.
Die kryptographischen Daten (z. B. die kryptographischen Schlüssel) der Empfangsvorrichtung E können beispielsweise anhand von gerätespezifischen Daten oder eindeutigen geräte spezifischen Daten eines entsprechenden Gerätes erzeugt wor den sein (z. B. eine UID des Gerätes, einer Zufallszahl, die durch das entsprechende Gerät erzeugt wurde, oder anhand von für das Gerät charakteristischen Sensordaten berechnet wurde - z. B. eine berechnete Charakteristik für ein Rauschsignal, das durch einen Sensor des Gerätes ermittelt wurde) .
Die Sensordaten können für die Empfangsvorrichtung E und/oder das System SYS beispielsweise von einem Sensor erfasst wer den, der z. B. das thermische Rauschen eines Schaltkreises des Gerätes erfasst oder das Rauschen des Sensors selbst ver wendet werden. Es kann beispielsweise auch das Rauschen an einer ungenutzten Datenschnittstelle oder auch an einer ge nutzten Datenschnittstelle verwendet werden. Dies kann bei spielsweise eine Tokenring-Netzwerkschnittstelle eines Gerä tes sein oder eine RS232 Schnittstelle. Auch kann z. B. das Rauschen einer Datenakquisitionshardware verwenden werden.
Alternativ oder zusätzlich sind die kryptographischen Daten für eine Empfangsvorrichtung E eine Kombination aus geräte spezifischen Daten und empfangsvorrichtungsspezifischer Daten (z. B. eine UID der Empfangsvorrichtung, einer Zufallszahl, die durch die Empfangsvorrichtung erzeugt wurde, oder anhand von für die Empfangsvorrichtung Sensordaten berechnet wurde - z. B. eine berechnete Charakteristik für ein Rauschsignal, das durch einen Sensor der Empfangsvorrichtung ermittelt wur de) . Beispielsweise ist es auch möglich, dass mittels der ge rätespezifischen Daten und/oder empfangsvorrichtungsspezifi scher Daten für das entsprechende Gerät die kryptographischen Daten reproduzierbar ermittelt werden. Beispielsweise kann mittels dieser gerätespezifischen Daten und/oder empfangsvor richtungsspezifischer Daten ein kryptographischer Schutz (z. B. eine Verschlüsselung), mit dem die entsprechenden krypto graphischen Daten eines Gerätes geschützt sind, aufgehoben (z. B. entschlüsselt werden) und/oder überprüft werden (z. B. eine digitale Signatur überprüft wird) . Hierzu kann ggf. an hand dieser Daten ein kryptographischer Schlüssel berechnet werden, um die dafür notwendigen kryptographischen Operatio nen durchzuführen.
Die gerätespezifischen Daten der Geräte für die Empfangsvor richtung E können beispielsweis beim Abrufen des Gerätezu- Standes für ein Gerät mit abgerufen werden. Bei den geräte spezifischen Daten und/oder empfangsvorrichtungsspezifischer Daten handelt es sich vorzugsweise um Daten die nur schwer gefälscht werden können, z. B. ein geheimer Startwert oder eine Charakteristik eines Rauschsignals (z. B. von einem Sen sor oder einem Manipulationsschutzmodul erfasst wird) , das bei einer Manipulation des Gerätes derart verändert wird, dass sich z. B. die Charakteristik derart verändert, sodass wiederum die kryptographischen Daten ungültig werden oder auf diese nicht mehr zugegriffen werden kann.
Wurde beispielsweise ein Gerät durch ein manipuliertes ande res Gerät von einem Unbefugten ausgetauscht, ist es bei spielsweise sehr schwer die Charakteristik eines Rauschsig nals des ursprünglichen Gerätes durch das manipulierte Gerät zu duplizieren oder zu fälschen. Es wird nun beispielsweise die Charakteristik des Rauschsignals (des manipulierten Gerä tes) verwendet, um einen kryptographischen Schlüssel zu er zeugen. Mittels des kryptographischen Schlüssels wird nun versucht z. B. die kryptographischen Daten zu entschlüsselt. Da anhand der veränderten Charakteristik des Rauschsignals nicht der korrekte Schlüssel zum Entschlüsseln gebildet wer den könnte, ist folglich z. B. das Entschlüsseln der krypto graphischen Daten erfolglos.
Es können z. B. auch mittels eines Challenge-Response- Verfahren gerätespezifischen Daten oder eindeutigen geräte spezifischen Daten ermittelt bzw. ausgetauscht werden (z. B. beim Abrufen eines Gerätezustandes) , indem beispielsweise das Verfahren auf Geräteseite und auf Empfangsvorrichtungsseite mit entsprechenden Initialwerten konfiguriert wird (z. B. in dem in einem geschützten Speicher des Gerätes bzw. der Emp fangsvorrichtung entsprechende Initialwerte vorkonfiguriert sind bzw. diese Initialwerte durch den geschützten Speicher berechnet und/oder bereitgestellt werden) und entsprechende gerätespezifischen Daten (z. B. ein kryptographischer Schlüs sel oder ein Teil eines kryptographischen Schlüssels) von der Empfangsvorrichtung abgerufen werden können. Auch können die Sendevorrichtung S und/oder die Empfangsvor richtung E jeweils ein Initialisierungsmodul umfassen oder ein gemeinsames Initialisierungsmodul nutzen. Dieses Initia lisierungsmodul ist dazu eingerichtet, dass z. B. bei einem neuen Gerät die entsprechenden kryptographischen Daten be rechnet werden, wenn für dieses Gerät erstmalig Daten Empfan gen werden oder an dieses gesendet werden sollen. Dies kann z. B. anhand der genannten Verfahren generiert werden (Ein deutige gerätespezifische Daten + Seed) .
In einer Variante können die Sendevorrichtung S und/oder die Empfangsvorrichtung E auch virtuelle Geräte bilden, die die entsprechenden Schnittstellen und technischen Merkmale auf weisen, um mit dem verteilten Datenbanksystem (oder der Netz werk-Applikation) zu kommunizieren. Beispielsweise können entsprechende virtuelle Geräte mit einer vorgegebenen Konfi guration instanziiert werden, wobei die Konfiguration abhän gig von entsprechenden Geräteinformationen über das physische Geräte bestimmt oder berechnet wird. Dabei ist beispielsweise unter Konfiguration zu verstehen, welche Schnittstellen und Funktionen ein entsprechendes virtuelles Gerät bereitstellen soll .
Dies kann beispielsweise mittels einer Virtualisierungsumge- bung wie z. B. VM-Ware erfolgen. Kommuniziert nun ein Knoten des verteilten Datenbanksystems (oder der Netzwerk- Applikation) mit einem virtuellen Gerät, so leitet die Sende vorrichtung S und/oder die Empfangsvorrichtung E die entspre chenden Informationen an das Alt-Gerät bzw. Legacy-Gerät wei ter, wobei vor der Weiterleitung die entsprechende Konvertie rung und Verarbeitung erfolgt, so wie dies oben schrieben ist. Dies ist insbesondere für Fertigungsmaschinen vorteil haft, wenn diese zwar z. B. nicht blockkettenfähig sind, aber durch ein blockkettenbasiertes Steuersystem gesteuert werden sollen. Beispielsweise kann das Identifikationsmodul die ent sprechenden virtuellen Geräte hierfür nutzen oder das Identi fikationsmodul ist ein Bauteil/Element, das von einem oder mehreren virtuelle Geräten realisiert ist. Vorzugsweise ver halten sich die virtuellen Geräte wie ein Knoten des verteil ten Datenbanksystems (oder der Netzwerk-Applikation) und emu liert bzw. ergänzt Funktionen für die physischen Geräte, die diesen für eine Kommunikation bzw. einem Zusammenarbeiten mit den Knoten des verteilten Datenbanksystems (oder der Netz werk-Applikation) fehlen.
Ein entsprechendes Identifikationsmodul (mit virtuellen Gerä ten) für eine Empfangsvorrichtung E kann beispielsweise wie folgt realisiert sein. Das Identifikationsmodul ist dabei da zu eingerichtet anhand der Daten oder des jeweiligen Nach richteninhalts der ersten Nachrichten eine Zuordnung zu be rechnen, für welches virtuelle Geräte eine entsprechende ers te Nachricht bestimmt ist. Die virtuellen Geräte umfassen da bei z. B. das Konvertierungsmodul und/oder die zweite Kommu nikationsschnittstelle bzw. umfassen jeweils eine eigene vir tuelle Variante von diesen bzw. greifen auf das Konvertie rungsmodul und/oder die zweite Kommunikationsschnittstelle zu, um die Daten oder die Nachrichten bzw. den Nachrichtenin halt an das dem entsprechenden virtuellen Gerät zugeordnete physische Gerät zu übertragen.
Eine Empfangsvorrichtung mit entsprechenden virtuellen Gerä ten kann beispielsweise folgende Merkmale aufweisen:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Netzwerkschnittstelle dazu eingerichtet ist mit einem verteilten Da tenbanksystem (oder einer Netzwerk- Applikation) kommunizieren,
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist erste Nachrichten oder Daten von dem verteilten Da tenbanksystem (oder der Netzwerk-Applikation) zu empfangen;
beispielsweise virtuelle Geräte, wobei beispielsweise den virtuellen Geräten jeweils ein entsprechendes (physisches) Gerät (z. B. des Automatisierungsnetzwerkes AN) zugeordnet ist,
beispielsweise anhand der Daten oder des je weiligen Nachrichteninhalts (z. B. Zieladresse der entsprechenden Nachricht) der ersten Nach richten eine Zuordnung berechnet wird, für welches der virtuellen Geräte eine entspre chende erste Nachricht oder Daten bestimmt ist ;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht in ein Datenformat für das zugeordnete Gerät zu konvertieren;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist die Daten und/oder die konvertierten Daten und/oder den konvertieren Nachrichteninhalt und/oder den Nachrichteninhalt der entsprechenden ersten Nachricht (und/oder die erste Nachricht selbst) an das Gerät zu übertragen, das der entsprechenden ersten Nachricht zugeordnet ist .
Ein entsprechendes Identifikationsmodul für eine Sendevor richtung S kann beispielsweise wie folgt realisiert sein. Das Identifikationsmodul ist dabei dazu eingerichtet anhand der Daten oder des jeweiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung zu berechnen, von welchem physischen Gerät eine Nachricht empfangen wurde. Anhand dieser Zuordnung wird nun festgelegt welches virtuelle Gerät eine entsprechen de Nachricht verarbeiten und/oder senden soll. Die virtuellen Geräte umfassen dabei das Konvertierungsmodul und/oder die zweite Kommunikationsschnittstelle bzw. umfassen jeweils eine eigene virtuelle Variante von diesen bzw. greifen auf das Konvertierungsmodul und/oder die zweite Kommunikations schnittstelle zu, um die Daten oder die Nachrichten bzw. den Nachrichteninhalt mittels dem entsprechenden virtuellen Gerät an das verteilte Datenbanksystem (oder die Netzwerk- Applikation) zu übertragen.
Eine Sendevorrichtung S mit entsprechenden virtuellen Geräten kann beispielsweise folgende Merkmale aufweisen:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist mit Gerä ten zu kommunizieren,
beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist erste Nachrichten oder Daten von den Geräten zu empfangen;
beispielsweise virtuelle Geräte, wobei
beispielsweise den virtuellen Geräten jeweils ein entsprechendes (physisches) Gerät (z. B. eines Automatisierungsnetzwerkes) zugeordnet ist,
beispielsweise anhand der Daten oder des je weiligen Nachrichteninhalts (z. B. Netzwerkad resse des Senders) der ersten Nachrichten eine Zuordnung berechnet wird, welches Gerät eine entsprechende erste Nachricht oder die Daten gesendet hat;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht in ein Datenformat für das verteilte Daten banksystem (oder die Netzwerk-Applikation) zu konvertieren;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei beispielsweise die zweite Kommunikations
schnittstelle dazu eingerichtet ist mit einem verteilten Datenbanksystem (oder einer Netz werk-Applikation) kommunizieren, beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist die Daten und/oder die konvertierten Daten und/oder den konvertierten Nachrichteninhalt und/oder den Nachrichtenin halt der entsprechenden ersten Nachricht
(und/oder die erste Nachricht selbst) an das verteilte Datenbanksystem (oder die Netzwerk- Applikation) zu übertragen.
Die genannten Varianten mit den virtuellen Geräten können beispielsweise auch auf das Konvertierungsmodul verzichten, wenn beispielsweise keine Datenkonversion notwendig ist.
Auch können die Varianten mit den virtuellen Geräten jeweils ein entsprechendes Kryptographiemodul umfassen, dass die ent sprechenden kryptographischen Daten für ein Gerät (physisch und/oder virtuell) und/oder für mehrere Geräte (physisch und/oder virtuell) umfassen. Hierzu kann beispielsweise ein virtuelles Gerät jeweils ein entsprechendes Kryptographiemo dul umfassen oder die virtuellen Geräte greifen auf ein ge meinsames Kryptographiemodul zu.
Die Empfangsvorrichtung E kann beispielsweise passiv oder ak tiv implementiert sein.
Bei einer aktiven Implementierung werden die ersten Nachrich ten beispielsweise direkt durch das verteilte Datenbanksystem (oder die Netzwerk-Applikation) an die Empfangsvorrichtung E bzw. das System SYS geschickt (bzw. von der Empfangsvorrich tung E bzw. dem System SYS empfangen) . Die entsprechenden Nachrichten können dabei z. B. eine Angabe umfassen für wel ches der Geräte des Automatisierungsnetzes AN die entspre chende Nachricht bestimmt ist. Bei einer passiven Implementierung werden die ersten Nach richten beispielsweise indirekt durch die Empfangsvorrichtung E bzw. das System SYS empfangen. Hierzu erfasst bzw. empfängt die Empfangsvorrichtung E bzw. das System SYS die Nachrichten aus dem ersten Netzwerk NW1 beispielsweise mit einem Paket filter oder einem Netzwerkanalysewerkzeug (z. B. Wireshark) oder einem Werkzeug um Datenpakete aus dem Netzwerk abzurufen (z. B. WinPCap, libpcap) . Die entsprechenden Nachrichten sind z. B. dabei nicht an die Empfangsvorrichtung E (oder das Sys tem SYS) bzw. dessen Netzwerkadresse gerichtet, sondern sind an die Geräte des Automatisierungsnetzwerkes AN gerichtet (indem z. B. ein bestimmter Gerätetyp in der Nachricht bzw. deren Inhalt angegeben ist) .
Um festzustellen, ob beispielsweise eine entsprechende erste Nachricht für ein Gerät des Automatisierungsnetzwerkes AN be stimmt ist, umfasst die Empfangsvorrichtung (bzw. das System SYS) beispielsweise eine Gerätedatenbank, die ein Verzeichnis der Geräte des Automatisierungsnetzwerkes AN umfasst. Zusätz lich können in diesem Verzeichnis beispielsweise auch Gerä teinformationen zu den jeweiligen Geräten gespeichert sein. Die Geräteinformationen können beispielsweise generelle In formationen zu einem Gerät umfassen. Dies können z. B. tech nische Merkmale wie Leistung, Fertigungsgeschwindigkeit, Energieverbrauch, Fertigungspräzision, Standort des Gerätes oder eine Kombination hiervon sein. Alternativ oder zusätz lich können die entsprechenden Geräteinformationen auch den zuletzt empfangenen bzw. abgerufenen Gerätezustand umfassen. Wurde beispielsweise innerhalb eines vorgegebenen Zeitraums bereits ein Gerätezustand empfangen, so kann beispielsweise auf ein erneutes Abrufen eines aktuellen Gerätezustandes ver zichtet werden. Ist der vorgegebene Zeitraum 5 Minuten und wurde vor 1 Minute ein Gerätezustand für das Gerät empfangen, ist es beispielsweise nicht notwendig bis zum Ablauf des vor- gegenen Zeitraums erneut einen Gerätezustand zu empfangen. Die Geräteinformationen können beispielsweise auch die ent sprechenden Geräteeigenschaften (z. B. aktuelle Geräteeigen schaften) umfassen.
Die Sendevorrichtung S kann beispielsweise passiv oder aktiv implementiert sein.
Bei einer aktiven Implementierung werden die ersten Nachrich ten beispielsweise direkt durch die Geräte des Automatisie rungsnetzwerkes an die Sendevorrichtung S bzw. das System SYS geschickt. Die entsprechenden Nachrichten können dabei z. B. eine Angabe umfassen für welche Netzwerk-Applikation oder welches verteilte Datenbanksystem (falls es mehrere dieser Systeme gibt) oder Netzwerk (z. B. das erste Kommunikations netzwerk) die entsprechende Nachricht bestimmt ist.
Bei einer passiven Implementierung werden die ersten Nach richten beispielsweise indirekt durch die Sendevorrichtung S bzw. das System SYS empfangen. Hierzu erfasst bzw. empfängt die Sendevorrichtung S bzw. das System SYS die Nachrichten aus dem zweiten Netzwerk NW2 beispielsweise mit einem Paket filter oder einem Netzwerkanalysewerkzeug (z. B. Wireshark) oder einem Werkzeug um Datenpakete aus dem Netzwerk abzurufen (z. B. WinPCap, libpcap) . Die entsprechenden Nachrichten sind z. B. dabei nicht an die Sendevorrichtung S (oder des Systems SYS) bzw. dessen Netzwerkadresse gerichtet, sondern sind z.
B. an eine andere Adresse oder anderes Gerät gerichtet. Bei spielsweise kann ein Teil einer ursprünglich vorhandenen Kom munikationsinfrastruktur durch das das verteilte Datenbank system (oder die Netzwerk-Applikation) ersetzt worden sein und die entsprechenden Geräte oder Netzwerkadressen, an die die entsprechenden ersten Nachrichten geschickt werden sol len, existieren nicht mehr. Da die entsprechenden Geräte auch nicht mehr ohne weiteres umkonfiguriert werden können, würden ohne die Sendevorrichtung S die entsprechenden Nachrichten nicht für die neue Kommunikations-Infrastruktur verfügbar sein bzw. nicht an diese übermittelt werden können. Auch die Sendevorrichtung S kann eine Gerätedatenbank umfas sen (z. B. analog zur Empfangsvorrichtung), um beispielsweise festzustellen welches Gerät eine entsprechende Nachricht ge schickt hat. Werden die Nachrichten beispielsweise zunächst passiv empfangen, kann eine solche Information beispielsweise anhand der Sendeadresse der Nachricht ermittelt werden. Hier zu werden die Geräteinformationen z. B. mittels der Sen deadresse abgerufen.
Die Erfindung ist dahingehend vorteilhaft um z. B. Legacy Ge räte, an deren Konfiguration nichts geändert werden darf, mit einer neuen Blockketteninfrastruktur kommunizieren zu lassen. Die Konvertierung der Daten übernehmen die Vorrichtung bzw. das System.
Auch können die Vorrichtungen (z. B. die Sendevorrichtung o- der die Empfangsvorrichtung) bzw. das System jeweils Smart- Contracts für die die Legacy-Systeme bzw. Geräte ausführen. Damit können insbesondere die Geräte blockkettenfähig gemacht werden, ohne an diesen Geräten überhaupt etwas zu ändern.
Insbesondere umfasst diese Vorrichtungen bzw. das System die notwendigen Komponenten, um mit einer Blockkette zu kommuni zieren. Dies sind zum Beispiel Schlüsselspeicher mit krypto- graphischen Schlüsseln, um Transaktionen/Nachrichten für die Blockkette zu signieren oder entsprechende Prüfsummen zu überprüfen .
In einer Implementierungsvariante kann ein Modul, können meh rere Module oder können alle Module als Softwarekomponente oder als Hardwarekomponente oder als eine Kombination aus Hardware- und Softwarekomponenten realisiert werden.
Das System und/oder die Module und/oder die Sendevorrichtung und/oder die Empfangsvorrichtung und/oder das verteilte Da tenbanksystem und/oder die Netzwerk-Applikation und/oder die Netzwerkinfrastruktur der Netzwerk-Applikation und/oder Kno ten der Netzwerk-Applikation und/oder die Knoten des verteil- ten Datenbanksystems ( z . B. Blockketten-Knoten) und/oder, Ge räte können beispielsweise jeweils zusätzlich noch eine wei tere oder mehrere weitere Komponente/n umfassen, wie bei spielsweise einen Prozessor, eine Speichereinheit, weitere Kommunikationsschnittstellen (z. B. Ethernet, WLAN) , ein Ein gabegerät, insbesondere eine Computertastatur oder eine Com putermaus, und ein Anzeigegerät (z. B. einen Monitor) . Der Prozessor kann beispielsweise mehrere weitere Prozessoren um fassen, die insbesondere zur Realisierung von weiteren Aus führungsbeispielen verwendet werden können.
Bei dem Prozessor kann es sich beispielsweise um einen ASIC handeln, der anwendungsspezifisch für die Funktionen eines jeweiligen Moduls oder aller Module des Ausführungsbeispiels (und/oder weiterer Ausführungsbeispiele) realisiert wurde, wobei die Programmkomponente bzw. die Programmbefehle insbe sondere als integrierte Schaltkreise realisiert sind. Bei dem Prozessor kann es sich beispielsweise auch um einen FPGA han deln, der insbesondere mittels der Programmbefehle derart konfiguriert wird, dass der FPGA die Funktionen eines jewei ligen Moduls oder aller Module des Ausführungsbeispiels
(und/oder weiterer Ausführungsbeispiele) realisiert.
In den genannten Ausführungsbeispielen können die Netzwerk schnittstellen auch als integrale Netzwerkschnittstellen aus gebildet sein. Beispielsweise kann die erste Kommunikations schnittstelle Nil des Systems SYS und die erste Kommunikati onsschnittstelle 210 der Empfangsvorrichtung E und/oder die zweite Kommunikationsschnittstelle 340 der Sendevorrichtung S als eine erste integrale Kommunikationsschnittstelle ausge bildet sein. Beispielsweise kann die zweite Kommunikations schnittstelle NI2 des Systems SYS und die zweite Kommunikati onsschnittstelle 240 der Empfangsvorrichtung E und/oder die erste Kommunikationsschnittstelle 310 der Sendevorrichtung S als eine zweite integrale Kommunikationsschnittstelle ausge bildet sein. Es kann beispielsweise die erste integrale Kom munikationsschnittstelle und die zweite integrale Kommunika- tionsschnittstelle als gemeinsame integrale Kommunikations schnittstelle ausgebildet sein.
In weiteren Varianten können die Sendevorrichtung S und/oder die Empfangsvorrichtung E und/oder das System SYS beispiels weise als ein integrales Bauteil eines der Geräte ausgebildet sein, wobei die entsprechenden Kommunikationsschnittstellen zum Kommunizieren mit dem entsprechenden Gerät beispielsweise in einem solchen Fall eine Kommunikationsschnittstelle für einen Datenbus ist (z. B. eine PCI-Schnittstelle, eine USB- Schnittstelle) . Beispielsweise können in einer solchen Vari ante Legacy-Geräte bzw. Geräte direkt an das verteilte Daten banksystem (oder die Netzwerk-Applikation) angebunden werden, indem beispielsweise die Sendevorrichtung S und/oder die Emp fangsvorrichtung E und/oder das System SYS in eine Kommunika tionsschnittstelle des Legacy-Gerätes bzw. des Gerätes inte griert wird (z. B. als ASIC oder FPGA) . Bei der Kommunikati onsschnittstelle des Gerätes kann es sich beispielsweise um eine austauschbare Netzwerkkarte handeln, wobei beispielswei se eine alte Netzwerkkarte durch eine entsprechende erfin dungsgemäße Kommunikationsschnittstelle ersetzt wurde. Mit anderen Worten kann in einer solchen Variante eine Kommunika tionsschnittstelle die Sendevorrichtung S und/oder die Emp fangsvorrichtung E und/oder das System SYS umfassen oder die Kommunikationsschnittstelle ist als die Sendevorrichtung S und/oder die Empfangsvorrichtung E und/oder das System SYS ausgebildet .
In einer weiteren möglichen Variante der Sendevorrichtung um fasst die Sendevorrichtung folgendes:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist mit Gerä ten zu kommunizieren,
beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist erste Nachrichten oder Daten von den Geräten zu empfangen; beispielsweise ein Identifikationsmodul, wobei beispielsweise das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder des je weiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung berechnet, welches Ge rät die Daten oder eine entsprechende erste Nachricht gesendet hat;
beispielsweise ein Konvertierungsmodul, wobei
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten oder den Nachrich teninhalt der entsprechenden ersten Nachricht in ein Datenformat für das verteilte Daten banksystem oder für eine Netzwerk-Applikation zu konvertieren,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten spezifisch für das verteilte Datenbanksystem oder für die Netz werk-Applikation anhand des zugeordneten Gerä tes zu konvertieren,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist zu überprüfen, welche Daten formate von dem verteilten Datenbanksystem o- der von der Netzwerk-Applikation oder von wei teren verteilten Datenbanksystemen oder weite ren Netzwerk-Applikationen verarbeiten können, beispielsweise das Konvertierungsmodul dazu eingerichtet ist die Daten in ein mit dem ver teilten Datenbanksystem oder der Netzwerk- Applikation kompatibles Datenformat zu konver tieren;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist mit einem verteilten Datenbanksystem oder der Netzwerk- Applikation zu kommunizieren,
beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist die konvertierten Daten oder den konvertierten Nachrichteninhalt an das verteilte Datenbanksystem oder die Netz werk-Applikation zu übertragen.
In einer weiteren möglichen Variante der Sendevorrichtung um fasst die Sendevorrichtung folgendes:
beispielsweise eine erste Kommunikationsschnitt stelle, wobei
beispielsweise die erste Kommunikations schnittstelle dazu eingerichtet ist mit Gerä ten zu kommunizieren,
beispielsweise die Kommunikationsschnittstelle dazu eingerichtet ist erste Nachrichten oder Daten von den Geräten zu empfangen;
beispielsweise ein Identifikationsmodul (320), wo bei
beispielsweise das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder des je weiligen Nachrichteninhalts der ersten Nach richten eine Zuordnung berechnet, welches Ge rät die Daten oder eine entsprechende erste Nachricht gesendet hat;
beispielsweise ein Konvertierungsmodul (330), wobei beispielsweise das Konvertierungsmodul dazu eingerichtet ist spezifisch für das den Daten zugeordnete Gerät Datenformatanforderungen zu bestimmen, die z. B. durch das zugeordnete Ge rät vorgegebenen sind,
beispielsweise das Konvertierungsmodul dazu eingerichtet ein Prüfergebnis darüber zu er mitteln, welche Datenformate von verteilten Datenbanksystemen oder von Netzwerk- Applikationen verarbeiten können, beispielsweise das Konvertierungsmodul dazu eingerichtet ist abhängig von dem Prüfergebnis und/oder den Datenformatanforderungen die Da ten in ein Datenformat für eine Netzwerk- Applikation der Netzwerk-Applikationen oder ein verteiltes Datenbanksystem der verteilten Datenbanksysteme zu konvertieren;
beispielsweise eine zweite Kommunikationsschnitt stelle, wobei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist, die konvertierten Daten oder den konvertierten Nachrichteninhalt an das verteilte Datenbank system oder die Netzwerk-Applikation zu über tragen .
Beispielsweise kann das Konvertierungsmodul dazu eingerichtet sein, die Daten oder den Nachrichteninhalt der entsprechenden ersten Nachricht in ein Datenformat für das verteilte Daten banksystem oder für eine Netzwerk-Applikation zu konvertie ren, wobei das Datenformat z. B. durch das zugeordnete Gerät vorgegeben ist.
Beispielsweise kann das Konvertierungsmodul dazu eingerichtet sein, das (entsprechende) verteilte Datenbanksystem aus den verteilten Datenbanksystemen oder die (entsprechende) Netz werk-Applikation aus den Netzwerkapplikationen anhand des Prüfergebnisses und/oder der Datenformatanforderungen auszu wählen. Beispielsweise kann die zweite Kommunikationsschnitt stelle dazu eingerichtet sein die konvertierten Daten
und/oder die Daten an das ausgewählte (entsprechende) ver teilte Datenbanksystem oder die ausgewählte (entsprechende) Netzwerk-Applikation zu übertragen. Mit anderen Worten ist beispielsweise die Netzwerk-Applikation die ausgewählte Netz werk-Applikation oder das verteilte Datenbanksystem ist das ausgewählte verteilte Datenbanksystem.
Die Datenformatanforderungen können beispielsweise durch die Zuordnung und/oder von Geräteeigenschaften (des zugeordneten Gerätes) , die in der Zuordnung (oder einem Zuordnungsdaten satz) gespeichert sind, vorgegeben sein. Erfüllen beispielsweise mehrere verteilte Datenbanksysteme oder mehrere Netzwerk-Applikationen die Datenformatanforde rungen - sprich sie sind jeweils mit den Datenformatanforde rungen kompatibel - , so können die Daten z. B. für die je weils kompatiblen verteilten Datenbanksysteme oder die je weils kompatiblen Netzwerk-Applikationen konvertiert werden und/oder jeweils an diese übertragen werden. Kompatibel be deutet beispielsweise, dass das jeweilige verteilte Daten banksystem oder die jeweilige Netzwerkapplikation zumindest ein Datenformat der Datenformatanforderungen unterstützt und/oder verarbeiten kann. Das Datenformat gibt dabei bei spielsweise ein Format für Daten an, das von der Netzwerk- Applikation oder dem verteilten Datenbanksystem verarbeitet werden kann.
Beispielsweise kann alternativ oder zusätzlich aus den kompa tiblen verteilten Datenbanksystemen oder aus den kompatiblen Netzwerk-Applikationen auch die Netzwerk-Applikation oder das verteilte Datenbanksystem für eine Datenkonvertierung (oder für eine Konvertierung der Daten) und/oder Datenübertragung (der konvertierten Daten oder der Daten) ausgewählt werden, das ein zusätzliches Auswahlkriterium erfüllt. Das Auswahl kriterium kann beispielsweise eine Zuverlässigkeit, krypto- graphische Anforderungen (z. B. verwendete Schlüssellängen, kryptographische Protokolle) oder Anforderungen an die ent sprechende Infrastruktur (z. B. es muss mindestens eine vor gegebene Anzahl von Knoten geben oder die Netzwerk- Applikation oder das verteilte Datenbanksystem sind z. B. als Cloud-Service realisiert) vorgeben, die von der Netzwerk- Applikation oder dem verteilten Datenbanksystem unterstützt werden sollen. Beispielsweise wird dann nur ein verteiltes Datenbanksystem oder eine Netzwerk-Applikation ausgewählt, die das Auswahlkriterium am besten erfüllt.
Beispielsweise kann die zweite Kommunikationsschnittstelle dazu eingerichtet sein mit den verteilten Datenbanksystemen (z. B. das verteilte Datenbanksystem oder die weiteren ver teilten Datenbanksysteme oder das ausgewählte verteilte Da- tenbanksystem) oder den Netzwerk-Applikationen (z. b. die Netzwerk-Applikation oder die weiteren Netzwerk-Applikationen oder der ausgewählten Netzwerk-Applikation) zu kommunizieren um z. B. die unterstützten Datenformate der Netzwerk- Applikationen oder der verteilten Datenbanksysteme abzurufen und/oder die konvertierten Daten zu übermitteln.
Konkrete Beispiele wie z. B. eine Konvertierung der Daten re alisiert sein kann, können analog zu den Beispielen der Emp fangsvorrichtung realisiert sein.
Die Daten können dabei beispielsweise die ersten Nachrichten oder die erste Nachricht oder der Nachrichteninhalt der ers ten Nachricht oder Daten einer Kommunikationsverbindung sein.
Mit der Erfindung ist es insbesondere möglich eine dezentrale Infrastruktur mit alten bzw. legacy Geräten zu koppeln. Mit der Erfindung kann insbesondere eine Koppelung von solchen Altgeräten (z. B. Legacy-Geräte) an eine neue blockkettenba sierte Infrastruktur erfolgen. Dies ist beispielsweise für Energieversorgungsnetze vorteilhaft, deren Steuerung auf eine Blockketten Infrastruktur umgestellt wird, wobei jedoch nicht jedes einzelne Gerät des bestehenden Energieversorgungsnetzes ausgetauscht wird. Die Erfindung erlaubt es beispielsweise, dass z. B. ein Gerät Nachrichten (z. B. mit Steuerbefehlen oder Statusmeldungen zur Abarbeitung von Steuerbefehlen) an das verteilte Datenbanksystem oder die Netzwerk-Applikation sendet, wobei die Sendevorrichtung kommunikativ zwischen den Geräten und dem verteilten Datenbanksystem (oder der Netz werk-Applikation) angeordnet ist und die Zuordnung und/oder Übermittlung der jeweiligen Nachrichten an das verteilte Da tenbanksystem (oder an die Netzwerk-Applikation) realisiert. Insbesondere werden die entsprechenden Nachrichteninhalte o- der Daten auch in ein Datenformat konvertiert, das mit dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) kompatibel ist. Insbesondere müssen die Geräte nicht an die neue Infrastruktur angepasst werden. Beispielsweise wird durch Geräteeigenschaften des zugeordne ten Gerätes vorgegeben, dass die Daten in einem oder mehreren Datenformaten in dem verteilten Datenbanksystem oder der Netzwerk-Applikation gespeichert werden können. Beispielswei se kann durch die Datenformatanforderungen vorgegeben werden, dass die Daten des zugeordneten Gerätes in einem XML-Format oder einem JSON-Format, jedoch nicht in einem Binärformat ge speichert werden sollen. Beispielsweise unterstützt das ver teilte Datenbanksystem ein XML-Format und die Netzwerk- Applikation nur ein proprietäres Binärformat. Die zweite Kom munikationsschnittstelle und/oder das Konvertierungsmodul überprüfen zunächst, welche Datenformate, die von dem ver teilten Datenbanksystem oder der Netzwerk-Applikation unter stützt werden (unterstützt bedeutet dabei z. B., welche Da tenformate von dem verteilten Datenbanksystem oder der Netz werk-Applikation verarbeitet werden können) , ebenfalls den Datenformatvorgaben der Datenformatanforderungen des zugeord neten Gerätes entsprechen. Die zweite Kommunikationsschnitt stelle übermittelt dann in einer Variante beispielsweise an hand des bei dieser Prüfung ermittelten Prüfergebnisses an welches verteilte Datenbanksystem (es können auch mehrere verteilte Datenbanksysteme vorliegen) oder an welche Netz werk-Applikation die konvertierten Daten übermittelt werden. Dieses Prüfergebnis kann alternativ auch vom Konvertierungs modul oder vom Identifikationsmodul auf die gleiche Weise er mittelt werden und z. B. der zweiten Kommunikationsschnitt stelle bereitgestellt werden.
Beispielsweise kann die zweite Kommunikationsschnittstelle dazu eingerichtet sein, die konvertierten Daten oder den konvertierten Nachrichteninhalt abhängig von dem Prüfergebnis an das verteilte Datenbanksystem oder ein weiteres verteiltes Datenbanksystem oder die Netzwerk-Applikation oder eine wei tere Netzwerkapplikation zu übertragen.
Die in der Patentanmeldung erläuterten Sendevorrichtungen und/oder Empfangsvorrichtungen und/oder verteilten Datenbank systeme (oder deren Ausführungsbeispiele, Ausführungsformen oder Varianten) und/oder Netzwerk-Applikation können zusätz lich jeweils beispielsweise eine Konfigurationsschnittstelle und/oder einen Lüfter und/oder ein Monitoringmodul umfassen. Mit der Konfigurationsschnittstelle können beispielsweise Up dates oder Firmwareversionen eingespielt werden. Mit dem Lüf ter können z. B. die entsprechende Sendevorrichtung S und/oder der Empfangsvorrichtung E und/oder das verteilte Da tenbanksystem gekühlt werden. Mit dem Monitoringmodul kann der Zustand und/oder das Betriebsverhalten einer entsprechen den Sendevorrichtung und/oder einer entsprechenden Empfangs vorrichtung und/oder des verteilten Datenbanksystems über wacht werden und z. B. in einer Datei gespeichert werden (z. B. einer Logging-Datei ) .
Die Fig. 4 zeigt ein viertes Ausführungsbeispiel der Erfin dung als Ablaufdiagramm des erfindungsgemäßen Verfahrens.
Das Verfahren ist vorzugsweise rechnergestützt realisiert.
Im Einzelnen wird in diesem Ausführungsbeispiel ein Verfahren zum rechnergestützten Empfangen von Nachrichten realisiert.
Das Verfahren umfasst einen ersten Verfahrensschritt 410 zum Empfangen von ersten Nachrichten von einem verteilten Daten banksystem mittels einer ersten Kommunikationsschnittstelle. Die ersten Nachrichten sind beispielsweise in einem Daten format (z. B. ein XML-Datenformat) des verteilten Datenbank systems oder einer Netzwerkapplikation gespeichert.
Das Verfahren umfasst einen zweiten Verfahrensschritt 420 zum Berechnen einer Zuordnung für die ersten Nachrichten, wobei beim Berechnen bestimmt wird für welche Geräte eine entspre chende erste Nachricht bestimmt ist.
Das Verfahren umfasst einen dritten Verfahrensschritt 430 zum Konvertieren des Nachrichteninhalts der entsprechenden ersten Nachricht in ein Datenformat für das zugeordnete Gerät. Das Datenformat ist insbesondere ein proprietäres Datenformat der Geräte .
Der dritte Verfahrensschritt ist insbesondere ein optionaler Verfahrensschritt. Dies ist beispielsweise der Fall, wenn der Nachrichteninhalt der entsprechenden ersten Nachricht nicht konvertiert werden muss bzw. der Nachrichteninhalt bzw. die entsprechende erste Nachricht ein Datenformat aufweist, das von den Geräten verarbeitet werden kann. In einem solchen Fall entspricht der konvertierte Nachrichteninhalt des vier ten Verfahrensschrittes dem (unkonvertierten) Nachrichtenin halt der entsprechenden ersten Nachricht bzw. die entspre chende erste Nachricht wird als zweite Nachricht an das oder die entsprechenden Geräte gesendet.
Das Verfahren umfasst einen vierten Verfahrensschritt 440 zum Übertragen des konvertierten Nachrichteninhalts an das Gerät, das der entsprechenden ersten Nachricht zugeordnet ist.
Die Fig. 5 zeigt ein fünftes Ausführungsbeispiel der Erfin dung als Ablaufdiagramm des erfindungsgemäßen Verfahrens.
Das Verfahren ist vorzugsweise rechnergestützt realisiert.
Im Einzelnen wird in diesem Ausführungsbeispiel ein Verfahren zum rechnergestützten Senden von Nachrichten.
Das Verfahren umfasst einen ersten Verfahrensschritt 510 zum Empfangen von ersten (weiteren) Nachrichten von Geräten mit tels einer Kommunikationsschnittstelle. Diese Nachrichten sind beispielsweise in einem proprietären Datenformat der Geräte gespeichert.
Das Verfahren umfasst einen zweiten Verfahrensschritt 520 zum Berechnen einer Zuordnung anhand des jeweiligen Nach richteninhalts der ersten (weiteren) Nachrichten, wobei be rechnet wird, welches Gerät eine entsprechende erste weitere Nachricht gesendet hat. Das Verfahren umfasst einen dritten Verfahrensschritt 530 zum Konvertieren des Nachrichteninhalts der entsprechenden ersten (weiteren) Nachricht in ein Datenformat für das verteilte Da tenbanksystem (oder die Netzwerk-Applikation) , wobei das Da tenformat z. B. von dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) verarbeitet werden kann. Bei dem Daten format kann es sich z. B. um ein XML Datenformat, für das ein passendes XML Schema verfügbar ist. Die Knoten des verteilten Datenbanksystems (oder der Netzwerk-Applikation) können so z. B. einen Gerätestatus eines der Geräte des Automatisierungs netzwerkes auswerten, um z. B. dem entsprechenden Automati sierungsnetzwerk bzw. dem entsprechenden Gerät abhängig von dem Gerätezustand eine Nachricht zu schicken.
Der dritte Verfahrensschritt ist insbesondere ein optionaler Verfahrensschritt. Dies ist beispielsweise der Fall, wenn der Nachrichteninhalt der entsprechenden ersten Nachricht nicht konvertiert werden muss bzw. der Nachrichteninhalt bzw. die entsprechende erste Nachricht ein Datenformat aufweist, das von dem verteilten Datenbanksystem (oder der Netzwerk- Applikation) verarbeitet werden kann. In einem solchen Fall entspricht der konvertierte Nachrichteninhalt des vierten Verfahrensschrittes dem (unkonvertierten) Nachrichteninhalt der entsprechenden ersten Nachricht bzw. die entsprechende erste Nachricht wird als zweite Nachricht an das verteilte Datenbanksystem (oder an die Netzwerk-Applikation) gesendet.
Das Verfahren umfasst einen vierten Verfahrensschritt 540 zum Übertragen des konvertierten Nachrichteninhalts an das ver teilte Datenbanksystem (oder die Netzwerk-Applikation) .
Die Erfindung betrifft beispielsweise ein Gateway oder einen Netzwerkadapter mit dem alte Geräte oder Legacy-Geräte an ein verteiltes Datenbanksystem (oder an eine Netzwerk- Applikation) wie eine Blockkette angebunden werden können, ohne eine Konfiguration bei den alten Geräten ändern zu müs- sen Entsprechend sind beispielsweise die Nachrichten die von dem verteilten Datenbanksystem (oder der Netzwerk-Applikation) gesendet bzw. von diesem empfangen werden Transaktionen. Ent sprechend sind beispielsweise die Nachrichten die an das ver teilte Datenbanksystem (oder die Netzwerk-Applikation) gesen det werden Transaktionen.
Ist beispielsweise das zweite Netzwerk NW2 mit seinen Geräten (Fig. 1 - 3) beispielsweise auch ein verteiltes Datenbanksys tem (oder eine Netzwerk-Applikation) , so können beispielswei se mittels der Erfindung (Vorrichtungen, System, Verfahren) auch zwei unterschiedliche verteilte Datenbanksysteme (oder Netzwerk-Applikationen) miteinander kommunizieren.
Weitere Ausführungsformen, Aspekte und Ausführungsbeispiele der Erfindung sind nachfolgend erläutert.
Eine Empfangsvorrichtung (E) , umfassend:
eine erste Kommunikationsschnittstelle (210), wobei die erste Netzwerkschnittstelle oder Kommuni kationsschnittstelle (z. B. die erste Kommuni kationsschnittstelle) dazu eingerichtet ist mit einem verteilten Datenbanksystem kommuni zieren,
die erste Kommunikationsschnittstelle dazu eingerichtet ist erste Nachrichten von dem verteilten Datenbanksystem zu empfangen;
ein Identifikationsmodul (220), wobei
das Identifikationsmodul dazu eingerichtet ist anhand des jeweiligen Nachrichteninhalts der ersten Nachrichten eine Zuordnung berechnet, für welche Geräte eine entsprechende erste Nachricht bestimmt ist;
ein Konvertierungsmodul (230), wobei
das Konvertierungsmodul dazu eingerichtet ist den Nachrichteninhalt der entsprechenden ers- ten Nachricht in ein Datenformat für das zuge ordnete Gerät zu konvertieren;
eine zweite Kommunikationsschnittstelle (240), wo bei
die zweite Kommunikationsschnittstelle dazu eingerichtet ist den konvertieren Nachrichten inhalt an das Gerät zu übertragen, das der entsprechenden ersten Nachricht zugeordnet ist .
In weiteren Ausführungsformen der Empfangsvorrichtung ruft die die Empfangsvorrichtung einen Gerätezustand von dem einer entsprechenden ersten Nachricht zugeordneten Gerät ab, wobei eine Übertragung an das zugeordnete Gerät abhängig von dem abgerufenen Gerätezustand erfolgt.
In weiteren Ausführungsformen der Empfangsvorrichtung umfasst der Gerätezustand einen Datensatz über die verfügbaren Gerä teressourcen und/oder aktuellen Geräteeigenschaften.
In weiteren Ausführungsformen der Empfangsvorrichtung erfolgt eine Übertragung an das entsprechende Gerät, wenn vorgegebene Anforderungen der entsprechenden ersten Nachricht durch das zugeordnete Gerät erfüllt sind, wobei beispielsweise die Er füllung der vorgegenen Anforderungen anhand des Gerätezustan des überprüft wird.
In weiteren Ausführungsformen der Empfangsvorrichtung umfasst die Empfangsvorrichtung ein Kryptographiemodul, wobei das Kryptographiemodul den Geräten zugeordnete kryptographische Daten umfasst.
In weiteren Ausführungsformen der Empfangsvorrichtung über prüft und/oder entschlüsselt das Kryptographiemodul anhand der kryptographischen Daten zumindest einen Teil des Nach richteninhalts der entsprechenden ersten Nachricht für ein zugeordnetes Gerät, wobei beispielsweise für das Überprüfen und/oder das Entschlüsseln die entsprechenden kryptographi- schen Daten anhand des zugeordneten Gerätes geladen werden.
Eine Sendevorrichtung (S) , aufweisend
eine erste Kommunikationsschnittstelle (310), wobei die erste Kommunikationsschnittstelle dazu eingerichtet ist mit Geräten zu kommunizieren, die Kommunikationsschnittstelle dazu einge richtet ist erste Nachrichten von den Geräten zu empfangen;
ein Identifikationsmodul (320), wobei
das Identifikationsmodul dazu eingerichtet ist anhand des jeweiligen Nachrichteninhalts der ersten Nachrichten eine Zuordnung berechnet, welches Gerät eine entsprechende erste Nach richt gesendet hat;
ein Konvertierungsmodul (330), wobei
das Konvertierungsmodul dazu eingerichtet ist den Nachrichteninhalt der entsprechenden ers ten Nachricht in ein Datenformat für das ver teilte Datenbanksystem zu konvertieren;
eine zweite Kommunikationsschnittstelle (340), wo bei
die zweite Kommunikationsschnittstelle dazu eingerichtet ist mit einem verteilten Daten banksystem kommunizieren,
die Kommunikationsschnittstelle dazu einge richtet ist den konvertierten Nachrichtenin halt an das verteilte Datenbanksystem zu über tragen .
In weiteren Ausführungsformen der Sendevorrichtung (S) um fasst die Sendevorrichtung ein Kryptographiemodul, wobei das Kryptographiemodul den Geräten zugeordnete kryptographische Daten umfasst.
In weiteren Ausführungsformen der Sendevorrichtung (S) lädt das Kryptographiemodul anhand des zugeordneten Gerätes ent- sprechende kryptographische Daten, wobei mittels der entspre chenden kryptographischen Daten zumindest ein Teil des Nach richteninhalts der entsprechenden ersten Nachricht gerätespe zifischen für das zugeordnete Geräte kryptographisch ge schützt werden, und wobei beispielsweise das kryptographische Schützen vor dem Senden des Nachrichteninhalts erfolgt.
In weiteren Ausführungsformen der Sendevorrichtung (S) und/oder der Empfangsvorrichtung (E) ist das verteilte Daten banksystem eine Blockkette, wobei beispielsweise die Nach richten die von dem verteilten Datenbanksystem gesendet und/oder empfangen werden Transaktionen sind.
In weiteren Ausführungsformen der Sendevorrichtung (S) und/oder der Empfangsvorrichtung (E) sind zumindest ein Teil der Geräte, Geräte eines Automatisierungsnetzwerkes.
Ein System (SYS) , aufweisend:
eine Empfangsvorrichtung (E) oder eine ihrer Ausfüh rungsformen;
eine Sendevorrichtung (S) oder eine ihrer Ausführungs formen .
Ein Verfahren zum rechnergestützten Empfangen von Nachrichten mit folgenden Verfahrensschritten:
Empfangen von ersten Nachrichten von einem verteilten Datenbanksystem mittels einer ersten Kommunikations schnittstelle;
Berechnen einer Zuordnung für die ersten Nachrichten, wobei beim Berechnen bestimmt wird für welche Geräte ei ne entsprechende erste Nachricht bestimmt ist;
Konvertieren des Nachrichteninhalt der entsprechenden ersten Nachricht in ein Datenformat für das zugeordnete Gerät ;
Übertragen des konvertierten Nachrichteninhalts an das Gerät, das der entsprechenden ersten Nachricht zugeord net ist. Ein Verfahren zum rechnergestützten Senden von Nachrichten mit folgenden Verfahrensschritten:
Empfangen von ersten Nachrichten von Geräten mit tels einer Kommunikationsschnittstelle;
- Berechnen einer Zuordnung anhand des jeweiligen
Nachrichteninhalts der ersten Nachrichten, wobei berechnet wird, welches Gerät eine entsprechende erste weitere Nachricht gesendet hat;
Konvertieren des Nachrichteninhalts der entspre- chenden ersten Nachricht in ein Datenformat für das verteilte Datenbanksystem;
Übertragen des konvertierten Nachrichteninhalts an das verteilte Datenbanksystem. Obwohl die Erfindung im Detail durch die Ausführungsbeispiele näher illustriert und beschrieben wurde, ist die Erfindung nicht durch die offenbarten Beispiele eingeschränkt, und an dere Variationen können vom Fachmann hieraus abgeleitet wer den, ohne den Schutzumfang der Erfindung zu verlassen.
[1]
Andreas M. Antonopoulos "Mastering Bitcoin: Unlocking Digital Cryptocurrencies", O'Reilly Media, December 2014
[2]
Roger M. Needham, Michael D. Schroeder "Using encryption for authentication in large networks of Computers" ACM: Communi cations of the ACM. Band 21, Nr. 12 December 1978,
[3]
Ross Anderson "Security Engineering. A Guide to Building De- pendable Distributed Systems" Wiley, 2001
[4]
Henning Diedrich „Ethereum: Blockchains, Digital Assets,
Smart Contracts, Decentralized Autonomous Organizations", CreateSpace Independent Publishing Platform, 2016
[5]
"The Ethereum Book Proj ect/Mastering Ethereum"
https://github.com/ethereumbook/ethereumbook, Stand 5.10.2017
[6]
Leemon Baird
"The Swirlds Hashgraph Consensus Algorithm: Fair, Fast, Byz- antine Fault Tolerance",
Swirlds Tech Report SWIRLDS-TR-2016-01, 31.5.2016
[7]
Leemon Baird
"OverView of Swirlds Hashgraph",
31.5.2016
[8]
Blockchain Oracles
https : / /blockchainhub . net/blockchain-oracles/
Stand 14.03.2018

Claims

Patentansprüche
1. Empfangsvorrichtung (E) , umfassend:
eine erste Kommunikationsschnittstelle (210), wobei die erste Kommunikationsschnittstelle dazu eingerichtet ist Daten von einer Netzwerk applikation zu empfangen;
ein Konvertierungsmodul (230), wobei
das Konvertierungsmodul dazu eingerichtet ist ein Konvertierungsprüfergebnis für die Daten zu bestimmen,
das Konvertierungsprüfergebnis abhängig von einem den Daten zugeordnetes Gerät bestimmen wird,
das Konvertierungsmodul dazu eingerichtet ist beim Bestimmen festzustellen, ob und/oder wie die Daten in ein Datenformat für das den Daten zugeordnete Gerät zu konvertieren sind, das Konvertierungsmodul dazu eingerichtet ist die Daten abhängig von dem Konvertierungsprü fergebnis in das Datenformat für das den Daten zugeordnetes Gerät zu konvertieren;
eine zweite Kommunikationsschnittstelle (240), wo bei
die zweite Kommunikationsschnittstelle dazu einge richtet ist die konvertieren Daten an das Gerät zu übertragen, das den Daten zugeordnet ist.
2. Empfangsvorrichtung (E) nach Anspruch 1, wobei
die Empfangsvorrichtung einen Gerätezustand von dem den Daten zugeordneten Gerät abruft,
eine Übertragung an das zugeordnete Gerät abhängig von dem abgerufenen Gerätezustand erfolgt.
3. Empfangsvorrichtung (E) nach Anspruch 2, wobei
der Gerätezustand einen Datensatz über die verfüg baren Geräteressourcen und/oder aktuellen Geräteei genschaften umfasst.
4. Empfangsvorrichtung (E) nach einem der vorhergehenden Ansprüche, wobei
eine Übertragung an das entsprechende Gerät er folgt, wenn vorgegebene Anforderungen der entspre chenden Daten durch das zugeordnete Gerät erfüllt sind,
beispielsweise die Erfüllung der vorgegebenen An forderungen anhand des Gerätezustandes überprüft wird .
5. Empfangsvorrichtung (E) nach einem der vorhergehenden Ansprüche, wobei
die Empfangsvorrichtung ein Kryptographiemodul um fasst,
das Kryptographiemodul den Geräten zugeordnete kryptographische Daten umfasst.
6. Empfangsvorrichtung (E) nach einem der vorhergehenden Ansprüche, wobei
das Kryptographiemodul anhand der kryptographischen Daten zumindest einen Teil der Daten für ein zuge ordnetes Gerät überprüft und/oder entschlüsselt, beispielsweise für das Überprüfen und/oder das Ent schlüsseln die entsprechenden kryptographischen Da ten anhand des zugeordneten Gerätes geladen werden.
7. Empfangsvorrichtung (E) nach einem der vorhergehenden Ansprüche, wobei
das Konvertierungsmodul dazu eingerichtet ist anhand des Gerätes zu überprüfen, welche Daten der Daten von dem Gerät verarbeitet werden können .
8. Empfangsvorrichtung (E) nach einem der vorhergehenden Ansprüche, wobei
die Empfangsvorrichtung (E) ein Identifikationsmo dul (220) umfasst, das Identifikationsmodul insbesondere dazu einge richtet ist anhand der Daten eine Zuordnung zu be rechnen, für welche Geräte beispielsweise die Daten bestimmt sind
das Identifikationsmodul insbesondere dazu einge richtet ist beispielsweise anhand der Daten eine Zuordnung oder die Zuordnung zu berechnen, um bei spielsweise das zugeordnete Gerät zu bestimmen.
9. Sendevorrichtung (S) , aufweisend
eine erste Kommunikationsschnittstelle (310), wobei die erste Kommunikationsschnittstelle dazu eingerichtet ist mit Geräten zu kommunizieren, die Kommunikationsschnittstelle dazu einge richtet ist erste Nachrichten oder Daten von den Geräten zu empfangen;
ein Identifikationsmodul (320), wobei
das Identifikationsmodul dazu eingerichtet ist anhand der Daten oder des jeweiligen Nachrich teninhalts der ersten Nachrichten eine Zuord nung berechnet, welches Gerät die Daten oder eine entsprechende erste Nachricht gesendet hat ;
ein Konvertierungsmodul (330), wobei
das Konvertierungsmodul dazu eingerichtet ist spezifisch für das den Daten zugeordnete Gerät Datenformatanforderungen zu bestimmen, die z. B. durch das zugeordnete Gerät vorgegebenen sind,
das Konvertierungsmodul dazu eingerichtet ist ein Prüfergebnis darüber zu ermitteln, welche Datenformate von verteilten Datenbanksystemen oder von Netzwerk-Applikationen verarbeiten können,
beispielsweise das Konvertierungsmodul dazu eingerichtet ist abhängig von dem Prüfergebnis und/oder den Datenformatanforderungen die Da ten in ein Datenformat für eine Netzwerk- Applikation der Netzwerk-Applikationen oder ein verteiltes Datenbanksystem der verteilten Datenbanksysteme zu konvertieren;
eine zweite Kommunikationsschnittstelle (340), wo bei
beispielsweise die zweite Kommunikations schnittstelle dazu eingerichtet ist, die konvertierten Daten oder den konvertierten Nachrichteninhalt an das verteilte Datenbank system oder die Netzwerk-Applikation zu über tragen .
10. Sendevorrichtung (S) nach Anspruch 9, wobei
die Sendevorrichtung ein Kryptographiemodul um fasst,
das Kryptographiemodul den Geräten zugeordnete kryptographische Daten umfasst.
11. Sendevorrichtung (S) nach Anspruch 9 oder 10, wobei
das Kryptographiemodul anhand des zugeordneten Ge rätes entsprechende kryptographische Daten lädt, mittels der entsprechenden kryptographischen Daten zumindest ein Teil der Daten oder ein Teil des Nachrichteninhalts der entsprechenden ersten Nach richt gerätespezifischen für das zugeordnete Geräte kryptographisch geschützt werden,
beispielsweise das kryptographische Schützen vor dem Senden des Nachrichteninhalts oder der Daten erfolgt .
12. Sendevorrichtung (S) und/oder Empfangsvorrichtung (E) nach einem der vorhergehenden Ansprüche, wobei
das verteilte Datenbanksystem eine Blockkette ist, beispielsweise die Nachrichten die von dem verteil ten Datenbanksystem gesendet und/oder empfangen werden Transaktionen sind.
13. Sendevorrichtung (S) und/oder Empfangsvorrichtung (E) nach einem der vorhergehenden Ansprüche, wobei
zumindest ein Teil der Geräte, Geräte eines Automa tisierungsnetzwerkes sind.
14. System (SYS), aufweisend:
eine Empfangsvorrichtung (E) nach einem der Ansprüche 1- 8 oder 12 - 13;
eine Sendevorrichtung (S) nach einem der Ansprüche 9-13.
15. Verfahren zum rechnergestützten Empfangen von Daten mit folgenden Verfahrensschritten:
Empfangen von Daten oder ersten Nachrichten von einem verteilten Datenbanksystem oder einer Netzwerk- Applikation mittels einer ersten Kommunikationsschnitt stelle;
Bestimmen eines Konvertierungsprüfergebnisses die Daten, wobei
das Konvertierungsprüfergebnis abhängig von einem den Daten zugeordnetes Gerät bestimmen wird bestimmt wird ob und/oder wie die Daten in ein Da tenformat für das den Daten zugeordnete Gerät zu konvertieren ist,
die Daten abhängig von dem Konvertierungsprüfergeb nis in das Datenformat für das den Daten zugeordne tes Gerät konvertiert wird,
Übertragen der konvertierten Daten und/oder der Daten an das Gerät, das der entsprechenden ersten Nachricht oder den Daten zugeordnet ist.
16. Verfahren zum rechnergestützten Senden von Nachrichten oder Daten mit folgenden Verfahrensschritten:
Empfangen von Daten oder ersten Nachrichten von Ge räten mittels einer Kommunikationsschnittstelle; Berechnen einer Zuordnung anhand der Daten oder des jeweiligen Nachrichteninhalts der ersten Nachrich ten, wobei berechnet wird, welches Gerät die Daten oder eine entsprechende erste weitere Nachricht ge sendet hat;
Bestimmen von Datenformatanforderungen, die spezi fisch für das den Daten zugeordnete Gerät bestimmt werden, wobei die Datenformatanforderungen z. B. durch das zugeordnete Gerät vorgegebenen werden; Ermitteln eines Prüfergebnisses darüber, welche Da tenformate von verteilten Datenbanksystemen oder von Netzwerk-Applikationen verarbeiten können; Konvertieren der Daten in ein Datenformat für eine Netzwerk-Applikation der Netzwerk-Applikationen o- der ein verteiltes Datenbanksystem der verteilten Datenbanksysteme abhängig von dem Prüfergebnis und/oder den Datenformatanforderungen;
Übertragen der konvertierten Daten oder des konver tierten Nachrichteninhalts an das verteilte Daten banksystem oder die Netzwerk-Applikation.
17. Computerprogrammprodukt mit Programmbefehlen zur Durch führung des Verfahrens nach Anspruch 15 oder 16.
18. Bereitstellungsvorrichtung für das Computerprogrammpro dukt nach Anspruch 17, wobei die Bereitstellungsvorrich tung das Computerprogrammprodukt speichert und/oder be- reitstellt .
EP19734298.3A 2018-07-11 2019-06-17 Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten Withdrawn EP3804283A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP18182973.0A EP3595267B1 (de) 2018-07-11 2018-07-11 Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten
PCT/EP2019/065873 WO2020011491A1 (de) 2018-07-11 2019-06-17 Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten

Publications (1)

Publication Number Publication Date
EP3804283A1 true EP3804283A1 (de) 2021-04-14

Family

ID=62981014

Family Applications (2)

Application Number Title Priority Date Filing Date
EP18182973.0A Active EP3595267B1 (de) 2018-07-11 2018-07-11 Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten
EP19734298.3A Withdrawn EP3804283A1 (de) 2018-07-11 2019-06-17 Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten

Family Applications Before (1)

Application Number Title Priority Date Filing Date
EP18182973.0A Active EP3595267B1 (de) 2018-07-11 2018-07-11 Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten

Country Status (7)

Country Link
US (1) US11640394B2 (de)
EP (2) EP3595267B1 (de)
CN (1) CN112640394A (de)
BR (1) BR112021000341B1 (de)
ES (1) ES2816012T3 (de)
PT (1) PT3595267T (de)
WO (1) WO2020011491A1 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220100739A1 (en) * 2019-03-23 2022-03-31 British Telecommunications Public Limited Company Distributed sequential transactional database selection
US11954681B2 (en) * 2019-09-30 2024-04-09 Southeast University Blockchain-enhanced open internet of things access architecture
DE102019130067B4 (de) * 2019-11-07 2022-06-02 Krohne Messtechnik Gmbh Verfahren zur Durchführung einer erlaubnisabhängigen Kommunikation zwischen wenigstens einem Feldgerät der Automatisierungstechnik und einem Bediengerät
US11658966B2 (en) * 2019-12-17 2023-05-23 Fisher-Rosemount Systems, Inc. Personnel profiles and fingerprint authentication for configuration engineering and runtime applications
EP3902224A1 (de) * 2020-04-24 2021-10-27 Siemens Aktiengesellschaft Vorrichtung und verfahren zum einfügen von gerätedaten in ein verteiltes datenbanksystem
EP3958501A1 (de) 2020-08-21 2022-02-23 Siemens Aktiengesellschaft Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten
US11438834B2 (en) 2021-06-14 2022-09-06 Ultralogic 6G, Llc Searchable database of 5G/6G network access information
US11934447B2 (en) * 2022-07-11 2024-03-19 Bank Of America Corporation Agnostic image digitizer

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8020201B2 (en) 2001-10-23 2011-09-13 Intel Corporation Selecting a security format conversion for wired and wireless devices
US7987489B2 (en) 2003-01-07 2011-07-26 Openpeak Inc. Legacy device bridge for residential or non-residential networks
US7409400B2 (en) * 2003-10-22 2008-08-05 Intel Corporation Applications of an appliance in a data center
CN101888284B (zh) * 2010-07-08 2013-08-28 中国科学院高能物理研究所 一种用于数据单向传输的方法及其装置
WO2013184093A1 (en) * 2012-06-04 2013-12-12 Hewlett-Packard Development Company, L.P. User-defined loading of data onto a database
US9961494B2 (en) * 2012-08-14 2018-05-01 Google Llc Sharing content with nearby devices
CN105005935A (zh) * 2014-04-23 2015-10-28 国家电网公司 多种智能用电交互渠道和交互设备兼容接入方法及装置
WO2017167549A1 (en) * 2016-03-30 2017-10-05 British Telecommunications Public Limited Company Untrusted code distribution
DE102016215914A1 (de) * 2016-08-24 2018-03-01 Siemens Aktiengesellschaft Absichern einer Gerätenutzungsinformation eines Gerätes
DE102016118614A1 (de) 2016-09-30 2018-04-05 Endress+Hauser Gmbh+Co. Kg Verfahren zum manipulationssicheren Speichern von Daten eines Feldgeräts
WO2018231255A1 (en) * 2017-06-16 2018-12-20 Visa International Service Association Blockchain network interaction controller
US20190306155A1 (en) * 2018-03-28 2019-10-03 Ca, Inc. Generating cryptographic keys using supplemental authentication data
WO2019244312A1 (ja) * 2018-06-21 2019-12-26 三菱電機株式会社 データ処理装置、データ処理システム、データ処理方法及びプログラム

Also Published As

Publication number Publication date
US11640394B2 (en) 2023-05-02
EP3595267B1 (de) 2020-06-17
WO2020011491A1 (de) 2020-01-16
PT3595267T (pt) 2020-07-01
EP3595267A1 (de) 2020-01-15
ES2816012T3 (es) 2021-03-31
CN112640394A (zh) 2021-04-09
BR112021000341A2 (pt) 2021-04-06
BR112021000341B1 (pt) 2024-01-02
US20210271665A1 (en) 2021-09-02

Similar Documents

Publication Publication Date Title
WO2020011491A1 (de) Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten
EP3673623B1 (de) Verfahren und steuersystem zum steuern und/oder überwachen von geräten
EP3382616A1 (de) Verfahren und vorrichtung zum rechnergestützten bereitstellen eines sicherheitsgeschützten digitalen zwillings
EP3388994A1 (de) Verfahren und vorrichtung zum rechnergestützten testen einer blockkette
EP3719713A1 (de) Verfahren und steuersystem zum steuern und/oder überwachen von geräten
EP3763089B1 (de) Verfahren und steuersystem zum steuern und/oder überwachen von geräten
EP3777088B1 (de) Verfahren und system zum steuern einer freigabe einer ressource
WO2020148001A1 (de) Verfahren, vorrichtungen und system zum sicherheitsgeschützten bereitstellen von datensätzen
EP3714575B1 (de) Verfahren und system zum steuern und/oder überwachen von geräten
WO2019081434A1 (de) Verfahren und steuersystem zum steuern und/oder überwachen von geräten
EP3718263B1 (de) Verfahren und steuersystem zum steuern und/oder überwachen von geräten
WO2022022992A1 (de) Digital-twin basierte prozesssteuerung in einem iot-netzwerk
EP4169207B1 (de) Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten
WO2020207717A1 (de) Verfahren und steuersystem zum steuern einer ausführung von transaktionen
WO2020126236A1 (de) Verfahren zum betreiben eines verteilten datenbanksystems, verteiltes datenbanksystem und industrieautomatisierungssystem
WO2022022997A1 (de) Kanalbasierte kommunikation in einem iot-netzwerk
EP3787251A1 (de) Verfahren, kommunikationsvorrichtung und netzwerkapplikation zum geschützten übermitteln von einem datensatz
WO2020043430A1 (de) Einrichtung und verfahren zum bereitstellen einer orakel-transaktion in einem verteilten datenbanksystem
EP3617976A1 (de) Verfahren zum betreiben eines verteilten datenbanksystems, verteiltes datenbanksystem und industrieautomatisierungssystem
WO2020120051A1 (de) Verfahren, vorrichtungen und system zur bereitstellung eines leistungsgegenstandes
WO2020193044A1 (de) Verfahren und steuersystem zum steuern einer ausführung von transaktionen
EP3817315A1 (de) Prüfvorrichtung, vorrichtung und verfahren zum validieren von transaktionen
EP3945480A1 (de) System, gerät und verfahren zur ausführung von programmbefehlen für eine ressource
EP3829103A1 (de) Vorrichtung und verfahren zum bilden von datenblöcken
EP3828798A1 (de) Vorrichtung und verfahren zum bilden von datenblöcken

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20210105

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20230103