Author [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] Topic: Front running Decentralized Exchanges: The problem with Augur, Bitshares, Nxt, a  (Read 998 times)

Offline Akado

  • Hero Member
  • *****
  • Posts: 2743
    • View Profile
  • BTS: akado
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline Troglodactyl

  • Hero Member
  • *****
  • Posts: 936
    • View Profile
He proposes the solution BitShares uses (paying trusted block builders who must maintain a good reputation) but doesn't attribute it to BitShares.
« Last Edit: June 26, 2015, 08:07:03 PM by Troglodactyl »

Offline arhag

  • Hero Member
  • *****
  • Posts: 1213
    • View Profile
    • My posts on Steem
  • BTS: arhag
  • GitHub: arhag
It's a good analysis of the situation.

For further analysis and possible solutions (or at least ways of mitigating the front running) check out this post I made a few months back:
https://bitsharestalk.org/index.php/topic,13831.msg180101.html#msg180101

Offline arhag

  • Hero Member
  • *****
  • Posts: 1213
    • View Profile
    • My posts on Steem
  • BTS: arhag
  • GitHub: arhag
He proposes the solution BitShares uses (paying trusted block builders who must maintain a good reputation) but doesn't attribute it to BitShares.

The way it works in BitShares still has flaws. For one, the important market information (such as amounts and limit price) are not encrypted. Anyone in the network passing your transaction around can see it and attempt to front run you (although it is more difficult to do that reliably than as a block producer). The fix to that is simple. You encrypt those sensitive values with a random key and include the hash of that random key as part of the signed transaction. The transaction included in the block is only valid if it has the necessary signatures and the random key that hashes to the included hash value (which thus allows anyone to decrypt the sensitive values). The random value would also be encrypted for any of the witnesses who are expected to include it into their blocks (one or more) and attached along with the signed transaction as part of the transaction bundle that is passed around in the p2p network. This means that those selected witnesses act as the trusted arbiter for that limit order, and thus they are the only ones who could front run if they choose to.

Now we can argue that we trust these witnesses because we voted them in and their future income depends on their reputation. The problem is that only works if they can get caught. Getting caught is easy with double signing blocks. It is not easy with front running. If we only select a small number of witnesses (say 2 consecutive witnesses) to share the random key with for each limit order, and because the witness order is shuffled each round, one may think that allows the opportunity for statistical analysis to determine if a particular witness is front running. The problem is that there is no way to distinguish between that and someone who is just trying to frame that particular witness to get them voted out. So we couldn't rely on statistical analysis to keep witnesses honest under this particular anti-front-running strategy.

However, I discuss ways that we could do better than that in the post that I linked to.

Offline sittingduck

  • Sr. Member
  • ****
  • Posts: 246
    • View Profile
Front running is a bogus issue to begin with. 


Sent from my iPhone using Tapatalk


Offline Permie

  • Sr. Member
  • ****
  • Posts: 386
  • BitShares is the mycelium of the financial-earth
    • View Profile
  • BTS: krimduss
Front running is a bogus issue to begin with. 


Sent from my iPhone using Tapatalk
It's a bit different when the only entities able to front run are those effectively running the exchange. (Witnesses).

For further analysis and possible solutions (or at least ways of mitigating the front running) check out this post I made a few months back:
https://bitsharestalk.org/index.php/topic,13831.msg180101.html#msg180101

 +5% Worth reading

Here is BM's response to the ideas discussed in the above thread:
This is all very interesting, but perhaps we are over-thinking this too much.

- front running is only one form of market manipulation, the current order forms *SLOW DOWN* people wishing to move the market which gives everyone a chance to react.

- someone is going to make the money from timing attacks we can go ahead and "let them" make it.  To the average guy he might sometimes get a better deal, but certainly wouldn't get any worse deal. 

So if you want a more traditional order then it may not matter all that much.   

So now all you need to do is identify the means of establishing who gets the benefit of the overlap (buyer or seller)... throw in a small spread for the network and it could be very "traditional" with all of the problems of a traditional system.   Let the "experts" milk inefficiencies.

Just a thought.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline bytemaster

Front running is an artificial issue created by those with an entitlement attitude.   They want everyone to be "equal" and believe that just because they see an order book they are automatically entitled to get their order in. 

