EP4127976A1 - Computerimplementiertes verfahren zur speicherung von daten mittels einer verteilten transaktionsdatenbank, computerprogrammprodukt und netzwerk - Google Patents

Computerimplementiertes verfahren zur speicherung von daten mittels einer verteilten transaktionsdatenbank, computerprogrammprodukt und netzwerk

Info

Publication number
EP4127976A1
EP4127976A1 EP21731695.9A EP21731695A EP4127976A1 EP 4127976 A1 EP4127976 A1 EP 4127976A1 EP 21731695 A EP21731695 A EP 21731695A EP 4127976 A1 EP4127976 A1 EP 4127976A1
Authority
EP
European Patent Office
Prior art keywords
data
network
database
graph
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP21731695.9A
Other languages
English (en)
French (fr)
Inventor
Tobias Aigner
Markus Sauer
Saurabh Narayan Singh
Nejc Zupan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Publication of EP4127976A1 publication Critical patent/EP4127976A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Definitions

  • a transaction database can advantageously be implemented in which transaction data can be treated confidentially in a real subset of the computing units. Consequently, there is no need to choose a compromise between public accessibility of the transaction database and compliance with a confidentiality requirement, rather both goals can be achieved equally by means of this development of the method according to the invention.
  • intersection is empty, i.e. no computing unit is part of all subsets.
  • 60 can also be formed as a logical processing unit, which in turn is implemented via a distributed computer network, for example via a cloud network.
  • a private side chain SC branches off from the graph G.
  • the nodes N of the private side chain SC only contain data from the processing units 20, 50, 60, while the data stored there do not relate to the processing units 10. Consequently, data of the processing units 10 are not stored in the node N of the private side chain. Rather, the nodes N of the private side chain SC are stored only diglich by means of the processing units 20, 50, 60.

Landscapes

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

Abstract

Computerimplementiertes Verfahren zur Speicherung von Daten mittels einer verteilten Transaktionsdatenbank, Computerprogrammprodukt und Netzwerk Bei dem Computer-implementiertes Verfahren zur Speicherung von Daten in einem Netzwerk vernetzter Recheneinheiten (10, 20, 30, 40, 50, 60) mittels einer verteilten Transaktionsdatenbank (GDB) wird eine verteilte Transaktionsdatenbank (GDB) in Gestalt einer verteilten und mit Knoten gebildeten Graphendatenbank herangezogen und es werden die Daten in zumindest einen Knoten (N) der Graphendatenbank gespeichert, wobei der Knoten (N) mittels einer echten Teilmenge der Recheneinheiten (10, 20, 30, 40, 50, 60) des Netzwerks gespeichert ist. Das Computerprogramm-Produkt ist direkt in einen Speicher einer elektronischen Recheneinheit (10, 20, 30, 40, 50, 60) ladbar und weist Programm-Mittel auf, um die Schritte des Verfahrens auszuführen, wenn das Programm in einer Recheneinheiten ausgeführt wird Das Netzwerk vernetzter Recheneinheiten (10, 20, 30, 40, 50, 60) speichert eine verteilte Transaktionsdatenbank (GDB) in Gestalt einer verteilten Graphendatenbank, umfassend Knoten (N), in welchen Daten nach einem solchen Verfahren gespeichert werden.

Description

