DE202022101294U1 - A blockchain-based API system to improve user privacy in private blockchain-based applications - Google Patents

A blockchain-based API system to improve user privacy in private blockchain-based applications Download PDF

Info

Publication number
DE202022101294U1
DE202022101294U1 DE202022101294.6U DE202022101294U DE202022101294U1 DE 202022101294 U1 DE202022101294 U1 DE 202022101294U1 DE 202022101294 U DE202022101294 U DE 202022101294U DE 202022101294 U1 DE202022101294 U1 DE 202022101294U1
Authority
DE
Germany
Prior art keywords
blockchain
user
network
api
password
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.)
Active
Application number
DE202022101294.6U
Other languages
German (de)
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE202022101294.6U priority Critical patent/DE202022101294U1/en
Publication of DE202022101294U1 publication Critical patent/DE202022101294U1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Ein Blockchain-basiertes API-System zur Verbesserung der Privatsphäre von Benutzern in privaten Blockchain-basierten Anwendungen, wobei das System Folgendes umfasst:
einen Client-Server, um eine API-Anfrage über ein Netzwerk zu generieren;
eine Middleware, die so konfiguriert ist, dass sie eine Client-Anforderung validiert und die Anforderung an eine Authentifizierungsschicht zur Benutzerauthentifizierung weiterleitet; und
ein DID-Management, ein Fabric-Utility-Token-Management und ein Blockchain-Modul, die zusammen so konfiguriert sind, dass sie das Indy-Netzwerk, das Fabric-Netzwerk und das Blockchain-Netzwerk verbinden.

Figure DE202022101294U1_0000
A blockchain-based API system for enhancing user privacy in private blockchain-based applications, the system comprising:
a client-server to generate an API request over a network;
a middleware configured to validate a client request and forward the request to an authentication layer for user authentication; and
a DID management, a fabric utility token management and a blockchain module together configured to connect the Indy network, the fabric network and the blockchain network.
Figure DE202022101294U1_0000

Description

BEREICH DER ERFINDUNGFIELD OF THE INVENTION

Die vorliegende Offenlegung bezieht sich auf ein Blockchain-basiertes API-System zur Verbesserung der Privatsphäre der Nutzer in privaten Blockchain-basierten Anwendungen. Im Einzelnen bietet das System zwei Dienste an, die eine biometrische Verifizierung auf der Grundlage bestehender, von der Regierung ausgestellter Identitätskarten sowie eine nominale Währungsüberweisung über ein bestehendes, mit der Identität verbundenes Bankkonto zur Verifizierung des zweiten Faktors umfassen.The present disclosure relates to a blockchain-based API system to improve user privacy in private blockchain-based applications. More specifically, the system offers two services, which include biometric verification based on existing government-issued identity cards, and a nominal currency transfer through an existing identity-linked bank account for second factor verification.

HINTERGRUND DER ERFINDUNGBACKGROUND OF THE INVENTION

Blockchain ist eine konsensbasierte, sichere dezentrale öffentliche/private Datenbank, die Informationen unveränderlich über das Peer-to-Peer-Netzwerk speichert. Blockchain ist eine gemeinsam genutzte Datenbanklösung, die die Details von Daten fortlaufend verarbeitet und aufzeichnet. Die Daten in dem verteilten Netzwerk werden durch Konsensmechanismen im Netzwerk validiert. Ein Block in der Blockchain speichert alle Transaktionen, die jemals im Netzwerk validiert wurden. Die Transaktionsinformationen werden mit jedem Knoten im Netzwerk geteilt. Dieses Hauptmerkmal der Blockchain sorgt für Transparenz im gesamten dezentralen Netzwerk.Alle Knoten in dem verteilten Netz sind für einander anonym. Diese Funktion gewährleistet die Privatsphäre der Knoten in einem Netzwerk zur Authentifizierung von Transaktionen. Alle Transaktionen in der Blockchain sind unveränderlich, das heißt, sobald eine Transaktion in die Blockchain geschrieben wurde, kann sie nicht mehr rückgängig gemacht oder entfernt werden. Daher besteht die Blockchain-Technologie, wie der Name schon sagt, aus einer Kette von Blöcken. Sie hat das Potenzial, rasche Veränderungen im digitalen Ökosystem herbeizuführen, indem sie das Konzept des Konsens nutzt, bei dem jede Transaktion authentifiziert werden kann, ohne die Sicherheit von Daten und Ressourcen zu gefährden. Daher sind die Unklarheit und der verteilte Konsens die wesentlichen Merkmale der Blockchain-Technologie.Daher besteht die Blockchain-Technologie aus den folgenden Schlüsselelementen: Es handelt sich um ein dezentralisiertes, verteiltes Hauptbuch (Datenstruktur), in dem Daten innerhalb von Blöcken in Form von Transaktionen gespeichert werden, wodurch die Abhängigkeit von vertrauenswürdigen Dritten für die Aufzeichnung der Daten in Blöcken entfällt; in öffentlichen Blockchains sind komplexere Algorithmen erforderlich, um böswillige Aktivitäten zu vermeiden, da jeder Block auf dem vorherigen Block aufbaut, die Unveränderlichkeit wurde erreicht, wobei Unveränderlichkeit bedeutet, dass es sehr schwierig ist, einen Block zu fälschen/zu verändern und dass es sehr einfach ist, Manipulationen zu erkennen, da all dies im Speicher der Computer existiert und als Computerprozess abläuft und jeder Teilnehmer der Blockchain eine nahezu identische Kopie des Blockchain-Ledgers besitzt.Blockchain is a consensus-based, secure, decentralized public/private database that immutably stores information across the peer-to-peer network. Blockchain is a shared database solution that continuously processes and records the details of data. The data in the distributed network is validated by consensus mechanisms in the network. A block in the blockchain stores all transactions that have ever been validated on the network. Transaction information is shared with every node in the network. This key feature of the blockchain provides transparency throughout the decentralized network. All nodes in the distributed network are anonymous to each other. This feature ensures the privacy of nodes in a network to authenticate transactions. All transactions on the blockchain are immutable, meaning once a transaction has been written to the blockchain it cannot be reversed or removed. Therefore, as the name suggests, blockchain technology consists of a chain of blocks. It has the potential to bring about rapid changes in the digital ecosystem by leveraging the concept of consensus, where each transaction can be authenticated without compromising the security of data and resources. Therefore, ambiguity and distributed consensus are the essential characteristics of blockchain technology. Therefore, blockchain technology consists of the following key elements: It is a decentralized, distributed ledger (data structure) in which data is stored within blocks in the form of transactions stored, eliminating the reliance on trusted third parties to record the data in blocks; in public blockchains, more complex algorithms are required to avoid malicious activity, as each block builds on the previous block, immutability has been achieved, where immutability means that it is very difficult to forge/alter a block and that it is very easy is to detect tampering as all of this exists in the computers memory and runs as a computer process and each participant of the blockchain has a nearly identical copy of the blockchain ledger.

Die Vorteile der Blockchain-Technologie überwiegen gegenüber den administrativen und technischen Herausforderungen. Darüber hinaus ist einer der aufkommenden Anwendungsfälle der Blockchain die Verwendung von „intelligenten Verträgen“. Intelligente Verträge sind Computerprogramme, die automatisch die Bedingungen eines Vertrages ausführen, sobald eine vorkonfigurierte Bedingung in einem verteilten Netzwerk erfüllt ist, woraufhin die an einer vertraglichen Vereinbarung beteiligten Unternehmen automatisch und auf transparente Weise Zahlungen gemäß dem Vertrag veranlassen können.The benefits of blockchain technology outweigh the administrative and technical challenges. Additionally, one of the emerging use cases of blockchain is the use of “smart contracts”. Smart contracts are computer programs that automatically execute the terms of a contract once a pre-configured condition is met in a distributed network, whereupon the companies involved in a contractual agreement can automatically and transparently initiate payments according to the contract.

In einer zum Stand der Technik gehörenden Lösung ( US9635000B1 ) wird ein Identitätsmanagementsystem auf der Grundlage des Konzepts der Blockchain und des öffentlichen Identitätsbuchs offengelegt. Das vorgeschlagene System kontrolliert digitale Identitäten, die Attribute zur Identifizierung von Personen und zur Geltendmachung von Identitätsansprüchen enthalten. Die Identitäten der Nutzer werden in Form von verknüpften Strukturen organisiert, die als persönliche Identitätsketten bezeichnet werden. Das in dieser Erfindung entworfene Hauptbuch kann sowohl in genehmigten als auch in nicht genehmigten Hauptbüchern verwendet werden. Das System bietet Sicherheit, Datenschutz und Anonymität für digitale Identitäten und erfüllt die Anforderungen an dezentrale, anonyme Identitätsmanagementsysteme.In a prior art solution ( US9635000B1 ) discloses an identity management system based on the concept of blockchain and the public identity book. The proposed system controls digital identities that contain attributes for identifying individuals and asserting identity claims. User identities are organized into linked structures called personal identity chains. The ledger designed in this invention can be used in both approved and non-approved ledgers. The system offers security, data protection and anonymity for digital identities and meets the requirements for decentralized, anonymous identity management systems.

