Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - MolonLabe

Pages: 1 [2] 3 4
16
You only got the votes in your separate private chain though, the rest of the network probably would not accept you alternate reality, provided it doesn't go back all the way to the genesisblock.

Or are you talking about isolating unsupecting people in your alternate reality, that would require quite a bit of control over network connections as well, but would not affect the main network I suspect.
How does a node which just connected 10 minutes ago know which of the two realities is 'alternate'?

If you go all the way back to the genesis block and have 10% in the genesis block balance...  you will never be able to produce a chain more than 1/10 the length of the public chain.  It just is not possible. 

Remember: a block is not produced every 30 seconds unless all delegates are on line.  If a delegate is not on line to produce a block in that timeslot the time slot is skipped and that chain is forever one block shorter than it could have been. 
Only at first. Eventually I am producing a block every 30 seconds with all the delegates I control. In my alternate reality I am, temporarily, only broadcasting the transactions which allow my delegates to take over. Don't the transactions elect delegates? And everyone is fired after one round for failing to produce a block, anyway.

This would result in a permanently shorter blockchain, though, by (I assume 100 dels and I control 4) 96. However, could I not continue to build this chain, waiting for a cumulative total of 97 blocks to be missed (for one reason or another)? My chain could include the exact same transactions, such that when I substitute it for the existing chain people don't notice (except the delegates, who are are fired immediately). Even if this takes months, it would be worth doing. Eventually 97 blocks will be missed somewhere. Then I will have the longest chain?

Let me also ask this: What if I'm 8th and 9th in line, person 7 submits their block, but I lie and claim that person 7 didn't submit a block. I sign block 8 on top of block 6, then I sign block 9 on top of block 8. What does person 10 decide to do? My chain is now longer. Does person 10 fire person 7? For your sake I hope not, but I don't see how person 10 intends to proceed. What if I also control person 11 (but no others, only those 3)? The reverse of this attack is to selfish-mine two blocks in a row, or ddos a delegate to stop him from learning of a block in time. Surely one of these two attacks must hurt, if the other does not.

17
Quote
2] You go back in time, and build a large fake chain which ONLY contains a new series of transactions, all of them from address A to other addresses for which you have the private key.
3] You use these transactions to elect an entirely new set of 100 delegates (as you control the only votes). This may not be possible quickly, but when you cant, you simply claim that the other delegates (who aren't here) failed to sign your block (and disqualified them). For a while, there might be only 3 delegates actually signing on this chain, but you quickly establish 100.

This is not possible, someone with a minority of shares cannot elect 100 delegates.  All shares are voting for someone at some time.  You can change your vote, but not create new votes.   End result is that if you control 10% of the shares, you can only effect 10% of the delegate selection and thus your secret chain would only ever be able to produce 1/10 of the blocks of the public chain.

I don't have a minority, I have all the votes, don't I?

18
Let me try again. Same basic idea.

1] You owned a large number of coins at some time in address A, and have 2 or 3 delegates in a row, but have since sold the coins.
2] You go back in time, and build a large fake chain which ONLY contains a new series of transactions, all of them from address A to other addresses for which you have the private key.
3] You use these transactions to elect an entirely new set of 100 delegates (as you control the only votes). This may not be possible quickly, but when you cant, you simply claim that the other delegates (who aren't here) failed to sign your block (and disqualified them). For a while, there might be only 3 delegates actually signing on this chain, but you quickly establish 100.
4] Reconstruct most of the rest of the transaction history, optionally including "sending the large number of coins from step 1 where they really went in real life". You control 100% of the delegates, and can see the real chain, so this is trivial. Rebuild reality up to the present day.
5] Repeat 2-4 1000 times with different delegate public keys, so all 1000 fake + 1 real chains look almost the same, but have different delegate groups.
6] Release the 1000 chains and wait for one of them to stick, using a Sybil attack (new nodes don't know which chain is real). You have now made yourself 100% of the delegates and can double spend as you wish.

19

The attack only works if you buy 51% of the delegates because regardless of how much computational power you have you can only produce one block per delegate per round (a round is where every delegate produces a block).   
No, I am saying you have a few delegates in a row, and attack within a single round.

Lastly, once you did reveal your secret chain (or if it were accidentally discovered) evidence that you signed two blocks with the same timestamp will get you fired from both chains.
I know.

Conclusion: this attack is just the 51% attack carried out with leverage.   However, it has one other problem.  The main chain ignores all forks older than a certain date provided you have the majority of delegates producing blocks on your fork.   The secret chain wouldn't be accepted even if it were 'longer'. 

The whitepaper says:
2.4 Resolving Chain Forks
Like proof of work and other proof of stake systems, the best block chain is the longest valid chain.

But, how does the the software know which chain is valid? If two blocks are signed, the delegate is fired, but which block succeeds? I assume the NEXT delegate (which I also control) will decide, that is how I double spend.

20
I'm confused about something.

Here's what I'm imagining:

Phase 1: Establish Large Stake
a] Borrow 1 million USD
b] Purchase 1 million USD's worth of BTS (or 4% of the total or whatever).
c] Send these transactions to yourself a few times, using these votes to appoint different versions of yourself as a few delegates in a row. Play by the rules for now, including saving up as much coin age as possible.
d] Sell BTS for ~1 million, right as your delegates are in a row (you may have some profit or loss here).
e] Repay your loan.

