RU2792734C2 - Creating a blockchain with blocks including a configurable number of transaction blocks and several intermediate blocks - Google Patents

Creating a blockchain with blocks including a configurable number of transaction blocks and several intermediate blocks Download PDF

Info

Publication number
RU2792734C2
RU2792734C2 RU2021116660A RU2021116660A RU2792734C2 RU 2792734 C2 RU2792734 C2 RU 2792734C2 RU 2021116660 A RU2021116660 A RU 2021116660A RU 2021116660 A RU2021116660 A RU 2021116660A RU 2792734 C2 RU2792734 C2 RU 2792734C2
Authority
RU
Russia
Prior art keywords
block
blocks
blockchain
intermediate block
transaction
Prior art date
Application number
RU2021116660A
Other languages
Russian (ru)
Other versions
RU2021116660A (en
Inventor
Оливер ТУРАУ
Original Assignee
Сименс Акциенгезелльшафт
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Сименс Акциенгезелльшафт filed Critical Сименс Акциенгезелльшафт
Publication of RU2021116660A publication Critical patent/RU2021116660A/en
Application granted granted Critical
Publication of RU2792734C2 publication Critical patent/RU2792734C2/en

Links

Images

Abstract

FIELD: blockchain.
SUBSTANCE: method for creating a blockchain, a data carrier and an Edge device. The blockchain includes a configurable number of transaction blocks (T) and several intermediate blocks, the blockchain being an integral part of a distributed database system; moreover, generating blocks within the blockchain, and the corresponding block refers to the corresponding preceding block, and the first intermediate block is provided; at least one second intermediate block is generated, the second intermediate block refers to the block preceding it, as well as to at least the first intermediate block, the first intermediate block being an intermediate preceding block, and the blockchain is shortened by reducing at least one or several transaction blocks between the second intermediate block and the first intermediate block, in particular by deleting all transaction blocks generated between the second intermediate block and the first intermediate block.
EFFECT: increasing the efficiency of data storage in the blockchain.
14 cl, 5 dwg

Description

Изобретение относится к реализуемому компьютером способу для создания блокчейна с блоками, включающими в себя настраиваемое количество блоков транзакций и несколько промежуточных блоков, а также к носителю данных устройства, участвующего в распределенной системе банка данных, содержащего такой блокчейн. The invention relates to a computer-implemented method for creating a blockchain with blocks, including a configurable number of transaction blocks and several intermediate blocks, as well as to a data carrier of a device participating in a distributed system of a data bank containing such a blockchain.

В индустриальной сфере существует все возрастающий интерес к тому, чтобы данные, которые относятся к самому устройству или автоматизированной системе, в которой находится устройство, или данные процесса, который протекает в автоматизированной системе устройства, безопасным образом сохранять в устройстве. При этом особый интерес представляют данные о качестве из автоматизированной системы управления или предпринятые действия обслуживания или история регистрируемых данных о состоянии. Для защищенного от манипулирования сохранения таких данных в устройстве предлагается блокчейн и использование сети блокчейна. There is an increasing interest in the industrial field that data relating to the device itself or the automation system in which the device is located, or process data that takes place in the automation system of the device, are securely stored in the device. Of particular interest here are the quality data from the automated control system or the maintenance actions taken or the history of the recorded status data. Blockchain and the use of a blockchain network are proposed for storing such data in a device protected from manipulation.

При этом в индустриальной сфере используют, например, так называемый общедоступный или публичный блокчейн или частный (приватный) блокчейн. В случае публичного блокчейна, способ консенсуса является открытым, т.е. неизвестная группа пользователей, например, в общедоступном Интернете, может подтверждать или валидировать блокчейн или, точнее сказать, валидировать отдельные блоки посредством так называемого майнинга. В случае приватного блокчейна, способ консенсуса реализуется внутри консорциума, члены которого, например, известны друг другу или известны административной инстанции или удовлетворяют определенному уровню доверия. At the same time, in the industrial sector, for example, the so-called public or public blockchain or private (private) blockchain are used. In the case of a public blockchain, the consensus method is open, i.e. an unknown group of users, for example on the public internet, can validate or validate the blockchain, or more precisely, validate individual blocks through so-called mining. In the case of a private blockchain, the consensus method is implemented within a consortium, whose members, for example, are known to each other or are known to the administrative authority or satisfy a certain level of trust.

Технология блокчейна реализует распределенную, децентрализованную базу данных, в которой защищенным от манипулирования образом могут сохраняться транзакции, сгенерированные участвующими узлами. Для этого, транзакции сохраняются в блоке, и блок посредством способа контрольной суммы связывается в цепочку с последующим блоком. Объяснение технологии блокчейна можно найти, например, в англоязычном источнике из Википедии https://en.wikipedia.org/wiki/Blockchain. В блоке, наряду с одной или несколькими транзакциями, сохраняется, например, хеш-значение блока-предшественника. Блок отправляется от узла, который его сгенерировал, в сеть блокчейна. Защита создается посредством множества доверительных узлов в сети блокчейна, которые выполняют валидацию блоков. В сети участвующих в блкчейне узлов, на регулярных расстояниях образуется новый блок, и при этом хеш-значение существующего блока совместно сохраняется. Если никакой транзакции не имеется в определенном интервале, то в некоторых блокчейнах отказываются от создания блока.Blockchain technology implements a distributed, decentralized database in which transactions generated by participating nodes can be stored in a tamper-proof manner. To do this, transactions are stored in a block, and the block is chained to the next block by means of a checksum method. An explanation of blockchain technology can be found, for example, in the English source from Wikipedia https://en.wikipedia.org/wiki/Blockchain. In a block, along with one or more transactions, for example, the hash value of the predecessor block is stored. The block is sent from the node that generated it to the blockchain network. Protection is created through many trusted nodes in the blockchain network that perform block validation. In the network of nodes participating in the blockchain, a new block is formed at regular distances, and in doing so, the hash value of the existing block is jointly stored. If there is no transaction in a certain interval, then some blockchains refuse to create a block.

Таким образом, блокчейн сохраняет транзакции, которые были выданы в блокчейн для подтверждения или предоставлены в сеть блокчейна. Если блоки подтверждаются в соответствующем способе консенсуса, то действительный блокчейн растет с каждым подтвержденным блоком по своей длине и, тем самым, по величине. Таким образом, потребность в емкости памяти (объеме памяти) продолжающегося или подтвержденного блокчейна, все возрастает.Thus, the blockchain stores transactions that have been issued to the blockchain for confirmation or submitted to the blockchain network. If blocks are confirmed in an appropriate consensus mode, then the actual blockchain grows with each confirmed block in length and thus in size. Thus, the need for storage capacity (memory capacity) of an ongoing or validated blockchain is increasing.

Так как контрольная сумма, в частность хеш-значение, блока-предшественника добавляется в соответствующий новый блок, образуется цепочка. Контрольная сумма блока-предшественника вновь образует вместе с транзакцией актуального (текущего) блока блок данных для контрольной суммы последующего блока. Также говорят, что блок ссылается на предшествующий блок (привязывается к предшествующему блоку, соотносится с предшествующим блоком). Транзакции, таким образом, защищены от манипуляций, так как цепочка может прослеживаться вплоть до начального блока, также называемого генезисным (порождающим, первичным) блоком, за счет связывания в цепочку блоков. Так как транзакции доступны через сеть блокчейна, можно проследить, с какого блока в цепочке, например, содержание транзакции больше не согласуется с предшествующими версиями. Следовательно, транзакции сохраняются защищенным от манипуляций образом в каждом верифицированном блокчейне. Изменение транзакции в блоке, который уже был образован к более раннему моменту времени в сети, могло бы прослеживаться, если формирование контрольной суммы по существующим блокам пересчитывается или проверяется. Ввиду постоянного растущего количества блоков внутри блокчейна, при использовании технологии блокчейна в устройствах с ограниченными ресурсами существует риск того, что достаточного объема памяти надолго не хватит. Например, ресурсы объема памяти в случае автоматизированных устройств, HMI-устройств или Edge-устройств или IoT-устройств ограничены, в противоположность облачным системам. Since the checksum, in particular the hash value, of the predecessor block is added to the corresponding new block, a chain is formed. The checksum of the predecessor block again forms, together with the transaction of the current (current) block, a data block for the checksum of the subsequent block. It is also said that the block refers to the previous block (attached to the previous block, correlated with the previous block). Transactions are thus protected from manipulation, since the chain can be traced back to the initial block, also called the genesis (generating, primary) block, by linking into a chain of blocks. Since transactions are available through the blockchain network, it is possible to trace from which block in the chain, for example, the content of the transaction is no longer consistent with previous versions. Consequently, transactions are stored in a tamper-proof manner on every verified blockchain. A change in a transaction in a block that has already been generated by an earlier point in time in the network could be traced if the generation of the checksum over existing blocks is recalculated or verified. Due to the constantly growing number of blocks within the blockchain, when using blockchain technology in devices with limited resources, there is a risk that there will not be enough memory for a long time. For example, memory capacity resources in case of automated devices, HMI devices or edge devices or IoT devices are limited, in contrast to cloud systems.

Исходя из этих предпосылок, задачей настоящего изобретения является предусмотреть применение блокчейна таким образом, что потребность в объеме памяти для блокчейна в узле может быть снижена. Based on these premises, it is an object of the present invention to provide for the application of the blockchain in such a way that the memory requirement for the blockchain in a node can be reduced.

Эта задача решается предметом независимых пунктов формулы изобретения. Предпочтительные варианты осуществления приведены в зависимых пунктах формулы изобретения. This problem is solved by the subject of independent claims. Preferred embodiments are given in the dependent claims.

Изобретение относится к реализуемому компьютером способу для создания блокчейна с блоками, включающими в себя настраиваемое количество блоков транзакций и несколько промежуточных блоков, The invention relates to a computer-implemented method for creating a blockchain with blocks, including a configurable number of transaction blocks and several intermediate blocks,

- причем блокчейн является составной частью распределенной системы базы данных; - moreover, the blockchain is an integral part of a distributed database system;

- причем блоки генерируются внутри блокчейна, и соответствующий блок ссылается на соответствующий предшествующий блок, - moreover, blocks are generated within the blockchain, and the corresponding block refers to the corresponding previous block,

- причем предусмотрен первый промежуточный блок;- and the first intermediate block is provided;

- причем генерируется по меньшей мере второй промежуточный блок;- moreover, at least the second intermediate block is generated;

- причем второй промежуточный блок ссылается на предшествующий ему блок, а также на по меньшей мере первый промежуточный блок. - moreover, the second intermediate block refers to the block preceding it, as well as to at least the first intermediate block.

Блокчейн является составной частью распределенной системы базы данных. При этом распределенная система базы данных означает, что информации базы данных, особенно цепочка в форме блокчейна, доступны или могут сохраняться в нескольких местах или у нескольких участников. Принцип блокчейна в распределенной системе базы данных основывается на том, что информация из блокчейна предоставляется децентрализованным образом. Участники распределенной системы базы данных могут взаимодействовать при создании новых блокчейнов или проверять или верифицировать блокчейны. Кроме того, участник также может получать доступ к одному или нескольким блокчейнам или применять один или несколько блоков блокчейна. Blockchain is an integral part of a distributed database system. In this case, a distributed database system means that database information, especially a chain in the form of a blockchain, is available or can be stored in several places or with several participants. The principle of blockchain in a distributed database system is based on the fact that information from the blockchain is provided in a decentralized manner. Participants in a distributed database system can interact to create new blockchains or validate or verify blockchains. In addition, a participant can also access one or more blockchains or apply one or more blockchain blocks.

В качестве блоков согласно настоящей заявке предусмотрены блоки транзакций, а также промежуточные блоки. Блок транзакции, который ссылается на предшествующий блок транзакции, известен из уровня техники. В частности, посредством создания блока транзакции с передачей транзакции в распределенную систему базы данных и связывания в цепочку с существующими блоками транзакций осуществляется построение блокчейна. Таким способом существующая цепочка блокчейна в некоторой степени продолжается или расширяется. As blocks according to the present application, transaction blocks are provided, as well as intermediate blocks. A transaction block that refers to a previous transaction block is known in the art. In particular, by creating a transaction block with the transfer of the transaction to a distributed database system and chaining with existing transaction blocks, the blockchain is built. In this way, the existing blockchain chain continues or expands to some extent.

Посредством выбора блока, на который ссылаются, в цепочке блокчейна устанавливается, в каком месте или на основе какой последней транзакции или какого последнего блока продолжается цепочка. В частности, возможен произвольный выбор блока, на который ссылаются, (для привязки) при создании блокчейна. Предпочтительным образом, для осуществления ссылки выбирается самый актуальный блок, подтвержденный распределенной системой базы данных. Таким образом, подтвержденные в своей действительности или валидированные цепочки эффективно расширяются. By selecting a referenced block in the blockchain chain, it is established at what location or based on which last transaction or last block the chain continues. In particular, it is possible to arbitrarily select a referenced block (for binding) when creating a blockchain. Preferably, the most up-to-date block validated by the distributed database system is selected for referencing. Thus, validated or validated chains are effectively expanded.

Теперь предлагается генерировать по меньшей мере один промежуточный блок. Промежуточный блок имеет, наряду с регулярной ссылкой на блок-предшественник, вторую ссылку, а именно, ссылку на промежуточный блок-предшественник. Под термином “ссылка” следует понимать, например, связывание в цепочку с другим блоком или связывание с другими блоками посредством образования контрольной суммы по связанному или сцепленному (цепочечному) блоку. За счет этой двойной ссылки(привязки) становится возможным гибким образом валидировать блокчейн, сгенерированный таким образом и подтвержденный децентрализованной сетью блокчейна: с одной стороны, может выполняться полное прослеживание сгенерированных блоков, в частности всех сгенерированных блоков. Также, цепочка может прослеживаться на основе промежуточных блоков и их ссылок на предшествующие промежуточные блоки. Блоки, которые находятся между двумя промежуточными блоками, в частности, блоки транзакций, могут при валидации пропускаться, если прослеживается целостность цепочки по промежуточным блокам.It is now proposed to generate at least one intermediate block. The intermediate block has, in addition to the regular reference to the predecessor block, a second reference, namely, a reference to the intermediate predecessor block. The term "link" should be understood, for example, linking in a chain with another block or linking with other blocks through the formation of a checksum over a linked or linked (chained) block. Through this double link, it becomes possible to flexibly validate the blockchain thus generated and validated by the decentralized blockchain network: on the one hand, a complete traceability of the generated blocks, in particular all generated blocks, can be performed. Also, the chain can be traced based on intermediate blocks and their links to previous intermediate blocks. Blocks that are between two intermediate blocks, in particular transaction blocks, can be skipped during validation if the integrity of the chain is traced along the intermediate blocks.

Например, в цепочке из блоков транзакций генерируется второй промежуточный блок. Второй промежуточный блок создается таким образом, что он псевдо-регулярно ссылается на предшествующий промежуточный блоку. Т.е. второй промежуточный блок генерируется в качестве блок внутри блокчейна таким образом, что он расширяет или продолжает существующую цепочку блокчейна. For example, in a chain of transaction blocks, a second intermediate block is generated. The second intermediate block is created in such a way that it pseudo-regularly refers to the preceding intermediate block. Those. the second intermediate block is generated as a block inside the blockchain in such a way that it extends or continues the existing blockchain.

Дополнительно, второй промежуточный блок ссылается на по меньшей мере первый промежуточный блок. Таким образом, второй промежуточный блок включает в себя по меньшей мере две ссылки. При этом речь идет, например, о контрольных суммах двух различных статусов блокчейна. С одной стороны, посредством связывания в цепочку с предшествующим блоком, блокчейн обычным образом продолжается. Предшествующий блок представляет собой, в частности, регулярный блок транзакции. Additionally, the second intermediate block refers to at least the first intermediate block. Thus, the second intermediate block includes at least two links. In this case, we are talking, for example, about the checksums of two different blockchain statuses. On the one hand, by chaining with the previous block, the blockchain continues in the usual way. The preceding block is, in particular, a regular transaction block.

Через прямой предшествующий блок, второй промежуточный блок включает в себя контрольную сумму цепочки блокчейна до самого второго промежуточного блока. Кроме того, второй промежуточный блок включает в себя также контрольную сумму блокчейна к статусу сгенерированного первого промежуточного блока. Например, это соответствует состоянию блокчейна после создания или после валидации первого промежуточного блока. Through the direct preceding block, the second intermediate block includes the checksum of the blockchain chain up to the second intermediate block itself. In addition, the second intermediate block also includes the blockchain checksum to the status of the generated first intermediate block. For example, this corresponds to the state of the blockchain after the creation or after the validation of the first intermediate block.

Таким образом, посредством второго промежуточного блока, который ссылается на первый промежуточный блок, создается указание на более раннее состояние блокчейна. Thus, by means of the second intermediate block, which refers to the first intermediate block, an indication of the earlier state of the blockchain is created.

Предпочтительным образом, блокчейн может продолжаться на основе второго промежуточного блока. Целостность сохраненных в блокчейне транзакций становится возможной посредством второго промежуточного блока и первого промежуточного блока, даже если сами блоки транзакций, сгенерированные между первым промежуточным блоком и вторым промежуточным блоком, больше недоступны. Preferably, the blockchain may continue on the basis of the second intermediate block. The integrity of the transactions stored on the blockchain is made possible by the second staging block and the first staging block, even if the actual transaction blocks generated between the first staging block and the second staging block are no longer available.

Предпочтительным образом, в предложенном способе, актуальная транзакция, которая предоставляется в распоряжение сети блокчейна и должна быть связана в цепочку, с доступностью блока транзакции в сети блокчейна будет доступна для всех узлов. Способ создания блокчейна с настраиваемым количеством блоков транзакций не затрагивает, таким образом, доступность актуальных блоков транзакций. Preferably, in the proposed method, the actual transaction, which is made available to the blockchain network and must be connected in a chain, with the availability of the transaction block in the blockchain network, will be available to all nodes. The way a blockchain is created with a configurable number of transaction blocks thus does not affect the availability of actual transaction blocks.

Промежуточный блок может, аналогично известным способам генерации блока транзакции, например, майнингу, подтверждаться сетью блокчейна. Например, промежуточный блок генерируется посредством механизма, основанного на Proof-of-Work (доказательство выполнения работы) или Proof-of-Stake (доказательство доли владения) или Proof-of-authority (доказательство репутации). An intermediate block can, similarly to known methods of generating a transaction block, for example, mining, be confirmed by the blockchain network. For example, an intermediate block is generated through a mechanism based on Proof-of-Work (proof of work) or Proof-of-Stake (proof of stake) or Proof-of-authority (proof of reputation).

В частности, обратные ссылки от промежуточных блоков на предшествующие промежуточные блоки при генерации последующих блоков после промежуточного блока не требуется особым образом принимать во внимание. В частности, валидация и связывание в цепочку промежуточного блока осуществляется регулярным образом.In particular, backlinks from intermediate blocks to preceding intermediate blocks do not need to be taken into special consideration when generating subsequent blocks after the intermediate block. In particular, the validation and chaining of the intermediate block is carried out in a regular manner.

Другие узлы, например узлы в облаке, в котором распределена сеть блокчейна, могут, следовательно, обращаться с блокчейном с одним или несколькими промежуточными блоками регулярным образом и принимать во внимание, например, только ссылку на предшествующий блок транзакций соответствующего промежуточного блока. Other nodes, such as nodes in the cloud in which the blockchain network is distributed, may therefore handle the blockchain with one or more intermediate blocks in a regular manner and take into account, for example, only the link to the previous transaction block of the corresponding intermediate block.

Целостность блокчейна становится возможной на основе ссылки первого промежуточного блока на второй промежуточный блок без блоков, сгенерированных между первым и вторым промежуточными блоками.The integrity of the blockchain is made possible based on the link of the first intermediate block to the second intermediate block with no blocks generated between the first and second intermediate blocks.

Согласно варианту осуществления, первый промежуточный блок является генезисным блоком. Первый промежуточный блок в этом варианте осуществления имеет особую роль и сам является генезисным блоком. Второй промежуточный блок ссылается тогда, в дополнение к блок-предшественнику, на генезисный блок. В этом варианте, в котором первый промежуточный блок является генезисным блоком, валидация блоков со второго промежуточного блока осуществляется на основе ссылки (привязки) генезисного блока. Транзакции, которые сохранены в блоках между генезисным блоком и вторым промежуточным блоком, не требуются для прослеживания целостности блоков со второго промежуточного блока.According to an embodiment, the first intermediate block is a genesis block. The first intermediate block in this embodiment has a special role and is itself a genesis block. The second intermediate block then refers, in addition to the predecessor block, to the genesis block. In this embodiment, in which the first intermediate block is a genesis block, validation of blocks from the second intermediate block is based on the genesis block link. Transactions that are stored in blocks between the genesis block and the second intermediate block are not required to trace the integrity of the blocks from the second intermediate block.

Согласно варианту осуществления, предусмотрен генезисный блок, и, кроме того, генерируется первый промежуточный блок, причем первый промежуточный блок ссылается на предшествующий ему блок, а также на по меньшей мере генезисный блок. Предпочтительным образом, первый промежуточный блок, в зависимости от свойства цепочки или от частоты генерируемых блоков, особенно генерируемых блоков транзакций, независимо от генезисного блока может служить в качестве ссылки и блока данных для формирования контрольной суммы или хеш-значения второго промежуточного блока.According to an embodiment, a genesis block is provided and, in addition, a first intermediate block is generated, the first intermediate block referring to the block that precedes it, as well as to at least the genesis block. Preferably, the first intermediate block, depending on the property of the chain or the frequency of generated blocks, especially generated transaction blocks, regardless of the genesis block, can serve as a reference and data block for generating a checksum or hash value of the second intermediate block.

Согласно варианту осуществления, между первым промежуточным блоком и вторым промежуточным блоком генерируется по меньшей мере один блок транзакции. Второй промежуточный блок предпочтительным образом генерируется согласно предписанию, которое учитывает особенности приложения блокчейна или свойства блокчейна и которое в соответствии с этим желало бы осуществлять промежуточные блоки после определенного количества блоков транзакций. При этом предписание может предусматривать самые различные механизмы, чтобы достичь этой цели. Чем больше блоков транзакций предусмотрено между промежуточными блоками, тем больше блоков могут оставаться без внимания при проверке блокчейна на основе промежуточных блоков и их ссылки на предшествующий промежуточный блок.According to an embodiment, at least one transaction block is generated between the first intermediate block and the second intermediate block. The second staging block is preferably generated according to a prescription that takes into account the characteristics of the blockchain application or the properties of the blockchain and which would like to execute staging blocks accordingly after a certain number of transaction blocks. In this case, the prescription may provide for a variety of mechanisms to achieve this goal. The more blocks of transactions provided between the intermediate blocks, the more blocks can be left out when checking the blockchain based on the intermediate blocks and their link to the previous intermediate block.

Согласно варианту осуществления, для укорочения блокчейна, сокращается по меньшей мере количество блоков транзакций между вторым промежуточным блоком и первым промежуточным блоком. В частности, удаляются все блоки транзакций, сгенерированные между вторым промежуточным блоком и первым промежуточным блоком. According to an embodiment, to shorten the blockchain, at least the number of transaction blocks between the second intermediate block and the first intermediate block is reduced. In particular, all transaction blocks generated between the second intermediate block and the first intermediate block are deleted.

Один или несколько блоков транзакций, которые находятся между первым промежуточным блоком и вторым промежуточным блоком, удаляются, так что величина и, тем самым, требуемая емкость памяти блокчейна в узле снижается. One or more transaction blocks that are between the first intermediate block and the second intermediate block are removed, so that the size and thus the required storage capacity of the blockchain in the node is reduced.

Узел, который предпринимает укорочение, может представлять собой любой узел, участвующий в сети блокчейна. Предпочтительно, по меньшей мере в одном из участвующих узлов должен сохраняться весь блокчейн, включая все блоки транзакций, чтобы при необходимости можно было возвратиться к блокам транзакций, которых больше не имеется в укороченном блокчейне. The node that undertakes the shortening can be any node participating in the blockchain network. Preferably, at least one of the participating nodes should store the entire blockchain, including all blocks of transactions, so that if necessary, it is possible to return to blocks of transactions that are no longer present in the shortened blockchain.

Укороченный блокчейн, как и ранее, может проверяться на целостность или аутентичность, при этом используется ссылка второго промежуточного блока на первый промежуточный блок. Таким образом может проверяться целостность блоков от генезисного блока до второго промежуточного блока, так как цепочка за счет ссылки на первый промежуточный блок не прерывается и из-за отсутствующих блоков транзакций между первым промежуточным блоком и вторым промежуточным блоком. Предпочтительным образом, можно прослеживать как истинность транзакций, еще доступных в укороченном блокчейне перед первым промежуточным блоком, так и истинность транзакций после второго промежуточного блока, в частности, тем, что выполняется формирование контрольной суммы по всем блокам включая промежуточные блоки. Так как второй промежуточный блок также имеет контрольные суммы первого промежуточного блока, в промежутках удаленных блоков транзакций также возможно сквозное прослеживание блокчейна посредством контрольных сумм. Следовательно, транзакции не удаленных блоков транзакций продолжают сохраняться защищенным от манипуляций образом и в укороченном блочейне. The shortened blockchain, as before, can be checked for integrity or authenticity, while using the link of the second intermediate block to the first intermediate block. Thus, the integrity of the blocks from the genesis block to the second intermediate block can be checked, since the chain is not interrupted due to the reference to the first intermediate block and due to missing transaction blocks between the first intermediate block and the second intermediate block. Preferably, both the validity of transactions still available in the shortened blockchain before the first intermediate block and the validity of transactions after the second intermediate block can be traced, in particular by the fact that a checksum is generated over all blocks, including intermediate blocks. Since the second intermediate block also has the checksums of the first intermediate block, it is also possible to trace the blockchain end-to-end through the checksums in between remote transaction blocks. Therefore, transactions of non-deleted transaction blocks continue to be stored in a tamper-proof manner on the shortened blockchain.

То, что второй промежуточный блок может становиться доверительным для всех последующих блоков, гарантируется тем, что и промежуточные блоки, как в регулярной сети блокчейна, подтверждаются посредством механизмов консенсуса блокчейна.That the second intermediate block can become trusted for all subsequent blocks is guaranteed by the fact that intermediate blocks, as in a regular blockchain network, are confirmed through blockchain consensus mechanisms.

Укорочение блокчейна особенно целесообразно для узлов, которые предусмотрены на устройствах с ограниченным объемом памяти. Например, в индустриальной сфере при этом речь идет о так называемых Edge-устройствах, которые служат в качестве интерфейса к облаку и к тому же локально в промышленной установке могут предоставлять или обрабатывать данные, релевантные для этой установки. Blockchain shortening is especially useful for nodes that are provided on devices with limited memory. For example, in the industrial sector, these are so-called Edge devices, which serve as an interface to the cloud and can also provide or process data relevant to this plant locally in an industrial plant.

В частности, удаляются все блоки транзакций между двумя промежуточными блоками. Транзакции между двумя промежуточными блоками могут проверяться без пробелов, если все присутствуют и соответственно все контрольные суммы могут быть пересчитаны, как это имеет место в традиционном блокчейне. Поэтому укорочение блокчейна может оптимизироваться в отношении требуемого объема памяти за счет того, что укороченный блокчейн не содержит никакого блока транзакции между вторым промежуточным блоком и первым промежуточным блоком. В особых случаях, в которых, например, на основе политики, по которой осуществляется генерирование промежуточного блока, или ввиду отсутствия сгенерированных блоков транзакций, между двумя промежуточными блоками не был сгенерирован блок транзакции, укорочение может осуществляться аналогичным образом. Промежуточный блок содержит в этом случае, например, контрольную сумму по предшествующему промежуточному блоку дважды, один раз на основе ссылки прямого блока-предшественника, а второй раз на основе ссылки предшествующего промежуточного блока. Укорочение блокчейна не достигает в этом особом случае сокращения объема памяти.In particular, all transaction blocks between two intermediate blocks are deleted. Transactions between two intermediate blocks can be verified without gaps if all are present and accordingly all checksums can be recalculated, as is the case in a traditional blockchain. Therefore, chain pruning can be optimized in terms of memory requirement by having the pruned chain not contain any transaction block between the second intermediate block and the first intermediate block. In special cases, in which, for example, based on the policy by which the intermediate block is generated, or due to the lack of generated transaction blocks, no transaction block was generated between two intermediate blocks, pruning can be carried out in a similar way. The intermediate block contains in this case, for example, the checksum of the previous intermediate block twice, once based on the link of the direct predecessor block and the second time based on the link of the previous intermediate block. Blockchain truncation does not achieve memory reduction in this special case.

Согласно варианту осуществления, посредством устройства, участвующего в распределенной системе базы данных, в частности, устройства в облаке или Edge-устройства или IoT-устройства, сохраняется укороченный блокчейн. Таким способом устройство с ограниченным объемом памяти может гибко сохранять укороченный блокчейн, который требует меньшего объема памяти. Например, устройство сохраняет сначала неукороченный блокчейн и затем укорачивает его путем стирания блоков транзакций между любыми промежуточными блоками. According to an embodiment, a shortened blockchain is stored by means of a device participating in a distributed database system, in particular a device in the cloud or an edge device or an IoT device. In this way, a memory-limited device can flexibly store a shortened blockchain that requires less memory. For example, a device first saves an unshortened blockchain and then shortens it by erasing transaction blocks between any intermediate blocks.

Согласно варианту осуществления, для расширения блокчейна, блоки транзакций между первым промежуточным блоком и вторым промежуточный блок запрашиваются из сохраненного неукороченного блокчейна и добавляются. Тем самым, предпочтительным образом, укороченный блокчейн снова может быть расширен до неукороченного. Это расширение может выполняться для блоков транзакций между выбранными промежуточными блоками или для всех удаленных блоков транзакций, т.е. для блоков транзакций между всеми промежуточными блоками, между которыми перед этим было выполнено сокращение. According to an embodiment, to extend the blockchain, the transaction blocks between the first intermediate block and the second intermediate block are requested from the stored uncropped blockchain and added. Thus, in a preferred manner, a shortened blockchain can again be extended to a non-shortened one. This expansion can be performed for transaction blocks between selected intermediate blocks or for all remote transaction blocks, i.e. for transaction blocks between all intermediate blocks between which the reduction was previously performed.

Согласно варианту осуществления, ссылка ссылаемого блока, включает в себя то, что контрольная сумма ссылаемого блока или части ссылаемого блока была сохранена или сохраняется в ссылающем блоке. Контрольная сумма представляет собой, в частности, хеш-значение или криптографическое хеш-значение. According to an embodiment, the link of the referenced block includes that the checksum of the referenced block or part of the referenced block has been stored or is stored in the referencing block. The checksum is in particular a hash value or a cryptographic hash value.

Согласно варианту осуществления, промежуточные блоки не содержат, соответственно, никакой транзакции. Промежуточный блок аналогично известному способу генерации блока транзакции, например майнингу, подтверждается посредством сети блокчейна. Только содержимое сгенерированного промежуточного блока не содержит в этом варианте осуществления никаких полезных данных. Тогда в случае укороченного блокчейна остается особенно мало данных транзакций в укороченном блокчейне. В качестве промежуточного блока, согласно другому варианту, следует обозначать блок, который сам содержит транзакцию. Тем самым промежуточный блок может иметь двойную функцию и, с одной стороны, быть блоком транзакции внутри блокчейна и одновременно посредством дополнительной ссылки на более ранний промежуточный блок иметь функциональность промежуточного блока. Также транзакция промежуточного блока является защищенной от манипулирования, так как следующие за промежуточным блоком блоки транзакций сами ссылаются на этот промежуточный блок и, таким образом, связывают в цепочку сохраненную там транзакцию. Однако транзакции, которые сохраняются в промежуточных блоках, при укорочении блокчейна не удаляются. According to an embodiment, the intermediate blocks do not contain, respectively, any transaction. The intermediate block is similar to the known method of generating a transaction block, such as mining, is confirmed by the blockchain network. Only the content of the generated intermediate block does not contain any useful data in this embodiment. Then, in the case of a shortened blockchain, there is especially little transaction data left in the shortened blockchain. As an intermediate block, according to another variant, one should designate a block that itself contains a transaction. Thus, an intermediate block can have a dual function and, on the one hand, be a transaction block within the blockchain and at the same time, by means of an additional reference to an earlier intermediate block, have the functionality of an intermediate block. Also, the transaction of an intermediate block is protected from manipulation, since the transaction blocks following the intermediate block themselves refer to this intermediate block and, thus, chain the transaction stored there. However, transactions that are stored in intermediate blocks are not deleted when the blockchain is shortened.

Удаление блоков транзакций между всеми имеющимися промежуточными блоками, например, между генезисным блоком и первым промежуточным блоком и между первым промежуточным блоком и вторым промежуточным блоком и между вторым промежуточным блоком и последующим промежуточным блоком и т.д. обуславливает то, что в укороченном блокчейне имеются только транзакции, следующие за последним сгенерированным промежуточным блоком. Это особенно предпочтительно в приложениях, в которых история данных транзакций, которые были связаны в цепочку перед последним сгенерированным промежуточным блоком, больше не представляют интереса. В таком сценарии может высвобождаться особенно много объема памяти, или блокчейн требует особенно мало объема памяти, тем не менее все данные транзакции недавнего прошлого являются доступными. Временной интервал, для которого доступна история транзакций, может предпочтительно регулироваться посредством предписания для генерации промежуточных блоков или, альтернативно, посредством указания подлежащих стиранию блоков транзакций.Deletion of transaction blocks between all existing intermediate blocks, for example, between the genesis block and the first intermediate block and between the first intermediate block and the second intermediate block and between the second intermediate block and the subsequent intermediate block, etc. causes that in the shortened blockchain there are only transactions following the last generated intermediate block. This is particularly advantageous in applications where the history of transaction data that was chained before the last intermediate block generated is no longer of interest. In such a scenario, a particularly large amount of memory can be freed up, or the blockchain requires a particularly small amount of memory, but all transaction data from the recent past is still available. The time interval for which the transaction history is available can preferably be adjusted by prescribing for the generation of intermediate blocks or, alternatively, by specifying the transaction blocks to be erased.

Согласно варианту осуществления, генерируются последующие промежуточные блоки, причем соответствующий последующий промежуточный блок ссылается на соответственно предшествующий блок, а также на соответственно предшествующий промежуточный блок. Способ может расширяться на любое количество промежуточных блоков, причем следующие друг за другом промежуточные блоки соответственно выполнены аналогично первому и второму промежуточным блокам. Третий промежуточный блок может, таким образом, следовать за вторым, четвертый промежуточный блок за третьим и т.д.According to an embodiment, subsequent intermediate blocks are generated, with the corresponding subsequent intermediate block referring to the correspondingly preceding block and also to the correspondingly preceding intermediate block. The method can be extended to any number of intermediate blocks, the successive intermediate blocks respectively being similar to the first and second intermediate blocks. The third intermediate block may thus follow the second, the fourth intermediate block the third, and so on.

Согласно усовершенствованному варианту осуществления, генерация второго или соответствующего последующего промежуточного блока осуществляется на основе правил, например, к заданному моменту времени или с заданным временным интервалом от предшествующего блока или с заданным временным интервалом от предшествующего промежуточного блока или после заданного количества сгенерированных блоков транзакций или посредством запускаемого на контекстной основе условия или осуществляется вручную. Предпочтительным образом, является возможным, устанавливать частоту или регулярность генерируемых промежуточных блоков по правилу для генерации промежуточных блоков. В зависимости от случая применения, промежуточные блоки могут генерироваться таким образом, что блоки транзакций могут удаляться из определенных временных диапазонов. According to an improved embodiment, the generation of the second or corresponding subsequent intermediate block is based on rules, for example, at a given time or with a given time interval from the previous block or with a given time interval from the previous intermediate block or after a given number of transaction blocks generated or by a triggered context-based conditions or done manually. Preferably, it is possible to set the frequency or regularity of generated intermediate blocks according to the rule for generating intermediate blocks. Depending on the application, intermediate blocks may be generated such that transaction blocks may be removed from certain time ranges.

Например, сгенерированные с особенно тонкой гранулярностью блоки могут удаляться из выбираемого временного промежутка, например, когда история транзакций для этого отрезка времени представляет незначительный интерес. Например, промежуточные блоки могут создаваться с увеличенными интервалами, для случаев применения, для которых, согласно опыту, лишь самые актуальные из данных транзакций будут представлять впоследствии интерес в устройстве в составе автоматизированной установки. За счет удаления блоков транзакций из такого диапазона можно посредством действия стирания между двумя промежуточными блоками одновременно сэкономить большую величину объема памяти. For example, blocks generated with particularly fine granularity may be removed from a selectable time period, for example, when the transaction history for that time period is of little interest. For example, intermediate blocks may be created at extended intervals, for applications for which experience has shown that only the most recent of these transactions will be subsequently of interest in a device as part of an automated installation. By removing transaction blocks from such a range, a large amount of memory can be simultaneously saved by means of an erase action between two intermediate blocks.

В других случаях применения, промежуточный блок может генерироваться с меньшими интервалами, например, когда согласно опыту, лишь определенные части сгенерированных блоков транзакций представляют интерес для исторического анализа, а другие части могут быть стерты из истории. In other applications, the intermediate block may be generated at shorter intervals, such as when experience has shown that only certain portions of the generated transaction blocks are of interest to historical analysis, while other portions may be erased from history.

Предпочтительным образом, промежуточный блок генерируется только тогда, когда было сгенерировано определенное количество блоков транзакций. Это обеспечивает то, что промежуточный блок генерируется только тогда, когда удаление блоков транзакций до предшествующего промежуточного блока превышает определенную экономию объема памяти в качестве предельного значения. Тем самым можно, например, избежать того, что удаление блоков транзакций между двумя промежуточными блоками будет иметь лишь незначительное влияние на величину или длину всего блокчейна. Preferably, an intermediate block is only generated when a certain number of transaction blocks have been generated. This ensures that an intermediate block is only generated when the deletion of transaction blocks prior to the preceding intermediate block exceeds a certain memory savings as a limit. In this way, for example, it can be avoided that the removal of transaction blocks between two intermediate blocks will have only a minor impact on the size or length of the entire blockchain.

Предпочтительным образом, при основанном на контексте условии, генерация промежуточного блока осуществляется в зависимости от контекста, например контекста проекта автоматизации. Например, система-заказчик управляет созданием промежуточного блока. Предпочтительным образом, промежуточные блоки тогда могут, например, создаваться в начале и по завершении партии. Таким образом, удаление блоков транзакций между промежуточными блоками или также сохранение этих блоков в блокчейне выбирается для определенной партии (поставки) или определенного заказа.Preferably, under a context-based condition, the generation of the intermediate block is done in a context-dependent manner, such as the context of an automation project. For example, the customer system controls the creation of the intermediate block. Preferably, intermediate blocks can then, for example, be created at the beginning and at the end of a batch. Thus, the removal of transaction blocks between intermediate blocks or also the preservation of these blocks in the blockchain is chosen for a certain batch (delivery) or a certain order.

Кроме того, промежуточный блок может, например, создаваться, когда новая установка параметра применяется в автоматизированном процессе, например, после смены инструмента в инструментальном оборудовании или после настройки регуляторов в производственном оборудовании в ответ на влияния окружающей среды.In addition, an intermediate block may, for example, be created when a new parameter setting is applied in an automated process, such as after a tool change in tooling equipment or after adjusting controls in manufacturing equipment in response to environmental influences.

Согласно варианту осуществления, по меньшей мере один из последующих промежуточных блоков ссылается по меньшей мере на два из предшествующих промежуточных блоков, при этом на однин промежуточный блок ссылается несколько предшествующих промежуточных блоков, например, таким образом, что хеш-значение нескольких предшествующих промежуточных блоков содержит состояние блокчейна к соответствующему моменту времени. Таким образом, становится возможным укорочение блокчейна, исходя из промежуточных узлов с двойной ссылкой, на несколько длин. Т.е. можно, например удалить из блокчейна участок цепочки между промежуточным узлом с двойной ссылкой и промежуточным узлом, на который раньше делалась ссылка, или между промежуточным узлом с двойной ссылкой и промежуточным узлом, на который позже делалась ссылка. According to an embodiment, at least one of the subsequent intermediate blocks refers to at least two of the previous intermediate blocks, wherein one intermediate block is referenced by several previous intermediate blocks, for example, in such a way that the hash value of several previous intermediate blocks contains the state blockchain to the corresponding point in time. Thus, it becomes possible to shorten the blockchain, based on intermediate nodes with a double link, by several lengths. Those. it is possible, for example, to remove from the blockchain the section of the chain between the intermediate node with a double link and the intermediate node that was previously linked to, or between the intermediate node with a double link and the intermediate node that was later linked to.

В усовершенствованном варианте осуществления, промежуточный блок может ссылаться, например, на все предшествующие промежуточные блоки. Это повышает, с одной стороны, сложность ввиду инфляции (переизбытка) ссылок в промежуточном блоке, однако таким способом можно в одном процессе удалить из блокчейна очень большое количество блоков, т.е. блоков транзакций и предшествующих промежуточных блоков, и тем самым эффективно укоротить его. In an advanced embodiment, the intermediate block may refer to, for example, all preceding intermediate blocks. On the one hand, this increases the complexity due to inflation (overabundance) of links in the intermediate block, however, in this way, a very large number of blocks can be removed from the blockchain in one process, i.e. transaction blocks and preceding intermediate blocks, and thus effectively shorten it.

Согласно варианту осуществления, соответствующий промежуточный блок ссылается на соответственно предшествующий промежуточный блок, и выбранные промежуточные блоки дополнительно ссылаются на другие предшествующие промежуточные блоки. Таким способом может создаваться компромисс, так что, с одной стороны, количество ссылок не нарастает инфляционно с вновь сгенерированными промежуточными блоками, и тем не менее выбранные промежуточные блоки ссылаются на два или более предшествующих промежуточных блока. According to an embodiment, the corresponding intermediate block refers to a correspondingly preceding intermediate block, and the selected intermediate blocks additionally refer to other preceding intermediate blocks. In this way, a compromise can be created so that, on the one hand, the number of references does not increase in an inflationary manner with newly generated intermediate blocks, and yet the selected intermediate blocks link to two or more preceding intermediate blocks.

Согласно варианту осуществления, в качестве выбранного промежуточного блока генерируется промежуточный блок к заданному моменту времени или с заданным временным интервалом до предшествующего или выбранного перед этим промежуточного блока или после заданного количества сгенерированных блоков транзакций или промежуточных блоков или генерируется посредством основанного на контексте запускающего условия или вручную. Механизмы, которые запускают генерацию выбранного промежуточного блока с двойной или многократной ссылкой, могут выбираться аналогично созданию промежуточного блока. According to an embodiment, as the selected intermediate block, an intermediate block is generated at a given time or with a given time interval before the previous or previously selected intermediate block or after a given number of generated transaction blocks or intermediate blocks, or is generated by a context-based trigger condition or manually. Mechanisms that trigger the generation of a selected staging box with double or multiple reference can be selected in a similar manner to the creation of the staging box.

Изобретение также относится к носителю данных устройства, участвующего в распределенной системе базы данных, в частности устройства в облаке, Edge-устройства или IoT-устройства, имеющего блокчейн с блоками, включающими в себя настраиваемое количество блоков транзакций и несколько промежуточных блоков, The invention also relates to the storage medium of a device participating in a distributed database system, in particular a device in the cloud, an Edge device or an IoT device having a blockchain with blocks including a configurable number of transaction blocks and several intermediate blocks,

- причем блокчейн является составной частью распределенной системы базы данных;- moreover, the blockchain is an integral part of a distributed database system;

- причем соответствующий блок ссылается на соответствующий предшествующий блок;- and the corresponding block refers to the corresponding previous block;

- имеет первый промежуточный блок и по меньшей мере один второй промежуточный блок; - has a first intermediate block and at least one second intermediate block;

- причем второй промежуточный блок имеет ссылку на предшествующий ему блок, а также на по меньшей мере первый промежуточный блок. - moreover, the second intermediate block has a link to the block preceding it, as well as to at least the first intermediate block.

Согласно варианту осуществления, носитель данных выполнен на Edge-устройстве или IoT-устройстве и сохраняет укороченный блокчейн согласно вышеописанному способу. According to an embodiment, the storage medium is made on an Edge device or an IoT device and stores a shortened blockchain according to the method described above.

Предпочтительным образом, в сети блокчейна, блокчейн с описанным промежуточными блоками генерируется, распределяется, подтверждается, децентрализованно администрируется или сохраняется. Узел сети блокчейна может, таким образом, произвольным образом принять решение, следует ли ему сохранять полный блокчейн, включая сгенерированные блоки транзакций и промежуточные блоки, или укорачивать блокчейн согласно вышеописанному способу и сохранять укороченный блокчейн. В частности, узлы сети, которые имеют ограниченный объем памяти, как, например, Edge-устройства или IoT-устройства в составе автоматизированных установок, могут предпочтительно сохранять укороченный блокчейн. Preferably, in a blockchain network, a blockchain with intermediate blocks described is generated, distributed, validated, decentralized administered or stored. The blockchain network node can thus arbitrarily decide whether to keep the complete blockchain, including the generated transaction blocks and intermediate blocks, or shorten the blockchain according to the above method and keep the shortened blockchain. In particular, network nodes that have a limited amount of memory, such as edge devices or IoT devices in automated installations, can preferentially store a short chain.

Согласно варианту осуществления, носитель данных выполнен на Edge-устройстве или IoT-устройстве и сохраняет блокчейн, расширенный согласно вышеописанному способу. Предпочтительно в сети блокчейна предусмотрен по меньшей мере один узел, который надежно сохраняет весь блокчейн. В автоматизированной установке, которая подключена к облаку, это может быть узел блокчейна оператора установки или узел блокчейна облачной службы, для которой оператор установки определяет правила и который сохраняет весь блокчейн включая все блоки транзакций. От него может тогда, например, устройство автоматизированной установки, которое сохранило только укороченный блокчейн, запрашивать блоки транзакций, не содержащиеся в укороченном блокчейне, и вновь привязывать их в блокчейн. В частности, при этом процессе может проверяться, все ли запрошенные и предоставленные блоки транзакций существуют в целостной и не подверженной манипуляциям форме, посредством прослеживания контрольных сумм блоков. Таким способом устройство с сохраненным укороченным блокчейном после привязки блоков из полного блокчейна вновь получает расширенный блокчейн. При этом могут запрашиваться все удаленные блоки или только части, так что блокчейн в расширенной, но в любом случае все еще в сокращенной форме относительно полного блокчейна, предоставляется на Edge-устройстве или IoT-устройстве. According to an embodiment, the storage medium is implemented on an Edge device or an IoT device and stores the blockchain extended according to the method described above. Preferably, at least one node is provided in the blockchain network that securely stores the entire blockchain. In an automated installation that is connected to the cloud, this could be the installation operator blockchain node or the cloud service blockchain node for which the installation operator defines the rules and which stores the entire blockchain including all blocks of transactions. From it can then, for example, an automated installation device that has stored only the shortened blockchain, request blocks of transactions that are not contained in the shortened blockchain, and re-link them to the blockchain. In particular, this process can verify that all requested and granted blocks of transactions exist in a consistent and unmanipulable form by tracing checksums of the blocks. In this way, a device with a saved shortened blockchain, after linking blocks from the full blockchain, again receives an extended blockchain. This can request all the removed blocks or only parts, so that the blockchain in an extended, but in any case still in a reduced form relative to the full blockchain, is provided on the Edge device or IoT device.

Изобретение также относится к Edge-устройству, имеющему носитель данных согласно вышеописанным вариантам осуществления носителя данных. The invention also relates to an Edge device having a storage medium according to the above-described embodiments of the storage medium.

Изобретение также относится к компьютерному программному продукту с компьютерной программой, которая имеет средства для выполнения способа согласно одному из вышеописанных вариантов осуществления, когда компьютерная программа приводится в исполнение на программно-управляемом устройстве. The invention also relates to a computer program product with a computer program that has means for performing the method according to one of the embodiments described above when the computer program is executed on a software-controlled device.

Изобретение далее поясняется на примерах со ссылками на чертежи, на которых показано следующее:The invention is further illustrated by examples with reference to the drawings, which show the following:

Фиг. 1 - схематичное представление двух блокчейнов согласно первому примеру выполнения изобретения;Fig. 1 is a schematic representation of two blockchains according to the first embodiment of the invention;

Фиг. 2 - схематичное представление двух блокчейнов согласно второму примеру выполнения изобретения;Fig. 2 is a schematic representation of two blockchains according to the second embodiment of the invention;

Фиг. 3 - схематичное представление двух блокчейнов согласно третьему примеру выполнения изобретения;Fig. 3 is a schematic representation of two blockchains according to the third embodiment of the invention;

Фиг. 4 - схематичное представление двух блокчейнов согласно четвертому примеру выполнения изобретения;Fig. 4 is a schematic representation of two blockchains according to the fourth embodiment of the invention;

Фиг. 5 - схематичное представление сетевых узлов блокчейнов в облачном окружении и сетевых узлов блокчейнов в автоматизированной установке.Fig. 5 is a schematic representation of blockchain network nodes in a cloud environment and blockchain network nodes in an automated installation.

Согласно первому примеру выполнения изобретения, блокчейн генерируется таким образом, что наряду с регулярными блоками транзакций с регулярными интервалами генерируются промежуточные блоки. При этом блокчейн базируется на генезисном блоке G. Блоки транзакций создаются на основе генезисного блока G и связываются в цепочку в блокчейн. На фиг. 1 в качестве примера обозначен такой блок транзакции T. Для простоты, только один блок транзакции снабжен ссылочной позицией. Спустя заданный и гибко выбираемый временной интервал от генезисного блока G создается первый промежуточный блок A1. Он не содержит сам никакой транзакции, однако создается подобно блоку транзакции, широковещательно отсылается в сеть блокчейна, подтверждается посредством применяемого в блокчейне механизма консенсуса и связывается в цепочку в блокчейн. При этом он, как обычно, ссылается прямо к предшествующему блоку транзакции, а также дополнительно к генезисному блоку G. According to the first embodiment of the invention, the blockchain is generated in such a way that, along with regular blocks of transactions, intermediate blocks are generated at regular intervals. In this case, the blockchain is based on the genesis block G. Transaction blocks are created on the basis of the genesis block G and are linked in a chain in the blockchain. In FIG. 1, as an example, such a transaction block T is designated. For simplicity, only one transaction block is provided with a reference position. After a predetermined and flexibly selectable time interval from the genesis block G, the first intermediate block A1 is created. It does not contain any transaction itself, but is created like a transaction block, broadcast to the blockchain network, confirmed by the consensus mechanism used in the blockchain, and chained to the blockchain. At the same time, as usual, it refers directly to the previous block of the transaction, as well as additionally to the genesis block G.

Если первый промежуточный блок A1 успешно подтверждается узлами, участвующими в распределенной системе базы данных, которая применяет блокчейн, особенно посредством так называемого майнинга, то первый промежуточный блок A1 продолжает блокчейн как регулярный блок. If the first intermediate block A1 is successfully validated by the nodes participating in the distributed database system that applies the blockchain, especially through the so-called mining, then the first intermediate block A1 continues the blockchain as a regular block.

С определенным временным интервалом от первого промежуточного блока A1 генерируются последующие промежуточные блоки. В этой последовательности генерируется также (n-1)-ый промежуточный блок An-1. Вновь, с временным интервалом от него генерируется n-ый промежуточный блок AN. Сгенерированный таким образом блокчейн 10 распределяется согласно первому примеру выполнения изобретения внутри сети блокчейна, например, внутри частной сети блокчейна. Например, сеть блокчейна предусмотрена внутри собрания предприятий, которые совместно работают над производством продукта на различных стадиях производства. При этом полный блокчейн 10 сохранен, например, на соответствующем узле фирм-участников. With a certain time interval from the first intermediate block A1, subsequent intermediate blocks are generated. In this sequence, the (n-1)-th intermediate block A n-1 is also generated. Again, with a time interval from it, the n-th intermediate block A N is generated. The blockchain 10 thus generated is distributed according to the first embodiment of the invention within a blockchain network, for example, within a private blockchain network. For example, a blockchain network is envisioned within a collection of businesses that work together to produce a product at various stages of production. In this case, the complete blockchain 10 is stored, for example, on the corresponding node of the participating firms.

Также составной частью сети блокчейна являются узлы отдельных фирм, которые находятся внутри автоматизированной сети. Она соединена с сетью блокчейна NW. Например, один из узлов сети блокчейна предусмотрен на Iot-устройстве. На этом IoT-устройстве предоставленный в распоряжение объем памяти ограничен. Например, IoT-устройство воспринимает задачи управления внутри установки и кроме того соединено с офисной или IT-сетью. IoT-устройство может задействоваться, в частности, через Интернет. IoT-устройство обращается к блокчейну, чтобы, например, иметь защищенный от манипуляций доступ к транзакциям для актуального проекта автоматизации или актуальной партии. Эти данные транзакции могут, например, состоять из блоков параметров или параметров конфигурации. Also, an integral part of the blockchain network are the nodes of individual firms that are located inside the automated network. It is connected to the NW blockchain network. For example, one of the blockchain network nodes is provided on an Iot device. The amount of memory available on this IoT device is limited. For example, an IoT device takes over control tasks within a plant and is also connected to an office or IT network. The IoT device can be activated, in particular, via the Internet. An IoT device accesses the blockchain in order to, for example, have tamper-proof access to transactions for the current automation project or the current batch. This transaction data may, for example, consist of parameter blocks or configuration parameters.

Также данные транзакции могут включать данные заказа для некоторого заказа-контракта. Например, для IoT-устройства представляет интерес область блокчейна, которая содержит данные транзакции, которые были созданы после (n-1)-го промежуточного блока An-1.Also, transaction data may include order data for some order-contract. For example, for an IoT device, an area of the blockchain is of interest that contains transaction data that was created after the (n-1)th intermediate block A n-1 .

Предпочтительным образом, IoT-устройство может сохранить укороченный блокчейн 11. Для этого, блоки транзакций, которые по времени были созданы перед (n-1)-ым промежуточным блоком, удаляются из блокчейна. При этом промежуточные блоки остаются содержащимися в блокчейне. Таким образом, создается цепочка из генезисного блока G, первого промежуточного блок A1, при необходимости, последующих промежуточных блоков, (n-1)-го промежуточного блока An-1 и соединенных с ним блоков транзакций. Укороченный таким образом блокчейн 11 и содержащиеся в нем актуальные блоки транзакций могут валидироваться исходя от генезисного блока G, при этом может прослеживаться формирование контрольной суммы по отдельным блокам. На основе привлечения контрольных сумм соответствующего предшествующего промежуточного блока в промежуточном блоке, цепочка блоков, как они содержатся в укороченном блокчейне 11, может быть валидирована. Preferably, the IoT device can store the shortened blockchain 11. To do this, the transaction blocks that were created in time before the (n-1)th intermediate block are removed from the blockchain. At the same time, intermediate blocks remain contained in the blockchain. Thus, a chain is created from the genesis block G, the first intermediate block A 1 , if necessary, subsequent intermediate blocks, the (n-1)-th intermediate block A n-1 and the transaction blocks connected to it. Blockchain 11 shortened in this way and the actual transaction blocks contained therein can be validated on the basis of the genesis block G, while the formation of a checksum over individual blocks can be traced. Based on the checksums of the respective preceding intermediate block in the intermediate block, the chain of blocks as contained in the shortened blockchain 11 can be validated.

Требуемый объем памяти для укороченного блокчейна 11 сокращается на величину всех удаленных блоков транзакций. Как генерация (n-1)-го промежуточного блока An-1, так и его выбор в качестве промежуточного блока для удаления предшествующих блоков транзакций, может осуществляться согласованно с проектом автоматизации. Если генерация промежуточных блоков зависит от выбираемого временного интервала от предшествующих промежуточных блоков, то при укорочении блокчейна может соответственно выбираться промежуточный блок, который был сгенерирован перед интересующим участком блокчейна. The memory requirement for the truncated blockchain 11 is reduced by the amount of all deleted transaction blocks. Both the generation of the (n-1)-th intermediate block A n-1 and its selection as an intermediate block for deleting previous transaction blocks can be carried out in coordination with the automation project. If the generation of intermediate blocks depends on the selected time interval from previous intermediate blocks, then when shortening the blockchain, the intermediate block that was generated before the block of interest can be selected accordingly.

На фиг. 2 представлен второй пример выполнения изобретения, в котором блокчейн 20 создается подобно блокчейну 10, описанному со ссылкой на фиг. 1. В отличие от первого примера выполнения, для укорочения блокчейна 20 посредством удаления блоков транзакций перед промежуточным блоком An, исключается участок блокчейна от удаления промежуточных блоков. Блоки транзакций, которые лежат между (b-1)-ым промежуточным блоком Ab-1 и b-ым промежуточным блоком Ab, согласно второму примеру выполнения изобретения, не удаляются. Таким образом, создается укороченный блокчейн 21, который удаляет старые блоки транзакций, которые были сгенерированы перед промежуточным блоком An, до таковых между (b-1)-ым промежуточным блоком Ab-1 и b-ым промежуточным блоком Ab. In FIG. 2 shows a second exemplary embodiment of the invention, in which the blockchain 20 is created similar to the blockchain 10 described with reference to FIG. 1. In contrast to the first embodiment, in order to shorten the blockchain 20 by deleting transaction blocks before the intermediate block A n , a section of the blockchain is excluded from deleting intermediate blocks. The transaction blocks that lie between the (b-1)th intermediate block A b-1 and the b-th intermediate block A b according to the second exemplary embodiment of the invention are not deleted. Thus, a short chain 21 is created that removes the old transaction blocks that were generated before the intermediate block A n to those between the (b-1)th intermediate block A b-1 and the b-th intermediate block A b .

Таким образом, блокчейн 20 эффективно сокращается до укороченного блокчейна 21, и при этом экономится объем памяти, который высвобождается за счет удаленных блоков транзакций. Однако целенаправленно исключается некоторый временной диапазон, так что блоки транзакций из этого временного диапазона являются доступными в укороченном блокчейне 21. Например, таким образом в укороченном блокчейне 21 сохраняются так называемые “золотые серии”, которые известны из технологии производства и представляют планку для текущих производственных партий, в качестве вызываемых данных транзакции в блокчейне, чтобы иметь возможность выполнять соответствующее сравнение данных серий и в укороченном блокчейне. Дополнительно сохраняются, например, новейшие данные транзакции в качестве истории, которые были сгенерированы после промежуточного блока An.In this way, the blockchain 20 is effectively reduced to a shortened blockchain 21, while saving the amount of memory that is freed up by the deleted transaction blocks. However, a certain time range is deliberately excluded, so that transaction blocks from this time range are available in the shortened blockchain 21. For example, in this way, the so-called “golden series” are stored in the shortened blockchain 21, which are known from the production technology and represent the bar for current production batches. , as callable transaction data on the blockchain, in order to be able to perform the corresponding series data comparison on the shortened blockchain. Additionally, for example, the latest transaction data is stored as history, which was generated after the intermediate block A n .

Согласно третьему примеру выполнения, блокчейн 30 создается таким образом, что, например, n-ый промежуточный блок An, наряду с прямо предшествующим ему блоком транзакции и сгенерированным последним (n-1)-ым промежуточным блоком An-1, дополнительно ссылается, например, к первому промежуточному блоку A1. В одном варианте, n-ый промежуточный блок An ссылается еще к другим промежуточным блокам (не показано). При укорочении блокчейна 30 до укороченного блокчейна 31, между выбранным временным диапазоном, например между первым промежуточным блоком A1 и n-ым промежуточным блоком An, наряду с блоками транзакций из этого временного интервала, также могут удаляться сгенерированные промежуточные блоки в этом временном интервале, в частности (n-1)-ый промежуточный блок An-1. According to the third embodiment, the blockchain 30 is created such that, for example, the nth intermediate block A n , along with the immediately preceding transaction block and the generated last (n-1)th intermediate block A n-1 , further references, for example, to the first intermediate block A 1 . In one embodiment, the nth intermediate block A n refers to more intermediate blocks (not shown). When shortening blockchain 30 to shortened blockchain 31, between a selected time range, for example, between the first intermediate block A 1 and the nth intermediate block A n , along with transaction blocks from this time interval, generated intermediate blocks in this time interval can also be deleted, in particular the (n-1)th intermediate block A n-1 .

Полная возможность проверки цепочки блокчейна в укороченном блокчейне 31 несмотря на это гарантируется за счет ссылки n-го промежуточного блока An на первый промежуточный блок A1. Предпочтительно предусмотрено, что не все промежуточные блоки ссылаются на несколько предшествующих промежуточных блоков, чтобы избежать инфляции ссылок и связанной с этим сложности. Однако можно с увеличенными временными интервалами предусматривать такой промежуточный блок, который, в частности, содержит дополнительный промежуточный блок в качестве контрольной суммы. Full verifiability of the blockchain chain in the shortened blockchain 31 is nonetheless guaranteed by linking the nth intermediate block A n to the first intermediate block A 1 . Preferably, it is provided that not all intermediate blocks refer to multiple preceding intermediate blocks in order to avoid reference inflation and the associated complexity. However, it is possible to provide such an intermediate block at extended time intervals, which in particular contains an additional intermediate block as a checksum.

На фиг. 4 показана еще одна возможная альтернатива, чтобы создать блокчейн 40 с промежуточными блоками. При этом многие или особенно все из сгенерированных промежуточных блоков также ссылаются на генезисный блок G. Укороченный блокчейн 41 может тогда генерироваться так, что данные транзакции перед (n-1)-ым промежуточным блоком An-1 удаляются. Тем самым блокчейн автоматически сокращается до минимально возможной длины. Этот вариант осуществления может представлять интерес для случаев применения, в которых данные транзакции на начальной фазе блокчейна нерелевантны, например, потому что они представляют собой тестовые данные или блоки данных конфигурации, на которые в последующем процессе не нужно ссылаться, например, потому что они ведут к плохим или неоптимальным условиям для установки. In FIG. 4 shows another possible alternative to create a blockchain 40 with intermediate blocks. However, many or especially all of the generated intermediate blocks also refer to the genesis block G. The shortened blockchain 41 can then be generated such that the transaction data before the (n-1)th intermediate block A n-1 is deleted. Thus, the blockchain is automatically reduced to the minimum possible length. This embodiment may be of interest for use cases in which the transaction data in the initial phase of the blockchain is not relevant, for example, because it is test data or configuration data blocks that do not need to be referenced in a subsequent process, for example, because they lead to poor or suboptimal conditions for installation.

Описанные в примерах выполнения 1-4 возможности осуществления ссылки (привязки) промежуточных блоков и соответствующие возможности для укорочения блокчейна могут также использоваться в комбинации. Например, могут применяться различные механизмы для генерации промежуточных блоков для различных временных интервалов блокчейна. Также могут варьироваться механизмы запуска для создания промежуточного блока внутри блокчейна. Например, в начале блокчейна, который заново создается при пуске в эксплуатацию автоматизированной установке, задается постоянный временной интервал, в то время как в дальнейшем процессе промежуточные блоки запускаются на контекстной основе. The options for linking intermediate blocks described in Examples 1-4 and the corresponding options for shortening the blockchain can also be used in combination. For example, different mechanisms can be used to generate intermediate blocks for different time intervals of the blockchain. The trigger mechanisms for creating an intermediate block within the blockchain may also vary. For example, at the beginning of the blockchain, which is re-created when an automated installation is put into operation, a constant time interval is set, while in the further process, intermediate blocks are triggered on a context basis.

С помощью фиг. 5 иллюстрируется, каким образом укороченные блокчейны 11, 21, 31 используются в сценарии приложения автоматизированной установки. Фиг. 5 показывает сеть блокчейна NW, состоящую из узлов блокчейна 151, 152, 101, 201, 301. По причинам наглядности представления, показаны только пять узлов, участвующих в сети блокчейна NW. В частности, в облаке 150, которое изображено в верхней половине представления на фиг. 5, участвует множество узлов. Узлы 151, 152 в облаке 150 соединены через сеть блокчейна NW с узлами в автоматизированной установке 101, 201, 301.With the help of FIG. 5 illustrates how the short chains 11, 21, 31 are used in an automated installation application scenario. Fig. 5 shows the NW blockchain network consisting of blockchain nodes 151, 152, 101, 201, 301. For reasons of clarity, only five nodes participating in the NW blockchain network are shown. In particular, cloud 150, which is depicted in the upper half of the view in FIG. 5, a plurality of nodes are involved. Nodes 151, 152 in cloud 150 are connected via the NW blockchain network to nodes in automated installation 101, 201, 301.

Узлы автоматизированных установок изображены в нижней половине представления на фиг. 5. При этом речь может идти, например, о промышленной установке, в которой узлы 101, 201, 301 расположены пространственно вблизи друг от друга и на различных устройствах 100, 200, 300 автоматизированной установки. Также узлы могут быть предусмотрены в нескольких пространственно отдельных установках, которые, например, относятся к одному предприятию. Кроме того, изображенные на фиг. 5 узлы могут быть предусмотрены в сетях различных предприятий. The nodes of automated installations are depicted in the lower half of the representation in Fig. 5. This can be, for example, an industrial installation, in which the nodes 101, 201, 301 are located spatially close to each other and on different devices 100, 200, 300 of an automated installation. It is also possible for the nodes to be provided in several spatially separate installations, which, for example, belong to one enterprise. In addition, shown in Fig. 5 nodes can be provided in the networks of various enterprises.

С помощью фиг. 5 можно видеть, что для узлов в облаке 150, как правило, в распоряжении имеется достаточный объем памяти. В узлах на устройствах 100, 200, 300 в автоматизированных установках, напротив, имеющаяся память является ограничивающим фактором. With the help of FIG. 5, it can be seen that nodes in cloud 150 typically have sufficient memory available. In contrast, in nodes on devices 100, 200, 300 in automated installations, the available memory is the limiting factor.

Например, в первой автоматизированной установке предусмотрено Edge-устройство 100, которое служит в качестве шлюза между сетью автоматизации, которая осуществляет регулирование управления автоматизированными устройствами, и коммуникационной сетью в облаке 150. При этом Edge-устройство 100 осуществляет сбор данных автоматизированной системы, которые могут использоваться службой в облаке 150. Например, таким способом осуществляется сбор данных мониторинга, которые должны предоставляться в распоряжение для анализа больших данных в облаке 150. Например, Edge-устройство 100 обрабатывает собранные данные, прежде чем они будут отправлены в облако. При этом, например, зарегистрированные данные обезличиваются, или осуществляется сбор данных только из определенных временных интервалов, или предоставляются в распоряжение данные, отсортированные по временным интервалам. For example, in a first automated installation, an Edge device 100 is provided that serves as a gateway between an automation network that regulates the management of automated devices and a communication network in the cloud 150. In this case, Edge device 100 collects automated system data that can be used service in the cloud 150. For example, monitoring data to be made available for big data analysis in the cloud 150 is collected in this way. For example, the edge device 100 processes the collected data before it is sent to the cloud. In this case, for example, the registered data is anonymized, or data is collected only from certain time intervals, or data sorted by time intervals is made available.

В другой автоматизированной установке, например, предусмотрено Edge-устройство 200, которое дополнительно отвечает за зашифрованный обмен данными с облачной службой. In another automated installation, for example, an Edge device 200 is provided, which is additionally responsible for encrypted communication with the cloud service.

В другой автоматизированной установке, например, предусмотрено IoT-устройство 300, которое, например, управляет процессом упаковки и к тому же имеет коммуникационное соединение с оператором логистики посредством Интернет-соединения. In another automated installation, for example, an IoT device 300 is provided, which, for example, controls the packaging process and also has a communication connection with a logistics operator via an Internet connection.

При этом общим для Edge-устройства 100, Edge-устройства 200 и IoT-устройства 300 является то, что имеющийся объем памяти является ограниченным. Таким образом, эти устройства заинтересованы в том, чтобы экономить объем памяти. На этих устройствах дополнительно реализуется приложение блокчейна согласно пятому примеру выполнения изобретения. При этом данные, которые относятся к действиям обслуживания или показателям качества, защищаются посредством блокчейна. Эти данные должны быть представлены в блокчейне доказуемо не подверженными манипуляциям. However, the edge device 100, the edge device 200, and the IoT device 300 have in common that the amount of memory available is limited. Thus, these devices are interested in saving memory space. These devices further implement the blockchain application according to the fifth exemplary embodiment of the invention. At the same time, data that relates to service actions or quality indicators is protected by the blockchain. This data must be provably unmanipulable on the blockchain.

Кроме того, описанные устройства, Edge-устройство 100, Edge-устройство 200 и IoT-устройство 300, применяются в производстве и обработке продукта в автоматизированной среде. Т.е., как правило, скорее недавняя история в зарегистрированных данных является локально релевантной. Данные из этого краткосрочного архива должны, таким образом, предпочтительно предоставляться на соответствующее устройство. Кроме того, блокчейн на соответствующем устройстве должен требовать по возможности меньше объема памяти. Эти требования удовлетворяются тем, что соответствующие узлы 101, 201, 301 на соответствующем устройстве 100, 200, 300 сохраняют соответственно укороченный блокчейн 11, 21, 31. В качестве укороченного блокчейна 11, 21, 31 могут использоваться вышеописанные блокчейны. In addition, the described devices, Edge device 100, Edge device 200, and IoT device 300, are used in the production and processing of a product in an automated environment. That is, as a general rule, the most recent history in the logged data is locally relevant. The data from this short-term archive should therefore preferably be provided to the appropriate device. In addition, the blockchain on the respective device should require as little memory as possible. These requirements are met in that the respective nodes 101, 201, 301 on the respective device 100, 200, 300 store the short chain 11, 21, 31, respectively. As the short chain 11, 21, 31, the above-described chains can be used.

Имеются различные возможности, каким образом соответствующий узел 101, 201, 301 реализует укороченный блокчейн. Например, пока имеется достаточный объем памяти, блокчейн может поддерживаться регулярным, без его укорачивания. Как только определенная величина объема памяти становится занятой блокчейном, запускается механизм для укорочения блокчейна. При этом способе соответствующий узел на соответствующем устройстве имеет максимально возможное доступное количество блоков транзакций и тем самым также предпринятых транзакций, как, например, зарегистрированных данных по качеству, до тех пор, пока имеющийся объем памяти не станет недостаточным. Начиная с этого момента времени, например, регулярным образом часть блокчейна может удаляться, или, например, однократно большая часть блокчейна удаляется, пока пороговое значение занятости объема памяти не будет снова превышено. There are various possibilities for how the respective node 101, 201, 301 implements the shortened blockchain. For example, as long as there is sufficient memory, the blockchain can be kept regular without being shortened. As soon as a certain amount of memory becomes occupied by the blockchain, a mechanism is launched to shorten the blockchain. With this method, the respective node on the respective device has the maximum possible number of transaction blocks available and thus also the transactions undertaken, such as quality data recorded, until the available memory becomes insufficient. Starting from this point in time, for example, a portion of the blockchain may be deleted on a regular basis, or, for example, a large portion of the blockchain may be deleted once, until the memory occupancy threshold is again exceeded.

В другом варианте, узел 101 из автоматизированной установки опрашивает состояние блокчейна регулярно из сети, например, так, что он осуществляет связь с узлом 152 в облаке и при этом удаляет нерелевантные блоки транзакций. Таким способом по существу заранее укороченный блокчейн сохраняется на Edge-устройстве 100. In another embodiment, the node 101 from the automated installation polls the state of the blockchain regularly from the network, such that it communicates with the node 152 in the cloud and in doing so removes irrelevant transaction blocks. In this way, the essentially pre-truncated blockchain is stored on the Edge device 100.

Предпочтительным образом, предотвращается то, что блокчейн на узле, который осуществляет укорочение блокчейна, постоянно возрастает и таким образом приводит к переполнению памяти. Preferably, it is prevented that the blockchain at the node that performs the blockchain shortening constantly grows and thus leads to memory overflow.

В частности, в случае промежуточных блоков, которые сами не содержат транзакций, а содержат только ссылку на последний блок, а также предшествующему промежуточному блоку, след (занимаемый объем) промежуточного блока является постоянно малым. Прирост связанных в цепочку промежуточных блоков не представляет риска также для устройств с ограниченными ресурсами. In particular, in the case of intermediate blocks that do not themselves contain transactions, but contain only a reference to the last block as well as to the previous intermediate block, the footprint (space occupied) of the intermediate block is constantly small. The growth of intermediate blocks connected in a chain does not represent a risk for devices with limited resources either.

Удаление блоков предпочтительно осуществляется локально в узле блокчейна. В частности, тем самым любое количество находящихся в сети блокчейна NW устройств с их специфическими ограничениями в отношении имеющихся ресурсов могут гибко удалять различные временные диапазоны из локально сохраненного блокчейна. В случае укороченного блокчейна, также можно говорить об “урезанном” (очищенном) блокчейне, а в случае узла с укороченным блокчейном - об очищенном узле. Deletion of blocks is preferably done locally at the blockchain node. In particular, thereby any number of devices in the NW blockchain network, with their specific resource limitations, can flexibly remove different time ranges from the locally stored blockchain. In the case of a shortened blockchain, one can also speak of a “stripped” (cleared) blockchain, and in the case of a node with a shortened blockchain, a cleared node.

Предложенное изобретение обеспечивает возможность целенаправленного удаления и одновременно осознанного сохранения релевантных полезных данных, которые сохраняются в блокчейне в выбранном временном интервале, который может определяться посредством промежуточных блоков. The proposed invention provides the possibility of targeted deletion and at the same time conscious storage of relevant useful data that is stored in the blockchain in a selected time interval, which can be determined by means of intermediate blocks.

Укороченный блокчейн или очищенный узел имеет возможность вновь затребовать удаленные блоки от полного блокчейна или полного узла и связать в цепочку в соответствующих областях между выбранными для удаления промежуточными блоками. Это особенно предпочтительно, если данные из удаленной область блокчейна становятся релевантными для более позднего анализа, например, потому что заказчик продукта, который происходит из некоторой партии, хотел бы получить информацию для поставляемой партии. Кроме того, данные из удаленного диапазона могут потребоваться в качестве опорных данных для конфигурирования управляющей установки. The shortened blockchain or cleared node has the ability to reclaim the deleted blocks from the full blockchain or full node and chain them in the appropriate areas between the intermediate blocks chosen for deletion. This is particularly advantageous if data from a remote area of the blockchain becomes relevant for later analysis, for example, because a customer of a product that comes from a certain batch would like information for a supplied batch. In addition, data from the remote range may be required as a reference for configuring the control unit.

Кроме того, и в укороченных блокчейнах гарантируется, что актуальные транзакция являются локально доступными. Помимо того, что промежуточные блоки для удаления являются гибко выбираемыми, и поэтому более актуальные промежуточные блоки не должны выбираться, временной диапазон, который был сгенерирован после сгенерированного последним промежуточного блока, исключается из стирания данных. In addition, even in short chains, it is guaranteed that the actual transactions are locally available. In addition to the fact that intermediate blocks to delete are flexibly selectable, and therefore more recent intermediate blocks should not be selected, the time range that was generated after the last generated intermediate block is excluded from data erasure.

Актуальные транзакции, таким образом, с доступностью их блоков в сети блокчейна немедленно доступны повсюду, т.е. запрос самых актуальных данных продукции доступен через облако точно так же, как и запрос исторических данных. Actual transactions, therefore, with the availability of their blocks in the blockchain network, are immediately available everywhere, i.e. querying the most up-to-date product data is available through the cloud in the same way as querying historical data.

Исторические информации внутри сети блокчейна должны, таким образом, иметься только в узлах блокчейна, в которых они также релевантны, например, на серверах долгосрочного архива или в облаке. К тому же запуск, например, IoT-устройства, которое приводит в действие сокращенный или очищенный узел блокчейна, осуществляется с заметно более высоким быстродействием, потому что не требуется загружать удаленные области блокчейна.Historical information within a blockchain network should therefore only be available in blockchain nodes where it is also relevant, such as long-term archive servers or in the cloud. In addition, launching, for example, an IoT device that powers a reduced or cleaned blockchain node is noticeably faster because remote areas of the blockchain do not need to be downloaded.

Claims (27)

1. Реализуемый компьютером способ для создания блокчейна (10, 11, 20, 21, 30, 31, 40, 41) с блоками, включающими в себя настраиваемое количество блоков транзакций (T) и несколько промежуточных блоков (A1, A(b-1), Ab, A(n-1), An),1. A computer-implemented method for creating a blockchain (10, 11, 20, 21, 30, 31, 40, 41) with blocks including a configurable number of transaction blocks (T) and several intermediate blocks (A1, A(b-1 ), Ab, A(n-1), An), - причем блокчейн (10, 11, 20, 21, 30, 31, 40, 41) является составной частью распределенной системы базы данных (NW);- moreover, the blockchain (10, 11, 20, 21, 30, 31, 40, 41) is an integral part of a distributed database system (NW); - причем генерируют блоки внутри блокчейна (10, 11, 20, 21, 30, 31, 40, 41), и соответствующий блок ссылается на соответствующий предшествующий блок,- moreover, blocks are generated within the blockchain (10, 11, 20, 21, 30, 31, 40, 41), and the corresponding block refers to the corresponding previous block, - причем предусмотрен первый промежуточный блок (A1, G);- wherein the first intermediate block (A1, G) is provided; - причем генерируют по меньшей мере один второй промежуточный блок (A2),- moreover, at least one second intermediate block (A2) is generated, - причем второй промежуточный блок (A2) ссылается на предшествующий ему блок, а также на по меньшей мере упомянутый первый промежуточный блок (A1, G),- moreover, the second intermediate block (A2) refers to the block preceding it, as well as to at least the said first intermediate block (A1, G), - причем первый промежуточный блок (A1, G) является промежуточным блоком-предшественником,- wherein the first intermediate block (A1, G) is an intermediate precursor block, - причем укорачивают блокчейн (10, 11, 20, 21, 30, 31, 40, 41) посредством сокращения по меньшей мере одного или нескольких блоков транзакций между вторым промежуточным блоком (A2) и первым промежуточным блоком (G, A1), в частности, посредством удаления всех блоков транзакций, сгенерированных между вторым промежуточным блоком (A2) и первым промежуточным блоком (G, A1).- wherein the blockchain is shortened (10, 11, 20, 21, 30, 31, 40, 41) by shortening at least one or more transaction blocks between the second intermediate block (A2) and the first intermediate block (G, A1), in particular , by deleting all transaction blocks generated between the second intermediate block (A2) and the first intermediate block (G, A1). 2. Способ по п. 1, причем первый промежуточный блок является генезисным блоком (G).2. Method according to claim 1, wherein the first intermediate block is a genesis block (G). 3. Способ по п. 1, причем предусмотрен генезисный блок (G), и кроме того генерируют первый промежуточный блок (A1), причем первый промежуточный блок (A1) ссылается на предшествующий ему блок, а также на по меньшей мере упомянутый генезисный блок (G).3. The method according to claim 1, wherein a genesis block (G) is provided, and in addition, a first intermediate block (A1) is generated, the first intermediate block (A1) referring to the block preceding it, as well as to at least said genesis block ( G). 4. Способ по любому из предыдущих пунктов, причем между первым промежуточным блоком (A1) и вторым промежуточным блоком (A2) генерируют по меньшей мере один блок транзакции.4. Method according to any one of the preceding claims, wherein at least one transaction block is generated between the first intermediate block (A1) and the second intermediate block (A2). 5. Способ по любому из предыдущих пунктов, причем укороченный блокчейн сохраняют посредством устройства (100, 200, 300), участвующего в распределенной системе базы данных (NW), в частности, устройства в облаке или Edge-устройства или IoT-устройства.5. The method according to any one of the preceding claims, wherein the shortened blockchain is stored by a device (100, 200, 300) participating in a distributed database system (NW), in particular a device in the cloud or an edge device or an IoT device. 6. Способ по любому из предыдущих пунктов, причем ссылка ссылаемого блока включает в себя то, что контрольную сумму ссылаемого блока или части ссылаемого блока загружают или сохраняют в ссылающем блоке.6. A method according to any one of the preceding claims, wherein the reference of the referenced block includes loading or storing a checksum of the referenced block or a portion of the referenced block in the referenced block. 7. Способ по любому из предыдущих пунктов, причем первый промежуточный блок (G, A1) и второй промежуточный блок (A2) соответственно не содержат никакой транзакции.7. A method according to any one of the preceding claims, wherein the first intermediate block (G, A1) and the second intermediate block (A2), respectively, do not contain any transaction. 8. Способ по любому из предыдущих пунктов, причем генерируют последующие промежуточные блоки (A(b-1), Ab, A(n-1), An), причем соответствующий последующий промежуточный блок (A(b-1), Ab, A(n-1), An) ссылается на соответственно предшествующий блок, а также на соответственно предшествующий промежуточный блок.8. The method according to any of the preceding paragraphs, and generate subsequent intermediate blocks (A(b-1), Ab, A(n-1), An), and the corresponding subsequent intermediate block (A(b-1), Ab, A (n-1), An) refers to a correspondingly preceding block, as well as to a correspondingly preceding intermediate block. 9. Способ по любому из предыдущих пунктов, причем генерирование второго (A2) или соответствующего последующего промежуточного блока (A(b-1), Ab, A(n-1), An) основано на правилах, в частности, к заданному моменту времени или с заданным временным интервалом до предшествующего блока или с заданным временным интервалом до предшествующего промежуточного блока или после заданного количества сгенерированных блоков транзакций или осуществляется посредством основанного на контексте запускающего условия или осуществляется вручную.9. The method according to any of the preceding claims, wherein the generation of the second (A2) or the corresponding subsequent intermediate block (A(b-1), Ab, A(n-1), An) is based on rules, in particular, by a given time or with a predetermined time interval before the previous block or with a predetermined time interval before the previous intermediate block or after a predetermined number of generated transaction blocks, or is carried out by means of a context-based triggering condition, or is carried out manually. 10. Способ по п. 8 или 9, причем по меньшей мере один из последующих промежуточных блоков (A(b-1), Ab, A(n-1), An) ссылается по меньшей мере на два из предшествующих промежуточных блоков.10. The method according to claim 8 or 9, wherein at least one of the subsequent intermediate blocks (A(b-1), Ab, A(n-1), An) refers to at least two of the preceding intermediate blocks. 11. Способ по любому из предыдущих пунктов, причем соответствующий промежуточный блок ссылается на соответственно предшествующий промежуточный блок, и причем выбранные промежуточные блоки дополнительно ссылаются на другие предшествующие промежуточные блоки.11. A method according to any one of the preceding claims, wherein the corresponding intermediate block refers to a correspondingly preceding intermediate block, and wherein the selected intermediate blocks additionally refer to other preceding intermediate blocks. 12. Способ по п. 11, причем в качестве выбранного промежуточного блока генерируют промежуточный блок к заданному моменту времени или с заданным временным интервалом до предшествующего или ранее выбранного промежуточного блока или после заданного количества сгенерированных блоков транзакций или промежуточных блоков или посредством основанного на контексте запускающего условия или генерируют вручную.12. The method according to claim 11, wherein as the selected intermediate block, an intermediate block is generated by a given time or with a given time interval before the previous or previously selected intermediate block or after a given number of generated transaction blocks or intermediate blocks, or by means of a context-based triggering condition or generated manually. 13. Носитель данных устройства (100, 200, 300), участвующего в распределенной системе базы данных (NW), в частности, устройства в облаке или Edge-устройства или IoT-устройства, имеющего блокчейн (10, 11, 20, 21, 30, 31, 40, 41) с блоками, включающими в себя настраиваемое количество блоков транзакций и несколько промежуточных блоков,13. The storage medium of a device (100, 200, 300) participating in a distributed database system (NW), in particular a device in the cloud or an Edge device or an IoT device having a blockchain (10, 11, 20, 21, 30 , 31, 40, 41) with blocks that include a configurable number of transaction blocks and several intermediate blocks, - причем блокчейн (10, 11, 20, 21, 30, 31, 40, 41) является составной частью распределенной системы базы данных (NW);- moreover, the blockchain (10, 11, 20, 21, 30, 31, 40, 41) is an integral part of a distributed database system (NW); - причем соответствующий блок ссылается на соответствующий предшествующий блок,- wherein the corresponding block refers to the corresponding preceding block, - имеет первый промежуточный блок (A1, G) и по меньшей мере один второй промежуточный блок (A2),- has a first intermediate block (A1, G) and at least one second intermediate block (A2), - причем второй промежуточный блок (A2) ссылается на предшествующий ему блок, а также на по меньшей мере упомянутый первый промежуточный блок (A1, G),- moreover, the second intermediate block (A2) refers to the block preceding it, as well as to at least the said first intermediate block (A1, G), - причем первый промежуточный блок (A1, G) является промежуточным блоком-предшественником,- wherein the first intermediate block (A1, G) is an intermediate precursor block, - причем носитель данных сохраняет блокчейн (10, 11, 20, 21, 30, 31, 40, 41), который укорочен посредством сокращения по меньшей мере одного или нескольких блоков транзакций между вторым промежуточным блоком (A2) и первым промежуточным блоком (G, A1), в частности, посредством удаления всех блоков транзакций, сгенерированных между вторым промежуточным блоком (A2) и первым промежуточным блоком (G, A1).wherein the data carrier stores a blockchain (10, 11, 20, 21, 30, 31, 40, 41) that is shortened by shortening at least one or more transaction blocks between the second intermediate block (A2) and the first intermediate block (G, A1), in particular by deleting all transaction blocks generated between the second intermediate block (A2) and the first intermediate block (G, A1). 14. Edge-устройство, имеющее носитель данных по п. 13.14. An edge device having a data carrier according to claim 13.
RU2021116660A 2018-12-14 2019-11-13 Creating a blockchain with blocks including a configurable number of transaction blocks and several intermediate blocks RU2792734C2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP18212701.9 2018-12-14

Publications (2)

Publication Number Publication Date
RU2021116660A RU2021116660A (en) 2023-01-16
RU2792734C2 true RU2792734C2 (en) 2023-03-23

Family

ID=

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160028552A1 (en) * 2014-07-25 2016-01-28 Blockchain Technologies Corporation System and method for creating a multi-branched blockchain with configurable protocol rules
CN106503992A (en) * 2016-10-18 2017-03-15 北京天德科技有限公司 A kind of block chain that Transaction Information and accounts information are stored respectively
US20170338957A1 (en) * 2016-05-23 2017-11-23 Accenture Global Solutions Limited Rewritable blockchain
CN107995120A (en) * 2016-11-22 2018-05-04 南京银链信息科技有限公司 Construct the method and multi-tiling catenary system of multi-tiling chain
CN108510268A (en) * 2018-02-09 2018-09-07 北京欧链科技有限公司 Annular block chain structure, data processing method and device
CN108519985A (en) * 2018-02-09 2018-09-11 北京欧链科技有限公司 Two-way block chain structure, data processing method and device
DE102017205163A1 (en) * 2017-03-27 2018-09-27 Bundesdruckerei Gmbh Hash values for the bidirectional chained blockchain

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160028552A1 (en) * 2014-07-25 2016-01-28 Blockchain Technologies Corporation System and method for creating a multi-branched blockchain with configurable protocol rules
US20170338957A1 (en) * 2016-05-23 2017-11-23 Accenture Global Solutions Limited Rewritable blockchain
CN106503992A (en) * 2016-10-18 2017-03-15 北京天德科技有限公司 A kind of block chain that Transaction Information and accounts information are stored respectively
CN107995120A (en) * 2016-11-22 2018-05-04 南京银链信息科技有限公司 Construct the method and multi-tiling catenary system of multi-tiling chain
DE102017205163A1 (en) * 2017-03-27 2018-09-27 Bundesdruckerei Gmbh Hash values for the bidirectional chained blockchain
CN108510268A (en) * 2018-02-09 2018-09-07 北京欧链科技有限公司 Annular block chain structure, data processing method and device
CN108519985A (en) * 2018-02-09 2018-09-11 北京欧链科技有限公司 Two-way block chain structure, data processing method and device

Similar Documents

Publication Publication Date Title
US10824729B2 (en) Compliance management in a local network
US10819560B2 (en) Alert management system and method of using alert context-based alert rules
US11588793B2 (en) System and methods for dynamic geospatially-referenced cyber-physical infrastructure inventory and asset management
CN110069572A (en) HIVE method for scheduling task, device, equipment and storage medium based on big data platform
Mennes et al. GRECO: A distributed genetic algorithm for reliable application placement in hybrid clouds
US11563764B1 (en) Risk scoring based on compliance verification test results in a local network
CN107404541A (en) A kind of method and system of peer-to-peer network transmission neighbor node selection
DE60124122T2 (en) COMMUNICATION NETWORK DESIGN
US20220012233A1 (en) Creation of a Blockchain with Blocks Comprising an Adjustable Number of Transaction Blocks and Multiple Intermediate Blocks
CN113807730A (en) Work order generation method, system, equipment and storage medium based on discrete management
US11449332B2 (en) Polling computing devices
CN107846322A (en) A kind of monitoring system of self-service device
US11231958B2 (en) Method and control system for controlling and/or monitoring devices
RU2792734C2 (en) Creating a blockchain with blocks including a configurable number of transaction blocks and several intermediate blocks
Zhong et al. Optimization algorithm simulation for dual-resource constrained job-shop scheduling
Yevdokymenko et al. Analysis of methods for assessing the reliability and security of infocommunication network
CN109165325A (en) Method, apparatus, equipment and computer readable storage medium for cutting diagram data
CN109413381A (en) A kind of video traceability system and video retroactive method
US20180316703A1 (en) Consolidated enterprise view of cybersecurity data from multiple sites
CN109508226B (en) Openstack-based virtual machine life cycle management method
WO2020112144A1 (en) Software patch difference devices
EP4181483B1 (en) Apparatus and method for tracking data in edge cloud environment
US20230208820A1 (en) System and methods for predictive cyber-physical resource management
US20240127144A1 (en) Task workflow modeling interface
US20210318861A1 (en) Software patch analytics devices and systems