Ethereum in the Enterprise Environment
Devcon 1 · November 2015 · 16:04
Taylor Gerring presents on Ethereum in the enterprise environment. The Devcon 1 talk considers what businesses need to adopt a public smart contract platform, including integration with existing systems, privacy and reliability, and how Ethereum could fit inside corporate infrastructure.
Speakers
Topics
From Devcon 1, hosted by Ethereum Foundation.
Transcript
so I'm gonna be talking about something a little bit different today as Jesse mentioned my name is Taylor Goering I've been working with the etherion project for about two years now she's quite a long time in this space I suppose I've been doing a variety of things from server administration to working on the website I've helped with the go client on Jeffrey Wilkie's team I've written some blog posts I'm active on reddit so you might have seen my name around there a bit but I'm not going to talk about what we've worked on to date so far I want to talk about the future and where athyrium could bring us in 2 4 5 10 years there's a lot of interest from
enterprises out there and although the public block chain gets a lot of the spotlight in the limelight I think there is a case to be made that a film can be used in an enterprise environment not just for removing trust and removing intermediaries but I think in a general sense as technology stack athyrium is really powerful so the things I think that it can bring to you your environment if you're an IT manager or an executive basically my cell to you is that a human can increase agility reduced risk and lower costs so really the first question is do blockchains have a role in the private environment to answer this we really need to
understand a little bit more about what is a block chain where it came from how we got here and to do that we need to know that bought jeans are really a culmination of prior work Satoshi didn't just come up with this randomly one day all this magic boom there it is no it goes back to the 70s ralph merkle inventing Merkel hash trees patenting that in 1979 we also have distributed hash tables became really popular in the 90s Napster was a big way that this kind of made it into the public mind chair and eventually we had the proof of work system which as I read was first kind of developed around 93 and then finally
formalized in 1999 and these three components are kind of interesting in particular in certain ways the way I look at it the hash trees are effectively you know this data structure that the blockchain is built on the distributed hash tables or dhts is a kind of this networking component and finally we have this proof of work thing and this seems to be the most confusing part of it all what are miners what are they doing people kind of call it validator sometimes in some circles this seems to be a huge point of contention that only proof of work can exist but even with an etherion we're trying to
look at solutions of proof of stake and kasper and so forth so that's great you've told me what block chains are made of but what do they really do now when I started thinking about this it kind of reminded me about the scene from this movie idiocracy really fantastic movie if you haven't seen it wasn't terribly popular but hilarious in its own right and just to set up the scene for you a little bit the main character is kind of trying to explain to his colleagues that putting sports drink on plants will not help them grow they don't quite seem to understand why so
let me just let you watch this and maybe you'll get the idea what's killing the crops is this Brando stuff the Broncos got what plants crave it's got electrolytes so wait a minute what you're saying is that you want us to put water on the crops yes bladder like out the toilet well it doesn't have to be out of the toilet but but yeah that's the idea but brawndo's got what plants crave it's got electrolytes okay look the plants aren't growing so i'm pretty sure that the Brando's not working no I'm no botanist but I do know that if you put water on plants they grow well I've never seen no plants grouted own toilet that's good
you sure you want to smartest guy in the world yeah okay look you want to solve this problem I want to get my pardon so why don't we just try it okay and not worry about what plants crave Brandon's got look thanks Dave yeah it's got electrolytes what are electrolytes they even know so what our block chains do we even know that's what I want to ask these people who don't seem to understand what I understand they seem to have a slightly different perspective on the view than I do for me block chains are a tool they're really wonderful tool but they're not going to replace all other tools though hopefully
maybe join an arsenal of other solutions that are out there but really the properties of the block chain dictate the use case my opinion is bitcoins are really good at value transfer etherium is really good at trusted computation both can probably do the other thing but really they have their niche and that's kind of it makes sense we see software serves different roles and for different needs it shouldn't really surprise anybody so I would say really blockchains excel at coordination but it's not just about the blockchain theorems written about more components than just this distributed shared ledger
idea we've written about the idea of swarm and we're not the only company or organization out there trying to tackle this there are lots of companies trying to do a distributed storage bit torn is obvious kind of predecessor to all of this we've also talked about whisper for dynamic comms messaging etc and this is kind of important because it goes back to this property's idea block chains are really good at coordination they can do storage for very very expensive costs they can do messaging for very very slow block times so if we kind of build in a couple extra components we can actually have a more
diverse ecosystem of tools and we when we start looking at it in this way we can kind of see it as perhaps a network database something that the neg gupta is written about a few times done some speeches on this is basically the scenario where code is data they're kind of both first-class citizens in this environment which i think is a hugely powerful idea that we don't fully yet appreciate yeah automatic synchronization fault tolerance identity for free and it's all cryptographically secured and validated to me as an IT person who might be implementing a project in an organization these are really great things makes my life much easier and I'd like to bring it into my
organization why well cryptography gives us nice properties data confidentiality data integrity authentication non-repudiation but it's kind of complicated if you've ever tried to develop it on Bitcoin it's not the easiest platform if you've ever tried to extend the idea of value transfer and do multi sig or arbitrary computation maybe you can get away with a few things but really it excels at value transfer and storage what we really need for block chains to take off is for it to be as easy as web development right javascript
almost every developer can program in java script if we can make block chains as easy as javascript everybody can use block chains in addition to that we've got organisations building other tools services frameworks toolkits consensus is building lots of tools and frameworks we now have athyrium block chain as a service on edger so you don't even have to care about setting up you can just spin up a vm in the loud start playing with it testing it figuring out in the ways in which athyrium or block chains can help you so the benefits that I would say you want to take away with this take back to your organization your IT managers your
executives is that shared code in this distributed EVM means consistent and predictable execution and append only database that's cryptographically verified it cannot be tampered with even by system administrators that's huge for regulators anybody that's in the business of auditing accounting or going to love this and finally automatic and low-cost distribution using peer-to-peer technology and this is where the other components like swarm and whisper will come in if you couple a blockchain as a coordination mechanism with something like bit torn as a data distribution
mechanism and then use something like tell hash for messaging you have a really diverse set of tools all interlinked knowing about each other cooperating with each other and giving you this kind of mesh distributed type network that when an office goes down or you have a mobile client that is only partially connected having to deal these kinds of problems goes away you don't have to set up database replication it's given to you for free so these are the reasons that I think etherium really beneficial for the enterprise environment and why you should want to investigate this not because blockchains just can remove trust or can remove
intermediaries yes they can do those things but is in a general sense of coordination mechanism and having these this code and data coupled together is a really powerful idea I've talked to a few of you throughout the week I've been working on a project in my spare time it's got this really awful name but essentially it's a DAP generator if you've started working on adapt at all you'll know that you have to write some JavaScript put some HTML and elements in front of it to give it a UI I found that a bit annoying and I tend to find myself as a general programmer does you know abstracting making things more generic so I wrote an interface to generate interfaces basically you can
just give it the ABI generated from the contract and it will give you a free HTML interface which you can just tweak with some CSS you don't have to tell anything about the contract just figures it out it knows what events to watch for its really really nice so I think as tools like this or built up we can really see more proliferation of this I tried to record this as a movie to save me the headache of having to do this live but my tools refuse to like export and put it in the presentation so I'm going to try to do it live here locally just to kind of show you the idea I'm running this on my local machine so hopefully I won't have too many network problems but we'll see so right just
going to start my minor so I've just loaded a page here it's connected to our guests instance we're watching for new incoming blocks and when blocks our mind we should see a little update here at the top here we have our contract this is just a wallet written in solidity we can compile this it gives us this ABI here and from this ABI we get this kind of free interface down here I've made it looked like this tab kind of interface but really this is just CSS making it look like that you can do anything you want to it this is all for free I didn't have to write any of this custom it's really nice i can deploy a contract
let's see if i can do that now ok so I've deployed the contract I'm going to wait for it to mine here there we go so it's been mocked mind and blocked 7226 I have the address there which I can see has been set in the to field here making it convenient for me to interact with it let me just grab my address here I want to check and verify that i'm actually the owner of this so go down to his owner paste in my address you can see it's pulling the fields together from the actual contract fields hit call turns true nice can check our daily limit so for multi sig we have no
limit we want to kind of raise that a little bit so come down here set it send the transaction wait for a block to be mined or two there we go we have a confirmation really nice we can go back to check the daily limit hit call returns 100 as we'd expect it's really neat I can even go into the logs and check for my confirmation so I see it was in some block 7 2 3 4 get logs there's my confirmation information what transaction where exactly in chain it
occurred the block hi the transaction index and you know log index the gas used and this particular fields on this now I haven't done anything to tell it about these contract or the functions or methods it's been all automatically generated from this ABI and this is really where this value comes in of having code as data having it in the shared location right we have it in this one spot we are given an interface on how to interact with it and no matter who you are where you are you can interact with it in the same way if you were to run this here on your machine you'll get the same exact results I think as we push forward these kind of tools more and more we'll see more adoption of this in the enterprise and for me that's where the huge adoption
comes beyond the cryptographic space thank you very much that's all I have today time for questions if anybody has any minute yes where can we get your code this is on github my github name is T Goering I have it running also on the like github pages but due to the limitations of browsers between HTTPS and HTTP it doesn't really work so well
but all you have to do is get clone and open up index.html and it's there I will warn you it is under heavy development and not perfect but the codes on github any other questions