Day 2: Abdul Haseeb (Microsoft)

Crypto Valley Conference 2018 · 21 Jun 2018 · 33:43

Abdul Haseeb of Microsoft speaks on Day 2 of the 2018 Crypto Valley Conference in Zug about enterprise and cloud-based blockchain deployment. The talk reflects Microsoft's Azure Blockchain initiatives helping large institutions build and run distributed ledger applications. Specific project details are not given beyond the speaker's corporate affiliation.

Speakers

Topics

From Crypto Valley Conference 2018, hosted by Crypto Valley Association.

Transcript

[Music] our next speaker is a data solution architect focused on machine learning and blockchain please welcome to the stage Microsoft's Hasib before this hello oh hi guys my name is asleep I'm work for Microsoft and I'm coming the AMIA region Sun effect annex IBM a so joined Microsoft very recently so the honest I think it's a it's not a good way of continue the hybrid fabric conversation which which with dr. Kayson

was doing so the idea of my talk is that I will discuss the enterprise aspects our learnings different mistakes which people do when they try to implement a blockchain based solution especially for enterprises so I will not talk about I cos I will not talk about public networks I will not talk about cryptocurrency I will talk about those enterprise build applications so we we see a lots of value a lots of lots of traction within attraction within industry so first of all let's see so um so maybe all like here this thing we all like talked to different people and there is a huge misconception around technology so people consider bitcoin a

theorem as a blockchain technology but this is this is the first thing we talk to different people about that they have to consider blockchain protocols they have visited blockchain technology they have to consider this limitations and so on other than confusing it with for example Bitcoin so in summary first of all the key learnings that we have John in past couple of years so I mean again like my experience goes from IBM nor at Microsoft so talking to or like working with a number of different customers ranging from startups to healthcare organizations to organizations like NATO and European Commission to different financial sector institutions so the key learnings are that the benefits of blockchain are also is biggest bit for

so for example we always position blockchain for simplicity and efficiency we say that it can simplify it can automate it can improve business processes but this is where a lots of lots of complications come in as well because there is no clear understanding around limitations of blockchain technology so I mean if you are thinking that blockchain is going to solve all your problems this is a big mistake blockchain is one of the possible technologies is not the only technology I mean blockchain will serve as a source of truth you can have a shared data repository which you all can trust but

it's not a place where you want to have all your compute to locate it's not a place where you want to have advanced analysis machine learning sequel like where is etc so I think it is one of the possibilities is not the only technology then we always position which say that blockchain is going to provide our trusted secure transparent data repository now again this is also our biggest pitfall because then we talk about data repository we have to be extremely careful what we put on this data repository what we want to share with different different members of a consortium what we want to how we want to manipulate that data because one

mistake if you don't know your actors if we don't know who is transacting with the blockchain that for who is replicating your ledger it can be it can be a big problem digital identity everyone talks about blockchain one of the cornerstones of Heric a successful blockchain implementation requires a strong aspect of digital identity I think I think there were like a couple of talks today around this on this topic as well then the value of blockchain is all around decentralization collaboration and then the aspects of regulations aspects of how different compliance aspects will be taken care of they're always forgotten I said I said earlier the blockchain will

not replace the compute part and then there's always reservations there always concerns around external data external computing how we can solve those different things so again I mean for my experience we start a blockchain project we do a proof of concept everything is good fine but as soon as we just want to want to go to a production base or a production grade solution we have to go through all these reservations so I mean not only are these are the key aspects the key learning that we have done the orders or the course a couple of years but these are also the pitfalls now in terms of best practices what we what we make people understand what we make

people think is that thing along these following five different different lines first of all look into governance I mean and I mean and the governor's can mean that as simple as the aspects of Network administration who will do that do we trust and authority are we gonna talk about a decentralized network administration again the issues around key management the issues around external computer all those issues are still there again I mean we're talking about a consortium that work our business network comprising different organizations who will have the authority to vote who will add some new

member to a consortium what if we want to take away the rights of a given member from a consortium how will we bring that transparency how will we formalize all those requirements all those different criterias in fact I mean in terms of a consortium building one of the biggest hurdle is to talk about different governance so imagine two different banks sitting on the same table and they are arguing around the network infrastructure environmental restrictions we want to impose that our block chain Network needs to have a certain version of a blockchain protocol this is how it should behave this is how it should report back to us if something bad happens again the aspects of

