BitShares Forum

Main => Technical Support => Topic started by: fav on July 08, 2015, 09:22:20 am

Title: Bitcoin under attack meanwhile at BitShares 2.0
Post by: fav on July 08, 2015, 09:22:20 am
Bitcoin under attack with a growing 50k 60k open Transactions in the mempool (https://tradeblock.com/blockchain)

(http://i.imgur.com/xNS42Lg.jpg)

how does BitShares prevent an attack like this?

* BitShares 2.0 will be able to handle at least 1k TPS at the beginning (according to cryptonomex' last statement (https://bitshares.org/blog/2015/06/08/measuring-performance/))
* BitShares have minimum TX fees

(http://i.imgur.com/vlbL7ka.jpg)

Now the real question regarding smartcoins

how do we prevent this for say BitUSD - where the delegates/pool pay tx fees, IIRC?
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: testz on July 08, 2015, 09:25:43 am
Bitcoin under attack with a growing 50k open Transactions in the mempool

Real time monitor: https://blockchain.info/unconfirmed-transactions
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: fav on July 08, 2015, 09:27:57 am
Bitcoin under attack with a growing 50k open Transactions in the mempool

Real time monitor: https://blockchain.info/unconfirmed-transactions

I refer to https://tradeblock.com/blockchain
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: xeroc on July 08, 2015, 09:40:56 am
Now the real question regarding smartcoins

how do we prevent this for say BitUSD - where the delegates/pool pay tx fees, IIRC?
This is a good questions and I am still waiting for a public documentation about "How fees for bitassets are payed".

Can you point me to a mumble recording in which BM addressed that?
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: fav on July 08, 2015, 09:43:45 am
Now the real question regarding smartcoins

how do we prevent this for say BitUSD - where the delegates/pool pay tx fees, IIRC?
This is a good questions and I am still waiting for a public documentation about "How fees for bitassets are payed".

Can you point me to a mumble recording in which BM addressed that?

sorry, don't remember exactly. let's wait for BM :)

maybe something like

BitUSD TX
BTS Fees > pool/delegates < BitUSD fees < sender
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: monsterer on July 08, 2015, 09:44:52 am
Right now, it's possible to DDOS the network in exactly the same way as bitcoin is suffering.

All you need do is create an MPA with very low value, get it voted in (admittedly, the hard part), then create millions of transactions for it - the fee is paid only in MPA units, so it will be a very low cost attack.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: Erlich Bachman on July 08, 2015, 09:59:22 am
Right now, it's possible to DDOS the network in exactly the same way as bitcoin is suffering.

All you need do is create an MPA with very low value, get it voted in (admittedly, the hard part), then create millions of transactions for it - the fee is paid only in MPA units, so it will be a very low cost attack.

all transactions need to have a minimum significant value otherwise we are spam toast.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: arhag on July 08, 2015, 10:41:25 am
Right now, it's possible to DDOS the network in exactly the same way as bitcoin is suffering.

All you need do is create an MPA with very low value, get it voted in (admittedly, the hard part), then create millions of transactions for it - the fee is paid only in MPA units, so it will be a very low cost attack.

Umm, I don't think so. In 0.x I believe you need to pay 2 times the BTS fee converted into the MPA units using the median price feed (although this MPA fee goes into the yield pool rather than to the delegates). In 2.0 the solution is more elegant. The minimum fee paid needs to be whatever the required network BTS fee is for the transaction and it goes into the reserve pool, but you can pay the fee using the MPA by using the MPA's fee pool. The issuer maintains a fee pool filled with BTS and publishes the core_exchange_rate (the price at which they are willing to exchange the MPA for the BTS in the fee pool for the purpose of paying transaction fees) and the blockchain takes care of conversion and fee payment automatically.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: monsterer on July 08, 2015, 10:48:14 am
Right now, it's possible to DDOS the network in exactly the same way as bitcoin is suffering.

All you need do is create an MPA with very low value, get it voted in (admittedly, the hard part), then create millions of transactions for it - the fee is paid only in MPA units, so it will be a very low cost attack.

Umm, I don't think so. In 0.x I believe you need to pay 2 times the BTS fee converted into the MPA units using the median price feed (although this MPA fee goes into the yield pool rather than to the delegates).

I stand corrected! Presumably there is some logic to protect against a price feed of 0?
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: xeroc on July 08, 2015, 10:53:00 am
Presumably there is some logic to protect against a price feed of 0?
At least my feed script does not publish a price of "0" ..
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: arhag on July 08, 2015, 10:53:40 am
Right now, it's possible to DDOS the network in exactly the same way as bitcoin is suffering.

All you need do is create an MPA with very low value, get it voted in (admittedly, the hard part), then create millions of transactions for it - the fee is paid only in MPA units, so it will be a very low cost attack.

Umm, I don't think so. In 0.x I believe you need to pay 2 times the BTS fee converted into the MPA units using the median price feed (although this MPA fee goes into the yield pool rather than to the delegates).

I stand corrected! Presumably there is some logic to protect against a price feed of 0?

Hmm, don't know. But even if so I doubt there would be any logic against a really small number close to zero. The risk of that should be low because that would require the majority of the delegates to want to intentionally spam the network (and we've got bigger problems if they want to do that). Besides you can just vote them out if they do such a foolish thing.

Anyway, it doesn't matter with 2.0 because the fee pool method is superior. An issuer would be crazy to set a core_exchange_rate well below market rate because they would then essentially be throwing their money away and eventually run out.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: monsterer on July 08, 2015, 11:02:43 am
Anyway, it doesn't matter with 2.0 because the fee pool method is superior. An issuer would be crazy to set a core_exchange_rate well below market rate because they would then essentially be throwing their money away and eventually run out.

The design specifics of privatised bitassets in 2.0 elude me.

I'm presuming you're saying that because 2.0 requires an issuer to back his MPA with some kind of collateral, or other insurance? ...Because if there is no cost to issuing an MPA, what's to stop an attacker just creating a bunch of them with the transaction fee set to some insignificant value, and just DDOS the network?
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: arhag on July 08, 2015, 11:14:41 am
I'm presuming you're saying that because 2.0 requires an issuer to back his MPA with some kind of collateral, or other insurance? ...Because if there is no cost to issuing an MPA, what's to stop an attacker just creating a bunch of them with the transaction fee set to some insignificant value, and just DDOS the network?

Let's say you want to submit a transaction that needs to pay a transaction fee of 30 BTS (according to the current fee schedule). This might be a transaction that transfers a UIA from your account to another account. Also, pretend your account does not have any BTS at all. If the UIA issuer has some BTS in the fee pool (at least 30 BTS necessary in this case), then it is possible for you to submit this transaction even without any BTS to pay the fee if you are willing to accept the issuer's exchange rate.

Let's pretend the market price of the UIA is 15 BTS/UIA. The issuer may have set a core_exchange_rate of 10 BTS/UIA instead to play it safe (account for market liquidity, volatility, management expenses, profit, etc.). So you need to pay a fee of at least 3 UIA for that transaction otherwise you will not be able to get enough BTS (specifically 30 BTS) from the UIA's fee pool to pay the transaction fee. So let's say you submit the transaction that withdraws 103 UIA, sends 100 UIA to the recipient, and pays 3 UIA as a fee which is converted via the fee pool into 30 BTS (20% of which goes to the reserve pool and the remaining 80% goes to your registrar/referrer). What happens with the conversion is that the 3 UIA is deposited into the issuer's account and 30 BTS is withdrawn from the fee pool.

Now the issuer can go into the market and exchange the 3 UIA for BTS. The market price is 15 BTS/UIA, but because of liquidity let's pretend the issuer only gets 36 BTS. The issuer can then put 30 BTS back into the fee pool to top it off and take the remaining 6 BTS as profit.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: monsterer on July 08, 2015, 12:27:36 pm
I appreciate the reply arhag, but I have to say I'm having trouble extracting the point you are trying to make from it. It sounds like you are describing normal business operations of a UIA. I was asking about network attack by issuing an MIA...?
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: svk on July 08, 2015, 04:39:51 pm
I appreciate the reply arhag, but I have to say I'm having trouble extracting the point you are trying to make from it. It sounds like you are describing normal business operations of a UIA. I was asking about network attack by issuing an MIA...?
Issuing of assets only applies to user issued assets though, MIAs are brought into existance through shorting (or borrowing rather in 2.0)
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: Ander on July 08, 2015, 06:03:14 pm
So in bitcoin, spamming the network is an attack.  In bitshares 2.0, it would be producing revenue for BTS holders.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: xeroc on July 08, 2015, 06:31:34 pm
So in bitcoin, spamming the network is an attack.  In bitshares 2.0, it would be producing revenue for BTS holders.
Close ..

So in bitcoin, spamming the network results in profit for miners.
In bitshares 2.0, it would be revenue for all BTS holders.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: monsterer on July 08, 2015, 08:45:20 pm
Issuing of assets only applies to user issued assets though, MIAs are brought into existance through shorting (or borrowing rather in 2.0)

Nothing to stop you from shorting to yourself and then dividing up the bitAsset into a billion different chunks and then sending them, tho... The difference between a UIA and an MIA (at least in BTS 0.x) is that a UIA pays a BTS transaction fee, whereas an MIA does not.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: bytemaster on July 08, 2015, 10:14:35 pm
Issuing of assets only applies to user issued assets though, MIAs are brought into existance through shorting (or borrowing rather in 2.0)

Nothing to stop you from shorting to yourself and then dividing up the bitAsset into a billion different chunks and then sending them, tho... The difference between a UIA and an MIA (at least in BTS 0.x) is that a UIA pays a BTS transaction fee, whereas an MIA does not.

Market Issued assets have a fee pool just like any other asset.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: monsterer on July 09, 2015, 11:01:24 am
Market Issued assets have a fee pool just like any other asset.

How does that come into play if the fee is 0?
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: xeroc on July 09, 2015, 11:05:43 am
Market Issued assets have a fee pool just like any other asset.

How does that come into play if the fee is 0?
- however makes a transaction has to pay a network transaction fee
- you can pay the fee in BTS
- if you want to pay the fee as USD or any other asset you need to pay 2-4x the price of the fee in BTS .. as USD (or any other asset) -- the asset is converted into BTS using the fee pool and the core_exchange_rate defined by the asset maintainer (UIA) or market (MPA)
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: sumantso on July 09, 2015, 11:20:03 am
If we already had 2.0 enabled it would've been a good time to promote BitBTC.

The point I am making is in future if something similar happens, instead of telling them 'switch to BTS'. we tell them to use BitBTC instead, as a way of remaining in BTC but bypassing the restrictions.
Title: Re: Bitcoin under attack meanwhile at BitShares 2.0
Post by: xeroc on July 09, 2015, 11:31:25 am
The point I am making is in future if something similar happens, instead of telling them 'switch to BTS'. we tell them to use BitBTC instead, as a way of remaining in BTC but bypassing the restrictions.
you can by bitUSD with bitBTC within 1-5 secs .. or
you can execute 600 trades with bitBTC in the time it takes to transfer BTC :D