378 / 736DAI

Wei Dai

Autor de b-money e autor original de Crypto++

Wei Dai investigou como enviar dinheiro pela internet sem um banco comum e sem revelar a identidade. Sua proposta b-money é uma precursora do Bitcoin. Já a Crypto++ representa outra parte de seu trabalho: ferramentas que programadores usam para proteger dados.

Wei Dai é criptógrafo e autor original da biblioteca Crypto++. Na proposta b-money, de 1998, descreveu como pessoas com pseudônimos digitais poderiam manter contas monetárias e celebrar contratos. O Bitcoin cita seu trabalho, mas tem uma organização de rede e regras próprias.

Para criptografar uma mensagem ou verificar uma assinatura digital, o programador não precisa escrever todos os procedimentos do zero. Pode usar uma biblioteca criptográfica: um conjunto de funções para trabalhar com dados protegidos. Wei Dai escreveu originalmente uma dessas bibliotecas, a Crypto++, em C++. Trata-se de software que pode ser incorporado a uma aplicação. O b-money é outro tipo de contribuição: uma proposta escrita de sistema monetário. A existência de uma biblioteca funcional não comprova que também funcionou uma rede baseada nessa proposta. Entender sua contribuição exige acompanhar essas duas frentes separadamente. [3]

Em novembro de 1998, Wei Dai apresentou uma pergunta que aparece até nas compras online: como cooperar sem revelar a identidade? No b-money, propôs dois protocolos, ou conjuntos de regras, para manter contas compartilhadas e celebrar contratos. Chaves públicas serviriam como pseudônimos, e as mensagens teriam assinaturas digitais. Porém, uma rede que impedisse rastrear os participantes era uma premissa, não algo que a própria proposta entregava. Dai considerou a primeira versão impraticável por suas exigências de transmissão coletiva de mensagens. Estamos lendo um projeto fundamentado, não instruções de um serviço anônimo que já estivesse funcionando. [1]

Imagine que Ana tenha 5 unidades de b-money e envie 2 para Tomás. Na primeira versão, cada participante mantém uma cópia das contas. A mensagem assinada de Ana instrui os demais a debitar sua conta e creditar a de Tomás; ela fica com 3 unidades. Mensagens que produziriam saldo negativo são ignoradas. A assinatura permite verificar a autorização, mas a contabilidade compartilhada também precisa de regras de entrega das mensagens. O Bitcoin posteriormente adotou o modelo UTXO: acompanha saídas específicas de transações que ainda podem ser gastas. Assim, um objetivo parecido não significa o mesmo método de registro. [1]

A segunda versão do b-money atribui a contabilidade a uma parte dos participantes, chamados servidores. Isso reduz o trabalho dos demais, mas exige supervisão dos responsáveis pelos registros. Os servidores devem fazer depósitos que possam cobrir penalidades, publicar periodicamente suas bases de dados e assumir um compromisso público com seu conteúdo. Os usuários verificam o próprio saldo e se a soma das contas ultrapassa o dinheiro emitido. Quem recebe um pagamento também confirma seu processamento com servidores escolhidos aleatoriamente. Portanto, o depósito não elimina a confiança por mágica. Ele integra a fiscalização proposta sobre as pessoas e máquinas que administram as contas. [1]

No b-money original, unidades são criadas pela solução de um problema computacional. A quantidade corresponderia ao custo do cálculo, medido por uma cesta padrão de bens. Essa cesta fornece uma referência comum de custo; não determina o preço pelo qual alguém comprará uma unidade no mercado. Mas os computadores melhoram, e seus custos reais não são conhecidos por todos. Dai reconheceu essa dificuldade e propôs no apêndice uma alternativa por leilão: os responsáveis pelas contas negociam a quantidade de dinheiro novo, enquanto candidatos competem com ofertas de trabalho computacional. Isso não é o calendário de emissão de BTC. Reconhecer o problema e buscar outra solução também dá valor ao texto. [1]

A proposta vai além dos pagamentos. Em um serviço de tradução, uma assinatura pode demonstrar aceitação do contrato, mas não a qualidade do texto entregue. Por isso, os contratos de b-money incluem depósitos, compensações previamente acordadas por descumprimento e um árbitro. Se as partes não chegarem a um acordo com sua ajuda, apresentam argumentos e cada participante responsável pelos registros toma sua própria decisão. Isso mostra a dificuldade de levar conflitos humanos a um sistema digital. Bitcoin Script, a linguagem das condições para gastar uma saída, avalia condições técnicas precisamente definidas. Sozinha, ela não julga se uma tradução ficou boa. [1]

Satoshi Nakamoto incluiu b-money, de 1998, como referência 1 no whitepaper do Bitcoin, o documento que explica seu projeto. Assim podemos acompanhar uma ligação intelectual concreta: dinheiro digital sem administrador comum já era estudado antes do Bitcoin. A citação não significa que todos os mecanismos propostos foram adotados. Contas, emissão e resolução de disputas diferem no b-money e no Bitcoin. A referência tampouco revela quem estava por trás do nome Satoshi Nakamoto. Para entender essa história, comparar os textos documentados ajuda mais do que deduzir uma identidade a partir de uma citação. [2]

A história da Crypto++ prossegue com correções, testes e o trabalho de outros desenvolvedores. O histórico do projeto registra que Wei Dai entregou a operação cotidiana à comunidade em junho de 2015. Para os usuários, importam tanto o autor original quanto a versão específica e o uso correto das funções. Uma biblioteca oferece ferramentas de assinatura ou criptografia, mas não resolve sozinha o armazenamento seguro das chaves nem o projeto completo de uma carteira. Desenvolvedores precisam ler a documentação, acompanhar correções e verificar seu próprio uso. Reconhecer a contribuição do autor combina com examinar o software atual. [3]

Para ter uma visão mais completa, leia este verbete junto com Adam Back, Nick Szabo, b-money, Satoshi Nakamoto. Também há referências a este verbete em b-money, Bit Gold, Adam Back, Nick Szabo.

DOC · 001Wei Dai — b-money (November 1998)Documentação DOC · 002Satoshi Nakamoto — Bitcoin whitepaper, reference 1Documentação DOC · 003Crypto++ Project — author attribution and project historyDocumentação
Revisto em: Fontes em primeiro lugar · Não é recomendação de investimento