governance change management I mean small contracts will never stay the same evolve how will we manage this change change aspect how will we create a CIC the environment around around around record based on our own were smart contracts then around then about confidentiality I mean the things as simple as favoring transparency over confidentiality I've been a very misunderstood topic I mean the beauty of blockchain is to have a very transparent system a very transparent environment but you also always have to consider the aspects of confidentiality aspect IP stored on Ledger's how many times I have talked to customers and they are

concerned by exposing their intellectual property and business concerns business sensitive logic on the blockchain network again something that we have to address so I mean the responsibility of developers responsibility of all he takes is to look into all those different aspects be a governess be if it's around scalability if it's around compliance if it's around ecosystem we have to think about all those different aspects if you want to have any success within with an enterprise baktun adoption now the industry I mean the way the way we see the industry evolving is started with this Bitcoin then came the the mentoring in the notion of smart contracts and now maybe see all the

development happening is all around blockchain 3.0 it means that making blockchain cloud serviceable providing our confidential compute environments for blockchain creating an identity solution which can work with enterprise grade applications creating a secure way of interacting with the blockchain that from outside world what if you have different Ledger's for your different cases how will you provide integration between different Ledger's that way how will we support our data repository for our analysis which is backed up by a blockchain so all those aspects are the ones we are seeing a lot of development happening towards now we we took that learning in our team and we said ok

let's let's think about all those all those factors which is causing and prices do not adopt blockchain so easily they said okay how we can reduce that barrier to entry and this is essentially Microsoft's approach so we are not talking about concrete solutions we're talking about generic frameworks generic tools improving developers so that they can develop enterprise-grade applications so that they can satisfy all those function and all social parameters for enterprises so first of all what we do we provide or we follow an open third approach it means that we take the open source box chain ledges I think right now we have six Ledger's

supported so I mean meaning from Harvard in a fabric 1.1 along with composer to be 3m to quorum to multi chain chain to record etc and we believe that in an enterprise you will be using different blockchain Ledger's for different purposes so it doesn't make my sense to limit you to limit an organization or limit used to only do the development based on a single ledger then on top of that the aspect of openness means we need to support an hybrid approach now if you think about this blockchain has beauty in decentralization and would it make any

sense to limit blockchain networks to reside within a single cloud venture no it does not so what we're doing in here is that the v8v are developing templates using which you can have a complete hybrid Network along with the best practices security concerns taken care off you can have a part of your network in Amazon quality powder with a network in Azure you can have power in a network and IBM SoftLayer you can even have a part of the network on on-premise as well using edges using your own data center so I mean in essence the network deployment a has become easy you have a bunch of different options over here and there's like nothing stopping you to only use a single cloud manager then a couple of

years back we started working with Intel so Intel came up with software called extensions and he said okay what if we can take this aspect of confidential compute and bring up a framework which can be usable by a block G networks as well so we started up this confidential consortium framework project is an open source project the technical paper is available on github and the code will be published sometime after summer as well so what we try to accomplish in this framework we said let's talk about the governor's first of all because that's the that's the biggest concern so in terms of governance we wanted to formalize who can join who can leave the policies you want to enforce the environmental constraints we want to

want to put on top of her blockchain that front and so on so we said ok let's have that network administrator and let's surface that a network administrator very very transparently as a blockchain ledger as well so essentially it means that congressional consortium framework will create a side chain for your all your network processes aside from governance you can have a very fine-grained confidentiality model implemented on top of your ledger as well so now happily the fabric is one example which has a good good good framework around managing managing confidential or private transactions but when we talk about for example in

theorem I mean it has a theme has a very different model and so we said ok we want to allow developers to have or to work with different Ledger's so let's provide one confidentiality model which is applicable to all ledges whether they support it or not so I said ok let's provide a very fine-grained confidence confidentiality model in which not only I can specify that I need to share my transaction to an organization but I can also specify that these given roles can access for example pricing details of my of my transaction and some other rules might want to access for example our contractual details so I mean those fine-grain

