Author

Topic: MasterCoin: New Protocol Layer Starting From “The Exodus Address” - page 147. (Read 448489 times)

legendary
Activity: 1834
Merit: 1019
Dacoinminister you might want to read this:

http://www.reuters.com/article/2013/08/06/us-court-sec-bitcoin-idUSBRE97517G20130806

The SEC seems to really dislike people offering unregistered and unlicensed investment vehicles in the US, regardless of whether it's bought in BTC or USD.

Here's a particularly relevant quote:

Quote
Trendon Shavers of Bitcoin Savings & Trust had challenged the Securities and Exchange Commission's case against him, saying the regulator had no jurisdiction to sue him because the Bitcoin investments he offered are not securities or subject to any U.S. regulation.

But U.S. Magistrate Judge Amos L. Mazzant in the Eastern District of Texas ruled on Tuesday that his Bitcoin investments "meet the definition of investment contract, and as such, are securities."

That doesn't mean at all that bitcoins are an investment contract (nor is Willett saying that Mastercoin is). Pirateat40's Bitcoin Savings & Trust, et. al. schemes WERE! By marketing his Trust as an investment where you could make 7% a week, that made it meet the definition of "investment contract" and thus, under the SEC's jurisdiction. I still consider buying Mastercoins now as on the same lines  as trading BTC for BTC or LTC etc

https://bitcointalksearch.org/topic/m.2879997

Ok judge, so which is it, are bitcoins money or securities?

Does thaat distinction mean anything or matter?

Can bitcoin be both?

The judge never said Bitcoins are securities/investments.  He said what Pirate offered was a security/investment.  The fact that they were denominated in Bitcoins didn't automatically make them not a security/investment (a highly dubious theory held by many for a long time).
As I understood it, bitcoins are money and Pirate's promise to repay principal and interest is a security.
legendary
Activity: 1834
Merit: 1019
I'm going offline until tomorrow, but you guys have my sincere thanks.

Ripper and vokain, I didn't officially set up a bounty, but I would like tip these two guys (maybe 3 BTC each) once I start tapping Exodus Address funds September 1st. Do you approve?

bytemaster needs a tip for his insane persistence, and d'aniel for actually describing the attack that bytemaster felt must exist.
Yes!

