DE112017007224T5 - Momentaufnahmen-Verwaltung in einer Blockchain - Google Patents

Momentaufnahmen-Verwaltung in einer Blockchain Download PDF

Info

Publication number
DE112017007224T5
DE112017007224T5 DE112017007224.7T DE112017007224T DE112017007224T5 DE 112017007224 T5 DE112017007224 T5 DE 112017007224T5 DE 112017007224 T DE112017007224 T DE 112017007224T DE 112017007224 T5 DE112017007224 T5 DE 112017007224T5
Authority
DE
Germany
Prior art keywords
time
snapshot
common data
node
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
DE112017007224.7T
Other languages
English (en)
Inventor
Hironori Takeuchi
Kohichi Kamijoh
Kiyokuni Kawachiya
Hiroshi Horii
Shohei Ohsawa
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112017007224T5 publication Critical patent/DE112017007224T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • 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/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/128Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Quality & Reliability (AREA)
  • Retry When Errors Occur (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Überprüfte Momentaufnahmen werden erzeugt, indem von einer Mehrzahl von ersten Knoten ein Unterschied zwischen gemeinsamen Daten an einem ersten Zeitpunkt und den gemeinsamen Daten an einem zweiten Zeitpunkt, der sich vom ersten Zeitpunkt unterscheidet, abgerufen wird; eine erste Momentaufnahme der gemeinsamen Daten am ersten Zeitpunkt auf Grundlage des Unterschieds erzeugt wird, ein Hashwert der gemeinsamen Daten am ersten Zeitpunkt von der Mehrzahl von ersten Knoten abgerufen wird und die erste Momentaufnahme am ersten Zeitpunkt anhand des Hashwertes der gemeinsamen Daten am ersten Zeitpunkt überprüft wird.

Description

  • HINTERGRUND
  • Technisches Gebiet
  • Die vorliegende Erfindung bezieht sich auf eine Momentaufnahmen-Verwaltung in einer Blockchain.
  • Beschreibung des Standes der Technik
  • In einigen Blockchain-Implementierungen weisen Knoten einer Blockchain-Struktur jeweils eine identische Kopie eines gemeinsamen Datensatzes auf (manchmal auch als „Weltzustand“ oder „Ledger“ usw. bezeichnet). Wenn es beispielsweise N Knoten in der Blockchain-Struktur gibt, haben N Knoten N Kopien der gemeinsamen Daten in einer entsprechenden Datenbank.
  • In einigen Fällen kann es erforderlich sein, dass ein Prüfer die Richtigkeit und Angemessenheit von Transaktionen bestätigt. Der Prüfer muss im Rahmen des Bestätigungsprozesses möglicherweise an verschiedenen Zeitpunkten auf den gemeinsamen Datensatz zugreifen. Aktuelle Verfahren zum Abrufen eines gemeinsamen Datensatzes an bestimmten Zeitpunkten haben jedoch Nachteile, da sie viele Rechenressourcen benötigen.
  • KURZDARSTELLUNG
  • In einer Ausführungsform der vorliegenden Erfindung beinhaltet ein Computerprogrammprodukt Anweisungen, die in einem nichtflüchtigen, durch einen Computer lesbaren Medium oder einer programmierbaren Schaltung enthalten sind, wobei die Anweisungen von einem Prozessor bzw. der programmierbaren Schaltung ausgeführt werden können, um den Prozessor oder die programmierbare Schaltung zu veranlassen, Arbeitsschritte durchzuführen, darunter ein Abrufen eines Unterschieds zwischen gemeinsamen Daten an einem ersten Zeitpunkt und den gemeinsamen Daten an einem zweiten Zeitpunkt, der sich vom ersten Zeitpunkt unterscheidet, von mindestens einem einer Mehrzahl von ersten Knoten, ein Erzeugen einer ersten Momentaufnahme der gemeinsamen Daten am ersten Zeitpunkt auf Grundlage des Unterschieds, ein Abrufen eines Hashwertes der gemeinsamen Daten am ersten Zeitpunkt von mindestens einem der Mehrzahl von ersten Knoten und ein Überprüfen der ersten Momentaufnahme am ersten Zeitpunkt anhand des Hashwertes der gemeinsamen Daten am ersten Zeitpunkt. In einer Ausführungsform kann ein Momentaufnahmeknoten eine richtige Momentaufnahme eines ersten Zeitpunkts mit weniger Rechenressourcen erzeugen.
  • Gemäß einer Ausführungsform der vorliegenden Erfindung beinhalten die Arbeitsschritte weiterhin ein Speichern einer Mehrzahl von Momentaufnahmen der gemeinsamen Daten an unterschiedlichen Zeitpunkten. Der Momentaufnahmeknoten kann einen Archivdatensatz der gemeinsamen Daten speichern.
  • In einer Ausführungsform der vorliegenden Erfindung beinhalten die Arbeitsschritte weiterhin ein Ermitteln, ob eine Mehrzahl von Hashwerten von gemeinsamen Daten am ersten Zeitpunkt gleich ist, wobei das Abrufen des Hashwertes der gemeinsamen Daten am ersten Zeitpunkt von dem mindestens einen der Mehrzahl von ersten Knoten ein Abrufen der Mehrzahl von Hashwerten der gemeinsamen Daten am ersten Zeitpunkt von zwei oder mehr ersten Knoten beinhaltet. Gemäß einer Ausführungsform kann der Momentaufnahmeknoten den vorläufig überprüften Hashwert verwenden, um eine neu erzeugte Momentaufnahme zu überprüfen.
  • Gemäß einer Ausführungsform weist ein Momentaufnahmeknoten ein Computerprogrammprodukt, ein System, das den Momentaufnahmeknoten und die Mehrzahl von ersten Knoten aufweist, und ein Verfahren auf, das von dem Momentaufnahmeknoten oder System durchgeführt wird.
  • Gemäß einer Ausführungsform der vorliegenden Erfindung beinhaltet ein Computerprogrammprodukt Anweisungen, die in einem nichtflüchtigen, durch einen Computer lesbaren Medium oder einer programmierbaren Schaltung enthalten sind, wobei die Anweisungen von einem Prozessor bzw. der programmierbaren Schaltung ausgeführt werden können, um den Prozessor oder die programmierbare Schaltung zu veranlassen, Arbeitsschritte durchzuführen, darunter ein Empfangen einer Momentaufnahme eines ersten Zeitpunkts von einem Momentaufnahmeknoten, ein Berechnen eines Hashwertes der Momentaufnahme des ersten Zeitpunkts, ein Empfangen eines Hashwertes der gemeinsamen Daten am ersten Zeitpunkt von mindestens einem einer Mehrzahl von ersten Knoten, wobei die gemeinsamen Daten in der Mehrzahl von ersten Knoten gespeichert sind, sowie ein Ermitteln, ob der Hashwert der Momentaufnahme des ersten Zeitpunkts gleich ist wie der Hashwert der gemeinsamen Daten am ersten Zeitpunkt. Gemäß einer Ausführungsform kann ein Prüfknoten die Genauigkeit einer von dem Momentaufnahmeknoten empfangenen Momentaufnahme auf Grundlage eines von den ersten Knoten empfangenen Hashwertes bestätigen.
  • Gemäß einer Ausführungsform der vorliegenden Erfindung beinhalten die Arbeitsschritte weiterhin ein Empfangen von mindestens einer gemeinsamen Transaktion zwischen dem ersten Zeitpunkt und einem zweiten Zeitpunkt von dem mindestens einen der Mehrzahl von ersten Knoten und ein Erzeugen der gemeinsamen Daten am zweiten Zeitpunkt auf Grundlage der Momentaufnahme der gemeinsamen Daten am ersten Zeitpunkt und der mindestens einen gemeinsamen Transkation als Reaktion auf das Feststellen, dass der Hashwert der Momentaufnahme des ersten Zeitpunkts gleich ist wie der Hashwert der gemeinsamen Daten am ersten Zeitpunkt. Gemäß einer Ausführungsform kann der Prüfknoten die gemeinsamen Daten eines beliebigen Zeitpunkts mit weniger Datenressourcen wieder genau herstellen.
  • Gemäß einer Ausführungsform der vorliegenden Erfindung beinhaltet ein Prüfknoten ein Computerprogrammprodukt, ein System, das den Prüfknoten und die Mehrzahl von ersten Knoten aufweist, sowie ein Verfahren, das von dem Prüfknoten oder System durchgeführt wird.
  • Der Abschnitt „Kurzdarstellung“ beschreibt nicht unbedingt alle Merkmale der Ausführungsformen der vorliegenden Erfindung. Ausführungsformen der vorliegenden Erfindung können auch Teilkombinationen der vorstehend beschriebenen Merkmale enthalten.
  • Figurenliste
  • Die nachfolgende Beschreibung stellt Einzelheiten bevorzugter Ausführungsformen der vorliegenden Erfindung mit Bezug auf die folgenden Figuren bereit, in denen:
    • 1 eine beispielhafte Konfiguration eines Systems gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 2 beispielhafte Daten zeigt, die gemäß einer Ausführungsform der vorliegenden Erfindung in einem ersten Knoten des Systems gespeichert sind;
    • 3 eine beispielhafte Konfiguration eines Momentaufnahmeknotens des Systems gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 4 eine beispielhafte Konfiguration eines Prüfknotens des Systems gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 5 einen ersten Ablaufplan gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 6 einen zweiten Ablaufplan gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 7 einen Arbeitsschritt des Momentaufnahmeknotens gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 8 einen Arbeitsschritt des Momentaufnahmeknotens gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 9 einen Arbeitsschritt des Prüfknotens gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
    • 10 Arbeitsschritte des Prüfknotens gemäß einer Ausführungsform der vorliegenden Erfindung zeigt; und
    • 11 eine beispielhafte Hardware-Konfiguration eines Computers gemäß einer Ausführungsform der vorliegenden Erfindung zeigt, der als System funktioniert.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Nachfolgend werden beispielhafte Ausführungsformen der vorliegenden Erfindung beschrieben. Die beispielhaften Ausführungsformen der vorliegenden Erfindung schränken die Erfindung gemäß den Ansprüchen nicht ein, und die Kombinationen der in den Ausführungsformen der vorliegenden Erfindung beschriebenen Merkmale sind nicht unbedingt wesentlich für die Erfindung.
  • 1 zeigt eine beispielhafte Konfiguration eines Systems 10 gemäß einer Ausführungsform der vorliegenden Erfindung. Bei dem System 10 als Ganzem kann es sich um eine verteilte Datenbank wie eine Blockchain handeln, bei der eine Mehrzahl von Knoten gemeinsame Daten speichern, eine Transaktion verarbeiten und eine Blockchain erweitern kann.
  • Obwohl das System 10 in den folgenden Ausführungsformen der vorliegenden Erfindung unter einer Reihe von Blockchain-Technologien Hyperledger ausführen kann, kann das System 10 auch andere Blockchain-Technologien ausführen. Für die Ausführungsformen der vorliegenden Erfindung, die im Folgenden erläutert werden, kann eine Reihe von Implementierungen für Hyperledger und andere Blockchain-Technologien verwendet werden. Das System 10 enthält einen Pool 100 von ersten Knoten, einen Momentaufnahmeknoten 200 und einen Prüfknoten 300.
  • Der Pool 100 von ersten Knoten kann eine gemeinsame Transaktion speichern und gemeinsame Daten auf Grundlage der gemeinsamen Transaktion aktualisieren. Der Pool 100 von ersten Knoten kann eine Mehrzahl von ersten Knoten wie einen ersten Knoten 110A, einen ersten Knoten 110B und einen ersten Knoten 110C aufweisen, die in 1 abgebildet sind. Der Pool 100 von ersten Knoten kann eine Blockchain ausführen. In einer Ausführungsform der vorliegenden Erfindung können die ersten Knoten 110A bis 110C einen verteilten Konsensalgorithmus ausführen, um gemeinsame Transaktionen zu verarbeiten.
  • Die ersten Knoten 110A bis 110C können jeweils als bestätigender Peer oder nichtbestätigender Peer in Hyperledger ausgeführt werden. Jeder der ersten Knoten 110A bis 110C kann einen Speicher aufweisen, um die jeweiligen gemeinsamen Daten und die Blockchain zu speichern.
  • Der Momentaufnahmeknoten 200 kann einen Speicher aufweisen, um eine Mehrzahl von Momentaufnahmen der gemeinsamen Daten an verschiedenen Zeitpunkten zu speichern. Bei der Momentaufnahme handelt es sich um eine Kopie der gemeinsamen Daten an einem Zeitpunkt. Der Momentaufnahmeknoten 200 kann daher Kopien der gemeinsamen Daten an verschiedenen Zeitpunkten speichern.
  • Der Prüfknoten 300 kann die gemeinsamen Daten an bestimmten Zeitpunkten für eine Prüfung abrufen. Die ersten Knoten 110A bis 110C, der Momentaufnahmeknoten 200 und der Prüfknoten 300 können durch Computer und Datenbanken umgesetzt werden.
  • Die ersten Knoten 110A bis 110C, der Momentaufnahmeknoten 200 und der Prüfknoten 300 können über ein Netzwerk wie das Internet Daten austauschen. Einzelheiten zu den ersten Knoten 110A bis 110C, dem Momentaufnahmeknoten 200 und dem Prüfknoten 300 werden im Zusammenhang mit den 2 bis 4 erläutert.
  • In einer Ausführungsform der vorliegenden Erfindung können der Momentaufnahmeknoten 200 und/oder der Prüfknoten 300 als unterschiedliche Knoten im Vergleich zu den ersten Knoten 100 umgesetzt werden. In einer Ausführungsform der vorliegenden Erfindung kann ein Teil der ersten Knoten 100 zumindest teilweise als Momentaufnahmeknoten 200 und/oder Prüfknoten 300 fungieren.
  • 2 zeigt beispielhafte Daten, die gemäß einer Ausführungsform der vorliegenden Erfindung in einem ersten Knoten 110 des Systems 10 gespeichert sind. Ein erster Knoten 110 (der einen der ersten Knoten 110A bis 110C in 1 darstellen kann) kann wie eine Knoteneinheit einer Blockchain-Struktur arbeiten.
  • Die ersten Knoten 110A bis 110C können einen Prozessor und/oder eine programmierbare Schaltung und ein oder mehrere nichtfestgelegte, durch einen Computer lesbare(s) Speichermedium/-medien aufweisen, die gemeinsam Anweisungen enthalten. Der Prozessor und/oder die programmierbare Schaltung können Anweisungen ausführen, um verschiedene Arbeitsschritte durchzuführen. Der Prozessor kann die in den durch einen Computer lesbaren Speichermedien gespeicherten Anweisungen ausführen. Die programmierbare Schaltung kann darin programmierte Anweisungen ausführen. In einer Ausführungsform der vorliegenden Erfindung kann das durch einen Computer lesbare Medium oder die programmierbare Schaltung als das Computerprogrammprodukt bereitgestellt werden.
  • In einer Ausführungsform der vorliegenden Erfindung kann der erste Knoten 110 aktuelle gemeinsame Daten 111 und einen Hashwert der aktuellen gemeinsamen Daten 112 in seinem Speicher 108 speichern.
  • Der erste Knoten 110 kann ferner eine Mehrzahl von Blöcken 113(1) bis 113(n) als Blockchain im Speicher 108 speichern. Jeder Block kann eine oder mehrere Transaktion(en) 115, einen Hashwert 117 der Transaktion(en) 115, einen Hashwert eines vorangegangenen Blocks 116 und einen Hashwert der gemeinsamen Daten 112 an einem Zeitpunkt enthalten, an dem der Block erzeugt wird. Der Block (n) 113(n) enthält beispielsweise die Transaktion(en) 115(n), die stattfindet/stattfinden, nachdem der vorangegangene Block (n-1) 113(n-1) erzeugt wurde, einen Hashwert 117(n) der Transaktionen 115(n), einen Hashwert eines (n-1)-ten Blocks 116(n-1) und einen Hashwert der gemeinsamen Daten an einem Zeitpunkt tn , wenn der Block(n) erzeugt wird (112(n)).
  • In einer Ausführungsform der vorliegenden Erfindung empfängt der erste Knoten 110 eine Transaktion 115, wendet einen Konsensalgorithmus auf die Transaktion mit anderen ersten Knoten 110 an und aktualisiert die gemeinsamen Daten 111 auf Grundlage der vereinbarten Transaktion 115 in Übereinstimmung mit einem anderen Algorithmus wie Hyperledger. In einer Ausführungsform kann der Speicher 108 des ersten Knotens 110 durch eine oder mehrere Datenbankeinheiten umgesetzt werden.
  • 3 zeigt eine beispielhafte Konfiguration eines Momentaufnahmeknotens 200 des Systems 10 gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Der Momentaufnahmeknoten 200 kann einen Prozessor und/oder eine programmierbare Schaltung und ein oder mehrere durch einen Computer lesbare(s) Speichermedium/-medien aufweisen, die gemeinsam Anweisungen enthalten. Wenn die Anweisungen durch den Prozessor oder die programmierbare Schaltung ausgeführt werden, können sie den Prozessor oder die programmierbare Schaltung veranlassen, wie eine Mehrzahl von Betriebsabschnitten zu arbeiten. Der Momentaufnahmeknoten 200 kann dabei als ein Speicherabschnitt 210, Abrufabschnitt 220, Erzeugungsabschnitt 230, Überprüfungsabschnitt 240, Berechnungsabschnitt 260 und Bereitstellungsabschnitt 290 dargestellt werden.
  • Der Speicherabschnitt 210 kann eine Mehrzahl von Momentaufnahmen der gemeinsamen Daten an unterschiedlichen Zeitpunkten speichern. In einer Ausführungsform der vorliegenden Erfindung kann der Speicherabschnitt N Momentaufnahmen der gemeinsamen Daten an N unterschiedlichen Zeitpunkten speichern.
  • Der Speicherabschnitt 210 kann auch eine Vielfalt von Daten/Anweisungen für Arbeitsschritte des Momentaufnahmeknotens 200 speichern. Ein oder mehrere andere Elemente im Momentaufnahmeknoten 200 (z.B. der Abrufabschnitt 220, Erzeugungsabschnitt 230, Überprüfungsabschnitt 240, Berechnungsabschnitt 260, Bereitstellungsabschnitt 290 usw.) können Daten direkt oder gegebenenfalls über den Speicherabschnitt 210 austauschen. In einer Ausführungsform der vorliegenden Erfindung weist der Speicherabschnitt 210 eine oder mehrere Speichereinheiten zum Speichern der Momentaufnahmen und/oder einen Speicher zum Speichern der Vielfalt von Daten/Anweisungen auf.
  • Der Abrufabschnitt 220 kann einen Hashwert der gemeinsamen Daten am ersten Zeitpunkt vom Pool 100 von ersten Knoten abrufen. In einer Ausführungsform der vorliegenden Erfindung kann der Abrufabschnitt 220 die Mehrzahl der Hashwerte der gemeinsamen Daten am ersten Zeitpunkt von zwei oder mehr der ersten Knoten 110 abrufen. In einer Ausführungsform der vorliegenden Erfindung kann der Abrufabschnitt 220 den/die Hashwert(e) der gemeinsamen Daten von mindestens einem oder allen der Mehrzahl der ersten Knoten 110 abrufen.
  • Der Abrufabschnitt 220 kann ferner einen Unterschied zwischen gemeinsamen Daten an einem ersten Zeitpunkt und den gemeinsamen Daten an einem zweiten Zeitpunkt, der sich vom ersten Zeitpunkt unterscheidet, vom Pool 100 von ersten Knoten abrufen. In einer Ausführungsform der vorliegenden Erfindung kann der Abrufabschnitt 220 den Unterschied zwischen den gemeinsamen Daten an den beiden Zeitpunkten von zwei oder mehr der Mehrzahl von ersten Knoten 110 abrufen. In einer Ausführungsform der vorliegenden Erfindung kann der Abrufabschnitt 220 eine oder mehrere Transaktionen in Blöcken als Unterschied abrufen.
  • Der Erzeugungsabschnitt 230 kann eine erste Momentaufnahme der gemeinsamen Daten am ersten Zeitpunkt auf Grundlage des Unterschieds zwischen den gemeinsamen Daten am ersten Zeitpunkt und den gemeinsamen Daten am zweiten Zeitpunkt erzeugen. Der Erzeugungsabschnitt 230 kann die erste Momentaufnahme weiterhin auf Grundlage einer zweiten Momentaufnahme am zweiten Zeitpunkt erzeugen. In einer Ausführungsform erzeugt der Erzeugungsabschnitt 230 die erste Momentaufnahme, indem der Unterschied der gemeinsamen Daten zwischen dem ersten Zeitpunkt und dem zweiten Zeitpunkt auf die Momentaufnahme am zweiten Zeitpunkt angewendet wird. Der Erzeugungsabschnitt 230 kann die erste Momentaufnahme im Speicherabschnitt 210 speichern.
  • Der Überprüfungsabschnitt 240 überprüft die erste Momentaufnahme am ersten Zeitpunkt anhand des Hashwertes der gemeinsamen Daten am ersten Zeitpunkt. In einer Ausführungsform der vorliegenden Erfindung ermittelt der Überprüfungsabschnitt 240, ob der Hashwert der ersten Momentaufnahme gleich ist wie der Hashwert der gemeinsamen Daten am ersten Zeitpunkt.
  • Der Überprüfungsabschnitt 240 kann weiterhin eine Mehrzahl der von der Mehrzahl von ersten Knoten 110 abgerufenen Hashwerte der gemeinsamen Daten am ersten Zeitpunkt überprüfen. In einer Ausführungsform der vorliegenden Erfindung kann der Überprüfungsabschnitt 240 ermitteln, ob eine Mehrzahl der von den ersten Knoten 110 abgerufenen Hashwerte der gemeinsamen Daten am ersten Zeitpunkt gleich ist.
  • Der Berechnungsabschnitt 260 berechnet einen Hashwert der ersten Momentaufnahme der gemeinsamen Daten am ersten Zeitpunkt, die von dem Erzeugungsabschnitt 230 erzeugt wurden.
  • Der Bereitstellungsabschnitt 290 empfängt eine Anforderung einer Momentaufnahme an einem Zeitpunkt vom Prüfknoten 300, ruft die Momentaufnahme des Zeitpunkts aus dem Speicherabschnitt 210 ab und stellt dem Prüfknoten 300 die angeforderte Momentaufnahme bereit.
  • 4 zeigt eine beispielhafte Konfiguration eines Prüfknotens 300 des Systems 10 gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Der Prüfknoten 300 kann einen Prozessor und/oder eine programmierbare Schaltung und ein oder mehrere nichtflüchtige, durch einen Computer lesbare Speichermedien aufweisen, die gemeinsam Anweisungen enthalten. Wenn die Anweisungen durch den Prozessor oder die programmierbare Schaltung ausgeführt werden, können sie den Prozessor oder die programmierbare Schaltung veranlassen, wie eine Mehrzahl von Betriebsabschnitten zu arbeiten. Der Prüfknoten 300 kann dabei als ein Speicherabschnitt 310, Empfangsabschnitt 320, Berechnungsabschnitt 340, Ermittlungsabschnitt 360 und Erzeugungsabschnitt 380 dargestellt werden.
  • Der Speicherabschnitt 310 kann auch eine Vielfalt von Daten/Anweisungen für Arbeitsschritte des Prüfknotens 300 speichern. Ein oder mehrere andere Elemente im Prüfknoten 300 (z.B. der Empfangsabschnitt 320, Berechnungsabschnitt 340, Ermittlungsabschnitt 360, Erzeugungsabschnitt 380 usw.) können Daten direkt oder gegebenenfalls über den Speicherabschnitt 310 austauschen. Der Speicherabschnitt 310 kann einen Speicher zum Speichern der Vielfalt von Daten/Anweisungen aufweisen.
  • Der Empfangsabschnitt 320 kann eine Momentaufnahme eines dritten Zeitpunkts von einem Momentaufnahmeknoten 200 empfangen. Der Empfangsabschnitt 320 kann ferner einen Hashwert von gemeinsamen Daten am dritten Zeitpunkt und mindestens eine gemeinsame Transaktion zwischen dem dritten Zeitpunkt und einem vierten Zeitpunkt von mindestens einem der Mehrzahl von ersten Knoten 110 empfangen. In einer Ausführungsform der vorliegenden Erfindung kann der Empfangsabschnitt 320 einen Block oder mehrere Blöcke als den Hashwert der gemeinsamen Daten am dritten Zeitpunkt und die gemeinsame(n) Transaktion(en) zwischen dem dritten Zeitpunkt und dem vierten Zeitpunkt empfangen.
  • Der Berechnungsabschnitt 340 kann einen vom Momentaufnahmeknoten 200 empfangenen Hashwert der Momentaufnahme des dritten Zeitpunkts berechnen.
  • Der Ermittlungsabschnitt 360 kann die vom Momentaufnahmeknoten 200 empfangene Momentaufnahme des dritten Zeitpunkts überprüfen. In einer Ausführungsform der vorliegenden Erfindung ermittelt der Ermittlungsabschnitt 360, ob der vom Berechnungsabschnitt 340 berechnete Hashwert der Momentaufnahme des dritten Zeitpunkts gleich ist wie der vom Empfangsabschnitt 320 empfangene Hashwert der gemeinsamen Daten am dritten Zeitpunkt.
  • Der Erzeugungsabschnitt 380 erzeugt die gemeinsamen Daten am vierten Zeitpunkt auf Grundlage der Momentaufnahme der gemeinsamen Daten am dritten Zeitpunkt und der mindestens einen gemeinsamen Transkation zwischen dem dritten Zeitpunkt und einem vierten Zeitpunkt. Der Erzeugungsabschnitt 380 kann die gemeinsamen Daten am vierten Zeitpunkt als Reaktion darauf erzeugen, dass der Ermittlungsabschnitt 360 feststellt, dass der Hashwert der Momentaufnahme des dritten Zeitpunkts gleich ist wie der Hashwert der gemeinsamen Daten am vierten Zeitpunkt. In einer Ausführungsform der vorliegenden Erfindung kann der Erzeugungsabschnitt 380 die gemeinsame(n) Transaktion(en) auf die gemeinsamen Daten am dritten Zeitpunkt anwenden.
  • 5 zeigt einen Ablaufplan gemäß einer Ausführungsform der vorliegenden Erfindung. Als Beispiel wird ein Momentaufnahmeknoten wie der Momentaufnahmeknoten 200 beschrieben, der die Arbeitsschritte S110 bis S190 wie in 5 gezeigt durchführt. Der Momentaufnahmeknoten kann eine neue Momentaufnahme durch die Arbeitsschritte S110 bis S190 speichern.
  • Bei S110 kann ein Abrufabschnitt wie der Abrufabschnitt 220 einen Hashwert der gemeinsamen Daten an einem Zeitpunkt tn von mindestens einem ersten Knoten eines Pools von ersten Knoten wie dem Pool 100 von ersten Knoten abrufen. Der Hashwert der gemeinsamen Daten an einem Zeitpunkt tx kann nachfolgend durch „H(CD(tx ))‟ dargestellt werden.
  • Bei dem Zeitpunkt tn handelt es sich um einen Zeitpunkt, an dem Block(n) erzeugt wird. Bei Block(n) kann es sich um den letzten Block handeln. Der Zeitpunkt tn kann als erster Zeitpunkt bezeichnet werden. In einer Ausführungsform der vorliegenden Erfindung entspricht der Zeitpunkt tn im Wesentlichen der aktuellen Zeit. In einer Ausführungsform entspricht der Zeitpunkt tn einem Zeitpunkt vor dem aktuellen Zeitpunkt um eine zuvor festgelegte Dauer.
  • In einer Ausführungsform der vorliegenden Erfindung kann der Abrufabschnitt H(DC(tn )) von jedem von zwei oder mehr ersten Knoten im Pool von ersten Knoten abrufen. In einer Ausführungsform kann der Abrufabschnitt H(DC(tn )) von jedem ersten Knoten im Pool von ersten Knoten abrufen. In einer Ausführungsform der vorliegenden Erfindung kann der Abrufabschnitt H(DC(tn )) von einem ersten Knoten im Pool von ersten Knoten abrufen.
  • Bei S120 ermittelt der Abrufabschnitt, ob der Abrufabschnitt H(CD(tn )) von einer zuvor festgelegten Anzahl der ersten Knoten im Pool von ersten Knoten abruft. In einer Ausführungsform der vorliegenden Erfindung kann es sich bei der zuvor festgelegten Anzahl um die Anzahl aller ersten Knoten im Pool von ersten Knoten handeln. In einer Ausführungsform der vorliegenden Erfindung kann es sich bei der zuvor festgelegten Anzahl um eine Hälfte oder zwei Drittel (2/3) der ersten Knoten im Pool von ersten Knoten handeln.
  • Ist die Entscheidung positiv, fährt der Abrufabschnitt mit einem Arbeitsschritt S130 fort. Ist die Entscheidung negativ, geht der Abrufabschnitt zurück zu S110, um zu warten, bis er H(CD(tn )) weiterhin von den ersten Knoten erhält.
  • Bei S130 überprüft ein Überprüfungsabschnitt wie der Überprüfungsabschnitt 240 eine Mehrzahl der von den ersten Knoten bei S110 abgerufenen Hashwerte H(CD(tn )). In einer Ausführungsform der vorliegenden Erfindung ermittelt der Überprüfungsabschnitt, ob alle der Mehrzahl der Hashwerte H(CD(tn )) gleich sind. In einer Ausführungsform ermittelt der Überprüfungsabschnitt, ob mehr als eine zuvor festgelegte Anzahl der Mehrzahl der Hashwerte H(CD(tn )) gleich ist. In der Ausführungsform der vorliegenden Erfindung kann es sich bei der zuvor festgelegten Anzahl um (2M+1)/3 handeln, wobei M die Anzahl der ersten Knoten im Pool von ersten Knoten ist.
  • Bei S140 ermittelt der Überprüfungsabschnitt, ob die Überprüfung bei S130 erfolgreich ist. Ist die Überprüfung erfolgreich, speichert der Überprüfungsabschnitt den überprüften Hashwert H(CD(tn )) in einem Speicherabschnitt wie dem Speicherabschnitt 210 und veranlasst den Abrufabschnitt, mit einem Arbeitsschritt S150 fortzufahren. Ist die Überprüfung nicht erfolgreich, kehrt der Überprüfungsabschnitt zu Arbeitsschritt S110 zurück.
  • Bei S150 ruft der Abrufabschnitt einen Unterschied ΔCD(tn ) zwischen gemeinsamen Daten CD(tn ) am Zeitpunkt tn und den gemeinsamen Daten CD(tn-a) an einem Zeitpunkt tn-a vom Pool von ersten Knoten ab. Der Zeitpunkt tn-a kann auch als zweiter Zeitpunkt bezeichnet werden und kann vor dem Zeitpunkt tn liegen. In einer Ausführungsform der vorliegenden Erfindung kann der Zeitpunkt tn-a einem Zeitpunkt entsprechen, an dem Block(n-a) erzeugt wird, wobei es sich bei einer Variablen a um 1 oder um eine Ganzzahl größer als 1 handeln kann.
  • In einer Ausführungsform der vorliegenden Erfindung stammt der Unterschied ΔCD(tn ) von einer Aktualisierung der gemeinsamen Daten am Zeitpunkt tn mit mindestens einer gemeinsamen Transkation, die zwischen dem Zeitpunkt tn und dem Zeitpunkt tn-a stattgefunden hat.
  • In einer Ausführungsform der vorliegenden Erfindung kann der Abrufabschnitt Block(n), Block(n-1),..., Block(n-a+1) abrufen. Block(n) enthält eine oder mehrere Transaktionen, die nach dem Zeitpunkt tn-1 stattgefunden haben, als ein vorherigen Block(n-1) erzeugt wurde, Block(n-1) enthält eine oder mehrere Transaktionen, die nach dem Zeitpunkt tn-2 stattgefunden haben, als ein Block(n-2) erzeugt wurde, ..., Block (n-a+1) enthält eine oder mehrere Transaktionen, die nach dem Zeitpunkt tn-a stattgefunden haben, als ein Block(n-a) erzeugt wurde.
  • Diese Transaktion(en) entspricht/entsprechen dem Unterschied zwischen CD(tn ) und CD(tn-a). Der Abrufabschnitt kann diese Transaktion(en), die zwischen dem Zeitpunkt tn und dem Zeitpunkt tn-a stattgefunden hat/haben, von Block(n), Block(n-1),..., Block(n-a+1) als Unterschied ΔCD(tn ) abrufen.
  • In einer Ausführungsform der vorliegenden Erfindung kann der Abrufabschnitt einen oder mehrere erste Knoten im Pool von ersten Knoten zufällig festlegen und den Unterschied ΔCD(tn ) von dem festgelegten ersten Knoten empfangen. In einer Ausführungsform kann der Abrufabschnitt den Unterschied ΔCD(tn ) von einem oder mehreren zuvor festgelegten ersten Knoten des Pools von ersten Knoten empfangen.
  • Bei S160 erzeugt ein Erzeugungsabschnitt wie der Erzeugungsabschnitt 230 eine Momentaufnahme SS(tn ) am Zeitpunkt tn auf Grundlage des bei S150 abgerufenen Unterschieds ΔCD(tn ) sowie eine Momentaufnahme SS(tn-a) am Zeitpunkt tn-a . In einer Ausführungsform der vorliegenden Erfindung kann der Erzeugungsabschnitt die Momentaufnahme SS(tn-a) vom Speicherabschnitt lesen und den Unterschied ΔCD(tn ) auf die Momentaufnahme SS(tn-a) anwenden, um die Momentaufnahme SS(tn ) abzurufen.
  • Bei S170 berechnet ein Berechnungsabschnitt wie der Berechnungsabschnitt 260 einen Hashwert H(SS(tn )) der bei S160 erzeugten Momentaufnahme SS(tn ).
  • Bei S180 überprüft der Überprüfungsabschnitt die Momentaufnahme SS(tn ) anhand des überprüften Hashwertes H(CD(tn )). In einer Ausführungsform der vorliegenden Erfindung kann der Überprüfungsabschnitt ermitteln, ob der bei S170 berechnete Hashwert H(SS(tn )) gleich ist wie der bei S130 überprüfte Hashwert H(CD(tn )).
  • Wenn der Überprüfungsabschnitt feststellt, dass der Hashwert H(SS(tn )) gleich ist wie der Hashwert H(CD(tn )), fährt der Überprüfungsabschnitt bei S190 fort. Wenn der Überprüfungsabschnitt feststellt, dass der Hashwert H(SS(tn )) nicht gleich ist wie der Hashwert H(CD(tn )), geht der Überprüfungsabschnitt zu S150 zurück. Bei S150 kann der Abrufabschnitt erneut den Unterschied ΔCD(tn ) von einem oder mehreren anderen ersten Knoten im Pool von ersten Knoten abrufen.
  • Bei S190 speichert der Speicherabschnitt die überprüfte Momentaufnahme SS(tn ). In einer Ausführungsform kann der Speicherabschnitt die Momentaufnahme SS(tn ) als letzte Momentaufnahme speichern. In einer alternativen Ausführungsform kann der Speicherabschnitt den Unterschied ΔCD(tn ) anstatt der/zusätzlich zur Momentaufnahme SS(tn ) speichern. In der Ausführungsform der vorliegenden Erfindung berechnet der Momentaufnahmeknoten eine Momentaufnahme SS(tk ) an einem beliebigen Zeitpunkt tk von einer ursprünglichen Momentaufnahme SS(t1) und ΔCD(t2), ΔCD(t3),..., ΔCD(tk ), wenn der Momentaufnahmeknoten eine Anforderung der Momentaufnahme SS(tk ) von einem Prüfknoten empfängt.
  • Nach dem Arbeitsschritt S190 kann der Momentaufnahmeknoten erneut den Arbeitsschritt S110 durchführen. In einer Ausführungsform der vorliegenden Erfindung kann der Momentaufnahmeknoten regelmäßig die Arbeitsschritte S110 bis S190 durchführen. Der Abrufabschnitt kann beispielsweise mit dem Arbeitsschritt S110 beginnen, nachdem ihm mitgeteilt wurde, dass ein neuer Block (n+1) von einem oder mehreren der ersten Knoten erzeugt wurde.
  • In einer Ausführungsform der vorliegenden Erfindung führt der Momentaufnahmeknoten die Arbeitsschritte S120 bis S140 unter Umständen nicht durch und kann den Hashwert H(CD(tx )) von einem einzelnen ersten Knoten abrufen. In solchen Ausführungsformen der vorliegenden Erfindung können die ersten Knoten mittels eines Konsensalgorithmus einen Konsens in Bezug auf den Hashwert H(CD(tx )) herstellen, bevor der Hashwert H(CD(tx )) zum Momentaufnahmeknoten gesendet wird. Der Abrufabschnitt kann auf diese Weise den Hashwert H(CD(tx )) abrufen, über den durch die Mehrzahl der ersten Knoten ein Konsens erzielt wurde.
  • Gemäß Ausführungsformen der vorliegenden Erfindung, die in Verbindung mit 5 erläutert wurden, müssen die ersten Knoten keine Momentaufnahmen der gemeinsamen Daten speichern, wodurch die von den ersten Knoten benötigten Rechenressourcen verringert werden. Da der Momentaufnahmeknoten darüber hinaus Momentaufnahmen nach der Überprüfung anhand von Hashwerten speichert, kann der Momentaufnahmeknoten gemeinsame Originaldaten als Momentaufnahmen speichern.
  • 6 zeigt einen zweiten Ablaufplan gemäß einer Ausführungsform der vorliegenden Erfindung. Als Beispiel wird ein Prüfknoten wie der Prüfknoten 300 beschrieben, der die Arbeitsschritte S210 bis S290 wie in 5 gezeigt durchführt. Der Prüfknoten kann gemeinsame Daten an einem beliebigen Zeitpunkt durch die Arbeitsschritte S210 bis S290 abrufen.
  • Bei S210 empfängt ein Empfangsabschnitt wie der Empfangsabschnitt 320 eine Momentaufnahme am Zeitpunkt tk-m vom Momentaufnahmeknoten. Bei einem Zeitpunkt tk handelt es sich um einen Zeitpunkt, von dem der Prüfknoten eine Momentaufnahme benötigt. Der Zeitpunkt tk-m kann vor dem Zeitpunkt tk liegen. Der Zeitpunkt tk-m kann als dritter Zeitpunkt bezeichnet werden, und der Zeitpunkt tk kann als vierter Zeitpunkt bezeichnet werden.
  • In einer Ausführungsform der vorliegenden Erfindung handelt es sich bei dem Zeitpunkt tk um einen Zeitpunkt, an dem m Blöcke nach dem Zeitpunkt tk-m erzeugt werden. In einer Ausführungsform der vorliegenden Erfindung kann eine Variable m 1 oder eine Ganzzahl größer als 1 sein. So gilt anfänglich für m beispielsweise 1.
  • In einer Ausführungsform der vorliegenden Erfindung übermittelt der Empfangsabschnitt eine Anforderung der Momentaufnahme mit Informationen des Zeitpunkts tk . Ein Bereitstellungsabschnitt wie der Bereitstellungsabschnitt 290 im Momentaufnahmeknoten ruft die Momentaufnahme SS(tk-m ) aus dem Speicherabschnitt 210 ab und übermittelt die Momentaufnahme SS(tk-m ) an den Empfangsabschnitt. Der Empfangsabschnitt des Prüfknotens kann die Momentaufnahme SS(tk-m ) vom Bereitstellungsabschnitt des Momentaufnahmeknotens empfangen.
  • Bei S220 empfängt der Empfangsabschnitt einen Block oder mehrere Blöcke vom Zeitpunkt tk-m bis tk . In einer Ausführungsform der vorliegenden Erfindung kann der Empfangsabschnitt Block(k-m) am Zeitpunkt tk-m empfangen, der (i) eine oder mehrere gemeinsame Transaktionen zwischen den Zeitpunkten tk-m-1 und tk-m und (ii) einen Hashwert H(CD(tk-m )) der gemeinsamen Daten am Zeitpunkt tk-m enthalten kann. Der Empfangsabschnitt kann ferner Block(k-m+1), Block(k-m+2),..., Block(k) empfangen.
  • In einer Ausführungsform der vorliegenden Erfindung kann der Empfangsabschnitt zufällig einen ersten Knoten im Pool von ersten Knoten festlegen und eine Anforderung von Blöcken mit Informationen des Zeitpunkts k-m an den festgelegten ersten Knoten übermitteln. Der festgelegte erste Knoten kann Block(k-m),..., Block(k) zum Prüfknoten übermitteln, und der Empfangsabschnitt des Prüfknotens kann Block(k-m),..., Block(k) empfangen. In einer Ausführungsform der vorliegenden Erfindung kann der Empfangsabschnitt Block(k-m),..., Block(k) von zwei oder mehr ersten Knoten im Pool von ersten Knoten empfangen.
  • Bei S230 berechnet ein Berechnungsabschnitt wie der Berechnungsabschnitt 340 einen Hashwert H(SS(tk-m )) der bei S210 vom Momentaufnahmeknoten abgerufenen Momentaufnahme SS(tk-m ).
  • Bei S240 überprüft ein Ermittlungsabschnitt wie der Ermittlungsabschnitt 360 die bei S210 vom Momentaufnahmeknoten abgerufene Momentaufnahme SS(tk-m ) anhand des/der bei S220 abgerufenen Blocks/Blöcke. In einer Ausführungsform ermittelt der Ermittlungsabschnitt, ob der bei S230 berechnete Hashwert H(SS(tk-m )) gleich ist wie der bei S220 abgerufene Hashwert H(CD(tk-m )) in Block (k-m). In einer Ausführungsform der vorliegenden Erfindung stellt der Ermittlungsabschnitt fest, dass die Überprüfung erfolgreich ist, wenn beide Hashwerte gleich sind, und dass die Überprüfung nicht erfolgreich ist, wenn beide Hashwerte nicht gleich sind.
  • Bei S250 fährt der Ermittlungsabschnitt mit S270 fort, wenn die Überprüfung nicht erfolgreich ist. Der Ermittlungsabschnitt fährt mit S290 fort, wenn die Überprüfung erfolgreich ist.
  • Bei S270 aktualisiert der Ermittlungsabschnitt die Variable m, indem n zu m addiert wird. In einer Ausführungsform der vorliegenden Erfindung kann n 1 oder eine Ganzzahl größer als 1 sein. Der Ermittlungsabschnitt kann mit dem aktualisierten Wert m zu S210 zurückkehren. Dadurch empfängt der Empfangsabschnitt bei der nächsten Iteration von S210 eine Momentaufnahme an einem aktualisierten Zeitpunkt, der vor dem Zeitpunkt liegt, an dem die Momentaufnahme beim vorherigen Schritt S210 vom Momentaufnahmeknoten als Reaktion auf das Feststellen empfangen wurde, dass der Hashwert H(SS(tk-m )) nicht gleich wie der Hashwert H(CD(tk-m )) bei S250 ist. In einer Ausführungsform der vorliegenden Erfindung kann der aktualisierte Zeitpunkt als fünfter Zeitpunkt bezeichnet werden.
  • Bei der nächsten Iteration von S220 empfängt der Empfangsabschnitt einen Block oder mehrere Blöcke auf Grundlage des aktualisierten Zeitpunkts von mindestens einem ersten Knoten des Pools von ersten Knoten und empfängt die Blöcke von einem anderen ersten Knoten als dem ersten Knoten der vorherigen Iteration von S220.
  • Bei S290 erzeugt ein Erzeugungsabschnitt wie der Erzeugungsabschnitt 380 gemeinsame Daten CD(tk ) am Zeitpunkt tk von der bei S210 abgerufenen Momentaufnahme SS(tk-m ) am Zeitpunkt tk-m , und die bei S220 abgerufenen gemeinsame(n) Transaktion(en) zwischen den Zeitpunkten tk und tk-m ist/sind in den Blöcken enthalten. In einer Ausführungsform der vorliegenden Erfindung erzeugt der Erzeugungsabschnitt die gemeinsamen Daten CD(tk ), indem die gemeinsame(n) Transaktion(en) auf die Momentaufnahme SS(tk-m) angewendet wird/werden.
  • Gemäß Ausführungsformen der vorliegenden Erfindung, die in Verbindung mit 6 erläutert werden, kann der Prüfknoten gemeinsame Originaldaten, die er benötigt, an jedem beliebigen Zeitpunkt mit weniger Rechenressourcen abrufen, als dies bei aktuellen Verfahren zum Prüfen gemeinsamer Daten der Fall ist.
  • Gemäß Ausführungsformen der vorliegenden Erfindung, die in Verbindung mit 6 beschrieben werden, kann der Prüfknoten zuerst die Momentaufnahme SS(tk-m ) am Zeitpunkt tk-m vor dem Zeitpunkt tk und Block(k-m),..., Block(k) abrufen, die Momentaufnahme SS(tk-m ) am Zeitpunkt tk-m überprüfen und anschließend die gemeinsamen Daten CD(tk ) am gewünschten Zeitpunkt tk erzeugen.
  • In einigen alternativen Ausführungsformen der vorliegenden Erfindung kann der Prüfknoten die gemeinsamen Daten an einem Zeitpunkt von einer Momentaufnahme an einem späteren Zeitpunkt anstatt von einer Momentaufnahme an einem früheren Zeitpunkt erzeugen. In einer alternativen Ausführungsform der vorliegenden Erfindung kann der Prüfknoten zuerst die Momentaufnahme SS(tk+m) am Zeitpunkt tk+m abrufen, der nach dem Zeitpunkt tk liegt, sowie einen einzelnen Block(k+m) am Zeitpunkt tk+m . Der Block (k+m) kann einen Hashwert H(CD(tk+m)) der gemeinsamen Daten am Zeitpunkt tk+m und eine oder mehrere Transaktionen zwischen den Zeitpunkten tk und tk+m enthalten. Der Prüfknoten kann die Momentaufnahme SS(tk+m) anhand des Hashwertes H(CD(tk+m)) in Block(k+m) überprüfen. Anschließend kann der Prüfknoten die gemeinsamen Daten CD(tk ) am Zeitpunkt tk erzeugen, indem er die Transaktion(en) zwischen tk und tk+m von der Momentaufnahme SS(tk+m) rückgängig macht. Gemäß einer Ausführungsform der vorliegenden Erfindung kann der Prüfknoten die Anzahl der bei S220 abgerufenen Blöcke verringern.
  • Wenn der Ermittlungsabschnitt in einer alternativen Ausführungsform der vorliegenden Erfindung bei S250 feststellt, dass der Hashwert H(SS(tk-m ) nicht gleich wie der Hashwert H(CD(tk-m )) ist, kann der Empfangsabschnitt bei einer späteren Iteration von S210 eine Momentaufnahme an einem aktualisierten Zeitpunkt vor dem Zeitpunkt tk-m vom Momentaufnahmeknoten empfangen. In einer Ausführungsform der vorliegenden Erfindung kann der aktualisierte Zeitpunkt als sechster Zeitpunkt bezeichnet werden. Bei der späteren Iteration von S220 kann der Empfangsabschnitt auch einen Block (mit Hashwert und Transaktion(en)) der gemeinsamen Daten am aktualisierten Zeitpunkt von mindestens einem ersten Knoten des Pools von ersten Knoten empfangen.
  • In einer weiteren alternativen Ausführungsform der vorliegenden Erfindung kann der Prüfknoten zuerst die Momentaufnahme SS(tk-m ) am Zeitpunkt tk-m abrufen, der vor dem gewünschten Zeitpunkt tk liegt, sowie den Block(k) am Zeitpunkt tk . Anschließend kann der Prüfknoten die gemeinsamen Daten CD(tk ) mit der Momentaufnahme SS(tk-m ) und der/den Transaktion(en) in Block(k) erzeugen und die gemeinsamen Daten CD(tk ) auf Grundlage eines Hashwertes der gemeinsamen Daten H(CD(tk )) in Block(k) überprüfen.
  • In einer weiteren alternativen Ausführungsform der vorliegenden Erfindung kann der Prüfknoten zuerst die Momentaufnahme SS(tk+m) am Zeitpunkt tk+m abrufen, der nach dem gewünschten Zeitpunkt tk liegt, sowie den Block(k) am Zeitpunkt tk und den Block(k+m) am Zeitpunkt tk+m . Der Prüfknoten kann die gemeinsamen Daten CD(tk ) mit der Momentaufnahme SS(tk+m) und der/den Transaktion(en) in Block(k+m) erzeugen. Anschließend kann der Prüfknoten die gemeinsamen Daten CD(tk ) anhand eines Hashwertes der gemeinsamen Daten H(CD(tk )) in Block(k) überprüfen.
  • 7 zeigt gemäß einer Ausführungsform der vorliegenden Erfindung einen Arbeitsschritt wie den Arbeitsschritt S110 des Momentaufnahmeknotens 200, der einen Hashwert der gemeinsamen Daten abruft. In der Ausführungsform der vorliegenden Erfindung von 7 kann der Momentaufnahmeknoten 200 die Momentaufnahme SS(tn-a ) speichern und gemeinsame Daten H(CD(tn )) am Zeitpunkt tn von den ersten Knoten 110A, 110B und 110C vom Pool von ersten Knoten bei S110 abrufen. Der Momentaufnahmeknoten 200 kann diese H(CD(tn ) von den ersten drei Knoten (110A bis 110C) überprüfen.
  • 8 zeigt gemäß einer Ausführungsform der vorliegenden Erfindung einen Arbeitsschritt wie den Arbeitsschritt S150 des Momentaufnahmeknotens 200, der einen Unterschied in den gemeinsamen Daten abruft. In der Ausführungsform der vorliegenden Erfindung von 8 kann der Momentaufnahmeknoten 200 einen Unterschied ΔCD(tn ) vom ersten Knoten 110B im Pool 100 von ersten Knoten abrufen. Der Momentaufnahmeknoten 200 kann eine Momentaufnahme SS(tn ) auf Grundlage einer Momentaufnahme SS(tn-a ) und des Unterschieds ΔCD(tn ) erzeugen.
  • 9 zeigt gemäß einer Ausführungsform der vorliegenden Erfindung einen Arbeitsschritt wie den Arbeitsschritt S210 des Prüfknotens 300, der eine Momentaufnahme empfängt. In der Ausführungsform der vorliegenden Erfindung von 9 übermittelt der Prüfknoten 300 einen Zeitpunkt tk an den Momentaufnahmeknoten 200 und empfängt die Momentaufnahme SS(tk-m ) vom Momentaufnahmeknoten 200. In einigen Ausführungsformen kann der Momentaufnahmeknoten 200 die Momentaufnahme SS(tk ) direkt am erforderlichen Zeitpunkt tk bereitstellen.
  • 10 zeigt gemäß einer Ausführungsform der vorliegenden Erfindung Arbeitsschritte wie die Arbeitsschritte S220 bis 290 des Prüfknotens 300, der die verbleibenden Arbeitsschritte einer Prüfung durchführt. In der Ausführungsform der vorliegenden Erfindung von 10 kann der Prüfknoten 300 einen Block(k-1) und einen Block(k) vom ersten Knoten 110B im Pool 100 von ersten Knoten empfangen.
  • Block(k-1) enthält einen Hashwert der gemeinsamen Daten H(CD(tk-1)) an tk-1 , einen Hashwert des vorherigen Blocks(k-2) und Transaktionen zwischen den Zeitpunkten tk-2 und tk-1 . Block(k) enthält einen Hashwert der gemeinsamen Daten H(CD(tk )) am Zeitpunkt tk , einen Hashwert des vorherigen Blocks(k-1) und Transaktionen zwischen den Zeitpunkten tk-1 und tk .
  • Anschließend überprüft der Prüfknoten 300 die Momentaufnahme SS(tk-1) anhand eines Hashwertes der gemeinsamen Daten H(CD(tk-1)) in Block(k-1). Der Prüfknoten 300 erzeugt gemeinsame Daten (CD(tk )) am Zeitpunkt tk von der Momentaufnahme SS(tk-1) und den Transaktionen zwischen den Zeitpunkten tk und tk-1 in Block(k).
  • 11 zeigt gemäß einer Ausführungsform der vorliegenden Erfindung eine beispielhafte Hardware-Konfiguration eines Computers, der so konfiguriert ist, dass er Cloud-Dienste nutzt. Ein Programm, das im Computer 800 installiert ist, kann den Computer 800 veranlassen, als Vorrichtung zu funktionieren oder Arbeitsschritte, die Vorrichtungen der Ausführungsformen der vorliegenden Erfindung zugehörig sind, oder einen oder mehrere Abschnitte (darunter Module, Komponenten, Elemente usw.) durchzuführen, und/oder den Computer 800 veranlassen, Prozesse der Ausführungsformen der vorliegenden Erfindung oder Schritte davon durchzuführen. Ein solches Programm kann von der CPU 800-12 ausgeführt werden, um den Computer 800 zu veranlassen, bestimmte Arbeitsschritte durchzuführen, die einigen oder allen hierin beschriebenen Blöcken von Ablaufplänen und Blockschaubildern zugehörig sind.
  • Der Computer 800 enthält gemäß der vorliegenden Ausführungsform eine CPU 800-12, einen RAM 800-14, eine Grafik-Steuereinheit 800-16 und eine Anzeigeeinheit 800-18, die über eine Host-Steuereinheit 800-10 miteinander verbunden sind. Der Computer 800 enthält ferner Eingabe-/Ausgabeeinheiten wie eine Datenübertragungsschnittstelle 800-22, ein Festplattenlaufwerk 800-24, ein DVD-ROM-Laufwerk 800-26 und ein IC-Kartenlaufwerk, die über eine Eingabe-/Ausgabesteuereinheit 800-20 mit der Host-Steuereinheit 800-10 verbunden sind. Der Computer enthält des Weiteren traditionelle Eingabe-/Ausgabeeinheiten wie einen ROM 800-30 und eine Tastatur 800-24, die über einen Eingabe-/Ausgabechip 800-40 mit der Eingabe-/Ausgabesteuereinheit 800-20 verbunden sind.
  • Die CPU 800-12 arbeitet nach Programmen, die im ROM 800-30 und RAM 800-14 gespeichert sind und steuert dadurch jede Einheit. Die Grafiksteuereinheit 800-16 ruft von der CPU 800-12 erzeugte Bilddaten in einem Bildspeicher oder Ähnlichem ab, der im RAM 800-14 oder im Bildspeicher selbst bereitgestellt wird, und veranlasst, dass die Bilddaten auf der Anzeigeeinheit 800-18 angezeigt werden.
  • Die Datenübertragungsschnittstelle 800-22 tauscht über ein Netzwerk 800-50 Daten mit anderen elektronischen Einheiten aus. Das Festplattenlaufwerk 800-24 speichert von der CPU 800-12 verwendete Programme und Daten im Computer 800. Das DVD-ROM-Laufwerk 800-26 liest die Programme oder Daten vom DVD-ROM 800-01 und stellt das Festplattenlaufwerk 800-24 mit den Programmen oder Daten über den RAM 800-14 bereit.
  • Das IC-Kartenlaufwerk liest Programme und Daten von einer IC-Karte und/oder schreibt Programme und Daten auf die IC-Karte.
  • Der ROM 800-30 speichert darauf ein Boot-Programm oder Ähnliches, das vom Computer 800 zum Zeitpunkt der Aktivierung durchgeführt wird, und/oder ein Programm abhängig von der Hardware des Computers 800. Der Eingabe-/Ausgabechip 800-40 kann über einen parallelen Anschluss, einen seriellen Anschluss, einen Tastaturanschluss, einen Mausanschluss und Ähnliches verschiedene Eingabe-/Ausgabeeinheiten mit der Eingabe-/Ausgabesteuereinheit 800-20 verbinden.
  • Von durch einen Computer lesbaren Medien wie dem DVD-ROM 800-01 oder der IC-Karte wird ein Programm bereitgestellt. Das Programm wird von durch einen Computer lesbaren Medien gelesen, die auf dem Festplattenlaufwerk 800-24, RAM 800-14 oder ROM 800-30 installiert sind, bei denen es sich ebenfalls um Beispiele für durch einen Computer lesbare Medien handelt, und wird von der CPU 800-12 ausgeführt. Die in diesen Programmen beschriebene Informationsverarbeitung wird in den Computer 800 gelesen und führt zu einer Zusammenarbeit zwischen einem Programm und den vorstehend genannten verschiedenen Arten von Hardware-Ressourcen. Eine Vorrichtung oder ein Verfahren kann erzeugt werden, indem der Betrieb oder die Verarbeitung von Informationen gemäß der Nutzung des Computers 800 durchgeführt wird.
  • Wenn beispielsweise eine Datenübertragung zwischen dem Computer 800 und einer externen Einheit durchgeführt wird, kann die CPU 800-12 ein in den RAM 800-14 geladenes Datenübertragungsprogramm ausführen, um die Datenübertragungsschnittstelle 800-22 anzuweisen, auf der Grundlage der im Datenübertragungsprogramm beschriebenen Verarbeitung eine Datenübertragung zu verarbeiten. Die Datenübertragungsschnittstelle 800-22 liest unter Steuerung der CPU 800-12 Übertragungsdaten, die in einem Übertragungszwischenspeicherbereich in einem Aufzeichnungsmedium wie dem RAM 800-14, dem Festplattenlaufwerk 800-24, dem DVD-ROM 800-01 oder der IC-Karte gespeichert sind, und überträgt die gelesenen Übertragungsdaten zum Netzwerk 800-50 oder schreibt die vom Netzwerk 800-50 empfangenen Empfangsdaten in einem Empfangszwischenspeicherbereich oder Ähnliches in dem Aufzeichnungsmedium.
  • Die CPU 800-12 kann darüber hinaus veranlassen, dass die gesamte oder ein erforderlicher Teil einer Datei oder einer Datenbank in den RAM 800-14 gelesen wird, wobei die Datei oder Datenbank in einem externen Aufzeichnungsmedium wie dem Festplattenlaufwerk 800-24, dem DVD-ROM-Laufwerk 800-26 (DVD-ROM 800-01), der IC-Karte usw. gespeichert ist, und kann verschiedene Arten von Verarbeitung in Verbindung mit den Daten im RAM 800-14 durchführen. Die CPU 800-12 kann die verarbeiteten Daten wieder in das externe Aufzeichnungsmedium schreiben.
  • Verschiedene Arten von Informationen wie beispielsweise verschiedene Arten von Programmen, Daten, Tabellen und Datenbanken können in dem Aufzeichnungsmedium gespeichert werden, um eine Informationsverarbeitung zu durchlaufen. Die CPU 800-12 kann verschiedene Arten von Verarbeitung in Verbindung mit dem aus dem RAM 800-14 gelesenen Daten durchführen, wozu verschiedene Arten von Arbeitsschritten, Informationsverarbeitung, Zustandsbeurteilung, bedingte Verzweigung, unbedingte Verzweigung, Suchen/Ersetzen von Informationen usw. gehören, wie in dieser Offenbarung beschrieben und durch eine Anweisungssequenz von Programmen gekennzeichnet, und kann das Ergebnis zurück in den RAM 800-14 schreiben.
  • Die CPU 800-12 kann darüber hinaus nach Informationen in einer Datei, Datenbank usw. im Aufzeichnungsmedium suchen. Wenn beispielsweise eine Mehrzahl von Einträgen, die jeweils einen Attributwert eines ersten Attributs aufweisen, das einem Attributwert eines zweiten Attributs zugehörig ist, im Aufzeichnungsmedium gespeichert ist, kann die CPU 800-12 aus der Mehrzahl von Einträgen nach einem Eintrag suchen, der der Bedingung entspricht, deren Attributwert des ersten Attributs bezeichnet ist, und den Attributwert des zweiten Attributs lesen, das in dem Eintrag gespeichert ist, wodurch der Attributwert des zweiten Attributs abgerufen wird, das dem ersten Attribut zugehörig ist, das die zuvor festgelegte Bedingung erfüllt.
  • Die vorstehend erläuterten Programm- oder Software-Module können in den durch einen Computer lesbaren Medien im Computer 800 oder in dessen Nachbarschaft gespeichert werden. Ein Aufzeichnungsmedium wie eine Festplatte oder ein RAM in einem Serversystem, das mit einem bestimmten Datenübertragungsnetzwerk oder dem Internet verbunden ist, kann darüber hinaus als die durch einen Computer lesbaren Medien verwendet werden und dem Computer 800 dadurch das Programm über das Netzwerk bereitstellen.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann (ein) durch einen Computer lesbare(s) Speichermedium (oder -medien) beinhalten, auf dem/denen durch einen Computer lesbare Programmanweisungen gespeichert ist/sind, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder gehobene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. einen Lichtwellenleiter durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern bzw. Schaubildern mittels durch einen Computer lesbare Programmanweisungen ausgeführt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, sodass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, sodass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, einen Herstellungsartikel aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaltbilder bzw. Schaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, sodass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaltbilder bzw. Schaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaltbilder bzw. Schaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. Schaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Ausführungsformen der vorliegenden Erfindung wurden zwar beschrieben, der technische Umfang der Erfindung ist jedoch nicht auf die vorstehend beschriebenen Ausführungsformen beschränkt. Fachleuten ist ersichtlich, dass verschiedene Änderungen und Verbesserungen zu den vorstehend beschriebenen Ausführungsformen hinzugefügt werden können. Aus dem Umfang der Ansprüche ergibt sich ebenfalls, dass die Ausführungsformen mit diesen Änderungen oder Verbesserungen in den technischen Umfang der Erfindung aufgenommen werden können.
  • Die Arbeitsschritte, Verfahren, Schritte und Phasen jedes Prozesses, die von einer Vorrichtung, einem System, einem Programm und einem Verfahren ausgeführt werden, die in den Ansprüchen, Ausführungsformen oder Schaubildern aufgeführt sind, können in beliebiger Reihenfolge ausgeführt werden, solange die Reihenfolge nicht durch „vor“ oder dergleichen angegeben ist und solange die Ausgabe aus einem vorherigen Prozess nicht in einem späteren Prozess verwendet wird. Auch wenn der Ablaufplan anhand von Begriffen wie „zuerst“ oder „als Nächstes“ in den Ansprüchen, Ausführungsformen oder Schaubildern beschrieben wird, bedeutet dies nicht unbedingt, dass der Prozess in dieser Reihenfolge durchgeführt werden muss.
  • Wie vorstehend dargelegt, ermöglichen die Ausführungsformen der vorliegenden Erfindung einer Lernvorrichtung, ein Modell, das den Eingabedaten der Zeitreihen entspricht, dazu zu bringen, eine höhere Ausdrucksfähigkeit und Lernfähigkeit zu haben und den Lernvorgang einfacher durchzuführen.

Claims (25)

  1. Verfahren, das aufweist: Abrufen eines Unterschieds zwischen gemeinsamen Daten an einem ersten Zeitpunkt und den gemeinsamen Daten an einem zweiten Zeitpunkt, der sich vom ersten Zeitpunkt unterscheidet, von mindestens einem ersten Knoten aus einer Mehrzahl von ersten Knoten; Erzeugen einer ersten Momentaufnahme der gemeinsamen Daten am ersten Zeitpunkt auf Grundlage des Unterschieds; Abrufen eines Hashwertes der gemeinsamen Daten am ersten Zeitpunkt von mindestens einem der Mehrzahl von ersten Knoten; und Überprüfen der ersten Momentaufnahme am ersten Zeitpunkt anhand des Hashwertes der gemeinsamen Daten am ersten Zeitpunkt.
  2. Verfahren nach Anspruch 1, das weiterhin ein Speichern einer Mehrzahl von Momentaufnahmen der gemeinsamen Daten an unterschiedlichen Zeitpunkten durch einen Momentaufnahmeknoten aufweist.
  3. Computerprogrammprodukt mit Anweisungen, die in einem nichtflüchtigen, durch einen Computer lesbaren Speichermedium oder einer programmierbaren Schaltung enthalten sind, wobei die Anweisungen von einem Prozessor bzw. der programmierbaren Schaltung ausführbar sind, um den Prozessor oder die programmierbare Schaltung zu veranlassen, das Verfahren nach Anspruch 1 durchzuführen.
  4. Computerprogrammprodukt nach Anspruch 3, wobei die Arbeitsschritte weiterhin ein Speichern einer Mehrzahl von Momentaufnahmen der gemeinsamen Daten an unterschiedlichen Zeitpunkten aufweisen.
  5. Computerprogrammprodukt nach Anspruch 4, wobei die erste Momentaufnahme der gemeinsamen Daten am ersten Zeitpunkt weiterhin auf Grundlage einer zweiten Momentaufnahme am zweiten Zeitpunkt erzeugt wird.
  6. Computerprogrammprodukt nach Anspruch 5, wobei der Unterschied auf einer Aktualisierung der gemeinsamen Daten mit mindestens einer gemeinsamen Transaktion zwischen dem ersten Zeitpunkt und dem zweiten Zeitpunkt beruht.
  7. Computerprogrammprodukt nach Anspruch 5, wobei es sich bei dem ersten Zeitpunkt um einen spätesten Zeitpunkt handelt.
  8. Computerprogrammprodukt nach Anspruch 3, wobei die Arbeitsschritte weiterhin aufweisen: Berechnen eines Hashwertes der ersten Momentaufnahme der gemeinsamen Daten am ersten Zeitpunkt; wobei das Überprüfen der ersten Momentaufnahme ein Ermitteln beinhaltet, ob der Hashwert der ersten Momentaufnahme gleich ist wie der Hashwert der gemeinsamen Daten am ersten Zeitpunkt.
  9. Computerprogrammprodukt nach Anspruch 8, wobei die Arbeitsschritte weiterhin aufweisen: Speichern der ersten Momentaufnahme der gemeinsamen Daten am ersten Zeitpunkt als Reaktion auf ein Feststellen, dass der Hashwert der ersten Momentaufnahme gleich ist wie der Hashwert der gemeinsamen Daten am ersten Zeitpunkt.
  10. Computerprogrammprodukt nach Anspruch 8, wobei die Arbeitsschritte weiterhin aufweisen: Abrufen eines Unterschieds zwischen den gemeinsamen Daten am ersten Zeitpunkt und der gemeinsamen Daten am zweiten Zeitpunkt von mindestens einem anderen ersten Knoten aus der Mehrzahl von ersten Knoten als Reaktion auf ein Feststellen, dass der Hashwert der ersten Momentaufnahme nicht gleich ist wie der Hashwert der gemeinsamen Daten am ersten Zeitpunkt.
  11. Computerprogrammprodukt nach Anspruch 3, wobei die Arbeitsschritte weiterhin aufweisen: Ermitteln, ob eine Mehrzahl von Hashwerten von gemeinsamen Daten am ersten Zeitpunkt gleich ist; wobei das Abrufen des Hashwertes der gemeinsamen Daten am ersten Zeitpunkt von dem mindestens ersten Knoten aus der Mehrzahl von ersten Knoten ein Abrufen der Mehrzahl von Hashwerten der gemeinsamen Daten am ersten Zeitpunkt von zwei oder mehr der ersten Knoten beinhaltet.
  12. Computerprogrammprodukt nach Anspruch 3, wobei das Abrufen des Hashwertes der gemeinsamen Daten am ersten Zeitpunkt von dem mindestens ersten Knoten aus der Mehrzahl von ersten Knoten ein Abrufen des Hashwertes der gemeinsamen Daten am ersten Zeitpunkt beinhaltet, an dem ein Konsens durch die Mehrzahl von ersten Knoten hergestellt wird.
  13. Momentaufnahmeknoten, der aufweist: das Computerprogrammprodukt nach Anspruch 3, und einen Prozessor oder eine programmierbare Schaltung, der/die die im Computerprogrammprodukt enthaltenen Anweisungen ausführt.
  14. Momentaufnahmeknoten nach Anspruch 13, der weiterhin einen Speicher zum Speichern einer Mehrzahl von Momentaufnahmen der gemeinsamen Daten an unterschiedlichen Zeitpunkten aufweist.
  15. System, das aufweist: den Momentaufnahmeknoten nach Anspruch 13; und die Mehrzahl von ersten Knoten, wobei die Mehrzahl von ersten Knoten gemeinsam so konfiguriert ist, dass: sie die gemeinsamen Daten speichert; und die gemeinsamen Daten mit gemeinsamen Transaktionen aktualisiert.
  16. Verfahren, das aufweist: Empfangen einer Momentaufnahme eines dritten Zeitpunkts von einem Momentaufnahmeknoten, der eine Mehrzahl von Momentaufnahmen von gemeinsamen Daten an unterschiedlichen Zeitpunkten speichert; Berechnen eines Hashwertes der Momentaufnahme des dritten Zeitpunkts; Empfangen eines Hashwertes von gemeinsamen Daten am dritten Zeitpunkt von mindestens einem ersten Knoten aus einer Mehrzahl von ersten Knoten, die die gemeinsamen Daten speichert und die gemeinsamen Daten mit gemeinsamen Transaktionen durch die Mehrzahl von ersten Knoten aktualisiert; und Ermitteln, ob der Hashwert der Momentaufnahme am dritten Zeitpunkt gleich ist wie der Hashwert der gemeinsamen Daten am dritten Zeitpunkt.
  17. Computerprogrammprodukt mit Anweisungen, die in einem nichtflüchtigen, durch einen Computer lesbaren Speichermedium oder einer programmierbaren Schaltung enthalten sind, wobei die Anweisungen von einem Prozessor bzw. der programmierbaren Schaltung ausführbar sind, um den Prozessor oder die programmierbare Schaltung zu veranlassen, das Verfahren nach Anspruch 16 durchzuführen.
  18. Computerprogrammprodukt nach Anspruch 17, wobei die Arbeitsschritte weiterhin aufweisen: Empfangen mindestens einer gemeinsamen Transaktion zwischen dem dritten Zeitpunkt und einem vierten Zeitpunkt von mindestens einem ersten Knoten aus der Mehrzahl von ersten Knoten; und Erzeugen der gemeinsamen Daten am vierten Zeitpunkt auf Grundlage der Momentaufnahme der gemeinsamen Daten am dritten Zeitpunkt und der mindestens einen gemeinsamen Transaktion als Reaktion auf ein Feststellen, dass der Hashwert der Momentaufnahme des dritten Zeitpunkts gleich ist wie der Hashwert der gemeinsamen Daten am dritten Zeitpunkt.
  19. Computerprogrammprodukt nach Anspruch 18, wobei der dritte Zeitpunkt vor dem vierten Zeitpunkt liegt.
  20. Computerprogrammprodukt nach Anspruch 19, wobei die Arbeitsschritte weiterhin aufweisen: Empfangen einer Momentaufnahme an einem fünften Zeitpunkt, der vor dem dritten Zeitpunkt liegt, von dem Momentaufnahmeknoten als Reaktion auf ein Feststellen, dass der Hashwert der Momentaufnahme des dritten Zeitpunkts nicht gleich ist wie der Hashwert der gemeinsamen Daten am dritten Zeitpunkt; und Empfangen eines Hashwertes der gemeinsamen Daten am fünften Zeitpunkt von mindestens einem der Mehrzahl von ersten Knoten.
  21. Computerprogrammprodukt nach Anspruch 18, wobei der dritte Zeitpunkt nach dem vierten Zeitpunkt liegt.
  22. Computerprogrammprodukt nach Anspruch 19, wobei die Arbeitsschritte weiterhin aufweisen: Empfangen einer Momentaufnahme an einem sechsten Zeitpunkt, der nach dem dritten Zeitpunkt liegt, von dem Momentaufnahmeknoten als Reaktion auf ein Feststellen, dass der Hashwert der Momentaufnahme des dritten Zeitpunkts nicht gleich ist wie der Hashwert der gemeinsamen Daten am dritten Zeitpunkt; und Empfangen eines Hashwertes der gemeinsamen Daten am sechsten Zeitpunkt von mindestens einem der Mehrzahl von ersten Knoten.
  23. Prüfknoten, der aufweist: das Computerprogrammprodukt nach Anspruch 17, und einen Prozessor oder eine programmierbare Schaltung, der/die die im Computerprogrammprodukt enthaltenen Anweisungen ausführt.
  24. Prüfknoten nach Anspruch 23, der mindestens eine gemeinsame Transaktion zwischen dem dritten Zeitpunkt und einem vierten Zeitpunkt von dem mindestens einen ersten Knoten aus der Mehrzahl von ersten Knoten empfängt; und die gemeinsamen Daten am vierten Zeitpunkt auf Grundlage der Momentaufnahme der gemeinsamen Daten am dritten Zeitpunkt und der mindestens einen gemeinsamen Transaktion als Reaktion auf ein Feststellen erzeugt, dass der Hashwert der Momentaufnahme des dritten Zeitpunkts gleich ist wie der Hashwert der gemeinsamen Daten am dritten Zeitpunkt.
  25. System, das aufweist: den Prüfknoten nach Anspruch 23, die Mehrzahl von ersten Knoten, wobei die Mehrzahl von ersten Knoten gemeinsam so konfiguriert ist, dass: sie die gemeinsamen Daten speichert; und die gemeinsamen Daten mit gemeinsamen Transaktionen aktualisiert; und den Momentaufnahmeknoten, wobei der Momentaufnahmeknoten so konfiguriert ist, dass er eine Mehrzahl von Momentaufnahmen der gemeinsamen Daten an verschiedenen Zeitpunkten speichert.
DE112017007224.7T 2017-05-03 2017-12-06 Momentaufnahmen-Verwaltung in einer Blockchain Pending DE112017007224T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/585,913 US10896165B2 (en) 2017-05-03 2017-05-03 Management of snapshot in blockchain
US15/585,913 2017-05-03
PCT/IB2017/057695 WO2018203119A1 (en) 2017-05-03 2017-12-06 Management of snapshot in blockchain

Publications (1)

Publication Number Publication Date
DE112017007224T5 true DE112017007224T5 (de) 2019-12-12

Family

ID=64014754

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112017007224.7T Pending DE112017007224T5 (de) 2017-05-03 2017-12-06 Momentaufnahmen-Verwaltung in einer Blockchain

Country Status (6)

Country Link
US (3) US10896165B2 (de)
JP (1) JP7093599B2 (de)
CN (1) CN110574020B (de)
DE (1) DE112017007224T5 (de)
GB (1) GB2575401A (de)
WO (1) WO2018203119A1 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10261865B1 (en) * 2018-04-27 2019-04-16 Cohesity, Inc. Fast and optimized restore using delta information
CN110020854B (zh) * 2018-11-27 2020-11-17 创新先进技术有限公司 一种基于多个区块链网络的数据存证方法及系统
CN111382119B (zh) * 2018-12-29 2023-08-22 华为技术有限公司 区块数据归档方法及相关设备
WO2020218478A1 (ja) * 2019-04-26 2020-10-29 株式会社シーズ 電子機器、情報処理システム
JP6991427B2 (ja) * 2019-04-26 2022-01-12 株式会社シーズ 電子機器、情報処理システム
CN110138566A (zh) * 2019-05-14 2019-08-16 数字钱包(北京)科技有限公司 验证方法、装置、电子设备及计算机可读存储介质
JP6782331B1 (ja) * 2019-05-16 2020-11-11 株式会社日立製作所 バックアップシステム
US11182403B2 (en) * 2019-05-22 2021-11-23 Chainstack Pte. Ltd. Systems and methods of launching new nodes in a blockchain network
WO2019228571A2 (en) * 2019-09-12 2019-12-05 Alibaba Group Holding Limited Log-structured storage systems
SG11202002587TA (en) 2019-09-12 2020-04-29 Alibaba Group Holding Ltd Log-structured storage systems
US11593316B2 (en) * 2019-10-16 2023-02-28 International Business Machines Corporation Database snapshot for managing state synchronization
US11354198B2 (en) 2019-11-19 2022-06-07 International Business Machines Corporation Snapshot for world state recovery
US11354268B2 (en) * 2020-01-08 2022-06-07 EMC IP Holding Company LLC Optimizing snapshot creation
CN111698278B (zh) * 2020-04-10 2021-06-25 湖南大学 一种基于区块链的多云数据存储方法
US11720453B2 (en) * 2020-04-28 2023-08-08 Akamai Technologies, Inc. High performance distributed system of record with unspent transaction output (UTXO) database snapshot integrity
US20230315579A1 (en) * 2022-03-31 2023-10-05 Rubrik, Inc. Blockchain for cloud data management

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829617B2 (en) * 2002-02-15 2004-12-07 International Business Machines Corporation Providing a snapshot of a subset of a file system
JP4520701B2 (ja) * 2003-02-28 2010-08-11 セイコープレシジョン株式会社 データの真正性が保証されるデータベースとそのバックアップシステム及び方法
CN102084350B (zh) * 2008-07-02 2013-09-18 惠普开发有限公司 数据的远程副本的验证
US8615489B2 (en) * 2008-08-25 2013-12-24 Vmware, Inc. Storing block-level tracking information in the file system on the same block device
US20100114832A1 (en) * 2008-10-31 2010-05-06 Lillibridge Mark D Forensic snapshot
US8533469B2 (en) 2009-11-23 2013-09-10 Fujitsu Limited Method and apparatus for sharing documents
US20110252208A1 (en) * 2010-04-12 2011-10-13 Microsoft Corporation Express-full backup of a cluster shared virtual machine
JP5772458B2 (ja) * 2011-09-29 2015-09-02 富士通株式会社 データ管理プログラム、ノード、および分散データベースシステム
US20150379510A1 (en) 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
US8768977B2 (en) * 2012-07-31 2014-07-01 Hewlett-Packard Development Company, L.P. Data management using writeable snapshots in multi-versioned distributed B-trees
US9633035B2 (en) * 2013-01-13 2017-04-25 Reduxio Systems Ltd. Storage system and methods for time continuum data retrieval
CN103559224A (zh) * 2013-10-18 2014-02-05 华为技术有限公司 一种对元数据对象进行散列的方法及装置
US9529810B2 (en) 2014-02-18 2016-12-27 Ca, Inc. Methods of synchronizing files including synchronized hash map linked lists and related data processing nodes
AU2016206826A1 (en) * 2015-01-13 2016-12-22 Hewlett Packard Enterprise Development Lp Systems and methods for oprtimized signature comparisons and data replication
JP6364132B2 (ja) 2015-03-31 2018-07-25 ナスダック, インコーポレイテッドNasdaq, Inc. ブロックチェーン取引記録のシステムおよび方法
US10078555B1 (en) * 2015-04-14 2018-09-18 EMC IP Holding Company LLC Synthetic full backups for incremental file backups
US10019452B2 (en) 2015-05-19 2018-07-10 Morgan Stanley Topology aware distributed storage system
US10805393B2 (en) 2015-12-02 2020-10-13 Olea Networks, Inc. System and method for data management structure using auditable delta records in a distributed environment
US20170236120A1 (en) 2016-02-11 2017-08-17 Oracle International Corporation Accountability and Trust in Distributed Ledger Systems
US10812582B2 (en) * 2016-03-10 2020-10-20 Vmware, Inc. Management of applications across nodes using exo-clones
WO2017189027A1 (en) 2016-04-29 2017-11-02 Digital Asset Holdings Digital asset modeling
SG11201809963XA (en) * 2016-05-11 2018-12-28 Nasdaq Inc Application framework using blockchain-based asset ownership
CN106055597B (zh) 2016-05-24 2022-05-20 布比(北京)网络技术有限公司 数字交易系统、及用于其的账户信息查询方法
US10204341B2 (en) * 2016-05-24 2019-02-12 Mastercard International Incorporated Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees
US10705221B2 (en) * 2016-06-08 2020-07-07 The Boeing Company On-board backup and anti-spoofing GPS system
US10055446B2 (en) * 2016-06-16 2018-08-21 The Bank Of New York Mellon Ensuring data integrity of executed transactions
US10216612B1 (en) * 2016-07-01 2019-02-26 Fundi Software Pty Ltd System and method for accessing server information
US10114980B2 (en) * 2016-07-21 2018-10-30 Acronis International Gmbh System and method for verifying data integrity using a blockchain network
US10339014B2 (en) * 2016-09-28 2019-07-02 Mcafee, Llc Query optimized distributed ledger system
US10447480B2 (en) 2016-12-30 2019-10-15 Guardtime Sa Event verification receipt system and methods

Also Published As

Publication number Publication date
GB201915741D0 (en) 2019-12-11
GB2575401A (en) 2020-01-08
US20180322161A1 (en) 2018-11-08
CN110574020A (zh) 2019-12-13
CN110574020B (zh) 2023-05-12
US10896166B2 (en) 2021-01-19
US11403278B2 (en) 2022-08-02
US10896165B2 (en) 2021-01-19
US20180322160A1 (en) 2018-11-08
JP7093599B2 (ja) 2022-06-30
WO2018203119A1 (en) 2018-11-08
JP2020520499A (ja) 2020-07-09
US20210089511A1 (en) 2021-03-25

Similar Documents

Publication Publication Date Title
DE112017007224T5 (de) Momentaufnahmen-Verwaltung in einer Blockchain
DE112012005533B4 (de) Unterstützende Abfrage und ein Abfragen
DE202017007517U1 (de) Aggregatmerkmale für maschinelles Lernen
DE112017007656T5 (de) Verschobene aktualisierung von datenbank-hashcode in einer blockchain
DE102016103769A1 (de) Inkrementelle Replikation eines Quellen-Datasets
DE102016204710A1 (de) Sichern und Wiederherstellen von Klondaten
DE112013000465B4 (de) Verwaltung einer fernen Datenreplikation
DE112019001480T5 (de) Automatisches Optimieren der Ressourcennutzung in einemZieldatenbankverwaltungssystem zum Erhöhen der Arbeitslastleistung
DE112011100618T5 (de) Verwalten von Schreiboperationen auf einen Speicherbereich von Spuren, der zwischen Speichereinheiten verlagert wird
DE202017107393U1 (de) Vorhersagen eines Suchmaschinen-Einordnungssignalwerts
DE102013201174A1 (de) Online-Überprüfung einer Standby-Datenbank in physischen Replikationsumgebungen mit Protokollversand
DE112021003908T5 (de) Föderales maschinenlernen durch verwenden von ortsabhängigem hashing
DE112021001986T5 (de) Verfahren und System zum Verarbeiten von Datenaufzeichnungen
DE112018001290T5 (de) Verfahren zum Schätzen der Löschbarkeit von Datenobjekten
DE112013005993T5 (de) Verfahren, Vorrichtung und computerlesbares Medium für eine optimale Bestimmung von Daten-Teilmengen
DE112021003747T5 (de) Erkennen von anomalien in einer netzwerktopologie
DE112021000338T5 (de) Auslagern der statistikerfassung
DE112020000545T5 (de) Deep-forest-modell-entwicklung und -training
DE112020001034T5 (de) Seltene fälle berücksichtigende trainingsdaten für künstliche intelligenz
DE112018006540T5 (de) Dynamisches ersetzen eines aufrufs einer software-bibliothek durch einen aufruf eines beschleunigers
DE112021002883T5 (de) Automatisierte rückmeldung und kontinuierliches lernen zur abfrageoptimierung
DE112019003255T5 (de) Auslagern von spuren mit lücken in einem speichersystem
DE112018004138T5 (de) Asynchrone aktualisierung von metadatenspuren in reaktion auf einen mittels einer e/a-operation über eine busschnittstelle erzeugten cachetreffer
DE112018005620T5 (de) Auftragsverwaltung in einem datenverarbeitungssystem
DE112021005437T5 (de) Aktualisierung und überwachung eines entfernt angeordneten systems

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017300000

Ipc: G06F0015160000

R084 Declaration of willingness to licence