In einer anderen Lösung aus dem Stand der Technik ( US9722790B2 ) wird ein Identitätsverwaltungsdienst offengelegt, der eine Blockchain nutzt, um Transaktionen zwischen Geräten zu zertifizieren, wobei die Identitätsüberprüfungsanwendung Datenüberprüfungsanfragen kapselt, um Daten als Identität eines Benutzers zu überprüfen, einschließlich vom Benutzer bereitgestellter Identifikationsdaten. Der Hash wird von der Anwendung zur Identitätsüberprüfung erstellt. Dann wird die Übereinstimmung dieses Hashes im dezentralen Ledger gesucht. Sie genehmigt die Identität, wenn beide Hashes übereinstimmen, andernfalls lehnt sie die Identität ab.In another prior art solution ( US9722790B2 ) discloses an identity management service that uses a blockchain to certify transactions between devices, with the identity verification application encapsulating data verification requests to verify data as a user's identity, including user-provided identification data. The hash is created by the identity verification application. Then the match of this hash is searched in the decentralized ledger. It approves the identity if both hashes match, otherwise it rejects the identity.

In Anbetracht der vorangegangenen Diskussion wird deutlich, dass ein Blockchain-basiertes API-System benötigt wird, um die Privatsphäre der Nutzer in privaten Blockchain-basierten Anwendungen zu verbessern.Considering the previous discussion, it becomes clear that a blockchain-based API system is needed to improve user privacy in private blockchain-based applications.

ZUSAMMENFASSUNG DER ERFINDUNGSUMMARY OF THE INVENTION

Die vorliegende Offenlegung zielt darauf ab, ein System mit einer Schnittstelle zur Blockchain bereitzustellen, um Lösungen für die Lösung von Orakelproblemen zu bieten und ein Ökosystem für das Management von Utility Token und Identitätsmanagement aufzubauen.The present disclosure aims to provide a system with an interface to the blockchain to provide solutions for solving oracle problems and to build an ecosystem for utility token management and identity management.

In einer Ausführungsform wird ein Blockchain-basiertes API-System zur Verbesserung der Privatsphäre von Nutzern in privaten Blockchain-basierten Anwendungen offengelegt. Das System umfasst einen Client-Server, um eine API-Anfrage über ein Netzwerk zu erzeugen. Das System umfasst ferner eine Middleware, die so konfiguriert ist, dass sie eine Client-Anfrage validiert und die Anfrage an eine Authentifizierungsschicht zur Benutzerauthentifizierung weiterleitet. Das System umfasst ferner eine DID-Verwaltung und eine Fabric Utility Token-Verwaltung, die zusammen so konfiguriert sind, dass sie das Indy-Netzwerk, das Fabric-Netzwerk und das Blockchain-Netzwerk verbinden.In one embodiment, a blockchain-based API system for enhancing user privacy in private blockchain-based applications is disclosed. The system includes a client-server to generate an API request over a network. The system also includes middleware configured to validate a client request and forward the request to an authentication layer for user authentication. The system further includes a DID manager and a fabric utility token manager configured together to connect the Indy network, the fabric network, and the blockchain network.

In einer anderen Ausführungsform leitet die Middleware nach der Anforderungsvalidierung den Anruf an das DID Management und das Fabric Utility Token Management weiter, die sich mit dem Indy Network bzw. dem Fabric Network verbinden.In another embodiment, after request validation, the middleware routes the call to DID Management and Fabric Utility Token Management, which connect to the Indy Network and the Fabric Network, respectively.

In einer anderen Ausführungsform umfasst die Middleware:eine Datenbank zum Speichern eines Schlüsselpaares, das unter Verwendung eines Satzes von Benutzeranmeldeinformationen erstellt wurde, wobei das Schlüsselpaar eine Benutzer-ID und ein Hash-Passwort umfasst, die kombiniert und in der Datenbank in verschlüsselter Form gespeichert sind;ein JWE-Token erstellt wird, der das Schlüsselpaar und die eindeutige ID enthält und für die künftige Kommunikation an den Benutzer zurückgeschickt wird, wobei die Benutzer das Kennwort nicht erneut eingeben müssen, wobei das vom Benutzer erhaltene JWE-Token verschlüsselt ist;eine Benutzerschnittstelle zum Erzeugen eines DID- und eines Blockchain-Kontos für jeden Benutzer, wobei ein DID-Passwort und ein Konto-Schlüssel-Passwort unter Verwendung des in der Datenbank gespeicherten privaten Schlüssels des Benutzers verschlüsselt wird, wobei das DID-Passwort und das verschlüsselte Blockchain-Passwort in der Datenbank gespeichert wird;und einen Decoder zum Entschlüsseln des JWE-Tokens und des Blockchain-Passworts, um auf das Hauptbuch zugreifen zu können.In another embodiment, the middleware comprises: a database for storing a key pair created using a set of user credentials, the key pair comprising a user ID and a hashed password combined and stored in the database in encrypted form ;a JWE token is created containing the key pair and unique ID and sent back to the user for future communication without requiring users to re-enter the password, the JWE token received from the user being encrypted;a user interface for generating a DID and a blockchain account for each user, wherein a DID password and an account key password are encrypted using the user's private key stored in the database, wherein the DID password and the encrypted blockchain password is stored in the database; and a decoder for Decrypting the JWE token and blockchain password to access the ledger.

In einer anderen Ausführungsform wird die Gültigkeit des JWE-Tokens auf 24 Stunden festgelegt.In another embodiment, the validity of the JWE token is set to 24 hours.

In einer anderen Ausführungsform umfasst die Authentifizierungsschicht: eine biometrische Verifizierungseinheit, um die biometrischen Daten des Benutzers und den Benutzerausweis zu verifizieren, die zusammen Begriffe für die Authentifizierung von Angesicht zu Angesicht sind; und eine OpenBank-API, um die Bankverifizierung durchzuführen, um den kyc-Prozess abzuschließen.In another embodiment, the authentication layer comprises: a biometric verification unit to verify the user's biometrics and the user's badge, which together are terms for face-to-face authentication; and an OpenBank API to perform bank verification to complete the kyc process.

In einer anderen Ausführungsform umfasst das System ein dezentrales Identitätsmanagement, um eine der Funktionen der DID-Generierung, der Ausgabe von Berechtigungsnachweisen, der Vorlage von Nachweisen und der Verifizierung auf der Grundlage der API-Anforderung auszuführen.In another embodiment, the system includes decentralized identity management to perform one of the functions of DID generation, credential issuance, credential submission, and verification based on the API request.

In einer anderen Ausführungsform wird der Anruf an das Netz weitergeleitet, wenn der API-Aufruf eine Verbindung mit dem Indy-Netz herstellen muss.In another embodiment, if the API call needs to connect to the Indy network, the call is routed to the network.

In einer anderen Ausführungsform ist eine JWT-Verifizierung für den Zugriff auf das Permissioned Blockchain Module erforderlich, das einen Account-Key enthält, der zum Ver- und Entschlüsseln der Fabric-CA-Anmeldeinformationen verwendet wird.In another embodiment, JWT verification is required to access the Permissioned Blockchain Module, which contains an account key used to encrypt and decrypt the Fabric CA credentials.

In einer anderen Ausführungsform erfolgt die Ausgabe von Berechtigungsnachweisen nach der Auswahl der geeigneten Organisation auf der Grundlage des Zugangsschlüssels, der durch API-Authentifizierung verifiziert wird, wobei die Erstellung des Blockchain-Kontos zur Registrierung der Identität bei Fabric-CA führt.In another embodiment, after selection of the appropriate organization, the issuance of credentials is based on the access key verified by API authentication, with the creation of the blockchain account leading to the registration of the identity with Fabric-CA.

In einer anderen Ausführungsform wird nach dem Zugriff auf diese Identität ein beliebiger Kettencode-Aufruf im Netzwerk durchgeführt, wobei ein Benutzer Fiat-Währung in Token umtauschen oder sie je nach Bedarf wieder in Fiat-Währung zurücktauschen kann, wobei der Benutzer Token an einen anderen Endbenutzer übertragen oder seine Zahlungshistorie einsehen kann.In another embodiment, upon accessing this identity, any chain code call is performed on the network, allowing a user to convert fiat currency into tokens or convert them back into fiat currency as needed, allowing the user to send tokens to another end-user transfer or view their payment history.

