Na semana passada, ajudei um amigo a limpar a carteira: revisei a lista de autorizações dele e vi dezenas de approves com valores ilimitados, tudo lotado e ainda dentro do prazo. Vários nomes de contratos ele nem se lembrava mais.
Conferi também os dois casos em que ele foi fisgado nesses últimos anos — as quantias saíram exatamente desses contratos “dormindo” na lista de autorizações. A chave privada não foi perdida, nenhuma assinatura vazou, e mesmo assim o dinheiro sumiu.
Nestes dias, ao usar TBV do @BabylonLabs_io , um detalhe me fez parar: em todo o processo, eu não cliquei em approve uma única vez.
Não é “corte de produto”. No nível do modelo, o TBV não tem esse negócio de ERC-20 approve. Ele usa UTXO do Bitcoin + transações pré-assinadas — cada operação corresponde a uma transação específica, com valor já definido e caminho já definido; quando você assina, acabou. Não existe o conceito de “autorizar um contrato a mover meu dinheiro a qualquer momento no futuro”.
Vitalik, em 《The Three Transitions》, fala repetidamente de uma coisa: a ferida mais profunda na UX de carteiras é fazer o usuário assinar uma autorização que eles na verdade não conseguem ler. Ele diz que cada assinatura deve ter um significado claro e limitado.
O TBV cai exatamente nessa linha. Você assina “travar 1 BTC neste Vault”, não “permitir que algum contrato gaste meu BTC quando quiser”. Essas duas assinaturas parecem iguais em criptografia, mas o risco é maior por uma ordem de grandeza de dez.
Não estou dizendo que o TBV é perfeito. Estimativa de taxas, espera em bloco, escolha do provedor de Finality — tudo isso precisa ser aprendido. Mas aquela ansiedade de “não sei quantos cheques em branco eu assinei” aqui realmente não existe.
Talvez usuários antigos de DeFi consigam entender melhor essa diferença. Quem já está acostumado a, em cada interação, fazer approve primeiro, depois confirmar e então rezar para que o contrato nunca seja explorado… voltar para TBV é meio estranho — estranho como uma coisa pode ser feita de modo tão limpo.
Talvez a próxima versão de confiança não seja “quantas proteções eu assinei”, e sim “eu nem preciso assinar essas”. #baby $BABY
Conferi também os dois casos em que ele foi fisgado nesses últimos anos — as quantias saíram exatamente desses contratos “dormindo” na lista de autorizações. A chave privada não foi perdida, nenhuma assinatura vazou, e mesmo assim o dinheiro sumiu.
Nestes dias, ao usar TBV do @BabylonLabs_io , um detalhe me fez parar: em todo o processo, eu não cliquei em approve uma única vez.
Não é “corte de produto”. No nível do modelo, o TBV não tem esse negócio de ERC-20 approve. Ele usa UTXO do Bitcoin + transações pré-assinadas — cada operação corresponde a uma transação específica, com valor já definido e caminho já definido; quando você assina, acabou. Não existe o conceito de “autorizar um contrato a mover meu dinheiro a qualquer momento no futuro”.
Vitalik, em 《The Three Transitions》, fala repetidamente de uma coisa: a ferida mais profunda na UX de carteiras é fazer o usuário assinar uma autorização que eles na verdade não conseguem ler. Ele diz que cada assinatura deve ter um significado claro e limitado.
O TBV cai exatamente nessa linha. Você assina “travar 1 BTC neste Vault”, não “permitir que algum contrato gaste meu BTC quando quiser”. Essas duas assinaturas parecem iguais em criptografia, mas o risco é maior por uma ordem de grandeza de dez.
Não estou dizendo que o TBV é perfeito. Estimativa de taxas, espera em bloco, escolha do provedor de Finality — tudo isso precisa ser aprendido. Mas aquela ansiedade de “não sei quantos cheques em branco eu assinei” aqui realmente não existe.
Talvez usuários antigos de DeFi consigam entender melhor essa diferença. Quem já está acostumado a, em cada interação, fazer approve primeiro, depois confirmar e então rezar para que o contrato nunca seja explorado… voltar para TBV é meio estranho — estranho como uma coisa pode ser feita de modo tão limpo.
Talvez a próxima versão de confiança não seja “quantas proteções eu assinei”, e sim “eu nem preciso assinar essas”. #baby $BABY