Dominant assurance contracts using Ethereum


Published on

Published in: Technology, News & Politics
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Crowdfunding. -1- Donation-based Crowdfunding, in which the backers essentially donate money to support a cause. Sometimes he/she may receive in exchange a "thank you", a special mention, or even a gadget, but in any case the pledge is essentially a gratuity. -2- Reward-based Crowdfunding, in which the backer receives a reward with a clear monetary value in exchange of the pledge. The reward is often a product or a pre-series item that the backer helped producing by pledging money. In this case the money pledged is similar to paying for a pre-order of a product or service. -3- Credit-based Crowdfunding (more commonly called Peer-to-peer lending or "Crowd-lending"), in which the backer lends the money and receives an interest rate in exchage. In this case the money is pledged in the form of a credit loan-4- Equity-based Crowdfunding, in which the backer receives shares of a company in exchange of the money pledged. In this case the money is pledged in the form of risk capital (wikipedia).
  • Called “dominant” because the dominant strategy in the Nash equilibrium is to contribute. Solves the free rider problem.
  • Free Rider Problem – 2 Kinds of People-Contributors: Each agent doesn't want to waste effort and has no assurance that others contribute if he does.-Freerider: A freerider just assumes the good will be provided regardless of his individual actions, so why bother contributing?
  • Free Rider Problem – 2 Kinds of People-Contributors: Each agent doesn't want to waste effort and has no assurance that others contribute if he does.-Freerider: A freerider just assumes the good will be provided regardless of his individual actions, so why bother contributing?
  • Dominant assurance contracts using Ethereum

    1. 1. DOMINANT ASSURANCE CONTRACTS Ethereum Meetup 4/6/2014
    2. 2. Overview • Business Models on the Blockchain • Some Funding Models • Crowd Funding • Kickstarter on Ethereum • Dominant Assurance Contracts • Variants
    3. 3. Business Models on the Blockchain • Ledra Capital has an interesting brainstorming list of these: link • Site also contains a thought provoking list of assertions about bitcoin • #12 on the business model list is Crowdfunding
    4. 4. Crowd Funding Definition (wikipedia): Crowdfunding is the collection of finance to sustain an initiative from a large pool of backers—the "crowd"—usually made online by means of a web platform. Types 1. Donation Based 2. Reward Based 3. Credit Based (peer to peer lending) 4. Equity Based Comparison of platforms/services (wikipedia): link
    5. 5. Kickstarter • Kickstarter is an example of a type #2, multi-level reward based crowdfunding platform. It’s a pledge threshold based system. • Example: Project initiator must raise $10k in 30 days or all pledges are refunded. In a successful campaign, donors may receive different rewards based on amount donated. Stats • Currently Kickstarter takes 5% in fees and Amazon takes 3- 5% for payment processing. • For the example above, a 43.99% success rate. For 60 day campaigns this drops to 29%. • Most projects raise less than $10k
    6. 6. Kickstarter Successes & Failures Success • Pebble e-watch @ 10x • Ouya @ 9x • Veronica Mars @ 2.8x • Oculus VR (?) - $2M raised Failure • Kobe Red @ $120k fraud • < 50% success rate
    7. 7. Kickstarter on Ethereum • Platform and payment fees can be cut drastically by creating this as an assurance contract on the Ethereum blockchain • Will still require a web front end, promotion, and gateways to fiat currency (Paypal USD <-> Ether) etc. • Alex_GuangTou in Vienna and I have been working independently on Kickstarter contract HLL code for Ethereum
    8. 8. Code Comments (Kickstarter) Contract Storage [1000] is contract state (0 = first run, 1 = initialized and unfunded, 2 = expired, 3 = fully funded) [1001] is contract creator address [1002] is target date for campaign to finish [1003] is target funding amount for campaign [1004] is number of donors [2000] is donor //1 address [2001] is donor amount [2002] is donor //2 address... All Runs Make sure there is enough ether to run contract (GAS) First run of contract (state == 0) Need 2 args for expiry date and target funding, or stop Store contract state, contract creator, target date and target funding
    9. 9. Code Comments (Kickstarter, cont’d) Contract Initialized (state == 1) Create constants based on contract storage (campaign parms) If contract expired Check if funding goal met If yes, state == 3, send balance to contract owner (suicide) If no, state == 2 loop through contract storage[2000] to refund to all Delete contract (suicide) Else contract not expired Store donor and amount in contract storage[2000], [2001]… Increment the donor count by (one). -Used to determine GAS/fees for refund if necessary. -Min donation should be the mktx/CALL fee to allow refund • You can do this in less than 100 lines of commented code
    10. 10. Dominant Assurance Contracts • Alex Tabarrok, George Mason University (1996). Model is credited for the success of GroupOn • Project initiator pays the donors a fee on top the refund if the target fundraising amount is not met • In exchange the project initiator asks for a profit (fundraising target is more money than the cost of the project). • Example: A project costs $10k and takes 30 days to complete. The project initiator asks for $12k and will refund an additional $1k if the campaign is unsuccessful.
    11. 11. Features • Solves the free rider problem through incentive alignment • Project initiators can profit. Creates a marketplace for projects • Improves perception of a project because the project initiator is putting money on the line • Project initiator may forgo some profit by providing additional funding near the end of the campaign • Jason Quinn tried this out successfully on Quora to fund the Center for Election Science (link).
    12. 12. Variants using Ethereum • Prize (refund bonus) proportional to the amount contributed: Incentivizes matching contributions by initiator. • Funder acceptance test (FAT): Goods must pass an acceptance vote at the end of the project or not be released with the initiator refunding the profit. • Equity: Contributions are converted into equity shares via Ethereum subcurrency. The good/product could be sold for ether. The shares could then be traded and could be used for voting on dividend issuance (in ether). • DAC: Convert the contract into a DAC (Distributed Autonomous Organzation)
    13. 13. Next Steps • Successfully code and test Kickstarter contract • Try it out by attempting to raise funds • Build web front ends and payment gateways • Rinse & Repeat for Dominant Assurance Contract • Integrate into Daemon / SkyNet 
    14. 14. QUESTIONS?