Tutorial de Gobernanza Multisig
Antecedentes
Sección titulada «Antecedentes»Esta sección se basa en el tutorial de Argumentos en JSON. Si no lo has hecho, por favor completa ese tutorial primero.
Este tutorial también hace referencia al paquete de ejemplo CliArgs.
Para este ejemplo, Ace y Bee realizarán operaciones de gobernanza desde una cuenta “multisig v2” 2-de-2 (una cuenta multisig en cadena según multisig_account.move)
Creación de cuenta
Sección titulada «Creación de cuenta»Dado que la cuenta de Ace se creó durante el tutorial Argumentos en JSON, comienza minando una cuenta de dirección vanity para Bee también:
aptos key generate \ --vanity-prefix 0xbee \ --output-file bee.keySalida
{ "Result": { "PublicKey Path": "bee.key.pub", "PrivateKey Path": "bee.key", "Account Address:": "0xbeec980219d246581cef5166dc6ba5fb1e090c7a7786a5176d111a9029b16ddc" }}Almacena la dirección de Bee en una variable de shell, para que puedas llamarla inline más tarde:
# Tu dirección exacta variarábee_addr=0xbeec980219d246581cef5166dc6ba5fb1e090c7a7786a5176d111a9029b16ddcFinancia la cuenta de Bee con el faucet:
aptos account fund-with-faucet --account $bee_addrCrear cuenta multisig
Sección titulada «Crear cuenta multisig»Ahora Ace y Bee pueden crear una cuenta multisig 2-de-2 donde ambos necesitan firmar para ejecutar transacciones:
aptos multisig create \ --additional-owners $bee_addr \ --num-signatures-required 2 \ --private-key-file ace.key \ --assume-yesEsto creará una nueva cuenta multisig que requiere 2 de 2 firmas para ejecutar transacciones.
Proponer una transacción
Sección titulada «Proponer una transacción»Para proponer una transacción en la cuenta multisig, Ace puede usar:
aptos multisig create-transaction \ --multisig-address $multisig_addr \ --function-id $ace_addr::cli_args::set_vals \ --type-args \ 0x1::account::Account \ 0x1::chain_id::ChainId \ --args \ u8:123 \ "hex:0x1234" \ "string:hello, multisig world!" \ "bool:[true, false, true]" \ 'address:[["0xace", "0xbee"]]' \ --private-key-file ace.key \ --assume-yesAprobar y ejecutar transacción
Sección titulada «Aprobar y ejecutar transacción»Una vez propuesta la transacción, Bee puede aprobarla y ejecutarla:
aptos multisig approve \ --multisig-address $multisig_addr \ --sequence-number 1 \ --private-key-file bee.key \ --assume-yesLuego ejecutar la transacción:
aptos multisig execute \ --multisig-address $multisig_addr \ --sequence-number 1 \ --private-key-file bee.key \ --assume-yesBeneficios de multisig
Sección titulada «Beneficios de multisig»Las cuentas multisig proporcionan:
- Seguridad mejorada - Requiere múltiples firmas para transacciones importantes
- Gobernanza descentralizada - Permite toma de decisiones distribuida
- Protección contra llaves comprometidas - Una sola llave comprometida no puede ejecutar transacciones
- Transparencia - Todas las propuestas y aprobaciones son visibles en cadena