Blockchain/Nível VI · Depois do bitcoin/6.2 A era das altcoins/Lição 4
Peercoin e prova de participação
Idade da moeda, o stake que vota e os forks que seguem
MateriaisUma cópia do white paper da PPCoin“Proof of Stake: Como Aprendi a Amar a Subjetividade Fraca”, de Buterin (2014)Uma planilha para rastrear cálculos de idade de moedas
Curiosidade
- Por que uma rede recompensaria a posse de moedas em vez de queimar eletricidade?
- Como um atacante pode reescrever a história a partir de chaves que possuía há dez anos sem gastar novos recursos?
- O que impede um validador de assinar dois blocos diferentes ao mesmo tempo?
Explorar
- A prova de participação foi discutida pela primeira vez no fórum do Bitcoin em 2011; a primeira versão funcional veio dos desenvolvedores pseudônimos Sunny King e Scott Nadal, cujo PPCoin utilizava a “idade da moeda” para selecionar os produtores de blocos. Nesse modelo, as saídas de transações não gastas (UTXOs) acumulavam peso simplesmente por existirem na cadeia. Quanto mais tempo uma moeda permanecia intocada em uma carteira, maior era a probabilidade de ser escolhida para criar o próximo bloco, vinculando os direitos de consenso diretamente ao comportamento de retenção de longo prazo e não à capacidade computacional.
- A PPCoin, posteriormente renomeada para Peercoin, foi lançada em agosto de 2012 como um sistema híbrido: a prova de trabalho (PoW) gerava novas moedas, enquanto os blocos baseados na prova de participação (PoS), que pagavam cerca de 1% ao ano sobre as moedas em stake, garantiam grande parte da segurança. Durante anos, ela também contou com checkpoints assinados centralmente por seus desenvolvedores, uma medida de proteção que os críticos consideraram um ponto de controle.
- Análises iniciais revelaram uma vulnerabilidade crítica conhecida como “nothing at stake”. Como a criação de blocos não exigia recursos físicos além da compra inicial de moedas, os validadores podiam apoiar, a baixo custo, vários forks concorrentes da cadeia. Se um atacante possuísse uma participação significativa, poderia assinar blocos válidos em ambos os lados da divisão, criando ambiguidade sobre qual histórico era o canônico, sem pagar nenhum custo adicional pelo trabalho extra.
- Isso levou ao problema dos ataques de longo alcance. Um adversário que obtivesse chaves privadas antigas de anos anteriores poderia, teoricamente, reescrever toda a história da cadeia a partir desse ponto. Como não era necessária nenhuma nova computação para validar esses blocos históricos, um nó que fizesse sincronização do zero poderia aceitar a versão do atacante se ela parecesse matematicamente válida, minando a finalidade das transações que já haviam sido concluídas meses ou anos antes.
- Vitalik Buterin abordou isso em 2014 ao introduzir a “subjetividade fraca”. Os novos nós que se juntam à rede precisam confiar em um checkpoint recente fornecido pelos participantes existentes. Ao concordar com uma altura específica do bloco como ponto de partida para a validação, a rede impede ataques de longo alcance que dependem da reescrita da história antes desse checkpoint. Esse trade-off introduz uma dependência em pares confiáveis durante a sincronização inicial, mas protege contra manipulações históricas.
- Projetos posteriores adicionaram mecanismos de slashing para punir comportamentos inadequados. Se um validador assinasse blocos conflitantes ou agisse de forma maliciosa, suas moedas em stake eram confiscadas. O Nxt foi lançado em 2013 como uma das primeiras cadeias puramente baseadas em prova de participação (PoS), eliminando completamente o elemento híbrido. Esses desenvolvimentos estabeleceram os parâmetros fundamentais para o consenso moderno baseado em stake: penalidades econômicas garantem a honestidade, enquanto a subjetividade fraca gerencia a confiança durante a inicialização da rede.
Fatos-chave
- O Peercoin foi lançado em agosto de 2012, utilizando um modelo híbrido de prova de trabalho e prova de participação.
- A prova de participação (PoS) seleciona os produtores de blocos com base no valor das moedas bloqueadas, e não na computação realizada.
- “Nothing at stake” permite que os validadores apoiem vários forks a um custo insignificante.
- Ataques de longo alcance exploram chaves antigas para reescrever o histórico da cadeia sem novo gasto de recursos.
- “A subjetividade fraca” exige que novos nós confiem em um ponto de verificação recente para evitar reescritas históricas.
- Penalidades mais severas foram adicionadas posteriormente para confiscar os recursos dos validadores que assinam blocos conflitantes.
Exercício nove, seis, três, um
9ReunirListe 9 mecanismos ou parâmetros de consenso utilizados nas primeiras altcoins (2011-2015). Indique a regra específica para seleção de blocos e quaisquer estruturas de penalização.
6AgruparAgrupe os 9 em 6 de acordo com a forma como lidaram com a honestidade dos validadores: sem penalidades, slashing, bootstrapping híbrido, stake puro, baseado no trabalho ou outro.
3DestilarReduza os 6 para 3 riscos fundamentais que a prova de participação (PoS) pura deve mitigar em comparação com a prova de trabalho (PoW).
1CristalizarEscreva 1 frase sobre por que manter capital cria uma estrutura de incentivos diferente da de queimar energia.
Verificação de fatos
Datas, números e afirmações verificados com as fontes publicadas listadas abaixo.
- S. King & S. Nadal, 'PPCoin: Peer-to-Peer Crypto-Currency with Proof-of-Stake' (2012)
- V. Buterin, 'Proof of Stake: How I Learned to Love Weak Subjectivity' (2014)
- Nxt documentation and release notes (2013)