Segurança
Onde fica o seu dinheiro, e quem o pode mover
Escrita a partir do contrato e não sobre ele. Cada secção nomeia a instrução que descreve, para que tudo aqui possa ser confrontado com o código que o impõe, incluindo as partes que não são tranquilizadoras.
Revisto em
Como se move um apoio
Apoiar uma campanha exige o seu próprio toque no seu próprio dispositivo. Não existe autorização permanente nem cartão guardado. Duas coisas mexem-se sem um toque, e ambas estão nomeadas nesta página: a recolha de um carregamento com cartão da carteira de depósito, e o custo de manutenção descontado no seu movimento seguinte.
Essa única transação liquida tudo ao mesmo tempo. A comissão da plataforma, e qualquer gorjeta que tenha escolhido juntar, vão para a tesouraria da plataforma. Se chegou pelo link de partilha de alguém, a parte que o criador definiu para quem partilha vai diretamente para essa pessoa. O que sobra, o apoio líquido, entra no cofre da campanha.
O cofre é uma conta de tokens detida pela própria conta da campanha, que é um endereço derivado pelo programa e não uma carteira de que alguém tenha a chave. Só o programa pode mover o que lá está dentro, e apenas pelos dois caminhos da secção seguinte. A CoFunders não o pode gastar, não o pode mover para algum lado a render, e não o pode enviar a ninguém que o programa não nomeie.
Uma coisa pode seguir-se a um apoio sem um segundo toque seu. O dinheiro que fica parado no seu saldo acumula um custo de manutenção de 0.01% por semana, e a aplicação liquida o que estiver acumulado movendo-o para a tesouraria da plataforma juntamente com a sua transação seguinte, em vez de lhe pedir que o pague à parte. É cobrado sobre saldo parado e nunca sobre dinheiro apoiado, e não é cobrado nada a partir de 10 USDC para baixo.
A instrução chama-se contribute. A parte de quem partilha é definida pelo criador e limitada pelo contrato a 18.5%, por isso uma campanha não pode prometer mais do que isso do seu apoio. A página do custo de manutenção faz as contas sobre a cobrança acima e diz quando é recolhida. Um desenho anterior também permitia que o cofre de uma campanha fosse colocado num mercado de crédito enquanto ainda angariava; essas instruções foram retiradas antes de o contrato entrar em produção, e o cofre deixou de ter qualquer terceira saída.
Quem pode retirar o dinheiro, e quando
Dois caminhos, e o programa não tem um terceiro.
O criador pode levantar, assim que a campanha tiver angariado pelo menos a sua meta. A instrução recusa enquanto o total angariado estiver abaixo da meta. Não tem qualquer condição de prazo associada: uma campanha que atinja a meta ao segundo dia pode ser levantada ao segundo dia, e pode ser levantada por partes em vez de toda de uma vez. Esta é a parte que os apoiantes mais vezes entendem ao contrário, por isso vale a pena ser claro. É ao atingir a meta, e não ao chegar o prazo, que o seu dinheiro deixa de ser recuperável.
O apoiante pode reembolsar-se, depois de o prazo passar com a meta por atingir. Assina-o ele próprio. Ninguém lho envia e ninguém na CoFunders o pode enviar para outro lado, porque a instrução paga a quem assina e a mais ninguém.
Se a meta não for atingida até ao prazo, reavê o seu apoio em garantia com um toque, sem que ninguém o tenha de aprovar. O que regressa é o montante guardado para si: o seu apoio menos as taxas cobradas quando apoiou (a taxa da plataforma, a taxa fixa, qualquer gorjeta e qualquer recompensa de partilha que a campanha pague).
- claim_funds.rs: exige angariado >= meta, paga ao criador da campanha, e pode ser chamada mais do que uma vez até o cofre ficar vazio.
- refund.rs: passado o prazo e com a meta por atingir, paga ao apoiante que assina, e fecha o registo de contribuição dessa pessoa.
- close_campaign.rs: um criador pode fechar a sua própria campanha. Não move dinheiro nenhum e não consegue retirar nada do cofre.
Uma campanha financiada e levantada é dinheiro que está com o criador. A partir daí o risco deixa de ser de custódia e passa a ser de entrega, e nenhuma garantia em parte alguma cobre a entrega. O que esse risco é está descrito na página de transparência.
Um apoio, em números
Um apoio de 100 USDC no plano gratuito, sem gorjeta e sem link de partilha, para que nada vá a lado nenhum a não ser para a tesouraria e para o cofre. Todos os valores aqui são calculados a partir das constantes do próprio contrato em vez de escritos à mão, que é a razão de terminar num número torto em vez de num número redondo.
| Passo | Valor | De onde vem |
|---|---|---|
| Aprova | 100 USDC | O valor que assina. Nada maior do que isto pode ser retirado mais tarde com a mesma assinatura. |
| Comissão da plataforma | 2.49 USDC | 1.5% do apoio no plano gratuito, mais 0.99 USDC fixos em cada apoio, seja qual for o seu tamanho. |
| Chega ao cofre | 97.51 USDC | O apoio líquido. É este o valor que o contrato regista em nome da sua carteira, e é este o valor que conta para a meta da campanha. |
| Regressa se a meta falhar | 97.51 USDC | O valor registado, por inteiro. A comissão já está com a tesouraria e não faz parte do que o reembolso paga. |
O apoio mais pequeno que o contrato aceita é 10 USDC, e a razão é esta aritmética. Uma taxa fixa é regressiva: nesse limite, a percentagem e a taxa fixa juntas levam 11.4% do apoio, contra 2.49% no apoio de 100 USDC acima, e abaixo desse limite essa fatia sobe depressa o suficiente para ser indefensável. A tabela completa de comissões está na página de preços.
Sair antes do prazo
O programa tem um caminho para retirar um apoio antecipadamente, com a campanha ainda a angariar. Não é gratuito: paga 1.5% à plataforma e ainda uma taxa que o criador escolheu quando abriu a campanha, que o contrato limita a 18.5%. As duas saem daquilo que de outro modo receberia de volta.
Recusa em dois casos. Assim que a campanha atinge a meta, porque nessa altura o dinheiro já pode ser levantado pelo criador e deixar os apoiantes retirar por baixo de uma campanha financiada seria tirá-lo a quem ainda lá está. E assim que o criador fecha a campanha.
A aplicação não oferece forma de retirar um apoio antes do prazo.
O mínimo abaixo do qual o programa não desce
Nenhum plano, nenhum passe promocional e nenhuma combinação de referências consegue colocar a fatia da plataforma num apoio abaixo de 0.5%. Os planos pagos vão de 1.5% até 0.5% e param aí.
Esse mínimo não é uma política que alguém pudesse afrouxar em silêncio. É uma asserção dentro das próprias constantes do programa, verificada quando o programa é compilado: defina-se uma taxa abaixo dele e a compilação falha em vez de o programa ser publicado. Mencionamo-lo aqui porque corta dos dois lados, e o segundo lado é o que vale a pena saber. Quer dizer que a ninguém é cobrado zero, incluindo a si.
Dinheiro carregado com cartão
Stablecoin enviada diretamente para a sua própria carteira chega intacta. Não é retirado nada e nenhuma chave além da sua está envolvida em qualquer momento.
Um carregamento com cartão é diferente e vale a pena compreendê-lo antes de o usar. O dinheiro não entra na sua carteira. Entra primeiro numa carteira de depósito controlada pela CoFunders, uma por pessoa. Quando esse depósito é visto na rede, uma segunda transação divide-o: 1.5% do depósito mais 0.99 USDC fixos vão para a tesouraria da plataforma, e o restante segue para a sua própria carteira.
Essa segunda transação é assinada por uma chave da plataforma e não por si. É o único passo em todo o produto em que a CoFunders assina por dinheiro a caminho de si, por isso pertence a uma página como esta e não a uma nota de rodapé. Existe porque uma carteira de depósito acabada de criar não tem nada com que pagar a taxa de rede, e a plataforma paga essa taxa a partir da mesma transação em que cobra a comissão de depósito.
A parte fixa é cobrada em todos os carregamentos com cartão no plano gratuito, e apenas no primeiro para quem esteja num plano pago. Depósitos muito pequenos ficam onde estão em vez de serem recolhidos, porque movê-los custaria mais do que valem.
Quem pode mudar as regras
O programa é atualizável e, hoje, uma única chave detida pela CoFunders pode substituí-lo. É esta a forma honesta do risco: tudo o que está acima é imposto por código, e uma chave pode mudar o código.
A mesma autoridade é o administrador do contrato, e vale a pena nomear exatamente o que isso lhe permite, porque a lista é mais curta do que se supõe e, num ponto, mais longa do que se espera.
- update_platform_config.rs: mudar o endereço da tesouraria que recebe as comissões, mudar a própria chave de administrador, e mudar um endereço de mercado de crédito que hoje nenhuma instrução lê.
- set_user_tier.rs: definir o plano de qualquer carteira, que é a taxa que o programa cobra a essa carteira. Pode baixar uma taxa e pode voltar a subi-la para 1.5%. Não pode inventar uma taxa fora das cinco com que o programa foi compilado.
- grant_fee_pass.rs: conceder a uma carteira um passe de sete dias que baixa a sua taxa para o mínimo de 0.5%.
- O que o administrador não pode fazer: mover o cofre de uma campanha, mudar uma meta ou um prazo, reembolsar em nome de alguém, levantar em nome de um criador, ou definir qualquer taxa abaixo do mínimo compilado.
- Autoridade de atualização
- 8fPcxJYEzgYnuHDuVxsQNp6nenCNcVv8Nt6VUqM1dGnz
- Lido na blockchain em
- 2026-09-19, a partir da conta ProgramData do próprio programa. Pode repetir a verificação sem nos perguntar nada.
Estes são os poderes que o programa publicado concede. Ficam por baixo da autoridade de atualização, que em princípio poderia substituir o programa por um que conceda poderes diferentes. Esta página é construída a partir de um único registo, pelo que, se essa autoridade passar para uma assinatura múltipla ou for entregue por completo, esta secção muda com ela em vez de ser reescrita à mão e esquecida.
O que pode verificar sozinho
Tudo o que está acima é verificável, e três das verificações que um leitor atento quereria fazer ainda não estão disponíveis. As duas metades disto estão nesta página de propósito.
- A conta de configuração da plataforma
- 2Y1DAc9sF6Cb51iFPNZXx8x5ZDft2Djrx7a2694R5ZPD
- Compilação verificada
- Não. Os bytes que correm na rede não foram reproduzidos a partir de fonte publicada, por isso ainda não pode confirmar que o programa na blockchain foi construído a partir do código que esta página descreve.
- Código-fonte público
- Não publicado hoje.
- Auditoria de terceiros
- Nenhuma. Nenhuma empresa externa auditou este contrato, e ninguém o deve tratar como se alguma o tivesse feito.
O que pode verificar hoje é a parte que mais conta no momento: o saldo do cofre de uma campanha, cada apoio que lá entra e cada pagamento que de lá sai são públicos, de forma permanente, e legíveis por qualquer pessoa com o endereço acima e sem conta em lado nenhum.
Comunicar uma vulnerabilidade
Se encontrou uma falha no contrato, na aplicação ou neste site, escreva para support@cofunders.org. Diga-nos o que fez, o que aconteceu, e o que julga que isso permite a alguém fazer. Uma prova de conceito contra uma campanha sua vale mais do que um parágrafo de teoria.
Por favor não teste contra campanhas ativas que tenham dinheiro de outras pessoas, e por favor não publique um ataque funcional antes de termos tido oportunidade de o fechar. Não temos programa de recompensas pago e não vamos fingir o contrário.
- security.txt. O mesmo endereço, na forma legível por máquina que um scanner procura
- O que pode correr mal. Os riscos que esta página não elimina
- Contacto. Tudo o que não seja um relatório de segurança