The reference Enterprise blockchain architecture, with PegaSys Orchestrate

ETHCC 3 · March 2020 · 15:13

Nicolas Maurice presents an enterprise blockchain architecture integrating PegaSys Orchestrate.

Speakers

Topics

From ETHCC 3, hosted by Ethereum France.

Transcript

we are seeing the reference architecture for enterprises today so my name is Nicola movies I am co-founder of Kazakh straight I am part of Pegasus team at consensus before funding because it's orchestrate I've been working with some in the finance industry building decentralized platforms and this is basically part of my what I learned in my journey so maybe a quick word about Pegasus we mainly do three things we build infrastructure products we build we do some R&D around earth to run at 2.0 and around a lot our own privacy and third we also have a

small team that is working on standards so for example we are working a lot with the Enterprise Alliance but the products that we build so the ones that you probably know is Appalachia baizhu formally named Pantheon so it's your own client Java Bay is Apache - it's coming with Orion which is a private transaction manager for bezoars equivalent of Tyrion quorum and a trainer which is a private key manager we are selling some extra features around a zoo as the form of license with Pegasus press and since September we are now also proposing Pegasus orchestrate

which is infrastructure system that is living basically on top of your blockchain and we will be discussed it a bit longer so those are the projects that are today prediction already at Pegasus and we are also working on another project which is my early stage Tikku so formally named Artemis which is our it's um 2.0 client so about our castrates so orchestrate is basically a middleware that allows you to connect business systems or business applications to blockchain it provides all those features that you need around transaction management private key storage smart ins registry it is multi

chain multi-protocol and we are trying to build the most so trying to do our best in making these software as advanced as possible in terms of so for example providing high availability multi-tenancy and monitoring so first to recap what we mean by transaction management so we include there every sickly managing the lifecycle of your transaction from the moment you start generating the transaction sending the transaction to the blockchain the transaction will be mine on your blockchain and then we grab the track Direction received and we post process the transaction receipt present transaction has been mined so we include

their crafting the payload of the transaction so basically taking your smart contract and creating the bad codes that you need to send to the blockchain to get the transaction executed we have the gas management we have everything related to nonce management the signature of the transaction sending the transaction to the blockchain and then when we are processing the transaction so decoding all the logs and events that are generates it into your into your blocks and transaction received so the idea of orchestrate was to provide a way to abstract all the complexities that is coming when you are

trying to build a blockchain platform and so the first thing that we did was to say okay we need this platform we need orchestrate to be compatible with any easier blockchain network so orchestrate is multi chain and multi-protocol when we say we will to change that with a single applicative layer you can connect to multiple blockchain networks simultaneously so for example here you can connect to for example a non-christian using a pallet rabisu you could connect to an infra node or you could connect to quorum network running on called--oh and we are giving you one single endpoint so you

can connect to all these networks simultaneously through one single left endpoint so then around private storage so we so will rely heavily on asha covered so Isaac of volt is technology for secret storage so basically we have within our key straight a specific micro service which that we name the transaction signer this transaction signer is is capable to interact with a sheik evolved 2,000 transactions we in the design that we have proposed all

these all the private keys are living in a protocol in the network as a user rated zone so basically we rely on some asynchronous communication in our back-end so the transaction signer is always pulling information from the outside and to do that we rely on Apache Kafka which is message broker distributed message broker so basically when you are requesting the execution of a transaction with orchestrate at some point your the payload of the transaction will get in this network address rated zone so we can sign the transaction in the most sexual fashion so what is interesting there is that you cannot access this

area so the network is rated zone with an incoming so basically with traffic that is coming from outside this traffic is only being pulled from inside so from the inside so once you can connect to any blockchain once you can store your private key securely now you want to be compatible with any smart contract so the way we are so what we are providing here is smart contract registry so the smart contract registry is basically a storage where you can keep all the artifacts that are produced when you are

developing your smart contracts and we are making this so you can integrate it in your in your development integration so for example in USA City process so for example here you would at some point in your development push the smart contract to the smart contract registry and one dismal once the smart contract has been registered the transaction manager will be able to get automatically compatible with the smart contract so basically saying that any transaction that needs to be generated for this one contract can be generated or any received that needs to be decoded from the smart contract will be able to be decoded another interest so another interesting thing that we have been

working on is so when you are so right now it's hot so when when you need to trust the smart contracts that has been deployed by someone else the best the way you have to do it is by basically taking the source code so for example use the solidity source code of the smart contract we compile compiling this source code and then comparing the byte code with red code that is deployed on the same it can be quite cumbersome and when you want to do it this in the production fashion and going fast it's not so easy to do it so we are watching with X which is the security audits production as I said sorry SAS platform that consensus is developing so when you

registered your smart contracts in the contractor district we get this security audit by MIT X we retrieve some security audit flags that we can keep in the contractor district and so basically from this point you can say when you are interacting with a smart contract ok I can trace this mat contract because I know that it has been audited by ethics so it's compatible with any kind of contract of course as our ESC custom smart contracts that you are building for a custom platform and so now speaking a bit more so one of the feature which is so must-have for any enterprise blockchain platform is the

availability so basically the ability of the system to be available at all times so basically if a user connects to your system and requests transaction you want to be sure that you will be able to serve this transaction so for that we really rely on apache Kefka which is the source of distributing message broker and which allows us to basically go for multi availability zone deployment in an active active fashion so basically saying that you have you can have a calf calculus with servers in different

availability zones and we can and we deploy orchestrate also all the stack so all the micro service of orchestrate in each availability zone and by relying on the calf cavity partitioning we can so to pick multi partitioning we can have all these three orchestrate instances active at the same time so far some on the underlying technologies that were using so for example of all I availability set up a vault is an active active passive one so you would have one so you would have an instance of all which is active at all time and

storage and done is with vault you can use distributed storage so for example you could use concern and so that would allow you to get high availability over your private keys as well for PostgreSQL that we are using for example to persist the smart contracts and say be and artifacts generated from our smart contracts you can also have this kind of active passive setup have suffice and perish one cloud usually you will do use a new manage PostgreSQL that is basically mirroring this kind of architecture and then so something that

is getting like very important frontal prices today is how we can control our running costs in a decentralized ecosystem so basically taking for example here's the example of the consortium avanti's there are they will be around 100 companies in this consortium the eight major ones want to have their own stack so basically getting their own system to connect to the blockchain networks as it will be deploying but for the main major it's also maturity of those so for the

smaller companies basically that cannot afford to have a full stack running running so what how can we deal with that is basically by with by using multi-tenancy so we we are providing one shared stack for all the small companies that are not able to accept to afford to have the complete stack to pay for come to stack and then basically you get each company will get its own money orchestrate so basically getting its own accesses to blockchain networks getting its own private keys getting its own

smart contracts and everything secure eyes basically using authentication control on this single orchestrate endpoint so for example here you could imagine bills were Ryan private network each issue symbol here being one Assyrian place Orion node and you could have three applications application when accessing the first node application to accessing the second node and application tree accessing the third node and application one could not have access to the private information that have been generated for example wiser

not to because things of this multi-tenancy model same application one here will not be able to get transaction sign with a private key that has been created by the application to and same for the smart contracts so that's it for me for this evening trying to make sure they shot as possible thank you for saying follow time if you have any questions I would be very glad to answer okay so thank you very much

check-check