Pular para o conteúdo

Consenso explicado

Por volta de 2 min

O consenso é o processo de alcançar uma opinião majoritária por todos os envolvidos na execução do blockchain. Um acordo deve ser feito sobre quais blocos produzir, qual cadeia adotar e determinar o estado único da rede. O protocolo de consenso determina como os nós individuais avaliam o estado atual do sistema de contabilidade e alcançam um consenso.

Os blockchains criam consenso permitindo que os participantes agrupem transações que outros enviaram para o sistema em blocos e os adicionem à sua cadeia (sequência de blocos). Determinar quem pode produzir um bloco quando e o que fazer em caso de conflitos (como dois participantes adicionando blocos diferentes no mesmo ponto da cadeia) é o propósito dos diferentes protocolos de consenso.

O protocolo tem três responsabilidades principais:

  • Realizar uma verificação de líder e decidir se um bloco deve ser produzido
  • Lidar com a seleção da cadeia
  • Verificar os blocos produzidos

Sobre o Ouroboros

Cardano opera no protocolo de consenso Ouroboros, que foi entregue com vários artigos revisados por pares apresentados em conferências de alto nível e publicações na área de segurança cibernética e criptografia. Ao invés de depender de 'mineradores' (como nos protocolos de prova de trabalho) para resolver equações computacionalmente complexas para criar novos blocos - e recompensar o primeiro a fazê-lo - a prova de participação seleciona pools de participação para criar novos blocosopen in new window com base na participação que controlam na rede.

Como o Ouroboros funciona

O Ouroboros divide o tempo no Cardano em épocas onde cada época é dividida em slots. Um slot é um curto período de tempo em que um bloco pode ser criado. Agrupar slots em épocas é fundamental para ajustar o processo de eleição de líderes à distribuição dinamicamente em mudança da participação.

Central para o design do Ouroboros é que ele deve manter sua segurança na presença de ataques. Como tal, o protocolo possui tolerância embutida para impedir que atacantes propaguem versões alternativas do blockchain e assume que um adversário pode enviar mensagens arbitrárias para qualquer participante a qualquer momento. O protocolo é garantido para ser seguro no chamado cenário síncrono (ou seja, com garantias fortes sobre os tempos de entrega de mensagens) desde que mais de 51% da participação seja controlada por participantes honestos (ou seja, aqueles que seguem o protocolo).

Um líder de slot é eleito para cada slot, que é responsável por adicionar um bloco à cadeia e passá-lo para o próximo líder de slot. Para proteger contra tentativas adversárias de subverter o protocolo, cada novo líder de slot é obrigado a considerar os últimos poucos blocos da cadeia recebida como transitórios: apenas a cadeia que precede o número prescrito de blocos transitórios é considerada definida. Isso também é referido como atraso de liquidação. Entre outras coisas, isso significa que um detentor de participação pode ficar offline e ainda estar sincronizado com o blockchain, desde que não seja por mais do que o atraso de liquidação.

Dentro do protocolo Ouroboros, cada nó de rede armazena uma cópia do mempool de transações - onde as transações são adicionadas se forem consistentes com as transações existentes - e o blockchain. O blockchain armazenado localmente é substituído quando o nó se torna ciente de uma cadeia alternativa, mais longa e válida.

Leia mais sobre as diferentes versões do Ouroboros aqui:

Última atualização:
Contribuidores: cauechianca