ExchangeUnion / xud

Exchange Union Daemon 🔁 ⚡️
https://exchangeunion.com
GNU Affero General Public License v3.0
115 stars 44 forks source link

Stake funds when generating a new identity #172

Open moshababo opened 6 years ago

moshababo commented 6 years ago

When creating a new private/public key pair, XUC funds need to be locked/staked/burned, and to be associated with the public key. Ethereum contract need to be created to handle this. Peers will verify the staking in the handshaking phase, when public key is advertised. The purpose of this is to make creating xud id's expensive. This limits sybil attacks by making them expensive and potentially the stake can be used to penalize a peer in future.

kilrau commented 4 years ago

The current idea is, that peers evaluate reliability of a trading partner (especially of takers) based on the amount these staked. We expect in the mid-term future only technically capable, professional market makers to run xud nodes to supply liquidity along with exchanges as takers using the liquidity for counter-trading end user trades (hedging).

Both should be able to afford a relatively high stake, let's say worth several thousand USD. A market maker can then decide to only let takers fill its liquidity from that staked minimum x amount - to have a low probability of this taker exploiting the free option and throwing away that particular node key afterwards.

kilrau commented 4 years ago

@sangaman can you list what would need to be done here from your point of view? We can do some iterations and then break things up into single issues once we settled on all details.