J1 RF 04 Clément Lesaege Griefing opportunities in Kleros
Ethereum Paris·Tue, Oct 9, 2018, 12:00 AM
Speaker
Transcript
so hi everyone today we're going to speak about graphing opportunities in Carol's so we will start with a general description of working opportunities and then we'll see example in the cross dispute resolution system so what is griefing the world come from online gaming when you have player which are making some action which is not beneficial to them selves but which are arming others so for example in Minecraft people putting a dynamite to explode the construction of others they won't win anything you do that but they can a mother be happy about them trolling so even if something is not beneficial to you that does not mean that you will never do it we'll have some fun game so I put some small contract which basically say if you send 0.01 ETH to it you will destroy the content of the contract and in this contract I have 0.8 eh in it if no one destroyed it I will be able to get them back so if you want you can like make me lose money by losing a bit of money the other contract ask you to send 0.1 ETH and user contract ask you to send one wall ETH to make me lose money so oh can you analyze that if we analyze that with normal for matrix we can see that I don't have any choice to play I'm in the presentation i canta for myself but you you can either send some transaction to the contract or not send anything if you send a transaction you will lose one in this case it's 1 cent of each gauge and if you don't see anything you don't lose anything so for you you optimum is clearly not to do anything but perhaps someone want to do it it can be more or less problematic with graphing opportunities depending to how much people has to pay it with and Amish arm is done so we can annoy them with reefing factor which is the ratio of the arm done to the cost of waiting so why do people leave one explanation is bounded rationality basically just people not knowing what the action will lead to so we had this example with the parity with EC wallet where the library contract was destroyed by someone at least someone destroyed the contract he had to make two transaction to do it which make him paid around like $1 was a fee and he destroyed 300 million dollars worth of Easter in the contract which well linked to this library so in this case as a 300 million working factor which is really really really bad even if we are just analyzing this possibility from a game theoretical point of view no one has incentive to do it which is pay transaction fee to gain nothing and destroy him for other why would you do that one possible answer is because you just don't know the consequence of your action another possible explanation is the trembling hand where basically you want to do something but you do something else so that's not completely crazy that happened that actually happened to me once by just having one extra digit in a transaction I was making so luckily it was not you sure it was mostly some tester so that was fine but sometimes people just miss what they want to do one other example in the auto chain world is our missile where someone said well one everyone that there is a missile so of course he did not want you to do that but it just click on the wrong button or just often people sometimes respond to armed order because they like it people have utility function which may seem strange or are to analyze but utility function of some people include the loss of utility in some other persons sometime Griffin can not really be griefing because you may win a war by doing it it is that it's an external reward it's not a reward in the system we can analyze so for example the Shanghai attack where people were making tons of transaction to slow down all the computer which were running Israel you don't have any intra system you don't have any incentive in the Assyrian system to do that you just pay in transaction fees to do nothing for you but now if you look out of the system you can want to do that because you just show the user so basically you bet on the fact that the issue is gonna lower and you make an action in the system to reduce the value of the system you can have a competing system and in this case you get some competitive advantage or you can be some government and for some kind of reason you don't want the centralized system to take over huge part of the economy and so you want to destroy them so we still have no idea about why people made the shunga attack and it could be multiple possibility I explained but not not by mistake because it was something done for a long time repeated so in this case is clearly not a trembling hand or bad Boonen rationality so let's look at some example of everything in the blocks and see in blocks and protocols so you have one honest party which one to pass a transaction in green you put some gas price and some dishonest party just want to prevent this policy from having each transaction accepted in a block what can I do you can had tons of transaction which are doing nothing interesting except taking of the size of the block they have to put our gas price to make sure that this transaction are including by the minor because the minor want to optimize that he well what can do what can the victim do about that the victim can increase the transaction fees the gas price is ready to pay in order to go first in the order of the minor inclusion in the block and still be included in the block but by doing that you forced some other party to pay extra transaction fees sometime just looking at Griffing factor may not be possible to analyze this and we might want to use a notation in order to not have to deal with the whole small detail but just deal with it at a constant and low worlds and a particular bonded value in this case what what is the cost you have to pay for the blocks I multiplied by the gas price that you put and for the brief is in all of the attacker gas price so unit Asian it's not exact notation that means that you it's not exactly attacker gas price because you also had the price that the center of the transaction was ready to pay in this case the griffon factor is not that bad it's one divided by the block size so if you have really large block size that's going to be super expensive to prevent someone from makino transaction or fall seem to increase the fees but we could ask well can we just wait for the attack to pass in this case the victim can wait wait wait and at some point attacker will have to stop the attack and the transaction is included in this case is there are some grief yeah we see some grief between timing money and time money is also money so what does it mean it's like if you're receiving the transaction your your Easter are gonna be delayed and during the delay you can't use your research so you can't use them for staking you can't use them to invest in some other productive activity and for the center of the transaction is probably buying something so for example is buying a computer and if when you buy a computer your computer arrival is delayed by 10 years that's very bad buy because 10 years after the spec would not be relevant you may have been dead in between so people the utility function they prefer utility now then utility in the future so in general there is some special case while you make insurance in retirement but in general people will prefer to have something now then something in the future so time grief is grief in this case it's still not really problematic attack because the griffon factor is in all of the block size multiplied by the attacker gas price so that's still really expensive to delay some transaction so now let's look at a few example in the cross dispute resolution system we are building so this is not at all to explain Charles you will have won the last day of the conference but basically we are building a dispute resolution system with quote hostage draw and smart contract enforcement let's look at the fee structure so let's take a simple case you have Alice and Bob Alice is contracting Bob to make a website and she does not trust Bob so she put money in a smart contract and if Bob does the website she can sign and Bob can get the money but in case something would go wrong she can go to dispute resolution first case let's assume that the plan chief has to pay the fee so Alice has to pay the fee it goes to this pitiful solution so arbitrate order all the I agree with Alice so they roll in favor of Alice Alice get our money back but Alice has paid twitch eh of dispute resolution fees so in this case Bob as griefed alleys for free which is very problematic because you can have both or even a low-paid Walker to destroy your marketplace by just going to all the people which require work and say yeah okay I will do it how we do it how we do it make a small contract to me and I will do it and then never do it and make the the employers lose money in the speech resolution so no we can look at another fee structure when you ask both parties to pay out of the dispute resolution fee in this case if Bob refused to pay the fee is automatically losing the dispute and Alice get all money back and nomine is used for dispute resolution in this case it's a little better because Alice in this case will lose 1 ETH and Bob will also lose 1 ETH so you have a gryphon factor of 1 so it's not perfect but that's way better solution than what we had before can we do even better yeah we can ask both parties to deposit the arbitration fees and rainbows the deposit of the winning one so in this case if you own us you don't lose anything is there a pseudo grief yes they receive some small grief because you lose time in this case Alice you she's contracting Bob for website she's not contracting someone else for the website so the website is delayed and so that still little brief but not as problematic as we had before now let's look at what happened with an active system in the case of Queiroz when you appeal you can get more and more jurors so now let's assume that the appeal price we're gonna be always the same we ask both of them to deposit some apathy and in addition we ask alice in this case because alice is a parent to also put an extra stake which will be used to compensate Bob for the time loss in the appeal would Alice lose so we had more juror but tallies can see do that again and again and each time she's deleting the result of the dispute which is a brief Bob in terms of time in this case we have all of one time graphing factor which is okay but could be it could be Bella so now to get better with insight also a lower one let's look at what happens if we has to double the dispute resolution fee every time we have an appeal and then we put twice plus 1 number of general ordinary appeal so we increase more way faster than amount of jurors and amount of fees increase and Alice ends up to pay way more on each neuron so in this case we have a logarithmic amount of time which is lost compared to the amount spend in dispute resolution fees by Alice of course assuming that alice is gonna lose the dispute so this it seems quite good because at the beginning you can buzzer but oddly honeys start to become so so so expensive to delay the result of the ruling that parties won't be able to grieve even if they want you what something interesting we can see is at some time we think and attacking can be really close because know what if Holly's keep happening and then Bob does not have enough money to put the appeal deposit Bob will be considered as a loser Alice will get back the amount of Marines dispute plus a stake plus two deposit so Alice will not have lost anything except perhaps a bit of time for self so to prevent this vision attack to be turned into real attack was attack again some benefit of it we need post-dispute in shrah so in this case if Bob is not able to pay to deposit this appeal fee you can ask some pauses put insurer to deposit the apathy instead of M and suppose this put insurer will get the extra stake which were normally used to compensate Bob lots of Simon so what do we need to remember on this small example it's mostly about system design mechanism design because when you are building a blockchain system will it be for blockchain will be for additional application you are making the rules that's quite exciting compared to the outside world when you are born by the rule of physics the rule of governement the rule of previous organization in this case you can really decide almost everything as long as it's computationally feasible to apply those rules if we look at those two design possibility on the left one where you have a really high graphene factor but when there is no grief the victim will not lose anything compared to the right one with a small Griffing factor so in this case the victim will lose one is a grief replaced one but the victim lose one every time so just analyzing it from a rational game story point of view won't be enough because if you assume every party to be rational no one will ever grieve so we will always be in the bottom and in this case it's way better to always be at 0 0 then 2 will be as your minus 1 but we've seen that people may not be a rational within that you can't analyze everything in your system because people have out of system incentives and so in this case you really want to lower the motive arm that someone can do compared to what it costs to them so let's finish this foundation with this little game and I don't know if someone with me it's someone with me if someone with me you can like raise your hand unless you want to stay anonymous well I don't have any River well some time before a nice but you may not also be enough to have some really bad people among you or perhaps the stake is not enough or perhaps you just analyze my utility function by thinking well if I agree theme it will be able to speak about it so it will increase this utility and so in fact I will not grieve him so I don't know what you did not with me but people have some reason people are not rational and we want to prevent them from doing arm when they can do it thank you [Applause]
Automatic transcript — names and jargon may be misspelled.