Ein Ziel der vorliegenden Offenlegung ist es, ein System zu entwickeln, das Dienste für beliebige Altsysteme anbietet, um Blockchain-basierte Dienste einfach zu erstellen und in ihr System zu integrieren.A goal of the present disclosure is to develop a system that offers services for any legacy system in order to easily create blockchain-based services and integrate them into their system.

Ein weiteres Ziel der vorliegenden Offenlegung ist es, API as a Service auf der Grundlage der DID-Technologie anzubieten.Another goal of the present disclosure is to offer API as a Service based on DID technology.

Ein weiteres Ziel der vorliegenden Offenlegung ist die Bereitstellung von Diensten mit Interkommunikation für ein dezentrales Identitäts-(DID) und Permissioned Blockchain-Netzwerk.Another objective of the present disclosure is to provide services with intercommunication for a decentralized identity (DID) and permissioned blockchain network.

Ein weiteres Ziel der vorliegenden Offenbarung ist es, die Fälschung und Veränderung von gespeicherten Informationen zu verhindern.Another object of the present disclosure is to prevent falsification and alteration of stored information.

Ein weiteres Ziel der vorliegenden Erfindung ist es, ein schnelles und kosteneffizientes Blockchain-basiertes API-System bereitzustellen, um Legacy-Systeme bei der einfachen Integration und Erstellung von Blockchain-basierten Anwendungen zu unterstützen.Another goal of the present invention is to provide a fast and cost-effective blockchain-based API system to support legacy systems in easily integrating and building blockchain-based applications.

Um die Vorteile und Merkmale der vorliegenden Offenbarung weiter zu verdeutlichen, wird eine genauere Beschreibung der Erfindung durch Bezugnahme auf bestimmte Ausführungsformen davon, die in den beigefügten Figuren dargestellt ist. Es wird davon ausgegangen, dass diese Figuren nur typische Ausführungsformen der Erfindung darstellen und daher nicht als Einschränkung ihres Umfangs zu betrachten sind. Die Erfindung wird mit zusätzlicher Spezifität und Detail mit den begleitenden Figuren beschrieben und erklärt werden.In order to further clarify the advantages and features of the present disclosure, a more detailed description of the invention is provided by reference to specific embodiments thereof that are illustrated in the accompanying figures. It is understood that these figures represent only typical embodiments of the invention and therefore should not be considered as limiting its scope. The invention will be described and explained with additional specificity and detail with the accompanying figures.

Figurenlistecharacter list

Diese und andere Merkmale, Aspekte und Vorteile der vorliegenden Offenbarung werden besser verstanden, wenn die folgende detaillierte Beschreibung unter Bezugnahme auf die beigefügten Figuren gelesen wird, in denen gleiche Zeichen gleiche Teile in den Figuren darstellen, wobei:

  • 1 ein Blockdiagramm eines Blockchain-basierten API-Systems zur Verbesserung des Datenschutzes in privaten Blockchain-basierten Anwendungen in Übereinstimmung mit einer Ausführungsform der vorliegenden Offenlegung zeigt;
  • 2 die Architektur eines Blockchain-basierten API-Systems zur Unterstützung von Legacy-Systemen bei der einfachen Integration und Erstellung von Blockchain-basierten Anwendungen in Übereinstimmung mit einer Ausführungsform der vorliegenden Offenlegung veranschaulicht;
  • 3 eine Middleware in Übereinstimmung mit einer Ausführungsform der vorliegenden Offenbarung zeigt;
  • 4 eine Authentifizierungsschicht in Übereinstimmung mit einer Ausführungsform der vorliegenden Offenbarung zeigt;
  • 5 die dezentrale Identitätsverwaltung gemäß einer Ausführungsform der vorliegenden Offenbarung zeigt; und
  • 6 das Verfahren für ein Blockchain-Netzwerk mit Genehmigungen gemäß einer Ausführungsform der vorliegenden Offenlegung veranschaulicht.
These and other features, aspects, and advantages of the present disclosure will be better understood when the following detailed description is read with reference to the accompanying figures, in which like characters represent like parts throughout the figures, wherein:
  • 1 Figure 12 shows a block diagram of a blockchain-based API system for enhancing privacy in private blockchain-based applications, in accordance with an embodiment of the present disclosure;
  • 2 illustrates the architecture of a blockchain-based API system to assist legacy systems in easily integrating and building blockchain-based applications in accordance with an embodiment of the present disclosure;
  • 3 Figure 10 shows a middleware in accordance with an embodiment of the present disclosure;
  • 4 Figure 12 shows an authentication layer in accordance with an embodiment of the present disclosure;
  • 5 Figure 10 illustrates decentralized identity management in accordance with an embodiment of the present disclosure; and
  • 6 illustrates the method for a blockchain network with permissions according to an embodiment of the present disclosure.

Der Fachmann wird verstehen, dass die Elemente in den Figuren der Einfachheit halber dargestellt sind und nicht unbedingt maßstabsgetreu gezeichnet wurden. Die Flussdiagramme veranschaulichen beispielsweise das Verfahren anhand der wichtigsten Schritte, um das Verständnis der Aspekte der vorliegenden Offenbarung zu verbessern.Darüber hinaus können ein oder mehrere Komponenten der Vorrichtung in den Figuren durch herkömmliche Symbole dargestellt sein, und die Figuren können nur die spezifischen Details zeigen, die für das Verständnis der Ausführungsformen der vorliegenden Offenbarung von Bedeutung sind, um die Figuren nicht mit Details zu verdecken, die für Fachleute mit normalen Kenntnissen, die von der vorliegenden Beschreibung profitieren, ohne weiteres erkennbar sind.Those skilled in the art will understand that the elements in the figures are presented for simplicity and are not necessarily drawn to scale. For example, the flow charts illustrate the method through the main steps to enhance understanding of aspects of the present disclosure. Additionally, one or more components of the device in the figures may be represented by conventional symbols, and the figures may show only the specific details, that are relevant to understanding the embodiments of the present disclosure so as not to obscure the figures with details that would be readily apparent to those of ordinary skill having the benefit of the present description.

DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION

Zum besseren Verständnis der Grundsätze der Erfindung wird nun auf die in den Figuren dargestellte Ausführungsform Bezug genommen und diese in einer speziellen Sprache beschrieben. Es versteht sich jedoch von selbst, dass damit keine Einschränkung des Umfangs der Erfindung beabsichtigt ist, wobei solche Änderungen und weitere Modifikationen des dargestellten Systems und solche weiteren Anwendungen der darin dargestellten Prinzipien der Erfindung in Betracht gezogen werden, wie sie einem Fachmann auf dem Gebiet der Erfindung normalerweise einfallen würden.For a better understanding of the principles of the invention, reference will now be made to the embodiment illustrated in the figures and described in specific language. It should be understood, however, that no limitation on the scope of the invention is intended, and such alterations and further modifications to the illustrated system and such further applications of the principles of the invention illustrated therein are contemplated as would occur to one skilled in the art invention would normally come to mind.

Es versteht sich für den Fachmann von selbst, dass die vorstehende allgemeine Beschreibung und die folgende detaillierte Beschreibung beispielhaft und erläuternd für die Erfindung sind und diese nicht einschränken sollen.It will be understood by those skilled in the art that the foregoing general description and the following detailed description are exemplary and explanatory of the invention and are not intended to be limiting.

Wenn in dieser Beschreibung von „einem Aspekt“, „einem anderen Aspekt“ oder ähnlichem die Rede ist, bedeutet dies, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Eigenschaft, die im Zusammenhang mit der Ausführungsform beschrieben wird, in mindestens einer Ausführungsform der vorliegenden Offenbarung enthalten ist. Daher können sich die Ausdrücke „in einer Ausführungsform“, „in einer anderen Ausführungsform“ und ähnliche Ausdrücke in dieser Beschreibung alle auf dieselbe Ausführungsform beziehen, müssen es aber nicht.When this specification refers to "an aspect," "another aspect," or the like, it means that a particular feature, structure, or characteristic described in connection with the embodiment is present in at least one embodiment included in the present disclosure. Therefore, the phrases "in one embodiment," "in another embodiment," and similar phrases throughout this specification may or may not all refer to the same embodiment.

