Lição 286: Usando o Gnosis Safe para Multisig
Nesta lição, exploraremos como usar o Gnosis Safe, uma carteira multisignature popular para gerenciar ativos digitais de forma segura. O Multisig, ou múltiplas assinaturas, requer várias assinaturas para transações, garantindo que nenhuma única pessoa possa controlar unilateralmente os fundos. O Gnosis Safe oferece uma interface amigável ao usuário e é amplamente adotado no ecossistema Ethereum.
O que é o Gnosis Safe?
O Gnosis Safe é uma carteira de contrato inteligente que permite que você mantenha e gerencie várias criptomoedas, exigindo múltiplas assinaturas para autorizar qualquer transação. Isso reduz o risco de roubo e garante que a tomada de decisões coletivas seja respeitada.
Principais Características:
- Segurança Multisignature: Exige várias aprovações para qualquer transação.
- Interface Amigável: Interface web fácil de usar para gerenciar fundos.
- Compatibilidade: Funciona com diversos ativos e outras aplicações descentralizadas (dApps).
- Propriedade Flexível: Suporta uma ampla gama de proprietários de carteira e pode ser gerenciado por vários endereços.
Configurando um Gnosis Safe
Passo 1: Criar um Gnosis Safe
- Acesse o site do Gnosis Safe.
- Clique em "Criar novo Safe."
- Escolha a rede (Ethereum mainnet, Gnosis chain, etc.).
- Especifique um nome para o seu Safe.
- Adicione endereços de proprietários. Você pode adicionar vários endereços Ethereum que terão direitos de propriedade.
- Defina o número necessário de confirmações exigidas para executar transações (m de n).
Por exemplo, se você tem três proprietários e deseja que dois deles confirmem uma transação, você deve definir m = 2 e n = 3.
Passo 2: Financiar Seu Gnosis Safe
Uma vez criado o Gnosis Safe, você pode financiá-lo enviando ativos para o endereço do Safe. Você pode transferir ETH ou qualquer token ERC20 suportado pelo Gnosis Safe.
Passo 3: Realizando uma Transação
Para realizar uma transação a partir do Gnosis Safe, siga estes passos:
- Faça login na sua conta do Gnosis Safe.
- Clique em "Transacionar."
- Selecione o ativo que deseja enviar e insira o endereço do destinatário.
- Especifique a quantia e qualquer informação adicional necessária.
- Envie a transação.
Uma vez que a transação seja enviada, ela exigirá o número pré-definido de confirmações. Os outros proprietários precisarão aprová-la.
Exemplo: Aprovação de uma Transação
Aqui está um exemplo em JavaScript usando a biblioteca ethers.js para interagir com o Gnosis Safe através de seus contratos:
const { ethers } = require("ethers");
// Conectar à rede Ethereum
const provider = new ethers.providers.Web3Provider(window.ethereum);
// Endereço do contrato Gnosis Safe e ABI (Você pode encontrar o ABI no Etherscan)
const safeAddress = "SEU_ENDEREÇO_GNOSIS_SAFE";
const safeAbi = [ /* ABI do Gnosis Safe */];
// Criar uma instância de carteira (substitua pela sua chave privada)
const wallet = new ethers.Wallet("SUA_CHAVE_PRIVADA", provider);
const safeContract = new ethers.Contract(safeAddress, safeAbi, wallet);
// Função para aprovar uma transação
async function approveTransaction(transactionHash) {
const tx = await safeContract.approveHash(transactionHash);
await tx.wait();
console.log("Transação aprovada:", transactionHash);
}
// Exemplo de uso
const txHashToApprove = "HASH_DA_TRANSACAO"; // Hash da transação que precisa ser aprovada
approveTransaction(txHashToApprove);
Conclusão
O Gnosis Safe fornece uma interface intuitiva e alta segurança para gerenciar ativos digitais usando carteiras multisignature. Ao exigir várias aprovações para transações, ele efetivamente mitiga os riscos associados a pontos únicos de falha. Esta lição ilustrou como criar um Gnosis Safe, financiá-lo e realizar transações de forma segura.
Sinta-se à vontade para explorar mais recursos do Gnosis Safe e integrá-lo em seus projetos para aumentar a segurança na gestão de ativos.