
[Music] hello guys my name is Peter Joe I am the chief scientist of V chain so today I'm going to talk about the V chain core part of the AMA series so you know our public bar chain reaching so has been up and running for about three and a half months and you probably know we have published our source code on github but I feel like it's there are so many cool features about Vicenzo and are gonna bring them up to date and let you guys to to know that so here is the topic so I'm gonna cover today so first thing first is the multi-party payment protocol or MPP I know you guys probably already know that and we have been talking about that for a long time but I think we haven't covered how it is implemented on region so I think that's important for you guys to know so I'm gonna talk about that so the second topic is the enhanced attraction model so you probably know the multi-task transaction model MTP that's one feature of our transaction model there are also other features there so I would give details about these features today the third topic is the unchain government's mechanism so you know white paper we have a very comprehensive governance model there but we haven't talked about how this model will be implemented outreach and Thor so today are going to talk about these Unchained governance mechanism and that would be some surprise for you guys so I gonna talk about the current progress of our core development team what they are doing what they're going to do we're going to what what are the the next deliverable to developers and also the Vicenza users and at the end since I'm the chief scientist I'm in charge of the research and IP envy chain so I'm going to talk about a little VTrans IP and research progress okay let's talk about MPP and its implementation so one of regions missions is to allow mass adoption of decentralized applications or D apps for ordinary people and enterprises so we have to figure out what stops people or enterprises to use the app right now so it turns out it's simply just because it's very hard to handling crypto assets you might say wait wait wait wait it's it's if you said you're talking about crypto assets it's not Diaz but in order to use the apps you have to acquire such an amount of crypto assets that's because when you use the app to interact with block chains you have to send transactions to block chains and these generations has to be paid by trip to assets so for people with very little knowledge of blockchain it's very hard for them to do that first they have to understand the rest concept of the blockchain and second they have to find a place to acquire crypto assets and third they have to master those tools to use the crypto assets to send transactions so it's really hard we all know that it's just a licker you ask people to use internet but they have to understand the underlying protocol underlying tcp/ip protocol if that is the requirement I don't think people going to use internet because it's just simply too hard so as blocked in platform what we can do to change that situation so our solution is the MPP is the multi-party payment protocol what it can do is it allows someone else to pay for your transaction cost simply as that does not change the current situation of using the D apps I will explain later so how is the MPP implemented our region so we haven't talked about much about that so there there we did three things the first thing is we hard-code the rules of MVPs into the lower-level blockchain protocol that means every transaction comes to regions of the system we'll try these rules to execute these transactions so MPP will be done for average reduction secondly we have implements them native methods to set up account relationships I'm going to get to the details in the next couple of slides the third thing we did we introduced a very cool feature we give every account a hidden property it's like the account have can have a master count poverty so the master count can use to managing various smart contracts and set up the the relationship between the smart conscious and and other accounts so I gotta cover that shortly okay so you probably have already very familiar with this graph it's already on our white paper it says who pays for your transaction in region Thor we have implemented a hierarchical payment system is called a multi-party payment protocol as you guys already know we have been talking about that for a long time so the protocol says if the transaction Center is register user of the transaction receiver the transaction receiver can pay for the charging cost for the sender moreover the trilateral receiver can be sponsored by a sponsor account so the transaction cost can pay by the sponsor so here we defined two new relationships between accounts that's the leadership and the sponsorship the leadership is between the cherishing sender and the chattering receiver and the sponsorship is between the transaction receiver and sponsor when it comes to the question of who should pay for the transaction so the region thought system will check both the leadership and the sponsorship if the system find finds out that there's a leadership between the cherishing sender and the transaction receiver it will check the credit plan the Chilean's receiver has set for the tracking sender so if the challenging cost is permitted the system will deduce the transaction cost from the account balance of the charging receiver it will also check the sponsorship so if there is a sponsorship in place and the transaction receiver is going to pay for the charging cost for the tracking sender then the phone is going to be deduced from the account balance of the sponsor accounts with MPP the D app users now can use the ABS without worry about these assets because if they are the register user of the D apps so the D apps will pay for the they're charging cost also the owner of the charging even the app operators they could be freed from handling the crypto assets because they can find some sponsor who is specialized in managing digital assets to pay for their the apps so in order to use MPP we have to find a way to set up these account relationships for example you have to have a matter to set up the usership also you have the matter to set up the sponsorship – to implement the MPP so envision Thor if you look at our Genesis block you probably find that there are a few small contracts deployed in the block so one of them is called a prototype you can also find a source code on github so building smart contracts defines all the methods we can use to set up and manage account management this prototype defines all the methods you can use to set up and manage the account relationships for for MPP also a very interesting you might be find out that is the source code is not implemented in the smart contracts code if you look at the code is only the interface for all the methods so the source code is actually natively implemented as part of the region Thor so why we implement these masters natively that's because a native matter can help us to store the relationship between accounts directly to the blockchain state and this kind of information can then be accessed by the system when when it's execute a transaction okay so when you send a traduction to the prototype smart contract you call a method to to set up for example the leadership for a particular account what the system is going to do so first the system will check the the tractions receiver so here if the receiver is the product type smart contract address like this address is fixed so if if the receiver is the dress then the system is going to intercept the whole process and normally if the transaction receivers jazz is not those building smart contracts address it will go to the EVM to charge you execute the Chad action if the Chilean's receiver is one of the building smart contract suggests the system can intercept the process and it will try to figure out what native methods the Chad action is going to call from the data together with the transaction and cause native method okay now let's look at what native method has been defining protocol spar contract so we have sat users remove User is user here the first set of methods let you to setup remove and check the leadership the second set of method is let you check how much crab has you've given to your user to use and also set up a new credit plan for your user to use we also have sponsor and sponsor and a sponsor these matters can be used by the sponsor accounts to set up sponsorship or remove the sponsorship or for others to check whether the souther ship is in place also we have the slack sponsor and the current sponsor so for average smart counter they can have multiple sponsor so we can we can use select sponsors to select a sponsor to sponsor the smart contracts so every smart country can only have one active sponsor who pays the money for the smart contracts we can also use parent sponsor to check whether this account is the Kara sponsor offer smart contract and also we have set master it is a method to let you to set the master for spa contract or any accounts so we will cover master property in the next slide so if you really interesting at the implementation details you can check the source code listed here okay let's talk about master counts the hidden property of every account our vision so I have mentioned before so what is master counts when you deploy a smart contract the deployer is automatically set as the mass account of the smart contract so what the master can do is the master account automatically got power to set the usership for smart contract to set the credit plan for the smart contract it can also remove the user ship to change the credit plan or even assign a new master to the smart contract so here is a situation it's very likely you encounter when you are managing a Dee app on region Thor so you probably have multiple smart contracts running on reach and Thor and then with the master property you have the one single master account managing the smart contracts so from this account you can set users for smart counter one you can set users for smart counter – and also you can for every smart contract it could be multiple sponsors available so you can use the master con to send transactions to prototype smart contract to select which sponsor is going to pay for a particular smart contract so the benefit is obvious so with the master account mechanism the operator of the app can use one single accounts here to manage all the smart contracts [Applause]