Move.

Beitrag

Teile dein Wissen.

Dominikus .
Mar 15, 2025
Experten Q&A

How to ensure secure module object access and mutation?

I developed a module with a DonutShop containing a Balance. I want to share this module without risking unauthorized manipulation of Balance. Can other modules directly alter the Balance if I only use getters/setters within the module?

  • Move CLI
1
1
Teilen
Kommentare
.

Antworten

1
Bolke .
Mar 16 2025, 01:49

Korrekt. Ein Objekt kann nur durch eine Funktion mutiert werden, die in demselben Modul existiert, in dem das Objekt erstellt wurde. Es reicht jedoch nicht aus, einfach Getter und Setter innerhalb desselben Moduls zu haben, um den Zustand des Objekts vollständig zu schützen. Sie müssen auch Mechanismen implementieren, um den Zugriff auf diese Funktionen einzuschränken. Ein gängiger Ansatz ist die Verwendung eines AdminCap-Musters, bei dem ein auf Funktionen basierendes Zugriffskontrollsystem erstellt wird. Dadurch wird sichergestellt, dass nur autorisierte Entitäten bestimmte Funktionen aufrufen können, wodurch eine unbefugte Manipulation des Objektstatus verhindert wird. Weitere Informationen finden Sie im AdminCap-Muster.

1
Kommentare
.

Weißt du die Antwort?

Bitte melde dich an und teile sie.

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

148Beiträge231Antworten
Sui.X.Peera.

Verdiene deinen Anteil an 1000 Sui

Sammle Reputationspunkte und erhalte Belohnungen für deine Hilfe beim Wachstum der Sui-Community.

BelohnungskampagneJuli