WEB3DEV

Cover image for A arte da Precificação da Auditoria Web3: Como os Auditores de Contratos Inteligentes Individuais Podem Determinar seu Valor?
Fatima Lima
Fatima Lima

Posted on

A arte da Precificação da Auditoria Web3: Como os Auditores de Contratos Inteligentes Individuais Podem Determinar seu Valor?

Os contratos inteligentes são uma parte vital dos aplicativos descentralizados (DApps) e das plataformas blockchain, e auditá-los é essencial por vários motivos. As preocupações com a segurança surgem porque eles lidam com ativos valiosos, e um pequeno bug pode levar a perdas significativas. Isso torna a auditoria essencial para garantir a integridade do código. A auditoria também gera confiança entre os usuários, pode ser exigida legalmente em algumas jurisdições e ajuda a identificar erros em uma lógica que costuma ser complexa. Além disso, um contrato inteligente bem auditado melhora a reputação dos desenvolvedores e do projeto, atraindo mais usuários e investidores.

Image description

Decidir sobre o preço das auditorias de contratos inteligentes é uma tarefa complexa que exige a consideração de fatores como tamanho do código, complexidade, demanda do mercado, urgência do cliente, custo de oportunidade e desafios exclusivos do projeto. É mais do que uma simples remuneração; ela reflete a expertise do auditor, o valor do projeto e a confiança na comunidade da blockchain. Neste blog, exploraremos a arte e a ciência detalhadas da precificação de auditorias de contratos inteligentes.

Por que os Projetos Web3 Preferem Auditores Individuais a Empresas de Auditoria Web3?

Os auditores de contratos inteligentes individuais ou independentes desempenham uma função única e vital no ecossistema blockchain. Veja o que os diferencia:

  1. Flexibilidade: Os auditores individuais geralmente têm a flexibilidade de escolher projetos que se alinham com seus conhecimentos e interesses. Eles também podem adaptar seus modelos de preços para atender a vários clientes e projetos.
  2. Serviço personalizado: Ao contrário das grandes empresas de auditoria, os auditores individuais podem oferecer atenção mais personalizada e focada em cada projeto. Eles podem trabalhar em estreita colaboração com os desenvolvedores para entender as nuances do projeto e oferecer soluções personalizadas.
  3. Custo-benefício: Os auditores individuais podem oferecer preços mais competitivos em comparação com as grandes empresas. Eles têm custos indiretos menores e podem repassar essa economia aos clientes.
  4. Competência Especializada: Muitos auditores individuais se especializam em áreas específicas do desenvolvimento de contratos inteligentes, como determinadas plataformas blockchain ou tipos de protocolos (por exemplo, AMM, Staking). Esse conhecimento especializado pode ser inestimável para determinados projetos.
  5. Desafios: Os auditores individuais também enfrentam desafios únicos, como a necessidade de atualizar constantemente suas habilidades, gerenciar sua carga de trabalho e criar um portfólio sólido.
  6. Contribuição da Comunidade: Alguns auditores individuais contribuem para uma comunidade de criptografia mais ampla, disponibilizando publicamente suas ferramentas e insights.

Já tive ocasiões em que subvalorizei meus serviços de auditoria e também já tive ocasiões em que os supervalorizei. Ter as habilidades necessárias para desenvolver/auditar um protocolo não tem nada a ver com o preço adequado de um serviço, é uma habilidade comercial totalmente diferente, mas essencial — pashov (@pashovkrum) January 30, 2023

Quais Fatores Devem Ser Levados em Consideração ao Decidir o Preço da Auditoria?

