New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

EthCC 2: Vlad Trifa

Ethereum ParisWed, Oct 9, 2019, 12:00 AM

EthCC 2 EthCC, the Ethereum Community Conference is created by the community, for the community. It brings together great minds and forethinkers, and allows the community to grow. Follow us : @AssethFR https://ethcc.io

Transcript

is a function good morning so uh welcome to our presentation so i'm vladivo i'm chief product officer at ambrose's uh normally angel is presenting with me so he's been in something else because of the timing issue i'll talk a little bit about the convergence of iot and blockchain how the two work together and a subtitle for the presentation is how to remotely control alarms so you don't wait two hours to turn them off that's a nice title so before talking about iot i just want to uh talk a bit about the starting point of our project which is look at supply chains today how stuff is moved moving around the world you have lots of fraud lots of problems especially in the food or in pharmaceuticals you have a lot of problems tracking where medicine comes from there are lots of people dying every year because they are ingesting counterfeit medicine which is not what it's supposed to be so that's a big problem and it seems to be even bigger and bigger every year for some reason although we live in a digital world and things should be better the way we move stuff around the world becomes messier and messier so our vision is really that combining iot so sensors all sorts of devices to track physical goods as they move around the world and blockchain can fix that because when you have lots of companies shipping their products you have suppliers you have manufacturers every step in how products get moved creates essentially an opportunity for someone to to enter and do something something bad in the system and by digitalizing all this process by monitoring with with sensors we can increase uh the security and especially the efficiency of how stuff moves so iot i think there's a tsunami in last few years for 10 years we hear the word but i think we see more and more devices getting connected to the internet toothbrushes all sorts of weird things for some reason get connected to the internet so that's nice but in fact there are still quite a few issues around iot today that still haven't been solved and that's been for over a decade now which we kind of call the three asses the first and maybe the biggest one in in iot is the notion of standards so we have hundreds of standards out there there's no universal standard for iot especially when you think large-scale iot systems not small setup but really global type of systems where you need interoperability that problem hasn't been solved so it's really a bunch of intranets of things the second issue is scalability you're looking at large and large amounts of data we're talking about billions of sensors being connected by 2020 that's like terabytes of data generating every every hour which need to be collected we need to be processed stored shared and so on that's the second issue the third one of course is security and i think i've been in the iot space for 15 years now i think and the last the first question that people are asking when you talk about iot is well what about security and the answer is oh let's make it work and we fix the security parts later now you look uh the consequences of that you have your fridge being used to hack other systems you have a bunch of problems around uh security in iot because it was done in a very lightweight manner and i think the the third argument really here is that uh learning from iot from blockchain security can make those systems a lot more secure so one of the first observation is essentially that blockchain kind of loves iot and there are lots of very interesting opportunities for making the iot a lot more secure a lot more efficient and especially a lot more scalable so i want to address a little bit how those three problems can be solved after each other so at ambrose's what what our project is really is to build a decentralized middleware uh really a data transmission processing system for all sorts of sensors and uh and applications to be interconnected to build really large-scale iot applications and the very important aspect is it needs to be decentralized it needs to scale in in a very efficient way we really focus on supporting both private and public data because many of those iot applications especially industrial ones they require data to be private or at least very well secured so not necessarily publicly accessible we've been working on a universal data model which i'll get to in a second which is a higher level abstraction because if you look at blockchain it's essentially transactions smart contract calls wallets but for iot you're talking about data streams you're talking about applications and higher level constructions we wanted to make sure that the the fees for using such a system is stable because if you are affected by volatility of cryptocurrencies no industrial project or enterprise can really use that because they have no way of predicting how much the system is going to cost pretty obvious uh we really want everything we're building to be uh to be fully open source so we have lots of things as well that that are there so it's kind of an open kitchen approach and then that thing also needs to work based on crypto economics so really a sound way of incentivizing the the participants so this is the overall stack um so the at the core of the of what we're building is essentially a core blockchain which is regulated kind of the the brain the logic in the entire system on top of that we've built a decentralized but incentivized storage layer which works kind of like ipfs or swarm which is designed to store all those terabytes of data sensor data that needs to be stored the third layer is really all the apis gateways because a lot of the applications and a lot of the traditional enterprise systems for example in iot they are very much used to classic rest api so it's really the whole developer stack and on top of that to to develop a variety of dapps that can talk to sensors that can talk that can process sensor data and such um now let's let's address those three problems a little bit more in detail so the first one is really the standard so if you look at iot today that's essentially how it looks like you have a bunch hundreds if not thousands of protocols and when you're trying to build an iot app that can control a few things in your house for example you need to learn about a bunch of those things like many of them are very very obscure like bacnet uh an ocean extend which is even older bluetooth maybe is the only one that people might be quite familiar with uh zigbee of entry but there are like hundreds and that makes it extremely difficult to build an application that integrates data across a variety of sensors and makes that all work together so one of the solution we've been working on is is really what we call the web of things because we say the internet of things which is kind of low level but what if we add a web layer on top of that so it's really about using the same protocols that we use on on the web today so all http json and everything that web developers are used with and be able to interact with the physical world just by sending http requests so that's really what we've been working on for for over 10 years i think as an idea is really to build all that higher level it does make perfect sense because first and foremost you can leverage everything that's out there for web for for web services uh caching security all of those things come for free and you can suddenly start sending http requests to lamps to alarms instead of turning them off um all those things would be very interesting and tcpip wi-fi is pretty much ubiquitous so it's less and less an issue today http as a protocol was really designed for large-scale loosely coupled decentralized systems and i think when you look at the history of hdb in last 29 almost 30 years it's it's been around you can see that even though the protocol has been evolving very very little the type of web applications we do today on top of http has completely changed uh although the core protocol at the core hasn't been evolving which is very important because that leads me to thinking that there's so much that was already built in http and most websites or most web services are using maybe 10 of the standard and we've done a lot of research to show that you can actually use that pretty efficiently for streaming data from devices the third reason is really you can integrate with the existing web ecosystem so you can imagine suddenly integrating all sorts of physical stuff directly in web pages where you can create javascript's lightweight client-side applications to control the physical world around us which is really interesting and finally maybe the most exciting uh reason why using web technologies is it's extremely easy to learn for developers you have like millions of people who can do javascript who can learn very very quickly as opposed to the very obscure sometimes proprietary protocols that are being used by devices so uh all of that turned into what we did a few years ago which is what we call the web thing model so essentially the idea here was to create a json representation a data model how do you describe devices how do you describe the features of a lamp you know very much uh it's almost in the standardization way but without adding a lot of constraints because if you look at many standards they try to monitor the entire world and that becomes so complex that no one used them what we tried to do here was to make one that is as simple as possible to build apis for physical products in a very universal interoperable way so the the the model we've been using and that's the one we we also use on our project and process is essentially modeling everything in the real world as you know every time you want to track something in a physical world an object here for example is a is a is a pharmaceutical kit where you can transport vaccines that need to be stored at a certain temperature that becomes an object a unique object you can put a sensor in it and that sensor will be linked to an asset an asset this is essentially a globally unique digital identity for a physical item that is stored persisted on the blockchain so you can make sure that you know no one is able to interact with with an asset that essentially comes down to what we call serialization so if you if you look at the pharmaceutical industry there are more and more regulations obliging every single box of medicine to have a unique identification number and that's something you get as a side effect in one single api request you get serialization in a crypto secure way so if you have billions of products to you want to track individually you can create a billion assets uh right away and then all the information you want to add about that asset for example when uh when when this bot was uh when when it was uh fixed when it was transported when it was uh transported it wasn't really caught it was manufactured but anyway so that's the idea is you can do that through events and events are pieces of data you attach to asset over time every event is timestamp can have public or private data you might have some events that the public needs to see because that's a public piece of information just so you can have some very private data you want to attach about the product for example that the regulation requires you to store about your medicine but the public shouldn't necessarily see so all of that you can do in a very very simple api layer on top with a very very simple json data model so now the second problem when it comes about scalability uh what we've been exploring is to do a layer to scalability via what we call gateway so the way it works and what we've built one of our component is essentially we call it hermes and that's a rest api a proxy between the blockchain and your traditional applications so suddenly you can just use our api very simple script your app whatever you want sensors who send data to this api all that data gets stored either locally if it's private data for the events and if it's public then all that information gets put in what we call bundles a bundle is a big chunk of data it's a file that can have 150 megabytes and that bundle gets uploaded to to the blockchain uh where the proof of that data stays on the blockchain in a transaction but then you have those additional layers those additional data storage nodes which get paid to store that file for you and they kind of watch each other to ensure that no one is modifying historical data so don't want to go too much in the details but happy to discuss that afterwards so this is just the same way at scale so the vision was that everyone can run the hermes node it's entirely open source right now anyone can download it and you have like a tiny iot cloud iot cloud if you want on your laptop you can connect your applications to you can scale you can modify you can use whatever data storage you want and what it will do is package all that information uh upload that to to the apollos which is the blockchain element itself and the apollo will coordinate the storage of the actual file of the entire 150 megabytes for for that bundle uh and reward the different nodes that are storing it so this is very interesting because uh we are not bound by the is of of a blockchain itself because in one single transaction we put a bundle which has 20 000 sensor readings um so we even if we don't have hundred thousand tps is on the blockchain that's absolutely not an issue because we can record millions of data points per second anyway which was very very important for the iot applications where you just cannot be bound by the current limitations on on blockchain and there is very little reason actually to store all the data on chain as well um so that's the second element the third one is really the security so blockchain data is nice but how do you trust the data in the first place so that's been always the biggest issue in supply chains is you know yeah on the paper everything looks good but you always have the human in the loop which kind of opens a box which adds additional counterfeit products so it's really about controlling the physical flow of goods how you do that how can you trust um where goods are how they're moving so for that we build our own sensor we call that l1 but essentially it's a very small sensor again open source what's really interesting about it it you know it's it uses bluetooth for communication has temperature humidity shock basic things what's really important is we had to create our own custom sensor for that because we wanted it to be really controllable and programmable and especially it has a cryptochip on it so there is really a hardware security which signs every single data which is measured so even though you have a mobile phone that downloads the data you still have the actual signature for every single reading that came from the sensor and that's already very different from pretty much 99 of the iot today which only uses encryption but when you have encryption across several hubs you kind of have to trust that in between no one is messing with your data and you have no guarantee no way today to prove that some sensor reading actually came from a device or was actually modified in between and that's one of the key challenges we've been solving so we have a lab in switzerland where we explore the the hardware really the physical part that can be attached to products to boxes so uh maybe just the last point i think what's really important is the tooling so that's always been a challenge for blockchain for iot application is it's it's not easy to build those things because you need a lot of components you need to manage the identity of users of devices you need to process data you need to integrate applications and and systems together and there's a lot of wheel reinvention lots of people who redo the same things over and over so we really really tried to to to simplify the development process of combining both iot and blockchain in one we really try to focus on a developer platform so all of that is documented on our website we try to put all sorts of sdks obviously web sdks for building web apps that exchange data with devices native apps native sdks for for native apps ios android for reading data from the sensors for example we're also building a bunch of embedded sdks so that devices can talk directly to our nodes and the keyword here is fast prototyping because a lot of the projects even in blockchain traditional blockchain it takes a while to build just to have a first proof of concept and i think the that's especially true for non-blockchain developers so when you look at big companies they first want to understand the value of blockchain for them before investing substantial time to build a proper solution they really want to prototype and understand so we really focus on giving them the tools uh to identify the value of blockchain uh first and once they understand once they were able to build those apps and test and improve and refine them with clients then they can take their own hermes node they can scale it they suddenly become internally in control of their data and there's no more centralization but the point i was trying to make is assass can help a lot the development because you don't have to worry about setting up all those components and that's something like infra if you want having a proxy such as infra to building your abs created a bunch of uh of of ease for new developers to to jump in and build stuff so you know just just to conclude i think what's really clear is that the iot cloud you're seeing today big companies having their iot cloud are just not going to work at scale there is no way you can scale that to support all sorts of systems and devices efficiently so the the best tradeoff to scale such systems for the future is a combination of more core blockchain a public blockchain that different systems can plug on but a lot of the scalability comes by having off-chain data which is secured on on the chain essentially and the proof of that is is working so it's really a combination of easy apis distributed iot clouds if you want that are all linked together with one single chain of truth um and this layer too this way really gives you the performance the the security you need for scaling those applications um obviously fixing the data integration has been and will remain a big challenge until we start standardizing how do i define the functionality of this project of the lamp of the sound system in a truly interoperable way blockchain security that's really interesting and i think that should become the new uh default for any type of iit application so really using a strong cryptography not just not just encryption but literally signing hardware security and such um to make all of that work at scale you need as well a good crypto economic system that incentivizes participants to work and to check each other's work and finally you really want a good set of tooling something that provides you all you need to build scale manage and eventually monetize those applications so thanks a lot for for your time um if you have any questions i don't know if we have time but otherwise i'm around i'll be around we're very findable so happy to hear from you thanks [Applause] you

Automatic transcript — names and jargon may be misspelled.