EB73 – Dan O’Prey & Daniel Feichtinger: Hyperledger Decentralised Ledger Platform
6 Apr 2015 · 1:11:52
Epicenter's Brian Fabian Crain and Sebastien Couture talk with Hyperledger CEO Dan O'Prey and CTO Daniel Feichtinger about their approach to distributed ledgers. They explain why Hyperledger targets known-party networks rather than Bitcoin-style anonymity, how it varies decentralization and security by use case, and Practical Byzantine Fault Tolerance as its consensus mechanism.
Speakers
Topics
Transcript
hello welcome to epicenter bitcoin the show which talks about the technologies projects and startups driving decentralization and the global cryptocurrency revolution my name is sebastian and my name is brian fabian crane we're here today with dan o'pray and daniel feistinger they are the ceo and cto of a project called hyperledger now hyperledger has been sort of on a radar for a while tim swanson was telling us a while ago to do an episode on that and our interest was sort of renewed in that recently when we heard an excellent episode on beyond bitcoins about the internet of money with tim swanson and uh and mayor roy so really excited to talk about this today i think it's um
it's an interesting project so uh dan and daniel thanks for joining us today thanks very much for having us it's great to be here um so to get started can you just tell us briefly what what is hyperledger trying to accomplish okay generally i would say that we're not you know often as a starting point people assume that we're trying to be a bitcoin competitor or a counterparty competitor uh and i would say that we don't really generally view ourselves as being a direct competitor we're not trying to replace bitcoin it's more for different scenarios uh so we're particularly looking at financial services and more private deployments where there are already groups of uh groups of institutions or companies
who need to have a shared data layer that need to have it more private from the the public so hopefully just designed to be very very modular uh it's just a straightforward consensus system where everyone a set known of of uh parties can participate in a consensus process and all have access to the same universal record of truth uh without that being more generally public to uh to the public well it strikes me interesting about this project is it's trying to accomplish one very basic thing and the feature set is quite simple i've been playing around with it quite a bit in the command line and everything and actually like even going through the source code and i was surprised how how little how little features there are it just one does one thing it does
really well right yeah that was absolutely our goal in in building this um was it was exactly that approach um we feel some other projects kind of take on they're very complex very involved um very interesting but um we really want to and we do want to tackle kind of different parts of the stack in the future but uh that was very much our approach was let's just take the the ledger layer the kind of consensus process over the ledger layer and the kind of authentication and um signatures the access control over the accounts um and just really build a a neat robust solution for that um before we kind of move on to
different different points in the stack yeah we want to take a very modular approach so um yeah some platforms have a lot of features and that's fantastic but um it sort of makes assumptions over how it's going to be used and if you need to actually if you want to adopt the system and you might have to re-architect a lot of your your existing systems and integrate them so having to replace too much at once can be quite a large barrier of adoption to some entities uh so by having a more modular approach you can fit in you know we really just wanted to strip it down just to the the shared data layer fit that in as a module with existing systems and then we can work from there to replace other parts
sorry i mean personally looking at the different projects that are spreading up uh i mean just generally in the bitcoin space i find that the right approach is to have that really modular approach of like this does one thing and then other people come in and develop other uh feature sets on top of that or interconnect with other projects so i mean i think so far projects like counterparty for instance which nothing but there's nowhere near what you're trying to accomplish but is one example where having so many features in there makes it complex and difficult to iterate so um yeah i mean i think that's sort of a good approach at this state particular stage in the space where things are being built um and we're just kind of really early
on building all these modules that'll kind of fit in together i mean one thing that strikes me about hyperledger and not just hyperledger but quite a few of the projects that we've been having on and we've been talking about is that they feel very very different from this sort of traditional crypto uh you know cryptocurrency projects and projects in the space and that they get they get rid of a lot of the ideology a lot of the sort of political ideas behind it that maybe a certain barrier right especially when it comes to getting companies and corporations to adopt that and then sort of say oh let's use some of the innovation here
some of these blockchains and and decentralized technologies but then let's also throw out other ones especially the idea that it's controlled by uh anonymous network of nodes and and sort of pack you know take take somewhere and now create a sort of consensus as a service now that term has often been used so we create basically business solutions with that yeah we see it as a technology it's not a political movement um yeah i've seen fairly to the views behind bitcoin uh but yeah there are wider use cases which don't you know don't start from those starting assumptions and then the starting assumptions really
is quite key um and particularly with bitcoin where you you assume that you know based on history with uh hash cash and eagles uh that you know the government might attempt to take it down so it needs to be as decentralized as possible therefore you need to incentivize anonymous miners uh and so you need a cryptocurrency built in and that makes perfect sense when you start from that starting assumption um so you know something that people often say is you know like the blockchain hate bitcoin and i know that annoys a lot of people in the space because uh a token built in is required for a maximally distributed blockchain uh but when you're not trying to you know don't start with that assumption that you need maximum
decentralization uh then you don't necessarily need a cryptocurrency built in and you can have just that that core technology likes a known set of people rather than having to have anonymous miners joining and leaving the pool right that's so that's also one of the the key characteristics of high cholesterol is that there is no hyper coin hyper token nothing like that exactly just uh just the shared uh data layer um no no built in cryptocurrency no built-in essential exchange uh it's purely just the straightforward layer that anyone who wants to have yeah just a blockchain as it is can can take and use so it seems another project that is
trying to sort of target the more business use case and financial use cases ripple how do you guys think you're trying to accomplish something similar or do you think hyperledger is a very different project ripple are probably most similar to us in terms of both in terms of the consensus process uh and general approach to the space um yeah the key difference is obviously they've got xrp the cryptocurrency built in as a native asset we don't um they are very much focused on the corresponding banking side of things and to do that they have one big public network uh which links up all the gateways and institutions to allow
exchange between nostro accounts and international settlement between banks uh we're looking more at there's a private side where you know people don't want that on a big public network they don't want all their accounts and balances and open positions and trades to be to be visible um so it is similar but i'd say the focus is very different it seems besides the issue of of compensating anonymous miners and sort of paying for the decentralization in that way another function of native tokens is uh you know paying for transaction fees and and i guess sort of related to that is also the issue of kind of spam protection right to make it
actually cost something and that seems very sensible is there a role for that in hyperledger so by default hyperledger doesn't have any transfer fees so if you you set up your own pool you can just transfer freely uh within that um the notion that you know that the pools will be spammed uh makes sense when you again when you have an open network like ripple where anyone can join and create an account and create ious and do you know worthless transfers and that that could be an issue uh when you are looking more at the private side if you've got a group of banks or a group of partner companies who are known um either they're spamming each other money which will be you know perfectly acceptable um or they'll be
you know there isn't really any incentive for them to try and spam so really if you again it's the starting assumptions if it's restricted to just known identities and people who are collaborating and already trust themselves in the real world for to some extent uh then the likelihood of spam is a lot less to zero uh and i'd say also beyond that um just charging for transactions isn't necessarily the best way to get rid of spam i know that the popular example is around sort of email coin you know people get a lot of spam if you just charge a little bit per email then spam will go away uh but that's not necessarily true um for example uh you know with sending postage mail you have to buy a stamp but
you still still send a lot of spam and then also with email newsletters where you know you need to send out mass emails to charge just a little bit for that command up to a lot um so i don't think that just charging is the solution necessarily to spam and there can be more sophisticated technological uh approaches through software through blacklisting and greylisting um and you're barring known spammers i'd say as well one of our differences from uh bitcoin um is that that once you uh kind of if you give up some of the the massive decentralization the kind of massive anonymity and you get rid of mining and things um you know you can actually processing
a transaction becomes very cheap very easy to run run one of these servers is it's a pretty lightweight process um in fact we're hoping that kind of one server could be engaged in multiple of these kind of consensus pools you know kind of completely independently at the same time on the same machine um so i'd say the other side of our thing is the other side of our vision is that we'd rather get transaction processing and you know checking accounts and validation and all that uh down to be as simple and lightweight as possible so our threshold for what we can tolerate and what counts as spam in our system should be uh you know relatively a lot lower so that's interesting so you mentioned that potentially you could have
multiple nodes on the same system um yeah so the same the same server could be engaged in um you know through the user virtual machines or or something could be participating in the consensus process for multiple different pools at the same time oh okay so for multiple pools of assets okay so just just to sort of sum up what you were saying so the the the fundamental difference with uh with a system like bitcoin for instance is that your assumption your starting assumptions were different your starting assumption is that rather than uh being in a completely in a trustless network you are in a network of participants which you trust and so the assumption is that
you know people working together are not going to be spamming each other um that might work in some cases but it may not in others is there so in in some scenario where transaction fees could be desirable is that is it possible to implement those to fight spam for instance or to limit the amount of transactions yeah absolutely um it's one of those one of those situations we've not built it into the protocol because depending on what your what assets you're dealing with it doesn't always make sense to to kind of cut it up and and uh um you know apportion it around to combat spam but you could certainly build in um either some sort of native um asset or some sort of uh in a bunch of
different assets which are required in order to to make transfers uh but again that's that's something we didn't want to build into the protocol because it's so domain specific it really depends what you want to do um but yeah that's absolutely something you could do should you want to i think one of one of the interesting things here as well is the the kind of vision for the future you know because here if we have you know because this idea especially for example connective sightings and we can talk about these big pictures questions a bit more later there's the idea that we'll you know there will be sort of one unitary system where bitcoin and sidechains etc are used to for all kinds of things right for
microtransactions to bitcoin to perhaps shares etc whereas it seems with hyper ledger you guys see more a world where there are all kinds of lectures and all kinds of different consensus networks for a variety of use cases so it seems like you guys are seeing a world where there will be thousands of different ledgers and consensus systems in the future is that correct i believe so yeah i don't think the idea that everything will share the same blockchain or essentially the same database um whilst it may sort of sound good on the face of it isn't very practical or even desirable um for example you know if you want to have you know
very very different types of assets why do they need to be on the same pole and limited to the same number of transactions and have all the same participants and again also in the case of bitcoin i have that all you know completely public um i think it makes a lot of sense you know obviously for the trustability and orders ability of the bitcoin blockchain it needs to be public uh and that makes sense for sort of the you know bitcoin token where you can hide who the ownership are through multiple accounts um but for institutional usage you know it's too easy for if your goldman sachs to have morgan stanley doing data analysis and see finding out which accounts are yours and how much of what assets you own
and seeing what trade you're doing and that's just sort of not acceptable to to larger institutions um so we do see very much a world where where there are multiple consensus balls i still think the bitcoin blockchain will be one of them and one of the probably one of the largest um i don't think we're not trying to replace bitcoin or and don't believe it will go away i just don't think it'll be all-encompassing for every type of value and every type of transaction all across the world across the board um so yes definitely they'll be what we believe will be there'll be different consensus balls for different types of assets with different participants um so you can have sort of more of a layered structured approach where it's similar to
the current system where you may have an underlying international uh pool for transfers but then more local trading uh more local markets and more private pools and dark pools uh for trading just amongst particular types of participants well so which brings us to our next point of interoperability within the space right so this is something we we've discussed quite a bit on the show and between brian and i as well so the idea that we have all these different currencies and also so mayor talks about it uh uh with regards to the internet of money um his white paper so this idea of multiple currencies
at some point you know they have to become interoperable uh they have to be able to um uh to operate with each other how does hyperledger fit into um to a world where there are multiple currencies multiple assets distributed across multiple countries perhaps with different regulatory uh frameworks etc how would hyperledger help in creating um or eliminating gaps between them or is that at all yeah yeah fine that's definitely something we're looking at so um as i say i mean just internally within hyperledger a particular pool uh can have um as many assets
as can be supported by the um by the servers so uh in that sense uh you know you've kind of got an unlimited number of assets that could be recorded in one pool um on beyond that between multiple hyperledger instances we're working on some solutions that it becomes a little bit more complicated when your consensus process is kind of operating on two uh completely disparate networks but um there are some sort of synchronization um things that you can do to ensure that um let's say i like i will make a an exchange on in one pool um you know uh as long as an exchange on the pool happens um or transfer on another pool happens
um there are some ways that you can do that so you mentioned uh having multiple assets in one pool so does that mean uh you know let's say a bunch of banks or something they set up a one of these pools with these nodes then they could have any number of assets like traded on that or is it yeah okay yeah you can have as many as you want and in fact our system so we uh conceptually within the hyperledger model uh we consider a ledger to record um you know all the balances in all the accounts of one
particular fungible asset so that's you know something like a currency is is something that you know can be cut up and and uh moved around quite freely um where i think we differ from some other projects is that obviously it depends um let's say you're setting up a system which is representing uh bank liabilities um so you know my my bank liabilities might have an account at bank and i can have a count of bank b both denominated say in euros um but we we would rather model those and set those up as two distinct ledgers there's the the one ledger is the liabilities of bank and one ledger is the liabilities of bank b
even though it's the same currency to you um because even though that may trade at uh you know a parity most of the time there are situations in which say a bank has some sort of issue or it's in a different jurisdiction where um you know we can see it in the kind of um in the eurozone at the moment where it's happened where uh you know a euro in perhaps a greek or cypriot bank uh may not always be worth the same as a euro than another bank so our system in fact we tend to push the the modeling to be um to have quite a lot of ledgers to represent all these different liabilities between these different issuers but so let's say uh i have some euros on
on my bank letter in germany and sebastian has some euros on his in france and now he wants to send me yours and i mean how do i know if i can trust those euros on some other ledger that you know i have no visibility into and furthermore how do i how would i transfer euros from my ledger to his because from what i've done playing with the command line tool it's just sort of basically the alpha version it didn't appear that there was uh inoperability between ledgers uh where i could say yeah so in that command line alpha at the moment there was uh uh there is kind of uh it's possible but it's it's not exactly
uh made user friendly um so uh in that situation i mean again we're getting back to the the state where we're kind of attempting to model uh you know this this stuff has existing setups and existing structures um so in this simple example it would probably be that the banks maintain correspondent accounts with each other nostra master accounts and in this situation it would kind of go through uh it could be a single atomic process let's say if they're if it's all running within the same pool let's say um it could be a similar single atomic process that i um can transfer to the kind of uh to the credit the uh the nostromo
depends which one is going around but the nostro bank of the receiving end uh who would then instructions that that nostro bank then credits um the recipient at the other end so that's kind of how money moves around the system at the moment except that it might take uh you know when it goes to the uh ach systems it can take uh you know anywhere from a few hours to three days and depending on which jurisdiction you're in and which sort of clearing ach you're using so um yeah i mean it's it's conceptually it's there are there are ways that this is set up already um and we're just looking at sort of uh maybe you know making it very quick and easy to kind of model these existing setups
so so let me be a bit uh contrarian here and ask i mean it seems like what you guys are doing here is you i mean it sounds like you're just replicating the existing system right so how is how is that better is it just a more more modern implementation of it that's much more efficient yeah as a starting point we are trying to mimic the existing system as much as possible to make it easier for for existing institutions to adopt and there are you know reasons why the existing system is the way it is uh other than sort of long legacy reasons um you know as your point about transferring euros uh a euro has a counterparty right
you're holding it isn't just that you have a euro and it's a you're a bill sitting in your pocket that euros counterpart is a european central bank or if you've deposited in the bank accounts party as the bank um so yeah there are you can't just sort of get around this when you're mapping assets on the ledger to the real world they have to they have to you know follow some sort of structure uh which makes sense to represent what those assets are and who the you know whose liabilities they are to you as well um so yes it is very much trying to mimic the current system uh and improve it and make it more efficient um that is a starting point i don't think we're going to see central banks just sort of you know give up an adult bitcoin and
um you know certainly bitcoin will run in parallel to these systems but we are very much trying to improve the current system whilst bitcoin tries to revolution or replace it shall we say yeah very interesting i mean i i have to say one of the things i i really like about this that makes a lot of sense to me and that's also one of the things i've been sort of struggling with and having doubts uh regarding bitcoin is that with bitcoin right we have this mining right and all this expenses to secure the bitcoin uh blockchain and it doesn't you know the sort of security provided is the same regardless of for example the value of the transaction right so i send
uh one euro to sebastian that's the same security backing that as if i was sending 100 million dollars in a bitcoin transfer right and that just seems kind of inefficient to me i mean the only the only world in which i think this would make sense is if you can sort of get absolute security at no cost right because then obviously you'd want to provide absolute security to everything but as soon as sort of you know more security has more cost then well you think like ah in that in that world you would want to provide less security and have a cheaper system for those
things that need less security and that's a really great point yeah i think you've hit the nail in the head there with with there is a sliding spectrum between centralization and complete efficiency and lower cost and uh complete and utter decentralization and you know being a slower system and more expensive system so when you've got you know if you've got a green grocer's trading loyalty points and you've got apple issuing shares that those two systems you know those two assets will cost the same uh underneath and have to go into both under the same uh trade-offs between efficiency and decentralization uh hyperledger is very much designed to be flexible where a group of shops say just in san francisco can set up a uh starts
issuing a loyalty scheme and that's just operated between themselves and it's fast and um and cheap to operate whereas if you want to have a global securities market and stock exchange then you want to have much more uh security over that network is that the assets being traded on a so much more valuable well this is all very interesting and there's lots more to talk about before we do that i'd like to take a break and talk about our sponsor shapeshift so i challenge you to go out there and try to buy take some bitcoin and buy some josh coin and come back to me and tell me how long it took you to do that it probably takes anywhere between half an hour and an
hour if you have to go through an exchange and create an account and get it verified and perhaps even send them some personal information to do that uh well there's an easier way in that way is shape shift you go to shapeshift.io and use their currency conversion tool to convert just about any coin into just any coin so you can convert bitcoin into litecoin you can convert litecoin into dogecoin you could convert unobtainium into uh bitshares for instance uh so shapeshift is the fast and easy way to buy and sell all coins to support about 25 different uh coins and they're adding new coins all the time and you understood the best thing about shapeshift is that you don't even have to create an account
you don't have to give them any personal information not even an email address there they just use a very simple currency conversion tool that i'll show you uh and and it's uh with no confirmations usually if any change you have to wait for a few confirmations shapes if does it unconfirmed exactly so you go to shapeshift.io and you use the currency conversion tool which looks a lot like google translate for cryptocurrencies so you have the currency you want to convert so let's say i want to uh get some uh name coin so let's say i have bitcoin and i want to get some name coin i i'll just put my name coin uh payment address right here hit start i don't have a payment address right now but uh i would hit start that would get a qr
code and with that qr code i'd send some bitcoin and i'd get some name coin in what 30 seconds uh just the time for them to get the transaction and get zero confirmations and that's it so go to shapeshift.io give it a try tell us what you think if you like it and we'd like to thank them for the support of episode bitcoin so we've talked a little bit about the issue of the question of security and and cost and decentralization how does that work with hyperledger itself is is it also the case that as you perhaps
scale the network because and scale the security requirement let's say you do that that example of it of a global stock market where you have a lot of requirements maybe a fairly high degree of decentralization does that also um for example impact performance in a negative way yes yeah it does um we're working as much as we can to mitigate against um against that too much but uh yeah broadly the more widely distributed your nodes are the more of them there are and the more latency that there is between them that is going to impact how quickly a transaction gets confirmed um
yeah as i say there are ways you can mitigate against it um but that that's a sort of that's attention which i think will exist in any decentralized or distributed system um so again that's that's just the reason why we think that independent deployments of these pools makes a lot more sense because um yeah your requirements for kind of uh throughput maybe um at one extreme end you may need all the machines in the same rack in the same data center i mean they could be technically operated by different service providers but they need to have the highest level of kind of connectivity between um and then at the other end you may get you know something looks a little bit more
like bitcoin with a lot of participants and kind of global distribution um but yeah you're going to get a trade off there in terms of performance so are you saying then that just uh are you are you saying that bitcoin cannot be performant no matter what um there are lots of very clever um proposals around i'm i'm not too familiar with all of them but you know around channels and um i guess the whole side change things and there's another effort to kind of um uh tackle this kind of problem but i mean fundamentally at the core of bitcoin uh is it has to be each block has to be fairly slow and
expensive to create right because that's kind of the security model uh if it was quick and cheap then it would be too easy to attack a particular block so um i i think inherently that's that's that's that just kind of feels inherent in bitcoin to me that it's a kind of it's a slow steady protocol which just keeps chugging along and doing what it does quite well um but yeah they've they've made the trade off already and and uh it's it's a kind of one extreme end of the spectrum so i presume still in in this case it's going to be much much much faster and the performance is going to be much higher even in a decentralized system where you may have i don't know let's say at the extreme
case maybe a thousand different nodes that control the network yeah i mean i think that's the number of nodes is certainly going to have an impact again it's um you it's the problem's kind of slightly limited by by the kind of the kind of quorum threshold that you need number of nodes need to respond so the very slowest nodes on the network are not going to impact you too much which is nice um but there is a kind of degradation um when you get up to a lot of nodes as well as a lot of data you need to store for all of the the um the signatures that are coming back that are controlling each of these transactions now touching on security so hyperledger
doesn't use any proof of work or any of these others sort of more i guess traditional uh uh consensus algorithms in the space um can you can you talk about security and how uh hyper ledger assets are are secured and so in what type of scenarios would there need to be coercion in order to uh to make an attack on the network so yeah so um yeah i mean it's interesting you say the more kind of traditional consensus algorithms obviously that the space of crypto consensus algorithms is what six years six years or so uh old and obviously
consensus algorithms outside of crypto go back a lot longer so um yeah we actually um our initial implementation is is built on um kind of a core protocol uh in this field which is practical by xentine fault tolerance uh the first paper on it i think was published in 99 um out of uh mit by um i think it was uh castro and liskov who published the paper um so it's about what 16 years old now um it's it's i'd consider it a kind of a at the root of a kind of a family tree of protocols which
take that as their starting point and um make slight modifications to it depending on the um you know increasing efficiency in in particularly high latency networks or you know making it more robust in certain failure scenarios and things like that so um there's a there's a kind of a broad pool of um protocols that we can we can sort of draw on here um so yeah i mean it's it's quite different from bitcoin i mean bitcoin came along and and rejected a lot of the assumptions that were going on in uh in consensus systems uh and it's i think there's been quite a lot of academic interest as well in in what bitcoin has changed there um but from the more uh traditional consensus
system uh approach we know that the the lower bound on uh a number of identified um when you've got a consensus system between a number of identified nodes we know that the uh the upper bound on malicious or just failed nodes in the system is one third so we can tolerate up to over some given window we can tolerate up to one third faulty or malicious nodes um and beyond that with the practical byzantine fault tolerance yes yeah correct up to one-third yeah so uh beyond that the system basically becomes unavailable um and we can detect that it's
unavailable and we can uh we can you know you can have your alerting or monitoring tools uh let people know that the system's not working for them to fix um and beyond that once you get up over two-thirds then you've kind of you know which may be say malicious in this case then there are some attacks that could be done to um to not include or order in a particular way the transactions um although we've seen consistently by the rest of the system it could be um kind of you know forcing some participants out or into kind of if they kind of order their transactions particular ways may be
particularly unhelpful to them having said that there is some work that we haven't included yet um but there is some interesting work on increasing that um i mean that that failure threshold is a third i mean that's known lower bound uh in these types of systems uh i know an upper bound so uh in these types of systems and uh but there is some work that you can kind of then move in depending on which operations you're trying to do there is a um there is a certain operations that you can take when the system's under attack were unavailable in some sense there are still some operations that you can kind of push through um but that's not an optimization that we've made at the moment
um so yeah i mean there's still uh there's i mean there's no double spend at any point right the system either confirms the transaction um or um it's unavailable so and in the the severe case where it's kind of completely controlled by malicious nodes again there's there's kind of no capability of double spend they're just all they can do is kind of uh emit or reorder transactions to be a little bit less convenient um so uh yeah i mean that's again a slightly different setup from from uh bitcoin but uh that's uh yeah so one thing that's interesting here so we i organized a bike meetup in berlin and
we had a talk a few months ago uh by a guy named trent he does a startup in berlin called the scribe and he comes from sort of a machine learning background i think and he's not he's i think he has quite a lot of experience with uh technology but not so much you know it doesn't come from the cryptocurrency space necessarily and uh he gave a talk on sort of coming from consensus systems and databases because he was familiar with that he was like why is nobody using this and this specifically was talking about paxos he was like it's just like seems it would make so much more sense to me if somebody built a cryptocurrency based on that and you know that would be so much more efficient etc
and it seems like you guys are exactly doing that so it's um yeah i mean that was that was kind of one of our um i was really interested in the the kind of cryptocurrency space for a long time um but yeah one of my issues was with it was just the overhead of uh all the mining and and kind of that there were protocols out there which could solve this uh having gone into it you know as far as we have done now you can you can understand why bitcoin makes the trade-offs that it does it's it's a really neat system when your starting assumption is that there are a lot of anonymous nodes who are kind of coming in and dropping out um it's it's a it's a very clever system and uh there may be small tweaks and improvements that could be made to that
core protocol um but on the whole it's been remarkably resilient and does what it does very well but again as we've as we've always said if you've got a different set of starting assumptions then there's a there's a broad range of literature and you know a lot of academic research which has been done on this stuff um to draw upon um it's you don't have to go back and reinvent this stuff and you shouldn't because the minute you try and kind of reinvent these consensus protocols from scratch um without having you know a really good um grounding in this stuff you're you're gonna make um you're gonna make some errors or you're you're gonna there'll be some edge cases where it's where it doesn't work
so you know practical byzantine fault tolerance has a nice formal mathematical proof um to show that it is correct um so you know there aren't too many consensus protocols which can make that same claim so that's you know that's why we've gone with that as our starting point today's magic word is ledger l-e-d-g-e-r go to let's talk bitcoin.com to sign in enter the magic word and claim you're part of the listener award coming back to the attack scenario you know we're we're looking at something that's completely different than the bitcoin
network because we have uh no known nodes rather than unknown nodes so given that in a scenario where someone's trying to attack the network would those nodes be visible would be would we be able to identify the nodes that are uh trying to attack the network yeah you would every uh nodes have to are identified by their public key and they sign any transaction that they're processing according to this this protocol so um all of that information is broadcast to the other nodes and logged made visible so if so there's very little incentive to attack the network i mean because first of all your the assumption is that we're in a system where people are
um don't have the incentive to attack the network and then on top of that it would be known that they were attacking the network exactly exactly so it's it's a fairly um yeah i mean that there could still be reasons why you'd why you'd want to but it it certainly cuts it out to a certain extent and you go into some of those reasons like because it's not it's unclear to me if you can't double spend like it's unclear to me if there are any attack vectors that are actually plausible with this in a type of scenario like what hyperledger is trying to achieve well again being able to uh to reject transactions um you know if you have full control kind of above two-thirds or something of the network and you can get to the point where the
system can run but you're rejecting operations then it may be that you know you're looking to punish some particular actors in the system so they just can't use it at all um so that i mean the incentives are reduced but i mean there are still a few so it also seems like one thing one could do you know because all the the actors the asians can be known is you could actually have legal contracts that sort of uh say all certain actions and types of behaviors are illegal now yeah absolutely i mean as a fallback you are yeah you've got the technical proof that people can't double spend um but for example if if brian was sending sebastian
bryan had 10 units in his account and he was sending sebastian five and then he was also sending me 10. um daniel could you know depends on which one goes through first until which one gets confirmed um if daniel had over two-thirds or daniel's group had over two-thirds of the network they could reorder that so your transfer to to me went through and then to sebastian failed um so that's one sort of reordering attack but yes you can have terms and conditions since everyone's known and the the the identity of the nodes are known um you can have conditions to participate in that network and as a fallback you do have the legal system um there will always be certain degrees of ambiguity over contracts in the world i think that
they can't necessarily all be hard-coded and technically uh solved um so yes having known identities means you can take traditional action for breaking terms and conditions and distributes i mean that's we did an episode recently where we talked about your possible attack on bitcoin and that's sort of one of the things that personally i find kind of worrying and uh that's a possible scenario so somebody could attack bitcoin uh and it would be perfectly illegal right like let's say somebody takes over a majority of the network and mines all empty blocks that's a sort of a very simple attack we talked about it's like what's illegal about that
nothing right like it would be i think impossible to get any kind of legal uh you know lawsuit against a party like that uh even if it even if that party is known right but of course here it's completely different if you have a known set of notes you have a contract there that very clearly states the rules and then they violate that and you know you you have to as a basis so it seems to have a quite an advantage there also from a security perspective yeah i think that yeah in bitcoin things like thraw fraud and theft will still be covered by you know current laws um but yeah the example you gave that's that there isn't really a current legal
paradigm for a legal precedent for for something like that uh and it would be very very difficult to to have action um so so yes um actually having you know identities known and that's very important to the participants not just for the legal background but if they want to know who's you know who's processing the transactions and and where they are um if for example if you have a bitcoin mine in north korea and their process you know they're running they're processing transactions and getting minus fees and you're paying those fees uh are you and breaking sanctions and then you're breaking the law um but uh yes so in and actually having those identities and locations known
that doesn't mean there's just legal recompense if someone does break those terms so diving into specific use cases uh i'd like to so again we've talked about implementing this at sort of the banking financial sector level um i like to i always like to have sort of simple examples i can you perhaps explain a scenario where someone might want to use this for loyalty points like i don't know maybe there's a local grocery store down the street and they want to implement loyalty points for their customers and uh use a system like like hybrid literature how would they
do that yep so we're actually talking to a company he's doing just that in the bay area so they've got a group of of you know small independent shops and chains and even some large supermarkets who currently issue loyalty schemes um so they you know go into specifics of their particular solution but each each business can have its own ledger or multiple ledgers um so one say could be a usd uh prepaid ledger another could be of their spending to give them free um you know free sandwich or whatever it may be uh and then those businesses can receive the funds issue onto those ledgers issue their own those tokens uh and also group together that create you know interoperability
and accessibility that you have one loyalty scheme that can be used across you know everyone in berkeley for example um so that would be you know an example where you've got a few smaller partners not all of them necessarily have to run nodes uh the attack the security required is not as as high as it would be with with securities um so they can all run their own private pool uh or have access to that data but it could be hidden from the public as to which users have what how much in their accounts but all the businesses participating in that would be able to see and accept uh the loyalty programs from from for themselves and for for others that they've agreed to so what would the advantage of a system
like this be from a centralized system i guess a centralized system you need to have some party maybe all these different stores would need to trust one and here uh you would have sort of visibility between them or yes so interestingly they all do currently use a central party uh and in the the typical bitcoin world people sort of think that you know we're trying to get rid of central parties um and it would be so that the group of participants were getting together to eliminate that central party uh and this circumstance is actually the central party who's adopting high pleasure um to sort of disrupt themselves uh they see that being a central party means that they
have to operate their own database and accounting software which can be very very complicated uh whereas you know essentially uh you know outsourcing that to to a hyperledger pool and you know getting all the benefits of our development automatically uh without them having to build their own proprietary system uh it also means that it's a lot more open to the ecosystem so people can build different types of tools on top that will be if someone built something if something maybe unrelated and open sources it uh they can make use of that and having that sort of shared platform that everyone can build on top and share the ecosystem and also yeah for other types of aspects it could be traded between
different pools so you could change your uh well they might be operating a a loyalty scheme pool there may be an air miles pool that people can transfer across to and it opens up the possibilities for um sort of liquidity in the market and exchanging these points for other things um so they see a lot of value there and the future potential of having a permissionless platform could could could one use this perhaps for doing crowdfunding and issuing tokens would that even be desirable um yep you can do um yeah in the case where actually they are they're also looking into that that same company
um so you could crowdfund a new restaurant or business um you know hyperledger does very much take the starting assumption that you're not doing anything illegal um if there's anything sort of legally gray area or blatantly illegal then some bitcoin-based solution probably is a uh you know better fit for that because of the decentralized aspect because yeah you that's why you want that you know higher level of resiliency and decentralization um and and reduce trust as much as possible um but yeah but certainly if you're following regulations and you're um yeah you're complying to local laws then
hyperledger could be used for that uh certainly if there was there were no risk of attacks on that scale well it seems like in this case even using a decentralized system is not going to help you in any way right because it will always be known you know that that business here in san francisco that date crowdsale is there's no problem for the government to just come in and like shut down that business or rescue etc so whether or not like the share trading can still go on and they can't do that it's fairly irrelevant right i mean yeah and that's a great point whenever you're um you know dealing with assets in the real world and what's on the ledger is actually mapping into real world assets whether they're gold or shares or anything else um
ultimately governments can go and seize the you know whether gold's being stored or shut down the business um or take whatever real world asset is is being being mapped um so unless you have something where something on the ledger is actually the asset that it represents as bitcoin is uh which has no counterparty or you have shares issued directly onto that ledger that are the official record um which things built on top of counterparty or bishares uh are um but when you have a you know physical presence or a physical commodity or item in the real world you're never going to get around that just with a technical solution
especially if you're in us right i mean it may help you if you're abroad right but if you are where the law is going to be enforced then that's not going to protect you yes exactly so um sebastian do you want to talk a little bit about the technical implementation or should we uh should we cover that briefly uh yeah i just i can't remember if we already talked about this before the show or during the show i think we talked about it before the show so right okay uh so how how would a company implement uh a private pool no didn't we talk
about this just a couple minutes ago okay guys i'm not sure but yeah so how would a company implement uh more detail about how how a company or group of organizations would implement private pools right so it's it's um i mean it's the source code is is freely available um it runs as a fairly standard web server um you um you have to set it up with an initial configuration of the the other initial nodes to start with um and uh yeah from there you can you can uh you can contact the nodes and
it'll start to replicate the system um so um yeah i mean there's no need to code or anything like that to uh to set up your own unique configuration it's kind of it's ready to go um having said that at the moment there's there's not a particularly um user-friendly uh onboarding process to get that up and running so that's something we're going to work on very soon um so that kind of when you when you start it you will be asked to to set up your initial configuration and all that um yeah and then and then the clients again connect just through standard http messages so um we'll be releasing a couple of reference clients for that and there's a command line implementation and
yeah beyond that it should be fairly simple and straightforward to integrate with in a bunch of different ways so anybody can do that right now so right now you go to the github page you can install the command line interface tool uh it's just a rubygem like and then you can create ledgers you can create assets you can issue them it's running on a pool of nodes that you guys are uh you guys have up right now which is basically staging nodes yeah um i think that's uh i think they're still running on our alpha implementation so that's shortly to be updated with uh um to be updated with our beta implementation which is uh
a lot more robust and should be a lot more performant but it'll it'll look pretty much exactly the same to begin with so um so the server side the server side when you're running a server is you you're running a node uh and and then you're so you're hosting the database uh locally on your system and you you talk about web server what is that web server output is it just is there an interface there is there um so at the moment it's just um a json api um so designed for sort of more like an api um exposed over the web interface but um yeah we will probably be working on some sort of administrative um i guess you call them kind of
blockchain explorers or you know something like that i was curious about that because i didn't see that anywhere in there and and i was wondering if that was going to be part of the beta or even the final release was some sort of an explorer yes yeah i definitely i i think so that's something we're very keen to get in because um yeah again like with the setup it will just make it a lot easier too for people to get up and running with if they can go through and kind of see it all happening and get to grips with how the system is processing these transactions yeah at the moment it is kind of exposed but it's it's just as an api so we just written the tool yet and so it's the idea that then that so you will have these private pools
most likely you know companies will onboard this and start using it and then you may also have uh so i suppose the business model for hyperledger and we can talk about this a little bit for a few minutes afterwards is that you guys would also propose uh pools but then is the assumption that we'll just have people running hyper ledger servers out in the wild and the so you may have like maybe i don't know like 500 people running hyperledger servers and just anybody can create assets given that they have no specific specific requirements for security i don't know maybe i want to create an asset to trade things between like my friends and i um is the assumption that
there'll just be some servers out there in the wild sort of do you mean sorry huh do you mean did you do you mean kind of open access yeah open access to service right like right now you have a couple of nodes out there that people have created assets on so yeah we um so i think we'll probably kind of uh formally get that down and kind of separate that staging environment probably um into a test net where the information will probably be uh wiped periodically and then yeah we'll work on a a sort of a more public uh implementation where uh there will be probably some uh the the public uh pool will be a lot
more open um but obviously uh there'll be no guarantees of kind of quality of performance because we can't necessarily you know guarantee that it'll be running on the highest quality infrastructure um but that that we're planning to get a public invitation is up up as well okay so um in this world in the future right we have like a tons tons of different ledgers i mean i i think one interesting thing to come back to is the question like what will that feel like and look like when you actually interact with that right so obviously wallets are going to be essential and i presume we will see wallets right that handle a lot of things so you know they may have bitcoin in it maybe fiat currency and you know maybe a
whole bunch of also let's say hyper ledger assets um how would that work sort of from a from a on a wallet level how would that be implemented would that be complicated to get each wallet to you know let's say understand five different um hyper ledger consensus systems i didn't know actually i i've received the transaction now and it's valid because it seems like that's one of the advantages of of some of the bitcoin based solutions right because it will be perhaps easier to build those things well i'd say i mean on on one level uh between bitcoin and ourselves well there are some definitely some some large differences in how the consensus process
works the um the whole kind of public key infrastructure you know the idea of creating your own local um you know key pair and and using that or multisig to authenticate transactions all of that stays very very much the same or kind of as as similar as um as we can um so i mean from the wallet point of view in terms of key management and signing transactions and submitting transactions all of that looks very similar um so there may be some slight differences in the api uh although we'll probably release uh probably a sort of a bitcoin d wrapper so that we we are as kind of drop in compatible
with kind of existing bitcoin implementations as possible um on the other side i'd say you know if they if they are going to extend specific support for hyperledger then um it should be um fairly straightforward given that your starting assumption is that there are multiple pools out there that um you know you would you would assume that the bullet um creator has uh some sort of way to say which particular pools i want to to add um you know i'm a member of and you know given my public keys here look up my addresses on these different um pools so um yeah i mean conceivably there's we could even have some sort of uh
global uh if you wish kind of public name registration system which would kind of look like the domain name system or something like that so but if i did want to check which given a public key which which kind of pool is this on um there's conceivably something we could do there but i'd say that's a little bit further off okay great well let's let's spend a few minutes before we dive a bit a bit more into the hyperledger project itself to to hear a bit about sort of your vision of the cryptocurrency ecosystem of the future where do you see this going and where do you sort of see the the place
of hyperledger in that um so yeah as i said earlier i don't think bitcoin will go away and we're certainly not trying to replace it so i do see that still remaining a currency um particularly in the currency side uh as a niche but as a very large niche um you know the three and a half billion dollars as it is is still still absolutely tiny and i think that will grow regardless of the success of other projects um yeah i see yeah there being multiple pools and probably multiple protocols for different use cases if you want something which is completely trustless um entirely way you don't trust anyone and you don't want anyone to know who you
are then something like bitcoin or that dash that coin um we'll still have a place um but in terms of sort of institutional users or companies who have to operate under certain conditions uh and need to have you know identity uh need to know who they're operating with and where they're uh whether the nodes in that network are um there will be a variety of sort of private implementations and inter private uh pools um so i can see you know financial institutions adopting something like hyperledger between themselves say trading they may be adopting rebel for
the payments correspondent banking side um i can't see you know the existing large incumbents adopting something as revolutionary as bitcoin and bitcoin-based platforms um in the near future and i can't see it eating into their their current business that much in the near future but potentially you know 10 15 20 years down the line it's hard to predict but i definitely do see a world where there are multiple different protocols um platforms for for different scenarios um and that yeah there will be the ability to be interoperable and move between them but whether that is desired or not is remains to be seen
and then what's your view of the side chains project because that also seems to kind of offer this perspective of having you know custom customized chains for all kinds of use cases yeah it's a very interesting project and um you know means to be seen that you have to get it implemented but they probably will um the the questions that we have that when we get asked about it from banks is that they're interested in this idea of private chains or the side chains uh but they don't necessarily need that two-way federated peg to bitcoin because there isn't really the interest of moving in and out of bitcoin uh that to me seems more like uh going
backwards from the starting point of bitcoin to make it fit into that world um whereas we've just started in that world to start with and building a solution for that world uh so i think that's actually sort of happening across the board in bitcoin generally um there's you know you've got the sort of libertarian crypto enthusiasts initially and there's more business and banking people moving to the space they're trying to rein it back in and that's creating a bit of a conflict within the bitcoin world um but yeah we're trying to use something we're trying to use bitcoin for something it wasn't designed with but designed for in the first place might present a lot of issues and doesn't actually necessarily bring the
benefits of the reasons why people want those things in the first place um so i'm not convinced that having a two-way page with bitcoin actually adds a lot of value to institutions adopting it uh more so it adds value to bitcoin by having the ability to do those things um yeah so it's a pro bitcoin move rather than a pro customer you move so you know we've talked a bit about uh what you may be envisioning as as part of a business model uh can you elaborate a little bit on how you guys plan to make money in the future yeah um so yeah as a young startup it is still evolving and anything we see now will probably be different next week but um essentially yeah hyperledger is going to
be completely open source we don't want to monetize the protocol no cryptocurrency built in so anyone is free to take that use it they don't need to fork it or do anything they can just do what they are like with it um so once that is you know becomes more of a standard and there is more widespread adoption from the people speaking to at the moment uh there's plenty of opportunity to provide higher level uh products and support services uh around that um so if there's a particular say and then derivatives which can be very complicated and need a lot of customization something that doesn't apply to the general platform um we may build proprietary solutions on top of
the the open source hyperledger base specifically just for that particular use case and license that to institutions um we can provide support and customization uh to them uh we are also looking for companies that want to set up a consensus pool themselves but don't necessarily want to run the infrastructure themselves um you that we're looking at more of a sort of cloud utility model where we can have a a marketplace of authorized verified hyper legend providers that we've actually done tests on um and they can select say i want to have a maximum of three nodes operated per per entity per company um i want them all inside the eu
um and i want them all to be you know and data centers which are compliant for this and that uh and then they can just spin up a pool as large as they want um across the existing hyperledger providers and pay on a per node basis um of which we would we would take a cut in order to provide that that verification and marketplace uh functionality so that's a sort of consensus as a service angle for the smaller to medium-sized companies cool cool very interesting and uh what about timeline so you i mean there's some type of release here but what do you envision happening in the next 12 months uh so yeah the alpha was released last
july uh that was always you know designed to be you know just a test and we always plan to throw that away uh so the debate was actually up on github now it's been completely rewritten from scratch it's uh much more performant and stable uh and the goal is to have that production ready by early april uh just with the core feature set um beyond that you know it is very much market driven um from the the customers we're talking or the potential customers we're talking to uh there are specific requirements and weighing up which of those are you know most generally applicable uh to go across the board um we'll get the highest priority so um we we will have a proper sort of feature
map and roadmap up soon uh but it will likely change based on on user feedback very rapidly cool fantastic well um thanks so much for for joining us today guys it was uh it was very interesting talking about this project which i think is definitely showing uh an important and important sort of movement that's happening in the end the cryptocurrency space so the attempts to to take a lot of generation and a lot of the sort of breakthroughs that have happened here and try to apply them to existing systems and see what one can sort of do with that my my thoughts on this is that you know
we're finally starting to see some real world applicable uh infrastructure that can be used for business and you know people will um we'll look at that some people you know will look at that as uh not necessarily as progress but as going in some direction that uh is contrary to the belief of bitcoin and the other sort of the essential ideological ideas but you know when it comes down to it this is uh what we're trying to do right we're trying to implement decentralized and somewhat distributed technologies in into everyday life so any anything that we can do to um enable that for businesses is i think a step in the right direction yeah absolutely i mean
they're not mutually exclusive um exactly right so you can jump ahead and try to create the perfect world um which is a perfectly reasonable thing to do um or you can try and take the existing world and bump it in that direction more slowly so um you know different approaches they can run completely in parallel we're not harming the bitcoin world of bitcoin's chances of success because the people we're talking to aren't going to use it anyway um so yeah you know just we can you know bump the bitcoin can sort of break through the the current um current system and we can as as it does we can sort of bump up behind it and try to
push it and make it more efficient and more usable and bring a lot of benefits to consumers at the same time absolutely and and one of the positives for bitcoin may also be that you know once there's of course a much much higher extent of interoperability when you start having hyperlesion those kind of systems for some assets let's say it's fiat currency or whatever uh with bitcoin then with existing systems right because existing systems they're just completely incompatible and uh so i think there's a lot a lot to be said for that and that also offers a lot of uh possibilities for bitcoin yep it's still pushing that the other the pro public private secret public private key um infrastructure um so one side is and that's a big thing not just for the
bitcoin world but for the internet and banking and everything in general so helping push that forward as a greater industry is beneficial everyone who's is using that technology and as you say does make it easier for people and once they are used to you know being in control of their own assets and having those those private keys and that makes the jump to bitcoin all the more more uh palatable cool well yeah thanks so much for joining us today it was a was a pleasure we will have links to to the project also to the forum and and to the blog perhaps where people can read more about the projects also get in touch with you guys uh if they're curious
and i encourage people to if you if you're comfortable with the command line like install the command line tool it's really easy and uh you know just try creating a a ledger and assets and fooling around with it it's really cool absolutely i should do that as well yeah well we'll try it as well okay well thanks much um and thanks to listeners for listening it was a it was a pleasure as always uh you can follow us at twit on twitter at epcenterbtc and uh we will be back next week thanks and we'll see you then thanks for having us thanks so much guys