Determinar o preço certo para uma auditoria de contrato inteligente é um processo diferenciado que exige uma compreensão profunda de vários fatores interconectados. É uma decisão que vai além de meros números, refletindo a habilidade do auditor, a complexidade da tarefa, a dinâmica do mercado e as necessidades exclusivas de cada cliente. Vamos explorar esses fatores em detalhes:

  1. Linhas do código-fonte (SLOC): O número de linhas do código-fonte é um fator fundamental para determinar o custo de uma auditoria. Mais linhas geralmente significam mais tempo e esforço necessários para revisar o código.
  2. Complexidade: A complexidade vai além do número de linhas. Ela inclui o uso de montagem, cálculos matemáticos complexos, padrões de design incomuns e o número de contratos inteligentes e dependências externas.
  3. Dinâmica de procura e oferta: O custo de uma auditoria pode flutuar com base na demanda do mercado. Se houver uma alta demanda por auditorias e um número limitado de auditores qualificados, os preços podem aumentar.
  4. Especialização: O conhecimento especializado em áreas de alta demanda (por exemplo, plataformas ou protocolos específicos de blockchain) pode gerar preços mais altos.
  5. Valor comparativo: Os auditores devem considerar o valor de oportunidades alternativas ao definir o preço de uma auditoria. Por exemplo, comparar os ganhos potenciais da realização de uma auditoria específica com outras oportunidades, como trabalhar em outros projetos ou plataformas (por exemplo, c4/Sherlock).
  6. Alocação de tempo: O tempo gasto em um projeto é tempo não gasto em outros. Os auditores devem considerar como alocar seu tempo de forma mais lucrativa.
  7. Prazos: Um prazo mais apertado pode levar a preços mais altos, refletindo a pressão adicional e a necessidade potencial de priorizar o projeto em detrimento de outros.

Exemplo de fórmula de preço para auditorias individuais:

(SLOC / 100 + BD + FR) * CF * RATE

SLOC = linhas do código-fonte
BD = trabalho do desenvolvimento de negócios + compilação de relatórios (hrs)
FR = revisão de correções (hrs)
CF = fator de complexidade
RATE = seu valor por hora em $

Eu particularmente não a utilizo, mas fique à vontade para usá-la

— pashov (@pashovkrum) March 14, 2023

Quais Estratégias de Precificação são Usadas pelos Auditores?

Determinar a estratégia correta de precificação é um processo que exige um profundo conhecimento tanto dos aspectos técnicos da auditoria quanto da dinâmica mais ampla do mercado. Os auditores devem considerar uma série de fatores, desde a complexidade do código até o cronograma do cliente, para chegar a um modelo de precificação que reflita o valor de seu trabalho e se alinhe às expectativas do cliente. Veja a seguir uma análise mais detalhada das várias estratégias de preços empregadas pelos auditores:

  • Preço da hora: Nesse modelo, os auditores individuais normalmente cobram entre US$ 300 e US$ 500 por hora para revisões rápidas, com o preço variando de acordo com a urgência e a complexidade. Auditores novos ou menos estabelecidos podem cobrar de 1/5 a 1/2 dessas taxas como uma estratégia para criar um portfólio e ganhar experiência. Os preços por hora também devem considerar fatores como a complexidade do código, a demanda do mercado e a expertise e reputação do auditor.
  • Preço Fixo: Isso geralmente se correlaciona com o tamanho do código (nSLOC). Por exemplo, 500 nSLOC podem custar US$ 1.500, enquanto 5.000 nSLOC podem custar US$ 17.500. O cronograma de conclusão e os detalhes do que está incluído ou excluído na taxa fixa, como a revisão de correções ou a compilação de relatórios, também devem ser considerados.
  • Preço de pagamento por vulnerabilidade: Aqui, os auditores cobram um pagamento inicial (por exemplo, US$ 1.000) e pagamentos adicionais com base na gravidade das vulnerabilidades encontradas, variando de US$ 100 para problemas menores a US$ 1.500 para problemas críticos. A clara categorização dos níveis de gravidade é fundamental nesse modelo e pode não levar em conta outros aspectos, como a revisão de correções ou fatores de complexidade, portanto, é necessária uma comunicação clara sobre esses elementos.

Como os Auditores Devem Cotar e Negociar o Preço?

A cotação e a negociação do preço de uma auditoria de contrato inteligente é um processo importante que exige uma combinação de conhecimento técnico, conhecimento do mercado e habilidades interpessoais. Trata-se de mais do que apenas números; trata-se de alinhar as expectativas, compreender os aspectos exclusivos de cada projeto e construir uma base de confiança e colaboração.

