-
Technisches Gebiet
-
Diese Anmeldung bezieht sich im Allgemeinen auf Betrugsverhinderung und im Besonderen auf ein Bereitstellen einer Out-of-band-Verifizierung für Blockchain-Transaktionen.
-
Hintergrund
-
Transaktionssysteme, insbesondere Finanzsysteme, werden fortlaufend durch betrügerische Dritte angegriffen. Während es oft schwierig ist, zentrale Finanzsysteme zu kompromittieren, versuchen Hacker häufig, an der Peripherie Nachweisdaten für die Berechtigungsprüfung zu erhalten und auf die Systeme zuzugreifen, von denen diese Transaktionen stammen und/oder die den Endpunkt dieser Transaktionen bilden. Sollte ein Transaktionsendpunkt kompromittiert werden, können in dem zentralen Finanzsystem Finanztransaktionen durchgeführt werden, die scheinbar rechtmäßig sind. Der Hacker kann dann auch eine Aufzeichnung solcher Transaktionen so abändern, dass die Ursprungsfinanzinstitution so lange nichts von den betrügerischen Transaktionen erfährt, bis sie von einem Dritten darauf hingewiesen wird. Die Kosten und der Reputationsverlust sowohl für die Ursprungsfinanzinstitution als auch für die Finanzsysteme sind hoch.
-
Zum gegenwärtigen Zeitpunkt gibt es eine Vielfalt an Einheiten und Software für die Zwei-Faktor-Berechtigungsprüfung, die von verschiedenen Herstellern stammen. Zu den bekanntesten zählt das RSA-Token für die Zwei-Faktor-Berechtigungsprüfung, das Zufallszahlen erzeugt. Diese Zufallszahl wird zusätzlich zu einer Benutzerkennung/einem Benutzerkennwort als ein Faktor für die Berechtigungsprüfung verwendet. Hersteller haben damit begonnen, mobile Einheiten (z.B. Mobiltelefone, Smartphones, Tablets) und eMail-Konten zur Durchführung einer Zwei-Faktor-Berechtigungsprüfung zu verwenden. Die Blockchain-Technologie ist in der Lage, einen dezentralen, dauerhaften Mehrparteien-Datensatz zu einer Gruppe von Ereignissen zu unterstützen. Dabei können sowohl nicht zugangsbeschränkte („permissionless“) Blockchains, bei denen anonyme Teilnehmer Ereignisse aufzeichnen (z.B. Kryptowährungen zwischen Parteien übertragen), als auch eine zugangsbeschränkte („permissioned“) Blockchain verwendet werden. Zugangsbeschränkte Blockchains sind für die Datenübertragung von Ereignissen vorgesehen, bei denen die Parteien zumindest ein Mindestniveau an gegenseitigem Vertrauen haben, und Ereignisse, die für zwei oder mehr Parteien von Interesse sind, können auf in öffentlicher Form aufgezeichnet werden. Obwohl die Ereignisse öffentlich sind, können Verschlüsselungstechnologien verwendet werden, um die Offenlegung der Einzelheiten der Ereignisse zu begrenzen, die an die Blockchain geschickt werden. Die Offenlegung kann auf zwei oder auf mehrere Parteien begrenzt werden. Manche zugangsbeschränkten Blockchains wie z.B. ein dezentrales Hauptbuch („distributed ledger“) verfügen über ein Konzept einer „Prüffunktion“, bei der ein Dritter verschiedene Transaktionen in der Blockchain auch dann verifizieren kann, wenn die in der Blockchain aufgezeichneten Transaktionen verschlüsselt sind. Eine mathematische Modellierung kann dazu verwendet werden, eine Verhaltensmodellierung durchzuführen und anomale Ereignisse in einem Strom von Transaktionen zu erkennen. Dies kommt bei einer Vielzahl von Finanzkanälen häufig zum Einsatz, z.B. bei Geldautomaten, Debit-/Kreditkarten, ACHs (Automated Clearing House, elektronisches Clearingsystem), Scheckeinreichungen und Überweisungen. Hierfür wurden viele mathematische Modellierungstechniken wie SVM (Support Vector Machines), logistische Regression, Entscheidungsbäume, neuronale Netzwerke usw. verwendet. Allerdings muss nach wie vor eine Verifizierung der Transaktionen durchgeführt werden, um die Wahrscheinlichkeit eines Betrugs zu verringern.
-
Die
US 2014 / 0 025 575 A1 ist auf die Zusammenarbeit zwischen vernetzten Geräten gerichtet, um eine Out-of-Band-Verifizierung anzustreben, dass eine Online-Transaktion von einer dazu berechtigten Person angefordert wird. Eine Vorrichtung umfasst eine Prozessorschaltung und einen Speicher, der kommunikativ mit der Prozessorschaltung verbunden ist und eine Folge von Befehlen speichert, die auf der Prozessorschaltung wirksam sind, um eine Transaktionsanforderung zu empfangen, die die Durchführung einer Transaktion über einen ersten Kommunikationskanal von einer Transaktionsvorrichtung anfordert; eine Verifizierungsanforderung über einen zweiten Kommunikationskanal an eine andere Rechenvorrichtung zu übertragen; eine Antwort auf die Verifizierungsanforderung über den zweiten Kommunikationskanal zu empfangen; und die Transaktion als Reaktion auf eine Anzeige in der Antwort, dass die Transaktion verifiziert worden ist, durchzuführen.
-
Die
US 2017 / 0 046 698 A1 offenbart computergestützte Systeme und Verfahren, die gesicherte Blockchain-basierte Ledger-Strukturen erzeugen, die die ereignisbasierte Kontrolle von verfolgten Vermögenswerten erleichtern. In einem Beispiel kann ein Gerät, das mit einer Regelautorität des gesicherten Blockchain-basierten Ledgers verbunden ist, Daten erhalten, die auf einen eingeleiteten Geldtransfer zwischen Parteien hinweisen, und auf einen Satz von Beschränkungen, die dem eingeleiteten Transfer auferlegt wurden, und einen Satz von Regeln, die mit den Beschränkungen verbunden sind, zugreifen und diese entschlüsseln. Diese können unter Verwendung eines vertraulich gehaltenen kryptografischen Hauptschlüssels in den gesicherten Blockchain-basierten Ledger gehasht werden. Das Gerät kann feststellen, dass die eingeleitete Übertragung gegen mindestens eine der Beschränkungen verstößt, und kann Operationen durchführen, die mit mindestens einer der Regeln übereinstimmen, die mit der mindestens einen verletzten Beschränkung verbunden sind.
-
Die
US 2018 / 0 189 878 A1 offenbart ein Verfahren zum Registrieren eines Punktverteilers und eines Wechselkurses für einen vereinigten Punktdienst. Das Verfahren umfasst die folgenden Schritte: ein Systemverwaltungsserver (a) verifiziert eine Registrierungstransaktion TrxA oder eine Bestätigungstransaktion TrxB, wenn (i) eine Bedingung, dass die TrxA, die einen öffentlichen Schlüssel eines Punktverwaltungsservers und einen ersten XEA, einen Wechselkurs eines Punktes A eines Punktverteilers zu dem vereinigten Punkt, aufweist, von einem Punktverteilungsserver erworben wird, oder (ii) eine Bedingung, dass die TrxB, die einen öffentlichen Schlüssel des Punktverteilungsservers und einen zweiten XEA aufweist, von dem Punktverwaltungsserver erworben wird, erfüllt ist; und (b) wenn die TrxA oder die TrxB gültig ist, (i) Aufzeichnen dieser in einer Blockchain-Datenbank, (ii) Initialisieren einer Saldo-Datenbank durch Aktualisieren eines Saldos des Punktverteilers und (iii) Erfassen einer Transaktions-ID der TrxA, der TrxB.
-
Kurzdarstellung
-
Zu den der Erfindung zugrundeliegenden Aufgaben zählt, die Wahrscheinlichkeit eines Betrugs bei der Freigabe einer an eine Blockchain gerichteten Transaktion zu verringern.
-
Eine Beispielausführungsform kann ein Verfahren beinhalten, das einen oder mehrere Schritte eines Empfangens einer oder mehrerer Transaktionsanforderungen, um eine oder mehrere Transaktionen abzuschließen, eines Aufzeichnens der einen oder der mehreren Transaktionsanforderungen in einer Blockchain, eines Anforderns einer oder mehrerer Bestätigungen von einer Out-of-band-Einheit, um die eine oder die mehreren Transaktionen zu bestätigen, und eines Festschreibens der einen oder der mehreren Transaktionen in der Blockchain beinhaltet.
-
Eine weitere Beispielausführungsform kann ein Verfahren beinhalten, das einen oder mehrere Schritte eines Empfangens einer oder mehrerer Transaktionsanforderungen, um eine oder mehrere Transaktionen abzuschließen, eines Aufzeichnens der einen oder der mehreren Transaktionsanforderungen in einer Blockchain, eines Unterzeichnens der einen oder der mehreren Transaktionen über ein Einmal-Signaturschema, das einen privaten Schlüssel und einen öffentlichen Einmal-Schlüssel aufweist, über eine Out-of-band-Einheit und eines Festschreibens der einen oder der mehreren Transaktionen in der Blockchain beinhaltet.
-
Eine weitere Beispielausführungsform kann eine Vorrichtung, die einen oder mehrere Empfänger beinhaltet, die so konfiguriert sind, dass sie eine oder mehrere Transaktionsanforderungen empfangen, um eine oder mehrere Transaktionen abzuschließen, und einen Prozessor beinhalten, der so konfiguriert ist, dass er die eine oder die mehreren Transaktionsanforderungen in einer Blockchain aufzeichnet, eine oder mehrere Transaktionsbestätigungen von einer Out-of-band-Einheit anfordert, um die eine oder die mehreren Transaktionen zu bestätigen, und die eine oder die mehreren bestätigten Transaktionen in der Blockchain festschreibt.
-
Noch eine weitere Beispielausführungsform kann ein Verfahren beinhalten, das ein durch einen Computer lesbares dauerhaftes Speichermedium beinhaltet, das so konfiguriert ist, dass es Befehle speichert, die bei Ausführung einen Prozessor dazu veranlassen, einen oder mehrere Schritte eines Empfangens einer oder mehrerer Transaktionsanforderungen, um eine oder mehrere Transaktionen abzuschließen, eines Aufzeichnens der einen oder der mehreren Transaktionsanforderungen in einer Blockchain, eines Anforderns einer oder mehrerer Bestätigungen von einer Out-of-band-Einheit, um die eine oder die mehreren Transaktionen zu bestätigen, und eines Festschreibens der einen oder der mehreren Transaktionen in der Blockchain durchzuführen.
-
Kurzbeschreibung der Zeichnungen
-
- 1 veranschaulicht ein Beispiel eines Protokollierens von Transaktionsdaten in einer Blockchain gemäß Beispielausführungsformen.
- 2 veranschaulicht eine Systemkonfiguration zum Verarbeiten einer neuen Transaktion und zum Validieren der Transaktion mit einer Out-of-band-Verifizierung gemäß Beispielausführungsformen.
- 3 veranschaulicht eine Darstellung einer Systemsignalübertragung zum Verarbeiten einer neuen Transaktion und zum Validieren der Transaktion mit einer Out-of-band-Verifizierung gemäß Beispielausführungsformen.
- 4A veranschaulicht einen Ablaufplan eines Beispielverfahrens für ein Verarbeiten einer Blockchain-Transaktion gemäß Beispielausführungsformen.
- 4B veranschaulicht einen Ablaufplan eines weiteren Beispielverfahrens für ein Verarbeiten einer Blockchain-Transaktion gemäß Beispielausführungsformen.
- 5 veranschaulicht eine Beispielnetzwerkeinheit, die so konfiguriert ist, dass sie eine oder mehrere der Beispielausführungsformen unterstützt.
-
Ausführliche Beschreibung
-
Es dürfte offensichtlich sein, dass die genannten Komponenten, wie sie hier allgemein beschrieben und in den Figuren veranschaulicht werden, in einer großen Vielfalt von verschiedenen Konfigurationen angeordnet und konzipiert werden können. Die folgende ausführliche Beschreibung der Ausführungsformen von mindestens einem Verfahren, einer Vorrichtung, einem durch einen Computer lesbaren dauerhaften Medium und System, wie sie in den beigefügten Figuren dargestellt sind, ist somit nicht als Beschränkung des Geltungsumfangs der beanspruchten Anmeldung, sondern lediglich als repräsentativ für ausgewählte Ausführungsformen zu verstehen.
-
Die in dieser Patentschrift beschriebenen Merkmale, Strukturen oder Kennzeichen können auf jede geeignete Art und Weise in einer oder mehreren Ausführungsformen miteinander kombiniert werden. So bezieht sich zum Beispiel die Verwendung der Formulierungen „Beispielausführungsformen“, „manche Ausführungsformen“ oder ähnlicher Formulierungen in dieser Patentschrift auf die Tatsache, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder ein bestimmtes Kennzeichen, das/die in Verbindung mit der Ausführungsform beschrieben wird, in mindestens einer Ausführungsform enthalten sein kann. Somit bezieht sich das Auftreten von Formulierungen wie „Beispielausführungsformen“, „in manchen Ausführungsformen“, „in anderen Ausführungsformen“ oder ähnlichen Formulierungen in dieser Patentschrift nicht notwendigerweise immer auf dieselbe Gruppe von Ausführungsformen, und die beschriebenen Merkmale, Strukturen oder Kennzeichen können auf jede geeignete Art und Weise in einer oder mehreren Ausführungsformen miteinander kombiniert werden.
-
Obwohl der Begriff „Nachricht“ möglicherweise in der Beschreibung von Ausführungsformen verwendet wurde, kann die Anmeldung außerdem auf viele Arten von Netzwerkdaten wie z.B. ein Paket, einen Datenrahmen, ein Datagramm und auf jegliche Äquivalente hiervon angewendet werden. Obwohl in beispielhaften Ausführungsformen bestimmte Arten von Nachrichten und Signalübertragung dargestellt sein können, sind diese des Weiteren nicht auf eine bestimmte Art von Nachricht beschränkt.
-
Die beschriebene Anmeldung bezieht sich auf Betrugsvermeidung in einer Blockchain und im Besonderen auf eine Verwendung einer Out-of-band-Verifizierung, um die Wahrscheinlichkeit von betrügerischen Transaktionen in der Blockchain zu verringern.
-
Gemäß Beispielausführungsformen können Blockchain-Transaktionen mit einem Schema für die Out-of-Band-Verifizierung oder -Berechtigungsprüfung kombiniert werden, das ein Prüfen der Blockchain und ein Überwachen auf Transaktionsbetrug ermöglicht. Während des Betriebs erlaubt ein sicheres Protokoll in einem dezentralen Hauptbuch einen geeigneten Zugriff auf Daten durch alle Teilnehmer, indem die Blockchain als ein vertrauenswürdiges „Schatten-Hauptbuch“ genutzt wird. Eine solche Konfiguration ermöglicht auch ein fortlaufendes Prüfen durch Dritte, um unberechtigte Transaktionen zu identifizieren und zu verhindern. Das Schema für die Out-of-Band-Verifizierung oder -Berechtigungsprüfung gestattet auch dann eine Bestätigung von Transaktionen durch einen berechtigten Nutzer, wenn die Nachweisdaten oder Client-Systeme für das primäre Transaktionssystem (z.B. ein zentrales Clearinghaus (Central Clearing House, CCH)) kompromittiert wurden. Andere Merkmale können eine optionale sichere Out-of-band-Unterzeichnung von Transaktionen und Analysen beinhalten, die einen Betrug auf Grundlage eines Überwachens von Transaktionen und entsprechender Validierungen erkennen.
-
Parallel zu jeder Transaktion werden Bestätigungstransaktionen durchgeführt, die als Bestätigungen erzeugt werden, welche die entsprechenden Blockchain-Transaktionen identifizieren. Durch das Bereitstellen von Hauptbuchdaten (wie z.B. Berechtigungsprüfungs-/Berechtigungsdaten), die mit dem Schema für die Out-of-Band-Verifizierung oder -Berechtigungsprüfung in Verbindung stehen, kann ein Prüfer betrügerische Transaktionen einwandfrei identifizieren, wenn Nachweisdaten für das CCH oder entsprechende Transaktionsübergabesysteme kompromittiert sind. Bei einer weiteren Ausführungsform kann ein Schema für die Out-of-Band-Verifizierung oder -Berechtigungsprüfung herangezogen werden, um eine Out-of-band-Einheit dazu zu verwenden, die an das CCH übergebenen Transaktionen zu unterzeichnen. Ein automatisiertes Prüfen kann durchgeführt werden, um nicht berechtigte Transaktionen auf systematische Art und Weise zu markieren, auch wenn Berichte zur Client-Bestätigung kompromittiert sind oder eine betrügerische Absprache vorliegt.
-
Beispielausführungsformen stellen auch sichere Analysen für die Betrugserkennung bereit, um anomale Verhaltensweisen zu identifizieren, wie beispielsweise solche mit niedrigen Transaktionswerten, für die keine Out-of-band-Berechtigung notwendig ist. Ein fortlaufendes Prüfen und Überwachen durch Dritte kann von bestimmten Organisationen durchgeführt werden, indem die Prüfverfahrensweisen verwendet werden, die den Beispielausführungsformen zugehörig sind. Transaktionsbestätigungen unter Verwendung einer Out-of-band-Berechtigungsprüfung/-Berechtigung für Transaktionen stellen Daten bereit, mit denen umfangreiche Analysen durchgeführt werden können, und identifizieren wahrscheinliche Fälle von Betrug.
-
1 veranschaulicht ein Beispiel eines Protokollierens von Transaktionsdaten in einer Blockchain gemäß Beispielausführungsformen. Mit Blick auf 1 beinhaltet eine Logikkonfiguration 100 einen Urheber 110 als eine Partei, die eine neue Blockchain-Transaktion 120 veranlasst. Ein CCH 130 empfängt und verarbeitet die Transaktionen, indem es für eine neue Transaktionsanforderung 112 eine Transaktionsquittierung 114 von einer Out-of-band-Einheit (Out-of-band Device, OOBD) 140 und eine festgeschriebene Transaktion 118 zu einem Hauptbuch 150 hinzufügt, sobald eine Bestätigung empfangen wird. Die OOBD 140 kann für ein Ausgeben einer Bestätigungsnachricht zuständig sein, die eine neue Transaktion 116 bestätigt. Jede Transaktion von dem Urheber 110 wird durch ein zentrales CCH 130 in einer Blockchain 150 aufgezeichnet. Eine Bestätigung der Transaktion wird anhand der OOBD 140 durchgeführt, die ein Smartphone, ein Mobiltelefon, einen Tablet, Desktop oder Laptop Computer und/oder eine beliebige Einheit, die einen Prozessor und einen Arbeitsspeicher enthält, beinhalten kann, ohne jedoch darauf beschränkt zu sein. Die OOBD 140 übergibt einen entsprechenden Blockchain-Eintrag, bei dem es sich um eine Sidechain, eine gesonderte Blockchain oder um dieselbe Blockchain handeln kann. Die durch das CCH und die OOBD erzeugten Blockchain-Einträge werden durch einen externen Prüfer abgeglichen. Etwaige CCH-Transaktionen ohne entsprechende OOBD-Transaktionen werden als möglicherweise betrügerisch gekennzeichnet, und sowohl das CCH als auch die OOBD werden durch eine Benachrichtigungsprozedur benachrichtigt. Parallel hierzu wird durch den externen Prüfer oder einen anderen Dritten auf Grundlage der an die Blockchain geschickten Transaktionen eine Transaktionsprofilerstellung durchgeführt. Anomale und verdächtige Transaktionen werden als möglicherweise betrügerisch gekennzeichnet, und sowohl das CCH als auch die OOBD werden benachrichtigt. Beispiele von verdächtigem Verhalten können eine große Menge von Kleinbetragstransaktionen (Zahlungen) an eine bestimmte Partei oder an eine unbekannte Partei oder unbekannte Parteien, Großbetragszahlungen an bekannte verdächtige Einheiten, Transaktionen zu ungewöhnlichen Tageszeiten oder außerhalb von Werktagen (z.B. an Feiertagen), mehrere erfolglose Versuche, eine Transaktion zu übergeben, fehlerhafte Zahlungsanweisungen (z.B. Falschschreibungen) und dergleichen beinhalten.
-
Ein zentrales Clearinghaus kann eine Finanzinstitution sein, die Clearing- und Settlementdienste für Finanztransaktionen wie z.B. Rohstoffderivate, Wertpapiertransaktionen usw. bereitstellt. Die Transaktionen können an einer Terminbörse oder Wertpapierbörse sowie außerbörslich im Freiverkehrsmarkt (Over-the-counter market, OTC-Markt) ausgeführt werden. Ein Clearinghaus steht zwischen zwei auch als Mitgliedsfirmen oder Clearingteilnehmern bezeichneten Clearingfirmen und hat die Aufgabe, das Risiko zu verringern, dass eine oder mehrere Clearingfirmen ihren Verpflichtungen aus der Handelsabwicklung nicht nachkommt. Ein Clearinghaus verringert die Abwicklungsrisiken, indem es Gegengeschäfte zwischen mehreren Gegenparteien aufrechnet, indem es auch als „Einschüsse“ bezeichnete Sicherheitseinlagen vorschreibt, indem es eine unabhängige Bewertung von Geschäften und Sicherheiten bereitstellt, indem es die Kreditwürdigkeit der Clearingfirmen überwacht und indem es in vielen Fällen einen Garantiefonds bereitstellt, der zur Abdeckung von Verlusten verwendet werden kann, welche die hinterlegten Sicherheiten einer ausfallenden Clearingfirma überschreiten. Sobald entweder an einer Börse oder in den OTC-Märkten ein Geschäft zwischen zwei Gegenparteien ausgeführt wurde, kann das Geschäft an ein Clearinghaus übergeben werden, das dann zwischen die Clearingfirmen der beiden ursprünglichen Händler tritt und das Gegenpartei-Ausfallrisiko für das Geschäft übernimmt.
-
Der Begriff „out-of-band“ kann jede Art der Datenübertragung außerhalb einer derzeitigen oder gängigen Art von Datenübertragung beinhalten. In einem Beispiel erfordert ein Verifizieren der Identität einer Person über ein unsicheres Datenübertragungssystem häufig, dass Daten out-of-band über ein weiteres Verfahren übertragen werden, das weniger verletzlich für dieselbe Art von Angriff ist. Ein Beispiel kann ein Überprüfen auf die Verwendung eines richtigen öffentlichen Schlüssels beinhalten, indem vor einer Verwendung des Schlüssels zum Verschlüsseln einer Datenübertragung eine Bestätigung durch die Person eingeholt wird. Eine Out-of-band-Berechtigungsprüfung (Out-of-band Authentication, OOBA) wird verwendet, wenn die Berechtigungsprüfung zwei verschiedene Signale von zwei verschiedenen Netzwerken oder Kanälen erfordert. Eine OOBA kann die gängigen Arten von Hacking und Identitätsdiebstahl bei Online-Bankgeschäften wirksam blockieren.
-
Bei dem unabhängigen Prüfer kann es sich um einen oder mehrere der Blockchain-Mitglieder handeln. Der Unabhängige kann ebenfalls einer oder mehrere der Beteiligten an der Blockchain, eine Regulierungsbehörde oder eine Vertragspartei zum Durchführen der Prüf- und Betrugserkennungsfunktionen usw. sein. Jeder dieser Beteiligten kann nur einen Teilsatz der Prüf- und/oder Betrugserkennungsfunktionen durchführen. Die Blockchain-Technologie unterstützt eine selektive Offenlegung von Daten zu den Transaktionen. Die gesamte Transaktion kann in Klartext vorliegen oder verschlüsselt sein, so dass nur ein Teilsatz der Blockchain-Teilnehmer wie z.B. ein Prüfer oder eine Regulierungsbehörde die Transaktionseinzelheiten einsehen kann. Entsprechend können ausgewählte Teile der Transaktion verschlüsselt oder hashverschlüsselt sein. Das Prüfen der Transaktionen kann auf Grundlage der verschlüsselten oder hashverschlüsselten Werte stattfinden oder kann fortgeschrittene Verschlüsselungstechniken verwenden, die über Datenschutzeigenschaften verfügen. Entsprechend kann durch die Verwendung von Analysetechniken die Verhaltensmodellierung und Anomalieerkennung für dieselben Daten durchgeführt werden und Verschlüsselungstechniken verwenden, die durch die Prüffähigkeiten verwendet werden. Gemäß Beispielausführungsformen gibt es einen gemeinsam genutzten Datenübertragungskanal für die OOBD. Die OOBD kann einen getrennten Teilkanal für eine SSL-Sitzung bereitstellen. Dieser Teilkanal stellt die Out-of-band-Datenübertragung bereit. Generell kann der Datenübertragungskanal für den OOBD-Datenübertragungskanal von dem Datenübertragungskanal getrennt sein, der durch den Benutzer oder das System verwendet wird, der bzw. das die ursprüngliche Transaktion übergeben hat.
-
2 veranschaulicht eine Netzwerksystemkonfiguration zum Verarbeiten einer neuen Transaktion und zum Validieren der Transaktion mit einer Out-of-band-Verifizierung gemäß Beispielausführungsformen. Mit Blick auf 2 beinhaltet eine Konfiguration 200 ein Transaktionsterminal 202, bei dem es sich um jede Einheit handeln kann, die eine Transaktion 210 veranlasst. Während des Betriebs veranlasst das Transaktionsterminal 202 eine Transaktionsanforderung 210 an eine Bank A 242, die eine Transaktionsanforderung 211 an eine CCH 240 veranlasst. Um Hauptbucheinträge einzusehen, kann ein lokales Hauptbuch 230 zugänglich sein. Das CCH schickt eine Transaktionsanforderung 213 an das vertrauenswürdige Hauptbuch in einer Blockchain 220. Das CCH sendet eine Transaktionsabfrage (Anforderung) 214A an die Bank A 242. Alternativ sendet das CCH 240 unter Umgehung der Bank A 242 und des Transaktionsterminals 202 eine Transaktionsabfrage (Anforderung) 214A an eine OOBD 203. Im weiteren Verlauf des Beispiels sendet die Bank A 242 eine Transaktionsabfrageanforderung 214B an die OOBD 203, die eine Transaktionsquittierung (Transaktion annehmen oder abweisen) 216A an ein vertrauenswürdiges Hauptbuch in der Blockchain 220 schickt, bei der es sich um dieselbe oder um eine andere Blockchain als diejenige handeln kann, die zum Aufzeichnen der Transaktionsanforderung 213 verwendet wird. Die OOBD 203 schickt eine Quittierung (Transaktion annehmen oder abweisen) 216C an die Bank A 242. Alternativ sendet die OOBD 203 unter Umgehung des Transaktionsterminals 202 und der Bank A 242 eine Quittierung (Transaktion annehmen oder abweisen) 216B an das CCH 240, das eine Quittierung (Transaktion annehmen oder abweisen) 216D an das CCH 240 schickt. Das CCH 240 schickt eine Quittierung (Transaktion annehmen oder abweisen) 216E an das vertrauenswürdige Hauptbuch in der Blockchain 220. Das CCH 240 verarbeitet die Transaktion gemäß der Quittierung 216D (Transaktion annehmen oder abweisen). Die Einheit/das Modul 232 für die fortlaufende Überwachung der Rechtmäßigkeit einer Transaktion liest die Transaktionen 213 aus dem vertrauenswürdigen Hauptbuch in der Blockchain 220 sowie die verschickte Transaktionsquittierung (Transaktion annehmen oder abweisen) 216A von dem vertrauenswürdigen Hauptbuch in der Blockchain 220 und überprüft, ob die Transaktionen und Quittierungen übereinstimmen. Wenn eine Abweichung vorliegt, wird die Transaktion als eine möglicherweise unrechtmäßige Transaktion gekennzeichnet.
-
Validierte Transaktionen 218 in der Blockchain 220 werden an die Analyseeinheit 234 für die fortgeschrittene Betrugserkennung gesendet 219 (bei des es sich um Hardware, Firmware und/oder Software handeln kann), um zu ermitteln, ob eine der Transaktionen betrügerisch ist. Beispiele für Betrug beinhalten zum Beispiel wiederholte Transaktionen, IP-Adressen an entfernten Standorten, große Geldbeträge usw. An der Konfiguration für die Prüfung durch Dritte können mehrere Banken 242/244 beteiligt sein. Eine Bestätigungsempfangseinheit 250 kann die Quittierung 221 (Transaktion annehmen oder abweisen) der Bank A 242 bestätigen. Nachdem alle Bestätigungen und Quittierungen empfangen wurden, kann die festgeschriebene Transaktion abgeschlossen und in der Blockchain gespeichert werden. Die Bestätigungsnachrichten der OOBD 203 können Daten wie z.B. einen Zeitstempel der Bestätigung, eine Identität der Person, der Einheit und/oder des Dienstes, die/der die Transaktion bestätigt hat, eine Identifikation der bestätigten Transaktion (z.B. Transaktionsnummer, verschlüsselter Hashwert der Transaktion) und den Betrag der Transaktion und/oder die an der Transaktion beteiligten Parteien beinhalten.
-
Jede von einem Urheber ausgehende Transaktion zwischen Institutionen wird an das CCH 240 gesendet, das die Transaktionsanforderung in einem Blockchain-Hauptbuch 220 aufzeichnet und das die Quittierung oder Nicht-Quittierung 216D der Transaktion bestätigt. Ein Rückruf von dem CCH 240 an die OOBD des Urhebers wird durchgeführt, um die Transaktion zu bestätigen. Der Urheber muss die Validität der Transaktion in der OOBD 203 quittieren, um die Transaktion an das CCH 240 zu übergeben. Die OOBD 203 sendet eine Bestätigung an das CCH 240, das die Transaktionsquittierung in der Blockchain aufzeichnet und die Transaktion festschreibt. Die OOBD 203 kann eine Transaktionsbestätigungsnachricht an dieselbe Blockchain oder an eine Sidechain bzw. eine gesonderte Blockchain senden. Wenn die Transaktion in einer Sidechain aufgezeichnet wird, wird diese Blockchain in mehreren unterschiedlichen Institutionen gespeichert, um die Integrität sicherzustellen. Ein Dritter, bei dem es sich nicht um die Institution des Urhebers und nicht um das CCH 240 handelt, gleicht ab, ob die Transaktionen, die durch das CCH 240 aufgezeichnet und durch die OOBD 203 mitgeteilt werden, konsistent sind, indem er ermittelt, dass die durch das CCH 240 aufgezeichnete Transaktion mit der durch die OOBD 203 aufgezeichneten Transaktion übereinstimmt.
-
Wenn eine in der Blockchain veröffentlichte Transaktion nicht über eine entsprechende Sidechain-Transaktion verfügt, kann eine Kompromittierung des Systems vorliegen oder die Transaktion kann betrügerisch sein. Als Ergebnis werden das CCH 240 und die Ursprungsinstitutionen benachrichtigt. Die fehlende Übereinstimmung zwischen einer aufgezeichneten Bestätigung und der aufgezeichneten Transaktion kann eine Benachrichtigung auslösen, die gemacht und an den Urheber und/oder die OOBD 330 gesendet wird. Das CCH 310 kann die Transaktion zurückhalten, bis die Abweichung aufgelöst wird. Ein Dritter, der sich von der Institution des Urhebers und dem CCH unterscheidet, überwacht alle in der Blockchain veröffentlichten Transaktionen, verwendet Analysetechniken zur Erstellung von Transaktionsverhaltensprofilen, um möglicherweise verdächtige Verhaltensweisen zu identifizieren, und führt eine Anomalieerkennung durch. Bei einer weiteren Ausführungsform können die Institution des Urhebers, das CCH oder eine beliebige andere hier beschriebene Einheit eine Bestätigungsanforderung 332 an die OOBD senden, und die Transaktion kann verifiziert 334 werden, indem die Transaktion 336 mit der Bestätigung verglichen wird, und wenn eine Abweichung festgestellt wird 338, wird eine Benachrichtigung erzeugt und an die OOBD gesendet 342, und/oder das CCH kann die Überwachung durchführen. Der Urheber, die OOBC und/oder das CCH können die gesamte Nachricht oder verschiedene Teile kryptografisch verarbeiten, um den Datenschutz des Urhebers und/oder des Empfängers sicherzustellen.
-
Gemäß anderen Beispielausführungsformen kann es sich bei der Partei, welche die Rolle des Prüfers ausübt, um eines oder mehrere Mitglieder der Blockchain handeln. Etwaige Transaktionen, die keine übereinstimmende Bestätigung aufweisen, können gekennzeichnet werden, und etwaige CCH-Transaktionen ohne entsprechende OOBD-Transaktionen können als möglicherweise betrügerisch gekennzeichnet werden. Als Ergebnis hiervon führen sowohl das CCH als auch die OOBD parallel eine Transaktionsprofilerstellung durch einen Dritten durch, bei dem es sich um einen oder mehrere Beteiligte an der Blockchain, eine Regulierungsbehörde oder eine Vertragspartei handeln kann, um auf Grundlage der an die Blockchain geschickten Transaktionen die Prüf- und Betrugserkennungsfunktionen auszuführen, indem anomale und verdächtige Transaktionen als womöglich betrügerisch gekennzeichnet und sowohl das CCH als auch die OOBD benachrichtigt werden.
-
3 veranschaulicht eine Darstellung einer Systemsignalübertragung zum Verarbeiten einer neuen Transaktion und zum Validieren der Transaktion mit einer Out-of-band-Verifizierung gemäß Beispielausführungsformen. Mit Blick auf 3 beinhaltet die Systemkonfiguration 300 vier Einheiten, darunter ein CCH 310, eine Blockchain 320, eine OOBD 330 und einen Prüfer 340. Im Betrieb kann eine neue Transaktionsanforderung 312 empfangen und in der Blockchain 320 gespeichert werden. Ein Rückruf für eine Bestätigung 314 kann erzeugt und an die OOBD 330 gesendet werden. Die OOBD kann eine Transaktion 316 bestätigen, eine Bestätigung 318 erzeugen und eine Bestätigung 322 an die Blockchain 320 weiterleiten. Eine Quittierung 324 kann an das CCH 310 gesendet werden, das daraufhin eine Quittierung 326 in der Blockchain 320 protokolliert. Danach kann die Blockchain-Transaktion in der Blockchain 320 festgeschrieben werden 328. Der Prüfer liest die Transaktion und die Verifizierung von der OOBD aus der Blockchain und korreliert die beiden Daten, da jede Transaktion eine entsprechende Verifizierung aufweist, um sicherzustellen, dass die Transaktion über eine entsprechende Verifizierung verfügt. Eine Bestätigungsanforderung 332 kann an die OOBD gesendet werden, und die Transaktion kann verifiziert werden 334, indem die Transaktion 336 mit der Bestätigung verglichen wird, und wenn eine Abweichung 338 festgestellt wird, wird eine Benachrichtigung erzeugt und an die OOBD und/oder das CCH gesendet 342.
-
4A veranschaulicht einen Ablaufplan 400 eines Beispielverfahrens für ein Verarbeiten einer Blockchain-Transaktion gemäß Beispielausführungsformen. Das Verfahren kann einen oder mehrere Schritte eines Empfangens einer oder mehrerer Transaktionsanforderungen, um eine oder mehrere Transaktionen abzuschließen 412, eines Aufzeichnens 414 der einen oder der mehreren Transaktionsanforderungen in einer Blockchain, eines Anforderns einer oder mehrerer Transaktionsbestätigungen von einer Out-of-band-Einheit, um die eine oder die mehreren Transaktionen zu bestätigen 416, und eines Festschreibens 418 der einen oder der mehreren Transaktionsbestätigungen in der Blockchain beinhalten. Das Verfahren kann außerdem ein Übertragen eines Rückrufs an die Out-of-band-Einheit, um die eine oder die mehreren Transaktionen zu bestätigen, ein Empfangen der einen oder der mehreren Quittierungen, die der einen oder den mehreren Bestätigungen entsprechen, und ein Aufzeichnen der einen oder der mehreren Quittierungen in der Blockchain beinhalten. Die eine oder die mehreren Bestätigungen, die der einen oder den mehreren Transaktionen entsprechen, können in einer anderen Blockchain als der Blockchain aufgezeichnet werden. Das Verfahren kann außerdem ein Aufzeichnen einer oder mehrerer von der Out-of-Band-Einheit empfangener Bestätigungen beinhalten, die der einen oder den mehreren Transaktionen entsprechen. Das Verfahren kann des Weiteren ein Vergleichen der einen oder der mehreren Bestätigungen mit der einen oder den mehreren festgeschriebenen Transaktionen, ein Ermitteln, ob die eine oder die mehreren Bestätigungen und die eine oder die mehreren festgeschriebenen Transaktionen übereinstimmen, und, wenn die eine oder die mehreren Bestätigungen nicht mit der einen oder den mehreren festgeschriebenen Transaktionen übereinstimmen, ein Kennzeichnen einer jeden nicht übereinstimmenden Transaktion beinhalten. Das Verfahren kann außerdem ein Erzeugen einer Benachrichtigung auf Grundlage der nicht übereinstimmenden Transaktion und ein Übertragen der Benachrichtigung an die Out-of-band-Einheit und an eine Urhebereinheit eines Transaktionsurhebers der nicht übereinstimmenden Transaktion beinhalten.
-
4B veranschaulicht einen Ablaufplan 450 eines weiteren Beispielverfahrens für ein Verarbeiten einer Blockchain-Transaktion gemäß Beispielausführungsformen. Das Verfahren kann einen oder mehrere Schritte eines Empfangens 452 einer oder mehrerer Transaktionsanforderungen, um eine oder mehrere Transaktionen abzuschließen, eines Aufzeichnens 454 der einen oder der mehreren Transaktionsanforderungen in einer Blockchain, eines Unterzeichnens 456 der einen oder der mehreren Transaktionen über ein Einmal-Signaturschema, das einen privaten Schlüssel und einen öffentlichen Einmal-Schlüssel über eine Out-of-band-Einheit aufweist, und eines Festschreibens 458 der einen oder der mehreren Transaktionen in der Blockchain beinhalten.
-
In dieser Beispielausführungsform kann ein Einmal-Signaturschema mit einer Merkle-Hash-Baumstruktur kombiniert werden, so dass ein einziger öffentlicher Gesamtschlüssel für mehrere zugrundeliegende öffentliche Einmal-Schlüssel stehen kann. Darüber hinaus kann eine Out-of-band-Einheit über den Einmal-Schlüssel die Einmal-Unterzeichnungsoperation für jede Transaktion durchführen. Alternativ können die privaten Einmal-Schlüssel auch von einem einzigen privaten Gesamtschlüssel erhalten werden. Bei derartigen Realisierungen kann eine einzelne Signatur entweder Kontextdaten und/oder einem Indexwert zugehörig sein, der angibt, welches zugrundeliegende Paar von öffentlichen/privaten Einmal-Schlüsseln an einer Signatur beteiligt ist. In einem Kryptowährungssystem können die Kontextdaten eine Transaktionsnummer oder einen Transaktionsbezeichner beinhalten, so dass mehrere Transaktionen demselben öffentlichen Gesamtschlüssel zugehörig sein können (aus dem z.B. eine Kryptowährungsadresse erhalten werden kann), wobei jedoch jede mit einem separaten zugrundeliegenden privaten Schlüssel unterzeichnet ist. Die Kontextdaten können das aktuelle Zeitintervall aufweisen, wobei z. B. jedes zugrundeliegende Paar von Einmal-Schlüsseln in dem Merkle-Baum einem anderen Zeitintervall zugehörig ist. Die Kontextdaten können auch Teil der eigentlichen Signatur sein, und der Zählwert kann in der Signatur oder Transaktion enthalten sein. Eine Einheit, welche die Transaktion empfängt, kann auf Grundlage der vorherigen Transaktion der Out-of-band-Einheit in einem Transaktionsprotokoll überprüfen, ob es sich bei den Kontextdaten in der Signatur oder Transaktion, die sie von der Out-of-band-Einheit empfängt, um den korrekten „nächsten“ Wert handelt.
-
Die obigen Ausführungsformen können in Hardware, in einem Computerprogramm, das von einem Prozessor ausgeführt wird, in Firmware oder in einer Kombination hiervon realisiert werden. Ein Computerprogramm kann auf einem durch einen Computer lesbaren Medium wie z.B. einem Speichermedium enthalten sein. So kann sich ein Computerprogramm zum Beispiel in einem Direktzugriffsspeicher (Random Access Memory, RAM), einem Flash-Speicher, einem Festwertspeicher (Read-Only Memory, ROM), einem löschbaren, programmierbaren Nur-Lese-Speicher (Erasable Programmable Read-Only Memory, EPROM), einem elektronisch löschbaren, programmierbaren Nur-Lese-Speicher (Electronically Erasable Programmable Read-Only Memory, EEPROM), in Registern, auf einer Festplatte, auf einer Wechselplatte, auf einem Compact Disk Read-Only Memory (CD-ROM) oder auf jeder anderen Form von Speichermedium befinden, die auf dem Fachgebiet bekannt ist.
-
Ein beispielhaftes Speichermedium kann mit dem Prozessor verbunden sein, so dass der Prozessor Daten von dem Speichermedium lesen und Daten auf das Speichermedium schreiben kann. Alternativ kann das Speichermedium ein fester Bestandteil des Prozessors sein. Der Prozessor und das Speichermedium können sich in einer anwendungsspezifischen integrierten Schaltung (Application-Specific Integrated Circuit, ASIC) befinden. Alternativ können der Prozessor und das Speichermedium als einzelne Komponenten angeordnet sein. So veranschaulicht 5 zum Beispiel ein Beispielnetzwerkelement 500, das in jeder der oben erwähnten Komponenten usw. vorhanden oder darin integriert sein kann.
-
Wie in 5 veranschaulicht, können ein Arbeitsspeicher 510 und ein Prozessor 520 einzelne Komponenten einer Netzwerkeinheit 500 sein, die dazu verwendet werden, eine Anwendung oder einen Satz von Operationen wie hier beschrieben auszuführen. Die Anwendung kann in Software in einer Computersprache codiert sein, die von dem Prozessor 520 verstanden wird, und in einem durch einen Computer lesbaren Medium wie z.B. einem Arbeitsspeicher 510 gespeichert sein. Das durch einen Computer lesbare Medium kann ein durch einen Computer lesbares dauerhaftes Medium sein, das physische Hardwarekomponenten wie z.B. einen Arbeitsspeicher enthält, die Software speichern können. Des Weiteren kann ein Softwaremodul 530 eine weitere einzelne Einheit sein, die Teil der Netzwerkeinheit 500 ist und die Softwarebefehle enthält, die durch den Prozessor 520 ausgeführt werden können, um eine oder mehrere der hier beschriebenen Funktionen zu bewirken. Zusätzlich zu den oben genannten Komponenten der Netzwerkeinheit 500 kann die Netzwerkeinheit 500 auch ein Sender- und Empfängerpaar aufweisen, das so konfiguriert ist, dass es Datenübertragungssignale empfängt und sendet (nicht gezeigt).
-
Obwohl eine beispielhafte Ausführungsform von mindestens einem System, Verfahren und durch einen Computer lesbaren dauerhaften Medium in den beigefügten Zeichnungen veranschaulicht und in der obigen ausführlichen Beschreibung beschrieben wurde, sollte klar sein, dass die Anmeldung nicht auf die offenbarten Ausführungsformen beschränkt ist, sondern für zahlreiche Umgestaltungen, Änderungen und Ersetzungen geeignet ist, wie sie durch die folgenden Ansprüche dargelegt und definiert werden. So können die Fähigkeiten des Systems der verschiedenen Figuren durch eines oder mehrere der hier beschriebenen Module oder Komponenten oder aber in einer verteilten Architektur durchgeführt werden und einen Sender, einen Empfänger oder ein aus beidem bestehendes Paar beinhalten. Zum Beispiel kann die gesamte oder ein Teil der durch die einzelnen Module durchgeführten Funktionalität durch eines oder mehrere dieser Module durchgeführt werden. Des Weiteren kann die hier beschriebene Funktionalität zu verschiedenen Zeitpunkten und in Verbindung mit verschiedenen Ereignissen durchgeführt werden, die innerhalb oder außerhalb der Module oder Komponenten auftreten können. Außerdem können die zwischen verschiedenen Modulen gesendeten Daten über mindestens eines der folgenden Elemente zwischen den Modulen gesendet werden: ein Datenelement, das Internet, ein Sprachnetzwerk, ein Internet-Protokoll-Netzwerk, ein drahtloses Netzwerk, ein drahtgebundenes Netzwerk und/oder über eine Mehrzahl von Protokollen. Zudem können die durch eines der Module gesendeten oder empfangenen Nachrichten direkt und/oder über eines oder mehrere der anderen Module gesendet oder empfangen werden.
-
Für einen Fachmann dürfte klar sein, dass ein „System“ als ein Personal Computer, ein Server, eine Konsole, ein persönlicher digitaler Assistent (PDA), ein Mobiltelefon, eine Tablet-Datenverarbeitungseinheit, ein Smartphone oder eine beliebige andere geeignete Datenverarbeitungseinheit oder aber als eine Kombination von Einheiten ausgeführt werden kann. Die Darlegung der oben beschriebenen Funktionen als durch ein „System“ durchgeführt soll keinerlei Beschränkung des Geltungsumfangs der vorliegenden Erfindung beabsichtigen, sondern ist so zu verstehen, dass sie lediglich ein Beispiel von vielen Ausführungsformen bereitstellt. Tatsächlich können hier offenbarte Verfahren, Systeme und Vorrichtungen in an einem Ort zusammengeführten und verteilten Formen realisiert werden, die mit Datenverarbeitungstechnologie im Einklang stehen.
-
Zu erwähnen ist auch, dass manche der in dieser Patentschrift beschriebenen Systemmerkmale als Module dargelegt wurden, um ihre Realisierungsunabhängigkeit besonders hervorzuheben. So kann ein Modul zum Beispiel als eine Hardwareschaltung realisiert werden, die angepasste VLSI-Schaltungen (Very Large Scale Integration) oder Gate-Arrays, vorgefertigte Halbleiter wie Logikchips, Transistoren oder andere einzelne Bestandteile aufweist. Ein Modul kann auch als programmierbare Hardwareeinheiten wie z.B. Field-Programmable-Gate-Arrays, Programmable Array Logic, programmierbare Logikeinheiten, Grafikprozessoren oder Ähnliches realisiert werden.
-
Ein Modul kann mindestens teilweise auch in Software realisiert und durch verschiedene Arten von Prozessoren realisiert werden. Eine bestimmte Einheit von ausführbarem Code kann zum Beispiel einen oder mehrere physische oder logische Blöcke von Computerbefehlen aufweisen, die zum Beispiel als ein Objekt, eine Prozedur oder eine Funktion strukturiert sein können. Dessen ungeachtet muss der ausführbare Code eines bestimmten Moduls nicht physisch an einer gemeinsamen Stelle vorliegen, sondern kann unterschiedliche Befehle aufweisen, die an verschiedenen Stellen gespeichert werden und die, wenn sie logisch miteinander verbunden werden, das Modul aufweisen und den vorgesehenen Zweck für das Modul erzielen. Des Weiteren können Module in einem durch einen Computer lesbaren Medium gespeichert werden, wobei es sich zum Beispiel um ein Festplattenlaufwerk, eine Flash-Einheit, einen RAM, ein Band oder ein anderes derartiges Medium handeln kann, das zum Speichern von Daten verwendet wird.
-
Tatsächlich kann ein Modul von ausführbarem Code ein einziger Befehl oder viele Befehle sein und sogar auf mehrere verschiedene Codesegmente, auf verschiedene Programme und auf mehrere Speichereinheiten verteilt sein. Entsprechend können Betriebsdaten hier innerhalb von Modulen kenntlich gemacht und dargestellt sowie in jeder beliebigen geeigneten Form realisiert werden und innerhalb einer beliebigen geeigneten Art von Datenstruktur organisiert sein. Dabei können die Betriebsdaten als ein einziger Datensatz zusammengestellt sein, oder sie können auf verschiedene Stellen, darunter verschiedene Speichereinheiten, verteilt sein, und sie können zumindest teilweise als bloße elektronische Signale in einem System oder Netzwerk vorhanden sein.