Die Ausdrücke „umfasst“, „enthaltend“ oder andere Variationen davon sollen eine nicht ausschließliche Einbeziehung abdecken, so dass ein Verfahren oder eine Methode, die eine Liste von Schritten umfasst, nicht nur diese Schritte umfasst, sondern auch andere Schritte enthalten kann, die nicht ausdrücklich aufgeführt sind oder zu einem solchen Verfahren oder einer solchen Methode gehören. Ebenso schließen eine oder mehrere Vorrichtungen oder Teilsysteme oder Elemente oder Strukturen oder Komponenten, die mit „umfasst...a“ eingeleitet werden, nicht ohne weitere Einschränkungen die Existenz anderer Vorrichtungen oder anderer Teilsysteme oder anderer Elemente oder anderer Strukturen oder anderer Komponenten oder zusätzlicher Vorrichtungen oder zusätzlicher Teilsysteme oder zusätzlicher Elemente oder zusätzlicher Strukturen oder zusätzlicher Komponenten aus.The terms "comprises,""including," or other variations thereof are intended to cover non-exclusive inclusion such that a method or method that includes a list of steps includes not only those steps, but may also include other steps that are not expressly stated or pertaining to such a process or method likewise, any device or subsystem or element or structure or component preceded by "includes...a" does not, without further limitation, exclude the existence of other devices or other subsystem or other element or other structure or other component or additional devices, or additional subsystems, or additional elements, or additional structures, or additional components.

Sofern nicht anders definiert, haben alle hierin verwendeten technischen und wissenschaftlichen Begriffe die gleiche Bedeutung, wie sie von einem Fachmann auf dem Gebiet, zu dem diese Erfindung gehört, allgemein verstanden wird. Das System, die Methoden und die Beispiele, die hier angegeben werden, dienen nur der Veranschaulichung und sind nicht als Einschränkung gedacht.Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one skilled in the art to which this invention pertains. The system, methods, and examples provided herein are for purposes of illustration only and are not intended to be limiting.

Ausführungsformen der vorliegenden Offenbarung werden im Folgenden unter Bezugnahme auf die beigefügten Figuren im Detail beschrieben.Embodiments of the present disclosure are described in detail below with reference to the attached figures.

Unter Bezugnahme auf 1 wird ein Blockdiagramm eines Blockchain-basierten API-Systems zur Verbesserung der Privatsphäre der Nutzer in privaten Blockchain-basierten Anwendungen gemäß einer Ausführungsform der vorliegenden Offenlegung dargestellt. Das System 1000 umfasst einen Client-Server 100 zur Erzeugung einer API-Anfrage über ein Netzwerk.With reference to 1 Illustrated is a block diagram of a blockchain-based API system for enhancing user privacy in private blockchain-based applications according to an embodiment of the present disclosure. The system 1000 includes a client-server 100 for generating an API request over a network.

In einer Ausführungsform ist eine Middleware 102 so konfiguriert, dass sie eine Client-Anfrage validiert und die Anfrage zur Benutzerauthentifizierung an eine Authentifizierungsschicht 103 weiterleitet.In one embodiment, a middleware 102 is configured to validate a client request and forward the request to an authentication layer 103 for user authentication.

In einer Ausführungsform sind eine DID-Verwaltung und eine Fabric Utility Token-Verwaltung kombiniert konfiguriert, um Indy Network, Fabric Network und Blockchain Network zu verbinden.In one embodiment, a DID manager and a fabric utility token manager are configured in combination to connect Indy Network, Fabric Network and Blockchain Network.

In einer anderen Ausführungsform leitet die Middleware 102 nach der Anforderungsvalidierung den Anruf an das DID Management und das Fabric Utility Token Management weiter, die sich mit dem Indy Network bzw. dem Fabric Network verbinden.In another embodiment, after request validation, middleware 102 routes the call to DID Management and Fabric Utility Token Management, which connect to the Indy Network and the Fabric Network, respectively.

In einer anderen Ausführungsform umfasst die Middleware 102 eine Datenbank zum Speichern eines Schlüsselpaars, das unter Verwendung eines Satzes von Benutzeranmeldeinformationen erstellt wurde, wobei das Schlüsselpaar eine Benutzer-ID und ein Hash-Passwort umfasst, die miteinander kombiniert und in der Datenbank in verschlüsselter Form gespeichert sind.In another embodiment, the middleware 102 includes a database for storing a key pair created using a set of user credentials, the key pair including a user ID and a hashed password that are combined and stored in the database in encrypted form are.

In einer Ausführungsform wird ein JWE-Token erstellt, der das Schlüsselpaar und die eindeutige ID enthält und für die künftige Kommunikation an den Benutzer zurückgeschickt wird, wobei die Benutzer das Kennwort nicht erneut eingeben müssen, wobei der vom Benutzer erhaltene JWE-Token verschlüsselt ist.In one embodiment, a JWE token containing the key pair and unique ID is created and sent back to the user for future communication without requiring users to re-enter the password, the JWE token received from the user being encrypted.

In einer Ausführungsform wird eine Benutzerschnittstelle zum Erzeugen einer DID und eines Blockchain-Kontos für jeden Benutzer verwendet, wobei ein DID-Passwort und ein Konto-Schlüssel-Passwort unter Verwendung des in der Datenbank gespeicherten privaten Schlüssels des Benutzers verschlüsselt werden, wobei das DID-Passwort und das verschlüsselte Blockchain-Passwort in der Datenbank gespeichert werden.In one embodiment, a user interface is used to create a DID and blockchain account for each user, where a DID password and an account key password are encrypted using the user's private key stored in the database, where the DID password and the encrypted blockchain password are stored in the database.

In einer Ausführungsform wird ein Decoder zum Entschlüsseln des JWE-Tokens und des Blockchain-Passworts verwendet, um auf das Hauptbuch zugreifen zu können.In one embodiment, a decoder is used to decrypt the JWE token and blockchain password to access the ledger.

In einer anderen Ausführungsform wird die Gültigkeit des JWE-Tokens auf 24 Stunden festgelegt.In another embodiment, the validity of the JWE token is set to 24 hours.

In einer anderen Ausführungsform umfasst die Authentifizierungsschicht 103:eine biometrische Verifizierungseinheit, um die biometrischen Daten des Benutzers und den Benutzerausweis zu verifizieren, die zusammen Begriffe für die Authentifizierung von Angesicht zu Angesicht sind; und eine OpenBank-API, um die Bankverifizierung durchzuführen, um den kyc-Prozess abzuschließen.In another embodiment, the authentication layer 103 comprises: a biometric verification unit to verify the user's biometric data and the user ID card, which together are terms for face-to-face authentication; and an OpenBank API to perform bank verification to complete the kyc process.

In einer anderen Ausführungsform umfasst das System ein dezentrales Identitätsmanagement 104, das eine der Funktionen DID-Generierung, Ausgabe von Berechtigungsnachweisen, Präsentation von Nachweisen und Verifizierung auf der Grundlage der API-Anforderung ausführt.In another embodiment, the system includes a distributed identity manager 104 that performs one of DID generation, credential issuance, credential presentation, and verification based on the API request.

In einer anderen Ausführungsform wird der Anruf an das Netz weitergeleitet, wenn der API-Aufruf eine Verbindung mit dem Indy-Netz herstellen muss.In another embodiment, if the API call needs to connect to the Indy network, the call is routed to the network.

In einer anderen Ausführungsform ist eine JWT-Verifizierung für den Zugriff auf das Permissioned Blockchain Module erforderlich, das einen Account-Key enthält, der zum Ver- und Entschlüsseln der Fabric-CA-Anmeldeinformationen verwendet wird.In another embodiment, JWT verification is required to access the Permissioned Blockchain Module, which contains an account key used to encrypt and decrypt the Fabric CA credentials.

In einer anderen Ausführungsform erfolgt die Ausgabe von Berechtigungsnachweisen nach der Auswahl der geeigneten Organisation auf der Grundlage des Zugangsschlüssels, der durch API-Authentifizierung verifiziert wird, wobei die Erstellung des Blockchain-Kontos zur Registrierung der Identität bei Fabric-CA führt.In another embodiment, after selection of the appropriate organization, the issuance of credentials is based on the access key verified by API authentication, with the creation of the blockchain account leading to the registration of the identity with Fabric-CA.

In einer anderen Ausführungsform wird nach dem Zugriff auf diese Identität ein beliebiger Kettencode-Aufruf im Netzwerk durchgeführt, wobei ein Benutzer Fiat-Währung in Token umtauschen oder sie je nach Bedarf wieder in Fiat-Währung zurücktauschen kann, wobei der Benutzer Token an einen anderen Endbenutzer übertragen oder seine Zahlungshistorie einsehen kann.In another embodiment, upon accessing this identity, any chain code call is performed on the network, allowing a user to exchange fiat currency for tokens or exchange them back for fiat currency as needed, allowing the user to send tokens to another end-user transfer or view their payment history.