Beschreibung
Computerimplementiertes Verfahren zur Speicherung von Daten mittels einer verteilten Transaktionsdatenbank, Computerpro grammprodukt und Netzwerk
Die Erfindung betrifft ein computerimplementiertes Verfahren zur Speicherung von Daten in einem Netzwerk vernetzter Re cheneinheiten mittels einer verteilten Transaktionsdatenbank und ein Computerprogramm sowie ein Netzwerk vernetzter Re cheneinheiten, welches eine Transaktionsdatenbank speichert.
Es ist bekannt, Daten in verteilten Transaktionsdatenbanken zu speichern. Beispielsweise kommen solche Transaktionsdaten banken in IoT-Umgebungen zum Einsatz, insbesondere bei Ferti gungsstraßen oder Kraftwerken, in welchen Feldgeräte Daten mittels verteilter Transaktionsdatenbanken miteinander aus- tauschen. Solche Transaktionsdatenbanken sind regelmäßig mit Netzwerken vernetzter Recheneinheiten, etwa Feldgeräten, rea lisiert und in dem Netzwerk gespeichert. Zudem können bei spielsweise mittels verteilter Transaktionsdatenbanken Lie ferdaten von Lieferketten ausgehandelt und gespeichert wer den.
Bei verteilten Transaktionsdatenbanken werden in diesen ge speicherte Daten in jeder einzelnen Recheneinheit des Netz werks als Kopie vorgehalten. Daher sind verteilte Transakti onsdatenbanken nur schlecht skalierbar, da der Speicherauf wand mit zunehmender Größe der verteilten Transaktionsdaten bank sowie mit zunehmender Anzahl der Recheneinheiten des Netzwerks deutlich wächst.
Der deutlich wachsende Speicherbedarf wird durch eine als „Sharding" bekannte Maßnahme adressiert, welche die Daten der verteilten Transaktionsdatenbank in Teile aufteilt und die Teile mittels verschiedener Recheneinheiten des Netzwerkes speichert. Diese Aufteilung der Daten der Transaktionsdaten bank erfolgt typischerweise zentralisiert. Allerdings erhöht eine solche zentralisierte Aufteilung von Daten die Fehleran fälligkeit eines solchen Netzwerkes, sodass in der Regel eher dezentrale Ansätze bevorzugt werden.
Dezentrale verteilte Transaktionsdatenbanken halten aller dings sämtliche Daten der Transaktionsdatenbank als Kopie an jeder einzelnen Recheneinheit des Netzwerkes vor. Da gerade dezentral verteilte Transaktionsdatenbanken beispielsweise in Kombination mit kryptographischen Verfahren als besonders ma nipulationssicher und ausfallsicher gelten, besteht ein Span nungsverhältnis zwischen der Skalierbarkeit einer verteilten Transaktionsdatenbank einerseits und der Manipulations- und Ausfallsicherheit einer solchen Transaktionsdatenbank ande rerseits.
Ein weiteres Problem verteilter Transaktionsdatenbanken be steht darin, dass eine Vertraulichkeit von in der Transakti onsdatenbank gespeicherten Daten kaum gewährleistet werden kann. Bislang müssen solche vertraulichen Daten außerhalb der Transaktionsdatenbank gespeichert werden. Das widerspricht konzeptionell dem Grundgedanken einer verteilten Transakti onsdatenbank .
Weitere Nachteile bestehen im erhöhten Kommunikationsaufwand bei bekannten verteilten Transaktionsdatenbanken ab einer be stimmten Größe der Transaktionsdatenbank und/oder des Netz werks. Die Administration und Koordination bei der Speiche rung und beim Zugriff auf in der Transaktionsdatenbank ge speicherte Daten gerät dabei sehr leicht sehr hoch.
Es ist daher die Aufgabe der Erfindung, ein verbessertes Ver fahren zur Speicherung von Daten in einem Netzwerk vernetzter Recheneinheiten mittels einer verteilten Transaktionsdaten bank anzugeben. Insbesondere soll das Verfahren auch im Falle einer zunehmenden Größe der Transaktionsdatenbank und/oder im Falle einer Zunahme der Anzahl von Recheneinheiten leichter durchgeführt werden können als bisher bekannte Verfahren zur Speicherung von Daten mittels verteilter Transaktionsdaten- banken. Bevorzugt soll das Verfahren zudem eine vertrauliche Speicherung von Daten erlauben.
Ferner ist es eine Aufgabe der Erfindung, ein verbessertes Computerprogramm anzugeben, mittels welchem ein solches Ver fahren ausgeführt werden kann. Zudem ist es Aufgabe der Er findung, ein verbessertes Netzwerk vernetzter Recheneinheiten anzugeben, mittels welchem ein solches Verfahren ausgeführt werden kann.
Diese Aufgabe der Erfindung wird mit einem computer implementierten Verfahren zur Speicherung von Daten in einem Netzwerk vernetzter Recheneinheiten mittels einer verteilten Transaktionsdatenbank mit den in Anspruch 1 angegebenen Merk malen sowie mit einem Computerprogramm mit den in Anspruch 10 angegebenen Merkmalen und mit einem Netzwerk vernetzter Re cheneinheiten mit den in Anspruch 11 angegebenen Merkmalen gelöst. Bevorzugte Weiterbildungen der Erfindung sind in den zugehörigen Unteransprüchen, der nachfolgenden Beschreibung und der Zeichnung angegeben.
Das erfindungsgemäße Verfahren ist ein computer implementiertes Verfahren zur Speicherung von Daten in einem Netzwerk vernetzter Recheneinheiten mittels einer verteilten Transaktionsdatenbank. Bei dem erfindungsgemäßen Verfahren wird eine verteilte Transaktionsdatenbank in Gestalt einer verteilten und mit Knoten gebildeten Graphendatenbank heran gezogen und es werden die Daten in zumindest einem Knoten der Graphendatenbank gespeichert. Bei dem erfindungsgemäßen Ver fahren ist der Knoten mittels einer echten Teilmenge der Re cheneinheiten des Netzwerkes gespeichert.
Unter einer echten Teilmenge der Recheneinheiten des Netzwer kes ist eine Menge zu verstehen, welche nicht sämtliche Re cheneinheiten des Netzwerkes umfasst, d.h. in der echten Teilmenge ist mindestens eine Recheneinheit des Netzwerkes vernetzter Recheneinheiten nicht enthalten. Unter einem Speichern mittels einer Recheneinheit ist ein Speichern in einem Speicher der Recheneinheit und/oder in ei nem der Recheneinheit zugeordnetem Speicher zu verstehen. Vorzugsweise führt dabei die Recheneinheit Speicheranweisun gen zur Speicherung in diesem Speicher aus. Zweckmäßig ist dabei der Speicher ein Arbeitsspeicher und/oder ein Datenträ ger, insbesondere eine Festplatte und/oder ein der Rechenein heit zugeordneter und/oder mit der Recheneinheit verknüpfter und/oder verbundener Cloudspeicher.
Mittels des erfindungsgemäßen Verfahrens müssen folglich nicht sämtliche Daten der verteilten Transaktionsdatenbank mittels sämtlicher Recheneinheiten des Netzwerkes gespeichert werden. Vielmehr können einzelne Knoten der Graphendatenbank mittels derjenigen Recheneinheiten gespeichert werden, die eine echte Teilmenge der Recheneinheiten des Netzwerkes aus machen. Auf diese Weise können Vertraulichkeitsanforderungen sehr leicht eingehalten werden, indem Knoten der Graphenda tenbank nur auf solchen Recheneinheiten gespeichert werden, welchen der Zugriff auf die Daten des Knotens gestattet sein soll.
Im Gegensatz dazu werden die Daten der Transaktionsdatenbank beim bekannten „Sharding" zufällig aufgeteilt, d.h. eine kno tenweise Aufteilung von Daten der Transaktionsdatenbank ist mittels bekannter Verfahren nicht möglich. Besonders bevor zugt lassen sich die in den Knoten der erfindungsgemäß heran gezogenen verteilten Graphendatenbank gespeicherten Daten ei nem oder mehreren bestimmten Anwendungsfällen zuordnen. Auf diese Weise kann mittels des erfindungsgemäßen Verfahrens ei ne anwendungsfallweise Aufteilung von Daten über bestimmte ausgewählte Recheneinheiten des Netzwerkes erfolgen. Insbe sondere können Vertraulichkeitsstufen bestimmten Anwendungs fällen pauschal zugeordnet werden, sodass auch bestimmte Be rechtigungen von Recheneinheiten zum Zugriff auf diese Daten knotenweise und folglich auch anwendungsfallweise eingerich tet werden können. Ein weiterer Vorteil des erfindungsgemäßen Verfahrens besteht darin, dass sich das erfindungsgemäße Verfahren leicht ska lieren lässt. Da bei dem erfindungsgemäßen Verfahren Daten lediglich mittels Recheneinheiten einer echten Teilmenge ge speichert werden müssen, lassen sich grundsätzlich beliebig große Transaktionsdatenbanken mit beliebig vielen Rechenein heiten realisieren. Der tatsächliche Speicherbedarf hängt bei dem erfindungsgemäßen Verfahren weniger von der Anzahl der Recheneinheiten des gesamten Netzwerks, sondern vielmehr von der Anzahl der Recheneinheiten der jeweiligen Teilmenge ab, welche nicht oder nicht notwendigerweise mit der Größe des Netzwerkes mitwächst.
Auch der Kommunikationsaufwand zur Administration steigt nicht notwendigerweise mit der Größe der Transaktionsdaten bank sowie mit der Anzahl an Recheneinheiten an, da sich auch der Kommunikationsaufwand, etwa zur Synchronisation der Daten des Knotens, auf die Recheneinheiten der echten Teilmenge be schränkt. Folglich lassen sich mittels des erfindungsgemäßen Verfahrens Daten in beliebig großen Transaktionsdatenbanken mit beliebig vielen Knoten und in beliebig großen Netzwerken mit beliebig vielen Recheneinheiten effizient speichern.
Es versteht sich, dass eine verteilte Transaktionsdatenbank im Sinne dieser Erfindung eine Datenbank bedeutet, welche im englischen Sprachgebrauch auch als „Distributed Ledger" be zeichnet wird. Es versteht sich ferner, dass eine Graphenda tenbank im Sinne dieser Erfindung eine mit Knoten und Kanten gebildete Graphendatenbank bedeutet, bei welcher Daten in Knoten eingetragen sind, welche via Kanten miteinander ver bunden sind.
Vorzugsweise bilden die Kanten kryptographische Verbindungen zwischen den Knoten, insbesondere mittels Hash-Werten und/oder mittels Einweg-Funktionen und/oder mittels krypto- graphischer Schlüssel. Bei den Recheneinheiten im Sinne dieser Erfindung handelt es sich zweckmäßig um Computer und/oder Server. Grundsätzlich kann eine Recheneinheit im Sinne dieser Erfindung auch als logische Recheneinheit gebildet sein, welche ihrerseits über ein verteiltes Rechnernetzwerk realisiert ist, etwa über ein Cloud-Netzwerk .
In einer bevorzugten Weiterbildung des erfindungsgemäßen Ver fahrens sind oder umfassen die Daten Transaktionsdaten von Transaktionen von Recheneinheiten des Netzwerks, d.h. von Transaktionen, an welchen Recheneinheiten des Netzwerkes teilnehmen, und die echte Teilmenge der Recheneinheiten um fasst zumindest oder genau solche Recheneinheiten, welche an den Transaktionen der Transaktionsdaten teilnehmen.
Auf diese Weise werden die in den Knoten gespeicherten Daten mittels derjenigen Recheneinheiten des Netzwerkes gespei chert, welche an den in dem Knoten gespeicherten Transaktio nen der Transaktionsdaten teilnehmen. Bevorzugt handelt es sich ausschließlich um solche Recheneinheiten, welche an den Transaktionen der Transaktionsdaten teilnehmen.
Auf diese Weise können die Inhalte der Knoten vorteilhaft nur solchen Recheneinheiten zugänglich gemacht werden, welche oh nehin an den Transaktionen der in den Knoten gespeicherten Transaktionsdaten beteiligt sind. Mit anderen Worten: die in den Knoten gespeicherten Transaktionsdaten sind nur denjeni gen Recheneinheiten zugänglich, welche überhaupt einen Bezug zu den Transaktionsdaten haben. Auf diese Weise können Daten in Form von Transaktionsdaten zuverlässig vertraulich gehal ten werden und nur mit solchen Recheneinheiten geteilt wer den, welche die Kenntnisse der Transaktionsdaten benötigen, um die Transaktionen abschließen zu können.
Mittels dieser Weiterbildung des erfindungsgemäßen Verfahrens ist vorteilhaft also eine Transaktionsdatenbank realisierbar, bei welcher Transaktionsdaten in einer echten Teilmenge der Recheneinheiten vertraulich behandelt werden können. Folglich muss kein Kompromiss zwischen einer öffentlichen Zu gänglichkeit der Transaktionsdatenbank und einer Erfüllung eines Vertraulichkeitserfordernisses gewählt werden, sondern beide Ziele können mittels dieser Weiterbildung des erfin dungsgemäßen Verfahrens gleichermaßen erreicht werden.
In einer vorteilhaften Weiterbildung ist bei dem erfindungs gemäßen Verfahren der Knoten ein Teil eines Pfads eines mit Knoten gebildeten Graphen der Graphendatenbank. Unter einem Pfad im Sinne dieser Erfindung ist eine durchgängig verknüpf te Kette von Knoten zu verstehen, welche jeweils miteinander, zweckmäßig mittels Kanten, verknüpft sind. Ein solcher Pfad kann einen Zweig oder eine Schleife des Graphen bilden. Bei einem Zweig des Graphen ist es besonders bevorzugt, wenn sämtliche Knoten dieses Zweiges des Graphen mittels der ech ten Teilmenge der Recheneinheiten gespeichert sind. Geeigne terweise sind die in den Knoten des Zweiges gespeicherten Da ten Transaktionsdaten und die echte Teilmenge umfasst die vereinigende Menge der an den Transaktionen der Transaktions daten der Knoten des Zweigs beteiligten Recheneinheiten.
Auf diese Weise lassen sich nicht nur die Transaktionsdaten einzelner Knoten vertraulich über die echte Teilmenge der Re cheneinheiten verteilen, sondern es können Daten sogar in ei nem gesamten Pfad gespeichert werden, welche infolge der Speicherung mittels der echten Teilmenge der Recheneinheiten des Netzwerkes unter diesen Recheneinheiten der Teilmenge vertraulich bleibt.
Es können also Zweige, sogenannte Side-Chains, mittels einer echten Teilmenge der Recheneinheiten vertraulich gespeichert werden, sodass nicht notwendigerweise das gesamte Netzwerk von den in dem Zweig gespeicherten Daten Kenntnis erhält. Be sonders bevorzugt bildet der Pfad eine Schleife des Graphen aus, d.h. der Pfad zweigt nicht nur von weiteren Teilen des Graphen ab, sondern vereinigt sich wieder mit dem Graphen, sodass sich eine Schleife mit übrigen Teilen des Graphens ge- wissermaßen schließt. Zweckmäßig bildet der Pfad die Schleife mit übrigen, nicht zum Pfad gehörenden Teilen des Graphen ge meinsam aus, d.h. der Pfad zweigt von übrigen Teilen des Gra phen ab und vereinigt sich mit diesen übrigen Teilen wieder. Somit umfasst bevorzugt der Pfad nicht diese übrigen Teile des Graphen, sondern lediglich den abgezweigten und noch nicht wieder vereinigten Teil des Pfades.
So lassen sich Daten des Pfades in der echten Teilmenge der echten Einheiten vertraulich behandeln, jedoch können Ergeb nisse, die auf diesen vertraulich behandelten Daten beruhen, wieder in den übrigen Graphen eingehen, welcher für Transak tionsdaten in anderen Teilen des Netzwerkes, etwa bei Rechen einheiten außerhalb der echten Teilmenge, erforderlich sind. Auf diese Weise zerfällt bei dem erfindungsgemäßen Verfahren die Transaktionsdatenbank nicht in einzelne Untertransakti onsdatenbanken, sondern die Transaktionsdatenbank bleibt eine zusammenhängende Datenbank, bei welcher Wechselwirkungen und/oder Datenaustausche zwischen einzelnen Teilmengen der Recheneinheiten des Netzwerkes möglich bleiben.
Vorzugsweise sind bei dem erfindungsgemäßen Verfahren die in den Knoten des Pfads gespeicherten Daten Transaktionsdaten von Transaktionen von Recheneinheiten des Netzwerks, welche, vorzugsweise ausschließlich, einem Anwendungsfall zuordbar sind. Somit können in dieser Weiterbildung Anwendungsfälle mittels jeweils eines separaten Pfades des Graphen der Gra phendatenbank gespeichert werden.
In einer bevorzugten Weiterbildung des erfindungsgemäßen Ver fahrens werden Daten in Knoten einer solchen Graphendatenbank gespeichert, welche mehrere Pfade aufweist, wobei jeweils der Pfad, d.h. die zu einem jeweiligen Pfad gehörenden Knoten, mittels einer echter Teilmengen von Recheneinheiten des Netz werkes gespeichert wird und wobei die echten Teilmengen eine von den echten Teilmengen verschiedene Schnittmenge aufwei sen. Auf diese Weise sind bei dem erfindungsgemäßen Verfahren Daten in einer Graphendatenbank gespeichert, welche in Teil- mengen der Recheneinheiten des Netzwerkes gespeichert sind, welche miteinander nicht identisch sind, d.h. es gibt zumin dest Recheneinheiten einer Teilmenge, welche nicht Teil einer anderen Teilmenge ist. Auf diese Weise können Daten mit un terschiedlichen Berechtigungsgruppen in der Transaktionsda tenbank gespeichert werden.
Dabei ist es in einer bevorzugten Weiterbildung der Erfindung möglich, dass die Schnittmenge leer ist, d.h. keine Rechen einheit ist Teil sämtlicher Teilmengen.
In einer weiteren bevorzugten Weiterbildung der Erfindung kann es jedoch auch sein, dass die Schnittmenge nicht leer ist, d.h. es besteht eine Überlappung der Teilmengen, wobei die Überlappung zumindest eine Recheneinheit des Netzwerkes umfasst. Insbesondere können eine oder mehrere solche Rechen einheiten diese nicht leerer Schnittmenge bilden, welche Ad ministrationsaufgaben in dem Netzwerk übernehmen.
Das erfindungsgemäße Computerprogramm ist direkt in einen Speicher einer elektronischen Recheneinheit ladbar, wobei das Computerprogramm Programmmittel aufweist, um die Schritte des zuvor erläuterten erfindungsgemäßen Verfahrens auszuführen, wenn das Programm in einer der Recheneinheiten ausgeführt wird.
Das erfindungsgemäße Netzwerk vernetzter Recheneinheiten speichert eine verteilte Transaktionsdatenbank in Gestalt ei ner verteilten Graphendatenbank, wobei die Graphendatenbank Knoten umfasst, in welchen Daten nach einem erfindungsgemäßen Verfahren - wie zuvor erläutert - gespeichert werden.
Nachfolgend wird die Erfindung anhand eines in der Zeichnung dargestellten Ausführungsbeispiels näher erläutert.
Es zeigen: Figur 1: Eine verteilte Transaktionsdatenbank in Gestalt ei ner verteilten Graphendatenbank schematisch in ei ner Prinzips-Skizze und
Figur 2: Schritte des erfindungsgemäßen Verfahrens schema tisch in einer Prinzips-Skizze.
Die in Figur 1 dargestellte verteilte Transaktionsdatenbank ist eine verteilte Graphendatenbank GDB. Die Graphendatenbank GDB bildet einen Distributed Ledger. Bei der Graphendatenbank GDB sind Daten in Knoten N eingetragen, welche via Kanten miteinander verbunden sind. Die Kanten stellen kryptographi- sche Verbindungen zwischen den Knoten N dar, im gezeigten Ausführungsbeispiel Hash-Werte. In weiteren, nicht eigens dargestellten Ausführungsbeispielen können sonstige Einweg- Funktionen oder kryptographische Schlüssel zur Verknüpfung der Knoten N herangezogen sein.
Die Graphendatenbank GDB ist mit einem Graphen G gebildet, welcher einzelne Knoten N umfasst. Die Knoten N des Graphen G sind miteinander mittels solcher kryptographischer Verfahren verknüpft, welche einen ConsensusMechanismus, im dargestell ten Ausführungsbeispiel einen „Proof of Work" oder einen „Proof of Stake", darstellen. In weiteren, nicht eigens dar gestellten Ausführungsbeispielen können auch andere Consen sus-Mechanismen eingesetzt werden. Die Verknüpfung ist in Fi gur 1 mittels Pfeilen dargestellt, welche die Knoten N ver binden. Mittels der Graphendatenbank GDB sollen Daten von Lieferketten gespeichert werden. Dabei bildet der Graph G der Graphendatenbank GDB die interne Struktur der Lieferkette ab, welche anwendungsfallspezifische Zweige aufweist. Je nach An wendungsfall gibt es für die verschiedenen Zweige unter schiedliche Betroffene des Anwendungsfalls, was sich in un terschiedlichen Recheneinheiten 10, 2030, 40, 50, 60 des Netzwerks, welches die Graphendatenbank GDB speichert und so mit betreibt, widerspiegelt. Bei den Recheneinheiten 10, 20 30, 40, 50, 60 im Sinne dieser Erfindung handelt es sich um als Server operierende Computer. Grundsätzlich kann in weiteren, nicht eigens dargestellten Ausführungsbeispielen eine Recheneinheit 10, 2030, 40, 50,
60 auch als logische Recheneinheit gebildet sein, welche ih rerseits über ein verteiltes Rechnernetzwerk realisiert ist, etwa über ein Cloud-Netzwerk.
Unter einem Speichern mittels einer Recheneinheit 10, 2030, 40, 50, 60 ist ein Speichern in einem Speicher der Rechenein heit 10, 2030, 40, 50, 60, vorliegend einem Arbeitsspeicher, zu verstehen. In weiteren, nicht eigens dargestellten Ausfüh rungsbeispielen kann auch in einen der Recheneinheit 10, 20 30, 40, 50, 60 zugeordneten Speicher zu verstehen sein. In weiteren, nicht eigens dargestellten Ausführungsbeispielen, welche dem dargestellten Ausführungsbeispiel entsprechen, kann der Speicher auch ein Datenträger wie beispielsweise ei ne Festplatte oder ein der Recheneinheit zugeordneter und mit der Recheneinheit 10, 2030, 40, 50, 60 verknüpfter und sig nalverbundener Cloudspeicher sein.
Eine Wurzel der Graphendatenbank GDB ist in Figur 1 als ein ganz links befindlicher Knoten N dargestellt. Diese Wurzel weist lediglich Initialisierungsdaten und Konfigurationsdaten des Netzwerkes sowie Administrationsdaten zur weiteren Admi nistration des Netzwerkes 10, 2030, 40, 50, 60 auf. Folglich sind in diesen Knoten N gespeicherte Daten über eine kleine Teilmenge von Recheneinheiten 10 des Netzwerkes 10, 2030,
40, 50, 60 gespeichert. Dabei sind die Daten des Knotens N redundant mittels der Recheneinheiten 10 der Teilmenge ge speichert. Der Graph G verzweigt sich von diesen Knoten N fortschreitend in zwei Zweige, welche unterschiedliche Use- Case-Anwendungen abbilden.
Ein erster Anwendungsfall betrifft die Teilmenge der Rechen einheiten 10 sowie eine weitere Teilmenge der Recheneinheiten 20, welcher in dem in Figur 1 dargestellten Ausführungsbei spiel den oben abzweigenden Anwendungsfall bildet. Ein zweiter Anwendungsfall betrifft die Recheneinheiten 10, 30. Folglich werden die Knoten N im ersten Anwendungsfall mittels der Recheneinheiten 10, 20 redundant gespeichert, im zweiten Anwendungsfall mittels der Recheneinheiten 10, 30.
In beiden Anwendungsfällen werden im weiteren Verlauf auch die Recheneinheiten einer Teilmenge 40 betroffen, welche, wie in Figur 10 dargestellt, nach rechts fortschreitend Transak tionsdaten in die Knoten N einspeichern und Kopien der Knoten N buchhalten.
In Figur 1 ganz oben gezeigt zweigt eine private Side-Chain SC vom Graphen G ab. Die Knoten N der privaten Side-Chain SC enthalten nur Daten der Recheneinheiten 20, 50, 60, während die dort gespeicherten Daten die Recheneinheiten 10 nicht weiter betreffen. Folglich sind Daten der Recheneinheiten 10 in den Knoten N der privaten Side-Chain nicht gespeichert. Vielmehr werden die Knoten N der privaten Side-Chain SC le diglich mittels der Recheneinheiten 20, 50, 60 gespeichert.
Nachdem der Anwendungsfall für die private Side-Chain SC ab geschlossen ist, wird die private Side-Chain SC wieder mit dem übrigen Graphen G vereinigt.
Ganz unten dargestellt ist ein Beispiel für einen Zweig, in welchem ein Zweig GB nach unten abzweigt.
Der Zweig GB betrifft zwar ebenfalls Transaktionen der Re cheneinheiten 10, 30, sodass sich die Teilmenge der Rechen einheiten 10, 30, welche der Zweig GB betrifft, nicht von derjenigen Teilmenge der Recheneinheiten 10, 30 unterschei det, von welchen der Zweig GB abzweigt. Jedoch bildet der Zweig GB einen neuen Anwendungsfall, welcher mittels des Zweigs GB folglich auch in der Struktur des Graphen G als ei genständiger Zweig GB repräsentiert wird. Im dargestellten Ausführungsbeispiel bilden die Recheneinhei ten 10 Konsortial-Recheneinheiten 10, welche sämtliche Knoten N des Graphen G mit Ausnahme der Knoten N der privaten Side- Chain SC speichern.
Mittels des erfindungsgemäßen Verfahrens werden Daten in die Knoten N des Graphen G der verteilten Graphendatenbank GDB gespeichert. Das Verfahren zur Speicherung der Daten in die Knoten N erfolgt dabei anhand des Zweiges GB der Fig. 1 wie in Figur 2 dargestellt:
Wenn ein neuer Knoten N des Graphen G zur Verfügung steht, werden zunächst diejenigen Recheneinheiten 10, 30 identifi ziert, welche in einem bestimmten Anwendungsfall mitwirken. Diese Teilmenge der Recheneinheiten 10, 30 stellen demzufolge auch Daten in den Knoten N des Anwendungsfalls ein. Die Iden tifikation dieser Teilmenge der Recheneinheiten 10, 30 er folgt im Schritt STE1.
Diese Recheneinheiten 10, 30 der Teilmenge stellen ihrerseits ihre Recheneinheiten 10, 30 zur Verfügung, um den Knoten N des Graphen G zu speichern. Eine Liste dieser Recheneinheiten 10, 30, beispielsweise in Form von Mac-Adressen oder IP- Adressen, wird an alle Recheneinheiten 10, 30 der Teilmenge übermittelt. Jede Recheneinheit 10, 30 nimmt folglich eine Liste der für diesen Anwendungsfall zur Verfügung stehenden Recheneinheiten 10, 30 entgegen in einem Schritt STE2.
Nachfolgend erschaffen diese Recheneinheiten 10, 30 einen Zweig GB von Knoten N, welcher für diesen Anwendungsfall spe zifisch ist. Jede Recheneinrichtung 10, 30, welche Daten in diese Knoten N einstellt, übermittelt sämtlichen Rechenein richtungen 10, 30 der Teilmenge die Daten, die sie einstellt, in einem Schritt STE3.
Zugleich wird von jeder Recheneinrichtung 10, 30 ein Satz von Kopien von Daten aller anderen Recheneinrichtungen 10, 30 in einem Schritt STE4 erhalten. Zusätzlich werden auch Kopien der in den Knoten N des Zweiges GB gespeicherten Daten in den Konsortial-Recheneinrichtungen 10 gespeichert - mit Ausnahme der Daten der Knoten N in pri- vaten Side-Chains SC.