Phase 2: Build Fake Chains
a] Enter a VM/Supercomputing environment where you can easily do many calculations per second.
b] Take the current blockchain from point (1.d), where you have a few delegates in a row.
c] Using the existing 'real' transaction history, build several thousand parallel chains, one with the 1d sale transaction (which is broadcast), but all others without (which are private).
d] When the last delegate-controlled-by-you is up, proceed to Phase 3.

Phase 3: Profit
a] Broadcast the fake chains, and have your last delegate sign them all quickly (you won't even have to validate, as you know your own chains inside the VM). The thousand attack-chains are now the longest, but none include the 1c sale transaction. Have your delegate refuse to sign the 'real' chain (although you can claim he just 'did not get to it' in time with so many other chains to sign).
b] The next delegate will pick the longest chain (the attack chain) and sign it.
c] One or all of your delegates will be fired (or, possibly, the average user will never notice that anything happened, and none will be fired).
d] In a few blocks, double-spend-sell BTS in step 1d for 1 million.
e] Free million!


What are the problems with this?

21
I thought that, to go long BitUSD, you spent BTS to receive BitUSD. That's usually what people mean when they say they went long stocks (that they spent dollars on stocks). If the price of stocks in terms of usd has gone up, then the price of usd in terms of stock has gone down. So buying BitUSD is putting pressure on the price of BTS, not supporting it. Or have I misunderstood?
2nd way:
Buy BTS first and then use it to buy bitUSD within the BTS system.
You are wrong. Reread what I wrote earlier about who would act in the way I describe. If you aren't going to read it the first time, I don't see why I should repeat myself.

Quote
Really? I can go long an ounce of gold, and short a barrel of oil. Each of those transactions could be described as "buying some amount of USD in the future", but I would NOT then describe them as "an investment in USD". You must be saying that the BTS system will be valuable, and BTS-owners will receive a sizable quantity of fees (paid in BTS, I assume). Even if this were true, it wouldn't be a reason NOT to sell those BTS off during a collapse in value.

The difference is that BitUSD is only redeemable in BTS where as gold/oil contracts are redeemable in gold/oil (in theory).   So at the end of the day BitUSD is just a claim on BTS.  You do not buy BitUSD unless you expect BTS to have value in the future with less volatility than the collateral can support. 

So think of BitUSD as an alternative investment that is highly correlated to USD but is not USD.
That's not true. Gold/Oil contracts may be redeemable for gold/oil, but they usually aren't. In practice, those that are so redeemable almost never are (only industrial firms which actually needed to buy gold/oil anyway do such transactions, typically through intermediaries). Moreover, although you say "You do not buy BitUSD unless you expect BTS to have value in the future" you have not shown why. I just described a second reason why one might buy BitUSD: precisely because they feel that BTS will have a LOWER value in the future. This is usually why people buy gold contracts! Separately, you are swapping "lower" with "zero" almost randomly.

Manipulating the real value of BTS is like manipulating a penny stock (initially) but becomes increasingly difficult as the network grows. 
You keep saying this, yet you ignore what I write down about everyone, including BTS owners, adopting a certain profit-maximization strategy. In what I described, "network growth" is completely irrelevant.

Unfortunately the network does not know the real BTS / USD price and is operating entirely on the BTS / BitUSD price.   So to crash BTS in the BTS/BitUSD price means you must buy up a lot of BitUSD in a market where there is no one willing to short BitUSD.   So the window of attack is in the arbitrage delay between BTS/USD price changes and BTS/BitUSD price changes.  Thus it requires speed to trigger a 'false margin call' and this is why having minimum market depth and maximum price movements helps give all market participants TIME to assess the reality of the value change in BTS/USD before a chain reaction can gain speed and force shorts out of their position at a loss based upon noise rather than fundamentals. 
Assume that BitUSD exchange rate tracks the USD exchange rate perfectly, if you want. I doubt it will, but it makes no difference to what I described.