2 veranschaulicht die Architektur eines Blockchain-basierten API-Systems zur Unterstützung von Legacy-Systemen bei der einfachen Integration und Erstellung von Blockchain-basierten Anwendungen in Übereinstimmung mit einer Ausführungsform der vorliegenden Offenlegung. Das entwickelte Blockchain-basierte Dienstsystem (API as a Service) ist auf seine Weise einzigartig. Es gibt keine anderen Dienste auf dem Markt, die eine Interkommunikation zwischen dezentraler Identität (DID) und Permissioned Blockchain Netzwerk anbieten. Die DID wird in der Lage sein, die persönlichen Anmeldeinformationen einer Person auf sichere und vertrauenswürdige Weise zu speichern. Außerdem enthält die DID-Brieftasche Fiat-Token für den Nutzer, die an das Netzwerk gebunden sind. Diese Token können für Zahlungen in allen in das Netzwerk integrierten Einrichtungen verwendet werden. 2 FIG. 12 illustrates the architecture of a blockchain-based API system to assist legacy systems in easily integrating and building blockchain-based applications in accordance with an embodiment of the present disclosure. The developed blockchain-based service system (API as a Service) is unique in its own way. There are no other services on the market that offer intercommunication between decentralized identity (DID) and permissioned blockchain network. The DID will be able to store an individual's personal credentials in a secure and trusted manner. Also, the DID wallet contains fiat tokens for the user that are tied to the network. These tokens can be used for payments in all facilities integrated into the network.

Die Authentifizierungsschicht 103 für MidBlock ist sicherer und zuverlässiger als herkömmliche Systeme, da sie zwei Dienste zur Verifizierung der Identität (vollständige KYC) des Endnutzers nutzt. Die beiden Dienste umfassen eine biometrische Verifizierung auf der Grundlage bestehender, von der Regierung ausgestellter Personalausweise sowie eine nominale Geldüberweisung über ein bestehendes, mit der Identität verknüpftes Bankkonto zur Überprüfung des zweiten Faktors. Mit diesem Verfahren wird das Oracle-Problem der Blockchain gelöst, da die Blockchain-Plattform nun die Möglichkeit hat, die Identität zu überprüfen, ohne dass ein menschlicher Akteur erforderlich ist.The authentication layer 103 for MidBlock is more secure and reliable than traditional systems because it uses two services to verify the identity (full KYC) of the end user. The two services include biometric verification based on existing government-issued ID cards, and a nominal money transfer through an existing identity-linked bank account for second factor verification. This technique solves the blockchain's oracle problem as the blockchain platform now has the ability to verify identity without the need for a human actor.

Sobald er verifiziert ist, kann der Nutzer einfach auf seine sicher verwaltete Cloud-Wallet zugreifen, die seine Basisidentität sowie jede andere auf der Basis der Basisidentität ausgestellte Identität enthält. Dieser Dienst kann dann in zahlreiche bestehende Blockchain-Dienste integriert werden. Ein solcher Dienst ist der von MidBlock selbst angebotene Token-Management- und Zahlungsdienst. Dieser ermöglicht es dem Nutzer, seine Fiat-Währung in Form von stabilen, an Fiat gebundenen Krypto-Tokens zu speichern, die Teil eines zugelassenen Netzwerks sind. Diese Token können dann für den Zugang zu verschiedenen Diensten der jeweiligen Anbieter verwendet werden, die im Netzwerk oder außerhalb des Netzwerks registriert sind. Bei einem Anbieter im Netzwerk erfolgt die Zahlung mit dem Utility Token, während bei Zahlungen außerhalb des Netzwerks die Token in die entsprechende Fiat-Währung getauscht und an den Anbieter überwiesen werden.Once verified, the user can easily access their securely managed cloud wallet, which contains their basic identity and any other identity issued based on the basic identity. This service can then be integrated into numerous existing blockchain services. One such service is the token management and payment service offered by MidBlock itself. This allows the user to store their fiat currency in the form of stable, fiat-pegged crypto tokens that are part of an approved network. These tokens can then be used to access various services from the respective providers, registered on or off the network. With a provider in the network, the payment is made with the utility token, while for payments outside the network, the tokens are exchanged for the corresponding fiat currency and transferred to the provider.

Das vorgeschlagene System nutzt Blockchain, um echte Lösungen für das Identitätsmanagement, die Lösung des Orakelproblems und ein Ökosystem für das Management von Utility Token anzubieten. Das System bietet ein unveränderliches Hauptbuch für Token-basierte Transaktionen/Operationen, das durch einen Kettencode erzwungen wird.Die vorgeschlagene MidBlock-Architektur besteht aus den folgenden Komponenten: Middleware 102, Authentifizierungsschicht 103, dezentrales Identitätsmanagement 104, Fabric Permission Blockchain und Blockchain-Netzwerke.The proposed system uses blockchain to offer real solutions for identity management, solving the oracle problem and an ecosystem for managing utility tokens. The system provides an immutable ledger for token-based transactions/operations enforced by a chain code. The proposed mid-block architecture consists of the following components: middleware 102, authentication layer 103, decentralized identity management 104, fabric permission blockchain, and blockchain networks.

2 zeigt das Blockdiagramm der MidBlock-Anwendung, bei der der Client 100 die Dienste von MidBlock über das Netz 101 in Anspruch nimmt. Die Client-Anfrage erreicht die Middleware 102, die die Anfrage validiert und die Anrufe an die entsprechenden Module weiterleitet. Die Middleware 102 leitet die Anfrage an die Authentifizierungsschicht 103 zur Benutzerauthentifizierung weiter. Nach der Validierung der Anfrage leitet die Middleware 102 den Anruf an die DID-Verwaltung 104 und die Fabric Utility Token-Verwaltung 104 weiter, die eine Verbindung zum Indy Network 105 bzw. Fabric Network 105 herstellen. 2 FIG. 12 shows the block diagram of the MidBlock application, in which the client 100 consumes the services of MidBlock via the network 101. FIG. The client request reaches the middleware 102, which validates the request and routes the calls to the appropriate modules. The middleware 102 forwards the request to the authentication layer 103 for user authentication. After validating the request, the middleware 102 forwards the call to the DID manager 104 and the Fabric Utility Token manager 104, which connect to the Indy Network 105 and Fabric Network 105, respectively.

3 zeigt eine Middleware 102 in Übereinstimmung mit einer Ausführungsform der vorliegenden Offenbarung. Eine weitergeleitete eingehende API-Anfrage wird von der Middleware 102 empfangen. Diese Komponente erstellt ein Schlüsselpaar 202 unter Verwendung der Benutzerdaten. Die Benutzer-ID und das gehashte Passwort werden kombiniert 209 und in der Datenbank in verschlüsselter Form gespeichert 210. Es wird ein JWE-Token erstellt, der das Schlüsselpaar und die eindeutige ID 208 enthält und für die künftige Kommunikation an den Benutzer zurückgeschickt wird. Auf diese Weise müssen die Benutzer das Passwort nicht erneut eingeben. Die Gültigkeit dieses Tokens ist auf 24 Stunden festgelegt. Für jeden Nutzer werden eine DID 205 und ein Blockchain-Konto 207 erstellt. Die DID und das Passwort für das Konto werden 206, 208 mit dem in der Datenbank gespeicherten privaten Schlüssel des Nutzers verschlüsselt. Die DID und das verschlüsselte Blockchain-Passwort 211, 212 werden in der Datenbank gespeichert. Das vom Benutzer erhaltene JWE-Token ist verschlüsselt, so dass es zuerst entschlüsselt wird 214 und dann das Blockchain-Passwort entschlüsselt wird 215, um auf das Hauptbuch zugreifen zu können. 3 10 shows a middleware 102 in accordance with an embodiment of the present disclosure. A forwarded incoming API request is received by middleware 102 . This component creates a key pair 202 using the user data. The user ID and hashed password are combined 209 and stored in encrypted form 210 in the database. A JWE token containing the key pair and unique ID 208 is created and sent back to the user for future communication. This way, users don't have to re-enter the password. This token is valid for 24 hours. A DID 205 and a blockchain account 207 are created for each user. The DID and password for the account are encrypted 206, 208 with the user's private key stored in the database. The DID and the encrypted blockchain password 211, 212 are stored in the database. The JWE token received from the user is encrypted, so it is first decrypted 214 and then the blockchain password is decrypted 215 to access the ledger.

4 zeigt eine Authentifizierungsschicht 103 in Übereinstimmung mit einer Ausführungsform der vorliegenden Offenbarung. Für die Benutzervalidierung kommt die Anfrage von der Middleware 102 zur Authentifizierungsschicht 103 über die Benutzerverifizierungsschicht 300. Die biometrische Verifizierung 301A verifiziert die biometrischen Daten des Benutzers und den Benutzerausweis 301B, die zusammen als Begriffe für die Non-Face-to-Face-Authentifizierung 301 gelten. Die OpenBank API 302 führt die Bankverifizierung 302B durch und schließt den KYC-Prozess 302A ab. 4 10 illustrates an authentication layer 103 in accordance with an embodiment of the present disclosure. For the user validation The request comes from the middleware 102 to the authentication layer 103 via the user verification layer 300. The biometric verification 301A verifies the user's biometric data and the user ID card 301B, which together are considered non-face-to-face authentication 301 terms. The OpenBank API 302 performs bank verification 302B and completes the KYC process 302A.