confidential confidentiality controls are in place as well and the third thing is the performance so since we started working with intel on this test execution environment we try to relax the limitations of the blockchain execution in terms of how they are deployed and how they are executed by allowing different pluggable consensus models and we have we have done some benchmarks in which we achieve close to 2,000 transactions per second on a normally 3m which let's say I'm a theorem proof of work which said on like ten to ten to twenty dollars per second and similarly I mean EP if we compare it with for example parity based networks or for example click based network again

the performance is very better so governance confidentiality and the performance then let me think about the blockchain in terms of a full complete ecosystem so we think that you would want to have a key management solution you would want to have an integration with IOT devices you would like to have a let's say a sequel store or some mostly full store or some other that I have positively backed up by a blockchain for all your let's say their data analysis needs you also want to have some sort of an identity management solution you also want to have a mechanism in which you can secure your

off chain compute have a a confidential compute environment around the often computer as well you also want to secure and I test any messages any triggers which are coming out of your block to network as well so said okay let's take all those requirements build all those different pieces different services together or if you have services available already let's levy those services and make them compatible with the blocks and networks so this is this is where this development platform option comes into play so you can have your production gate blocks your network through templates in a very hybrid and I'm very open it or open environment if you want to plug in or confidential consortium framework you can you can do that as well and for our development perspective for to develop a full

application you have all those different services available so among those services there's a service called Enterprise smart contracts or call credits as well this is also an open source project its core is also post on github as well and the idea of this Enterprise small contract is that we try to address the intellectual property aspect and change management aspect of the blockchain of the author of the of the blockchain based applications so it means that given the definitions of a traditional smart contract which not only contains the state but also the business logic and the ledger transactions for the underlying ledger we abstract out those details into a bi project into a

separate contract called Enterprise smart contracts which has to run in a in a in a in a confidential compute environment and the entire network has to agree upon the execution or the trust aspects they have towards that piece of corn and then lastly um the value of the blockchain is the fact that we have to first of all prove a business value I mean it's a technology which is begging for betting for a solution so I mean the countless number of lines I talk to customers and they say that we share a problem they have they can't possibly solve it through an on blockchain based technology so this is this is a very

this is a very difficult debate to win so so for that we built this as your blockchain VoIP anything and the idea of the blocks and workbench is that it scaffolds all those different services together so that you as an application developer can focus on application development rather than thinking about how you can create for example identities how you can create different roles how you can integrate IOT devices to your blockchain based network how you can have a sequel store or let's say a data like implementation backed up by blockchain etc and one of the beauty of blocks and workbench is that it is network agnostic so it provides developers a REST API which they at a

higher level and your application which is built on top of your blockchain workbench can work seamlessly with high pressure fabric as it does with the as well as it does with does it with ability theorem and then the entire operation and management aspect of the application is also taken care off so I mean I talked about like those things or ladies I'm gonna skim through those very quickly so you mentioned about laser as a service you have different options available so some of the key takeaways are that they are all open-source there's nothing proprietary over here and they're all supporting hybrid strategies I mentioned about the coefficient of insertion framework and open source framework it's second social based approach so we are not talking

about the public networks we're talking about known identities and this is based on the idea that a ledger can operate on a restriction environment whether it's in hardware based system like Intel SGX or through a software based AG like like like which is secure mode and this is not really a ledger it is just an enabling framework so the core processing of the ledger remains the same they provides a secure North node communication it provides the governance bed as I mentioned as a separate ledger in which all the network administrator is managed by the core data model of the ledger the core functionality of the ledger let's say in case of lithium EVM all those aspects remain the same now in terms of a

transaction flow of the confessional consortium framework so you have even more fine-grained controls you can even have controls in which you can specify whether you want to favor throughput or latency by providing different different levels of batching you can have different consensus algorithms for different cases for your blocking based system and you can of course you have the secure communication between between between different nodes and again the the entire transaction flow is agnostic to your underlying long chain ledger right so the key takeaways in terms of a confidential concession framework a it's open source based on the ease we have benchmarks which is obviously based on

rough consensus algorithm reaching around to around 2,000 transactions per second compared to 11 to 12 transactions per second on a normally etherium similar numbers are available for happily the fabric as well so there is so there is performance gain for Mijares affair with perspective as well and again this is all based on a standard kapok rafi and you would like to use this framework when you are dealing with a high super situation when you are dealing with the situation where you want to have a very strong - model in place and we want to have a very flexible confidentiality in place so it's more of a production level scenarios where you want to plug in this framework right and as I mention about the enterprise middlebury different