Fazer as perguntas certas é essencial para entender as necessidades do cliente, a complexidade do projeto e definir expectativas claras.

  1. Quais são os arquivos e as funcionalidades específicas que se enquadram no escopo da auditoria?
  2. Esse projeto é uma bifurcação (fork) de um protocolo existente? Em caso afirmativo, quais alterações significativas foram feitas?
  3. Há alguma documentação existente que explique a funcionalidade e o design pretendidos do código?
  4. Qual é o cronograma esperado para a conclusão da auditoria, incluindo prazos para correções?
  5. Em quais redes de blockchain o projeto será implantado, como Avalanche, Polygon ou outras?
  6. Há algum recurso ou funcionalidade específica que deva ser enfatizado durante a auditoria?
  7. Houve alguma auditoria anterior ou vulnerabilidade conhecida que deva ser considerada?
  8. Quais dependências externas ou integrações de terceiros estão presentes no código?
  9. Você pode descrever o tipo de protocolo do projeto, como AMM, Staking ou outros?
  10. Existem preocupações específicas de segurança ou áreas de risco nas quais você gostaria que a auditoria se concentrasse?
  11. Há alguma consideração legal, regulamentar ou de conformidade que deva ser levada em conta na auditoria?
  12. Qual é o cronograma de implantação esperado para o projeto após a auditoria?
  13. Há algum padrão ou diretriz de codificação específicos ao qual o projeto esteja vinculado?
  14. Haverá algum desenvolvimento contínuo ou alterações de código durante o processo de auditoria?
  15. Como você gostaria que a comunicação e os relatórios fossem tratados durante a auditoria?

Em nosso último guia de blog, já exploramos os problemas relacionados à auditoria Web3 para startups.

Image description

Quais Ferramentas Podem Ajudar os Auditores a Determinar o Preço?

As ferramentas e técnicas a seguir são essenciais para que os auditores determinem com precisão o preço de seus serviços, especialmente no contexto da avaliação de contratos inteligentes e tarefas relacionadas.

  • estimate-sol: Ferramentas de estimativa como a “estimate-sol” foram projetadas para ajudar os auditores a avaliar o tamanho e a complexidade dos contratos inteligentes a serem auditados. Elas vêm com recursos como a contagem de linhas, o rastreamento de dependências do Solidity, a contagem de código de montagem separadamente e a criação de suposições fundamentadas sobre o tamanho da auditoria. Ela está disponível publicamente para a comunidade de criptografia e pode ser instalada usando o Python 3.8 ou superior, ajudando na estimativa adequada das horas necessárias, agendando tarefas e fornecendo cotações transparentes e justas para o cliente.

Image description

  • Plug-in Solidity Metrics: Para complementar o plugin Solidity Metrics serve para extrair o nSLOC do repositório, representando cerca de 60% da cotação. Ela também permite classificar arquivos, revisar dependências, avaliar a complexidade e esclarecer que o código está "congelado" e não será alterado durante o processo de auditoria. Essa ferramenta pode ser integrada à abordagem sistemática de cotação, garantindo que perguntas específicas sobre o projeto sejam respondidas. Seus benefícios facilitam uma estrutura de preços mais precisa e justa, fornecendo métricas precisas relacionadas ao tamanho e à complexidade do código.

✍️ by Yash Kamal Chaturvedi

Conclusão

A auditoria de contratos inteligentes é complexa e está sempre mudando. Para auditores individuais, definir preços justos é um grande desafio. O DetectBox da UNSNARL melhora as coisas ao fornecer uma maneira clara e simples de auditar projetos Web3. Ele ajuda os clientes e os principais auditores a trabalharem juntos, tornando o processo mais fácil e confiável. Nosso objetivo é tornar o processo de auditoria mais eficiente, seguro e amplamente disponível para uma gama diversificada de projetos. Não perca a chance de fazer parte do futuro da auditoria Web3 - agende uma reunião com nossos fundadores hoje mesmo e fortaleça seu projeto com o DetectBox.

Website | Twitter | Discord | Telegram

Esse artigo foi escrito por UNSNARL e traduzido por Fátima Lima. O original pode ser lido aqui.

Latest comments (0)