Sui.

Le plus nouveau

Restez informé des dernières publications.

Publications

679
  • CarlkawIy.Peera.
    PourSuiJul 01, 2025
    Questions et Réponses avec des Experts

    Comment récupérer des pièces SUI d'un ancien portefeuille ?

    J'ai essayé de localiser mes pièces SUI lors de la création d'un nouveau compte Slush, mais je ne les vois pas. Comment puis-je vérifier si j'utilise la bonne phrase pour importer mon ancien portefeuille ?

    • Sui
    0
    2
  • article banner.
    MiniBob.Peera.
    PourSuiJul 01, 2025
    Article

    Maîtriser les concepts du langage mobile — Cours #2

    Alors que leCours #1 que j'ai déjà fait vous a présenté les bases de la rédaction de contrats intelligents dans Move et de la création de DApps simples sur la blockchain Sui, ce cours se concentre surapprofondir votre compréhension du langage Move lui-même, de son puissant système de types aux modèles avancés tels que les génériques, les événements, les modules et les mécanismes de contrôle d'accès. À la fin de ce cours, vous serez capable de : Rédigez un code Move modulaire, réutilisable et sécurisé Utiliser efficacement les génériques, les capacités et les types de ressources Implémentez un contrôle d'accès précis à l'aide de fonctionnalités Émettez et écoutez des événements pour une intégration hors chaîne Travaillez avec des structures de données complexes telles que des tableaux et des vecteurs Comprenez en quoi Move diffère des autres langages de contrats intelligents tels que Solidity Plongeons au cœur du langage Move ! Étape 1 : Comprendre les fonctionnalités linguistiques de base de Move Move est conçu dans un souci de sécurité et de clarté. Explorons certaines des fonctionnalités les plus importantes qui font de Move un langage contractuel intelligent unique. 1.1 Programmation axée sur les ressources (revisitée) Au cœur de Move se trouve le concept deressources, qui sont des types spéciaux qui ne peuvent pas être copiés ou supprimés sauf autorisation explicite. Cela permet de gérer en toute sécurité les actifs numériques tels que les jetons ou les NFT. module examples::token { use sui::object::{Self, UID}; struct MyToken has key, store { id: UID, value: u64, } public fun mint(ctx: &mut TxContext): MyToken { MyToken { id: object::new(ctx), value: 100, } } } Dans cet exemple : MyToken- keyest uneressourcecar elle en a la capacité. Il peut être stocké (store) et identifié de manière unique par sonid. Il ne peut pas être dupliqué ou supprimé sauf indication contraire. Cela garantit que chaque MyTokeninstance est détenue et gérée de manière unique, évitant ainsi toute duplication ou suppression accidentelle. 1.2 Système de capacités Chaque type de Move possède un ensemble decapacitésqui définissent les opérations qu'il prend en charge : | Capacité | Signification | | --------| ---------| | copy| Peut être dupliqué | | drop| Peut être jeté sans destruction | | store| Peut être stocké dans le stockage mondial | | key| Peut être utilisé comme structure avec un champ ID (c'est-à-dire un objet) | Exemple : struct Example has copy, drop { value: u64 } Il est essentiel de comprendre ces capacités pour concevoir des contrats intelligents sécurisés et prévisibles. Pourquoi les capacités sont importantes Les capacités appliquent des règles strictes au moment de la compilation. Par exemple : Une structure contenant uniquement keyet storene pouvant pas être copiée ou supprimée. Vous ne pouvez pas renvoyer une structure non supprimable à partir d'une fonction à moins qu'elle ne soit stockée ou transférée. Cela permet d'éviter des bugs tels que la double dépense ou la perte accidentelle de jetons. 1.3 Génériques et paramètres de type Move prend en charge les types génériques, ce qui permet aux développeurs d'écrire du code flexible et réutilisable. module examples::storage { use sui::object::{Self, UID}; struct Box has key { id: UID, content: T, } public fun new_box(ctx: &mut TxContext, content: T): Box { Box { id: object::new(ctx), content, } } } `Voici unparamètre de type, qui permet de Box`fonctionner avec n'importe quel type tout en restant sûr et efficace. Remarque : Le phantommot clé indique que Tcela n'affecte pas la représentation d'exécution de la structure, ce qui est utile pour la modélisation abstraite. Étape 2 : Développement modulaire et gestion des packages À mesure que la complexité de vos projets Move augmente, l'organisation de votre code devient essentielle. 2.1 Création et publication de packages Move Unpackage Movecontient un ou plusieurs modules et définit les dépendances. Il s'agit de l'unité de déploiement et de gestion des versions dans Move. Structure du répertoire : sources/ place.move user.move Move.toml Définissez les dépendances dans Move.toml: [dependencies] Sui = { git = "https://github.com/MystenLabs/sui.git", subdir = "crates/sui-framework" } MyLibrary = { local = "../my-library" } Vous pouvez publier des packages sur le réseau Sui et les réutiliser sur plusieurs DApps. 2.2 Réutiliser les modules existants cointransfertx_contextLeSui Frameworkfournit des modules testés au combat tels que, et. Vérifiez toujours ce qui est disponible avant d'écrire une logique personnalisée. Par exemple, pour transférer un objet : use sui::transfer; public entry fun send_place(place: Place, recipient: address) { transfer::public_transfer(place, recipient); } L'utilisation de bibliothèques standard garantit un développement plus sûr et plus rapide ainsi qu'une meilleure interopérabilité. Étape 3 : Événements et communication hors chaîne Pour créer des applications réelles, vos contrats Move doivent communiquer avec des systèmes hors chaîne tels que les frontends ou les indexeurs. 3.1 Émission d'événements Move permet d'émettre desévénementsqui peuvent être indexés par des services externes. use sui::event; struct PlaceCreated has drop { name: String, } public fun emit_place_created(name: String) { event::emit(PlaceCreated { name }); } Cet événement apparaîtra sur la blockchain et pourra être récupéré par des explorateurs ou des outils d'indexation. 3.2 Écouter les événements Utilisez des outils tels queSuite Explorer,Subsquidou l'API Sui JSON-RPC pour écouter les événements émis et réagir en conséquence dans votre application. En Javascript/TypeScript : import { JsonRpcProvider } from '@mysten/sui.js'; const provider = new JsonRpcProvider('https://fullnode.devnet.sui.io'); const events = await provider.getEvents({ MoveEventType: '0x...::example::PlaceCreated' }); Étape 4 : Contrôle d'accès et modèles de sécurité La sécurité est primordiale lorsqu'il s'agit de contrats intelligents. Move fournit plusieurs outils pour mettre en œuvre un contrôle d'accès robuste. 4.1 Modèle de propriété des objets Sui applique la propriété au niveau du protocole. Seul le propriétaire d'un objet peut le muter ou le transférer. public entry fun update_name(sweet_place: &mut SweetPlace, new_name: String) { sweet_place.name = new_name; } Seul le propriétaire actuel peut appeler cette fonction. 4.2 Modèle de capacités Pour des autorisations plus précises, utilisez lemodèle de capacité : créez des objets spéciaux qui accordent un accès limité à certaines fonctions. struct AdminCap has key { id: UID } public entry fun grant_admin_cap(ctx: &mut TxContext) { let cap = AdminCap { id: object::new(ctx) }; transfer::public_transfer(cap, tx_context::sender(ctx)); } public entry fun restricted_action(_: &AdminCap) { // perform admin action } Désormais, seuls les utilisateurs qui détiennent la touche AdminCappeuvent exécuterrestricted_action. Ce modèle est largement utilisé dans DeFi et les DAO pour déléguer des pouvoirs en toute sécurité. Étape 5 : Utilisation de structures de données complexes Move prend en charge les types de données structurés qui permettent aux développeurs de modéliser des logiques et des relations complexes. 5.1 Vecteurs Les vecteurs sont utilisés pour stocker des collections ordonnées d'articles du même type. let names = vector[String::utf8(b"Alice"), String::utf8(b"Bob")]; Ils sont utiles pour stocker des listes de NFT, de rôles d'utilisateurs ou de métadonnées dynamiques. Exemple d'utilisation : vector::push_back(&mut names, String::utf8(b"Charlie")); 5.2 Tableaux (via la bibliothèque Sui Standard) Bien que Move ne prenne pas en charge nativement les cartes ou les tables de hachage, Sui fournit le Tabletype dans sa bibliothèque standard. use sui::table::{Self, Table}; struct Registry has key { id: UID, entries: Table, } public fun add_entry(registry: &mut Registry, key: u64, value: String) { table::add(&mut registry.entries, key, value); } Utilisez des tableaux pour gérer efficacement de grands ensembles de données. Étape 6 : Tester et déboguer vos contrats Les tests garantissent que votre code Move se comporte comme prévu dans diverses conditions. 6.1 Tests unitaires dans Move Écrivez des tests unitaires directement dans vos modules Move à l'aide du framework de test. #[test] public fun test_create_sweet_place() { let ctx = tx_context::dummy(); create_sweet_place(&mut ctx, String::utf8(b"My House")); } Exécutez des tests avec : sui move test 6.2 Utilisation de Sui Explorer Après avoir déployé votre contrat, utilisez le Sui Explorer pour inspecter les transactions, afficher l'état des objets et résoudre les problèmes. Étape 7 : Applications concrètes des concepts de déplacement avancés Maintenant que vous comprenez les principales fonctionnalités du langage, voyons comment elles s'appliquent à des scénarios du monde réel. Plateforme de frappe NFT 7.1 Créez une plate-forme qui permet aux utilisateurs de créer des NFT soutenus par les ressources de Move, en tirant parti des modèles de propriété et de ressources. 7.2 Système de vote DAO Implémentez une organisation autonome décentralisée (DAO) utilisant Move pour le vote, les propositions et la gouvernance, en utilisant des événements et des fonctionnalités pour des actions sécurisées. 7.3 Échanges de jetons et guichets automatiques Créez un échange décentralisé (DEX) à l'aide des modules Move pour représenter les pools de liquidités et les échanges de jetons, en utilisant des génériques et des tableaux pour une gestion efficace de l'état.

    • Sui
    • Architecture
    • Move
    2
  • article banner.
    Evgeniy CRYPTOCOIN.Peera.
    PourSuiJun 30, 2025
    Article

    Que sont les NFT dynamiques et pourquoi Sui y excelle ?

    L'espace NFT évolue au-delà des images statiques et des images de profil (PFP). La prochaine frontière ? NFT dynamiques (DNFT) : jetons qui peuvent changer en fonction de données réelles, d'interactions avec les utilisateurs ou d'événements en chaîne. Alors que de nombreuses blockchains prennent en charge les NFT, Sui Network occupe une position unique pour propulser l'avenir des DNFT grâce à son architecture innovante. Cet article explore : Qu'est-ce qui rend un NFT « dynamique » ? Pourquoi la technologie de Sui est parfaite pour les DNFT Des cas d'utilisation concrets aujourd'hui L'avenir des actifs numériques interactifs ##1. Que sont les NFT dynamiques ? Contrairement aux NFT traditionnels (qui sont statiques et immuables), les NFT dynamiques peuvent mettre à jour leurs : Des métadonnées (par exemple, un NFT sportif qui change en fonction des statistiques du jeu) Apparence (par exemple, une œuvre d'art qui évolue au fil du temps) Utilité (par exemple, un NFT de fidélité qui débloque de nouveaux avantages) Comment fonctionnent-ils ? Les DNFT utilisent une logique de contrat intelligent + des entrées de données externes (oracles, actions des utilisateurs, etc.) pour déclencher des modifications. Exemple : Une œuvre d'art NFT sensible aux conditions météorologiques qui change de couleur en fonction des données climatiques en temps réel. Un personnage de jeu NFT qui monte de niveau au fur et à mesure que vous jouez. ##2. Pourquoi Sui est la meilleure blockchain pour les NFT dynamiques Bien qu'Ethereum et Solana prennent également en charge les DNFT, la conception de Sui offre des avantages clés : Stockage en chaîne (aucune dépendance externe) La plupart des blockchains stockent les métadonnées NFT hors chaîne (par exemple, IPFS), ce qui rend les mises à jour dynamiques difficiles. Sui stocke tout en chaîne, ce qui permet des modifications instantanées et fiables. Move Language : mises à niveau sécurisées et flexibles La solidité d'Ethereum nécessite des contrats proxy complexes pour les NFT évolutifs. Le langage Move de Sui permet une mutation native, sans aucune solution de contournement maladroite. Traitement parallèle (évolutivité massive) Mettre à jour des milliers de DNFT à la fois ? Ethereum est aux prises avec la congestion. L'exécution parallèle de Sui gère des millions de mises à jour sans ralentissement. Modèle centré sur l'objet (contrôle granulaire) Chaque NFT est un objet indépendant doté d'une logique personnalisable. Permet une interactivité affinée (par exemple, seul le propriétaire peut déclencher des modifications). #3. Cas d'utilisation réels des DNFT sur Sui Jeux et métaverse Des objets évolutifs dans le jeu (par exemple, une épée NFT qui gagne des capacités en l'utilisant). Interopérabilité entre les jeux (les objets de Sui peuvent se déplacer entre les DApps). Exemple : *Les jeux basés sur l'interface utilisateur tels que Panzerdogs utilisent des DNFT pour les avatars personnalisables. * Art génératif et réactif Des NFT alimentés par l'IA qui changent de style en fonction des tendances du marché. Art collaboratif où les collectionneurs influencent la pièce finale. Exemple : *Des laboratoires d'art tels que la galerie Sui accueillent des expositions DnFT. * Suivi des actifs dans le monde réel (RWA) Des NFT d'actes qui sont mis à jour avec les registres de propriété. Badges de certification qui expirent ou se renouvellent automatiquement. Programmes de fidélité et d'adhésion Des NFT à remises dynamiques qui s'améliorent en fonction des dépenses des clients. Des passes d'accès VIP qui débloquent de nouveaux niveaux au fil du temps. Exemple : *Les partenaires commerciaux de Sui testent les programmes de fidélité DnFT. * N° 4. L'avenir des DNFT sur Sui Attendez-vous à voir : Les DNFT intégrés à l'IA (par exemple, les chatbots vivant dans des avatars NFT). DNFT garantis par DeFi (la valeur s'ajuste en fonction des conditions du marché). Des jeux entièrement connectés où chaque actif est un dNFT mutable. Conclusion : Sui construit l'avenir des NFT Alors que les NFT statiques ont dominé la période 2021-2023, les NFT dynamiques domineront la prochaine période haussière, et la technologie de Sui en fait la plateforme idéale. Grâce au** stockage en chaîne, à la sécurité de Move et à une évolutivité inégalée, Sui est sur le point de devenir le berceau des DNFT avancés.

    • Sui
    • Architecture
    5
  • article banner.
    Benjamin XDV.Peera.
    PourSuiJun 30, 2025
    Article

    L'IA remplacera-t-elle les développeurs humains dans le Web3 ?

    Les progrès rapides des outils de codage alimentés par l'IA (tels que GitHub Copilot, ChatGPT et Claude) ont suscité un débat : *L'IA finira-t-elle par remplacer les développeurs Web3 ? * Alors que l'IA transforme la façon dont nous créons des applications décentralisées (DApps), la réponse n'est pas simple : oui ou non. Cet article explore : Comment l'IA change déjà le développement du Web3 Limites de l'IA dans le codage de la blockchain L'évolution du rôle des développeurs humains Qui dominera l'avenir du Web3 : l'IA, les humains ou les deux ? ##1. Comment l'IA transforme le développement du Web3 L'IA aide déjà les développeurs de différentes manières : Rédaction intelligente de contrats plus rapide Des outils tels que ChatGPT et Warp AI (pour Solana) peuvent générer des modèles de contrats intelligents de base en quelques secondes. Exemple : *"Rédigez un contrat de jeton Solidity ERC-20 avec une fonctionnalité de gravure. « * Audit automatique et détection de bogues Des outils basés sur l'IA (Certora, Slither) analysent le code à la recherche de vulnérabilités telles que les attaques par réentrée. Réduit les pertes annuelles de plus de 3 milliards de dollars dues aux piratages DeFi. Langage naturel pour coder Les développeurs peuvent décrire la logique en anglais clair et l'IA la convertit en Move (Sui), Solidity (Ethereum) ou Rust (Solana). Optimisation des frais de gaz et du déploiement L'IA suggère des méthodes de transaction économes en gaz. Prévoit les meilleurs moments pour déployer des contrats afin d'éviter la congestion du réseau. ##2. Pourquoi l'IA ne remplacera pas (encore) complètement les développeurs Web3 Malgré ces avancées, l'IA présente toujours des limites critiques : Manque de compréhension approfondie de la blockchain L'IA peut répliquer le code existant mais a du mal à trouver de nouvelles solutions cryptographiques (par exemple, des preuves à connaissance nulle). Il hallucine souvent une logique incorrecte dans les contrats intelligents complexes. Aucune intuition quant aux risques de sécurité L'IA peut passer à côté des vecteurs d'attaque subtils que les auditeurs humains détectent. Exemple : *Une IA peut ne pas prévoir d'exploit de gouvernance dans un DAO. * Incapacité à innover La plupart des outils d'IA remixent le code existant plutôt que d'inventer de nouveaux mécanismes de consensus ou de nouveaux modèles de tokenomique. Les véritables avancées en matière de blockchain (comme la transition PoS d'Ethereum) nécessitent toujours de l'ingéniosité humaine. Angles morts juridiques et éthiques L'IA ne peut pas naviguer dans les zones grises réglementaires (par exemple, les lois sur les valeurs mobilières pour les lancements de jetons). Les décisions éthiques (par exemple, les compromis entre la décentralisation et l'évolutivité) nécessitent un jugement humain. #3. L'avenir : l'IA en tant que copilote, pas en tant que remplaçante Le scénario le plus probable ? L'IA renforce les développeurs mais ne les remplace pas. Les développeurs juniors tireront parti de l'IA Les tâches de routine (contrats standard, tests unitaires) seront automatisées. Les développeurs débutants doivent améliorer leurs compétences en matière de sécurité et d'architecture pour rester pertinents. Les développeurs seniors se concentreront sur l'innovation Les meilleurs ingénieurs concevront de nouveaux protocoles, optimiseront les systèmes L1/L2 et s'attaqueront aux problèmes non résolus (par exemple, la résistance aux MEV). De nouveaux rôles vont émerger « AI Smart Contract Trainers » : affinez les modèles pour les tâches spécifiques à la blockchain. « Auditeur hybride » — Combinant des outils d'IA avec une révision manuelle. Conclusion : l'IA est un outil, pas une prise de contrôle L'IA perturbera les tâches de codage de bas niveau mais n'éliminera pas le besoin de développeurs Web3 qualifiés. Au contraire, le secteur va changer : Les développeurs moyens qui utilisent le codage copier-coller risquent l'obsolescence. Les développeurs d'élite qui maîtrisent l'IA et une expertise approfondie de la blockchain prospéreront. Verdict final : Court terme (2024-2026) : l'IA gère 30 à 50 % du codage standard. À long terme (2030+) : les humains et l'IA créent conjointement des DApps plus intelligentes et plus sûres.

    • Sui
    • Move
    4
  • 0xduckmove.Peera.
    PourSuiJun 30, 2025
    Questions et Réponses avec des Experts

    Le serveur testnet est-il en panne ?

    0|pictor-node | SuiHTTPStatusError: Unexpected status code: 503 0|pictor-node | at SuiHTTPTransport.request (/home/ubuntu/pictor-backend-nodejs/node_modules/@mysten/sui/src/client/http-transport.ts:113:10) 0|pictor-node | at processTicksAndRejections (node:internal/process/task_queues:105:5) 0|pictor-node | at SuiClient.getNormalizedMoveFunction (/home/ubuntu/pictor-backend-nodejs/node_modules/@mysten/sui/src/client/client.ts:397:10) 0|pictor-node | at /home/ubuntu/pictor-backend-nodejs/node_modules/@mysten/sui/src/experimental/transports/json-rpc-resolver.ts:267:17 0|pictor-node | at async Promise.all (index 0) 0|pictor-node | at normalizeInputs (/home/ubuntu/pictor-backend-nodejs/node_modules/@mysten/sui/src/experimental/transports/json-rpc-resolver.ts:264:3) 0|pictor-node | at resolveTransactionData (/home/ubuntu/pictor-backend-nodejs/node_modules/@mysten/sui/src/experimental/transports/json-rpc-resolver.ts:33:3) 0|pictor-node | at /home/ubuntu/pictor-backend-nodejs/node_modules/@mysten/sui/src/transactions/resolve.ts:68:3 0|pictor-node | at /home/ubuntu/pictor-backend-nodejs/node_modules/@mysten/sui/src/transactions/Transaction.ts:764:5 0|pictor-node | at _Transaction.runPlugins_fn (/home/ubuntu/pictor-backend-nodejs/node_modules/@mysten/sui/src/transactions/Transaction.ts:786:3) { 0|pictor-node | status: 503, 0|pictor-node | statusText: 'Service Unavailable' 0|pictor-node | } `

    • Sui
    • Architecture
    1
    1
  • Benjamin XDV.Peera.
    PourSuiJun 30, 2025
    Questions et Réponses avec des Experts

    What Are Common Security Pitfalls in Sui Move Development?

    I’m auditing a Sui Move smart contract and want to avoid critical vulnerabilities. From reviewing past exploits, I’ve seen: access control issues, arithmetic overflows, reentrancy risks, frontrunning, improper object ownership Questions: What are the most critical Sui Move vulnerabilities to watch for? How does Move’s ownership model prevent/differ from traditional reentrancy? Are there Sui-specific attack vectors (e.g., object spoofing)?

    • Sui
    • Architecture
    5
    2
    Meilleure réponse
  • article banner.
    Bekky.Peera.
    PourSuiJun 30, 2025
    Article

    L'impact de l'IA sur les applications décentralisées (DApps)

    L'IA révolutionne les DApps, améliore les écosystèmes des contrats intelligents, de la DeFi et de la blockchain, tout en soulevant des questions en matière de sécurité et de décentralisation. Principales innovations en matière d'IA dans les DApps Contrats intelligents plus intelligents — L'IA permet de créer des contrats adaptatifs qui optimisent les frais, détectent les exploits et s'adaptent aux conditions du marché (par exemple, Fetch.ai). DeFi alimenté par l'IA — Améliore la gestion des risques, la détection des fraudes et les stratégies de portefeuille automatisées (par exemple, Numerai). Marchés d'IA décentralisés — La blockchain permet de négocier des modèles d'IA de manière transparente et incitative (par exemple, Bittensor). AI Oracles — Améliore la précision des données pour les DApps en validant et en traitant des entrées complexes (par exemple, DIA). NFT et jeux générés par l'IA — Crée des NFT dynamiques et des expériences de jeu adaptatives (par exemple, Alethea AI). Défis liés aux DApps alimentées par l'IA Risques liés à la centralisation La plupart des modèles d'IA nécessitent une puissance de calcul considérable, s'appuyant souvent sur des fournisseurs de cloud centralisés (par exemple, AWS, Google Cloud). Cela contredit la philosophie de décentralisation de la blockchain, créant des points de défaillance uniques potentiels. Des solutions telles que les réseaux informatiques décentralisés (par exemple, Akash, Gensyn) visent à résoudre ce problème mais n'en sont qu'à leurs débuts. Incertitude réglementaire Si un contrat intelligent piloté par l'IA prend une mauvaise décision (par exemple, une liquidation incorrecte dans DeFi), qui est responsable : le développeur, le modèle d'IA ou le DAO ? Les gouvernements peuvent imposer des règles strictes aux applications financières alimentées par l'IA, ce qui pourrait entraver l'innovation. La conformité devient complexe lorsque l'IA opère dans plusieurs juridictions. Coûts élevés de l'IA en chaîne La formation et l'exécution de modèles d'IA en chaîne sont d'un coût prohibitif en raison des frais de gaz et des limites de stockage. Les solutions émergentes telles que l'apprentissage automatique à connaissance nulle (zKML) et l'IA hors chaîne avec vérification en chaîne pourraient réduire les coûts. Les solutions de mise à l'échelle de couche 2 peuvent être utiles, mais l'efficacité reste un défi. Possibilités futures pour l'IA dans les DApps DAO autonomes gouvernés par l'IA L'IA pourrait remplacer le vote humain dans les DAO, en prenant des décisions sur la base d'une analyse de données en temps réel. Exemple : une IA DAO gérant un protocole DeFi pourrait ajuster automatiquement les taux d'intérêt ou les paramètres de sécurité sans propositions. Blockchains à optimisation automatique Les mécanismes de consensus pilotés par l'IA pourraient ajuster dynamiquement la taille des blocs, les frais ou les protocoles de sécurité pour plus d'efficacité. Les réseaux peuvent « tirer les leçons » des attaques passées (attaques à 51 %, par exemple) pour empêcher de futurs exploits. Protocoles DeFi organisés par l'IA Les plateformes DeFi pourraient utiliser l'IA pour rééquilibrer automatiquement les pools de liquidités, prévoir les pannes ou mettre sur liste noire les acteurs malveillants. Exemple : Un protocole de prêt basé sur l'IA pourrait ajuster les exigences en matière de garanties en temps réel en fonction de la volatilité du marché.

    • Sui
    5
  • Evgeniy CRYPTOCOIN.Peera.
    PourSuiJun 30, 2025
    Questions et Réponses avec des Experts

    How to Create a Liquidity Pool in Sui Move?

    I'm building a DeFi protocol on Sui and need to implement a basic liquidity pool (like Uniswap-style AMM) in Move. I'm struggling with: Storing LP tokens – How to handle dynamic supply and balances? Deposits/Withdrawals – Ensuring atomic swaps and proper math. Fee mechanism – Where to deduct fees without breaking invariants? Frontrunning protection – Is there a built-in way to handle slippage? What I've tried: Basic two-token pool using Table for balances. Manual LP mint/burn logic. Fixed 0.3% fee on swaps. Issues encountered: "Arithmetic overflow" when calculating liquidity. Reentrancy risks – Can Sui Move prevent this? LP token accuracy – Decimals handling feels hacky. Questions: What’s the correct architecture for a Sui liquidity pool? How to implement safe math for swaps/deposits? Are there Sui-specific optimizations (vs. EVM AMMs)? How to make the pool composable with other DeFi protocols?

    • Sui
    5
    1
    Meilleure réponse
  • article banner.
    Owen.Peera.
    Owen496
    PourSuiJun 30, 2025
    Article

    Erreurs courantes de Sui Blockchain : verrouillage des objets et limites de débit des robinets

    Lorsqu'ils développent ou testent des applications sur la blockchain Sui, les développeurs rencontrent souvent deux problèmes courants : 1.Erreurs de verrouillage des objetslors de l'exécution de la transaction 2.Demandes de robinets à tarif limitélorsque vous essayez d'obtenir des jetons de test Cet article explique ces deux problèmes en détail et propose des solutions pratiques pour vous aider à éviter toute frustration lors du développement. ##1. Erreur : objets réservés pour une autre transaction 🔍 Ce que cela signifie Il se peut que vous rencontriez une erreur comme celle-ci : JsonRpcError: Failed to sign transaction by a quorum of validators because one or more of its objects is reserved for another transaction. Cela signifie qu'un ou plusieurs objets (par exemple, des pièces de gaz ou des objets partagés) impliqués dans votre transaction sont actuellement bloqués par une transaction soumise précédemment, même si elle n'est pas encore terminée. Sui utilise uncontrôle de simultanéité optimiste, qui verrouille les objets jusqu'à ce qu'une transaction soit finalisée ou expire (environ 30 à 60 secondes). Si plusieurs transactions tentent d'utiliser le même objet avant la finalisation, elles échoueront avec cette erreur. Comment vérifier si un objet est disponible Utilisez la sui_getObjectméthode RPC pour inspecter l'état de l'objet : curl --location --request POST 'https://fullnode.testnet.sui.io:443' \ --header 'Content-Type: application/json' \ --data-raw '{ "jsonrpc": "2.0", "id": 1, "method": "sui_getObject", "params": [""] }' Si la réponse contient "status": "Locked"ou"owner": "locked", attendez avant de réutiliser l'objet. Meilleures pratiques pour éviter les problèmes de verrouillage des objets 1.Attendez la finalisation avant de soumettre de nouvelles transactions Utilisation waitForTransactionà partir du SDK : import { JsonRpcProvider } from '@mysten/sui.js'; const provider = new JsonRpcProvider('https://fullnode.testnet.sui.io:443'); await provider.waitForTransaction(''); 2.Utilisez plusieurs pièces à gaz Pour éviter toute dispute, divisez votre pièce d'essence : sui client split-coin --coin-id --amounts Utilisez ensuite une pièce de gaz différente pour chaque transaction. 3.Réessayez avec un arrêt exponentiel Lorsque vous rencontrez des erreurs de verrouillage, réessayez après des délais croissants (par exemple, 1 s, 2 s, 4 s). 4.Surveiller via Explorer Utilisez Sui Explorer pour suivre l'état de la transaction de verrouillage par résumé. ##2. Erreur : 429 demandes en trop — Limitation du débit du robinet Ce que cela signifie Lorsque vous demandez des jetons de test depuis le robinet Sui, vous pouvez voir : API Error: 429 POST /v2/gas - “429 Too Many Requests” Cela indique que vous avez dépassé la limite de débit, généralement en raison d'un trop grand nombre de demandes provenant de la même adresse IP ou du même compte dans un délai de 24 heures. Solutions Essayez d'autres robinets Le robinet officiel (faucet.testnet.sui.io) a des limites strictes. Vous pouvez essayer d'autres services : https://faucet.n1stake.com/ https://faucet.sui.io Ces robinets ont souvent des politiques plus clémentes ou des limites tarifaires distinctes. Réutiliser les comptes de test Au lieu de créer de nouveaux comptes à chaque fois, réutilisez les comptes existants pour réduire le nombre de demandes. Exécuter un réseau de test local Pour les développements et les tests intensifs, envisagez de gérer votre propre réseau Sui local : sui start --local-rpc-address Cela vous donne un contrôle total sur le gaz et évite les dépendances externes.

    • Sui
    • Transaction Processing
    5
  • article banner.
    Arnold.Peera.
    PourSuiJun 30, 2025
    Article

    Comment Sui empêche-t-elle le piratage des contrats intelligents ?

    Le piratage des contrats intelligents a tourmenté l'industrie de la blockchain, avec plus de 3 milliards de dollars perdus rien qu'en 2023 en raison d'exploits sur des plateformes comme Ethereum. Sui Network, conçu avec la sécurité comme priorité, introduit plusieurs innovations clés pour minimiser ces risques. Cet article explore : 🔒 Caractéristiques de sécurité intégrées de Sui 💡 Comment le langage Move empêche les exploits courants 🛡️ Comparaison avec les vulnérabilités d'Ethereum 🚀 Pourquoi Sui pourrait devenir la plateforme de contrats intelligents la plus sûre 1. Le langage de programmation Move : une approche axée sur la sécurité Sui utilise Move, un langage développé à l'origine pour la blockchain Diem de Facebook, spécialement conçu pour la gestion sécurisée des actifs. Principaux avantages de Move en matière de sécurité : Pas d'appels externes non contrôlés — Empêche les attaques de réentrée (comme le piratage DAO de 60 millions de dollars sur Ethereum). Règles de saisie et de propriété strictes — Élimine les pertes de fonds accidentelles dues à des erreurs de codage. Support de vérification formelle : permet de prouver mathématiquement l'exactitude du contrat. Exemple : Dans Ethereum, une simple faute de frappe peut épuiser des fonds. Dans Move, le compilateur rejette le code non sécurisé avant le déploiement. ###2. Modèle centré sur l'objet : isoler les vulnérabilités Contrairement au modèle d'état partagé d'Ethereum (où un bogue peut affecter de nombreux contrats), les limites de stockage basées sur les objets de Sui exploitent la propagation : Chaque actif (pièce, NFT, etc.) est un objet distinct soumis à des règles de propriété strictes. Les contrats ne peuvent pas modifier arbitrairement des données non liées. Conséquence : même si un contrat est compromis, les dommages sont maîtrisés, contrairement aux risques de composabilité d'Ethereum (par exemple, le piratage du pont Wormhole de 325 millions de dollars). 3. Pas d'attaques de type « Gas Griefing » Sur Ethereum, les attaquants peuvent spammer des contrats contenant des transactions coûteuses afin de bloquer les utilisateurs légitimes (par exemple, des attaques par déni de service). La solution de Sui : Transactions fixes à faible coût (pas d'enchères de gaz). L'exécution parallèle évite la congestion de l'ensemble du réseau. ##4. Surveillance de la sécurité en chaîne Les validateurs de Sui surveillent activement les activités suspectes : Vérifications préalables des transactions — Rejetez les demandes manifestement malveillantes. Analyses en temps réel : signalez les comportements anormaux (par exemple, des retraits importants et soudains). ##5. Bilan de sécurité dans le monde réel (jusqu'à présent) Sui n'a subi aucun piratage majeur depuis le lancement du réseau principal (2023). Ethereum enregistre en moyenne 2 à 3 exploits DeFi majeurs par mois. Étude de cas : Un DEX (Cetus) basé sur SUI a traité plus de 1 milliard de dollars de transactions sans incidents de sécurité, contrairement aux DEX Ethereum, qui sont fréquemment victimes d'exploits. ##6. Pérennisation : vérification et audits formels Sui encourage : Vérification formelle — Prouver mathématiquement que les contrats sont exempts de bogues. Exigences relatives à plusieurs audits — Les grands projets doivent réussir au moins 3 audits. Conclusion : Sui est-elle la plateforme de contrats intelligents la plus sécurisée ? Bien qu'aucun système ne soit totalement résistant au piratage, le langage Move, le modèle d'objet et l'exécution parallèle de Sui le rendent bien moins vulnérable qu'Ethereum aujourd'hui. L'essentiel : Pour les développeurs : Move réduit les risques d'erreur humaine. Pour les utilisateurs : moins de chances de perdre de l'argent à cause d'exploits. Pour les institutions : une sécurité de niveau professionnel renforce la confiance. **Quelle est la prochaine étape ? Ethereum adoptera-t-il des fonctionnalités similaires à Move ? Sui pourra-t-elle maintenir son bilan de sécurité irréprochable à mesure que le taux d'adoption augmente ?** Partagez vos réflexions ci-dessous

    • Sui
    6