tools available etc so one of the monthly one of the most important aspect is the Identity Management so so imagine that we are talking about a business process we are talking about different organizations having their own business users etc we cannot expect them to create keys maintain their wallets themselves and then keep and secure in case of public in case of public networks they have an incentive in case of a business network they don't have much of an incentive so what we what we say here is that for that you need to have a higher level or sort of an abstraction of the identity management solution and then you have to tie that up to the underlying blockchain base

identities now there's always a discussion around where those keys should be stored centralization has a benefit because let's say the all the organization's sit together they talk about the governance they talk about that we are gonna use an HSM for the keys that's how we will secure the keys of all the participants of our business sponsors that works fine but if there are any reservations around the centralization of keys you can always have a decentralized solution over there as well but keep in mind that in the case of a decentralized solution you won't have much control and if for example an organization implements a key store in a bad manner and the keys are

compromised then your entire trust on a blocked in network will suffer so again this is just a recommendation over here but in terms of services from Asia you have the key management services you have the identify and services you have the data services which can provide an off chain data solution which is backed up by blocks in meaning that any transition which gets committed to a blocking network will get committed to your which bill will get committed to your off chains store as well and those data services make sure that even those data services are tamper-proof but it's not the same

level of tamper-proof ness as we have from the coop launch in that fir but since those data stores are backed up by the blockchain that work you can safely do your analysis based on your data stores data services and then in case of any conflicts you can simply revert back to your blockchain launching based Ledger's so what we know I mean but you know about the spark contracts we have state either there might be some dynamic dynamic inputs coming from external world might have some static static part as well and then you have a part of business logic and this business logic this state machine implementation produces Ledger's for your entire

underlying blockchain ledger now this is this v1 package that we know of so a smart contract contains the submission implementation properties and those Ledger's and we take a view that the smart contracts should emit those ledger entries those transactions they should not deal with logic as much as as we normally think they should and the meaning and the reasonable reason why it is that whenever we talk about Oracle's whenever we talk about external triggers external event going to our blocking that were there's always a concern whether we can trust that external service or not secondly the way those

smart contacts are deployed they are deployed to this entire network in the way this consensus algorithm works is that the incoming transactions are applied to the latest state of the ledger and this entire network has to agree that the resulting state is the the resulting state is consistent so there's no separation of concern and if if for example we have to do any code changes any change management we will have to redeploy the smart contract either we have to create proxies from small contracts we have to create some sort of a mechanism where we can be sure that the usage of smart contract is as as its intended and I mean and this execution and deployment has a big scale ability and disability concern as well

and I was messing about enter by smart contracts or clear plates so what they do essentially is that they create a separation of concern between you're off chain or compute they encapsulate them in a trusted execution environment and they have this binding process in which not only you as an organization can trust your own code but also the entire network which is comprised of different members can trust that this piece of code this trigger is coming from a service we all agreed in the beginning we know that it's coming from the same trusted execution environment we are sure that's coming from the same container that was provision is coming from the same host that we agreed upon in the beginning so

it is a way of creating a separation of concern in that way you can also control your intellectual property and you can easily provide version controlling by simply do of watching control over there as well so the way I mean the way if the way flow works so it's like an onion based approach so you have different levels of authentication so not only do your smart contract which you deploy to the Boston Network will get binded to this off chain compute part this enterprise smart contract but also the entire provisioning cycle in terms of provisioning of a secure and clay provisioning of a container provisioning of a host everything is managed through keys and the blockchain network whenever

receives up let's say a trigger it knows that is it that the triggers are made from the same piece of code that we all agreed upon so making the same secure Enclave is coming from the same container and then so on so forth but I mean the the technical paper is available the code is also post in github if you want you can also have a look look into triplets as well right and the lastly as I said that we have a blockchain workbench which makes the application development easier if which you might need in terms of an application development it's flexible I mean if you let's say you are not dealing with IOT based solution eBay scenarios you can skip the IOT part but the application development is based

on a high level API it means that I mean phone application developer it doesn't matter if your application is intended to run on on in Syria or on a hybrid fabric so it means that from from a blockchain perspective you have different proxies in place and those proxies make sure that whichever layer you use the appropriate API is underlying api's are used so the application development happens in a very generic way from an application development perspective you are dealing with a different level of identity to management solution the developers are not concerned by storing the keys or creating wallets themselves all they

