DE102022130483A1 - Verfahren zum beglaubigen eines hardware-wallets einer blockchain - Google Patents

Verfahren zum beglaubigen eines hardware-wallets einer blockchain Download PDF

Info

Publication number
DE102022130483A1
DE102022130483A1 DE102022130483.3A DE102022130483A DE102022130483A1 DE 102022130483 A1 DE102022130483 A1 DE 102022130483A1 DE 102022130483 A DE102022130483 A DE 102022130483A DE 102022130483 A1 DE102022130483 A1 DE 102022130483A1
Authority
DE
Germany
Prior art keywords
hardware wallet
attestation
smart contract
hardware
wallet
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
DE102022130483.3A
Other languages
English (en)
Inventor
Alexander Koeberl
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE102022130483.3A priority Critical patent/DE102022130483A1/de
Priority to US18/512,535 priority patent/US20240169349A1/en
Publication of DE102022130483A1 publication Critical patent/DE102022130483A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/42Confirmation, e.g. check or permission by the legal debtor of payment

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Gemäß verschiedenen Ausführungsformen wird ein Verfahren zum Beglaubigen eines Hardware-Wallets einer Blockchain bereitgestellt, aufweisend das Bereitstellen eines Metadatendienst-Smart-Contracts auf der Blockchain, wobei der Metadatendienst-Smart-Contract ein Smart-Contract ist, der Informationen über zertifizierte Hardware-Wallet-Modelle speichert, und das Bereitstellen eines Beglaubigung-Smart-Contracts auf der Blockchain, wobei der Beglaubigung-Smart-Contract ein Smart-Contract ist, der eingerichtet ist, um Beglaubigungsinformationen des Hardware-Wallets zu empfangen, zu verifizieren, dass die Beglaubigungsinformationen von dem Hardware-Wallet gesendet wurden, und durch Abrufen von Informationen von dem Metadatendienst-Smart-Contract zu verifizieren, dass der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört, und eine Beglaubigungsbestätigung für die Hardware-Wallet bereitzustellen, wenn die Beglaubigungsinformationen von dem Hardware-Wallet gesendet wurden und die Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört.

