We have our own forum now which is now getting a lot of traffic (http://www.mastercointalk.org) so I'm locking this thread so our discussions are less spread out. Feel free to discuss Mastercoin and the Master Protocol there!

I am VERY excited to announce that I now have a complete specification for building a protocol layer on top of bitcoin (like how HTTP runs on top of TCP/IP).

The coins of the new layer have

Additional security features to make your money much harder to steal

Built-in support for a distributed currency exchange

Built-in support for distributed betting (no need to trust a website to coordinate bets)

Built-in support for "smart property" which can be used to create and transfer property such as titles, deeds, or stock in a company

Capability to hold a stable user-defined value, such as an ounce of gold or U.S. Dollar, with no need to trust a person promising to back up that value

This is a significant improvement over anything we've had before, including colored coins. This protocol has been my life's work for over two years now, and you can finally get a piece of it today!

The name of the new protocol layer is “MasterCoin” (a name I invented and published long before the alt-coin of the same name), and it is 100% message-based, meaning that it encodes all its protocol data as hidden messages in the block chain which have special meanings, such as placing a bet, or transferring MasterCoins to another address.

Once you own MasterCoins, you have the building blocks for creating GoldCoin, USDCoin, EuroCoin, and any other real-world asset you can imagine! These child currencies will then be “meta stable” (holding their values as long as they remain sufficiently backed by MasterCoins held in escrow). Their target values are maintained by protocol actions which control the available supply.

I've been pushing for new bitcoin protocol layers since 2011. Here's a video of me as an expert panelist at the Bitcoin Conference in San Jose in May, talking about this idea (I'm the second guy from the left): http://www.youtube.com/watch?v=_qdr_Z3hrqQ

MasterCoins are intended to be an investment opportunity on par with buying bitcoins when they first came out. However, as with bitcoins, there are a lot of risks too. Before you buy MasterCoins, please take a few minutes to read my summary of some of the ways this could go wrong and you could lose your money: https://sites.google.com/site/2ndbtcwpaper/MasterCoinRisks.pdf

Perhaps you have heard of the Genesis Block, from which the first bitcoins were created. MasterCoins have a similar starting point in the bitcoin block chain, called the “Exodus Address” (http://blockchain.info/address/1EXoDusjGwvnjZUyKkxZ4UHEf77z6A5S4P). MasterCoins were created by sending bitcoins to the Exodus Address during the month of August 2013. That fundraiser is now over, and anyone wishing to buy MasterCoins will have to purchase them from an early adopter.

Bitcoins raised in the fundraiser are being used to fund the development of software implementing the MasterCoin protocol. The fundraiser was structured like a kickstarter, but it is also an investment. If we're successful, the purchased MasterCoins could be worth a tremendous amount of money someday. Thanks to everyone who participated, helping us raise over half a million dollars worth of bitcoins. We're tracking every every expenditure of that money in a public ledger: https://docs.google.com/spreadsheet/ccc?key=0AtCyUJvk_IyNdGpVcnpBN2tOczFmbVRnck5TWjZuRFE&usp=sharing

Again, the fundraiser is over, and bitcoins sent to the Exodus Address do not create MasterCoins anymore. Until we get the bitcoin/MasterCoin distributed exchange set up, you can purchase MasterCoins (using a very manual process) here: https://bitcointalk.org/index.php?topic=287145.0

Do not attempt to purchase or use MasterCoins with a web wallet such as MtGox or Coinbase (YOU COULD LOSE YOUR MONEY). You must use a wallet where you can control a sending address by sending all your funds to that address first, then creating a "message" by sending funds from that address in a special format. Web wallets such as BlockChain.info will work fine, since they give you complete control over the addresses in your wallet.

Many MasterCoin functions are now available online (Note site disclaimers! There may still be bugs!):

She's not willing to trade my vacation/weekend/evening time for ANY amount of money. The poor woman hasn't learned to be materialistic, and is satisfied with what we have. She just wants my time and attention for herself and the kids.

However, she IS willing to trade very small amounts of that time as an investment in my project and in our future. For instance, she might take the kids to her parents' house for a weekend at some point to give me time to work on this.

Consequently, our burn rate using up project funds is going to be very slow, which is good, and progress will be painfully slow, which is bad.

Once I have the basic code in place, I should be able to set up some bounties, which should speed things up a bit, but it looks like I won't be paying myself directly to work on this unless I start doing this full-time.

Edit: Thanks to an enthusiastic community of developers, this project is going much quicker than I thought it would. Thanks everyone!

You do move quickly, I was about to post my comments on the other thread, when it was locked.

Congrats on the launch! (I guess you can call this a launch, even though no software was written, because the protocol is fixed). I would appreciate a hasty reply to the following points:

General notes

Very well done, I feel the 0.7 version has greatly matured compared to the 0.5 version of the paper from last year. It seems you at on the right track, and headed for a hasty release (only one month from now, or less).

I personally feel I understand the vision of MasterCoin better now, after reading this version of the paper. Readers who haven't not read previous versions of the paper might benefit from a longer introduction that explains the concrete benefits that MasterCoin and derived currencies can offer. I would rename the Summary section as Abstract, add an Introduction section, and also number the different sections. The introduction should list the concrete use-cases describes in the paper. Also, I think you should dedicate a small section to surveying the competitors in this space (namely Colored Coins and Ripple), and explain why they are lacking in comparison with MasterCoin.

I would also add a section that attempts to model the economic behavior and effects of MasterCoin. How many mastercoins will there be now? Ever? How is the expected rate of Bitcoin-Mastercoin expected to behave under a few scenarios? Didn't you have such text in the first version of the paper?

Specific comments

0. What is the MasterCoin three letter abbreviation? You should clarify that your original MasterCoin, and the new "usurper" MasterCoin are not related in any way, and that you have prior claim to the MasterCoin name.

The new protocol layers described in this document...Will richly reward early adopters of the new protocol, in proportion to how successful it is.

Assumptions---------------

New protocol layers on top of the bitcoin protocol will increase bitcoin values, consolidate our message to the world, and concentrate our efforts, while still allowing individuals and groups toissue new currencies with experimental new rules. The success of any experimental currency protocol layer will enhance the value and success of the foundational bitcoin protocol.

2. Fair release schedule

You should pre-declare a date on which you will reveal the precise exodus address. Since the protocol gives bonuses to early adopters on a per week (and part of) before August 31th 2013, which isn't too far away, the address should be revealed way before that, and ample time (at least 1-2 days, preferably 7 days) should be be given where no extra bonus is given. In other words, people should have at least a few days from the moment the exodus address is revealed, in which all funds sent to the exodus address are capped in the amount of Bitcoins they send. There can be a bonus for early adopters, but everyone should have a fair chance to invest.

3. Who has the private keys for the exodus address? If it is you, this should be stated explicitly. It can also be a m-of-n address where there are n "MasterCoin project directors". Or rather, is this a sinkhole address like the original MasterCoin design, which has no feasible private key? (instead of this, you can send to an unspendable script which is guaranteed to be a sinkhole, not just computationally infeasible)

4. Hiding MasterCoin Protocol Data in the Block ChainI would rename it to Encoding MasterCoin Protocol Data in the Block Chain.I think this section deserves some more elaboration on motivation and technique.

5. Fake bitcoin addresses require more explaining. How does one generate a fake address? Where did the magical "20 bytes" come from?

6. Using block times gap to encode transaction is vulnerable. A coalition of miners might collude in order to postpone some of a group of transactions that were broadcast to the network at the same time. This might also happen naturally as network traffic grows - we do not know enough at this point to predict how fast transactions will get mined, and how that would depend on fees.

7. I think that the Saving/Guardian model, while perhaps not adding anything qualitative to Bitcoin (it can be "implemented" by correctly securing and backing up your private keys and passwords), does add some nice ease of use to the protocol.

8. "Selling MasterCoins for Other MasterCoin-Derived Currencies" seems to lack a time limit parameter, by mistake I assume.

9. "Registering a Data Stream" can use some motivational example. When would someone want to "publish the price of Gold" in the blockchain? What does this mean? (which Gold price? His price?)

10. <s>"Only the first payment sent from that address in a given day (as determined by block-chain timestamps) will be considered ticker data" - why is the timespan of "a day" special here? What does it mean to "be considered as ticker data"?</s>

After reading ahead, I understand the motivation of the division to days is the aggression factor of trust funds. It should be noted at this point of the paper ("Tickers and the reason for their granularity will be explained later on").

11. Bet fees ("The other 0.5% goes to the creator of the data stream") - These should be configurable by the stream owner. I should be able to create streams with arbitrary fees.

12. Aggression factors - when during the day do the trust funds take action? One idea is at the end of each day, or (giving the data sources ample time to publish data whenever they want during the day).

I suggest giving an option for alternate aggression tactic - instead of increasing the buyout each day, simply buy X% of the relevant currency each day, without increasing X. It is not immediately clear which aggression tactic is "better", so it would be prudent to support both and let creators of coins decide which tactic they prefer. More variations on the aggression tactic is possible (you can allocate a protocol field to the tactic, and not necessarily decide on all the precise tactics now, but allow room for improvement in a future MIP (MasterCoin Improvement Proposal).

I would also be interested to know who in the Bitcoin has reviewed the paper, and what was their general sentiment about it.

all i've seen about this project is this post, i am interested, i'm not sure i like the idea that my MasterCoin are sold at a fixed price by 1 central authority, and the fact that the MasterCoins are piggybacked on the blockchain, why not create a new Alt Coin?

I would also be interested to know who in the Bitcoin has reviewed the paper, and what was their general sentiment about it.

all i've seen about this project is this post, i am interested, i'm not sure i like the idea that my MasterCoin are sold at a fixed price by 1 central authority, and the fact that the MasterCoins are piggybacked on the blockchain, why not create a new Alt Coin?

See the intro to the spec for why I didn't make an alt coin.

Ripper, that is a lot of questions! I'm working on a reply right now . . .

Was the whitepaper just changed from v0.7 to v1? The title says version 1, but the history says v0.7. Was anything changed between 0.7 and v1 except the "launched" status and the Exodus Address? It's a shame that more time wasn't allowed between the 0.7 release and the launch.

Will all funds sent to the Exodus Address (nice name BTW) be used solely for promoting MasterCoin? Ever?

Suppose you transfer all of your Bitcoins to the Exodus Address now, and further suppose that one year from now you decide to stop working on MasterCoin. What happens to the bitcoins that the Exodus Address collected, including yours and other people BTC? What reason do you have not to transfer all your Bitcoins to the Exodus Address right now?

Quote

attempting to purchase MasterCoins from an online web wallet will likely result in the permanent loss of those MasterCoins

To the best of my knowledge, funds sent from a single address in MyWallet / BlockChain.info to MasterCoin should be safe. Can you comment on this?

I would also add a section that attempts to model the economic behavior and effects of MasterCoin. How many mastercoins will there be now? Ever? How is the expected rate of Bitcoin-Mastercoin expected to behave under a few scenarios? Didn't you have such text in the first version of the paper?

The number of MasterCoins is defined as the number which are purchased. The last revision of the paper did have a complicated scheme to make sure bitcoins stayed valuable long enough, but I took it out since that seems like less of a concern now that bitcoin is more mature.

0. What is the MasterCoin three letter abbreviation? You should clarify that your original MasterCoin, and the new "usurper" MasterCoin are not related in any way, and that you have prior claim to the MasterCoin name.

I did mention the usurper in the OP on this thread I haven't decided on a three-letter abbreviation. I'm open to suggestions.

The new protocol layers described in this document...Will richly reward early adopters of the new protocol, in proportion to how successful it is.

Assumptions---------------

New protocol layers on top of the bitcoin protocol will increase bitcoin values, consolidate our message to the world, and concentrate our efforts, while still allowing individuals and groups toissue new currencies with experimental new rules. The success of any experimental currency protocol layer will enhance the value and success of the foundational bitcoin protocol.

You should pre-declare a date on which you will reveal the precise exodus address. Since the protocol gives bonuses to early adopters on a per week (and part of) before August 31th 2013, which isn't too far away, the address should be revealed way before that, and ample time (at least 1-2 days, preferably 7 days) should be be given where no extra bonus is given. In other words, people should have at least a few days from the moment the exodus address is revealed, in which all funds sent to the exodus address are capped in the amount of Bitcoins they send. There can be a bonus for early adopters, but everyone should have a fair chance to invest.

The cat is out of the bag now. The exodus address is posted in the latest revision of the spec and in the OP here. (The one Ripper was looking atbefore didn't have the Exodus Address in it)

Nobody has sent any coins there yet though, and I am delaying my own purchase so I don't make everyone mad by getting the best exchange rate moments after the announcement

3. Who has the private keys for the exodus address? If it is you, this should be stated explicitly. It can also be a m-of-n address where there are n "MasterCoin project directors". Or rather, is this a sinkhole address like the original MasterCoin design, which has no feasible private key? (instead of this, you can send to an unspendable script which is guaranteed to be a sinkhole, not just computationally infeasible)

The Exodus address is controlled by a wallet in an offline-only computer running the armory client. I'm the only one with access right now, although my family does have a procedure to recover that wallet if I die.

4. Hiding MasterCoin Protocol Data in the Block ChainI would rename it to Encoding MasterCoin Protocol Data in the Block Chain.I think this section deserves some more elaboration on motivation and technique.

5. Fake bitcoin addresses require more explaining. How does one generate a fake address? Where did the magical "20 bytes" come from?

6. Using block times gap to encode transaction is vulnerable. A coalition of miners might collude in order to postpone some of a group of transactions that were broadcast to the network at the same time. This might also happen naturally as network traffic grows - we do not know enough at this point to predict how fast transactions will get mined, and how that would depend on fees.

That is an interesting attack vector. Note that using sendmany avoids this possibility. Also, colluding miners might be able to corrupt a transaction which is broken up, but they couldn't change it.

7. I think that the Saving/Guardian model, while perhaps not adding anything qualitative to Bitcoin (it can be "implemented" by correctly securing and backing up your private keys and passwords), does add some nice ease of use to the protocol.

10. <s>"Only the first payment sent from that address in a given day (as determined by block-chain timestamps) will be considered ticker data" - why is the timespan of "a day" special here? What does it mean to "be considered as ticker data"?</s>

After reading ahead, I understand the motivation of the division to days is the aggression factor of trust funds. It should be noted at this point of the paper ("Tickers and the reason for their granularity will be explained later on").

I don't want a ticker flooding the block chain, so I chose a day, since a lot of medium-term traders use that timescale by default. If a ticker published 10 updates in a day, the protocol would only look at the first one (the rest would be ignored). I agree that the day-limit could use better explanation in that spot.

12. Aggression factors - when during the day do the trust funds take action? One idea is at the end of each day, or (giving the data sources ample time to publish data whenever they want during the day).

I meant to mention in the paper that the protocol actions are calculated when the ticker sends the data, since the data is known to be accurate at that time.

I suggest giving an option for alternate aggression tactic - instead of increasing the buyout each day, simply buy X% of the relevant currency each day, without increasing X. It is not immediately clear which aggression tactic is "better", so it would be prudent to support both and let creators of coins decide which tactic they prefer. More variations on the aggression tactic is possible (you can allocate a protocol field to the tactic, and not necessarily decide on all the precise tactics now, but allow room for improvement in a future MIP (MasterCoin Improvement Proposal).

I definitely would like to experiment with other ways of doing this. I modeled my method after the integral gain of PID loops.

i am eager to generate myself 100oz of non existent GOLD and sell it on this crazy system!

Heh. Even once the protocol is fully implemented, you won't be able to do that. Funds used to purchase a new currency go into an escrow fund which is used to maintain the target value of that currency.

The new protocol layers described in this document...Will richly reward early adopters of the new protocol, in proportion to how successful it is.

Assumptions---------------

New protocol layers on top of the bitcoin protocol will increase bitcoin values, consolidate our message to the world, and concentrate our efforts, while still allowing individuals and groups toissue new currencies with experimental new rules. The success of any experimental currency protocol layer will enhance the value and success of the foundational bitcoin protocol.

Hmmm. Maybe. I'm open to suggestions for rewording that.

Perhaps you could put the source for the paper (latex?) on github, and people can send pull requests?Anyway I won't do it right now, too tired. Perhaps you, me, or someone else, will suggest better wording in the future.

Excuse my ignorance but so far all screams scam. So it took you 2 years to invent this scheme that involves us sending money to your address and "many devs" support your scheme but they don't show their support here?maybe not scam but I will just watch for now.

I wouldn't say that any bitcoin devs have explicitly endorsed this, just that I sent a preview of the spec to several of them, and the ones that responded were encouraging.

The protocol may change as it gets implemented. Right now is just the fund-raiser. I agree it would be cool to have multiple people helping me hold the coins. I approached several people about helping me hold the coins m-of-n style, but they were all too busy.

One more thing - I would entirely remove the part that "disses" alt currencies.Alts are important, they serve as a hedge against various potential flaws in Bitcoin.They are an economics experiment.

MasterCoin is important regardless of alts - your paper does not need to downplay them.

I was trying to explain why I didn't just build my own alt currency, but I'm afraid my bitcoin snobbery comes through a bit there. I should at least acknowledge that some of them are running some interesting experiments, however many horrible also-rans there may be

I can buy some today, but i won't be able to play with them until you have implemented the client.

are you just starting this implantation?how long do you think it will take to get this ready?will it be open source?

right now this is me:

That is a very good question. It depends a lot on how much money I raise. Huge funds would imply I could move pretty quick. I'm not counting on that though. I'm anticipating a pretty small investment from the community, and a much slower rate of progress (see the risks document)