Author Topic: Fees are a real problem for the DEX  (Read 13357 times)

0 Members and 1 Guest are viewing this topic.

Offline clayop

  • Hero Member
  • *****
  • Posts: 2033
    • View Profile
    • Bitshares Korea
  • BitShares: clayop
If an attack happens, you first can decrease CER to discourage the attacker. But if the attack lasts or you cannot detect the attack early, your fee pool will be 0, and users cannot make transaction unless they have BTS. So my point is (1) fee pool balance = maximum damage you potentially get. (2) You can stop the attack by decreasing CER. (3) If attack lasts you can suspend your service by maintaining fee pool 0.

The problem is DDOSing the exchange then becomes completely trivial;  abuse the system for spam, forcing the CER to adjust to freeze the service.

AFAIK, there's no way to restrict attacker's access in DEX. So you have to charge some fees (0.5~1 BTS) to customers to prevent spam.
My suggestion is make it free when it's normal, and make it charged when exploiter comes. It can be automated and I believe you are talented to do this.

FYI, https://github.com/BitShares-Committee/proposals/blob/master/160119_Proposed_Trading_Fees
https://github.com/BitShares-Committee/proposals/blob/master/160119_Proposed_Trading_Fees.md
« Last Edit: January 19, 2016, 11:26:54 am by clayop »
Bitshares Korea - http://www.bitshares.kr
Vote for me and see Korean Bitshares community grows
delegate-clayop

Offline monsterer

If an attack happens, you first can decrease CER to discourage the attacker. But if the attack lasts or you cannot detect the attack early, your fee pool will be 0, and users cannot make transaction unless they have BTS. So my point is (1) fee pool balance = maximum damage you potentially get. (2) You can stop the attack by decreasing CER. (3) If attack lasts you can suspend your service by maintaining fee pool 0.

The problem is DDOSing the exchange then becomes completely trivial;  abuse the system for spam, forcing the CER to adjust to freeze the service.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline clayop

  • Hero Member
  • *****
  • Posts: 2033
    • View Profile
    • Bitshares Korea
  • BitShares: clayop
@monsterer

I think you can handle the attacking problem by changing CER. You may want to set CER very high so users don't pay any UIAs as a fee, while you pay the fee via fee pool.
If an exploiter begins attack, you can decrease the CER and he/she will has to pay fees for the attack. And you can limit your damage by not putting enormous amount of BTS in the fee pool (if fee pool is 0, people have to pay fees in BTS)

How can users possibly send a transaction without using the fee pool? They won't have any BTS, since they are totally unaware that they are using bitshares at all - to them, it just appears like a centralised exchange.

If an attack happens, you first can decrease CER to discourage the attacker. But if the attack lasts or you cannot detect the attack early, your fee pool will be 0, and users cannot make transaction unless they have BTS. So my point is (1) fee pool balance = maximum damage you potentially get. (2) You can stop the attack by decreasing CER. (3) If attack lasts you can suspend your service by maintaining fee pool 0.
Bitshares Korea - http://www.bitshares.kr
Vote for me and see Korean Bitshares community grows
delegate-clayop

Offline monsterer

@monsterer

I think you can handle the attacking problem by changing CER. You may want to set CER very high so users don't pay any UIAs as a fee, while you pay the fee via fee pool.
If an exploiter begins attack, you can decrease the CER and he/she will has to pay fees for the attack. And you can limit your damage by not putting enormous amount of BTS in the fee pool (if fee pool is 0, people have to pay fees in BTS)

How can users possibly send a transaction without using the fee pool? They won't have any BTS, since they are totally unaware that they are using bitshares at all - to them, it just appears like a centralised exchange.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline clayop

  • Hero Member
  • *****
  • Posts: 2033
    • View Profile
    • Bitshares Korea
  • BitShares: clayop
@monsterer

I think you can handle the attacking problem by changing CER. You may want to set CER very high so users don't pay any UIAs as a fee, while you pay the fee via fee pool.
If an exploiter begins attack, you can decrease the CER and he/she will has to pay fees for the attack. And you can limit your damage by not putting enormous amount of BTS in the fee pool (if fee pool is 0, people have to pay fees in BTS)
Bitshares Korea - http://www.bitshares.kr
Vote for me and see Korean Bitshares community grows
delegate-clayop

Offline clayop

  • Hero Member
  • *****
  • Posts: 2033
    • View Profile
    • Bitshares Korea
  • BitShares: clayop
is it even possible to pay for it? if i place an order with my account how would you pay with your account?

Fee pool.
So you are going to set CER very high that asset owners don't pay fees, correct?
Bitshares Korea - http://www.bitshares.kr
Vote for me and see Korean Bitshares community grows
delegate-clayop

Offline monsterer

is it even possible to pay for it? if i place an order with my account how would you pay with your account?

Fee pool.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline Shentist

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 1601
    • View Profile
    • metaexchange
  • BitShares: shentist
I'm really confused by your response.. these are the current fees related to the markets:

http://cryptofresh.com/fees

Limit order create   10 BTS   2 BTS
Limit order cancel   FREE   FREE
Call order update   1 BTS   0.2 BTS
Fill order   FREE   FREE

What is it exactly you are swallowing costs in? Everything is sub-pennies.

I can't charge users for creating an order, or updating their orders, so that cost I will have to swallow... I thought it was cancels that cost a small fee and refunded creates, my bad.

is it even possible to pay for it? if i place an order with my account how would you pay with your account?

Offline clayop

  • Hero Member
  • *****
  • Posts: 2033
    • View Profile
    • Bitshares Korea
  • BitShares: clayop