However, I would make it a priority, pending on a successful, tested implementation of multisig in a major client.
Until we have a clear, secure way to implement multisig without a chance of funds being lost, I'm ok with you guarding the funds, as long as it's clear the Foundation has to approve any significant expense (we can debate what 'significant' means ... as the project director / , you'll have a discretionary budget which you can spend without needing such approval).
I don't know if there should be a discretionary portion of a budget... personally I and everyone here I think would like to know what the fund was entirely used for transparently. I'd typically be very lax in approving such discretionary spending, but I'd like to know what it was for is all. Separate discussion platform for this would be nice.

I didn't think MasterCoin supported short sales...
It doesn't matter if it's built into the system.  I can still borrow the coins outside the system from anybody willing to lend them to me, and then immediately sell them.  That's all a short sale is.

Right, but no one shorts BTC because no one lends BTC (at least not in quantity).
bitfinex has shorting available. around 6000 BTC available to borrow, as of today, starting at 0.04%/day to 0.2% per day, depending on how much is borrowed. The only thing you have to trust is the system, no need to trust the borrower or lender. You can only sell on that exchange or route the sell through Bitstamp however. The mechanics in how they accomplished lending is pretty neat and simple, and worth checking out.
sr. member
Activity: 461
Merit: 251
I'm going offline until tomorrow, but you guys have my sincere thanks.

Ripper and vokain, I didn't officially set up a bounty, but I would like tip these two guys (maybe 3 BTC each) once I start tapping Exodus Address funds September 1st. Do you approve?

bytemaster needs a tip for his insane persistence, and d'aniel for actually describing the attack that bytemaster felt must exist.
Thanks!  PM me for an address if you like.
legendary
Activity: 1358
Merit: 1003
Ron Gross
Sweet! I love how it only requires actually permission to the Exodus!

How about setting up a "mastercoin-foundation" github organization, that will hold all the different repos? (mastercoin, greesemonkey, website, etc.)

I went ahead and forked Armory in anticipation of tearing it all apart:
https://github.com/dacoinminster/MasterCoin-Adviser

The greasemonkey script probably won't change much. I have no idea what I want to do for a website. Probably just contract it out at some point, since I don't really enjoy working on static pages.

And still ... how about developing these things not on your dacoinminster account, but as an organization account?
(It's really quite seamless and easy on github, it doesn't add any complications)

Cool.

I don't think any bitcoin client implements multi-sig yet, although armory is getting close. Perhaps the veto power should be informal at first, and once a way to do multi-sig becomes available, we can codify it using m-of-n multisig.

Does that sound good to you guys?

Well, ad this stage I certainly wouldn't advise changing the whitepaper to make the official exodus address a multisig address.

However, I would make it a priority, pending on a successful, tested implementation of multisig in a major client.
Until we have a clear, secure way to implement multisig without a chance of funds being lost, I'm ok with you guarding the funds, as long as it's clear the Foundation has to approve any significant expense (we can debate what 'significant' means ... as the project director / , you'll have a discretionary budget which you can spend without needing such approval).

Last I heard from TheZerg he said the new BitShares system is much harder to find fault with.    That said, I am still willing to pay a 1 BTC bounty to anyone who can find a fault with the BitShares protocol that will result in me making a change and 10 BTC to anyone who can convince me to abandon BitShares all together.   Note: Charles & I are the sole judge of whether or not to award the 10 BTC bounty, but we have a history of being fair/honest in our judgements.  If you can convince us of fundamental problems you will save us money and we would gladly pay 10 BTC... if you cannot convince us then we will be rolling out BitShares as the proof of your failure to convince us.  

MasterCoin seems unwilling to risk 10 BTC on the potential that the flaws in his system might be discovered.  If he is so confident his approach will work then it is a 0 risk proposition to offer a 10 BTC bounty.   At the very least his investors will know that he has put up enough money to insure his ideas are properly vetted.

I don't mind posting such a bounty if my oversight board (currently Ripper and vokain) thinks it would be a good use of funds from the Exodus Address. However, the posts so far don't even come close to convincing me that the idea can't work at all. The closest they have come is pointing out the trade-offs involved with this kind of system. There are clearly scenarios where excrow funds break down, but to claim the idea couldn't work for any amount of time is over-reaching.

Also, welcome back to the thread Smiley

I suggest opening a separate thread for this discussion (perhaps for every major financial decision). We will soon need a dedicated forum (place a bounty for that?)

This might be a good idea, but the bounty's conditions must be very well defined. I think it's best to discuss this on a separate thread.



Wow, there seems to be a lot of discussions that I missed. No time to read it all.
Anything important?
Kudos to dacoinminster for his patience in replying to this thread, it's really quite tiring Smiley
hero member
Activity: 770
Merit: 566
fractally
(bytemaster, did you ever solve this "oracle" trust issue? -- point me to your latest spec)

It's in my signature.  

Yes, I have solved the price discovery issue which in an 'all voluntary market' is only critical for one thing, margin calls, which by their nature are not voluntary and yet hinge on accurate price discovery that can not be manipulated to artificially trigger calls.

I never had an oracle, but am very aware of the need for honest price information and this is the single biggest area where people in this field need a deep understanding that goes far beyond surface level economics.  So let me attempt to address some of the critical insights that I have developed over the past several months working on BitShares full time.

0) There is no such thing as a unit of value
1) Prices cannot be added, subtracted, multiplied, or divided
2) Value can only be compared relative to a single individual.  You can only sort your values, but not put a number on them.
3) You cannot perform value comparisons between people except to the following:
     - If we agree to trade, then I value what I receive more than what I gave up  and you value what you receive more than what you gave up.
     - If we do not agree to trade, then I value what I have more that what you have
4) As a result of 0-3, it follows that prices cannot be calculated at any time because prices are the result of value judgements and there is no means of performing mathematical operations on 'value'.   Prices do not define value, values cause prices.
5) Prices are always historical data points, even microseconds after the trade.  
6) A single trade-price can be arbitrarily manipulated in any market by placing a bid for $1M and an ask for $0.001 and matching against yourself at any arbitrary price point you so desire because you have the highest bids and lowest asks.
7) You cannot solve #6 using averaging, median, statistical sampling, etc without violating rule #4.