If you remove any sense of entitlement from the equation, then what you have are a set of rules where the profits go to those who can react the fastest.   Some people are just jealous of others who seem to get "free money" simply by being fast.   But this is not the case.  Front runners are competing against each other and are still exposed to market risk. 

Let those who are able pick up pennies in front of a steamroller and don't hate them for their speed.   They provide liquidity and the profits they earn help everyone.   
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline monsterer

Let those who are able pick up pennies in front of a steamroller and don't hate them for their speed.   They provide liquidity and the profits they earn help everyone.

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

Offline Pheonike

So if someone steals from you tough luck. Get better locks.

Offline toast

Front running is an artificial issue created by those with an entitlement attitude.   They want everyone to be "equal" and believe that just because they see an order book they are automatically entitled to get their order in. 

If you remove any sense of entitlement from the equation, then what you have are a set of rules where the profits go to those who can react the fastest.   Some people are just jealous of others who seem to get "free money" simply by being fast.   But this is not the case.  Front runners are competing against each other and are still exposed to market risk. 

Let those who are able pick up pennies in front of a steamroller and don't hate them for their speed.   They provide liquidity and the profits they earn help everyone.

I agree with the general response against criticisms of front-running. I think the argument here, though, is that witnesses running this algorithm are analogous to a centralized exchange transparently front-running everyone, which is still bad because information providers have no incentive to contribute (so you better hope your witnesses are either ALL not greedy, or are great traders on their own). Traders will go where they can make more money.
Do not use this post as information for making any important decisions. The only agreements I ever make are informal and non-binding. Take the same precautions as when dealing with a compromised account, scammer, sockpuppet, etc.

Offline Empirical1.2

  • Hero Member
  • *****
  • Posts: 1366
    • View Profile
Front running is an artificial issue created by those with an entitlement attitude.   They want everyone to be "equal" and believe that just because they see an order book they are automatically entitled to get their order in. 

If you remove any sense of entitlement from the equation, then what you have are a set of rules where the profits go to those who can react the fastest.   Some people are just jealous of others who seem to get "free money" simply by being fast.   But this is not the case.  Front runners are competing against each other and are still exposed to market risk. 

Let those who are able pick up pennies in front of a steamroller and don't hate them for their speed.   They provide liquidity and the profits they earn help everyone.


ASIC Mining is an artificial issue created by those with an entitlement attitude.   They want everyone to be "equal" and believe that just because they see a block reward they are automatically entitled to a fair shot at it.

If you remove any sense of entitlement from the equation, then what you have are a set of rules where the profits go to those who can mine the fastest.   Some people are just jealous of ASIC miners who seem to get "free money" simply by being fast.   But this is not the case.  ASIC miners are competing against each other and are still exposed to market risk. 

Let miners who are able pick up pennies in front of a steamroller and don't hate them for their speed.   They provide security and the profits they earn help everyone.

So if someone steals from you tough luck. Get better locks.

Just create a system that excludes them. It's the investors and traders that make the market and though I'm not a big trader personally, nearly all seem to agree that front-runners don't provide enough additional value in the form of liquidity to compensate for the value they take.
« Last Edit: June 28, 2015, 11:14:47 AM by Empirical1.2 »
If you want to take the island burn the boats

Offline monsterer

So if someone steals from you tough luck. Get better locks.

Hardly. The best price algorithm gives you at worst what you asked for, and at best a discount equal to the orders available in the book you observed when you placed the order.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline puppies

I think 2 second block times will help mitigate this risk. 

It also shouldn't be too hard to watch out for witnesses that are including transactions the rest of the network hasn't seen.  This would at least force witnesses that want to front run to broadcast their transaction before including it in a block, and limit the witness advantage to the transaction ordering within the block.

Perhaps a rule that transactions process in order of largest to smallest, or something like that could take away the last advantage a witness would have over any other node.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

julian1

  • Guest
Quote
Front running is an artificial issue created by those with an entitlement attitude.


+5%

If there was an easy way to structure information exchange to avoid front-running that would be great. But, I'm not sure if it can be done simply and without other tradeoffs.

The new approach is so much better than BitShares <1.0 where the network itself pesimistically front-runs all order matching.

Let the market decide how to allocate resources and whether to investigate and engage in social-shaming nodes that do it  etc.

 

Google+