What b-money is?

B-money was an early proposal created by Wei Dai for an “anonymous, distributed electronic cash system”. B-money was referenced by Satoshi Nakamoto through the creating of the world famous Bitcoin. He published on the cypherpunks mailing-list in November 1998, Dai proposed two protocols in his essay.



In 1998, a graduate of the Washington University Wei Dai (Wei Dai) offered B-money. “My idea was to create a free financial system on the Internet. So that no one could introduce taxation and force people to do anything,” he explained. Very few will remember the times of B-Money, as this cryptocurrency was first presented to the public in 1998-more than 10 years before the appearance of bitcoins. Nevertheless, B-Money is very unlike bitcoins, although the developer of the first — Wei Da (Wei Da) — also sought to create an anonymous and distributed method of issuing coins. For the speedy implementation of B-money, technical documents (link) (the so-called “white paper”) were published, which contained the same basic principles as the modern cryptocurrency. It was assumed that the “digital aliases” will be able to send and receive money through a decentralized network and even ensure the implementation of contracts among themselves without the involvement of a third party. Unfortunately, the B-Money project has not moved from the dead end after the implementation of the white paper.


In the first protocol, the use of a proof of work function is proposed as a means of creating money. Dai’s B-Money was proposed in the context of cypherpunks mailing-list discussions relating to possible applications of Hashcash, the first symmetric proof-of-work function, which was itself also published on the same mailing-list, the previous year – May 1997. (Like the B-money proposal, bitcoin itself also uses the hashcash cost-function as the proof-of-work during coin minting). In B-Money, money is transferred by broadcasting the transaction to all participants, all of whom keep accounts of all others. Contracts can be made with possible reparation in case of default, with a third party agreeing to be the arbitrator. If there is no agreement, each party broadcasts arguments or evidence in its favor and each of the participants determines the reparations/fines in his accounts for himself.

The second protocol has only a subset of the participants (the “servers”) keeping accounts, which they have to publish, and the participants who do transactions verifying their balances by asking many of them. The participants also verify that the money supply is not being inflated. An amount of money as bail is required to become a server, which is lost if the server is found to be dishonest.

An alternate method of creating money is proposed, via an auction where participants bid on the solution of computational problems of known complexity.

Appendix A of “white paper”

One of the more problematic parts in the b-money protocol is money creation. This part of the protocol requires that all of the account keepers decide and agree on the cost of particular computations. Unfortunately because computing technology tends to advance rapidly and not always publicly, this information may be unavailable, inaccurate, or outdated, all of which would cause serious problems for the protocol.
Wei Day wrote: “So I propose an alternative money creation subprotocol, in which account keepers (everyone in the first protocol, or the servers in the second protocol) instead decide and agree on the amount of b-money to be created each period, with the cost of creating that money determined by an auction. Each money creation period is divided up into four phases, as follows:

  • Planning. The account keepers compute and negotiate with each other to

determine an optimal increase in the money supply for the next period. Whether or not the account keepers can reach a consensus, they each broadcast their money creation quota and any macroeconomic calculations done to support the figures.

  • Bidding. Anyone who wants to create b-money broadcasts a bid in the

form of <x, y> where x is the amount of b-money he wants to create, and y is an unsolved problem from a predetermined problem class. Each problem in this class should have a nominal cost (in MIPS-years say) which is publicly agreed on.

  • Computation. After seeing the bids, the ones who placed bids in the

bidding phase may now solve the problems in their bids and broadcast the solutions.

  • Money creation. Each account keeper accepts the highest bids (among

those who actually broadcasted solutions) in terms of nominal cost per unit of b-money created and credits the bidders’ accounts accordingly.

External Links


See Also on BitcoinWiki