So given these rules how can I determine when to perform a margin call in a manner that cannot be manipulated?  The answer lies in one last corollary to rule #3.    The price at which trades DO NOT OCCUR(bid/ask spread) define the consensus of the ENTIRE market.  Half of the market thinks the item is worth less than the bid, the other half thinks it is worth more than the ask.   Until someone crosses the bridge and jumps from one side of the market to the other, you have a valid range that cannot be manipulated.   Anyone who posts a bid that is too high is immediately matched.  Anyone asking to little is immediately matched.   The price at which these matches occur is not relevant, the only thing that matters is the price at which trades do not occur.

So, the BitShares blockchain will perform all matches that it can and when it has done so it will be left with a buy/sell spread.   If the bid is above the margin call price, then the margin is called and the collateral is forced to accept the current ask... causing a short squeeze!  

So the question that remains is whether or not it is possible to manipulate the price at which trades do not occur?  The only attack vector available is to strategically choose which bids/asks you are mining but your attack window is very small, non-deterministic (you must find the block), and your potential to move the price in a reasonably deep market is less than makes a meaningful difference between whether your margin was called at 150% or 151% because the goal is for all actors to stay far enough above the margin call threshold that the exact price/time it is called is irrelevant.  In effect, the most you could do is deny 5 minutes worth of bids or 5 minutes worth of asks.

It is because of this deep understanding of prices and economic rules that I knew MasterCoin was not viable and will not be viable.   Attempt to explain how violating them, even in subtle ways, ultimately leads to destruction is a challenge.   But these discussions are good practice and I get stronger with every post.

Hope this helps everyone!
full member
Activity: 146
Merit: 100
Dacoinminister you might want to read this:

http://www.reuters.com/article/2013/08/06/us-court-sec-bitcoin-idUSBRE97517G20130806

The SEC seems to really dislike people offering unregistered and unlicensed investment vehicles in the US, regardless of whether it's bought in BTC or USD.

Here's a particularly relevant quote:

Quote
Trendon Shavers of Bitcoin Savings & Trust had challenged the Securities and Exchange Commission's case against him, saying the regulator had no jurisdiction to sue him because the Bitcoin investments he offered are not securities or subject to any U.S. regulation.

But U.S. Magistrate Judge Amos L. Mazzant in the Eastern District of Texas ruled on Tuesday that his Bitcoin investments "meet the definition of investment contract, and as such, are securities."
legendary
Activity: 1246
Merit: 1010
I've been thinking about the fundraising part, and I can concede that being able to eat and keep a roof over your head is equitable. I'm just concerned about the nature of fundraising when it is paired with:

 
Quote
"Get 'em now folks, before they're worth SO MUCH MORE."*(multiple caveats in fine print)

Upon further consideration, that is the real 'meat' of my argument, in addition to the overall blockchain impact - which I'm not very pleased about, since I have no way (at this time) to say "no thank you, I will not verify your data". Bitcoin being what it is, it should be opt-in - the same way it is for what version of client you choose to run (unless we fork so hard we have to select one).

That's another problem, isn't it, it takes off and then we're talking not only about multiples of bandwidth/storage, but the ability of the main bitcoin devs being able to pick up the pace for future expansion and improvement. And since I've never bought the early-stressor argument either, please don't try it, it isn't very convincing.


Yup. If MasterCoin is successful, it will add a lot of transactions to bitcoin, making the total size of the block chain even more painful.

You are right - there is simply no way to prevent people from trying crazy stuff like this on top of bitcoin. For someone like me, that's kind of cool. Other people may not be so excited about it Smiley

Sometimes when I read crazy ideas like these, I have to wonder if we're either on the precipice of something horrible - like two halves of plutonium banging together and going critical, or something great, like the birth of the internet. The main issue here is the risk taken in doing so. If your baby 'breaks' bitcoin (For whatever duration - either temporarily or permanently), will the usual sentiment I see from software engineers the world over - usually along the lines of "Well, if 'X' couldn't handle it, then 'X' is stupid and deserved to die." - going to be enough to placate the angry mob of now-bereft bitcoiners?