Claims

Patentansprüche
1. Computerimplementiertes Verfahren zur Speicherung von Da ten in einem Netzwerk vernetzter Recheneinheiten (10, 20, 30, 40, 50, 60) mittels einer verteilten Transaktionsdaten bank (GDB), bei welchem eine verteilte Transaktionsdatenbank (GDB) in Gestalt einer verteilten und mit Knoten gebildeten Graphendatenbank herangezogen wird und bei welchem die Daten in zumindest einen Knoten (N) der Graphendatenbank gespei chert werden, wobei der Knoten (N) mittels einer echten Teil menge der Recheneinheiten (10, 20, 30, 40, 50, 60) des Netz werks gespeichert ist.
2. Verfahren nach dem vorhergehenden Anspruch, bei welchem die Daten Transaktionsdaten von Transaktionen von Rechenein heiten (10, 20, 30, 40, 50, 60) des Netzwerks sind oder um fassen und bei welchem die echte Teilmenge der Recheneinhei ten (10, 20, 30, 40, 50, 60) solche Recheneinheiten (10, 20, 30, 40, 50, 60) umfasst, welche an den Transaktionen der Transaktionsdaten teilnehmen.
3. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem der Knoten (N) Teil eines Pfads (SC, GB) eines mit Knoten (N) gebildeten Graphen der Graphendatenbank ist.
4. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem der Pfad (GB) einen Zweig des Graphen bildet.
5. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem der Pfad (SC) eine Schleife des Graphen bildet.
6. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem die in den Knoten (N) des Pfads (SC, GB) gespeicher ten Daten Transaktionsdaten von Transaktionen von Rechenein heiten (10, 20, 30, 40, 50, 60) des Netzwerks sind, welche, vorzugsweise ausschließlich, einem Anwendungsfall zuordbar sind.
7. Verfahren nach einem der vorhergehenden Ansprüche, bei welchem die Daten in einen Knoten (N) einer solchen Graphen datenbank gespeichert wird, welche mehrere Pfade aufweist, deren Knoten mittels jeweils echter Teilmengen von Rechenein heiten (10, 20, 30, 40, 50, 60) des Netzwerks gespeichert wird, wobei die echten Teilmengen eine von den echten Teil mengen verschiedene Schnittmenge aufweisen.
8. Verfahren nach dem vorhergehenden Anspruch, bei welchem die Schnittmenge leer ist.
9. Verfahren nach dem vorhergehenden Anspruch, bei welchem die Schnittmenge nicht leer ist.
10. Computerprogramm-Produkt welches direkt in einen Speicher einer elektronischen Recheneinheit (10, 20, 30, 40, 50, 60) ladbar ist, mit Programm-Mitteln, um die Schritte des Verfah rens nach einem der Ansprüche 1 bis 9 auszuführen, wenn das Programm in einer der Recheneinheiten ausgeführt wird.
11. Netzwerk vernetzter Recheneinheiten (10, 20, 30, 40, 50, 60), speichernd eine verteilte Transaktionsdatenbank (GDB) in Gestalt einer verteilten Graphendatenbank, umfassend Knoten (N), in welchen Daten nach einem Verfahren nach einem der An sprüche 1 bis 9 gespeichert werden.
EP21731695.9A 2020-05-29 2021-05-26 Computerimplementiertes verfahren zur speicherung von daten mittels einer verteilten transaktionsdatenbank, computerprogrammprodukt und netzwerk Pending EP4127976A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP20177465.0A EP3916581A1 (de) 2020-05-29 2020-05-29 Computerimplementiertes verfahren zur speicherung von daten mittels einer verteilten transaktionsdatenbank, computerprogrammprodukt und netzwerk
PCT/EP2021/064031 WO2021239801A1 (de) 2020-05-29 2021-05-26 Computerimplementiertes verfahren zur speicherung von daten mittels einer verteilten transaktionsdatenbank, computerprogrammprodukt und netzwerk

