New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Kleros: Building a decentralized court system to arbitrate smart contracts

DevconSun, Oct 7, 2018, 12:00 AM

Visit the https://archive.devcon.org/ to gain access to the entire library of Devcon talks with the ease of filtering, playlists, personalized suggestions, decentralized access on IPFS and more. https://archive.devcon.org/archive/watch/3/kleros-building-a-decentralized-court-system-to-arbitrate-smart-contracts Smart contracts can’t take decisions requiring outside-world information and subjectivity. However they are a great tool to enforce those decisions. We explain how by drawing jurors at random and providing them proper game-theoretical incentives based on Schellingcoin principles we can design a trustless arbitration mechanism for smart contracts. Speaker(s): Clément Lesaege Skill level: Intermediate Track: Developer Infrastructure Follow us: https://twitter.com/efdevcon, https://twitter.com/ethereum Learn more about devcon: https://www.devcon.org/ Learn more about ethereum: https://ethereum.org/ Devcon is the Ethereum conference for developers, researchers, thinkers, and makers. Devcon 3 was held in Cancún, Mexico on Nov 1 - 4, 2017 Devcon is organized and presented by the Ethereum Foundation, with the support of our sponsors. To find out more, please visit https://ethereum.foundation/

Transcript

[Music] so hi everyone so today we're going to speak about arbitration of contract and the centralized quote so first let's start with a simple example you have Alice and Bob who met on the financing platform and they agreed that Bob will make a website for Alice against free user and a leased space Bob but Bob give a shitty website and Alice is not happy and wants her money back but since there is no charge back with scripto she has no recourse so to avoid that she could put money in a small contract if she gets a website great she sign and the contract baseball but in case we dispute Bob say no I've made website if you want something better you'll have to pay extra and both things that are right so they pay arbitration fees the dispute goes to an arbitrator and I will trade rock'n'roll which we trigger the previous mail contract which will move the phones the first catch is all cool the arbitrator know what the smart contract was referring about so to solve that the first when they created the contract input the ash of the plain English contract and this way when the dispute they can show to the arbitrator what was the contract agreed in plain English and if there is no dispute its privacy-preserving and I want us to ever know about what the contract was actually we can even do better imagine we have a contract with four pages pages one and two are on one topic which is three and four on another one and you don't want to reveal both of the topic of the contract if you only have one topic which is imported and for arbitration so use a local tree and you just have to read all the pages which are linked to what you are disputing and the thing is that the arbitrator can be everything it can be a centralized party a multi seed or even it down and that's what clearance is I'm given an example which is very simple which is used transfer money but in practice we can have way more complex way more complex dispute an enforcement as long as it's enforceable by a smart contract so with money with freelancing ecommerce crowdfunding you will have you have autos ico the raise money but if the token buyer and not appease I have no way to get the money back so we will have my stone and when my son is reached you unlock the money and if the token order and the team don't agree that's a dispute online gaming cheating social network you submit content which is against the shot you have a dispute you lose you remove the content and you penalize the party were rewriting the rules in typical property we've seen a nice example in the Def Con with ENS you have someone registering your trademark well you go to Vienna system to have blacklist you have a dispute to dispute is okay this is my trademark I don't want you to use this ENS and I want it to be blacklisted and the result of the arbitral contract is a blacklist of the domain if the one claiming the intellectual property is a sin as correct by the arbitrator or insurance this event occurred and does the insurer have to pay so we can abstract that and have to kind of contract arbitrator smart contract which are responsible for enforcement of ruling and arbitrators which are responsible for giving the ruling and the goal is to have every Abbot reverse my contract I'll be troubled by every arbitrator contract so this way if you developer you can easily switch from one arbitrator to another so let's go back to kleros the idea of kleros is 12 courtesan jurors so first we could say okay we let everyone adjuster and everyone in Tudor oh well that would be quite impractical because you will either need to pay everyone arbitration fee or everyone will get peanuts so in both way we have an issue so we can just roll some of them which will look at evidence and vote and get a relation fee but not all but there is still a problem since we don't have a way to be sure that someone I just won online on chain identity someone like this guy will register tons of time and be almost the only one drawn to solve that instead of during jurors which were tokens so you activate you token prohibition we get to random number with one of the metal I talked about yesterday from this one we can get multiple ones everyone was a token Ron is an arbitrator so we had the incentive to arbitrate which is get the attrition fee but now we need an incentive to arbitrate correctly and honestly but unfortunately we can't really move your honestly in an algorithmic manner we could say okay it's another dispute this arbitrator rule honestly or not but some kind of chicken and egg problem so the best thing we can have is currents as a proxy of honesty so in this example you can ask you a new audio the vault sheet for Bob why isn't majority but it for Alice so Zeus Jareau say we lose part of the token to the draw watch it currently that's inspired by game game theory and shading point and this buddy example if you vote the same way as user you win something otherwise you lose something and if we remove all the latter we can see a matrix which is symmetric and from a mathematical standpoint there is no reason to vote for Bob or for Alice both of them could be seen at the same but fortunately we are labeled and in the absence of other factors we have some solution which can emerge which we call the the focal point and in this case the focal point has to be honesty so why would you vote honestly because you think that the author will vote honestly or perhaps because you think that the other thing that's all the think that the read what honestly in practice it goes up to three level and that's all we can get honest weddings they receive some attacks one could be okay I bought before everyone else I bought Bob no both of the other parties as I know that you exhibit Bob's the acquirement so even if bob is not the honest answer the cool bad Bob so ought to avoid that is to use committin Villa so instead of voting directly you generate your number or wand on one locally and you commit the ash of this number and you vote and in the second phase you will reverse the number your vote and on chain we can verify that it was effectively corresponding to ash is submitted you could say okay I'm gonna review my number and my vote was a party twin free enzyme so to avoid that we have to penalize this behavior so if someone weevil the number and the vote another party this party can show that on Shane invalidate the world and still part of the coins so this way you can't influence other trust ously you can either say okay I'm gonna vote for Bob but I don't prove it I don't show you I could be lying or you can say okay I'm gonna vote for Bob I show you the proof but now you have the right to see my coin and in village my vote so it not trust last one way or the other another attack pragmatic will be bribing and it's particularly problematic with box and smart contract because you can make bribing which are trustless which will automatically pay the bribe withdraw vote the way you you asked so to avoid that you need to have an appeal system so if someone managed to bribe Jarreau at some level she was the party can appear and get more and more jurors and if you are in zone as majority assumption it will be highly more expensive for the dishonest party because most of the and most of the round he will lose and even in the round you will win you will also have to pay bribe where is the different we just have to pay a peer fees so that gives a huge advantage to the defender another problem which can arise is okay i press i don't like freelancing dispute I don't want to arbitrate zhuzh I want win which wait insurance so for that we need an arbor essence of course which are increasingly and increasingly specialized so when you register to be a draw you don't reach to the quote you lose a pass to unquote so for chief it's a general ecommerce and financing so we can be drawn in all of these but we can ask ok or do we make Auto quote if you were to let everyone make support that will rapidly and in a mass of support with no clearance so that's why we need governance and we've seen previous governance system like the Dow that we have a huge problem which is most of the token order they just don't vote so how can we count the vote of people who don't want to vote that source will liquid voting so look at voting either you vote and everything works as if it was in direct voting or if you don't and you've designed before a new chosen before an adviser you vote the same way as will adviser and it is adviser as an vote but also as an adviser you odd as ways advisor of advice or vote and in can't go to the point that you have one party with effectively voting and now we we've seen the website dispute and we see we have done the website dispute so why not make a quote especially Kelly fossils we can also have some other kind of problem which is its arbitration it's not just right or wrong that could be the case for Oracle if it's something with the president yeah you either lied or you tell the truth that's easy but for for dispute it can be more shady so where do we draw the line if you just let your vote like that some juror would vote honestly but we still consider as increment so we lose token will be frustrated so to reduce this problem we'll have policies a policy is something which look like a law it's basically a guideline of Oh to arbitrate one example of policy will be if you sense sell some good and you sell it at distance and it's worth more than one issue and you don't use track shipment and buy a claim he has not receive it we assume that the buyer has not receive it so the one issue some parcels I know we could do that follows your point one one four ten and it may not be consensual between the juror so for them to know all the should rule should have guideline which can be bought through governance another problem is the 51% attack what if someone buys more than half of the coin and keep forgiving the nice rolling accepting bribe that will pose a huge problem that's also why we need some specific coin because buying half of the coin of Cairo's would be way more expensive as buying half of the issue which will be used in trials because of market death if you want to buy alpha of the coin of a one coin type you don't just have to pay for alpha of the market cap because okay the first seller you pay the market price but you rapidly run out of seller at market price as the price increases so perhaps even with a value which is higher than the market cap you might not even be able to buy alpha Xu's moreover if you wise whose coin you do some attack and you accept bribe you're dishonest well you end up with a design escort and we want is dispute to be arbitrated by your design escort no one so your token will rapidly become worthless you can fall hit even and make another quote with only honest party but even in that they receive a catch which is a contract which were created before they don't know the cool become is dishonest they don't know that they have to update to a new quote and a new token and they will still be under the arbitration of the dishonest code but one could argue that it's the same with ischium and connected object Dakshina where if someone buy our fuzzy sir and she Trump's an attack all these you object relying on blockchain they don't know there is an attack and they will sit behave the way the attack chain is behaving and in the first type I've shown you some really simplified version of what the incentive could look like but in practice it's way more complicated so you have some part which is a token or distribution voting the same way as the other we also have the honesty of the decision because if the quote given a decision your tokens autocannons quote and unicode is variable so the value of you two can increase a bit and it's a cool givenness ruling your value decrease abit and since you're talking a lot during treated cases you have no way to sell them before when we listen to catch into all the sense which is not a computer you can't just like get evidence process them in one microsecond and give a ruling it actually takes times you have to look at a paper wall cut images at argument of parties yeah time is money so it has a cost for you so you could you say okay you know that's may not be worth it I will just watch randomly to get the fees so depending to the value of all this variable in the incentives we can have multiple multiple point where party could always vote this way and each one will be as current as the other but some would lead to his own escort some will lead to honest one and some will lead to quote just giving random results so what we call juice its Nash equilibrium it's a Nash equilibrium when everyone strategy is in such a way that after everyone knows everyone a strategy no one regret is own strategy and changing from one strategy to another does not have lot of sense if you don't think that the other party also gonna change your strategy so that's why it's really important that at the beginning the quote even s ruling because this way no one would have an interest in changing just for him strategy to a dishonest one so oh can we verify that's twelve so can be recited by that it's with experimental crypto economies so at the beginning you don't link that to real contract which we are smack attack investment but you still have general and cielab incentive in term of token redistribution you take a set of dispute that you know already solved but that you don't really draw and you look at what the result will be compared to what you call your own growing truth which is a the result of the dispute you had before and you can use metrics which are inspired by machine learning to evaluate all the ruling of the court is actually rated to the ruling of your booing truth so basically you do machine learning as with humans classifier so thanks everyone for listening if you want you can contribute we have a basic version of the code some arbitrary smart contract you can interact with contract and test net and we are still building the web suite interface to actually use in a nice and user-friendly manner thanks you [Music]

Automatic transcript — names and jargon may be misspelled.