acabei de passar esta manhã analisando a camada de consenso e, honestamente, a separação aqui me pegou de surpresa, assim como o gráfico da moeda LYN 😂
a maioria das pessoas assume que a produção de blocos e a finalização de blocos são o mesmo evento
um validador produz um bloco
a rede o aceita
done
é assim que se sente do lado de fora.
a meia-noite executa dois mecanismos completamente separados para essas duas tarefas.
AURA lida com a produção. atribuição de slots em round-robin, intervalos fixos, cada validador faz sua vez. cobrimos isso. mas a AURA apenas decide quem produz o próximo bloco e quando. não diz nada sobre se esse bloco é permanente.
GRANDPA lida com a finalização. Acordo de Prefixo Derivando Ancestor Recursivo Baseado em GHOST. funciona ao lado da AURA e determina quais blocos são realmente irreversíveis. não apenas adicionados à cadeia - estabelecidos permanentemente, não podem ser reorganizados.
a distinção importa mais do que parece. um bloco pode existir na cadeia sem ser finalizado
GRANDPA funciona fazendo com que os validadores votem em cadeias em vez de blocos individuais - ele encontra o bloco mais alto para o qual dois terços dos validadores votaram como ancestrais e finaliza tudo até aquele ponto em uma operação. isso significa que a finalização pode ser feita em múltiplos blocos de uma vez, em vez de confirmar um de cada vez
o que isso acerta é a separação de preocupações. a velocidade de produção e as garantias de finalização são problemas diferentes com diferentes compensações. mantê-los separados permite que cada mecanismo otimize seu próprio trabalho.
mas aqui está a questão. a finalização depende da participação dos validadores na votação do GRANDPA. no lançamento, com um pequeno conjunto de validadores autorizados, essa participação é controlável. à medida que o conjunto se expande para incluir SPOs do Cardano, as suposições de finalização mudam.
honestamente, não sei se separar a produção da finalização é o design limpo em duas camadas que dá à meia-noite tanto velocidade quanto garantias de liquidação ou uma dependência que se torna mais complexa para raciocinar à medida que o conjunto de validadores cresce?? 🤔
#night @MidnightNetwork $NIGHT