Publications (1)

Publication Number Publication Date
EP4127976A1 true EP4127976A1 (de) 2023-02-08

Family

ID=71016338

Family Applications (2)

Application Number Title Priority Date Filing Date
EP20177465.0A Withdrawn EP3916581A1 (de) 2020-05-29 2020-05-29 Computerimplementiertes verfahren zur speicherung von daten mittels einer verteilten transaktionsdatenbank, computerprogrammprodukt und netzwerk
EP21731695.9A Pending EP4127976A1 (de) 2020-05-29 2021-05-26 Computerimplementiertes verfahren zur speicherung von daten mittels einer verteilten transaktionsdatenbank, computerprogrammprodukt und netzwerk

Family Applications Before (1)

Application Number Title Priority Date Filing Date
EP20177465.0A Withdrawn EP3916581A1 (de) 2020-05-29 2020-05-29 Computerimplementiertes verfahren zur speicherung von daten mittels einer verteilten transaktionsdatenbank, computerprogrammprodukt und netzwerk

Country Status (3)

Country Link
US (1) US20230214404A1 (de)
EP (2) EP3916581A1 (de)
WO (1) WO2021239801A1 (de)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10193696B2 (en) * 2015-06-02 2019-01-29 ALTR Solutions, Inc. Using a tree structure to segment and distribute records across one or more decentralized, acylic graphs of cryptographic hash pointers
US10721336B2 (en) * 2017-01-11 2020-07-21 The Western Union Company Transaction analyzer using graph-oriented data structures
JP6672190B2 (ja) * 2017-01-16 2020-03-25 株式会社東芝 データベースシステムおよびデータ処理方法
CN110832825B (zh) * 2017-05-22 2022-10-21 维萨国际服务协会 通过防篡改数据提高验证速度的网络的方法和节点
KR102545178B1 (ko) * 2017-10-23 2023-06-16 지멘스 악티엔게젤샤프트 디바이스들을 제어 및/또는 모니터링하기 위한 방법 및 제어 시스템
US11657088B1 (en) * 2017-11-08 2023-05-23 Amazon Technologies, Inc. Accessible index objects for graph data structures
EP3841486A4 (de) * 2018-08-23 2022-06-15 Providentia Worldwide, LLC Systeme und verfahren für blockchain-verknüpfung und beziehungen
US11418402B1 (en) * 2019-01-17 2022-08-16 Artema Labs, Inc Robust and secure proof of space based mining
GB2598942A (en) * 2020-09-21 2022-03-23 Nchain Holdings Ltd Blockchain-based system and method
US11763395B2 (en) * 2021-01-27 2023-09-19 Coupa Software Incorporated Duplicate invoice detection and management
US20230351040A1 (en) * 2022-04-28 2023-11-02 Konvergence, Inc. Methods and Systems Directed to Distributed Personal Data Management