I'm really confused by your response.. these are the current fees related to the markets:

http://cryptofresh.com/fees

Limit order create   10 BTS   2 BTS
Limit order cancel   FREE   FREE
Call order update   1 BTS   0.2 BTS
Fill order   FREE   FREE

What is it exactly you are swallowing costs in? Everything is sub-pennies.

I can't charge users for creating an order, or updating their orders, so that cost I will have to swallow... I thought it was cancels that cost a small fee and refunded creates, my bad.
If so, you can set minimum amount or order to cover the order creation fee. I'm still insisting 0.5~1 BTS. What do you think about this number?
Bitshares Korea - http://www.bitshares.kr
Vote for me and see Korean Bitshares community grows
delegate-clayop

Offline monsterer

I'm really confused by your response.. these are the current fees related to the markets:

http://cryptofresh.com/fees

Limit order create   10 BTS   2 BTS
Limit order cancel   FREE   FREE
Call order update   1 BTS   0.2 BTS
Fill order   FREE   FREE

What is it exactly you are swallowing costs in? Everything is sub-pennies.

I can't charge users for creating an order, or updating their orders, so that cost I will have to swallow... I thought it was cancels that cost a small fee and refunded creates, my bad.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline BunkerChainLabs-DataSecurityNode

@monsterer I haven't seen you respond to the prospect of 1bts or 0.5bts fee. Can you explain why this would be unworkable?

It's not unworkable, no - it would just mean we'd need to move the cost into the order fill percentage, maintain our fee pools for our assets and swallow the cost of the cancels.

I'm really confused by your response.. these are the current fees related to the markets:

http://cryptofresh.com/fees

Limit order create   10 BTS   2 BTS
Limit order cancel   FREE   FREE
Call order update   1 BTS   0.2 BTS
Fill order   FREE   FREE

What is it exactly you are swallowing costs in? Everything is sub-pennies.
+-+-+-+-+-+-+-+-+-+-+
www.Peerplays.com | Decentralized Gaming Built with Graphene - Now with BookiePro and Sweeps!
+-+-+-+-+-+-+-+-+-+-+

Offline clayop

  • Hero Member
  • *****
  • Posts: 2033
    • View Profile
    • Bitshares Korea
  • BitShares: clayop
@monsterer I haven't seen you respond to the prospect of 1bts or 0.5bts fee. Can you explain why this would be unworkable?

It's not unworkable, no - it would just mean we'd need to move the cost into the order fill percentage, maintain our fee pools for our assets and swallow the cost of the cancels.

I assume that you are going to pay order creation fees for your customers, correct? And then fee refund is yours too, so cancellation fee does not matter IMO.
Will 0.5 BTS per filled order makes big difference in your trading fee level?
Bitshares Korea - http://www.bitshares.kr
Vote for me and see Korean Bitshares community grows
delegate-clayop

Offline monsterer

@monsterer I haven't seen you respond to the prospect of 1bts or 0.5bts fee. Can you explain why this would be unworkable?

It's not unworkable, no - it would just mean we'd need to move the cost into the order fill percentage, maintain our fee pools for our assets and swallow the cost of the cancels.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Xeldal

  • Guest
[brainstorm] issue network asset 'FEE'  ;  You lockup BTS for FEE;  Use FEE to pay network fees on opening orders; 10x to 100x discount, 100% returned on cancel; pay normal BTS fee on filling orders;  The largest FEE owners(or voted with FEE stake), as a committee, have the ability to confiscate the FEE asset of offending spam accounts.   And distribute as a dividend to FEE owners.

free opening orders are only a problem if they are abused.   If not abused there's no reason to charge for them.   For posting a bond you are assured you won't have to pay for opening orders. You have the incentive to not piss off the network  and abuse this because you want your money back;  You're also not at all obligated to pay any attention to this FEE asset at all if you don't want, and just pay in BTS like you do now.

That's a pretty creative way.  +5% .. The only issue I see though is them being able to send those FEE assets from another account to recharge it. I think it would mean we have to maintain whitelists.. that could be cumbersome.

FEE asset could be non-transferable.   Though I'm not sure an attacker would benefit from sending in new FEE anyway  , because any FEE sent to the account could also be confiscated.  And if the attacker had another account with FEE, that means he's also locked up BTS on this account, which could also be confiscated.  And there's no reason he couldn't just launch the same attack from this other account. For non-attackers transferring FEE wouldn't be an issue.   I may not understand the scenario your alluding to though.

Offline BunkerChainLabs-DataSecurityNode

[brainstorm] issue network asset 'FEE'  ;  You lockup BTS for FEE;  Use FEE to pay network fees on opening orders; 10x to 100x discount, 100% returned on cancel; pay normal BTS fee on filling orders;  The largest FEE owners(or voted with FEE stake), as a committee, have the ability to confiscate the FEE asset of offending spam accounts.   And distribute as a dividend to FEE owners.

free opening orders are only a problem if they are abused.   If not abused there's no reason to charge for them.   For posting a bond you are assured you won't have to pay for opening orders. You have the incentive to not piss off the network  and abuse this because you want your money back;  You're also not at all obligated to pay any attention to this FEE asset at all if you don't want, and just pay in BTS like you do now.

That's a pretty creative way.  +5% .. The only issue I see though is them being able to send those FEE assets from another account to recharge it. I think it would mean we have to maintain whitelists.. that could be cumbersome.
+-+-+-+-+-+-+-+-+-+-+
www.Peerplays.com | Decentralized Gaming Built with Graphene - Now with BookiePro and Sweeps!
+-+-+-+-+-+-+-+-+-+-+