Le très attendu Permanent Testnet de Sui est enfin arrivé !! Cette instance du réseau Sui sert de Testnet de longue date, décentralisé et sans autorisation de Sui. Contrairement aux précédentes vagues de Testnet 1 et 2, ce nouveau Testnet continuera à fonctionner même après le lancement du Mainnet.

Avec ce réseau, nous apportons un certain nombre de mises à jour de fonctionnalités importantes à la communauté. 

Réseau central

  • Ensemble de validateurs dynamiques : les candidats validateurs qui répondent à des exigences d'enjeu suffisantes peuvent rejoindre le réseau aux limites d'époque, et les validateurs actifs peuvent quitter le réseau aux limites d'époque. Ce modèle d'accès du validateur prouve ce que signifie être sans autorisation.

  • Prise en charge de la mise à niveau du logiciel de protocole et du framework Sui : contrairement à Devnet, Testnet ne sera pas effacé à chaque mise à jour logicielle (sauf circonstances atténuantes). La communauté sera informée de manière appropriée avant toute mise à jour logicielle ou effacement de données prévu sur Testnet. 

  • Restauration complète du nœud à partir d'un instantané de la base de données : au lieu d'attendre la synchronisation d'un nœud complet, les opérateurs de nœuds peuvent tirer parti d'un point de contrôle pour afficher rapidement un nœud complet.   

  • Mises à jour des adresses et des signatures : les adresses de compte, les ID d'objet et les ID de transaction ont été mis à niveau de 20 octets à 32 octets pour éviter les collisions de hachage. De plus, la fonction de hachage par défaut de Sui est désormais Blake2b plutôt que SHA3, car elle est beaucoup plus performante. Et afin de prendre en charge un large éventail de tailles de transactions, les signatures sont désormais appliquées sur des résumés de hachage au lieu de données BCS sérialisées. Cela permet la compatibilité de Sui avec les portefeuilles matériels, dont les API de signataire autorisent généralement des entrées de taille limitée.

Expérience du développeur

Conformément à nos aspirations pour que Sui devienne la meilleure plate-forme de développement de sa catégorie, nous considérons cette étape comme la première incarnation de ce que nous appelons Sui DevX 1.0, où un certain nombre de primitives et de sémantiques de base du développeur sont rassemblées :

  • le point culminant des commentaires des développeurs et des constructeurs tout au long du parcours Sui jusqu'à présent

  • éléments de base sur lesquels l'ergonomie et l'efficacité des développeurs de Sui continueront d'être affinées

  • conçu dans le but de permettre un écosystème Sui décentralisé mais non fragmenté

Ces primitives sont :

  • Blocs de transactions programmables : cette construction puissante permet d'enchaîner une série de transactions (splitCoin, mergeCoins, transferObjects, moveCall, makeMoveVec, publish) pour créer un bloc de transactions atomique personnalisé parfaitement adapté aux besoins de votre application. Étant donné que moveCall peut spécifier n'importe quelle fonctionnalité en chaîne existante, les blocs de transactions programmables fournissent essentiellement une composition de transactions ad hoc, améliorant considérablement la polyvalence du modèle de programmation Sui Move.  Les blocs de transaction programmables simplifient également la gestion des pièces de gaz, car une application peut transmettre un vecteur d'objets de pièces de gaz et effectuer un fractionnement/fusion de pièces au sein d'un bloc de transaction programmable, plutôt que d'avoir à effectuer une sélection de pièces avant la soumission.  

  • Transactions sponsorisées et station-service : bien que la prise en charge des transactions sponsorisées soit en place depuis la version 0.27, nous sommes heureux d'annoncer la station-service de Shinami (guide, API), qui est désormais disponible pour une utilisation avec le réseau de test permanent de Sui ! 

  • Norme d'affichage des objets : ceci standardise l'affichage hors chaîne des objets du même type à l'aide d'un ensemble de modèles nommés. Sui Explorer et Sui Wallet prennent désormais tous deux en charge la norme d'affichage des objets. Les API Sui et les SDK Typescript/Rust prennent également en charge la norme d'affichage des objets. Il s'agit d'un effort de collaboration avec beaucoup d'idées et de brainstorming de la part de la communauté Sui. Nous souhaitons particulièrement remercier Capsules et OriginByte et pour leur contribution à cette norme.

  • Kiosk Standard : Kiosk, une nouvelle primitive puissante, prend en charge la mise en vente d'un objet et l'application des politiques de redevances définies par le créateur lorsque l'objet est vendu. La combinaison d'Object Display et de Kiosk comble deux lacunes clés pour les personnes qui créent des objets de collection et des plateformes d'échange sur Sui. Nous encourageons les portefeuilles, les explorateurs et les marchés de l'écosystème à explorer à la fois la norme Object Display et la norme Kiosk pour une compatibilité transparente dans l'ensemble de l'écosystème. 

  • Refonte du RPC : il existe désormais davantage de méthodes RPC get* basées sur l'agrégation : getEpoch, getNetworkMetrics, getMoveCallMetrics, queryObjects. Les requêtes groupées JSON RPC ont été abandonnées au profit des méthodes MultiGet*. Les événements système sont devenus obsolètes au profit de champs dédiés dans la réponse à la transaction. Enfin, un certain nombre d'anciennes méthodes RPC (marquées unsafe_*) ont été abandonnées au profit des blocs de transactions programmables.

  • Preuves de connaissances nulles : l'API Move est désormais prise en charge pour vérifier Groth16 ZKP à l'aide de la courbe elliptique BN254 et du BLS12-381 (deux des courbes les plus largement utilisées). Cela fournit des preuves de calcul dans les contrats intelligents Sui et permet des applications préservant la confidentialité.

  • Deux granularités d'horodatage : un module d'horloge à granularité fine qui prend en charge une granularité de 2 à 3 secondes pour les applications en temps quasi réel, et un horodatage d'époque à granularité grossière.  

  • Mise à niveau du package Move : il s'agit d'une fonctionnalité essentielle permettant aux développeurs de mettre à jour leur contrat Move et d'effectuer des mises à niveau des packages dépendants. Move Package Upgrade sera disponible sur Testnet avec la prochaine mise à jour logicielle (provisoirement prévue pour la première semaine d'avril) ! Restez à l'écoute!