have to do is to onboard for example a business user or or let's say a consortium member the keys will be handled through a key vault store again as I said I mean this key word store can be decentralized as well is again up is again a matter of pros and cons of around a consortium and once you have that business process that workflow it's only a matter of making sure that this workflow works fine and of course I mean you can deep dive into your block change ledger you can see how it looks like etc but it makes the job of application developers super simple some of the aspects I mean some of the key aspects are that I mean it has this IOT

integration so I mean it takes care of IOT device registration it assigns unique identities for IOT devices it mentions the keys for ITD's for keys for both devices as well it comes up with a rhythm both iOS Android and a in a web app so it's a matter of developers to customize that based on your own liking and then it has a bunch of different core components our own proxies around different DLT routers so meaning that you can have our transactions and you can specify rules that this transition has to go to a hybrid of fabric and this position has to go to the quarter and then so on so forth and then by deep and by design

this entire transaction flow once is committed to the blockchain ledger is also committed to an often store as well so right now I mean the default one is that you have a sequel store in place but I mean you can change the superstore do let's say our data array or for let's say our document store you can change that store to for example Amazon s3 and so on so on so forth so again the purpose is that it gives a reference architecture a built in solution for developers to start implementing their business processes their business cases rather than dealing with all only all the complex integration between different services right so whenever we like again like forget about all those different names so whenever we talk about let's say an application so we talk about like different layers of our application we talk about the UI part we

talk about the data ingestion power we talk about the business logic aspect we talk about destroy aspect reporting and so on so forth and this is where I mean you see here I mean here we don't have any blockchain in this entire ecosystem and this is where we see the blockchain blockchain is supposed to be used for a long-term archival solution it is secure it is transparent it brings transparency this is what this entitlement it doesn't internet but can agree upon but do not consider blockchain going towards a UI side or reporting side or covering your business business logic layer so treat blockchain for what it is meant for so I mean this is like one one mistake I see

people doing all the time and again going back to the fact that we as the developers if he has architects we have to think about these aspects very carefully we have to think about confidentiality we have to talk about governance easier or not we have to look into those things we have to look into compliance we have to make sure that if we are onboarding someone that person is authorized if we are adding a new member node who will have a copy of the ledger we have to make sure that he is authorized to do so we have to think about the ecosystem not not only about the blockchain and this this and this decentralize the application visit we have a lot service around that as well so just a recap so former developers an architect's perspective the approach for

Microsoft is that we want to provide tools which can enable developers to develop enterprise-grade applications it's not about public works it's all about consortium that work is all about creating enterprise data applications and then covering all those different bases different issues that enterprises face in terms of blockchain based adoption you have different open source projects so luckily the entire stack is more or less open source so you can have a look at a confidential consortium framework even have a look at Enterprise smart contracts I have a look into blockchain workbench as well you can modify the template you can start playing with that you have a much higher level of abstraction to do your application development and even we are using a tool in which you can document

your business workflow in an Excel document or in an in in sort of a workflow different rules and these smart contracts will be produced automatically as well so it's a matter of designing your workflow not a mention of thinking about all the internals and again those integrals are open-source they are or they are available and if you want to deep I will to the both of those things you should definitely do that and finally consortium building is extremely hard this is in fact like one non-technical thing that we always face so and this is where we have to be open to talk about governance we have to be open to talk about confidential but if you have to be open to talk about the confidential computer maybe we can

secure the data coming from external world and so on surface we have to be open about this thing always always question the participation to a blockchain network so make a distinction who is a member of a blockchain network and who is the sub participant whom we are permitting to transact and who will have a copy of the ledger always protect personal identifiable information so in Europe we have lots of concerns that all gdpr etc so we try to address those from the get-go we think very carefully what did I want to put in terms of blockchain protect you any intellectual property once it's in public domain once it's shared in shared within the console networks you can't really control that one hybrid has a very strong strong

value please leverage this and hybrid means that supporting or blocking network on different cloud vendors and on on-premise as well about ecosystem think about the limitations of technology know your actors what they want to do what how they will about how they will interact etc and always qualify your business kiss thanks so much [Applause]