Description

  • Die vorliegende Offenbarung betrifft Verfahren zum Beglaubigen eines Hardware-Wallets einer Blockchain.
  • Eine sichere Schlüsselverwaltung ist eine wichtige Voraussetzung für die Nutzer von Blockchain-Systemen: Durch die Unterzeichnung einer Transaktion mit ihrem privaten Schlüssel genehmigen die Nutzer den Transfer von Geldern und geben ihre ausdrückliche Zustimmung, wenn sie mit Smart-Contracts interagieren. Die potenziell hohe Ausbeute an gestohlenen Schlüsseln verleitet viele Kriminelle dazu, Nutzer und Krypto-Börsen mit Phishing- und Hacking-Angriffen ins Visier zu nehmen. Das Risiko des Schlüsselbetrugs kann durch die Verwendung von Hardware-Sicherheitsmodulen oder Smartcards als sogenannte Hardware-Wallets für die sichere Schlüsselverwaltung verringert werden. Aus der Sicht von Smart-Contracts und anderen Nutzern des Blockchain-Netzwerks können gesicherte Schlüssel jedoch nicht von ungeschützten unterschieden werden. Ein System könnte kompromittiert werden, wenn ein ungeschützter Schlüssel eine privilegierte Rolle in einem Smart-Contract erhält (z.B. Administrator, der Geld ausgeben darf) oder eine Transaktion als ausdrückliche Zustimmung interpretiert wird (z.B. zur Änderung des Betriebszustands eines cyber-physischen Systems).
  • Daher sind Ansätze für das Beglaubigen von Hardware-Wallets wünschenswert, insbesondere im Hinblick auf ihre Schutzfunktionen.
  • Gemäß verschiedenen Ausführungsformen wird ein Verfahren zum Beglaubigen eines Hardware-Wallets einer Blockchain bereitgestellt, aufweisend den Einsatz (d.h. Einsatz eines Metadatendienst-Smart-Contracts auf der Blockchain, wobei der Metadatendienst-Smart-Contract ein Smart-Contract ist, der Informationen über zertifizierte Hardware-Wallet-Modelle speichert, und Einsatz eines Beglaubigung-Smart-Contracts auf der Blockchain, wobei der Beglaubigung-Smart-Contract ein Smart-Contract ist, der eingerichtet ist zum Empfangen von Beglaubigungsinformationen des Hardware-Wallets, Verifizieren, dass die Beglaubigungsinformationen von dem Hardware-Wallet gesendet wurden, und Verifizieren, durch Abrufen von Informationen aus dem Metadatendienst-Smart-Contract zu überprüfen, dass der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört, und eine Beglaubigungsbestätigung für den Hardware-Wallet bereitzustellen, wenn die Beglaubigungsinformationen von dem Hardware-Wallet gesendet wurden und der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört.
  • Gemäß einer weiteren Ausführungsform wird ein Verfahren zum Verifizieren der Verwendung eines Hardware-Wallets bereitgestellt, aufweisend einen Hardware-Wallet, der die Ausführung einer Funktion eines Smart-Contracts initiiert, der auf der Blockchain eingesetzt wird und eingerichtet ist, um die Funktion für Hardware-Wallets mit den erforderlichen Fähigkeiten bereitzustellen, einen Beglaubigung-Smart-Contract, der ein auf der Blockchain eingesetzter Smart-Contract ist, der eingerichtet ist, um zu bestätigen, dass der Hardware-Wallet die erforderlichen Fähigkeiten hat, Prüfen, ob der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell gehört, das die erforderlichen Fähigkeiten aufweist, und, wenn der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell gehört, das die erforderlichen Fähigkeiten aufweist, Bereitstellen einer Beglaubigungsbestätigung und Ausführen der Funktion für den Hardware-Wallet durch den Smart-Contract, wenn der Beglaubigung-Smart-Contract die Beglaubigungsbestätigung bereitstellt.
  • In den Zeichnungen beziehen sich ähnliche Bezugszeichen im Allgemeinen auf dieselben Teile in den verschiedenen Ansichten. Die Zeichnungen sind nicht notwendigerweise maßstabsgetreu, wobei der Schwerpunkt im Allgemeinen auf der Veranschaulichung der Prinzipien der Erfindung liegt. In der folgenden Beschreibung werden verschiedene Aspekte unter Bezugnahme auf die folgenden Zeichnungen beschrieben, in denen:
    • 1 ein Blockdiagramm eines Blockchain-Netzwerks, d.h. eines Computernetzwerks zur Verwaltung und zum Betreiben einer Blockchain zeigt.
    • 2 ein Flussdiagramm zeigt, das ein Blockchain-basiertes Beglaubigen eines Hardware-Wallets gemäß einer Ausführungsform darstellt.
    • 3 ein Flussdiagramm zeigt zur Veranschaulichung eines Blockchain-basierten Beglaubigens eines Hardware-Wallets für den Hardware-Wallet selbst gemäß einer Ausführungsform.
    • 4 ein Flussdiagramm zeigt, das ein Verfahren zum Beglaubigen eines Hardware-Wallets einer Blockchain veranschaulicht.
    • 5 ein Flussdiagramm zeigt, das ein Verfahren zur Überprüfung der Verwendung eines Hardware-Wallets veranschaulicht.
  • Die folgende detaillierte Beschreibung bezieht sich auf die beigefügten Zeichnungen, die zur Veranschaulichung spezifische Details und Aspekte dieser Offenbarung zeigen, in denen die Erfindung ausgeführt werden kann. Andere Aspekte können verwendet werden, und strukturelle, logische und elektrische Änderungen können vorgenommen werden, ohne vom Anwendungsbereich der Erfindung abzuweichen. Die verschiedenen Aspekte dieser Offenbarung schließen sich nicht unbedingt gegenseitig aus, da einige Aspekte dieser Offenbarung mit einem oder mehreren anderen Aspekten dieser Offenbarung kombiniert werden können, um neue Aspekte zu bilden.
  • Die Blockchain-Technologie wird immer häufiger für verschiedene Anwendungen eingesetzt. Eine Blockchain kann in der Regel als verteilte Datenbank betrachtet werden, die eine kontinuierlich wachsende Liste von Aufzeichnungen verwaltet, die gegen Manipulationen geschützt sind. Eine Blockchain umfasst in der Regel eine Reihe von Blöcken mit Interaktionsdatensätzen, wobei jeder Block einen Zeitstempel und einen Link zu einem vorherigen Block enthält. Zum Beispiel enthält jeder Block einen Hash des vorhergehenden Blocks. Mit anderen Worten können Interaktionsdatensätze in einer Blockchain als eine Reihe von Blöcken gespeichert werden, die einen Datensatz einer Anzahl von Transaktionen enthalten, die in einem bestimmten Zeitraum stattgefunden haben. Ein neuer Block kann von einem Blockchain-Anbieter an eine Blockchain angehängt werden, nachdem er den Block vervollständigt hat und der Block validiert wurde. Eine Blockchain kann zum Beispiel zur Überprüfung von Transaktionen verwendet werden. Die Sicherheit einer Blockchain kann durch ein kryptografisches Verfahren erreicht werden.
  • 1 zeigt ein Blockdiagramm eines Blockchain-Netzwerks 100, d.h. eines Computernetzwerks zur Verwaltung und zum Betreiben einer Blockchain.
  • Das Netzwerk 100 kann eine oder mehrere Nutzervorrichtungen (oder Endgeräte) 101 und eine Blockchain-Anbieter-Computeranordnung 103 sowie einen oder mehrere Datenverarbeitungscomputer 104 umfassen. Jede dieser Vorrichtungen und Computer kann über ein Kommunikationsnetzwerk 102 wie das Internet unter Verwendung eines geeigneten Kommunikationsprotokolls kommunikativ miteinander verbunden sein.
  • Ein Blockchain-Anbieter, z.B. die Blockchain-Anbieter-Computeranordnung 103, kann eine oder mehrere elektronische Vorrichtungen umfassen, die zum Bereitstellen von Blockchain-Funktionalität eingerichtet sind. Die Blockchain-Anbieter-Computeranordnung 103 kann eine einzelne Vorrichtung oder mehrere Vorrichtungen umfassen, die zum Verwalten von Aspekten der Blockchain eingerichtet sind.
  • Im Blockchain-Netzwerk 100 können Transaktionsanforderungsnachrichten ausgetauscht werden. Eine Transaktionsanforderungsnachricht kann als eine elektronische Nachricht verstanden werden, die zur Anforderung einer Transaktion verwendet wird. Eine Transaktion kann von einer Nutzervorrichtung 101 (z.B. einer von einem Nutzer betriebenen Nutzervorrichtung) initiiert werden. Eine Transaktion kann auch von einem Datenverarbeitungsrechner 104 initiiert werden. Die Transaktionsanforderungsnachricht zur Initiierung einer Transaktion kann einen Empfänger der Transaktion angeben.
  • Die Transaktionsanforderungsnachricht kann, wenn sie sich beispielsweise auf eine Transaktion bezieht, Datenfelder enthalten, einschließlich, aber nicht beschränkt auf ein Initiator-Identifizierungsdatenfeld, ein Empfänger-Identifizierungsdatenfeld, ein Übertragungswertdatenfeld, das den Transaktionswert angibt, ein digitales Signaturdatenfeld, einen Transaktionswert, ein Zeitstempeldatenfeld und Ähnliches. In einigen Beispielen kann der Transaktionswert in einem Format vorliegen, das für die sofortige Aufzeichnung in einem von der Blockchain-Anbieter-Computeranordnung 103 verwalteten Hauptbuch geeignet ist. Eine Transaktionsanforderungsnachricht kann mit einem privaten Schlüssel signiert werden, der mit dem Nutzer oder der Nutzervorrichtung 101, die die Transaktion initiiert, verknüpft ist, so dass sie mit einem öffentlichen Schlüssel verifiziert werden kann, der mit dem Nutzer oder der Nutzervorrichtung verbunden ist.
  • Die Blockchain-Anbieter-Computeranordnung 103 kann mehrere Blockchain-Anbieter-Computer umfassen, von denen jeder Komponenten zur Datenverarbeitung wie einen Prozessor und ein mit dem Prozessor gekoppeltes computerlesbares Medium enthält, wobei das computerlesbare Medium einen vom Prozessor ausführbaren Code zur Durchführung der hier beschriebenen Funktionalität enthält. Die Blockchain-Anbieter-Computeranordnung 103 kann mit den Datenverarbeitungscomputern 104 und den Nutzervorrichtungen 101 kommunikativ gekoppelt sein, z.B. über ein Kommunikationsnetzwerk 102). Eine Vorrichtung kann gleichzeitig als Blockchain-Anbieter-Computer 103 und als Nutzerendgerät 101 fungieren.
  • Je nach der verwendeten Blockchain kann die Computeranordnung 103 des Blockchain-Anbieters Smart-Contracts ausführen. Ein Smart-Contract ist ein Stück Software, das in einem Blockchain-Netzwerk 100 eingesetzt und ausgeführt werden kann. Die Charakteristik eines Smart-Contracts ähnelt der Software, die auf einem klassischen Webserver läuft (der Daten verarbeiten und speichern kann), außer dass sie dezentralisiert ist. Im Falle der Ethereum-Blockchain beispielsweise ist ein Smart-Contract ein Programm, das auf der Ethereum-Blockchain läuft. Es handelt sich um eine Sammlung von Code (seine Funktionen) und Daten (sein Zustand), die sich an einer bestimmten Adresse auf der (z.B. Ethereum-)Blockchain befinden.
  • Smart-Contracts können auch als eine Art von beispielsweise Ethereum-Konto betrachtet werden. Das bedeutet, dass sie ein Guthaben haben und das Ziel von Transaktionen sein können. Sie werden jedoch nicht von einem Nutzer gesteuert, sondern werden auf der Blockchain-Anbieter-Computeranordnung 103 bereitgestellt und wie programmiert ausgeführt. Nutzervorrichtungen 101 (mit Nutzerkonten für die Blockchain) können dann mit einem Smart-Contract interagieren, indem sie Transaktionen einreichen, die eine im Smart-Contract definierte Funktion ausführen. Smart-Contracts können wie ein regulärer Vertrag Regeln festlegen und diese automatisch über den Programmcode durchsetzen. Smart-Contracts können standardmäßig nicht gelöscht werden, und Interaktionen mit ihnen sind unumkehrbar.
  • Die Verteiltes-Hauptbuch-Technologie (Distributed Ledger Technology - DLT) und die verschiedenen Blockchain-Implementierungen werden zur Verwaltung großer Mengen von Finanzvermögen und zum Hosten verteilter Anwendungen (dApps) verwendet. Die Wertübertragung und der Aufruf von Funktionen in dApps werden durch kryptografisch signierte Transaktionsnachrichten autorisiert. In öffentlichen Blockchain-Netzwerken wird keine zusätzliche Nutzerauthentifizierung erzwungen. Der private Signierschlüssel wird zum zentralen Authentifizierungsfaktor, so dass jeder, der über das geheime Wissen verfügt, Transaktionen über das Konto autorisieren kann. Aus Sicht des Nutzers ist es unmöglich, sich einen solchen ECC-Schlüssel (Elliptische-Kurve-Kryptographie - Elliptic Curve Cryptography) zu merken (im Gegensatz zu gängigen Systemen mit Passwort oder PIN), und auch die Erzeugung der Signatur ist eine komplexe Aufgabe. Daher kann ein so genannter Wallet als oder mit einer Nutzervorrichtung 101 verwendet werden, um die Schlüssel zu verwalten und eine bestimmte Transaktion zu signieren. Dabei kann es sich entweder um einen webbasierten Dienst (Hot-Wallet), ein auf der Vorrichtung 101 ausgeführtes Softwareprogramm (Software-Wallet) oder ein dediziertes Hardwaremodul (Hardware-Wallet), z.B. in Form einer Smartcard oder eines USB-Sticks, handeln, das in die Vorrichtung 101 eingesteckt wird. Sowohl Hot- als auch Software-Wallets bergen ein höheres Risiko für Ausnutzungen und den unbefugten Export des privaten Schlüssels als Hardware-Wallets. Hardware-Wallets können ein höheres Sicherheitsniveau bieten, indem sie gehärtete Hardware und Software sowie erweiterte Authentifizierungsmechanismen (z.B. Fingerabdruckleser) verwenden.
  • Es gibt bereits kommerzielle Hardware-Wallets, die jedoch keinen Nachweis über die Herkunft der Schlüssel bieten. Mit anderen Worten: Bei einem öffentlichen Schlüssel kann nicht nachgewiesen werden, dass der zugehörige private Schlüssel sicher von einem Hardware-Wallet verwaltet wird.
  • Angesichts der obigen Ausführungen wird gemäß verschiedenen Ausführungsformen eine Blockchain-basierte Beglaubigungsinfrastruktur bereitgestellt, die es ermöglicht, die Herkunft von Schlüsseln in Hardware-Wallets zu zertifizieren (d.h. zu beglaubigen, dass der Schlüssel von einem Hardware-Wallet verwaltet wird) und für eine Hardware-Wallet zu beglaubigen, dass sie die erforderlichen Sicherheitsmechanismen bereitstellt (z.B. von einem bestimmten Dienstanbieter gefordert). Das Verifizieren eines Beglaubigungsnachweises (im Folgenden auch als Beglaubigungsinformationen bezeichnet) erfolgt direkt mit Smart-Contracts, wodurch die Abhängigkeit von externen Verifizierungsdiensten entfällt. Gemäß einer Ausführungsform wird die Privatsphäre des Nutzers des Hardware-Wallets durch die Verwendung von Direct Anonymous Attestation (DAA) geschützt.
  • Die On-Chain-Wallet-Beglaubigung, wie sie in verschiedenen Ausführungsformen bereitgestellt wird, kann Blockchain-Nutzern folgende Vorteile bieten:
    • 1) Sicherstellen, dass der Empfänger des Geldes bei ausgehenden Transaktionen den privaten Schlüssel durch Hardware-Sicherheitsmaßnahmen schützt.
    • 2) Starker Nachweis der Nichtabstreitbarkeit und Durchsetzung eines Mindestsicherheitsniveaus für Funktionen, die durch Smart-Contracts bereitgestellt werden. Bei der Verwendung eines Hardware-Wallets kann der Unterzeichner einer Transaktion nicht ohne Weiteres seine ausdrückliche Zustimmung verweigern oder Schlüsselbetrug vorwerfen.
    • 3) Nachweis der Authentizität der Vorrichtung, ohne sich auf die Dienste Dritter zu verlassen.
  • Gemäß verschiedenen Ausführungsformen kann ein Nutzer einer Nutzervorrichtung 101 beispielsweise von der (an die Nutzervorrichtung 101 angeschlossenen) Hardware-Wallet Informationen zur Bestätigung eines bestimmten Blockchain-Schlüssels anfordern und diese an einen als Smart-Contract implementierten On-Chain-Beglaubigungsdienst weiterleiten, um eine Beglaubigungsbestätigung zu erhalten (z.B. die Beglaubigung, dass der Schlüssel von einem Hardware-Wallet verwaltet wird und den Hardware-Wallet über bestimmte Sicherheits- oder Schutzfunktionen verfügt, wie z.B. einen Fingerabdruckscanner, der mit einem registrierten Fingerabdruck vorgelegt werden muss, bevor der Blockchain-Schlüssel verwendet werden kann). Funktionen anderer Smart-Contracts können im Anschluss an eine erfolgreiche Bescheinigung das Verifizierungsergebnis (d.h. die Beglaubigungsbestätigung) verwenden und Funktionen auf der Grundlage der Sicherheitsfunktionen des Hardware-Wallets freischalten.
  • Insbesondere wird gemäß verschiedenen Ausführungsformen eine Erweiterung eines generischen Hardware-Wallet-Protokolls mit Beglaubigungsfunktionen für eine On-Chain-Beglaubigung unter Verwendung von DAA mit der Ethereum-Blockchain bereitgestellt.
  • Direct Anonymous Attestation (DAA) ist ein spezielles Gruppensignaturverfahren für die Fernauthentifizierung. Die Trusted Computing Group (TCG) hat in der Spezifikation für das Trusted Platform Module (TPM) 2.0 mehrere DAA-Verfahren berücksichtigt. Es gibt viele Implementierungsvarianten mit komplexem kryptografischem Hintergrund.
  • In der einfachsten Form wird ein Berechtigungsnachweis im geschützten Speicher eines Sicherheitsmoduls einer Vorrichtung (bei der es sich nach verschiedenen Ausführungsformen um einen Hardware-Wallet handeln kann) während der Herstellung gespeichert. Der Berechtigungsnachweis ist nach verschiedenen Ausführungsformen ein Beispiel für eine Beglaubigungsinformation. Dieser Berechtigungsnachweis kann als ein vom Hersteller an die Vorrichtung ausgegebenes Token angesehen werden, das zur Authentifizierung bei einem Dritten verwendet werden kann. Der Berechtigungsnachweis enthält eine kombinierte Signatur aus dem Schlüssel des Herstellers (im Allgemeinen als Aussteller bezeichnet) und einem zufälligen geheimen Schlüssel des Sicherheitsmoduls.
  • Der Berechtigungsnachweis wird anschließend zur Authentifizierung der Vorrichtung gegenüber einer dritten Partei verwendet. Die direkte Verwendung des Berechtigungsnachweises würde jedoch die Identität des Nutzers preisgeben. Aus diesem Grund wird eine randomisierte Version des Berechtigungsnachweises an die Prüfstelle gesendet. Mit diesem randomisierten Berechtigungsnachweis prüft die Prüfstelle die Signatur und bestätigt, dass die Daten tatsächlich von einer zertifizierten Vorrichtung signiert wurden. Die Prüfstelle ist jedoch nicht in der Lage, eine bestimmte Vorrichtung zu identifizieren oder nachfolgende Signaturen zu verknüpfen, wenn der Berechtigungsnachweis erneut randomisiert wurde. Dies gilt selbst dann, wenn der Aussteller mit der Prüfstelle zusammenarbeitet, um die Identität der Vorrichtung preiszugeben.
  • Die Vorteile des recht komplexen DAA-Schemas lassen sich am besten durch einen Vergleich mit alternativen Ansätzen veranschaulichen: Ein einfacher Ansatz zum Nachweis der Gruppenzugehörigkeit eines Geräts (z.B. der Nachweis, dass es sich bei einem Gerät um ein bestimmtes Modell handelt) besteht darin, bei der Herstellung einen gemeinsamen privaten Schlüssel auf allen Geräten zu platzieren. Einzelne Vorrichtungen können dann Beglaubigungsnachrichten signieren, um die Kenntnis des geheimen Schlüssels zu demonstrieren, ohne ihre Identität preiszugeben. Dieser Ansatz birgt aus Sicht des Herstellers ein hohes Risiko: Wenn ein Angreifer in der Lage ist, den privaten Schlüssel von einem der eingesetzten Vorrichtungen zu extrahieren, oder wenn ein konzentrierter Brute-Force-Angriff erfolgreich ist, ist die Beglaubigungsfunktionalität einer kompletten Vorrichtungsserie gebrochen. Im Gegensatz dazu verwendet DAA einen eindeutigen geheimen Schlüssel für jede Vorrichtung und ermöglicht die Identifizierung aller vergangenen und zukünftigen Pseudonyme durch die Veröffentlichung des gebrochenen geheimen Schlüssels für alle Überprüfer. Eine andere mögliche Lösung beruht auf einer so genannten Datenschutz-Zertifizierungsstelle (Privacy Certification Authority, Privacy CA) als vertrauenswürdige dritte Partei. Jede Vorrichtung erstellt ein dauerhaftes Schlüsselpaar, das der Datenschutz-CA bekannt ist. Die Vorrichtung kann diesen Schlüssel verwenden, um sich zu authentifizieren und ein Zertifikat für neue Pseudonyme in der Zukunft anzufordern. Diese Lösung ist jedoch sowohl in Bezug auf die Verfügbarkeit als auch auf den Datenschutz auf die Datenschutz-CA angewiesen. Geräte können nur dann ein neues Pseudonym erstellen, wenn die Datenschutz-CA verfügbar ist, und sie kann durch die Verknüpfung aller zuvor verwendeten Pseudonyme möglicherweise die Identität des Geräts preisgeben.
  • 2 zeigt ein Flussdiagramm 200, das ein Blockchain-basiertes Beglaubigen eines Hardware-Wallets 202 gemäß einer Ausführungsform illustriert.
  • Der Hardware-Wallet 202 ist eine Vorrichtung mit integriertem Hardware-Sicherheitsmodul (HSM) zur Verwaltung von Blockchain-Schlüsseln und zur Erzeugung von Signaturen für Transaktionen. Er kann zum Beispiel in eine der Nutzervorrichtungen 101 eingesteckt werden. Gemäß verschiedenen Ausführungsformen generiert der Hardware-Wallet 201 auch Beglaubigungsinformationen, um Informationen über die von ihr unterstützten Sicherheitsfunktionen (wie z.B. einen Fingerabdruckscanner) zu liefern. Der Hardware-Wallet 201 speichert kryptografische Schlüssel in einem gesicherten Speicher, so dass sie nicht exportiert werden können.
  • Ein Aussteller 201 ist für die Erstellung eines Berechtigungsnachweises (z.B. kryptografischer Schlüssel oder DAA-Berechtigungsnachweis) für einen bestimmten Hardware-Wallet 202 verantwortlich. Dies ist in der Regel der Hersteller des Hardware-Wallets 202 oder zumindest des HSM.
  • Außerdem ist eine Beglaubigungsschnittstelle 204 in den Ablauf eingebunden. Dabei handelt es sich um einen Smart-Contract, der Funktionen zur Überprüfung der empfangenen Beglaubigungsinformationen bereitstellt (und daher auch als Smart-Contract (intelligenter Vertrag) für die Beglaubigungsschnittstelle bezeichnet wird). Er wird entweder als eigenständiger Dienst auf der Blockchain bereitgestellt oder in einen Smart-Contract mit einer anderen Hauptfunktionalität eingebettet.
  • Die Beglaubigung erfolgt in Bezug auf (d.h. für) einen geschützten Smart-Contract 203: Der geschützte Smart-Contract 203 ist ein Smart-Contract und kann eine breite Palette von Funktionalitäten haben, z.B. Multi-Signatur-Wallet oder Token-Austausch. Zusätzlich zu den spezialisierten Funktionen der Anwendungsdomäne bietet er eine Funktion zur Registrierung neuer Nutzer, indem er deren Beglaubigungsinformationen erhält. Sie stellt eine Verbindung zur Beglaubigungsschnittstelle 204 her (entweder durch den Aufruf eines anderen (z.B. dedizierten Smart-Contracts) oder durch den Aufruf von Funktionen, die sie selbst enthält), um die Beglaubigungsdaten zu überprüfen.
  • Die Beglaubigungsschnittstelle 204 konsultiert einen Metadatendienst 205: Der Metadatendienst (MDS) 205 ist ein Smart-Contract, der Informationen über jedes zertifizierte Hardware-Wallet-Modell speichert (und daher auch als Smart-Contract des Metadatendienstes bezeichnet wird). Diese Informationen umfassen zumindest den öffentlichen Schlüssel des Herstellers und eine Liste der Fähigkeiten (d.h. eine Spezifikation der in Hardware-Wallets des Hardware-Wallet-Modells verfügbaren Sicherheitsmaßnahmen). Sie können auch detailliertere Zertifizierungsdaten und ein Kennzeichen zur Kennzeichnung gefährdeter Vorrichtungen enthalten. Eine zertifizierte Stelle ist für die Aktualisierung der gespeicherten Daten verantwortlich.
  • Wie in 2 dargestellt, werden die folgenden Operationen zum Beglaubigen des Hardware-Wallets 201 in Bezug auf den geschützten Smart-Contract 203 durchgeführt:
    • 1) Der Berechtigungsnachweis wird in den gesicherten Speicher des HSM des Hardware-Wallets 202 geschrieben. Dabei kann es sich um einen dedizierten Schlüssel für eine vollständige Basisbeglaubigung oder um eine DAA-Beglaubigung wie oben beschrieben handeln. Mit diesem Token kann der Hardware-Wallet 202 Beglaubigungsinformationen erstellen, um nachzuweisen, dass er zu einem bestimmten Hardware-Wallet-Modell gehört (z.B. dass es sich um eine zertifizierte Vorrichtung eines bestimmten Herstellers handelt).
    • 2) Im Falle von DAA kann der Hardware-Wallet 202 den Token (Berechtigungsnachweis) randomisieren, um die Offenbarung der Identität gegenüber dem Hersteller zu verhindern und jede Verbindung zu zuvor signierten Beglaubigungsinformationen zu entfernen.
    • 3) Auf Anfrage des Nutzers erstellt der Hardware-Wallet 202 ein neues Blockchain-Schlüsselpaar in ihrem gesicherten Speicher und leitet eine Blockchain-Adresse ab, die dem Blockchain-Schlüsselpaar entspricht (z.B. abgeleitet aus dem öffentlichen Schlüssel des Blockchain-Schlüsselpaars). Er erstellt Beglaubigungsinformationen, indem er die erstellte Blockchain-Adresse mit dem Berechtigungsnachweis signiert, um die Herkunft des Schlüssels zu belegen, d.h. um zu bescheinigen, dass der private Schlüssel des erstellten Schlüsselpaares sicher in dem Hardware-Wallet 202 des spezifischen Hardware-Wallet-Modells gespeichert ist.
    • 4) Wenn der Nutzer des Hardware-Wallets 202 den vom geschützten Smart-Contract 203 bereitgestellten Dienst nutzen möchte, meldet er sich beim geschützten Smart-Contract 203 an, indem er eine bereitgestellte Funktion des geschützten Smart-Contracts 203 aufruft, indem er eine entsprechende Transaktion initiiert, die die Beglaubigungsinformationen in einem bestimmten Format enthält (wie vom geschützten Smart-Contract 203 gefordert). Der Hardware-Wallet 202 signiert die Transaktion mit dem in 3) erzeugten Schlüssel.
    • 5) Der geschützte Smart-Contract 203 verwendet die Beglaubigungsschnittstelle (die eine in den geschützten Smart-Contract 203 selbst oder einen anderen Smart-Contract, den der geschützte Smart-Contract 203 aufruft, eingebettete Funktionalität sein kann), um die Beglaubigungsdaten zu überprüfen. Dies beinhaltet:
      • 5.1) Überprüfen der Signatur der (in 3) erstellten) Blockchain-Adresse mit Hilfe von (öffentlichen) Informationen aus dem Berechtigungsnachweis des Hardware-Wallets (entweder ein öffentlicher Schlüssel oder ein DAA-Berechtigungsnachweis), das der Hardware-Wallet in die Beglaubigungsdaten einfügt. Der Hardware-Wallet fügt beispielsweise seine Blockchain-Adresse an andere Beglaubigungsdaten (wie die öffentlichen Informationen aus dem Berechtigungsnachweis des Hardware-Wallets) an, signiert diese und versendet sie mit einer Blockchain-Transaktion. Der geschützte Smart-Contract 203 kann dann die Adresse aus der Blockchain-Transaktion lesen.
      • 5.2) Vergleichen der in den signierten Beglaubigungsinformationen enthaltenen Blockchain-Adresse des Hardware-Wallets mit dem tatsächlichen Absender der Transaktion.
    • 6) Die Beglaubigungsinformationen enthalten eine Kennung, die den Hersteller und das Modell des Wallets angibt. Die Beglaubigungsschnittstelle 204 verwendet diese Informationen, um den öffentlichen Schlüssel des Herstellers und die Fähigkeiten des Hardware-Wallet-Modells aus dem MDS 205 zu lesen.
    • 7) Mit dem öffentlichen Schlüssel des Herstellers kann die Beglaubigungsschnittstelle 204 bestätigen, dass die Beglaubigungsdaten tatsächlich von einer Vorrichtung eines zertifizierten Hardwaremodells signiert wurden, indem sie prüft, ob der Berechtigungsnachweis eine Signatur (oder, je nach spezifischem Protokoll, andere kryptografische Daten) des Herstellers enthält. Der Status dieser Überprüfung (d.h. insbesondere eine Beglaubigungsbestätigung, wenn die Überprüfung, dass der Hardware-Wallet zu einem zertifizierten Hardware-Modell gehört, erfolgreich war) wird an den geschützten Smart-Contract 203 zurückgegeben.
    • 8) Wenn die Verifizierung erfolgreich war und der Hardware-Wallet 202 die von dem geschützten Contract 203 geforderte Mindestsicherheitsstufe erfüllt (die aus dem Modell des Hardware-Modells ermittelt werden kann), speichert der geschützte Contract 203 die (in der Transaktion enthaltene) Blockchain-Adresse des Hardware-Wallets in Verbindung mit den Fähigkeiten des Hardware-Wallets in einer Liste.
    • 9) Die Funktionen des geschützten Smart-Contracts 203 können nun von dem Hardware-Wallet 202 wie jede Funktion eines gewöhnlichen Smart-Contracts genutzt werden. Vor der Ausführung einer eingeschränkten Funktion bestätigt der geschützte Smart-Contract 203, dass die Blockchain-Adresse, die die Ausführung der eingeschränkten Funktion veranlasst, zuvor mit der erforderlichen Sicherheitsstufe beglaubigt wurde, indem er die Liste konsultiert.
  • Der geschützte Vertrag 203 kann zum Beispiel wie folgt aufgebaut sein
 Klasse MultiSignContract {
         "PIN anfordern"
         Funktion registerUser()
         ...
         "Fingerabdruck erforderlich"
         Funktion registerAdmin()
         }...
  • Das bedeutet, dass der geschützte Contract 203 einen Nutzer nur dann als normalen Nutzer registriert, wenn der Hardware-Wallet des Nutzers den PIN-Schutz der Schlüssel unterstützt, und einen Nutzer nur dann als Administrator registriert, wenn der Hardware-Wallet des Nutzers den Fingerabdruckschutz der Schlüssel unterstützt.
  • Im obigen Beispiel fordert der geschützte Contract 203 eine Beglaubigung des Hardware-Wallets 202 über die Beglaubigungsschnittstelle 203 an. Ein anderer Anwendungsfall ist, dass der Hardware-Wallet eine Beglaubigung für sich selbst anfordert (z.B. möchte ein Nutzer des Hardware-Wallets verifizieren, dass der Hardware-Wallet keine gefälschte Vorrichtung ist).
  • 3 zeigt ein Flussdiagramm 300 zur Veranschaulichung eines Blockchain-basierten Beglaubigens eines Hardware-Wallets 302 für den Hardware-Wallet 302 selbst gemäß einer Ausführungsform.
  • Ähnlich wie im Flussdiagramm 200 von 3 sind ein Emittent 301, ein Hardware-Wallet 302, ein Bescheinigungsdienst 304 und ein Metadatendienst 305 am Fluss beteiligt, nicht aber der geschützte Contract 203.
  • Dementsprechend wird Operation 4) der 2) durch eine Anfrage zum Beglaubigen an die Beglaubigungsschnittstelle 304 (entsprechend 5) der 2) ersetzt. Der weitere Ablauf ist wie in 2) beschrieben, nur dass 8) und 9) entfallen und die Beglaubigungsschnittstelle 304 die Beglaubigungsbestätigung in 6) zurück an den Hardware-Wallet 302 sendet.
  • Zusammenfassend kann gesagt werden, dass gemäß verschiedenen Ausführungsformen Verfahren bereitgestellt werden, wie in 4 und 5 dargestellt.
  • 4 zeigt ein Flussdiagramm 400, das ein Verfahren zum Beglaubigen eines Hardware-Wallets einer Blockchain illustriert.
  • In 401 wird ein Metadatendienst-Smart-Contract auf der Blockchain angewendet, wobei der Metadatendienst-Smart-Contract ein Smart-Contract ist, der Informationen über zertifizierte Hardware-Wallet-Modelle speichert.
  • In 402 wird ein Beglaubigung-Smart-Contract auf der Blockchain angewendet, wobei der Beglaubigung-Smart-Contract ein Smart-Contract ist, der eingerichtet ist, um Beglaubigungsinformationen des Hardware-Wallets zu empfangen, zu verifizieren, dass die Beglaubigungsinformationen von dem Hardware-Wallet gesendet wurden, und durch Abrufen von Informationen aus dem Metadatendienst-Smart-Contract zu verifizieren, dass es sich bei dem Hardware-Wallet um ein zertifiziertes Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten handelt, und eine Beglaubigungsbestätigung für den Hardware-Wallet bereitzustellen, wenn die Beglaubigungsinformationen von dem Hardware-Wallet gesendet wurden und der Hardware-Wallet ein zertifiziertes Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten ist.
  • Es sei darauf hingewiesen, dass der Smart-Contract für den Metadatendienst und der Smart-Contract für die Bescheinigung durch einen einzigen Smart-Contract implementiert werden können, der die Funktionen beider Contracts kombiniert. In diesem Fall entspricht der Einsatz dieses einzigen Smart-Contracts dem Einsatz sowohl des Smart-Contracts für den Metadatendienst als auch des Smart-Contracts für die Beglaubigung. Es kann sich jedoch auch um zwei separate Smart-Contracts handeln.
  • Das Verfahren in 4 kann als Konfiguration der von der Blockchain bereitgestellten Beglaubigungsfunktionalität angesehen werden. Der Ablauf von 5 kann als auf die Nutzung ausgerichtet angesehen werden.
  • 5 zeigt ein Flussdiagramm 500, das ein Verfahren zur Überprüfung der Verwendung eines Hardware-Wallets veranschaulicht.
  • In 501 initiiert ein Hardware-Wallet die Ausführung einer Funktion eines Smart-Contracts (in den obigen Beispielen als „geschützter“ Smart-Contract bezeichnet), der auf der Blockchain bereitgestellt und zum Bereitstellen der Funktion für Hardware-Wallets mit den erforderlichen Fähigkeiten eingerichtet ist.
  • In 502 prüft ein Beglaubigung-Smart-Contract, bei dem es sich um einen Smart-Contract handelt, der auf der Blockchain angewendet wird und eingerichtet ist, um zu bestätigen, dass der Hardware-Wallet über die erforderlichen Fähigkeiten verfügt, zu prüfen, ob es sich bei dem Hardware-Wallet um ein zertifiziertes Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten handelt, und der, wenn es sich bei dem Hardware-Wallet um ein zertifiziertes Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten handelt, eine Beglaubigungsbestätigung ausstellt.
  • In 503 führt der dritte Smart-Contract die Funktion für den Hardware-Wallet aus, wenn der Beglaubigung-Smart-Contract die Beglaubigungsbestätigung liefert.
  • Wie oben beschrieben, können der („geschützte“) Smart-Contract und der Smart-Contract über die Beglaubigung zu einem einzigen Contract kombiniert werden (d.h. die Funktion der Überprüfung und der Bestätigung der Bescheinigung kann eine Funktion des („geschützten“) Smart-Contracts sein). Es kann sich aber auch um zwei separate Smart-Contracts handeln.
  • Es ist zu beachten, dass die Prüfung, ob der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört, vor dem Auslösen der Ausführung einer Funktion des Smart-Contracts erfolgen kann, z.B. als Reaktion auf eine Registrierung des Hardware-Wallets beim Smart-Contract. In diesem Fall kann der Smart-Contract, wenn der Beglaubigung-Smart-Contract die Beglaubigungsbestätigung liefert, einen Hinweis darauf speichern, dass der Hardware-Wallet über die erforderlichen Fähigkeiten verfügt, und die Funktion für den Hardware-Wallet ausführen (die der Hardware-Wallet zu einem späteren Zeitpunkt initiiert), wenn er einen Hinweis darauf gespeichert hat, dass der Hardware-Wallet über die erforderlichen Fähigkeiten verfügt.
  • Gemäß verschiedenen Ausführungsformen wird mit anderen Worten ein Schema zum Beglaubigen von Schlüsselnachweisen durch einen oder mehrere Smart-Contracts implementiert, die auf einer Blockchain eingesetzt werden.
  • So ist beispielsweise ein DAA-Schema mit On-Chain-Verifizierung von Anmeldeinformationen vorgesehen, bei dem ein Hardware-Wallet Beglaubigungsinformationen für eine Blockchain-Adresse erstellt und ein Smart-Contract die Bescheinigung ohne eine (außerhalb der Kette befindliche) dritte Partei überprüfen kann. Der Smart-Contract kann somit für jede Funktion, die er bereitstellt, ein bestimmtes Sicherheitsniveau durchsetzen. So kann beispielsweise die Verwendung einer Authentifizierungshardware für alle Mitglieder für Multi-Signatur-Wallets und Social-Recovery-Wallets mit diesem Schema durchgesetzt werden, und BYOD (bring your own device) kann für verschiedene Anwendungen unterstützt werden. Das System kann insbesondere einen verteilten Metadatendienst umfassen, der auf einem oder mehreren Smart-Contracts bereitgestellt wird, so dass Hardware-Fähigkeiten und -Zertifikate von dem Smart-Contract gelesen werden können, der die Bescheinigung von der Blockchain (und nicht von einem Off-Chain-Dienst) verifiziert.
  • Gemäß verschiedenen Ausführungsformen kann das vorgesehene Schema eine datenschutzfreundliche Zugangskontrolle bieten, d.h. den Zugang auf Nutzer mit bestätigten Authentifikatoren (z.B. einer Mitarbeiterkarte) beschränken. Es ermöglicht z.B. verschiedene Anwendungen mit Multi-Berechtigungsnachweis-Speicherung, erlaubt die Regulierung von Hardware-Wallets, z.B. die Durchsetzung von zertifizierten Wallets mit Pseudonym-Widerrufsmechanismen für Krypto-Börsen/Krypto-Dienste von Banken und erlaubt einer Behörde, in Ausnahmefällen Vermögenswerte „einzufrieren“ oder Pseudonym mit Identität zu verknüpfen. So kann z.B. ein Hardware-Wallet-Typ aus der Liste der zertifizierten Vorrichtungen entfernt werden, die im Smart-Contract des Metadatendienstes gespeichert ist.
  • Die Verfahren können von einer oder mehreren Vorrichtungen eines Blockchain-Netzwerks, wie in 1 dargestellt, ausgeführt werden. So kann beispielsweise ein Nutzerendgerät 101 der Hardware-Wallet entsprechen, und die verschiedenen Smart-Contracts können von einem oder mehreren Nutzerendgeräten eingesetzt werden.
  • Im Folgenden werden verschiedene Beispiele beschrieben:
    • Beispiel 1 ist ein Verfahren wie oben unter Bezugnahme auf 4 beschrieben.
    • Beispiel 2 ist das Verfahren aus Beispiel 1, ferner aufweisend, einen Aussteller des Hardware-Wallets, der die Informationen über die zertifizierten Hardware-Wallet-Modelle im Smart-Contract des Metadatendienstes speichert.
    • Beispiel 3 ist das Verfahren von Beispiel 2, wobei die Informationen über die zertifizierten Hardware-Wallet-Modelle Informationen über die Fähigkeiten der zertifizierten Hardware-Wallet-Modelle enthalten.
    • Beispiel 4 ist das Verfahren aus Beispiel 2 oder 3, wobei der Aussteller des Hardware-Wallets zumindest einen Teil der Informationen über die zertifizierten Hardware-Wallet-Modelle speichert, indem er eine Metadatenfunktion des Metadatendienst-Smart-Contracts aufruft, um die in dem Metadatendienst-Smart-Contract gespeicherten Informationen zu aktualisieren.
    • Beispiel 5 ist das Verfahren nach einem der Beispiele 2 bis 4, wobei die Informationen über die zertifizierten Hardware-Wallet-Modelle einen öffentlichen Schlüssel des Ausstellers enthalten.
    • Beispiel 6 ist das Verfahren nach einem der Beispiele 1 bis 5, wobei der Beglaubigung-Smart-Contract eingerichtet ist, unter Verwendung des öffentlichen Schlüssels des Ausstellers zu verifizieren, dass die Beglaubigungsinformationen Informationen eines vom Aussteller bereitgestellten Ausweises enthalten.
    • Beispiel 7 ist das Verfahren aus Beispiel 6, wobei die Informationen des Berechtigungsnachweises ein öffentlicher Schlüssel eines Schlüsselpaares oder andere kryptografische Daten sind, die der Aussteller des Hardware-Wallets zur Verfügung stellt.
    • Beispiel 8 ist das Verfahren von Beispiel 6, wobei der Berechtigungsnachweis einem öffentlichen Schlüssel eines direkten anonymen Berechtigungsnachweises entspricht, der vom Aussteller des Hardware-Wallets bereitgestellt wird.
    • Beispiel 9 ist das Verfahren nach einem der Beispiele 1 bis 8, wobei der Beglaubigung-Smart-Contract ein Smart-Contract ist, der eingerichtet ist, die Beglaubigungsinformationen des Hardware-Wallets von einem Smart-Contract zu empfangen, der die Beglaubigung des Hardware-Wallets anfordert, oder von dem Hardware-Wallet, der die Beglaubigung für sich selbst anfordert.
    • Beispiel 10 ist ein Verfahren wie oben unter Bezugnahme auf 5 beschrieben.
    • Beispiel 11 ist das Verfahren von Beispiel 10, aufweisend, dass der Smart-Contract eine Anforderung für eine Beglaubigungsbestätigung an den Beglaubigung-Smart-Contract überträgt und der Beglaubigung-Smart-Contract als Reaktion auf die Anforderung prüft, ob der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell gehört, das die erforderlichen Fähigkeiten aufweist, und, wenn der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell gehört, das die erforderlichen Fähigkeiten aufweist, dem Smart-Contract eine Beglaubigungsbestätigung bereitstellt, wobei der Smart-Contract die Funktion für den Hardware-Wallet ausführt, wenn er durch die Beglaubigungsbestätigung von dem Beglaubigung-Smart-Contract bereitgestellt wird.
    • Beispiel 12 ist das Verfahren von Beispiel 10 oder 11, aufweisend, dass der Hardware-Wallet eine Beglaubigungsinformation mit einer Anfrage zur Registrierung beim Smart-Contract bereitstellt, bevor die Ausführung der Funktion initiiert wird, wobei der Beglaubigung-Smart-Contract unter Verwendung der Beglaubigungsinformation prüft, ob die Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört.
    • Beispiel 13 ist das Verfahren aus Beispiel 12, bei dem der Beglaubigung-Smart-Contract prüft, ob der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört, indem er die Beglaubigungsinformationen als Reaktion auf die Registrierung verwendet.
    • Beispiel 14 ist das Verfahren von Beispiel 13, wobei der Smart-Contract, wenn der Beglaubigung-Smart-Contract die Beglaubigungsbestätigung liefert, einen Hinweis speichert, dass der Hardware-Wallet die erforderlichen Fähigkeiten besitzt, und die Funktion für den Hardware-Wallet ausführt, wenn er einen Hinweis gespeichert hat, dass der Hardware-Wallet die erforderlichen Fähigkeiten besitzt.
    • Beispiel 15 ist ein Blockchain-Netzwerk, das eingerichtet ist, um das Verfahren eines der Beispiele 1 bis 14 auszuführen.
    • Es ist zu beachten, dass die Merkmale jedes der Beispiele mit jedem der anderen Beispiele kombiniert werden können. Insbesondere können der Beglaubigung-Smart-Contract und der Metadatendienst-Smart-Contract im Rahmen des Verfahrens zum Verifizieren eines Hardware-Wallets Funktionen ausführen, die sie entsprechend ihrem Einsatz, wie er im Rahmen des Verfahrens zum Beglaubigen eines Hardware-Wallets einer Blockchain beschrieben wurde, aufzeigen.
  • Obwohl hier spezifische Ausführungsformen abgebildet und beschrieben wurden, wird der Fachmann erkennen, dass eine Vielzahl alternativer und/oder gleichwertiger Ausführungsformen anstelle der abgebildeten und beschriebenen spezifischen Ausführungsformen verwendet werden können, ohne den Anwendungsbereich der vorliegenden Erfindung zu verlassen. Die vorliegende Anmeldung soll alle Anpassungen oder Variationen der hierin beschriebenen spezifischen Ausführungsformen abdecken. Daher ist beabsichtigt, dass diese Erfindung nur durch die Ansprüche und deren Äquivalente beschränkt wird.
  • Bezugszeichen
  • 100
    Blockchain-Netzwerk
    101
    Vorrichtungen
    102
    Kommunikationsnetz
    103
    Blockchain-Anbieter Computervorrichtung
    104
    Datenverarbeitungsrechner
    200
    Ablaufdiagramm
    201
    Hardware-Wallet-Aussteller
    202
    Hardware-Wallet
    203
    geschützter Smart-Contract
    204
    Beglaubigungsschnittstelle
    205
    Metadatendienst
    300
    Ablaufdiagramm
    301
    Hardware-Wallet-Aussteller
    302
    Hardware-Wallet
    304
    Beglaubigungsschnittstelle
    305
    Metadatendienst
    400
    Ablaufdiagramm
    401, 402
    Bearbeitung
    500
    Ablaufdiagramm
    501-503
    Bearbeitung

    Claims (15)

    1. Ein Verfahren zum Beglaubigen eines Hardware-Wallets einer Blockchain, aufweisend: Bereitstellen eines Smart-Contracts für einen Metadatendienst auf der Blockchain, wobei der Smart-Contract für den Metadatendienst ein Smart-Contract ist, der Informationen über zertifizierte Hardware-Wallet-Modelle speichert; und Bereitstellen eines Beglaubigung-Smart-Contracts auf der Blockchain, wobei der Beglaubigung-Smart-Contract ein Smart-Contract ist, der eingerichtet ist, um Beglaubigungsinformationen des Hardware-Wallets zu empfangen, zu verifizieren, dass die Beglaubigungsinformationen von der Hardware-Wallet gesendet wurde, und durch Abrufen von Informationen von dem Metadatendienst-Smart-Contract zu verifizieren, dass der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört, und eine Beglaubigungsbestätigung für den Hardware-Wallet bereitzustellen, wenn die Beglaubigungsinformationen von dem Hardware-Wallet gesendet wurden und der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört.
    2. Das Verfahren nach Anspruch 1, ferner aufweisend, dass ein Aussteller des Hardware-Wallets die Informationen über die zertifizierten Hardware-Wallet-Modelle in dem Metadatendienst-Smart-Contract speichert.
    3. Das Verfahren nach Anspruch 2, wobei die Informationen über die zertifizierten Hardware-Wallet-Modelle Informationen über die Fähigkeiten der zertifizierten Hardware-Wallet-Modelle enthalten.
    4. Das Verfahren nach Anspruch 2 oder 3, wobei der Aussteller des Hardware-Wallets zumindest einen Teil der Informationen über die zertifizierten Hardware-Wallet-Modelle speichert, indem er eine Metadatenfunktion des Metadatendienst-Smart-Contracts aufruft, um die in dem Metadatendienst-Smart-Contract gespeicherten Informationen zu aktualisieren.
    5. Das Verfahren nach einem der Ansprüche 2 bis 4, wobei die Informationen über die zertifizierten Hardware-Wallet-Modelle einen öffentlichen Schlüssel des Ausstellers enthalten.
    6. Das Verfahren nach einem der Ansprüche 1 bis 5, wobei der Smart-Contract zum Beglaubigen eingerichtet ist, um unter Verwendung des öffentlichen Schlüssels des Ausstellers zu verifizieren, dass die Beglaubigungsinformationen Informationen eines vom Aussteller bereitgestellten Berechtigungsnachweises enthalten.
    7. Das Verfahren nach Anspruch 6, wobei es sich bei den Informationen des Berechtigungsnachweises um einen öffentlichen Schlüssel eines Schlüsselpaares oder andere kryptografische Daten handelt, die dem Hardware-Wallet vom Aussteller zur Verfügung gestellt werden.
    8. Das Verfahren nach Anspruch 6, wobei der Berechtigungsnachweis einem öffentlichen Schlüssel eines direkten anonymen Berechtigungsnachweises entspricht, der von dem Aussteller des Hardware-Wallets bereitgestellt wird.
    9. Das Verfahren nach einem der Ansprüche 1 bis 8, wobei der Beglaubigung-Smart-Contract ein Smart-Contract ist, der eingerichtet ist, um die Beglaubigungsinformationen des Hardware-Wallets von einem Smart-Contract zu empfangen, der die Bescheinigung des Hardware-Wallets anfordert, oder von dem Hardware-Wallet, der die Bescheinigung für sich selbst anfordert.
    10. Ein Verfahren zum Beglaubigen der Verwendung einer Hardware-Geldbörse, aufweisend: einen Hardware-Wallet, der die Ausführung einer Funktion eines Smart-Contracts initiiert, der auf der Blockchain eingesetzt wird und eingerichtet ist, um die Funktion für Hardware-Wallets mit den erforderlichen Fähigkeiten bereitzustellen; einen Beglaubigung-Smart-Contract, bei dem es sich um einen auf der Blockchain eingerichteten Smart-Contract handelt, der dazu eingerichtet ist, zu bestätigen, dass der Hardware-Wallet über die erforderlichen Fähigkeiten verfügt, zu prüfen, ob die Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell gehört, das die erforderlichen Fähigkeiten aufweist, und, wenn der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell gehört, das die erforderlichen Fähigkeiten aufweist, eine Beglaubigungsbestätigung bereitzustellen; und der Smart-Contract, der die Funktion für den Hardware-Wallet ausführt, wenn der Beglaubigung-Smart-Contract die Beglaubigungsbestätigung liefert.
    11. Das Verfahren nach Anspruch 10, aufweisend, dass der Smart-Contract eine Anforderung für eine Beglaubigungsbestätigung an den Beglaubigung-Smart-Contract sendet und der Beglaubigung-Smart-Contract als Reaktion auf die Anforderung prüft, ob der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört, und, wenn die Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört, dem Smart-Contract eine Beglaubigungsbestätigung bereitstellt, wobei der Smart-Contract die Funktion für den Hardware-Wallet ausführt, wenn sie durch die Beglaubigungsbestätigung vom intelligenten Bescheinigungsvertrag bereitgestellt wird.
    12. Das Verfahren nach Anspruch 10 oder 11, aufweisend, dass der Hardware-Wallet vor dem Initiieren der Ausführung der Funktion Beglaubigungsinformationen mit einer Anfrage zur Registrierung bei dem Smart-Contract bereitstellt, wobei der Smart-Contract zum Beglaubigen unter Verwendung der Beglaubigungsinformationen prüft, ob die Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört.
    13. Das Verfahren nach Anspruch 12, wobei der Beglaubigung-Smart-Contract unter Verwendung der Beglaubigungsinformationen als Reaktion auf die Registrierung prüft, ob der Hardware-Wallet zu einem zertifizierten Hardware-Wallet-Modell mit den erforderlichen Fähigkeiten gehört.
    14. Das Verfahren nach Anspruch 13, wobei der Smart-Contract, wenn der Beglaubigung-Smart-Contract die Beglaubigungsbestätigung liefert, einen Hinweis darauf speichert, dass der Hardware-Wallet die erforderlichen Fähigkeiten besitzt, und die Funktion für den Hardware-Wallet ausführt, wenn er einen Hinweis darauf gespeichert hat, dass der Hardware-Wallet die erforderlichen Fähigkeiten besitzt.
    15. Ein Blockchain-Netzwerk, eingerichtet zum Durchführen des Verfahrens nach einem der Ansprüche 1 bis 14.
    DE102022130483.3A 2022-11-17 2022-11-17 Verfahren zum beglaubigen eines hardware-wallets einer blockchain Pending DE102022130483A1 (de)

    Priority Applications (2)

    Application Number Priority Date Filing Date Title
    DE102022130483.3A DE102022130483A1 (de) 2022-11-17 2022-11-17 Verfahren zum beglaubigen eines hardware-wallets einer blockchain
    US18/512,535 US20240169349A1 (en) 2022-11-17 2023-11-17 Method for Attestation of a Hardware Wallet of a Blockchain

    Applications Claiming Priority (1)

    Application Number Priority Date Filing Date Title
    DE102022130483.3A DE102022130483A1 (de) 2022-11-17 2022-11-17 Verfahren zum beglaubigen eines hardware-wallets einer blockchain

    Publications (1)

    Publication Number Publication Date
    DE102022130483A1 true DE102022130483A1 (de) 2024-05-23

    Family

    ID=90923404

    Family Applications (1)

    Application Number Title Priority Date Filing Date
    DE102022130483.3A Pending DE102022130483A1 (de) 2022-11-17 2022-11-17 Verfahren zum beglaubigen eines hardware-wallets einer blockchain

    Country Status (2)

    Country Link
    US (1) US20240169349A1 (de)
    DE (1) DE102022130483A1 (de)

    Citations (4)

    * Cited by examiner, † Cited by third party
    Publication number Priority date Publication date Assignee Title
    US20180314809A1 (en) 2017-04-28 2018-11-01 Accenture Global Solutions Limited Entitlement management system
    US20180326291A1 (en) 2016-05-02 2018-11-15 Bao Tran Smart device
    US20200067708A1 (en) 2018-08-22 2020-02-27 Sasken Technologies Ltd Method for ensuring security of an internet of things network
    US11392947B1 (en) 2017-02-27 2022-07-19 United Services Automobile Association (Usaa) Distributed ledger for device management

    Patent Citations (4)

    * Cited by examiner, † Cited by third party
    Publication number Priority date Publication date Assignee Title
    US20180326291A1 (en) 2016-05-02 2018-11-15 Bao Tran Smart device
    US11392947B1 (en) 2017-02-27 2022-07-19 United Services Automobile Association (Usaa) Distributed ledger for device management
    US20180314809A1 (en) 2017-04-28 2018-11-01 Accenture Global Solutions Limited Entitlement management system
    US20200067708A1 (en) 2018-08-22 2020-02-27 Sasken Technologies Ltd Method for ensuring security of an internet of things network

    Also Published As

    Publication number Publication date
    US20240169349A1 (en) 2024-05-23

    Similar Documents

    Publication Publication Date Title
    DE102017204536B3 (de) Ausstellen virtueller Dokumente in einer Blockchain
    EP3446273B1 (de) Elektronisches verfahren zur kryptographisch gesicherten überweisung eines betrags einer kryptowährung
    EP2454704B1 (de) Verfahren zum lesen von attributen aus einem id-token
    EP3474172B1 (de) Zugangskontrolle unter verwendung einer blockchain
    EP3699791B1 (de) Zugangskontrolle mit einem mobilfunkgerät
    EP2765752A1 (de) Verfahren zum Versehen eines mobilen Endgeräts mit einem Authentisierungszertifikat
    EP3114600B1 (de) Sicherheitssystem mit zugriffskontrolle
    DE202015009601U1 (de) System zur persönlichen Identifizierung und Verifizierung
    WO2022200035A1 (de) Verfahren und vorrichtung zum erzeugen, bereitstellen und weitergeben eines vertrauenswürdigen elektronischen datensatzes oder zertifikates basierend auf einem einen nutzer betreffenden elektronischen dokument
    DE202015009562U1 (de) System zur persönlichen Identifizierung und Verifizierung
    EP3321832A1 (de) Verteilen zum lesen von attributen aus einem id-token
    EP4254234A1 (de) Ausstellen eines digitalen credentials für eine entität
    DE102016202262A1 (de) Verfahren und System zur Authentifizierung eines mobilen Telekommunikationsendgeräts an einem Dienst-Computersystem und mobilen Telekommunikationsendgerät
    EP3125464B1 (de) Sperrdienst für ein durch einen id-token erzeugtes zertifikat
    EP3244331B1 (de) Verfahren zum lesen von attributen aus einem id-token
    EP3767513A1 (de) Verfahren zur sicheren durchführung einer fernsignatur sowie sicherheitssystem
    EP4111399B1 (de) Verfahren, endgerät, überwachungsinstanz sowie bezahlsystem zum verwalten von elektronischen münzdatensätzen
    DE102022130483A1 (de) Verfahren zum beglaubigen eines hardware-wallets einer blockchain
    EP3244332B1 (de) Verfahren zum lesen von attributen aus einem id-token
    DE102021129047B4 (de) Selektiv anonymisierende Überweisung einer Kryptowährung
    EP3358488B1 (de) Verfahren zum erkennen von unberechtigten kopien digitaler sicherheits-token
    EP4381408A1 (de) Sicheres element, verfahren zum registrieren von token und tokenreferenzregister
    WO2024012624A1 (de) Verfahren zur sicheren generierung eines herausgebbaren tokens, verfahren zur sicheren vernichtung eines tokens und tokenherausgeber
    DE102022109813A1 (de) Vorrichtungen, System und Verfahren zum elektronischen bargeldlosen Bezahlen
    DE102010026697A1 (de) Gesicherter automatisierter Austausch von Informationen zur Vertrauenswürdigkeit von Geschäfts- oder Kommunikationspartnern

    Legal Events

    Date Code Title Description
    R012 Request for examination validly filed
    R016 Response to examination communication