Skip to content
Blockchain

Porque é que consigo verificar o código em relação a uma especificação, mas não consigo verificar a própria especificação?

84

Oportunidade

A verificação formal de contratos inteligentes comprova que o código cumpre uma especificação escrita, mas não consegue determinar se essa especificação reflete efetivamente o comportamento pretendido do contrato. Um inquérito da MDPI de 2025, que abrangeu as ferramentas de auditoria automatizadas de última geração, revelou que estas detetam apenas 8 a 20 por cento dos erros exploráveis encontrados em produção, ao mesmo tempo que relatam uma cobertura superior a 90 por cento dos padrões sintáticos de baixo nível. A lacuna reside na especificação: erros lógicos, condições de bloqueio de ativos e pressupostos de oráculos quase nunca aparecem nas especificações, porque os engenheiros não sabem como enumerá-los antes de uma exploração demonstrar a necessidade. O artigo «PropertyGPT» da NDSS 2025 afirma diretamente que a comunidade ainda carece da geração automatizada de propriedades abrangentes para uma verificação formal eficaz. Cada auditoria que aprova um contrato com base numa especificação incompleta gera uma falsa sensação de segurança, em vez de uma garantia de segurança

Por que importa

Uma ferramenta que gerasse invariantes candidatas a partir do código do contrato, do contexto empresarial e de bases de dados históricas de explorações transformaria a verificação formal de uma simples verificação de correção numa garantia de segurança efetiva.

Como avalio a oportunidade

A Pontuação de Oportunidade é minha própria leitura, não uma medição: o quanto dói, com que frequência aparece e o quanto pouco existe para resolvê-lo hoje. Quanto maior, mais vale a pena construir, na minha opinião.

Gravidade8/10

O quanto de dor causa quando aparece.

Frequência7/10

Com que frequência as pessoas realmente se deparam com isso.

Lacuna9/10

O quanto pouco de boas ferramentas existe para isso hoje.

Mais problemas que merecem ser resolvidos