Da EVM keine Ereignisse beobachten kann, können wir keinen Token an eine Börse senden und sofort einen anderen Token zurückerhalten (EVM „weiß“ einfach nicht, wann ein Token gesendet wurde). Soweit ich weiß, ist dies der Grund, warum alle mir bekannten Börsen zunächst eine Brieftasche auf der Börsenseite erstellen und den Token zuerst an diese Brieftasche senden müssen.
Dann:
Wie erstellen Börsen eine Brieftasche? Wie generiert die Börse die Wallet-Adresse? (Wir wissen, dass Solidity keine Zufallszahlen generieren kann. Wird dies außerhalb der Kette durchgeführt?)
Wie könnte dann die Börse dieses Wallet kontrollieren, ihm also den „Befehl“ geben, den Token für den eigentlichen Tauschvorgang zu senden? (Wenn es z. B. ERC-20 ist, dann könnte die Börse den Token-Vertrag nicht kontrollieren und könnte sie daher nicht veranlassen, das Token für die Austauschoperation zu senden. Wenn es beispielsweise ein ERC-721 oder ERC-1155 ist, dann auch die Börse kann den Vertrag nicht kontrollieren und die gleichen Probleme entstehen.)
Ich verstehe also nicht, wie der Austausch intern funktioniert.
Ich glaube nicht, dass es darüber viele offizielle Informationen gibt, da dies Geschäftsgeheimnisse sind. Aber die einzig vernünftige Art und Weise, wie der Austausch funktioniert, ist etwas Ähnliches wie das Folgende.
1) Sie verwenden keine echten Blockchain-Wallets, wie Sie denken. Wenn Sie Token an eine Austauschadresse senden, handelt es sich entweder um ein gemeinsames Wallet für viele Überweisungen oder um ein Pass-Through-Wallet, das die Token an ein gemeinsames Wallet weiterleitet.
2) Alle internen Trades sind nur Änderungen in ihren internen Ledgern außerhalb der Blockchain. Wenn Sie also Token A gegen Token B austauschen, aktualisiert die Börse nur ihre internen Datenbanken und es finden keine tatsächlichen Blockchain-Transaktionen statt. Nur wenn Sie Token einzahlen oder abheben, führen sie eine tatsächliche Blockchain-Transaktion durch.
3) Börsen haben mehrere gemeinsame Wallets im Einsatz. Einige sind heiß (werden verwendet, um Client-Token zu erhalten) und andere kalt (werden für die Langzeitspeicherung und nicht zu viele Transaktionen verwendet). Tokens werden zwischen diesen (bei echten Blockchain-Transaktionen) bei Bedarf transferiert (so selten wie möglich für Cold Wallets).
Die Gründe, warum Börsen versuchen, echte Blockchain-Transaktionen zu vermeiden, sind hauptsächlich Geschwindigkeit und Kosten: Blockchain-Transaktionen sind langsam und kostspielig.
Beispiel
Wenn Sie also Token an eine Austauschadresse übertragen, passiert Folgendes:
1) Sie geben Ihnen eine Adresse, wo Sie die Token hinterlegen können, und Sie senden Token dorthin
2) Sie leiten die Token von dieser Adresse an eine interne Hot- oder Cold-Wallet weiter
3) Sie aktualisieren Ihr Token-Guthaben in ihrer Datenbank
4) Sie handeln mit dem Token und sie aktualisieren ihre internen Salden
5) Sie ziehen diesen Token (oder einen anderen Token) ab: Sie aktualisieren ihre Datenbank und senden den echten Token aus ihrer Hot Wallet.
Beachten Sie, dass dies sowohl für Token als auch für Coins gilt.
porton
Lauri Peltonen
porton
Lauri Peltonen