Like we said earlier, if you could require 100x margin then you would be unable to shake someone from their position, but  you expose yourself to the monopoly attack when someone buys up all of the BitUSD to force the margin call.    Having 2x margin increases the risks of the shorts, but the good news is that 2x is just the minimum margin and any short that wishes to have a defense against certain market manipulation attacks would be proactive about maintaining higher collateral than everyone else.   In time the market will learn what to expect in terms of volatility.
Cost of capital is not free. 100x collateral is permanently unworkable. Even 2x is much higher than is required today. As the attack succeeds, someone who put up 4x capital will already be halfway to the next failure...they are effectively at 2x capital.

Shorts are permanently unsafe in BitsharesX. In the real world, people would sell an asset if it were worth 10 billion dollars. They'd sell and retire. In BitsharesX if a BitAsset climbs to 10 billion BTS, and BTS is almost worthless, no one will sell. You are assuming these markets will behave the way regular markets do.

!!!This is not an ‘attack’!!!

OK – please move this discussion to something else – like ‘Miner feasibility issues on trading platforms with no real deliveries’ or even better  ‘OMG, OMG margin calls make the shorts real uncomfortable’ or whatever you want to call it.

!!!This is not an ‘attack’!!!
It is still an attack. One individual or group could make this more likely to happen. I did not even get a change to explain these methods, as I am still reviewing the basics. Let's get real: You are afraid other people will read this thread, and sell their PTS, and that would mean you were wrong.

I'm sorry to rain on your parade, but when you grow up, you'll learn that, although you can "move" a conversation you don't like "away", you can't "move" reality "away". Bytemaster understand this. Good luck with the rest of middle school! !!!I hear they give extra credit for !'s !!! !!!!!!!!!!!! !!!

22
you claim they can make money is by selling BTS off chain and buying BitUSD on chain... but these two actions are mutually exclusive as buying BitUSD is ultimately buying a variable amount of BTS.
Perhaps I did not explain...you either use BTS for one or the other. You go long whenever you can and sell on an external exchange otherwise (as long as you are long somewhere). This is less 'attack' and more 'defense', and does not need to be deliberate contrived by anyone.

So buying BitUSD is generating demand for BTS and supporting the price.   
I thought that, to go long BitUSD, you spent BTS to receive BitUSD. That's usually what people mean when they say they went long stocks (that they spent dollars on stocks). If the price of stocks in terms of usd has gone up, then the price of usd in terms of stock has gone down. So buying BitUSD is putting pressure on the price of BTS, not supporting it. Or have I misunderstood?

So if you want to execute this attack for the purpose of making money the only way to do so is to short BTS off chain which means borrowing from someone off chain.
You might do this, but you could also just sell the BTS that you currently own. If BTS/USD price is falling, many will decide to sell (surely you do not believe that the BTS/USD price will always go up?).

So if buying BitUSD is viewed as a proxy for buying some amount of BTS in the future where the amount depends upon the future market value of the dollar or 2x the BTS you could have purchased with USD today.    Thus BitUSD is merely a partial hedge against BTS value falling and is still an investment in BTS.
Really? I can go long an ounce of gold, and short a barrel of oil. Each of those transactions could be described as "buying some amount of USD in the future", but I would NOT then describe them as "an investment in USD". You must be saying that the BTS system will be valuable, and BTS-owners will receive a sizable quantity of fees (paid in BTS, I assume). Even if this were true, it wouldn't be a reason NOT to sell those BTS off during a collapse in value.

So if the system has 0 value then it does not work, but as long as it has some value it will work.  An attacker must buy before he can sell and must own a large amount.  Attacks are not likely to be profitable because at the end of the day he ends up with BitUSD converted to BTS which is worthless as a result of the attack than it was when he purchased it originally in order to execute the attack.
Actually, I assumed that, by your own design, the BTS he received post-attack, while being at a lower market price, would be at a higher market quantity and still retain all of their value. The attack-profit comes from the initial raiding of the shorts, but also by selling BTS before anyone else can.

So selling 'off-chain' is the only way to making money and in this sense it is like bitcoin, very hard to make money on the down side because few will lend BTC or BTS in the real world necessary to short it in the real world.
Why do you assume that people need to borrow BTS to sell? Even those who believe in the BTS philosophy prefer having more money to less money. They will sell if it benefits them, and one way to do that is to go long an asset (of course, my attack murders all the shorts, so the only other way is to sell on an external exchange).

