You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Something we have previously been concerned about is the fact that centralised exchanges have a range of incentive mechanisms available to them that DEXs are not able to implement due to Sybil attacks.
One example is a signup or referral bonus. If we were to allocate a bonus (something we have considered in the past) of sUSD for new users to trade with when they first start using sX, this would likely be exploited by attackers creating multiple wallets and doing whatever was needed to meet the minimum to qualify and extracting these incentives adding significant cost to the programme.
A recent discussion in discord with Boomshiki opened up a potential solution to this issue.
From Boomshiki:
By method of incentive, affiliate programs provide an attractive way to promote services to an audience. It can reasonably be assumed that any outreach stemming from affiliates should increase Synthetix marketing value, while rewarding promoters fairly. All around such a program would be mutually beneficial to referrer, referral, Synthetix (through increased brand awareness) and participants in the network (stakers) from increased usage of the sX.
Some issues to explore remain. Namely the attack surface Sybil poses, and mechanics in which risk of such can be reduced or made too costly to generate a net gain. Possible to such a degree for an attack to benefit the network. Additionally, incentives distributed to the affiliate pool and the percentages both referrer and referral receive need to be taken into consideration as any percentile taken from the fee pool would have effects on global debt and rewards.
The proposed solution is to implement a trading incentives pool, this would be funded by SNX from the inflationary rewards. Each week a percentage, say 5%, of the weekly inflation would be put into a pool to pay trading incentives. These incentives would be paid out to traders based on the trading volume on sX from that week. In addition traders who refer new traders to the platform will have 10% of the trading volume from the traders they refer added to their trading volume.
One challenge with these kind of referral and affiliate programmes is that users can refer themselves. We would reduce this attack vector by requiring that a user have been actively trading for at least two weeks before referring new traders. To incentivise users who were referred to actually complete the process a new user who is referred will get a bonus if they actively trade for a certain period.
When a new trader arrives on sX for the first time we will ask them to sign a tx linking their wallet with the wallet of the user who referred them. This tx will not be reversible, so once it is confirmed it is locked. We will then calculate the total volume on the exchange for the week and divide it amongst all active traders. We will likely set a threshold of ~$1k in weekly volume to qualify to ensure we do not need to send dust to accounts.
The system will work something like this:
Five traders each doing $10k of weekly volume
Each week they each get 20% of the trading incentive pool
One trader refers a friend who does 50k weekly volume
The next week the original 5 traders get 10% of the rewards and the new trader gets 50%, however, the trader who referred the new user also gets allocated 10% of the trading volume from the new user. So now the distribution is:
New trader: 50k
Trader 1: 10k
Trader 2: 10k
Trader 3: 10k
Trader 4: 10k
Trader 5 (referrer): 10k + 10k bonus
So rewards are distributed:
New trader: 45%
Trader 1: 9%
Trader 2: 9%
Trader 3: 9%
Trader 4: 9%
Trader 5 (referrer): 19%
If the new trader continues trading for x weeks they will get a bonus in week x+1, say 10%. This increases the cost of sybil attacks while still incentivising new users to actually put their referrer in when they start trading.
One of the issues with this system is that pure affiliates who do not trade will be somewhat disincentivised to participate. This may not be an issue initially as we will be looking to engage actual traders rather than affiliate networks, but could become a problem that must be addressed later if we want to expand the referral programme to non-traders who run educational or review sites.
TLDR:
A trading incentive pool will allow traders to earn SNX by trading on the platform, and will also allow us to create a fair referral programme that is reasonably sybil resistant and has well aligned incentives.
I have likely not anticipated every attack vector here, so any feedback or improvements are most welcome.
The text was updated successfully, but these errors were encountered:
Something we have previously been concerned about is the fact that centralised exchanges have a range of incentive mechanisms available to them that DEXs are not able to implement due to Sybil attacks.
One example is a signup or referral bonus. If we were to allocate a bonus (something we have considered in the past) of sUSD for new users to trade with when they first start using sX, this would likely be exploited by attackers creating multiple wallets and doing whatever was needed to meet the minimum to qualify and extracting these incentives adding significant cost to the programme.
A recent discussion in discord with Boomshiki opened up a potential solution to this issue.
From Boomshiki:
The proposed solution is to implement a trading incentives pool, this would be funded by SNX from the inflationary rewards. Each week a percentage, say 5%, of the weekly inflation would be put into a pool to pay trading incentives. These incentives would be paid out to traders based on the trading volume on sX from that week. In addition traders who refer new traders to the platform will have 10% of the trading volume from the traders they refer added to their trading volume.
One challenge with these kind of referral and affiliate programmes is that users can refer themselves. We would reduce this attack vector by requiring that a user have been actively trading for at least two weeks before referring new traders. To incentivise users who were referred to actually complete the process a new user who is referred will get a bonus if they actively trade for a certain period.
When a new trader arrives on sX for the first time we will ask them to sign a tx linking their wallet with the wallet of the user who referred them. This tx will not be reversible, so once it is confirmed it is locked. We will then calculate the total volume on the exchange for the week and divide it amongst all active traders. We will likely set a threshold of ~$1k in weekly volume to qualify to ensure we do not need to send dust to accounts.
The system will work something like this:
Five traders each doing $10k of weekly volume
Each week they each get 20% of the trading incentive pool
One trader refers a friend who does 50k weekly volume
The next week the original 5 traders get 10% of the rewards and the new trader gets 50%, however, the trader who referred the new user also gets allocated 10% of the trading volume from the new user. So now the distribution is:
New trader: 50k
Trader 1: 10k
Trader 2: 10k
Trader 3: 10k
Trader 4: 10k
Trader 5 (referrer): 10k + 10k bonus
So rewards are distributed:
New trader: 45%
Trader 1: 9%
Trader 2: 9%
Trader 3: 9%
Trader 4: 9%
Trader 5 (referrer): 19%
If the new trader continues trading for x weeks they will get a bonus in week x+1, say 10%. This increases the cost of sybil attacks while still incentivising new users to actually put their referrer in when they start trading.
One of the issues with this system is that pure affiliates who do not trade will be somewhat disincentivised to participate. This may not be an issue initially as we will be looking to engage actual traders rather than affiliate networks, but could become a problem that must be addressed later if we want to expand the referral programme to non-traders who run educational or review sites.
TLDR:
A trading incentive pool will allow traders to earn SNX by trading on the platform, and will also allow us to create a fair referral programme that is reasonably sybil resistant and has well aligned incentives.
I have likely not anticipated every attack vector here, so any feedback or improvements are most welcome.
The text was updated successfully, but these errors were encountered: