We conducted research on a Dual Token Model for Proof of Stake in which validators deposit funds with a staking token and receive rewards via a transacting token. While researching Propy's token economics, we realized that their model could fit this secure and scalable scheme, utilizing an ERC20 Token (PRO) as the staking token and ETH as the transacting token. We also analyzed the 33% attack vectors of this model via Buyout Attacks.
We built a framework for Validation and Reward smart contracts, which could be used as a basis in this scheme. We wrote the smart contracts using Solidity and conducted a security analysis using Oyente. With 99% code coverage, our contracts were not privy to any of the vulnerabilities measured. The contracts are deployed to the Rinkeby Testnet. As a validator, one can deposit funds in a staking token, and validation rounds, can receive rewards in the transacting token.
We also calculated the cost of gaining 33% stake for a validator, simulating an economic and mathematical analysis of this model detailed in our working paper. We assumed that the market for coins is an efficient market in which every staker has indicated the price they would sell their coins (in a limit order book). We modeled this accumulation function as a linear function, based on prior limit-order data from public crypto exchanges. We integrated this for any arbitrary function to come up with a general equation describing the cost of a buyout attack to an attacker.
Going forward, we plan to expand the existing codebase into an even simpler plug and play for this sort of model, iterate on our working paper to solidify our financial and mathematical analyses, and work with Propy to integrate this model into their system.