Os programadores da Zcash ativaram o upgrade Ironwood na altura do bloco 3.428.143, no âmbito do upgrade de rede NU6.3, substituindo o pool shielded Orchard por uma alternativa formalmente verificada. A substituição seguiu a descoberta, no final de maio, pelo investigador Taylor Hornby de um bug de “infinity” no Orchard que colocava um risco teórico de criação de ZEC falsificados e não detetáveis. A vulnerabilidade num dos mecanismos centrais de privacidade da Zcash levou os programadores a descreverem uma corrida de desenvolvimento em “modo de guerra” para implementar uma substituição completa em vez de uma simples correção.
Hornby Descobriu o Bug de Infinity do Orchard no Final de Maio
Taylor Hornby, investigador na Shielded Labs, descobriu o bug de infinity do Orchard no final de maio. A falha existia profundamente no circuito de zero-knowledge do Orchard e colocava um risco teórico de cunhagem de ZEC falsificados sem deixar qualquer rasto detetável publicamente. Não surgiu qualquer evidência de que a vulnerabilidade tivesse alguma vez sido explorada. O ZEC perdeu mais de metade do seu valor depois de a divulgação ter ficado pública.
Correções de emergência implementadas no início de junho desativaram temporariamente o Orchard. Um circuito corrigido chegou através do hard fork NU6.2 no prazo de cinco dias. Os programadores afirmaram que era matematicamente impossível provar com certeza que a inflação oculta nunca tinha ocorrido dentro do pool antigo, tornando a substituição completa o único caminho para restaurar a integridade verificável da oferta.
O cofundador da Shielded Labs, Zooko Wilcox, propôs inicialmente substituir o Orchard de imediato. Seguiu-se um período de cerca de 60 dias de desenvolvimento coordenado entre a Shielded Labs, a Zcash Open Development Lab (ZODL), a Project Tachyon, a Valar Group e a Zcash Foundation. O diretor executivo da ZODL, Josh Swihart, afirmou que engenheiros da sua organização contribuíram com 82% das alterações fundidas nos repositórios do protocolo e da carteira da Zcash durante o esforço de substituição.
Ironwood Introduziu um Sistema de Contabilidade Separado e Notas Recuperáveis por Quantum
O Ironwood introduziu um sistema de contabilidade totalmente separado, com a sua própria árvore de compromisso das notas, um conjunto de nullifiers e um pool de valor da cadeia. A estrutura permite a qualquer nodo acompanhar o novo pool shielded de forma independente de tudo o que veio antes.
O upgrade instalou um checkpoint público de contabilidade, descrito pelo projeto como uma “catraca”. Os fundos podem sair do Orchard através dessa catraca, mas o mecanismo, matematicamente, impede que mais valor saia do que aquilo que foi legitimamente introduzido no pool antigo. Quaisquer moedas falsificadas hipotéticas cunhadas dentro do Orchard antes ou durante a janela de vulnerabilidade ficariam lá aprisionadas permanentemente, incapazes de contaminar a contabilidade da oferta do Ironwood.
O novo pool incorporou as notas quantum-recoverable do ZIP 2005. A funcionalidade não torna as transações da Zcash seguras para quantum hoje — ainda seria necessário desenhar e ativar no futuro um protocolo de recuperação separado. O upgrade NU6.3 fez com que a Zebra fosse a implementação de nodo exigida, terminando o suporte para o software zcashd mais antigo em toda a rede.
Project Tachyon Concluiu Verificação Formal com 2.700 Teoremas
A Project Tachyon concluiu uma prova matemática verificada por máquina, em paralelo com os programadores da Zcash. Escrita na linguagem de programação Lean, a prova é composta por mais de 2.700 teoremas desenvolvidos ao longo de mais de um mês por três equipas de investigadores e criptógrafos. A prova verifica formalmente que o Ironwood não consegue criar ZEC falsificados e não detetáveis, sob as suas hipóteses de design declaradas.
A prova abrange os componentes necessários para a integridade do saldo: o sistema de prova de zero-knowledge do Ironwood, as regras do seu circuito e a contabilidade ao nível do ledger. O cofundador da Zcash, Sean Bowe, afirmou: “A colaboração entre equipas acabou de mudar a história da Zcash para sempre, eliminando todas as fontes de bugs de falsificação não detetável do novo protocolo Ironwood.”
A verificação formal cobre a integridade do saldo, mas não se estende às garantias de privacidade separadas do Ironwood. A solidez da oferta e a privacidade transacional são propriedades distintas, e a prova aborda apenas a primeira.
Migração Tracker Mostra 40.207 ZEC Movidos para o Ironwood
O Orchard entrou numa fase apenas de saída. O pool já não aceita nova atividade shielded, mas os utilizadores ainda podem levantar fundos à sua própria discrição. De acordo com o migration tracker da Zcash, cerca de 40.207 ZEC passaram para o Ironwood desde a ativação. Aproximadamente 3,6 milhões de ZEC continuam dentro do Orchard, à espera de migração.
No seu pico, o Orchard representava quase 88% da oferta do token shielded da Zcash, segundo dados da The Block, com os pools mais antigos Sapling e Sprout a completarem o restante.
FAQ
O que é o upgrade do Zcash Ironwood?
O Ironwood é um upgrade da rede Zcash que substituiu o vulnerável pool shielded Orchard por um pool shielded formalmente verificado. Foi ativado na altura do bloco 3.428.143 como parte do hard fork NU6.3.
Porque é que o upgrade do Ironwood era necessário?
O upgrade foi necessário porque um bug de infinity descoberto no pool Orchard no final de maio colocava um risco teórico de criação de ZEC falsificados e não detetáveis. Os programadores afirmaram que era matematicamente impossível provar que a falha nunca foi explorada, tornando necessária uma substituição completa em vez de depender apenas de uma correção.
O que acontece aos fundos ainda no pool Orchard?
O Orchard entrou numa fase apenas de saída. Os utilizadores ainda podem levantar fundos a partir dele, mas o pool já não aceita novas transações shielded. Aproximadamente 3,6 milhões de ZEC permanecem no Orchard à espera de migração para o Ironwood, enquanto cerca de 40.207 ZEC já passaram.