
Hintergrund
Vor einiger Zeit haben wir in der ersten Diskussion von TONs Merkmalen und Sicherheitsproblemen von Benutzer in der Sicherheit von Tonn, Token, Transaktion und Asset -Sicherheit besprochen.Lassen Sie uns heute eine weitere aufstrebende Blockchain -Plattform mit hoher Leistung lernen, Sui, die über eine Reihe innovativer Technologien und einzigartiger Merkmale verfügt, die die Aufmerksamkeit von Entwicklern und Forschern auf sich gezogen hat.Sui konzentriert sich auf eine schnelle und sichere Handelserfahrung, die für verschiedene Anwendungsszenarien geeignet ist.Dieser Artikel wird den Lesern helfen, SUI zu verstehen, indem er das SUI -Kontomodell, das Token -Management, der Handelsmechanismus und die Sicherheit von Vermögenswerten erläutert.
>
Kontomodell
Adresse
Die Sui folgt den umfangreichen Brieftaschenspezifikationen, die in der Kryptowährungsbranche akzeptiert werden, einschließlich BIP-32 (und der Varianten Slip-0010), BIP-44 und BIP-39, um den Benutzern ein Schlüsselmanagement zu bieten.
>
Um eine 32 -Byte -SUI -Adresse zuzuweisen, verwendet SUI die Hash -Funktion Blake2b (256 -Bit -Ausgabe), um das Signaturschema (1 Byte) mit dem öffentlichen Schlüssel Byte zu verbinden.Die SUI -Adresse unterstützt derzeit reine ED25519, SecP256K1, SecP256R1 und Multisig.
Gleichgewicht
Auf der Sui ist alles ein Objekt, und das Gleichgewicht des Benutzers ist auch das Objekt.Während des Übertragungsprozesses muss das Objekt nicht dem erforderlichen Wert entspricht, wenn der im Objekt enthaltene Saldo nicht dem erforderlichen Wert entspricht.Sie haben beispielsweise ein Objekt, das 100 SUI enthält, aber Sie möchten nur 30 SUI übertragen, sodass das System dieses Objekt in zwei Objekte unterteilt: Einer enthält 30 SUI und der andere enthält 70 SUI.Sie können Objekte, die 30 SUI enthalten, übertragen und die verbleibenden Objekte beibehalten.Wenn Sie umgekehrt einen größeren Betrag benötigen, können Sie auch mehrere Balance -Objekte zusammenführen, um einen größeren Betrag zu bilden.
>
Token -Management
SUI implementiert offiziell den Standardcode der Münze.
Da die Bewegungssprache verwendet wird, unterscheidet sich die Programmiersprache, die üblicherweise in anderen Blockchain verwendet wird (wie Solidität).
>
Dies ist ein vollständiger Münzausstellungsvertrag.Wenn Sie diese Funktion verwenden, um Münz (Coin :: Create_reguled_currency) zu erstellen, erhält der Schöpfer des Vertrags ein TreasuryCap -Objekt, das erforderlich ist, um eine neue Münze zu werfen oder die vorhandene Münze zu zerstören.Nur durch Zugriff auf die Adresse dieses Objekts kann die Münzverteilung aufrechterhalten werden.
Für Benutzer, die Münze erhielten, kontrollierte sein Konto das Eigentum an diesen Token.
Transaktionsmechanismus
Der Handel ist das Konzept der grundlegenden Blockchain -Welt und eine Möglichkeit, mit Blockchain zu interagieren.Die Transaktion wird verwendet, um den Zustand der Blockchain zu ändern, und ist der einzige Weg.In der von SUI verwendeten Programmiersprache Move werden Transaktionen verwendet, um Funktionen im Paket aufzurufen, neue Pakete bereitzustellen und vorhandene Pakete zu aktualisieren.
Bei der Erstellung einer Transaktion müssen Sie aufmerksam werden, und jede Transaktion muss das Objekt ihres Betriebs klar angeben!Dies ähnelt der von Solanas Transaktionen.
Der in der Transaktion enthaltene Inhalt:
-
SENDOR -Sichten Sie das Konto der Transaktion an
-
Anweisungsliste (oder Anweisungskette) -Die zu ausgeführte Operation
-
Befehl input -Command -Parameter: reiner Text -Simple -Wert wie Zahlen oder Zeichenfolge oder Objekt -Transaktion greifen auf Objekte zu
-
Gasobjekt -Coin -Objekt für Zahlungstransaktionen
-
Gaspreis- und Budget -Übertragungskosten
Vertragssicherheit
Sui verwendet den Schritt als Programmiersprache von intelligenten Verträgen, die das Problem der Schwachstellen der hohen Inzidenz von Solidität in gewissem Maße lösen können, wie z. ist immer noch notwendig.Hier sind einige Angelegenheiten, auf die Entwickler während des Entwicklungsprozesses achten müssen:
1. Überprüfung der Berechtigungen:Analyse des von externen Funktionen empfangenen Objekts für die Privilegienfunktion, die sensible Operationen beinhaltet, muss sicherstellen, dass das übertragene Objekt ein Objekt mit Privilegien ist.Wenn die Funktion das Berechtigungsobjekt empfängt und verwendet, muss der Funktionsanrufer der gesetzliche Eigentümer des Objekts sein.
2. Externe Funktionsprüfung:Einige Funktionen sollten von außen nicht direkt aufgerufen werden.
A. Objektanalyseprüfung:Da die Objekte in der SUI in öffentliche Objekte umgewandelt werden können, sollten Entwickler die Arten aller Objekte sortieren, die verwendet werden, um zu bestätigen, ob sie statisch oder öffentlich sind und ob Fehler vorliegen.Wenn das Objekt der Privatisierung in ein öffentliches Objekt umgewandelt werden sollte, kann jeder dieses Objekt verwenden, was ein Sicherheitsrisiko darstellt.
4. Münzkonsumprüfung:Die Token von Sui unterscheiden sich von anderen Ketten.
-
Übertragen Sie direkt auf das Token -Objekt auf ein anderes Objekt;
-
Nach der Einstellung der Token -Objekte wird ein neues Objekt erzeugt und dann an das Zielobjekt übertragen.
-
Abriss auf das Token -Objekt und übertragen Sie den teilweise geteilten Teil in das neue Objekt.
Daher müssen Entwickler im Falle eines Tokenverbrauchs die folgenden Punkte überprüfen:
-
Ob die Menge des Verbrauchs korrekt ist;
-
Ob das Objekt übertragen wurde;
-
Wenn es eine Spaltung gibt, ist die Menge an Split richtig.
5. Preise für Prophezeiungsmaschinenpreismanipulation Angriff:Wenn der Vertrag über die Sui die prophetische Maschine verwendet, um den Preis zu erhalten, müssen Sie auf die Möglichkeit des manipulierten Preises achten.Entwickler können mehrere Datenquellen und Konsensmechanismen einführen, um das Risiko zu verhindern, dass sie von einer einzelnen Datenquelle manipuliert werden.Darüber hinaus kann der durchschnittliche Zeitpreis verwendet werden, um das Risiko einer Manipulation der Prophezeiungsmaschine zu verhindern.
6. Governance -Angriff:In dem Vertrag über die SUI gibt es auch das Risiko, dass Sie die Logik der Gemeinschaftsführung einiger reifen dezentralen Organisationen beziehen.
7. Arbitrage Attack:Wenn das logische Design unangemessen ist, haben die Defi -Verträge auf SUI auch das Risiko von Arbitrage -Angriffen.Entwickler sollten die Logik im Vertrag bei der Entwicklung sorgfältig überprüfen, um den Einsatz von Angreifern zu vermeiden.
8. Fake -Lade -Angriff:Beim Umgang mit dem SUI -Tokenaufladen müssen die Börsen oder Entwickler auch darauf achten, zu überprüfen, ob der Transaktionsstatus erfolgreich ist, ob die Paket -ID der Token korrekt ist, um gefälschte Aufladungsangriffe zu verhindern.
Zusammenfassen
In diesem Artikel haben wir kurz die Entwurfsmerkmale von SUI, einschließlich des Kontododells, des Tokens -Managements, des Handelsmechanismus und der Vertragssicherheit erörtert.Mithilfe der Move -Programmiersprache führte SUI auch innovative Datenmodelle und Objektspeichermethoden ein und sorgt für eine hohe Leistung und geringe Latenz, was die Sicherheit und Flexibilität erheblich verbessert.Im Vergleich zu anderen Blockchain -Plattformen hat die Bewegungssprache gut bei der Verhinderung häufiger Schwachstellen für intelligente Vertrag (z. B. überfüllte, stark eingehende Angriffe usw.), was SUI auf technischer Ebene stabiler und zuverlässiger macht.Entwickler müssen jedoch weiterhin auf die Sicherheit der Geschäftslogik achten, insbesondere im Hinblick auf das Autoritätsmanagement, die Verwendung von Objekttypen und den Token -Verbrauch, achten Sie auf Vermögensverluste aufgrund von Fehlern oder unsachgemäßen Designs im Code.
Referenzlink:
https://docs.sui.io/
https://docs.sui.io/standards/coin
https://move-book.com/