Wei Dai

Creator of b-money and Crypto++, cited in the Bitcoin white paper

🔍 Identity hypothesis

Wei Dai is a computer scientist and cryptographer known for two major contributions to the field: the b-money proposal for digital currency and the Crypto++ cryptographic library. He studied computer science at the University of Washington and worked at Microsoft. The b-money citation as reference [1] in the Bitcoin whitepaper, the Crypto++ codebase dependency in Bitcoin v0.1, and Wei Dai’s status as the second person Satoshi contacted before launch have made him a recurring Satoshi-identity candidate — documented in the Wei Dai = Satoshi hypothesis entry, with the January 2014 AALWA retrospective as the principal self-denial.

1998b-money proposalpublished on thecypherpunks mailing list(Nov)Adam Back publishescritique of b-money'smonetary design (Dec)2008Email from Satoshi -asks about b-moneycitation year for thewhitepaper (Aug 22)Bitcoin whitepaper citesb-money as its firstreference (Oct)2009Bitcoin v0.1 ships withCrypto++ 5.5.2SHA-256; Daiexchanges furtheremails with Satoshi(Jan)2010Bitcoin v0.3.6 integratesCrypto++ 5.6.0SSE2-optimizedSHA-256 (Jul)2014LessWrongretrospective - Satoshiwas 'not previouslyactive' in cypherpunkcommunities (Jan)

b-money (1998)

In November 1998, Dai published “b-money”, a proposal for an anonymous, distributed electronic cash system, on the cypherpunks mailing list. The b-money proposal described a system where participants could create money by broadcasting the solution to a computational puzzle — a concept conceptually similar to Bitcoin’s proof-of-work mining. The paper outlined two protocols: one requiring a synchronous broadcast channel, and another using a set of servers to keep track of balances. B-money was never implemented, but it became one of the key intellectual precursors to Bitcoin.

Crypto++

Dai created and maintained Crypto++, a free, open-source C++ library providing a comprehensive collection of cryptographic algorithms and schemes. The library is widely used in academic and commercial projects and remains one of the most respected cryptographic libraries available. Bitcoin used Crypto++ for its SHA-256 implementation from the earliest archived release: Bitcoin v0.1.3 ALPHA (early 2009) carries src/sha.cpp and src/sha.h with a header note stating that the routines were “extracted as a standalone file from Crypto++ Version 5.5.2 (9/24/2007)” — the latest Crypto++ release available at the time Bitcoin was being designed (mid-2007 onward).

The Crypto++ 5.6.0 SSE2-assembly-optimized SHA-256 was integrated into Bitcoin in version 0.3.6 (July 29, 2010 release). Primary-source timeline:

  • 2010-07-25: BitcoinTalk member “BlackEye” demonstrated integrating Crypto++ 5.6.0 SHA-256 with SSE2 assembly — “the fastest SHA256 yet using the SSE2 assembly code.”
  • 2010-07-26: Satoshi responded — “Is that still starting from Crypto++? Lets get this into the main sourcecode.”
  • 2010-07-27 (SVN rev 114): Satoshi confirmed adding the library subset — “I added a subset of the Crypto++ 5.6.0 library to the SVN. I stripped it down to just SHA and 11 general dependency files… The combined speedup is about 2.5x faster than version 0.3.3. This is SVN rev 114.”
  • 2010-07-29: v0.3.6 release alert — Satoshi credited BlackEye for the Crypto++ ASM SHA-256 and tcatm for the midstate cache optimization: “Total generating speedup 2.4x faster.”
  • 2010-08-09: Satoshi stated explicitly — “When we switched to Crypto++ 5.6.0 SHA-256 in version 0.3.6, generation got broken on the Linux 64-bit build.”

Dai’s code contributions to Bitcoin are twofold: b-money as an intellectual precursor, and Crypto++ as a direct codebase dependency from the earliest released version.

Satoshi’s First Contact

On August 22, 2008, Satoshi Nakamoto emailed Dai directly, writing that he was preparing to publish a paper expanding on Dai’s b-money ideas. Satoshi asked Dai for the year of b-money’s publication to properly cite it. This email, along with a similar one sent to Adam Back two days earlier, represents the earliest known evidence of Satoshi reaching out to existing cryptographers before publishing the Bitcoin white paper. The white paper, published on October 31, 2008, cites b-money as its first reference.

Later Correspondence

In January 2009, following Bitcoin’s launch, Dai and Satoshi exchanged further emails. Satoshi wrote to Dai about the upcoming release, and Dai responded with thoughts on Bitcoin’s design, noting both its similarities to and differences from b-money. Dai also made philosophical observations about the nature of money and cryptocurrency that demonstrated a deep understanding of the challenges involved.

Significance

Dai’s b-money proposal is one of the most direct intellectual predecessors to Bitcoin. Satoshi’s decision to contact Dai before publication, and the prominent citation of b-money in the white paper, underscores the degree to which Bitcoin built upon Dai’s earlier work. Dai’s later 2014 retrospective on Satoshi — that he was “not anyone who was previously active in the academic cryptography or cypherpunks communities” — together with Satoshi’s own admission of not knowing b-money during 18 months of development, anchors an analysis of Satoshi’s relationship to the cypherpunk movement and the alignment of his practice with its philosophical core. The unit “wei” in the Ethereum cryptocurrency was named in honor of Wei Dai.

Related Entries

19 entries