MultiGov Architecture
MultiGov employs a hub-and-spoke model to enable cross-chain governance, utilizing Wormhole's interoperability infrastructure for secure cross-chain communication. This architecture allows coordinated decision-making across multiple blockchain networks while maintaining a central coordination point.
Contratos da Chain Hub
A chain hub é o ponto central para gerenciar propostas, contar votos, executar decisões e coordenar a governança entre as chains conectadas.
HubGovernor
- Contrato central de governança que gerencia propostas e contagem de votos.HubVotePool
- Recebe os votos agregados das chains spoke e os envia para o HubGovernor.HubMessageDispatcher
- Encaminha as execuções de propostas aprovadas para as chains spoke.HubProposalExtende
- Permite que atores confiáveis estendam os perÃodos de votação, se necessário.HubProposalMetadata
- Contrato auxiliar que retorna o proposalId e o inÃcio da votação para as propostas do HubGovernor.HubEvmSpokeAggregateProposer
- Agrega o peso da votação cross-chain para um endereço e propõe via HubGovernor, se for elegÃvel.
Contratos das Chains Spoke
As chains spoke lidam com a votação local, encaminham votos para a hub e executam as propostas aprovadas pela hub para uma governança descentralizada.
SpokeVoteAggregator
- Coleta votos na chain spoke e os envia para a hub.SpokeMessageExecutor
- Recebe e executa as propostas aprovadas pela hub.SpokeMetadataCollector
- Recupera os metadados das propostas da hub para os votantes das chains spoke.SpokeAirlock
- Atua como "administrador" da governança na chain spoke, com permissões e seu tesouro.
Fluxo de Trabalho do Sistema
O fluxo de trabalho do sistema MultiGov detalha o processo passo a passo para criar, votar e executar propostas de governança entre as chains conectadas, desde a criação da proposta até a execução final cross-chain.
Criação de proposta:
Um usuário cria uma proposta através do HubEvmSpokeAggregateProposer, que verifica a elegibilidade entre as chains, ou diretamente no HubGovernor via o método de proposta.
A proposta é enviada ao HubGovernor se o usuário atender ao limite de propostas.
Distribuição de metadados da proposta:
HubProposalMetadata cria um método de visualização personalizada para ser consultado no SpokeMetadataCollector.
SpokeMetadataCollector em cada chain spoke consulta o HubProposalMetadata para detalhes da proposta.
Processo de votação:
Usuários nas chains spoke votam através de seus respectivos SpokeVoteAggregators.
SpokeVoteAggregators enviam os votos agregados para o HubVotePool via Wormhole.
HubVotePool envia os votos agregados para o HubGovernor.
Contagem de votos e execução de propostas:
HubGovernor conta os votos de todas as chains.
Se o quórum for atingido e houver mais votos a favor do que contra, a proposta é aprovada e colocada na fila para execução.
Após o perÃodo de timelock, a proposta pode ser executada na chain hub.
Para ações cross-chain, uma proposta deve chamar o método dispatch no HubMessageDispatcher, que envia mensagens de execução para as chains spoke relevantes.
SpokeMessageExecutors em cada chain spoke recebem e executam as ações aprovadas através de seus respectivos SpokeAirlocks.
Comunicação Cross-Chain
O MultiGov depende da infraestrutura do Wormhole para toda a comunicação cross-chain, garantindo uma comunicação segura e confiável entre as chains. O sistema de leitura de estado cross-chain do Wormhole, conhecido como Queries, é utilizado para agregação de votos e metadados das propostas. Além disso, as mensagens de execução de propostas cross-chain são transmitidas através do sistema de retransmissão personalizado do Wormhole, permitindo uma coordenação sem interrupções entre várias redes blockchain.
Medidas de Segurança
Janela de peso de voto - Implementa uma janela móvel para os pontos de verificação do peso do voto, a fim de mitigar a votação dupla entre chains.
Extensão de proposta - HubProposalExtender permite estender os perÃodos de votação por um ator confiável em caso de problemas de rede ou decisões de alto risco.
Timelock - Um perÃodo de timelock entre a aprovação da proposta e a execução permite verificações adicionais de segurança e revisão pela comunidade.
Verificação do Wormhole - Todas as mensagens cross-chain são verificadas usando o protocolo seguro de mensagens do Wormhole.
Diagrama de Arquitetura Detalhado
Esta arquitetura garante que o MultiGov possa operar de forma segura e eficiente entre múltiplas chains, permitindo uma governança verdadeiramente descentralizada e cross-chain, enquanto mantém um processo de tomada de decisão unificado.
Last updated