Move.

Publication

Partagez vos connaissances.

Bolke .
Apr 02, 2025
Questions et Réponses avec des Experts

Pouvez-vous utiliser le caractère aléatoire dans les fonctions publiques sans entrée dans Move ?

Je suis novice en matière d'utilisation du hasard dans la programmation de Move. La documentation suggère d'utiliser le hasard uniquement dans les fonctions de saisie. Cependant, j'envisage d'utiliser le hasard pour définir des valeurs, et non pour le code de branchement. Est-il acceptable d'utiliser le hasard dans une fonction publique de cette manière ?

  • Move CLI
  • Move
1
1
Partager
Commentaires
.

Réponses

1
Ramirez.
Apr 2 2025, 22:45

Pas nécessairement. Si vous définissez une fonction publique, par exemplefoo(Random, SharedObj, ...), un attaquant peut l'exploiter en créant une fonction, par exempleattack(Random, SharedObj, ...), qui appelle votre fonction. L'attaquant peut ensuite inspecter les modifications apportées à l'objet partagé et décider d'annuler la transaction en fonction de son nouvel état. Ceci est similaire à une attaque décrite dans la documentation Sui sur le caractère aléatoire, mais implique un état partagé. Même si les champs sensibles ne sont pas exposés, un attaquant peut sérialiser et analyser l'état de l'objet. Par conséquent, ils pouvaient toujours « gagner » ou « abandonner » mais ne jamais « perdre ». Si cela est acceptable pour votre cas d'utilisation, vous pouvez continuer à utiliser une fonction publique et supprimer l'avertissement.

0
Meilleure réponse
Commentaires
.

Connaissez-vous la réponse ?

Veuillez vous connecter et la partager.

Move is an executable bytecode language used to implement custom transactions and smart contracts.

148Publications231Réponses
Sui.X.Peera.

Gagne ta part de 1000 Sui

Gagne des points de réputation et obtiens des récompenses pour avoir aidé la communauté Sui à se développer.

Campagne de RécompensesJuillet