En plus d'utiliser Devnet et Testnet, nous encourageons également les constructeurs à utiliser l'environnement local pour le développement initial et les itérations plus rapides. Le binaire sui-test-validator a été amélioré pour faciliter le flux de développement local.

Auto Devnet contre Testnet

Le tableau suivant décrit les différentes caractéristiques du réseau entre Devnet et Permanent Testnet à la date de cette publication.

AttributDevnetPermanent Testnet Ensemble de validateursQuatre validateurs exploités par Mysten Labs93 validateurs + 2 validateurs exploités par Mysten LabsNœud complet gérés par Mysten Labs et nœuds gérés par la communautéMysten Labs gérés et nœuds gérés par la communautéValidator locationUS-EastGeo-distributedDurationPermanentPermanent AccessPublicPublicJSON API URL . Discord Faucet Channel DiscordCanal Discord Unité de robinet1 SUI par demande1 SUI par demandeÉpoque Durée24 heures24 heures Prix du gaz de référence1 MIST Début de l'époque 0 à 1 000 MIST. Par la suite, le prix de référence du gaz sera mis à jour à mesure que les validateurs participeront à l'enquête sur les prix du gaz tout au long de chaque époque. Prix du gaz de stockage1 MIST76 MISTSW Version au 29 mars 2023v0.29.1v0.29.1Publier CadenceVersion hebdomadaire et correctifs plus fréquents si nécessaireMise à jour uniquement en tant que nécessaire dans l’immédiat. Un calendrier de sortie régulier sera annoncé une fois établi. Durabilité des donnéesDonnées effacées dans le cadre des mises à jour logicielles régulièresAucun effacement des données dans le cadre des mises à jour logicielles. Jusqu'à ce qu'un calendrier d'effacement régulier soit établi, tout effacement de données sera annoncé à l'avance. Assistance en cas d'incident Oncalls Mysten Labs et protocole de gestion des incidents Mysten Labs Oncalls Mysten Labs et coordination nécessaire avec les validateurs

Rejoignez l'action

Comme vous pouvez le constater, de nombreuses fonctionnalités nouvelles et puissantes sont désormais possibles sur un réseau décentralisé et sans autorisation. Si vous êtes un validateur intéressé ou un opérateur de nœud complet, nous vous invitons à rejoindre le réseau. Si vous êtes un créateur d'applications, nous serions ravis de voir votre créativité sur Sui DevX 1.0 (en particulier pour les blocs de transactions programmables et les transactions sponsorisées) !

Merci de faire partie de la communauté Sui, nous apprécions grandement chacune de vos contributions uniques à l'élaboration du futur Sui Mainnet !