5 zeigt das dezentrale Identitätsmanagement 104 gemäß einer Ausführungsform der vorliegenden Offenbarung. Der Aufruf wird hier nach der API-Authentifizierung in der Middleware 102 weitergeleitet. Auf der Grundlage des API-Aufrufs führt sie eine der Funktionen aus, darunter die DID-Erzeugung 401, die Ausgabe von Berechtigungsnachweisen 402, die Vorlage von Nachweisen 403 und die Überprüfung 404. Wenn der API-Aufruf eine Verbindung mit dem Indy-Netz 105 benötigt, wird der Aufruf an das Netz weitergeleitet. 5 10 shows decentralized identity management 104 according to an embodiment of the present disclosure. The call is forwarded here after the API authentication in the middleware 102. Based on the API call, it performs one of the functions including DID generation 401, credential issuance 402, credential submission 403, and verification 404. If the API call connects to the Indy network 105 required, the call is forwarded to the network.

6 veranschaulicht das Verfahren für ein Blockchain-Netzwerk mit Genehmigungen gemäß einer Ausführungsform der vorliegenden Offenlegung. 6 illustrates the method for a blockchain network with permissions according to an embodiment of the present disclosure.

In Schritt 501 umfasst das Verfahren 500 die Durchführung einer JWT-Verifizierung bei einer eingehenden Anfrage zum Zugriff auf das Permissioned Blockchain Module. In Schritt 502 umfasst das Verfahren 500 die Auswahl der Organisation auf der Grundlage des Zugriffsschlüssels.In step 501, the method 500 includes performing JWT verification on an incoming request to access the Permissioned Blockchain Module. In step 502, the method 500 includes selecting the organization based on the access key.

In Schritt 503 umfasst das Verfahren 500 den Zugriff auf die Cloud-Brieftasche mit dem Kontoschlüssel. Nach dem Zugriff auf diese Identität kann jeder Kettencode-Aufruf im Netz erfolgen.At step 503, the method 500 includes accessing the cloud wallet with the account key. After accessing this identity, any chain code call can be made on the network.

In Schritt 504 umfasst das Verfahren 500 die Registrierung der Identität bei der Organisation CA. Die Ausstellung der Berechtigungsnachweise erfolgt nach der Auswahl der geeigneten Organisation auf der Grundlage des Zugangsschlüssels, der von der API-Authentifizierung 200 überprüft wird.In step 504, the method 500 includes registering the identity with the organization CA. Credentials are issued after selection of the appropriate organization based on the access key verified by API authentication 200.

In Schritt 505 umfasst das Verfahren 500 das Halten eines Konto-Schlüssels, der zum Verschlüsseln/Entschlüsseln der Fabric-CA-Anmeldeinformationen verwendet wird. Die Ver- und Entschlüsselung der Fabric-CA-Anmeldeinformationen wird in der Cloud-Wallet durchgeführt. Die Erstellung des Blockchain-Kontos 207 führt zur Registrierung der Identität bei Fabric-CA.In step 505, the method 500 includes holding an account key used to encrypt/decrypt the fabric CA credentials. Encryption and decryption of the Fabric CA credentials is performed in the cloud wallet. The creation of the blockchain account 207 results in registration of identity with Fabric-CA.

In Schritt 506 umfasst das Verfahren 500 den Tausch von Fiat gegen Token. In Schritt 507 umfasst das Verfahren 500 den Umtausch von Token in Fiat. Der Benutzer kann seine Fiat-Währung in Token umtauschen oder sie je nach Bedarf in Fiat zurücktauschen.At step 506, the method 500 includes exchanging fiat for tokens. At step 507, the method 500 includes exchanging tokens for fiat. The user can exchange their fiat currency into tokens or exchange them back into fiat as per their need.

In Schritt 508 ermöglicht das Verfahren 500 dem Benutzer, die Zahlungshistorie einzusehen. In Schritt 509 umfasst das Verfahren 500 die Übertragung von Token an einen anderen Endbenutzer.At step 508, the method 500 allows the user to view payment history. At step 509, the method 500 includes transferring tokens to another end user.

Das entwickelte System 1000 hilft bei der Lösung des Problems der Integration der Blockchain-Technologie in Altsysteme. Da den Altsystemen die Fähigkeit und die Ressourcen fehlen, die Blockchain-Technologie zu integrieren, um Blockchain-basierte Anwendungen zu entwickeln. Daher wird die „MidBlock“-API als Dienst angeboten, mit dem Legacy-Systeme schnell und einfach Blockchain-basierte Anwendungen erstellen können.The developed System 1000 helps solve the problem of integrating blockchain technology into legacy systems. As legacy systems lack the ability and resources to integrate blockchain technology to develop blockchain-based applications. Therefore, the "MidBlock" API is offered as a service that allows legacy systems to quickly and easily build blockchain-based applications.

Das entwickelte System 1000 hilft bei der Lösung des Orakelproblems. Das System 1000 ist in der Lage, das Orakel-Problem zu lösen, da das System eine Zwei-Faktor-Authentifizierungsschicht 103 bereitstellt, in der die Identität des Endbenutzers mit Hilfe einer biometrischen Fingerabdruckverifizierung ohne Gesichtserkennung auf der Grundlage bestehender staatlicher Ausweise überprüft wird. Außerdem wird eine offene Bank-API für den KYC-Prozess und die Überprüfung der Authentizität des Endbenutzers verwendet. Dadurch wird die Sicherheit und das Vertrauen in das System verbessert. Die Authentifizierungsschicht 103 für unseren MidBlock ist sicherer und zuverlässiger, da sie zwei Dienste zur Authentifizierung (vollständige KYC) des Endnutzers verwendet. Das entwickelte System 1000 ist in der Lage, den Nutzern eine dezentralisierte Identität zusammen mit ihren biometrischen Daten, die in ihren DID-Dokumenten gespeichert sind, zu geben. Die DID wird in der Lage sein, die persönlichen Anmeldeinformationen einer Person auf sichere und vertrauenswürdige Weise zu speichern. Das DID-Modul 104 im MidBlock kann in jede Blockchain-Plattform integriert werden, um darauf zu operieren und neue Dienste anzubieten.Die DID-Brieftasche enthält Fiat-Token für den Nutzer. Dies ermöglicht es dem Nutzer, seine Fiat-Währung in Form von stabilen Fiat-gebundenen Krypto-Tokens zu speichern, die Teil eines zugelassenen Netzwerks sind. Diese Token können für Zahlungen bei allen in das Netz integrierten Einrichtungen verwendet werden. Für Zahlungen außerhalb des Netzes werden die Token in eine entsprechende Fiat-Währung umgetauscht und mit dem Endnutzer übertragen.The developed system 1000 helps to solve the oracle problem. The system 1000 is able to solve the oracle problem because the system provides a two-factor authentication layer 103 in which the end user's identity is verified using biometric fingerprint verification without facial recognition based on existing government IDs. Also, an open bank API is used for the KYC process and end-user authenticity verification. This improves security and trust in the system. The authentication layer 103 for our MidBlock is more secure and reliable because it uses two services to authenticate (full KYC) the end user. The developed system 1000 is able to give users a decentralized identity along with their biometric data stored in their DID documents. The DID will be able to store an individual's personal credentials in a secure and trusted manner. The DID module 104 in the MidBlock can be integrated with any blockchain platform to operate on it and offer new services. The DID wallet contains fiat tokens for the user. This allows the user to store their fiat currency in the form of stable fiat-linked crypto tokens that are part of an allowed network. These tokens can be used to make payments to any entity integrated into the network. For off-net payments, the tokens are exchanged for a corresponding fiat currency and transferred with the end user.

Das entwickelte System 1000 erleichtert die Interkommunikation zwischen Fabric und Indy. Das System 1000 ist in der Lage, Interkommunikation für dezentrale Identitäten (DID) und Permissioned Blockchain-Netzwerke bereitzustellen.The developed System 1000 facilitates intercommunication between Fabric and Indy. System 1000 is capable of providing intercommunication for decentralized identity (DID) and permissioned blockchain networks.