So I still conclude that your attack is not 'automatic' nor 'assumed' and that it is not profitable.    It would have to be triggered by first buying into the system to prop up the price...
Not true. Can (and will) be triggered by existing True "BTS-Believers".

then buying a ton of BitUSD which will cause the price to rise
Each rational person will buy a little BitUSD, if only to protect themselves from this attack. This itself is enough to start the attack.

and cause new shorts to enter.
Anyone who shorts inside of BitsharesX is going to regret it. I have already explained why. Those who don't learn the easy way will eventually learn the hard way, or run out of money. The BitAssets allow people to flee BTS even more easily than they would otherwise.

The strategy of buying BitUSD until a short squeeze results in more and more collateral being put up for the later BitUSD purchases.   So some early positions may get squeezed but the later ones will not. 

In fact I think attempts at buying up BitUSD will only strengthen the network... so all that remains is attempting to manipulate the real world values. 
Sorry, this is too vague for me. "later ones", "strengthen", "real world values"?

23
   Your argument that you should be long BitUSD because you can get more BTS when margin is called because in your estimation the network is worthless.
Not true. I ONLY assume that people prefer having more money to having less money. I do, separately, believe that the network is worthless, but I plan to carefully build that argument up from a few pieces, including this one.

Volatility is constant and taking your bet is extremely risky because of the single unknown component: time.
I assume you mean that volatility is 'always present' (obviously it is highly variable). We agree that volatility exists, I think.

You are betting a run-away short squeeze is inevitable
Surely you agree that one margin-call will happen eventually? I do believe that I can prove that one margin leads inevitably to a run-away shorts squeeze, and (moreover) the protocol must be prepared to handle one even if you never expected one.

and when this happens the value of BitUSD becomes pegged to the value of the collateral.
At the instant of the margin call, yes. Which is why manipulated prices will stick.

The market participants recognizing that going long BitUSD is just like going long BTS and that they therefore have nothing to gain by attempting to 'join an attack'.
The other half of the equilibrium is selling BTS on external exchanges. This is where the attack continues (until all shorts are squeezed).

The fact remains that BitUSD would be serving its purpose most of the time with any deviations being short-lived.
Why wouldn't the attack happen immediately of its own volition, as a result of greed, and partially as a result of risk-aversion on the part of innocent traders? With some heavy-handed and expensive support from a dedicated team, the market may appear to be healthy (until this support is withdrawn).

So by your estimate no-one should go short which means no one will be able to go long.  So if a market forms at all then your assumption is wrong. 
I am describing equilibrium strategic behavior, if a market forms at all, it will mean that some participants are irrational (prefer having less money to more money). These individuals will lose their money, quickly if other participants are rational, slowly if few are. I am NOT assuming that everyone is rational, or that everyone is aware of my attack/the risks involved in going short.

24
Does the fact that bts earns income from bitusd and bts transactions change the argument? It seems like if I had no guess about their relative directions I would go long bts over bitusd to capture income. I'd much rather x% of current tx fees as income than not.
Why not??   Because the market values bts at non 0 value.
Sent from my iPhone using Tapatalk

I don't think I'm getting my point across. Imagine that everyone is doing as I suggest in bold (we can go over "Why is everyone acting this way?" and "Is this behavior inevitable?" after we sort this first part out).

individuals should always be long BitAssets and short BTS, both within BitsharesX and on external exchanges, and always sell the BTS they receive as soon as possible

Then none of what you are saying matters, because if you deviate from this strategy (and hold BTS), very soon you will be margin called for your BTS, and lose them. Does this make sense?

25
General Discussion / Re: A Call to the Truthcoin Prediction Market
« on: May 09, 2014, 06:56:37 pm »
GitHub Stats

Bitcoin: 5372 stars, 5726 commits, 198 contributors
Bitshares: 77 stars, 802 commits, 20 contributors
Truthcoin: 183 stars, 106 commits, 2 contributors


26
Ok I feel at least that you essentially understand what I am concerned about.

You are right when you say that it is all largely arbitrary, and traders will be able to influence the price through their shared opinion of what it should be.

However, although the price is largely arbitrary, it is not completely arbitrary, and this tiny constraint (the margin call) is what I want to emphasize.

To be clear, the new attack is:
1] Start the "Up and Away" attack (either directly, or through rumor/panic/misinformation) on a tradable BitAsset (such as BitBTC or BitUSD).
2] Sell BTS for the real-life version of that BitAsset.