Also Published As

Publication number Publication date
EP3916581A1 (de) 2021-12-01
WO2021239801A1 (de) 2021-12-02
US20230214404A1 (en) 2023-07-06

Similar Documents

Publication Publication Date Title
EP2735991B1 (de) Computerimplementiertes Verfahren zum Ersetzen eines Datenstrings
DE112011104005T5 (de) Verfahren und Datenverarbeitungssystem zum Kodieren von in einer spaltenorientierten Weise gespeicherten Daten, Datenverarbeitungsprogramm und Computerprogrammprodukt
EP3707854B1 (de) Verfahren zum verknuepfen eines ersten datenblocks mit einem zweiten datenblock, verfahren zum ueberpruefen der integritaet einer blockchain-struktur, vorrichtung und computerprogrammprodukt
DE69735290T2 (de) Verfahren zur unsymmetrischen kryptographischen kommunikation und zugehöriger tragbarer gegenstand
EP3480724B1 (de) Computerimplementiertes verfahren zum ersetzen eines datenstrings durch einen platzhalter
DE112021005837T5 (de) Dezentrale sendeverschlüsselung und schlüsselerzeugungseinrichtung
EP4127976A1 (de) Computerimplementiertes verfahren zur speicherung von daten mittels einer verteilten transaktionsdatenbank, computerprogrammprodukt und netzwerk
WO2018130426A1 (de) Anonymisierung einer blockkette
WO2021099627A1 (de) Verfahren und zugehöriges computersystem zum erzeugen von daten einer datenstruktur
DE102021205095A1 (de) Verfahren, Recheneinheit und Blockchainsystem zur Generierung einer Blockkettenallianz
Saive Das Blockchain-Traditionspapier
Roller Sozialpolitik und Legitimität demokratischer und autokratischer Regime
Welge et al. Die Globalisierung der Netzwerkbildung von professionellen Dienstleistungsunternehmen: Fallbeispiele von drei Start-up-Unternehmen
EP1139243A1 (de) Abrechnungs- und Kundenverwaltungssystem
Sarrafzadeh et al. Restricted track assignment with applications
DE60308325T2 (de) Informationswegeleitung
DE102019134738A1 (de) Verfahren der kryptografischen Verkettung in einem dezentral geführten Buchführungssystem
WO2021255178A1 (de) Computer-implementiertes verfahren zur speicherung von abonnementdaten in einem netzwerk vernetzter recheneinheiten, computerprogramm und netzwerk
EP3734486A1 (de) Computerimplementiertes verfahren zum ersetzen eines datenstrings
DE102022002518A1 (de) Verfahren zur sicheren generierung eines herausgebbaren tokens, verfahren zur sicheren vernichtung eines tokens und tokenherausgeber
DE102018220224A1 (de) Verfahren zum manipulationssicheren Speichern von Daten in einem elektronischen Speicher unter Verwendung einer verketteten Blockchain-Struktur
DE10138658B4 (de) Datenverarbeitungsvorrichtung und Kopplungsmittel für eine Datenverarbeitungsvorrichtung
DE102014118401A1 (de) Dezentralisiertes Expertensystem für netzwerkbasiertes Crowdfunding
DE112021004278T5 (de) Effizientes laden von massendaten mehrerer zeilen oder partitionen für eine einzige zieltabelle
DE112021006204T5 (de) Daten-Transfereinrichtung, Daten-Transferverfahren und Daten-Transferprogramm

Legal Events

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

Free format text: STATUS: UNKNOWN

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

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

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

Free format text: ORIGINAL CODE: 0009012

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

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20221025

AK Designated contracting states

Kind code of ref document: A1

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

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

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20231205