Das entwickelte System 1000 konzentriert sich auf die Bereitstellung einer neuartigen Lösung mit dem Namen „MidBlock“, einer Blockchain-basierten API als Service, die es Legacy-Systemen erleichtert, Blockchain-basierte Anwendungen zu integrieren und zu erstellen. Es bietet dem Endbenutzer zwei wichtige Dienste: Zum einen löst es das Orakelproblem, indem es eine Authentifizierungsschicht 103 in MidBlock bereitstellt, und zum anderen bietet es einen DID-Verwaltungsdienst. Ein weiterer zusätzlicher Dienst ist das Utility Token Management, um Zahlungen in einem dezentralen Netzwerk mit dezentraler Identität zu initiieren. Sie befasst sich auch mit Fragen der Interkommunikation, da diese eine entscheidende Voraussetzung für die Überlebensfähigkeit und Verwaltbarkeit von Blockchain-Systemen ist.The developed System 1000 focuses on providing a novel solution called “MidBlock”, a blockchain-based API as a service that makes it easier for legacy systems to integrate and build blockchain-based applications. It provides two important services to the end user: first, it solves the oracle problem by providing an authentication layer 103 in MidBlock, and second, it provides a DID management service. Another additional service is Utility Token Management to initiate payments in a decentralized network with decentralized identity. She also addresses issues of intercommunication, as this is a crucial requirement for the survivability and manageability of blockchain systems.

Die Figuren und die vorangehende Beschreibung geben Beispiele für Ausführungsformen. Der Fachmann wird verstehen, dass eines oder mehrere der beschriebenen Elemente durchaus zu einem einzigen Funktionselement kombiniert werden können. Alternativ dazu können bestimmte Elemente in mehrere Funktionselemente aufgeteilt werden. Elemente aus einer Ausführungsform können einer anderen Ausführungsform hinzugefügt werden.So kann beispielsweise die Reihenfolge der hier beschriebenen Prozesse geändert werden und ist nicht auf die hier beschriebene Weise beschränkt. Außerdem müssen die Handlungen eines Flussdiagramms nicht in der gezeigten Reihenfolge ausgeführt werden; auch müssen nicht unbedingt alle Handlungen durchgeführt werden. Auch können die Handlungen, die nicht von anderen Handlungen abhängig sind, parallel zu den anderen Handlungen ausgeführt werden. Der Umfang der Ausführungsformen ist durch diese spezifischen Beispiele keineswegs begrenzt. Zahlreiche Variationen sind möglich, unabhängig davon, ob sie in der Beschreibung explizit aufgeführt sind oder nicht, wie z. B. Unterschiede in der Struktur, den Abmessungen und der Verwendung von Materialien. Der Umfang der Ausführungsformen ist mindestens so groß wie in den folgenden Ansprüchen angegeben.The figures and the preceding description give examples of embodiments. Those skilled in the art will understand that one or more of the elements described may well be combined into a single functional element. Alternatively, certain elements can be broken down into multiple functional elements. Elements from one embodiment may be added to another embodiment. For example, the order of the processes described herein may be rearranged and is not limited to the manner described herein. Also, the acts of a flowchart need not be performed in the order shown; also, not all actions have to be performed. Also, the actions that are not dependent on other actions can be performed in parallel with the other actions. The scope of the embodiments is in no way limited by these specific examples. Numerous variations are possible, regardless of whether they are explicitly mentioned in the description or not, e.g. B. Differences in structure, dimensions and use of materials. The scope of the embodiments is at least as broad as indicated in the following claims.

Vorteile, andere Vorzüge und Problemlösungen wurden oben im Hinblick auf bestimmte Ausführungsformen beschrieben. Die Vorteile, Vorzüge, Problemlösungen und Komponenten, die dazu führen können, dass ein Vorteil, ein Nutzen oder eine Lösung auftritt oder ausgeprägter wird, sind jedoch nicht als kritisches, erforderliches oder wesentliches Merkmal oder Komponente eines oder aller Ansprüche zu verstehen.Advantages, other benefits, and solutions to problems have been described above with respect to particular embodiments. However, the benefits, advantages, problem solutions, and components that can cause an advantage, benefit, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential feature or component of any or all claims.

BezugszeichenlisteReference List

10001000
Ein Blockchain-basiertes API-System zur Verbesserung der Privatsphäre der Nutzer in privaten Blockchain-basierten AnwendungenA blockchain-based API system to improve user privacy in private blockchain-based applications
100100
Kunden-Servercustomer server
101101
Netzwerknetwork
102102
Middlewaremiddleware
103103
Authentifizierungsschichtauthentication layer
104104
DID-Verwaltung/ Fabric Utility Token-Verwaltung/ Blockchain-ModulDID Management/ Fabric Utility Token Management/ Blockchain Module
105105
Indy-Netzwerk/ Fabric-Netzwerk/ Blockchain-NetzwerkIndy Network/ Fabric Network/ Blockchain Network
200200
API-AuthentifizierungAPI authentication
201-201-
Benutzerüberprüfungsschichtuser verification layer
202202
Generieren eines SchlüsselpaaresGenerate a key pair
203203
Benutzeruser
204204
Verschlüsseltes Schlüsselpaar mit PasswortEncrypted key pair with password
205205
Erstellen einer Benutzer-DIDCreate a user DID
206206
Verschlüsselte Benutzer-DID mit SchlüsselpaarEncrypted user DID with key pair
207207
Erstellen eines Kontos im Blockchain-NetzwerkCreating an account on the blockchain network
208208
Verschlüsseln des Konto-Schlüssels mit SchlüsselpaarEncrypt account key with key pair
209209
Einmalige ID + HASH-PasswortUnique ID + HASH password
210210
Schlüsselpaar verschlüsselt mit PasswortKey pair encrypted with password
211211
Benutzer-DID mit Schlüsselpaar verschlüsseltUser DID encrypted with key pair
212212
Konto-Schlüssel verschlüsselt mit SchlüsselpaarAccount key encrypted with key pair
213213
Erstellen von JWE mit Schlüsselpaar und eindeutiger ID des VerbrauchersCreate JWE with consumer's key pair and unique ID
214214
Entschlüsseln der JWEDecrypting the JWE
215215
Entschlüsseln des Konto-SchlüsselsDecrypting the account key
216216
Schlüsselpaarkey pair
218218
DatenbankDatabase
300300
Benutzerüberprüfungsschichtuser verification layer
301301
Authentifizierung von Angesicht zu AngesichtFace to face authentication
301A301A
Biometrische VerifizierungBiometric Verification
301B301B
Benutzer Credential VerifizierungUser Credential Verification
302302
OpenBank APIOpen Bank API
302A302A
Banküberprüfungbank verification
302B302B
KYC-VerfahrenKYC procedure
401401
DID-ErstellungDID creation
402402
Ausstellung von BerechtigungsnachweisenIssuance of Credentials
403403
Nachweis Präsentationproof of presentation
404404
Verifizierungverification
500500
Verfahren für zugelassenes Blockchain-NetzwerkPermitted blockchain network procedure
501501
JWT-VerifizierungJWT verification
502502
Auswahl der Organisation anhand des ZugangsschlüsselsSelection of the organization based on the access key
503503
Zugang zur Cloud-Wallet über Account-SchlüsselAccess to cloud wallet via account key
504504
Identität bei Org CA registrierenRegister identity with Org CA
505505
Verschlüsselte Kettencode-Anmeldeinformationen mit Account-SchlüsselEncrypted chain code credentials with account key
506506
Fiat gegen Token tauschenExchange fiat for tokens
507507
Tausch von Token gegen FiatExchange of tokens for fiat
508508
Zahlungsverlauf anzeigenView payment history
509509
Transfer von Token 510-Kettencode-AufrufeTransfer of token 510 chain code calls
511511
Cloud-Geldbörsecloud wallet
512512
Eingehende AnfrageIncoming request
514514
Kettencode-AntwortChain Code Response
516516
Erlaubnis Blockchain-NetzwerkPermission Blockchain Network

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturPatent Literature Cited

  • US 9635000 B1 [0004]US9635000B1 [0004]
  • US 9722790 B2 [0005]US 9722790 B2 [0005]

Claims (10)

