Technische Architektur der Kryptowährungsbörse? Wie baut man es? (Entwicklersicht) [geschlossen]

Ich bin ein Software-Entwickler und neu in die Blockchain-Technologie involviert.

Ich benötige Informationen zur technischen Funktionsweise von Cryptocurrency Exchange? dh kaufen Sie ETH mit BTC oder tauschen Sie eine Münze gegen eine andere Münze usw.

Ich kenne alle anderen Begriffe/Dinge, die für den Austausch benötigt werden, wie Recht, Sicherheit, KYC, Peer-to-Peer usw.

Ich habe viele Artikel durchsucht, aber keine technische Architektur gefunden . folgendes gefunden

Es gibt vorgefertigte APIs wie block.io, chain.com, blockcypher.com usw., die so etwas bereitstellen. aber möchte es aus dem Kern entwickeln, dh Bitcoin Github .

  • Ich habe gute konzeptionelle Kenntnisse in Blockchain, Solidity etc.
  • Arbeiten mit Bitcoin Core zum Erstellen einer neuen Adresse, Senden von BTC an eine andere Adresse vai CMD-Eingabeaufforderung.
  • Kann Block Explorer usw. implementieren.
  • Kann mit dem ETH-Compiler neue Coins/Währungen in Solidity erstellen.

Was ich wirklich brauche, ist die Richtung und der Pfad, dem ich folgen soll. Da die Technologie neu ist, sind die Ressourcen sehr gering. Jede technische Hilfe schätze ich sehr.

Danke, einen schönen Tag noch.

Willkommen bei bitcoin.SE! Ich denke, es wird schwierig sein, hier solche Ratschläge zu finden. Meistens sind wir hier, um technische Fragen zu beantworten, aber Ihre erstreckt sich auf die konzeptionelle Ebene. Und andere Börsen würden übrigens geheim halten, wie sie den Handel zwischen den Kryptos betreiben. Es gibt einen P2P-Austausch ( github.com/bisq-network/exchange ), der möglicherweise Quellen enthält, die Sie sich ansehen können ...
@pebwindkraft Vielen Dank für das Teilen des Links. Es ist wertvoll für mich. Gibt es irgendetwas, das Ihnen helfen kann (Links, Dokumente, PDF, Gruppen), teilen Sie es bitte auf vd30992@gmail.com mit
Warum ist meine Frage in der Warteschleife ??? Kann jemand erklären??
höchstwahrscheinlich, weil die Funktionsweise eines Austauschs sehr schwer in einem einzigen Thread zu beantworten ist und auch sehr wenig mit technischen Aspekten von Bitcoin zu tun hat :-)
@pebwindkraft Ich habe zugestimmt, aber niemand möchte auch nur ein bisschen Wissen darüber teilen, wie es #MartineSolie getan hat. Gibt es ein Medium, um solche Fragen zu stellen?
Ich habe eine schnelle Suche in bitcoin.SE durchgeführt und drei Links zu "Wie funktioniert der Austausch" gefunden. Auch bitcointalk.org ist vielleicht ein Forum zum Suchen.

Antworten (1)

Es gibt eine Open-Source-Asset-Börse namens Peatio , die in Ruby geschrieben ist. Sie können in den Quellcode schauen, um zu sehen, was mit den Assets während ihrer Lebensdauer dort passiert.

Hauptsächlich gibt es 3 Schritte für den Austausch:

  1. Einzahlung - legen Sie echte Münzen auf die Konten der Börse
  2. Tauschen - Wechseln Sie Münzen, indem Sie nur die Werte der Kontostände ändern
  3. Abheben - Senden Sie echte Münzen von den Konten der Börse an den Endbenutzer

Wenn der Benutzer eine Einzahlungsanforderung sendet, generiert die Börse eine neue Adresse (sendet eine RPC-Anforderung an den BTC-Knoten) und weist sie der Einzahlungsentität in der Datenbank zu. Der Benutzer muss eine ausreichende Menge an BTC senden, um die Einzahlung zu erfüllen. Wenn der spezielle Daemon-Beobachter eine eingehende Transaktion an der Adresse findet, die einer Einzahlungseinheit zugewiesen ist, vergleicht er den eingehenden Betrag mit dem erforderlichen Betrag und wartet auf Bestätigungen. Wenn genügend BTCs und Bestätigungen vorhanden sind, erhöht der Daemon den Kontostand des Benutzers.

Dann ändert die Exchange-Engine während des Austauschs des Benutzers nur die Zahlen in der Datenbank, sodass keine echten Transaktionen bereitgestellt werden. Dies ermöglicht einen sehr schnellen und netzgebührenfreien Austausch.

Wenn der Benutzer beschließt, Bitcoins vom Konto auszugeben, sendet er eine Auszahlungsanforderung an den Umtausch. Exchange prüft das Guthaben des Benutzers und wenn genügend Münzen vorhanden sind, sendet es sie von seiner Brieftasche an die Adresse des Benutzers und verringert das Guthaben des Benutzers

In einem solchen System ist die Sicherheit des Hauptservers kritisch. Alle Coins werden auf Wallets des Systems gespeichert und können von diesem ausgegeben werden. Bei solchen Börsen wird also normalerweise eine Cold Wallet verwendet. Fast 90 % des Gesamtbetrags aller Münzen werden an eine gesicherte Brieftasche gesendet: eine Hardware-Wallet oder zumindest eine Brieftasche, die auf einem System ohne Internetverbindung gespeichert ist. Wenn auf der Hot-Wallet nicht genügend Coins vorhanden sind, um eine Auszahlung zu erstellen, wird eine Warnung an den Administrator gesendet, und er sendet manuell einige Coins von der Cold-Wallet an die Hot-Wallet.

Wenn Sie den Handel nicht zulassen und nur einen Umtausch wünschen, können Sie den Umtauschschritt entfernen und eine Auszahlung direkt nach der Einzahlungserfüllung erstellen. Aber dann müssen Sie den Preis des Paares bestimmen.

Dies ist nicht der einzige Ansatz für den Austausch von Vermögenswerten. Es gibt auch Ansätze, bei denen Benutzer ihre Brieftaschen an der Börse kontrollieren, und Ansätze, bei denen Entscheidungen zur Änderung des Kontostands des Benutzers von mehreren Knoten gemeinsam getroffen werden.

Wirklich gute Antwort, einige technische Zweifel ausgeräumt. Danke :-)