Let me try a metaphor. Marbles are rolling down a halfpipe in a hill, randomly coasting to the left and right of the halfpipe nadir. If they somehow make it up and over the left side, they land in a new, lower, halfpipe (margin call), yet if they make it up the right side nothing happens (the other halfpipe is too high).

I would expect that, eventually, the marbles will land in the lower/lowest halfpipes. For this reason, individuals should always be long BitAssets and short BTS, both within BitsharesX and on external exchanges, and always sell the BTS they receive as soon as possible. The only logic available to traders points in the direction of this attack, everything else is just an arbitrary "I hope".

If they do this, they have a free option to double their money. If everyone does this, the first people who tried it will succeed the most, so people are rewarded for trying it immediately, and following the first movers. If no one did this, purely random market volatility would eventually cause a margin call somewhere, so users are still incentivized to "lean long", ie be more long than short (than they otherwise would be), foreseeing this, traders would themselves go long purely to capture this bias. Assuming reasonable time value of money and convenience yield, there is no profitable deviation from the boldface strategy (that I can see), and anyone who does not follow it would do better if he/she followed it, so I therefore assert that it is the unique Nash Equilibrium to this payoff scheme.

When you say that "traders will restore the price to the real price", aren't you invoking circular reasoning? BTS does not know what the "real price" is, it gets it from the traders. I realize that we can talk about it here but the software wouldn't understand us (the way it would understand a margin call). 2x, 3x, 10x, any amount of margin would not be enough.

It isn't just a bubble, where you hope to sell to a greater fool, the margin call guarantees that you can force other people to buy your stuff. The bubble doesn't become unsustainable and pop, it continues indefinitely. Why shouldn't BitBTC cost 40 trillion BTS? Why not 80 Trillion? Why not 9999 trillion or more?

27
Hey these responses seem very interesting and to take the attack seriously but I'm on vacation so I'll get back to everyone on Thursday probably.

I think I did mean a positive up left cell, perhaps my previous formatting experience trained me to avoid the + 1 . Of course as you must know it really makes no difference. I can't remember what I was thinking but I do remember that the post-matrix post replaces that one.

28
It has been over a month, and no response to my critical manipulation. I myself have not thought of a way to prevent it.

Neither "limiting trading based on market depth" nor "maximum price movement per block" will prevent a sudden decrease in the market price of USD/BTS on external exchanges (which are absolutely required if one is using PoS). This price decrease will de-collateralize everything, resulting in cascading margin calls that cause BTS to fail to track every asset (as they will all be doubling in value toward the same infinity, as shorts sell to avoid Mcalls and longs sell to cash out their BTS [both at rates "faster" than the collapse in external USD/BTS thanks to the new 'maximum price movement' requirement (which is artificially slowing the internal USD/BTS)]).

Moreover, I feel that the fee structure...

Fees are calculated based upon how much of the order book you walk.

Given bids of 99, 98, 97, and 95.... to buy it all up in one go you enter an ask for 4@95.   You will receive 4*95=380 rather than 99+98+97 = 389 for a fee of '9'.    Obviously, if you attempted walk the book all the way down to 50, your fees are going to average 25%.

...encourages low volume (more trades = higher fees, as is obvious in the above example, 1 bid=0 fees), and large spreads (as you literally pay for every dollar the market-price moves past your existing bids/asks). As volume collapses, the market may lose all of its liquidity completely. Strategically, people will be hesitant to enter a soon-to-be-illiquid market.

All phenomena create an equilibrium of non-tracking and no trade.

( This thread promises tips in exchange for "finding attacks", but I have not yet received any tips. My Bitcoin address is 1DSrFGXJdsFw2MsrgwHeQxWq1djQk4jcyD )

29
General Discussion / Re: Delegated Proof of Stake
« on: April 04, 2014, 05:19:48 pm »
Ok, very cool so far.

If someone goes a minute without creating their block, I assume the next guy in line is making two in a row? Or the interblock time is double what would normally be, or the whole line is shifting upwards.

Ok, say someone is about to submit a block, I'm next in line, I submit their block and make it look like they were too late. They are blacklisted? I know time relies on NTP but how is it enforced?

30
General Discussion / Delegated Proof of Stake
« on: April 04, 2014, 03:48:24 pm »
I'm sure I'll think of more questions, but so far I only have:

What if a representative broadcasts 2 different blocks at the same time?

Pages: 1 [2] 3 4