Ein Blockchain-basiertes API-System zur Verbesserung der Privatsphäre von Benutzern in privaten Blockchain-basierten Anwendungen, wobei das System Folgendes umfasst: einen Client-Server, um eine API-Anfrage über ein Netzwerk zu generieren; eine Middleware, die so konfiguriert ist, dass sie eine Client-Anforderung validiert und die Anforderung an eine Authentifizierungsschicht zur Benutzerauthentifizierung weiterleitet; und ein DID-Management, ein Fabric-Utility-Token-Management und ein Blockchain-Modul, die zusammen so konfiguriert sind, dass sie das Indy-Netzwerk, das Fabric-Netzwerk und das Blockchain-Netzwerk verbinden.A blockchain-based API system for enhancing user privacy in private blockchain-based applications, the system comprising: a client-server to generate an API request over a network; a middleware configured to validate a client request and forward the request to an authentication layer for user authentication; and a DID management, a fabric utility token management and a blockchain module together configured to connect the Indy network, the fabric network and the blockchain network. System nach Anspruch 1, wobei die Middleware nach der Anforderungsvalidierung den Anruf an das DID Management und das Fabric Utility Token Management weiterleitet, die sich mit dem Indy Network bzw. dem Fabric Network verbinden.system after claim 1 , where after request validation, the middleware routes the call to DID Management and Fabric Utility Token Management, which connect to the Indy Network and the Fabric Network, respectively. Das System nach Anspruch 1, wobei die Middleware umfasst: eine Datenbank zum Speichern eines Schlüsselpaares, das unter Verwendung eines Satzes von Benutzeranmeldeinformationen erstellt wurde, wobei das Schlüsselpaar eine Benutzer-ID und ein Hash-Passwort umfasst, die miteinander kombiniert und in der Datenbank in verschlüsselter Form gespeichert sind; ein JWE-Token erstellt wird, der das Schlüsselpaar und die eindeutige ID enthält und für die künftige Kommunikation an den Benutzer zurückgeschickt wird, wobei die Benutzer das Kennwort nicht erneut eingeben müssen, wobei das vom Benutzer erhaltene JWE-Token verschlüsselt ist; eine Benutzerschnittstelle zum Erzeugen eines DID- und eines Blockchain-Kontos für jeden Benutzer, wobei ein DID-Passwort und ein Konto-Schlüssel-Passwort unter Verwendung des in der Datenbank gespeicherten privaten Schlüssels des Benutzers verschlüsselt wird, wobei das DID-Passwort und das verschlüsselte Blockchain-Passwort in der Datenbank gespeichert werden; und einen Decoder zur Entschlüsselung des JWE-Tokens und des Blockchain-Passworts, um auf das Hauptbuch zugreifen zu können.The system after claim 1 wherein the middleware comprises: a database for storing a key pair created using a set of user credentials, the key pair comprising a user ID and a hashed password combined together and stored in the database in encrypted form; a JWE token containing the key pair and unique ID is created and sent back to the user for future communication without requiring users to re-enter the password, the JWE token received from the user being encrypted; a user interface for creating a DID and a blockchain account for each user, wherein a DID password and an account key password are encrypted using the user's private key stored in the database, the DID password and the encrypted one Blockchain password stored in database; and a decoder to decrypt the JWE token and blockchain password to access the ledger. System nach Anspruch 3, wobei die Gültigkeit des JWE-Tokens auf 24 Stunden festgelegt ist.system after claim 3 , with the validity of the JWE token set to 24 hours. Das System nach Anspruch 1, wobei die Authentifizierungsschicht umfasst: eine biometrische Verifizierungseinheit zur Verifizierung der biometrischen Daten des Benutzers und des Benutzerausweises, die zusammen Begriffe für die Authentifizierung von Angesicht zu Angesicht sind; und eine OpenBank-API zur Durchführung der Banküberprüfung, um den kyc-Prozess abzuschließen.The system after claim 1 wherein the authentication layer comprises: a biometric verification unit for verifying the biometric data of the user and the user ID card, which together are terms for face-to-face authentication; and an OpenBank API to perform bank verification to complete the kyc process. System nach Anspruch 1, wobei das System ein dezentrales Identitätsmanagement umfasst, um eine der Funktionen DID-Erzeugung, Ausgabe von Berechtigungsnachweisen, Nachweispräsentation und Verifizierung auf der Grundlage der API-Aufrufanforderung auszuführen.system after claim 1 wherein the system comprises decentralized identity management to perform one of DID generation, credential issuance, credential presentation, and verification based on the API call request. System nach Anspruch 1, wobei der Anruf an das Netz weitergeleitet wird, wenn der API-Aufruf eine Verbindung mit dem Indy-Netz benötigt.system after claim 1 , where the call is routed to the network if the API call requires connection to the Indy network. Das System nach Anspruch 1, wobei eine JWT-Verifizierung für den Zugriff auf das Permissioned Blockchain Module erforderlich ist, das einen Account-Key enthält, der zur Ver- und Entschlüsselung der Fabric-CA-Anmeldeinformationen verwendet wird.The system after claim 1 , requiring JWT verification to access the Permissioned Blockchain Module, which contains an account key used to encrypt and decrypt the Fabric CA credentials. System nach Anspruch 8, wobei die Ausgabe von Berechtigungsnachweisen nach Auswahl der geeigneten Organisation auf der Grundlage des Zugangsschlüssels erfolgt, der durch API-Authentifizierung verifiziert wird, wobei die Erstellung des Blockchain-Kontos zur Registrierung der Identität bei Fabric-CA führt.system after claim 8 , where the issuance of credentials is done after selection of the appropriate organization based on access key verified by API authentication, blockchain account creation leading to identity registration with Fabric-CA. System nach Anspruch 9, wobei nach dem Zugriff auf die Identität ein beliebiger Kettencode-Aufruf im Netzwerk ausgeführt wird, wobei ein Benutzer Fiat-Währung in Token umtauschen oder sie je nach Bedarf in Fiat-Währung zurücktauschen kann, wobei der Benutzer Token an einen anderen Endbenutzer übertragen kann oder seine Zahlungshistorie einsehen kann.system after claim 9 , where after accessing the identity, any chain code call is performed on the network, where a user can exchange fiat currency for tokens, or exchange them back for fiat currency as needed, where the user can transfer tokens to another end-user or can see their payment history.
DE202022101294.6U 2022-03-09 2022-03-09 A blockchain-based API system to improve user privacy in private blockchain-based applications Active DE202022101294U1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE202022101294.6U DE202022101294U1 (en) 2022-03-09 2022-03-09 A blockchain-based API system to improve user privacy in private blockchain-based applications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE202022101294.6U DE202022101294U1 (en) 2022-03-09 2022-03-09 A blockchain-based API system to improve user privacy in private blockchain-based applications

Publications (1)

Publication Number Publication Date
DE202022101294U1 true DE202022101294U1 (en) 2022-03-23

Family

ID=81077281

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202022101294.6U Active DE202022101294U1 (en) 2022-03-09 2022-03-09 A blockchain-based API system to improve user privacy in private blockchain-based applications

Country Status (1)

Country Link
DE (1) DE202022101294U1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9635000B1 (en) 2016-05-25 2017-04-25 Sead Muftic Blockchain identity management system based on public identities ledger
US9722790B2 (en) 2015-05-05 2017-08-01 ShoCard, Inc. Identity management service using a blockchain providing certifying transactions between devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9722790B2 (en) 2015-05-05 2017-08-01 ShoCard, Inc. Identity management service using a blockchain providing certifying transactions between devices
US9635000B1 (en) 2016-05-25 2017-04-25 Sead Muftic Blockchain identity management system based on public identities ledger

Similar Documents

Publication Publication Date Title
KR102054410B1 (en) Method for providing reward for delegating computing power for blockchain service management
EP2585963B1 (en) Method for generating a certificate
DE69534490T2 (en) METHOD FOR THE SAFE APPLICATION OF DIGITAL SIGNATURES IN A COMMERCIAL ENCRYPTION SYSTEM
US20180336554A1 (en) Secure electronic transaction authentication
EP2245573B1 (en) Method for reading attributes from an id token
EP2053777A1 (en) A certification method, system, and device
CN113853775A (en) Credential verification and issuance by a credential service provider
DE102016220656A1 (en) Provision and verification of the validity of a virtual document
CN111897879B (en) Transaction record sharing method and device based on blockchain network and electronic equipment
WO2022200035A1 (en) Method and device for generating, providing, and transferring a trusted electronic dataset or certificate based on an electronic document concerning a user
US11870898B2 (en) Split keys for wallet recovery
EP3319003B1 (en) Method and system for authenticating a mobile telecommunication terminal on a service computer system and mobile telecommunication terminal
Manu et al. Blockchain components and concept
DE202022101294U1 (en) A blockchain-based API system to improve user privacy in private blockchain-based applications
Bari et al. Generalized Immutable Ledger (GILED) using Blockchain Technology
Chandramouli et al. Infrastructure standards for smart ID card deployment
DE102015208098A1 (en) Method for generating an electronic signature
KR20210017308A (en) Method for providing secondary authentication service using device registration and distributed storage of data
Kargathara et al. Blockchain Based KYC System
KR20210041984A (en) The block chain private key generation method using smart devices with KYC data and biometric information
DE102021129047B4 (en) Selectively anonymizing cryptocurrency transfer
Ravale et al. Optimizing the KYC Verification System using Ethereum Blockchain
WO2024019217A1 (en) Did and biometric information-based private key reconstructing system
WO2024025030A1 (en) System for proving ownership of private signature through nft issuance for private signature data
Vairagkar et al. Digital locker system for college or university admissions using blockchain technology

Legal Events

Date Code Title Description
R207 Utility model specification
R082 Change of representative

Representative=s name: LIPPERT STACHOW PATENTANWAELTE RECHTSANWAELTE , DE