Why use a token?
Just like taxi drivers who must hold medallions to do business in many parts of the world, users wishing to operate as sellers or shops must stake a minimum amount of DTH tokens for entry. This requirement helps Dether attract only real users willing to engage in authentic transactions on the marketplace and on the Dether map.
Unlike traditional marketplaces and protocols that take fees on transactions, a token also has its benefits, especially when building a decentralized network that grows organically.
Among the multiple reasons, the two most important are:
REDUCING NETWORK CONGESTION AND IMPROVING MARKET SAFETY
By allowing any party to easily register and operate on the Dether network, it would be reasonable to expect significant counts of low-quality or fraudulent listings. To prevent this, a staking mechanism requires that participants have “skin in the game” by locking in a minimum amount of DTH prior to transacting.
PROTECTING AGAINST NETWORK TAKEOVERS
Network attackers may raise capital and attempt a network takeover by staking large amounts to create many fraudulent accounts, increasing network congestion and undermining the overall legitimacy of the network. With the DTH token, any attempts to aggressively purchase en masse will be met with sharp price increases, which would make the attack far more expensive and likely unprofitable.
The DTH token
The DTH token is an ERC20/ERC223 token. To interact with the Dether protocol, most of the functions go through the transfer() function of ERC223, in which you add data to the bytes field, which allows the Dether smart contract to parse the bytes field and execute the function. This model helps achieve high token interaction in Dether's smart contracts in only one transaction.
Example: open an auction on a zone
To open an auction on a zone, you need to send enough DTH to the zone contract you want to own, with the right information in params:
This function from the ERC223 standards will be used, with the right information in the _data field.
On the Zone.sol contract, when receiving DTH token the tokenFallback() function will be triggered, and the first character of the _data field will be checked to know what the contract should do.
All the work to construct the transaction is abstracted in detherJS library.
Owning a zone
By owning a zone, you:
- are the only teller able to operate on that area
- set the staking price for shops willing to advertise their offer on your zone
- have the possibility to take daily fees on shops' advertising located on your zone
Every 24 hours, zone owners pay a tax of 0.04% of their own staked DTH. To open an auction on a zone, a bidder needs to pay 4% of what is already staked in DTH on the zone in order to be able to participate in the auction.
These fees go to the TaxCollector.sol contract.
Fees will either be burnt, or be allocating into a developer fund. More details concerning this will be forthcoming.
As a Dapp (developer), you can refer someone to join the network. As a reward, you can get a part of the taxes they’ve paid in DTH tokens.