Recorte localizado

Tendermint pela lente do HotStuff: locks, unlocks e evidência

Como ler Tendermint pela lente do HotStuff: prevote, precommit, LockedValue, ValidRound, rotação de proposer, evidência e slashing.

Estado da tradução: reviewedIdioma fonte: Español

Um lock é memória, não “para sempre”

Quando um validador vê prevotes suficientes para um valor, ele fica bloqueado e não deve votar em valores conflitantes sem evidência mais forte. Um lock absoluto mataria a liveness; por isso o Tendermint usa ValidRound e regras de unlock que permitem avançar sem abrir a porta para duas histórias.

O mesmo drama com outro vocabulário

O HotStuff mantém um lockedQC e propõe estendendo o highQC; o Tendermint usa LockedValue, LockedRound e ValidRound. Ambos negociam entre memória de segurança e necessidade de progresso, e ambos precisam transportar evidência quando a rodada ou a visão muda.

  • prevote e precommit correspondem a votos e certificados.
  • ValidRound cumpre o papel da evidência que justifica uma proposta segura.

Evidência e slashing também fazem parte do protocolo

A rotação de proposer permite avançar quando um proposer falha. Se um validador assina dois valores incompatíveis, essa evidência é propagada, guardada durante uma janela válida e punida. Assim o sistema não apenas supõe honestidade: ele a incentiva sem criar novos vetores de ataque.

Referências

  1. [1]

    Buchman, Kwon and Milosevic, The latest gossip on BFT consensus (2018)

    Especificação do Tendermint com LockedValue, LockedRound e ValidRound.

  2. [2]

    Yin et al., HotStuff: BFT Consensus in the Lens of Blockchain (2019)

    lockedQC e highQC como contraparte dos locks do Tendermint.

  3. [3]

    Kwon, Tendermint: Consensus without Mining (2014)

    Documento original: rodadas propose, prevote, precommit e responsabilização por evidência.