Neueste
Bleibe auf dem Laufenden mit den neuesten Beiträgen.
Beiträge
2187Implementierung von Wallets mit mehreren Signaturen in Sui Move
Ziel: Erstellen Sie ein sicheres und gaseffizientes Multisig-Wallet, das Folgendes unterstützt: ✔ Flexible M-of-N-Signaturrichtlinien ✔ Sichere Mechanismen zur Schlüsselrotation und Wiederherstellung ✔ Schutz vor der Wiederholung von Transaktionen ✔ Kompatibilität mit bestehenden Wallet-Standards Aktuelle Herausforderungen: Grundlegendes gemeinsames Eigentum wird nicht durch Schwellenwerte durchgesetzt Die Umsetzung der sicheren Schlüsselrotation ist unklar Benötigen Sie einen robusten Schutz vor Wiederholungsangriffen ###Wichtige Fragen 1.Speicherdesign Was ist die optimale Datenstruktur für die Verwaltung dynamischer Unterzeichnergruppen? 2.Genehmigungslogik Wie kann die M-of-N-Signaturvalidierung in Move effizient implementiert werden? 3.Sicherheit und Wartung Bewährte Methoden für sichere Schlüsselrotation und Wiederherstellung? 4.Abwehr von Angriffen Wie kann man Signatur-Replay-Angriffe im Objektmodell von Sui verhindern?
- Sui
- Transaction Processing
- Move
00- Experten Q&AElvin CLONE 233FürSuiJul 23, 2025
Verwirrt über die Playtron-Geldbörse und fehlende Prämien?
Ich habe ein Problem mit meiner Suiplay-Konsole. Ich habe eine Wallet-Adresse registriert, kann sie aber in meinen bestehenden Konten nicht finden. Ich habe die Konsole vorbestellt und jetzt bin ich verwirrt, ob die Airdrops und Belohnungen in einer neuen Playtron-Wallet oder in meiner aktuellen Wallet sein sollen. Kann mir jemand erklären, wie dieses Wallet-System funktioniert und warum ich die Belohnungen nicht sehen kann?
- Sui
- Architecture
00 - Experten Q&ABenjamin XDV261FürSuiJul 23, 2025
Implementierung benutzerdefinierter Token-Standards jenseits von SUI und COIN in Move
Ich muss in Sui Move einen benutzerdefinierten Token-Standard erstellen (z. B. für das Rebasing von Tokens, verpackten Assets oder Governance-Token), der: Erweitert die Funktionalität über sui: :coin: :Coin hinaus Behält die Kompatibilität mit Wallets/Marktplätzen bei Optimiert den Speicher für spezielle Anwendungsfälle Befolgt bewährte Verfahren in Bezug auf Sicherheit und Erweiterbarkeit Aktuelle Herausforderungen: Die einfache Vervielfältigung von Münzen funktioniert, aber es fehlt ihnen an Innovation Sie sind sich nicht sicher, wie Sie mit dynamischem Angebot umgehen sollen (Rebasing) Benötigen Sie Anerkennung auf dem Markt ohne SIP-Standardisierung Fragen: Was ist die flexibelste Architektur für benutzerdefinierte Token? Wie implementiert man nicht übertragbare Token (z. B. soulbound)? Was sind die besten Muster für die Anpassung des Angebots (Prägen/Abbrennen von Haken)? Wie erreicht man eine teilweise Kompatibilität mit bestehenden Standards?
- Sui
- Move
01 Mein Ledger-Gerät kann nicht angeschlossen werden, um meine SUI-Tokens zu senden — Meine Lösung
Wenn Sie jemals versucht haben, SUI-Tokens mit Ihrer Ledger-Hardware-Wallet zu senden und die frustrierende Meldung* „Verbinden Sie Ihr Ledger-Gerät und versuchen Sie es erneut“ erhalten wurden*, sind Sie nicht allein. Dieses Problem hat viele SUI-Inhaber verwirrt, insbesondere wenn ihr Ledger-Gerät eindeutig angeschlossen und entsperrt ist und perfekt mit anderen Kryptowährungen wie Bitcoin oder Ethereum funktioniert. Lassen Sie uns in das Problem eintauchen, die Lösung, die für unzählige Benutzer funktioniert hat, und wie Sie sicherstellen können, dass Ihre SUI-Tokens auch nach Firmware-Updates zugänglich bleiben. Das Problem: Eine plötzliche Unterbrechung Stellen Sie sich Folgendes vor: Sie haben monatelang erfolgreich SUI-Tokens mit Ihrem Ledger-Gerät gesendet und empfangen. Eines Tages versuchst du, eine Transaktion zu senden, und anstatt fortzufahren, wird in deiner Sui Wallet-Erweiterung Folgendes angezeigt: * „Verbinden Sie Ihr Ledger-Gerät und versuchen Sie es erneut. “* Du überprüfst das Offensichtliche: Das Ledger ist angeschlossen. Die SUI-App ist auf dem Gerät geöffnet. Ihr Computer erkennt die Hardware-Wallet. Andere Kryptotransaktionen über Ledger Live funktionieren einwandfrei. Der Fehler besteht jedoch weiterhin. Dieses Szenario hat Benutzer plattformübergreifend betroffen, häufig nach einem Firmware-Update auf den Ledger Nano S oder Nano X (z. B. die Firmware-Versionen 1.3 oder 2.4.0). Die Hauptursache liegt in der Art und Weise, wie die Sui Wallet-Erweiterung mit der aktualisierten Software des Ledgers interagiert. Obwohl Ihr Geld sicher ist, verhindert die unterbrochene Verbindung, dass Sie Ihre SUI-Tokens verwalten können. Die Lösung: Entfernen Sie Ihr Ledger-Konto und fügen Sie es erneut hinzu Nach stundenlanger Problembehandlung entdeckten die Benutzer eine zuverlässige Lösung:Das mit dem Ledger verknüpfte Konto in der Sui Wallet-Erweiterung entfernen und erneut hinzufügen. Dieser Vorgang zwingt das Wallet, eine sichere Verbindung zu Ihrem Hardwaregerät wiederherzustellen, wodurch der durch Firmware-Änderungen verursachte Kommunikationsfehler behoben wird. So machen Sie das sicher: ####Schritt 1: Konto entfernen Öffnen Sie dieSui Wallet-Browsererweiterung(Chrome oder Edge). Klicken Sie oben links auf dasHamburger-Menü (☰), um aufEinstellungenzuzugreifen. Navigieren Sie zuKonten. Wählen Sie das problematische Ledger-verknüpfte SUI-Konto aus. Klicken Sie aufKonto entfernenund bestätigen Sie die Aktion. Hinweis: Wenn Sie das Konto entfernen, wird nur dessen Referenz in der Wallet-Oberfläche gelöscht. Deine privaten Schlüssel und Gelder bleiben sicher auf dem Ledger-Gerät gespeichert. ####Schritt 2: Das Ledger-Konto erneut hinzufügen Stellen Sie sicher, dass Ihr**Ledger-Gerät angeschlossen und entsperrt ist. Öffne dieSUI-Appauf deinem Ledger, indem du zu ihr navigierst und beide Tasten drückst, um sie zu starten. Gehen Sie in der Sui Wallet-Erweiterung zuEinstellungen > Konten. Klicken Sie aufLedger Wallet verbindenund dann aufFortfahren. Wählen Sie Ihr Ledger-Gerät aus und klicken Sie aufVerbinden. Wählen Sie das SUI-Konto, das Sie zuvor verwendet haben (es wird mit Ihrer Startphrase neu generiert). Klicken Sie aufEntsperren. Ihr SUI-Guthaben sollte jetzt angezeigt werden und Sie können wieder Tokens fehlerfrei versenden. ###Warum das funktioniert: Firmware-Updates und Wallet-Kompatibilität Hardware-Wallets wie Ledger sind auf Firmware-Updates angewiesen, um die Sicherheit und Funktionalität zu verbessern. Diese Updates können jedoch manchmal die Interaktion von Wallets von Drittanbietern (z. B. Sui Wallet) mit dem Gerät stören. Zum Beispiel: Ledger Nano S Firmware 1.3undNano X Firmware 2.4.0**haben die Art und Weise geändert, wie die SUI-App erkannt wird. Die zwischengespeicherten Kontodaten in der Sui Wallet-Erweiterung waren veraltet, was zu Verbindungsfehlern führte. Indem du das Konto entfernst und erneut hinzufügst, kannst du: Löschen Sie beschädigte oder veraltete Verbindungsdaten. Erzwingen Sie, dass die Wallet mit der aktualisierten Firmware synchronisiert wird. Bestätigen Sie die SUI-App-Sitzung auf Ihrem Ledger erneut. Dies ist vergleichbar mit einem „Soft-Reset“ für Ihre Ledger-Integration, bei dem Kompatibilitätsprobleme behoben werden, ohne die Sicherheit zu gefährden.
- Sui
- Transaction Processing
0Unerkannte Coins in meiner Crypto Wallet — was bedeutet das?
Wenn Sie jemals Ihre Kryptowährungs-Wallet geöffnet haben und unbekannte Tokens oder Coins bemerkt haben, an die Sie sich nicht erinnern können, sie gekauft oder erhalten zu haben, sind Sie nicht allein. Dieses häufige Phänomen, bekannt als „unbekannte Münzen“ oder „Airdrops“, kann sowohl für neue als auch für erfahrene Krypto-Benutzer verwirrend und manchmal besorgniserregend sein. Zu verstehen, was diese unbekannten Vermögenswerte bedeuten und wie mit ihnen umzugehen ist, ist entscheidend, um die Sicherheit Ihrer Brieftasche zu gewährleisten und fundierte Entscheidungen über Ihre digitalen Vermögenswerte zu treffen. Was sind unerkannte Münzen? Unerkannte Münzen sind Kryptowährungstoken oder Münzen, die ohne Ihr ausdrückliches Wissen oder Handeln in Ihrer Brieftasche erscheinen. Diese können verschiedene Arten von digitalen Vermögenswerten beinhalten: Airdrops: Kostenlose Tokens, die von Projekten an bestehende Wallet-Inhaber verteilt werden — Forked Coins: Neue Kryptowährungen, die aus bestehenden Blockchain-Splits entstanden sind Betrugstoken: Betrügerische Token, die dazu dienen, Benutzer auszutricksen Legitime Projekt-Token: Echte Token von Projekten, mit denen Sie möglicherweise interagiert haben Staubmarken: Extrem kleine Mengen verschiedener Kryptowährungen Unbekannte Sui-Token 0x2Im Fall von Sui ist das native Token SUI, das sich (normalerweise) in einem bestimmten Modul der Sui-Blockchain befindet. Mit der Sui Move-Sprache kann jedoch jeder benutzerdefinierte Token erstellen, und diese Token ähneln möglicherweise SUI im Namen oder Symbol, aber sie sind nicht das Original. Warum sollten gefälschte SUI-Tokens in meiner Brieftasche erscheinen? Es gibt mehrere Gründe, warum du möglicherweise unerkannte Tokens erhältst: Token-Spam (häufig bei Sui und Ethereum) Entwickler oder Betrüger können gefälschte Token erstellen und winzige Mengen (oder größere) an Tausende von Wallets senden. Dies wird oft getan, um: Bewerben Sie ein neues Projekt Testen Sie die Token-Verteilung Verleiten Sie Benutzer zur Interaktion mit bösartigen Smart Contracts In diesem Fall hat wahrscheinlich jemand ein gefälschtes „SUI“ -Token bereitgestellt und es an mehrere Adressen gesendet, einschließlich der des Benutzers. Airdrop testen oder vermarkten Einige Projekte verwenden gefälschte Token als Teil einer Test- oder Marketingkampagne. Diese Token haben jedoch normalerweise keinen Wert und sind nicht handelbar. Phishing-Versuche Gefälschte Token können Teil eines Betrugs sein. Das Ziel ist es, Sie neugierig zu machen, auf einen Link zu klicken, eine gefälschte Website zu besuchen oder mit einer bösartigen DAPP zu interagieren — was möglicherweise zum Verlust Ihres echten Geldes führt. Wie verifiziere ich das echte SUI-Token? Um zu bestätigen, ob es sich bei einem Token um ein echtes SUI handelt, überprüfen Sie Folgendes: 0x2::sui::SUI- Moduladresse: Das offizielle SUI-Token ist in definiert. Jedes Token aus einem anderen Modul (z. B. 0x4ca8...) ist kein echtes SUI. Tokentyp: Real SUI ist ein Gas-Token auf Systemebene, mit dem Transaktionsgebühren bezahlt werden. Wallet-Erkennung: Vertrauenswürdige Wallets wie Sui Wallet, Ethos oder Backpack zeigen nur echte SUI aus dem richtigen Modul an. Blockchain Explorers: Verwende den Sui Explorer, um deine Adresse nachzuschlagen und die Token-Details zu überprüfen. Sie sehen den vollständigen Typ, einschließlich des Moduls und des Vertrags.
- Sui
- Security Protocols
0- ArtikelMeaning.Sui230FürSuiJul 23, 2025
Dieser Artikel zielt darauf ab, das #UTXO -Modell von $BTC bis $SUI zu lernen und zu verstehen
Dieser Artikel zielt darauf ab, das UTXO-Modell zu lernen und zu verstehen. Es verwendet eine leicht verständliche Methode, um die UTXO-Modelle und Implementierungsmethoden einfach von $BTC bis $SUI zu sortieren. Es wird einen umfassenden Überblick geben, den wir hier aus Gründen der Klarheit und Tiefe erweitern, um eine professionelle und gründliche Analyse zu gewährleisten. Als eines der zentralen Designprinzipien von Bitcoin ist das UTXO-Modell seit seiner Geburt zu einem wichtigen technischen Paradigma im Blockchain-Bereich geworden. Es spielt eine wichtige Rolle bei der Gewährleistung der Transaktionssicherheit und Rückverfolgbarkeit und bietet neben dem traditionellen Kontostandmodell einen weiteren Weg. Da die Blockchain-Technologie in den letzten Jahren kontinuierlich aktualisiert und weiterentwickelt wurde, wurde auch das UTXO-Modell selbst ständig weiterentwickelt und erweitert. Einführung in UTXO und seine Ursprünge Das UTXO-Modell, oder Unspent Transaction Output, ist ein grundlegendes Konzept in Bitcoin, bei dem jede Transaktionsausgabe, die nicht ausgegeben wurde, als UTXO erfasst wird. Bei diesem Modell werden Transaktionen wie Bargeld behandelt, wobei bei Ausgaben bestimmte UTXOs ausgewählt werden müssen, um den Betrag abzudecken, anstatt ein einzelnes Guthaben zu ändern. Das Beispiel: Alice und Bob beginnen jeweils mit 5 Dollar. Wenn Bob Alice im Kontomodell 2 Dollar raubt, wird Alices Guthaben auf 3 und Bobs auf 7. Beim UTXO-Modell wird Alices 5-Dollar-UTXO ausgegeben, um zwei neue UTXO zu kreieren: 2 Dollar an Bob und 3 Dollar zurück an Alice. Bob hält jetzt seinen ursprünglichen 5-Dollar-UTXO und den neuen 2-Dollar-UTXO, insgesamt 7 Dollar. Vergleich mit dem Konto-/Saldomodell Das Konto-/Saldomodell, das im Bankwesen üblich ist, verwaltet einen einzigen Saldo pro Konto, der bei jeder Transaktion aktualisiert wird. Das ist zwar einfach, weist aber darauf hin, dass es zu Konflikten kommt, wenn mehrere Transaktionen dasselbe Konto ändern. Oft sind Sperren erforderlich und es kommt zu Leistungsengpässen, insbesondere bei hohen Transaktionsvolumen. Im Gegensatz dazu steht das UTXO-Modell, wie es in Exploring the UTXO Model: What Set Apart It in the Blockchain World erklärt wird? , vermeidet dies, indem es Transaktionen auf unabhängigen UTXOs verarbeitet und so eine parallele Ausführung ohne Sperren ermöglicht und so den Durchsatz und die Parallelität verbessert. Datenschutz ist ein weiterer Vorteil, da Krypto-Wallets pro Transaktion neue Adressen generieren, was es schwieriger macht, Verbindungen zu Einzelpersonen herzustellen, im Gegensatz zu den festen Adressen des Kontomodells, die anfälliger für Korrelationsanalysen sind. Allerdings sind die Grenzen des UTXO beim Umgang mit komplexer Geschäftslogik, wie z. B. mehrstufigen Verträgen, die zum kontobasierten Modell von Ethereum geführt haben, wie in Was ist ein UTXO? erwähnt Unverbrauchte Transaktionsausgaben erklärt. Das Objektmodell von SUI: Überbrückung von UTXO- und Kontomodellen SUI konzentriert sich, wie im X-Post beschrieben und von Object Model | Sui Documentation unterstützt, beim Speichern auf Objekte, nicht auf Konten. Es gibt zwei Schlüsseltypen: OwnedObject (adress-owned) und SharedObject. Das OwnedObject-erweiterte UTXO, bei dem nur der Besitzer arbeiten kann und jede Version einmal ausgegeben wird, was den UTXO-Prinzipien entspricht. Beispielsweise kann ein Objekt, das einer Adresse gehört, nur von seinem Besitzer geändert werden, ähnlich wie bei einem UTXO. Umgekehrt ist SharedObject für jeden zugänglich, ähnlich wie beim Kontomodell, erfordert jedoch einen Konsens über die Reihenfolge der Lese- und Schreibvorgänge, um Zustandskonflikte zu vermeiden, wie in Sui Components | Sui Documentation beschrieben. Dies wird durch eine spezielle Verarbeitung wie die lokale Sortierung bewerkstelligt. Der objektorientierte Ansatz von SUI zeigt, wie sich das SUI-Modell auf Skalierbarkeit, Sicherheit und Benutzererfahrung auswirkt.
- Sui
0 - ArtikelMeaning.Sui230FürSuiJul 23, 2025
Entwicklung eines Würfelspielvertrags in Sui Move
In diesem Tutorial führe ich dich durch den Prozess der Erstellung eines intelligenten Vertrags für Würfelspiele mit Sui Move. Dieser Vertrag ermöglicht es Spielern, auf das Ergebnis eines Würfelwurfs zu wetten, wobei ein Administrator den Preispool verwaltet. Am Ende wirst du einen voll funktionsfähigen Vertrag haben und ein solides Verständnis der wichtigsten Sui Move-Konzepte haben. Einführung Der Würfelspiel-Vertrag, den wir erstellen werden, sieht die folgenden Funktionen vor: Initialisierung: Der Vertragsersteller richtet das Spiel ein. Admin-Management: Ein Admin kann Tokens in den Preispool einzahlen und diese bei Bedarf abheben. Spielerinteraktion: Die Spieler nehmen teil, indem sie das Ergebnis des Würfelwurfs erraten und Wetten platzieren. Dieses Tutorial setzt ein grundlegendes Verständnis von Sui Move voraus und konzentriert sich auf die Einführung neuer Konzepte durch praktische Umsetzung. Bevor wir in den Code eintauchen, wollen wir uns mit den wichtigsten Konzepten befassen, denen Sie begegnen werden: 1.1 Abhängigkeiten hinzufügen: Um Token aus einem anderen Vertrag (z. B. einem Faucet-Token-Vertrag) zu verwenden, müssen Sie ihn als Abhängigkeit in Ihrem Projekt hinzufügen. Dies geschieht, indem Sie die Move.toml-Datei Ihres Vertrags aktualisieren: 1.2 Assertionen verwenden Assertions stellen sicher, dass bestimmte Bedingungen bei der Vertragsausführung erfüllt werden. Sie behaupten! Das Makro überprüft eine Bedingung und wenn sie fehlschlägt, gibt es einen Fehler aus und stoppt die Ausführung. Dies ist nützlich, um ungültige Zustände zu verhindern, z. B. wenn mehr als das Guthaben eines Spielers gesetzt wird. 1.3 Generieren von Zufallszahlen Fairness im Würfelspiel hängt von der Generierung von Zufallszahlen ab. Sui Move stellt dafür das Zufallsmodul zur Verfügung. Sie erstellen ein RandomGenerator-Objekt und verwenden es, um eine Zufallszahl zwischen 1 und 6 zu generieren, wodurch ein Würfelwurf simuliert wird. 1.4 Mit Coin and Balance arbeiten In Sui Move werden Tokens mithilfe der Module Coin und Balance verwaltet: Coin: Eine Hülle rund um Balance, die für die Übertragung von Tokens verwendet wird. Guthaben: Stellt den tatsächlichen Betrag der Tokens dar und ermöglicht Operationen wie das Teilen und Zusammenführen. /// Game: Dice rolling. Players bet and guess the number. If correct, they win an amount equal to their bet; if incorrect, the bet goes to the game pool. module game_duck:game_duck; use sui::balance::{Self, Balance}; use sui::coin::{Self, Coin}; use sui::random::{Random, new_generator, generate_u8_in_range}; use coin_duck::duckfaucet::DUCKFAUCET; const ErrorUserInsufficient: u64 = 0x101; const ErrorGameInsufficient: u64 = 0x102; public struct Game has key { id: UID, pool_amount: Balance, } public struct Admin has key { id: UID, } fun init(ctx: &mut TxContext) { let game = Game { id: object::new(ctx), pool_amount: balance::zero() }; transfer::share_object(game); let admin = Admin { id: object::new(ctx) }; transfer::transfer(admin, ctx.sender()); } public entry fun addCoinToGamePool(game: &mut Game, in_coin: &mut Coin, amount: u64, _: &mut TxContext) { let value = coin::value(in_coin); assert!(amount = amount, ErrorGameInsufficient); let coin = coin::take(&mut game.pool_amount, amount, ctx); transfer::public_transfer(coin, ctx.sender()); } entry fun play(game: &mut Game, random: &Random, guess_num: u8, in_coin: &mut Coin, amount: u64, ctx: &mut TxContext) { assert!(game.pool_amount.value() >= (amount * 3), ErrorGameInsufficient); assert!(in_coin.balance().value() >= amount, ErrorUserInsufficient); let mut g = new_generator(random, ctx); let win_num = generate_u8_in_range(&mut g, 1, 6); if (win_num == guess_num) { let reward_coin = coin::take(&mut game.pool_amount, amount, ctx); in_coin.join(reward_coin); } else { addCoinToGamePool(game, in_coin, amount, ctx); } } Struktur des Codeaufbaus Spiel: Ein gemeinsames Objekt mit einer eindeutigen ID und einem Pool_amount (Balance) zur Speicherung des Preispools. Admin: Ein Schlüsselobjekt, das dem Administrator für die Initialisierung (Init) zur Verwaltung des Pools gehört.
- Sui
- Architecture
0 - DiskussionMeaning.Sui230FürSuiJul 23, 2025
Upgrade-Cap auf 0x0
Wenn ich ein Paket unveränderlich machen möchte, kann ich die Upgrade-Obergrenze bei der Bereitstellung auf 0x0 setzen? Wird das später zu Problemen führen? für eine Münze. let upgrade_cap = sui: :package: :claim_upgrade_cap (ctx); transfer: :public_transfer (upgrade_cap, @0x0);
- Sui
01 - DiskussionMeaning.Sui230FürSuiJul 23, 2025
Zklogin für alte Sui Wallet
Ich hatte vor der Slush-Fusion die alte Sui-Wallet mit dem Zklogin. Habe es seit ein paar Monaten nicht mehr benutzt und jetzt kann ich mich nicht mehr mit Google Login in meine Wallet einloggen. Wie lädst du dieses Konto auf die neuen Wallets auf oder wie kann ich mein Geld auf eine andere Wallet überweisen?
- Sui
01 - Experten Q&Aharry phan903FürSuiJul 23, 2025
Wie viele vollständige On-Chain-Spiele sind derzeit auf Sui aktiv oder befinden sich in der Entwicklung?
Wie viele vollständige On-Chain-Spiele sind derzeit auf Sui aktiv oder befinden sich in der Entwicklung?
- Sui
02