Of course, the flip side is supposed to be "well, if we didn't do new things no progress would be made" -- but I've yet to see anyone say "Lets test this idea out responsibly just in case we totally fuck something up." It's all SHOVE it into the live production network and see what chaos it causes - "Oopsie!, we're just trying new and crazy ideas guys, so sorry for screwing over the rest of the community."

There has to be a better way than working on the jet engine while at 30,000 feet in the air - just saying.



Several people have raised the issue of blockchain spam after I did and I think it is very valid.  Do we really need data streams (for example) permanently encoded in the bitcoin blockchain for all time?  Your use of bitcoin will likely drive txn fees much higher, which will cause large chilling effect on MasterCoin and a smaller one on bitcoin.  Let's try to keep the bitcoin txn fees low, because regardless of whether MC succeeds or not, it would be nice to protect our BTC stashes :-).  So I'm quoting my own suggested solution (massively reworked for clarity) because it was not responded to the 1st time:


You have done some amazing work in cramming this protocol entirely inside bitcoin.  I skimmed this but did not analyze.  But there seem to be clear issues with this such as data density (space efficiency), complexity (bugs), lack of control over the underlying Bitcoin protocol (as BitcoinX discovered with the "dust" patch), and possibly a perception of SatoshiDice-like spamming from the point of view of Bitcoin-only users.  At the same time the critical issue with alt chains is the lack of atomic exchange between BTC and the altcoin.

So, have you considered running a parallel chain for MasterCoin, but one that ALSO uses your research into overlay protocols to stick the minimum possible information into the bitcoin chain?  For example, when trading bitcoin for mastercoin (atomically) there would need to be a txn in bitcoin with overlay data that the Mastercoin chain can reference.  The Mastercoin side would be IN the Masterchain blockchain but would be invalid unless it finds the partner bitcoin txn.

Frankly, I think that that's it.  That's the ONLY time the bitcoin chain need be used.

MasterCoin clients would need access to both chains.  This would require no more data than an overlay protocol would use -- its just a different organization.  But that organization solves all the problems I described above.  And I think that with clever coding someone in the future could allow a "non-btc-validating" MasterCoin client that sees only the MasterCoin chain (and can only issue intra-MasterCoin transactions).  Basically, "btc-validating" miners (all MasterCoin miners would be btc-validating) would add something to the MC blockchain that "commits" the prior MC txn.   So non-btc-validating clients would look for that commit txn before validating the MC txn.
legendary
Activity: 1246
Merit: 1010
I'm going offline until tomorrow, but you guys have my sincere thanks.

Ripper and vokain, I didn't officially set up a bounty, but I would like tip these two guys (maybe 3 BTC each) once I start tapping Exodus Address funds September 1st. Do you approve?

bytemaster needs a tip for his insane persistence, and d'aniel for actually describing the attack that bytemaster felt must exist.

After reading all bytemaster's posts:  Wow!  Bytemaster that 10BTC really was worth it you've really internalized what I was saying; and you're about to make 3 of it back!  As I learned, sometimes you have to attack the same idea from 50 different angles before the person understands the point.  I tried, but since dacoinminster accepted that his "GoldCoin" could fail but was willing to go forward I gave up.  I think he was thinking "years" while I was thinking "as soon as gold/mastercoin rises 5%"...  Kudos to d'aniel for finding that magic recipe.  

Ok to business: 1 attack, 1 issue:

Attack:
1. register goldstream
2. create goldcoin based on goldstream
3. Wait...Let people buy into it.
4. inject bad goldstream data indicating gold's price has crashed.
5. buy a huge amount for almost nothing (escrow will be minting like mad to match gold's supposed price)
6. resume with correct gold data.
7. "Failed" underwater currency gets closed out.  You get paid out of the escrow for your goldcoins -- essentially stealing the backing from the people who purchased goldcoins at real values.

(bytemaster, did you ever solve this "oracle" trust issue? -- point me to your latest spec)

Issue:

from "registering a data stream, point 5:"
Quote
Label = “Gold\0” (5 bytes) (if a second “Gold” is registered in this sub-category, it will be shown as “Gold-2”)

Two people could independently issue bitcoin txns to create a new currency into the same block and so inadvertently use the same label.









full member
Activity: 146
Merit: 100
Wow dacoinminister you really are that thick that they had to spell it out over and over before you finally got what we were saying. D'aniel was basically describing what I was talking about. No wonder you didn't understand my post either.
legendary
Activity: 1890
Merit: 1086
Ian Knowles - CIYAM Lead Developer
Quote
If the OP is interested then I would be happy to create a project on CIYAM Open for this (subject to *zero* fees).

Yes, I finally took a look at the slideshow - it looks like a really cool way to organize bounties! (But how does your website make money?)

Do you have a thread for this somewhere else? (So we don't clutter up this one)

Sure - CIYAM Open's topic is here: https://bitcointalksearch.org/topic/ann-ciyam-open-put-your-dibs-on-tasks-for-btc-132006 and also welcome to PM me with questions or more details.

In regards to making money eventually new Projects will require a fee to list but as a way to get the concept (and of course the website) promoted I am providing free listings for the first 10 projects.
hero member
Activity: 770
Merit: 566
fractally

No need for a *massive* short position, you can allow many people to take out short positions in the same currency and collectively they form the short position and are the 'creators'.

If you have a problem with the margin-call, the least you can do is enlighten me to return the favor.

I don't doubt that you have it working for BitShares, but the mechanism for lining up more short positions to replace people who are forced to close their positions is fuzzy to me. What if not enough people want to short? I'm just not convinced that the longs balance the shorts over the long term.

Ugh, I fear what Pandora's box I might be opening by bringing this up. We may have to move to a different thread if this goes more than a couple posts!

Also, I'm going offline now. For reals Smiley

Talk to you guys tomorrow.

If there exists demand for BitGold then the price will be bid up based upon the current supply.  At some point the price is above market value and anyone could make money by shorting it.    BitGold has potential to go above market value in 2 ways:  1 as a result of a short squeeze & 2 due to higher demand for BitGold relative to the supply.     The theory is that if there is easy money to be made (price above parity) then someone will short it until it reaches parity.


 
legendary
Activity: 1260
Merit: 1031
Rational Exuberance

No need for a *massive* short position, you can allow many people to take out short positions in the same currency and collectively they form the short position and are the 'creators'.

If you have a problem with the margin-call, the least you can do is enlighten me to return the favor.

I don't doubt that you have it working for BitShares, but the mechanism for lining up more short positions to replace people who are forced to close their positions is fuzzy to me. What if not enough people want to short? I'm just not convinced that the longs balance the shorts over the long term.

Ugh, I fear what Pandora's box I might be opening by bringing this up. We may have to move to a different thread if this goes more than a couple posts!

Also, I'm going offline now. For reals Smiley

Talk to you guys tomorrow.
legendary
Activity: 1260
Merit: 1031
Rational Exuberance
I'm going offline until tomorrow, but you guys have my sincere thanks.

Ripper and vokain, I didn't officially set up a bounty, but I would like tip these two guys (maybe 3 BTC each) once I start tapping Exodus Address funds September 1st. Do you approve?

bytemaster needs a tip for his insane persistence, and d'aniel for actually describing the attack that bytemaster felt must exist.
hero member
Activity: 770
Merit: 566
fractally
It is more attractive because they get to double their gains as MC appreciates against GC.    Say 1 Oz of Gold is worth 100 MC.   Suppose Alice has 100 MC she could create 1 GC by selling it for 100 MC.   You now have an escrow fund with 200 MC (100 from buyer, 100 from seller) that is owned by Alice and 1 GC owned by Bob.    Alice is not allowed to spend the Escrow fund until she buys back the 1 GC.

If GC goes down 50% (MC doubles in value) then Alice can buy back 1 GC for 50 MC and walk away with 150 MC, a profit of 50 MC.  These 50 MC are also worth 2x as much.

As long as the network forces Alice to cover her position before 1 GC is worth 150 MC then Bob has nothing to fear and can be 100% certain the GC will always be worth 1 Gold Coin. 

That is very elegant, but of course then I have the "margin-call" problem you alluded to. And I promised myself I wouldn't argue with you about that Smiley

Still, this could be part of the solution . . .

No need for a *massive* short position, you can allow many people to take out short positions in the same currency and collectively they form the short position and are the 'creators'.

If you have a problem with the margin-call, the least you can do is enlighten me to return the favor.
legendary
Activity: 1260
Merit: 1031
Rational Exuberance
Keep in mind that the price of the backing is uncorrelated with the price of the pegged-to asset, and it's just a matter of time before their ratio randomly walks below 1.  Plus, capital costs money, so there are limits to how overcapitalized the currency can be (fees have to remain competitive).

Indeed. That's why I expect I will need to make sure all currencies start out over-funded, and automatically liquidate if/when they eventually fall back to 100%. The over-funding will have to come from the currency creator, who will have various ways to make a profit if the currency is successful (possible methods: getting a cut of the transaction fees and/or getting excess money from the escrow fund and/or something like the massive short position bytemaster proposed)
sr. member
Activity: 461
Merit: 251
Keep in mind that the price of the backing is uncorrelated with the price of the pegged-to asset, and it's just a matter of time before their ratio randomly walks below 1.  Plus, capital costs money, so there are limits to how overcapitalized the currency can be (fees have to remain competitive).
legendary
Activity: 1260
Merit: 1031
Rational Exuberance
It is more attractive because they get to double their gains as MC appreciates against GC.    Say 1 Oz of Gold is worth 100 MC.   Suppose Alice has 100 MC she could create 1 GC by selling it for 100 MC.   You now have an escrow fund with 200 MC (100 from buyer, 100 from seller) that is owned by Alice and 1 GC owned by Bob.    Alice is not allowed to spend the Escrow fund until she buys back the 1 GC.

If GC goes down 50% (MC doubles in value) then Alice can buy back 1 GC for 50 MC and walk away with 150 MC, a profit of 50 MC.  These 50 MC are also worth 2x as much.

As long as the network forces Alice to cover her position before 1 GC is worth 150 MC then Bob has nothing to fear and can be 100% certain the GC will always be worth 1 Gold Coin. 

That is very elegant, but of course then I have the "margin-call" problem you alluded to. And I promised myself I wouldn't argue with you about that Smiley

Still, this could be part of the solution . . .
hero member
Activity: 770
Merit: 566
fractally
Say, why don't you allow the creator to sell GC provided they put as much value into the sale as they receive from the sale and then hold by the creator's funds and the buyer's funds in escrow.  The creator can get their funds back when then repurchase the GC and thus destroy it.   The creator profits if GC goes down relative to MC and can repurchase for less.

That might work too, if we can somehow make that more attractive than just holding MasterCoins instead . . .

It is more attractive because they get to double their gains as MC appreciates against GC.    Say 1 Oz of Gold is worth 100 MC.   Suppose Alice has 100 MC she could create 1 GC by selling it for 100 MC.   You now have an escrow fund with 200 MC (100 from buyer, 100 from seller) that is owned by Alice and 1 GC owned by Bob.    Alice is not allowed to spend the Escrow fund until she buys back the 1 GC.

If GC goes down 50% (MC doubles in value) then Alice can buy back 1 GC for 50 MC and walk away with 150 MC, a profit of 50 MC.  These 50 MC are also worth 2x as much.

As long as the network forces Alice to cover her position before 1 GC is worth 150 MC then Bob has nothing to fear and can be 100% certain the GC will always be worth 1 Gold Coin. 
legendary
Activity: 1260
Merit: 1031
Rational Exuberance
I think I'll probably just automatically close down any currency that falls under 100% funded. There's really no way to stop the "d'aniel/bytemaster attack" once the escrow fund goes much below 100%.

I know I didn't explicitly offer a bounty, but I'd like to send you guys both a tip from the Exodus Address if my oversight board approves. I owe you a big debt of gratitude for finding this vulnerability.
legendary
Activity: 1260
Merit: 1031
Rational Exuberance
Say, why don't you allow the creator to sell GC provided they put as much value into the sale as they receive from the sale and then hold by the creator's funds and the buyer's funds in escrow.  The creator can get their funds back when then repurchase the GC and thus destroy it.   The creator profits if GC goes down relative to MC and can repurchase for less.

That might work too, if we can somehow make that more attractive than just holding MasterCoins instead . . .
Jump to: