Epicenter - Learn about Crypto, Blockchain, Ethereum, Bitcoin and Distributed Technologies - Uri Klarman: bloXroute – Layer-0 Scaling with the Blockchain Distribution Network
Episode Date: August 15, 2018Until now, proposals to improve blockchain scalability have addressed the problem in one of two ways. One seeks to increase efficiency by optimizing the blockchain or improving the consensus algorithm.... The other comes in the forms of layer-2 solutions such as payment channels or side chains. However, none have addressed the core bottleneck to scalability: TCP/IP network limitations. Improving the speed at which blocks propagate through the network is the layer-0 problem few people consider when thinking about scaling. Fundamentally, network bottlenecks are what prevent blockchains from increasing their transaction throughput. Raising the block size or reducing the time between blocks has devastating effects on usability as the probability of a fork increases. At a certain point, the blockchain simply breaks as forks occur faster than blocks can propagate to all validators. Remarkably, the web figured out how to scale decades ago with the invention of Content Distributions Networks, or CDN. This is what enables platforms like YouTube to steam thousands of hours of video to hundreds of thousands of people every second. However, traditional centralized scaling solutions lack the privacy and censorship resistance necessary to serve the decentralized web. We’re joined by Uri Klarman, CEO of bloXroute. Founded by a team of researchers and systems designers from Northwestern and Cornel University, including Emin Gün Sirer, bloXroute allows practically every blockchain network to “scale today.” As a scalability infrastructure service, their Blockchain Distribution Network, or BDN, sits underneath blockchain networks. Anyone operating a miner can use the BDN without any changes to their consensus algorithm or protocol. By simply pointing their software to a bloXroute node, miners immediately benefit from propagation speeds orders of magnitude higher than the time which is currently required for blocks to be seen by all validators. This global network of servers is optimized to receive and stream massive amounts of transaction data to vast networks of nodes and miners. While bloXroute relies on some level of centralization, it is provably neutral and cannot discriminate based on the contents, provenance or destination of a block. It also includes clever redundancy mechanisms which ensure availability in the event of an attack on the network. Topics covered in this episode: Uri’s journey as an academic working in the field of networking Defining the blockchain scalability problem as a networking problem Past work and attempts to scale blockchains The vision behind bloXroute and the problem it aims to solve The Blockchain Distribution Network (BDN) and its technical architecture How the BDN optimizes blocks and achieves 1,000x faster propagation times How bloXroute archives provable neutrality and ensures network resiliency The BLXR token and incentive mechanisms The project’s goals, milestones, and product roadmap Episode links: bloXroute Website bloXroute White Paper This episode is hosted by Meher Roy and Sébastien Couture. Show notes and listening options: epicenter.tv/248
Transcript
Discussion (0)
This is Epicenter. Episode 248 with guests, Uri Klauman.
This episode of Epicenter is brought you by Shapeshift.io, the easiest, fastest, and most secure way to swap your digital assets.
Don't run a risk of leaving your funds on a centralized exchange.
Visit Shapeshift.io to get started.
Hi, welcome to Epicenter. The show which talks about the technologies, projects, and startups driving decentralization and the global blockchain revolution.
My name is Sebastinkujiu.
And I'm Meher Roy.
Today our episode is themed around Blocks Route.
Blocks Route is building a blockchain distribution network
which will allow miners and other validators to communicate
blocks much faster to each other, thereby increasing the scalability of current blockchain networks.
On our show is Uri Klarman, who is the CEO and co-founder of BloxRout Labs.
Uri, welcome on the show.
Thank you so much.
Thank you for having me.
Cool.
So we're going to dive into what you're building.
It's a very cool project, Bloxrout.
But prior to that, we are interested in knowing your background
and how you came to be interested in the blockchain industry.
So I'm at heart before being a crypto guy.
I'm a networking guy, okay, computer networks.
I'm now finishing up my PhD in computer networks at Northwestern University.
And I was kind of lucky to stumble into the crypto space
through a research project that we have.
We built a project and we did one thing with it and another.
And eventually, just because it made sense from, it was a cool project,
we created a new cryptocurrency with rather than doing computational power,
we were using networking resources.
So it has nothing to do with blocks throughout,
but we kind of like started to look into this field.
So that's kind of like how I stumbled into this area.
And so your PhD was at the Northwestern University.
So technically is,
because I haven't done my dissertation defense yet.
I don't know that.
But by the time this broadcast, maybe it will.
Okay.
When I look at the list of co-founders in this project,
this project seems to have a strong Cornell flavor.
So how is it that, like,
presumably you worked a lot of your time in Northwestern
and with the community there.
How did you get to be involved with the Cornell community?
So when we started with this idea,
then we realized, as I'll say in a few minutes,
that the scalability problem is actually a networking problem,
which got us very excited about it.
I would start to come up with ideas how to do that.
But the starting point of Blochstrout is the Falcon Network,
created by Sumia Beesu at Cornell and Professor Eminem Cesar.
So we immediately, we got together,
so all co-founders,
So myself, Professor Emin Goonzer, Sumia Bezosu, and Professor Alex Kuzmanovich, was a net neutrality expert.
And we sat down and we started like exploring this.
And we realized we need all our strengths to make this happen.
So it's like, okay, we came in as equal partners.
We started this like, okay, anything that needs doing require like one of us will have to do.
So Goon's expertise in crypto is almost unmatched by anybody else.
that. Sumia is the guy who actually built Falca. So taking that and taking the idea from there
and building Bloxrow, he had the expertise for that. We brought in the net neutrality expertise
and kind of the vision for that. So that became a Northwestern slash Cornell project.
Of course, I know, we've had Goun on the show quite a few times to talk about, you know,
topics around scalability, but also in the wake of the DAO and the and the, and the, and the, and
the writing that he did around that time.
So on topic of scalability, could you describe it the way that you see it?
You mentioned that it was a networking problem, and that's kind of a unique way to put it.
How do you describe the skillability issue in blockchain?
Sure, that's like one of my best past time to talk with people about the scalability problem.
So there's literally almost nothing I like doing is talking about this.
So everybody are talking about the scalability problem, right?
in this space. Oh, Bitcoin is doing three transactions per second, while credit card companies
combined are doing something like 5,000 transactions per second. And if you want to do all the really
cool stuff on blockchain, if you want to do micro transactions, that's 50 to 70,000
transaction per second. If you want to do robot chains, right, autonomous swarm robots like
IoT devices communicating trustlessly, that's another 50, 70,000 transactions per second.
And the heaviest lifting is like Twitter on the blockchain, Facebook on a blockchain,
these kind of stuff. If each active Facebook user would do just four likes per day,
that's 200,000 transaction per second. Okay, so the volumes are, everybody knows that
three transactions per second are nowhere close to what we need. But the question, why can't we just
increase it as we'd like, isn't getting enough attention. So let's talk about it for a second.
If you want to do more transaction per second, well, let's do the math for a second.
The reason you're doing three transactions per second in Bitcoin is because the average
transaction size is 540 bytes. And if you think about them, each one megabyte block has room
for something like 1900 transactions. So 1900 transactions every 10 minutes, that's something
like 3.3 transaction per second.
You want more transaction per second.
That's easy.
Increase the block size by a factor of 10 from 1 megabyte to 10 megabyte.
And immediately you move from 3 to 30 transaction per second.
Or the other thing you could do is rather than having a block every 10 minutes,
you can have it every one minute, right?
You'll get the same 10x improvement, right?
The result is going to be the same.
I'll explain in a bit why is that.
So let's talk about block size just because it's easy.
easier to imagine for a second.
So if you increase the block size by a factor of 10,
the good news are that you just increase the throughput
of transaction per second by 10, right, from 3 to 30.
But now every time a node receive a block,
or let's say you're a miner, you mine a new block,
and you have to send it to one of your peers,
now you have to send 10 megabytes rather than 1 megabyte.
That's going to take you in the best case scenario,
10 times longer, right?
I ignore congestion.
I ignore topology.
But you're going to send 10 megabytes rather than 1 megabyte.
It's going to take you 10 times longer.
And the total time it takes for a block to reach the entire network.
And for the entire network to think about a new block being mined increases by the same
factor, a factor of 10.
Now, why is that crucial?
Why is that so important?
Because that block propagation time, the time it takes.
for the entire system to think about the new block,
that is the only time in which forks happen naturally.
A fork can only happen if I mine a new block,
despite a new block already mined, right?
Another one was mine, but I didn't hear about it in time.
It's still being propagated.
So I mined a block next to it and I have a fork.
If I've heard about that other block,
I would have mined on top of it.
So this block propagation time is really the window of opportunity for forks to happen.
That's the time that it can happen.
And if you increase that by a factor of 10, you're going to see roughly 10 times more forks.
So that's annoying.
You'll have to wait 10 confirmations to get the same certainty of six confirmation that you get today.
But the system still works.
However, if you try to increase it by another order of magnitude, okay, this is the important part.
If you try to increase it by another order of magnitude, from 10 megabytes to 100 megabytes,
at that point, the block propagation time, the time it takes for the entire system to sink,
this window of opportunity becomes so long it exceeds the 10 minutes interval between blocks.
Okay?
that means you're going to see a fork pretty much every time and you block his money.
And what happened to the blockchain then is rather than having a fork and converge back to a single blockchain every so often,
you'll have a fork and then fork of forks and forks or forks and the blockchain kind of like unravels like a row into more and more forks.
And nobody knows what is the true fork anymore.
Nobody knows which fork to follow.
And the consensus rate, the blockchain breaks, this is the scalability problem.
This is the reason why you can't do arbitrary large blocks, because you can do a bit larger,
but very fast, okay, 100x is nowhere close to the capacity that we need, right?
300 from second per second is nothing.
Very fast, you're going to reach that point where the blockchain can handle all of that.
And that is kind of weird because it's a networking problem.
This is sending data between different nodes.
And in reality, out there, the non-cryptus face, in reality, we already know how to send a lot of data, right?
YouTube sends terabytes of data to hundreds of millions of people all around the world and nobody blinks the night.
We know how to do that.
Akamai solved it in 96.
And what we want to do is bring these networking techniques into the world, into the crypto space, into the blockchain space.
Did that make sense for you guys?
Of course, like when you look back at this particular issue, this issue has appeared in a lot of academic papers in the past, right?
So I think it appeared in a paper from UTIH Zurich for the first time, which is when they defined a,
a network propagation time which is like if I am the miner and I generate a block
and I propagate it for the first time right now and start a timer
how much time does it take for 80% of the network to have the block in full
and they measured this this sort of network propagation time for different networks
and sort of this network propagation time is ultimately what constraints
how many how big a block can get because as blocks get bigger
it takes a lot of, it takes more and more time for it to propagate across the network.
But the funny thing is, so two things were, the funny thing is, or three things were,
first of all, the funny thing is that nobody like the understanding, right, the explanation,
while long propagation time causes forks and how is that relate to scalability, that's a fairly
simple explanation, right? You don't need to be technical to understand it. You don't have,
it's like, oh, that kind of makes sense. And it always,
bothers me or surprises me that not enough people are talking about it because everybody in the space can, I understand where is the bottleneck, right?
The networking layer is the bottleneck.
And if you understand the bottleneck, then you can try to solve it.
If you're just going to say, oh, there is a problem, but you don't identify exactly what needs to be solved.
It's going to be very hard to solve.
So that's number one.
Number two, I was talking about Bitcoin, okay?
But this is true for all blockchains.
Okay, I'm talking about Bitcoin being kind of like the golden standard.
We all know how Bitcoin works.
Harmony is doing a different thing.
Hash graph is doing a third thing.
It's going to be harder to explain for each one of them about that.
But it's kind of like it's the easiest example.
But it's true for every blockchain outfit.
So that's the second thing.
I had a third thing.
Oh, I promise to say why it doesn't matter if you increase the block size, whether or reduce
the time between blocks.
And the reason it doesn't matter.
matter which parameter you play with is that the probability for a fork to happen is something
like 1 minus E to the power off, blah, blah, blah, blah.
But it really depends on the ratio between the block propagation time, that window
opportunity, and the time between blocks, the 10 minutes interval.
So it doesn't matter if you increase the one by a factor of 10 or reduce the other by a factor
of 10.
The result is the same.
If you increase throughput by 10x, you're going to see 10x more forms.
So that was about that.
If you look back across the history of Bitcoin, people have been aware of this issue.
And I remember that in 2013 or 14, Matt Corallo and his associates created what is called the Bitcoin relay network, like a fast relay network, which is a network that connects.
all of the miners and wants to get blocks from one minor quickly propagated to the other blocks,
reduce the propagation time, and therefore improve with Bitcoin scalability.
So I would argue there.
So Matt Corello did build the first relay network, then Thalcon was built, and then the first
relay network was replaced.
I think current fourth generation is fiber or something.
But their goal was not scalability, surprisingly enough, because it really helps with that.
Their goal was, and it's a good goal, is to say, oh, large mining operations have the ability to invest in infrastructure and networking infrastructure.
So they send blocks faster and receive block faster and are therefore more profitable.
And they wanted to put small miners on par with the larger operations.
So this is why they built the relay networks.
Again, the relay networks, A, really help with that.
They make the kind of like level the ground,
but they also really reduce the block propagation time,
which is really the bottleneck.
So they're doing an excellent job about it.
This is the reason the existence of fiber and falcon.
So every block out there, both in Bitcoin and Bitcoin cache,
currently being sent through both of them.
They are the reason why today, if you go to the statistics about BlockChow, about Bitcoin,
you'll see the average time it takes for a block to reach everyone is something like 10 seconds.
Now, this is surprising because in 2014 or so, it was 30 to 50 seconds,
and that was for half size of blocks, right?
So you would expect today for a block to propagate for it to take a minute or so.
But the reason is that it doesn't happen is because these relay networks really help with that.
But it's kind of funny because nobody talked what is the bottleneck of the scalability problem.
Nobody even considered them as a scalability solution.
That wasn't their goal when they were built.
You mentioned that existing projects don't address scalability as a networking problem.
Do you really think that's accurate given that, for example, something like Lightning Network
aims to increase transaction throughput
by creating essentially like a network
that allows you to send transactions
at a faster throughput.
You think that perhaps they're not addressing
the networking problem directly
but because it's assumed that it's a networking problem.
Everybody's sort of aware that, of course,
if you increase transaction,
if you increase the block size,
well, you're going to run into networking constraints.
So I will say in the following,
some of the technical people understand that it's a networking problem,
but a surprisingly small number of them.
I speak with very, very professional people who I like,
who I think highly off,
who are at some things are way better than I am.
And then when I talk with them about this topic,
they're like, oh, I didn't consider it that way
because nobody was actually trying to find what is the bottleneck
and how we can kind of like resolve it and expand it.
So that's on that.
In the context of lightning,
then if you want more transaction per second,
you can do one of three things.
You can try to build on top of the blockchain,
which could be like the secondary solution.
You could build lightning on top of Bitcoin,
or you can try to,
and say for every one on-chain transaction,
I'm going to do X off-chain transaction,
which is great, okay?
It's hard.
It's a complicated hard problem, which is the reason it takes so long for people to work on that.
It's not something that can be easily done.
A second thing that they can try to do is to work on the first layer, okay, trying to change what the blockchain is doing.
If you see, I don't know, just take light coin for example, right?
Let's do faster block or larger blocks or change something in that.
But the networking layer is actually underneath the block.
It's the AT&T and the Comcast, it's the internet service providers, it's the VGP protocol,
that everybody kind of like assume it's a black box that you can't do anything about it.
Not a lot of people.
Lightning Network isn't trying to solve an networking problem.
It tries to do something else, which is hard.
It might be worth doing, but it's not that.
Nobody's the networking layer.
Goon always called it like the forgotten layer.
Nobody touches it.
And I think the reason for that is because the crypto space is filled with.
with crypto experts and system designers, et cetera.
But very, very few networking people reach this space.
So in your view, have other attempts to scale blockchain address the problem of networking?
Or is blocks throughout the very first project to address it in this?
We are the very first project who try to address that.
And our idea, unlike many of the other projects that you can see there, like we're not a project.
We're a company.
What we do, we're not trying to do our own blockchain.
We're not trying to do that.
We're not here to compete with anyone.
We're not trying to become the world cash out there.
We are enablers.
Our job is to come to cryptocurrency say, oh, guys, you know what?
We got this.
We solve the networking problem.
You do your own thing.
You focus on what you do.
I just remove that while next.
So your crypto or your blockchain, if you want to do a hundred times larger blocks, you can.
You want to have them coming at 10 times.
faster intervals, now you can.
Okay, I'm solving that for you.
I'm solving that for everyone.
And you guys can now compete and you guys try to focus on what you do rather than trying
to solve the entire stack by yourself.
Okay, so let's bring it back then to Bloxrout.
Can you expand on what is Blochstrout and what is the vision here?
What does it seek to do?
So Blocks Route is a blockchain distribution number.
Its goal is to enable other blockchains and other cryptocurrencies to scale.
That's what we do.
We bring the networking technology to financial information and blockchains,
so others can focus on what they do best, okay, consensus, doing cool stuff using blockchains.
And we solve the bottleneck for them.
We remove the scalability bottleneck so they can actually do all the things they dream of doing.
Now, the way BlockSart works is the following.
Let's assume that you guys are running an Ethereum node.
Then I come to you and I say, don't change anything in what you do.
Don't change your protocol.
Don't change your implementation.
Don't do anything in you.
But I'm going to give you a small piece of open source code.
That's your magic gateway.
Take this code.
And if you're a node or you're a miner, run this code on the same machine that you run your node.
And if your node is connected to this sphere and this fear,
this peer and this peer, connect to that magic gateway,
connect it just like any other peer.
It's a friendly neighbor peer.
It's a peer that sits on the same machine as your note.
And every time you mine a new block,
you send it to all your peers, including the magic gateway,
who send it to everybody else.
And that magic gateway, like any other peer,
will tell you about blocks from the outside.
The only difference is that that tragic gateway is going to do
a thousand times faster work in sending blocks to the rest of the network and receiving blocks
from others. So you don't need a consensus to start using blocks routes. No, you don't need
everybody to agree on that. I'm actually going to go to miners and ask them, oh, do you want to
use that? It's for free. It's open source. You don't have to ever, ever, ever pay for that.
And that is going to broadcast blocks for you faster and tell you about blocks faster. Now,
Ethereum miners specifically, they want to, or all miners, but Ethereum miners specifically because
of the uncle, the high uncle rate, they want to hear about blocks faster.
Okay, they want their blocks to be sent to everybody else faster because that reduces their
chance for their block to turn into an uncle block and a higher chance of being the real
block.
So for them, it's a no-brainer.
It's money in the pocket.
I'm giving them something completely for free and offering even.
If you use this, I'm just improving your network rather than use AT&T or Comcast or whoever is your ISP.
I'm offering you this thing, which does a thousand times faster job and is also provably neutral.
We are neutral which Comcast and AT&T and the rest of them are not, and not only are not.
They're literally filtering and giving different priorities to different packets depending on their own policies for them to make money.
Okay, so let's maybe recap that once again.
So as a node or a miner, any type of node on the network, but specifically minors, I guess, would have more of an incentive to use this.
I connect to a series of peers on the network.
So I have a discovery service and I discover all the peers that are close to me that I can connect to and to which I send blocks and from which I receive blocks.
I installed this software on my system.
I point my node to this system
as though it was just another Ethereum node on the network.
And this node will sort of magically,
well, it will transmit data to the network
and we'll get to how it does that
in a more efficient and faster way in a few minutes.
And I receive information from this node.
So I receive blocks as well from this network,
from this magic node.
And the assumption is that there are other magic nodes on this network to which other
Ethereum miners are connecting to and they're sending information to each other at a very high
throughput.
So it's sort of like a virtual private network of Ethereum nodes that are sending, that's
doing some kind of optimization and sending blocks to one another very, very fast.
then the nodes themselves are receiving that data with that same speed benefit.
Right.
So A, you're right.
OK, so the idea is that we provide this for everyone.
And the more nodes that use that, the more valuable it is.
So there is a strong network effect.
But even for the first, like because we bootstrap it connected using just regular nodes
to make sure that everything propagate fast and it tells about it.
he cares fast about Fox, then if you're even the first miner to join in, they're like,
oh, do I want to use this? So what's the cost? It costs you nothing, right? But if I use this
and I send box through that, it is being sent from that magic gateway through the blocks route
BDN, the blockchain distribution network, which broadcast this data to everybody else to all
the other magic gateways in the world. So it's always a choice for you. Do you want
to reduce your block propagation time.
Do you want to hear about blocks faster?
If so, you can use this.
Now, unlike VPNs out there,
we have no control.
We'll talk about the neutrality in a second.
We don't have control,
oh, this guy gets its fast, this guy get it slow,
this guy is allowed to connect,
that guy is not allowed to connect, et cetera.
I personally run a validator for the Cosmos network.
And I can actually understand the product and feel the user need for it.
So for some context, like we've been trying out different data centers to see where to locate our server.
And the way it works in Cosmos is the validator needs to sign on every block.
So in Bitcoin, you mine the block you win, right?
And that's like once every, let's say, thousand blocks.
But Cosmos is different.
You as a validator have to sign on each block.
And if you miss blocks and you don't sign on them,
then you're going to lose out on transaction fee revenue.
Right.
Right.
So, for example, we have done some experiments in at least three data centers.
And one of the data centers, we lose 1% of the blocks.
Like, we are trailing the network in some way and you're not able to sign them.
And in a different data center, we lose only 0.2%.
And like there's a high incentive to switch to that data center where we're only losing 0.2%.
And the difference is that this data center with the least loss rate, it's in England.
So there's probably like some geographical reason why that particular data center, when we run the validator there, we lose the least amount of blocks.
So the way I think of it is like blocks route is this software that if I install on the servers,
it will reduce the number of blocks I lose from 1% down to, let's say, 0.1%
because it is able to transmit the data much quicker.
I'll add to that, and it may be worth to start by talking about,
okay, how blocks work, but it's not about this.
So A, it's going to reduce that percent of that.
That's true.
But I'll say something further than that.
If cosmos start to scale by a factor of 10 or 100 or 1,000,
that percent is going to go up by a lot.
That's not going to be 1%.
I don't want to throw a number that I can't stand behind it,
but it's going to grow by a lot
because as it turns into high volumes of traffic
that has to be sent around the globe,
you have a lot of ugly stuff pouring in,
congestion, topology, messages overhead,
a bunch of stuff.
The idea is for Blockhead to help you exactly with that.
So I don't care on which data center you're sitting on.
I'm going to make sure that the data is sent to you all the way
to the machine that you're running on the wreck exactly where you sit
instead of getting lost somewhere along the way because,
well, network is complicated or real world is dirt.
So that's fair.
So until now, we have sort of described BloxRout as this black box system.
As a validator, I just download this over.
open source software and run it in parallel to the mining or validation process.
And then this black box is going to propagate my information and give me information faster
than I would through other means.
Let us peer into this black box.
How does it exactly work?
Perfect.
So how does it work?
It's actually not simple to understand.
So the idea is the following.
Let's go to, again, you have a cosmos valid.
And so I give you that small piece of open source code, the Magic Gateway.
And whenever you might, let's say you've signed a transaction or signed a block, you gave it to the Magic Gate.
What happens then?
Well, the Magic Gateway, he received the block and then he sent it to Blockstros, a network, the BDN,
a network of very well-connected servers all around the world to broadcast it to everybody else.
But how does it get an improvement of a thousand X from that?
So first of all, when your Magic Gateway receives a block,
then rather than send the entire block internally to everybody else,
then internally we represent each transaction in the block with a short ID.
So rather than have 500 bytes to represent a transaction,
we represent that with three bytes ID.
So we take your block and we shrink it.
Okay, so rather than say this transaction, that transaction, etc., we say transaction 5, transaction 17, transaction 3.
So your magic gateway looks at the block, map each transaction to ID, and shrinks it by a factor of 100.
Internally, only internally we propagate that, which we can do more than a hundred times faster, because it's a hundred times smaller piece of information.
And when it reaches the other magic gateways out there in the world,
each one of them map HID back to the original transaction.
So they get the original block and give it to the node on the machine that they sit at.
And so the idea is that we reduce the amount of data that we need to propagate internally.
And we can do that internally because we are a single entity.
Okay.
if that was done in a distributed way, then just agreeing about how to map transactions to IDs
and how to prevent collision of transaction and IDs, that's a very hard problem.
That's almost the reason that you have Bitcoin.
Bitcoin is used in order to create a consensus about a ledger of transaction.
So this is slightly different, but to have a consensus about a mapping of transaction,
which always updates, that's something very, very hard to do in a decentralized way.
But in a centralized way, by a single entity, it's very easy to do.
So we get more than 100x improvement just by doing that.
A second thing that we do is rather than when your magic gateway shrinks the block and send it to Blockstrout,
blocks route doesn't receive the entire block and only then sends it in a store and forward model.
Rather, it streams it.
So as it receives the block from your magic gateway,
it broadcasts all that data to everybody else.
So by the time your last packet arrives,
everything was already broadcasted,
and only that last packet has to be sent.
That adds additional somewhere between one and two orders of magnitude.
So between these two things, we get more than three orders from magnitude.
We can actually do much better than that.
We can actually take the IDs and, oh, what if we do bloom filters of these IDs?
What if we use IVLTs and bluefield?
We can get one or two orders and bandwidth beyond that, but honestly, nobody needs it today.
So we are not doing it right now.
It's not in our first version of that because it's a complicated thing, which nobody needs today.
We prefer to have something working and scaling blockchains by a factor of 1,000 and show that it works.
So in terms of performance, this is how we reach that 1000X.
We propagate smaller pieces of information and we stream them faster.
This episode is brought to you by ShapeShift,
the world's leading trustless digital asset exchange,
quickly swap between dozens of leading cryptocurrencies,
including Bitcoin, Ether, Zcash, Gnosis, Monero, Golem, Auger,
and so many more.
When you go to Shapeshift.com,
You simply select your currency pair, give them your receiving address, send the coins, and boom.
Shapeshift is not your traditional cryptocurrency exchange.
You don't need to create an account.
You don't need to give them your personal information, and they don't hold your coins.
So you are never at risk from a hacker or other malicious actor.
Shapeshift has competitive rates and is even integrated in some of your favorite wallet apps like Jacks.
So you can swap your digital assets directly within your wallet just as easily as
putting on your slippers. Whenever you see that good looking fox, you know that's where
Shapshift is. So to get started, visit Shapeshift.io and start trading. And we'd like to thank
Shapeshift for their support of Epicenter. You mentioned these two things. One is the streaming,
which totally makes sense to me. But the other thing is like the mapping of transactions to
IDs. And there I'm a little less clear. Is it the case that this 100x efficiency arrives
because of the use of some kind of compression algorithm?
It's not real compression, right?
When you think about compression, you think about zip and trying like,
oh, let's take this data in five final sequences,
which I can shrink and represent something else.
I want you to think about the simplest thing that you can do.
Okay.
The idea is that transactions propagate anyway.
So the core value of blocks route is to propagate blocks fast.
But beyond that, well, we also propagate transactions.
Why?
Because we don't care about it.
Whenever we send a transaction through the magic gateway,
we also say, oh, that thing that I just gave you,
that's transaction number five or that's transaction number three.
And when your magic gate,
so all the magic gateway have a consistent mapping,
just a hash table, map saying,
this transaction is one, this transaction is two,
this transaction is three, et cetera.
We use just three bytes for that.
this small address space that we continue to reuse.
And when your node give the magic waveway the block,
it maps the transaction, the simplest,
really the simplest thing that you could say,
just like instead of putting the transaction,
say, this is five.
Does that answer kind of clarifies that?
What I'm struggling to understand here is,
okay, so I mine a block, for instance,
and I want to propagate that block as quickly as possible
to the entire network so that other miners can stop mining.
and start mining a new block on top of this one.
So I use blocks route to send transaction IDs,
but let's take, for example, a blockchain where we've increased the block size by 10 times
because we want to have more scalability,
and we're leveraging blocks route to increase the propagation time of this block.
I still, as a miner, at some point, need to receive other blocks so that I can also verify the contents of the transaction and that the blockchain is, in fact, there's integrity in the block.
This is where it's unclear to me.
So we send these transaction IDs, but at some point, we still need to sync up the network and everybody needs to have.
Right, right.
The entirety of the contents of the blockchain.
So the idea is the following.
Let's say you're a miner and Merri is a different miner on the other side of the world.
You mine a new block, which has a bunch of transactions which you have received throughout the time.
You take that block and you give it to your magic gateway.
Your magic gateway takes that block and replace each transaction with a short ID, okay, three bytes.
So it shrinks it considerably and send it to Blocksrout.
Blockcharts streams that to everybody else.
Mayor on the other side of the world, his Magic Gateway now received that tiny block,
that shrunk block, which has IDs in it.
He received that, and he mapped each ID back to the original transaction, because everybody
have a consistent mapping, which ID transaction, like between transaction and IDs.
So he maps, Maher's Magic Gateway maps the IDs back to the original transactions.
So he now holds the original block.
and then he gives it to the node or the miner that sits on the same machine.
Okay, so that mapping.
So that's where I'm missing a part of it.
The original transaction sits with me as the miner who mined it.
How did that original transaction get to Mayer and the other miners?
And how are those, you know, thousands of original transactions,
presuming that we're trying to expand network throughput,
making it also to the other miners in sort of a fast way?
Because more than 99.99% of the transactions were not, how did you receive the, or were already received by everyone?
How did you, as a minor, generally speaking, how did you receive these transactions?
Somebody made a transaction.
He sent it to some Bitcoin node.
It propagated through the system and everybody in the system have heard about this transaction.
Yes, you might have your own transactions in it which nobody had seen before.
That is a small minority of these transactions.
99.99% of them were already seen by everybody else.
So everything that was seen by everybody else,
that's very simple to have that transaction.
So if let's say you put some transaction X in your block,
well, that transaction, some node saw that,
gave it to his fears, including the magic gateway.
So at some point it reaches our system, our system received that, map that transaction X to ID 5,
and broadcasting to all the magic gateways who now have that in their mapping.
Okay, so the Blocks route is only transmitting the IDs from mine blocks,
and once you receive it, once you receive this as another miner, so for example, I transmit a block that I've mined,
I transmit it to this node.
The IDs get sent to the network.
Mayer receives it.
And then he matches those IDs to transactions
that he's received in this M-Pool in his transaction.
No, no.
So think about there.
There are two components.
Your node doesn't know any of it.
Your node mine the block, give it to the magic gateway.
Right?
Magic gateway, all magic gateways have seen
almost all transactions up to this point, and they map each transaction they have seen to a short ID.
Okay, so your magic gateway takes the block and say, oh, I'll replace this transaction with
transaction 17, and this transaction with transactions with the number five, et cetera.
So they replace each transaction with the ID.
It goes through blocks route and all the way to Maher's magic gate.
Okay, not his note, he's magic gateway.
Merr's magic gateway have the same mapping as your magic gateway.
So he takes each of these IDs and map them to the original transaction.
Okay, so after this process, at Merr's magic gateway, he has now the original block, right?
Because all the transactions were mapped to IDs to be propagated and mapped back on the other side.
And so Merr's Magic Gateway, take that full block and give it to Merr's node or miner.
So the miner, his node, he doesn't know that somewhere in the middle it was propagated as transaction IDs or whatnot.
He sees just a regular block from his perspective.
Only internally inside the block strout system, we propagate these shorter IDs.
essentially if you think of it like assume like assume right now is time zero and block 500 was
created and and propagated now we are going to wonder about like what happens at block 5001 and
this is bitcoin so users are sending streaming transactions they want to be included in block 5001
so these user transactions come to me i am one of the bitcoin miners and these user transactions also
come to you, Sebastian, and you are one of the other Bitcoin miners.
So I have transactions and you have transactions.
And for the moment, let's start with assuming that my set of unconfirmed user transactions
is the same as your set of unconfirmed user transactions.
So we have the transactions already.
Now let's say Sebastian you win and you create Block 501 and Block 501 contains a subset of the transaction.
the transactions that the users sent to you.
What then what you will do as a miner is you will send to your Blocks Route Gateway, the
normal block.
Blocks Route Gateway will take the transactions, convert them into a set of IDs, which is
a much smaller data set.
And then that set of IDs will be then transmitted to Meher's Magic Gateway.
And then Meher's Magic Gateway will take that set of IDs and convert them back into
user transactions that it has already heard, and then it will create the original block
and then send it to Meher's Bitcoin Miner.
Okay, now this is what I assumed to be true.
So you match those transaction IDs to unconfirmed transactions that you've already heard of,
and these transactions are being streamed in the network,
or being propagated in the network much faster than entire blocks,
when they're being mined.
So we're solving that, we're solving the problem
that big blocks take long to propagate,
while transactions themselves propagate at a much faster rate.
Right, and it's worth noting that if you have a 60 megabit per second link
of bandwidth, that's enough for somewhere between 15,000
and 30,000 transaction per second.
Okay, so it's not a bandwidth limitation.
You have no problem of receiving these transactions
at high volumes,
That's, you're good on that.
Okay.
The only thing is about when somebody mines a block,
that block has to be sent to everybody else as fast as possible
because during that time, it is when forks happen.
So the idea is to minimize that time of blocks being propagated.
So my question is like there are, there are some blockchains.
So in Bitcoin, if you take a block,
as a miner, all I need to know about is,
transactions were part of that block.
But in something like Ethereum,
I need to know what transactions
were part of that block, but I also
need to know an
order of transactions.
We preserve that, right?
There is, then you receive a block
and we should probably
go over and finish the description
of blocks, right, because you guys
got an unfair advantage over the listeners.
You got an early explanation as well.
But to your point on
Ethereum, then we, there is an order of transaction.
We maintain that.
We take the transactions and we just replace them with a smaller representation.
So we don't need as many bytes to represent the transaction.
So we keep the order.
We didn't change yet.
We just replace the entire transaction.
We're saying five or 47.
Okay.
Cool.
So that makes sense.
So essentially, in some ways, is it correct to say that you are building the Akamai of blockchains?
Because when I have a different kind of problem, which is, let's say, the YouTube problem, I have a bunch of data,
and I need to stream it to my users and they're spread around the world.
I might end up using something like Akamai in order to reduce my bandwidth costs.
out here, you're building the akamai of blockchains,
but the difference is that
you're building the system in a way that if I'm a miner,
I do not need to place trust in blocks route
as the akamai of blockchings.
Right.
So up until that, we talked just about the performance,
which is half the store.
We say we send it super fast,
but if your protocol, let's say that you're Bitcoin
and you decided to increase the blocks,
by a factor of a thousand. Well, if your protocol depend on blocks
to succeed, then what happens if I start to abuse that power? Okay. What
happened if I say, oh, you want your block sent? Please pay me a thousand dollars.
Or that guy, I really like him. So I'll send your blocks faster to him. And that guy I
don't really like. So he will get that only later. The worst case scenario, like the most
the worst of it all is what happened if I'm, even if I'm a nice person, what happened if law
enforcement comes and tell me, oh, these wallets and addresses are suspected of terrorism acts.
You're not allowed to relay any transaction blocks to contain transaction to or from them.
If I'm in charge of making sure that blocks go everywhere, I can actually redactually.
I can do all sorts of evil stuff.
So even performance is not enough.
We have to maintain neutrality.
And blocks out is provably neutral.
Now, how do you achieve that?
And that is as important.
If we're not neutral, you shouldn't be using us,
because it breaks the entire system.
Well, we achieve neutrality by preventing ourselves,
blocks route, from knowing the content of the block,
block, where is it coming from and where is it going to? And the way we achieve that is fairly simple.
So we spoke earlier, let's say that you are a miner, you mine a new block, and you gave that
block to your magic gateway. Well, in order to prevent ourselves from knowing the content of the
block, then your magic gateway shrinks the block and then it encrypts it. So rather than sending
it directly to blocks route, it encrypts the block and send the encrypted block to everyone.
And only when your magic gateway hear from his peers, the other magic gateways that he's connected
to, that they have received the encrypted block because magic gateway tell each other,
oh, I received this encrypted block, oh, I received that encrypted block. Only when your magic gateway
hear from his peers and they have received the encrypted block, only then do you,
reveal the encryption key. At that point, it's already too late to do anything about it because
it was already propagated. So you take the encryption key, you set it through blocks routes
and through the peer-to-peer to propagate as fast as possible to everyone. So the content of the
block is revealed when it's too late. We already sent it to everyone. We can't pull it back.
So this is how we prevent ourselves from discriminating based on the content of the block,
of what's in it. We just don't know. We blindly serve everyone.
To prevent ourselves from discriminating based on where the block is coming from,
then rather than your magic gateway sending the encrypted block directly to block
you can relay it through a peer, kind of like Tor, right? If you're in North Korea and we're
legally not allowed to send data or receive data from North Korea, you can send that data through your
European node peer or your Australian peer or your American peer. And that peer is going to relay
the small and critical block to us. So we don't know where is it coming from. We don't know what
it contains. And the same one is the receiving app. Rather than receive it directly from us,
you can ask your peer, your magic gateway peer to relay it to you. So we can't prevent us
from sending to you because you're going to get it from someone which we don't control.
So we intentionally hide from ourselves.
Where is it coming from?
Where is it going to?
And what it contains.
So we can't discriminate based on.
So you've built this blockchain distribution network and taken all of these measures to remove trust out of the blockchain distribution network.
Does there remain some element of trust that you are unable to remove?
So that's a great question.
Okay, it is really it.
So without any of these tricks that we do, then everybody have to place their trust in us, right?
And if everybody has to place their trust in a centralized system in the middle of the blockchain,
what's the point of the blockchain, right?
We can just keep the bank in the middle, everybody trusts the bank to move money between the accounts.
We do these techniques to prevent ourselves from being discriminating and censoring based on source,
destination and content, but there remains one problem that is solved in a difference.
What happened? How do you prevent blocks route from turning into a single point of failure,
right? What happens if a meteorite comes and hits all blocks or servers and everything goes down?
We can't have all blockchain have to move from thousands of transactions per second to three
transaction per second, right? That's just unacceptable. So in order to prevent that, or a different thing,
We're being completely shut down by the government or something like that.
You can't have that affecting the blockchain, which are using blockchain.
So this is the reason.
In order to solve that, we actually open source everything that we do.
Not only the magic gateways, our servers, our script to deploy our servers, et cetera.
And we allow to deploy something called backup networks.
Okay, so let's say that you are a medium-sized miner.
You're someone who has some stake in the system,
and you don't want to go back to three transaction per second.
You can take that code and you can deploy a backup network.
Now, a backup network is exactly like Blochrout, but it's idle.
It doesn't send anything at any given time.
Like, you just sits there for that doomsday scenario.
So it doesn't cost you anything.
Okay, it costs you like half a dollar per month.
And we'll actually pay you for that.
We'll pay you even that amount if you run a backup net.
That's our intention.
So those who have any stake at that,
and you could be just a medium-sized store,
that's enough.
If you have $5 a year interest in Bloxor,
that's enough for you to deploy such a thing.
So these backup networks are not controlled by us.
We don't have any say in what's happening,
and they're sitting there idle
until in case something bad happened,
that's doomsday scenario.
If that doomsday scenario ever happened,
and it would never happen,
but if it does, then your Magic Gateway,
well, he knows about your backup networks,
and he actually tells, like, Magic Gateway,
tell each other which backup network they're going to hop to.
So if our network goes down,
everybody can do a hot swap and move to a backup network.
That backup network provide you exactly the same service
as Blocks Route. It's not as cost-effective, but you can use that. You can use that for a short
period of time if this was just a temporary failure and we came back online. Or you can use it for a
year or two years if we were shut down and you want to replace BloxRot with something else.
You have a solution. It's good enough to keep you running for the medium term until you decide
what do you want to replace BloxRot with. But we'll never leave you high and dry, right?
will never go away and leave you stuck without anything like, oh, I just lost all my sale of it.
So this is interesting because I mean, we haven't really talked about your business model yet,
but I presume there is a business model and there is a way for blocks throughout the company
to make money from the service. And maybe this is a good time to get into that.
But by offering this service is open source and allowing people to do backup networks,
it opens up blocks route to competition and competing networks that, you know,
perhaps price lower or offer the service with better performance.
So could you address those two?
So what is your business model and how do you address this problem?
Sure.
So it's a good point to make and to explain why it's not the case.
Let's talk about Block Start business model.
So Block's route is provably neutral.
Okay, we enable scalability for everyone, but we can't charge
anyone directly to use Blockstrap. I can't charge you guys the $5 per month subscription to use
Block Strout because I can't prevent you from using Blockstrap if you don't pay me. Right? I'm
provably neutral. I can't stop anyone from using Blockstrap. And if I could, then you shouldn't
use me at all because I'm not provenly neutral. So in order to allow, so Block, Blockchart creates this
common good. Okay, it gives a thousand times scalability for everyone.
But it can't charge anyone direct.
So the business model we built around that is a bit similar to Bitcoin.
It's about aligning the incentives.
We make BloxRot convert to this win-win-win scenario
where everyone are super happy about BloxRout.
And it goes like this.
Bloxrout increases the transaction per second by more than a factor of a thousand.
So users, those making the transaction,
transactions can pay 100 times smaller fees.
So users are happy.
That's the first width.
They get some cent transaction fees.
They pay a hundred times smaller amount.
Miners on their end, each transaction is 100 times smaller,
but there are more than a thousand times more transaction per second.
So they make in total more than 10 times the amount of the fees that they were making
without locks right.
So that's kind of like the second week, right?
So users are happy.
they pay lower fees.
Miners are happy because they get a total of more fees.
And for Blockstrow, the third win,
we allow users when they make a transaction.
They can pay a fraction of that 100 times smaller mining fee.
They can pay two blocks drought if they want to.
Now, why would they want to?
This is not a donation-based model.
They can choose to pay Bloxrout a fraction of the mining fee
because Blocks Route created this fee reduction service.
If you pay a smaller, this fraction of the mining fee to Blocks Route,
miners would require a smaller fee from you in total.
Okay, so rather than pay half a cent, you can pay a quarter of a cent.
Rather than pay a cent, you'll pay half a cent.
Now, why would miners require a smaller fee from you?
why they require less incentive for you.
Because miners know that we add all these capacity for free,
but we also add additional capacity to transactions that do pay blocks route.
And the more transactions that pay to blocks route a minor include,
the more addition.
So not only does that not come and compete with regular non-paying to blocker transactions,
but also we increase the amount of three.
the amount of bandwidth that they can use for transactions that don't pay to block so.
So to recap, miners, they do the regular thing that they can choose, but if you pay blocks
route, they can see your transactions, say, oh, that doesn't compete with the other transactions.
I have almost infinite capacity for these kind of transactions.
And furthermore, the more of these transactions that they put in the block, the more bandwidth
and more scalability I get for transactions that don't pay blocks out.
So the miner is going to require a smaller incentive
to include these kind of transactions.
So he's going to require a smaller fee.
We don't enforce any of it.
We can't force none of it.
But because miners know we enable further capacity for them,
then we reach this win-win-win scenario.
You never have to pay blocks route.
But if you will pay blocks route,
the miners would require a smaller fee from you.
So it's an option if you want to reduce your fees.
So in this Bloxrout future, I assume I'm the miner, right?
And I have a mempool, right?
So let's assume that mempool consists of, so I have 1,000 transactions that do not pay anything to Blockstrow.
I received 1,000 transactions that paid something to blocks route,
but on an average have a lower minor fee for myself.
Let's say the 1,000 transactions that did not pay blocks route
have an average fee of 20 cents.
The transactions that are paying blocks around, blocks route have an average fee of 10 cents.
And there's thousands of this type and thousand of this type.
So now I have, let's think I have like three choices, three main choices.
Choice one might be, okay, I create a block with these 1,000 transactions that did not play Broxroud anything.
Choice two is I create a block with these 1,000 transactions, all of them playing to paying to blocks route.
And choice three is I create an average, right?
So 500 or 500 non-blocks route paying transactions and 500 blocks throughout paying transactions.
So I disagree on that.
That's not your three options.
I think you have this memple and you're a minor.
So you always pick the transaction that paid the highest fee per bite, right?
Then you sort them.
That's what you do today.
Right?
And this is how you choose them.
If you had infinite capacity, you'll just put all of them.
You don't have to pick and choose.
As long as it's paid the most minute amount that it's worth it for you to include in the block,
you will include that, the single set token.
sheet, okay? So that's what you do. You always try to maximize how much money you're making.
So all of the regular transaction that pay two blocks route, then you know that like, oh,
I'm going to include those transactions according to their order. So these are about these
transactions and you have some limitation. Let's say a thousand X of the of the current megabyte
block. When you see these kind of transactions, you could like, oh, do I want it?
pays less fee, why would I include it there?
Why would I include it when I can put a transaction
that pays more money?
Well, you can include that transaction
because it will allow you to include
rather than 1,000 transactions of non-paying to blocks out.
Now you could include 1,000, okay, or 1,010.
So the more transactions that you include
the do pay blocks route, the more bandwidth,
the larger the blocks that you can send through blocks,
And now comes the question, oh, but what's the limiting factor?
Like, at what point do I start to have to include transactions that pay to Bloxrout
in order to increase that capacity even further?
Let's say in case one, I create a block and all transactions play to Broxrout.
The propagation time for that block is going to be, let's say, X.
X might be, I don't know, five seconds.
It's very quick.
But if I...
Five seconds is not quick.
Okay, quicker.
Like, a second.
Like, what I mean is, like, my block propagating to 80% of the network.
So let's say it's two seconds.
Now, had I created a block in which none of the transactions were to pay to blocks route,
then the propagation time would have been five seconds instead of two seconds.
Is it like that?
It doesn't work like that.
The idea is the following.
Let's say, what happens if you don't...
let's say you just create a giant block,
which doesn't include transaction per cent,
transactions that pay two blocks.
Okay?
Then you create a really giant,
beyond what blocksor.
Bloxor tells you,
I can give you 100 transaction per second.
Okay, I give you to that.
That's for free.
You don't need to pay blocks throughout any transaction piece,
nothing like that.
We can give you that.
For free, just enjoy that.
But what happens?
So you create a block,
which matches 100 transaction per second,
You send it to blocks route.
It reaches everybody else.
Everybody are happy.
Everything is good.
Now, what happens if you try to create a larger block beyond what we tell you that we can provide you with without paying blocks right?
Well, if you do these kind of transit, you make a giant block, you shrink it, you encrypt it, you send it to blocks.
It's being sent to everybody else.
We can't do anything about it, right?
We don't know what you're sending.
But the other magic gateways, your magic gateway appears, when they receive that block, they
see, oh, that doesn't follow the rules.
It's too big for us to support it without starting to pay blocks.
So they will reject such a block.
Not us, we can do anything.
But the magic gateways, controlled by the miners and note, they will reject such a block.
Now, if you follow the rules and say, oh, this is the amount of transaction I can do without playing paying blocks out.
And if you want to do more, you can include transactions that pay to blocks throughout.
And so you have an incentive to include them.
And you can have more even further capacity, transactions that don't pay to blocks right.
So you as a minor, you're like, oh, if I could only include more transactions that pay to blocks route, I could do even larger blocks.
So you include these kind of transactions, you create a block, you encrypt it, you shrink it, you send it through blocks route,
have the magic to receive it, and then they look, oh, is it following the rules, right?
Is it more larger than the 100 transaction per second?
Yes, but is it following the rules that we increase the capacity based on the number of transactions that pay to blocks out?
Then it's fine, and so they will give that block instead of dropping it.
They will give it to the node that is next to it.
So I presume that there is an assumption where in order for miners to be happy with smaller
transaction fees but more transaction, there needs to be higher throughput of the network and more
usage of the network.
So this seems to be sort of a chicken and egg problem here where for miners to have, for
miners to be happier with lower transaction fees but higher transactions, we need to have
more users using it to make payments, for example.
How do you address this and like, what do you, where do you think transaction?
demand will come from?
So the idea, we have already seen what happened to demand.
Demand increases, increases, increase, and increase until it reaches the capacity.
You could see that with Bitcoin core, right?
Original Bitcoin, it increases.
And then it stops because the capacity reasons, so fees go up.
Our job is not to try to get traction.
That's the job of the different cryptos and the different blockchains.
We remove the scalability process.
the scalability problem.
And I say, oh, we allow you.
You can do that if you want to.
Go ahead, compete.
There are something like 2,000 cryptos out there.
Go ahead and try to compete in getting traction.
If miraculously, I mean, we just increased transaction throughput on Bitcoin by a factor
of 1,000 more.
You wouldn't have like a thousand times more people using Bitcoin to pay for coffee.
There are the applications yet built there.
The idea about the win-wing-win scenario is what is the end game.
how everybody are happy about the blocks out going forward and we reach these capacities, et cetera.
At the beginning, it's an even easier choice.
We provide blocks route for free, for everyone.
So if you want to do 100 transaction per second, I allow you to do that today.
And it costs you nothing.
I charge you nothing.
So going back to your question about reaching that, oh, will users get smaller,
fees, will they get higher fees? That's a job of the different cryptocurrency. They should go out
there and try to get real value for real people in the real world and get traction. We're not
trying to solve all the problem of crypto. Kind of like, oh, yeah, well, we're doing our own
blockchain and we create our own cryptocurrency and we do all that. We remove the scalability
the problem, right? I allow your crypto to scale. It's your job to scale it if you want.
So essentially like BloxRout is like in the business of capacity, right?
And like transactions that pay to BloxRout will be offered higher capacity
when the miners broadcast to each other.
And presumably what will end up happening is BloxRout,
the organization will get a small slice of transaction fees
in different tokens happening on different names.
So Bitcoin users pay blocks route in Bitcoin, Bitcoin Cash and Bitcoin Cash, Cosmos in Atoms,
and your company ends up collecting these tokens.
What's the plan from there?
What are you going to use these tokens for?
And is there some plan to get a community around Bloxrout onboarded with this plan?
First of all, it's important to say we don't have a utility token.
The scalability, as I explained it up until you know, you don't need a token to use BlockSaur.
You don't need any, we don't need none of that.
But if BlockSert is going to provide this fee reduction service and is going to be paid by everyone
or who want to, or not by pay by everyone, if BlockSard is going to be paid by those who wish to use
the fee reduction service, then it kind of like has a problem that we want everybody to be
happy about Rockstar. We don't want to be considered the leachers, the rent seekers, right? So I don't feel
bad because we increase the capacity, we increase skillability by a factor of a thousand. And we give
99.9% of the value that we create to users and miners by reducing their fees and increasing
their total fee that they're collecting. But if we're collecting even a fraction of the mining fee
through this service that we allow, and if we make a lot of money out of that, then people would
resent us. People would think of where ranciggers and leachers. And that is a problem for us,
because as we said at the beginning, it's all about incentives. It should be a win, win, win scenario
where everybody are very happy about blocks start existence. So in order to overcome this problem,
we understood that if we have money coming from the crypto ecosystem to blocks from,
it has to pour back to the crypto ecosystem. So these tiny, tiny payments that we're getting,
and we're thinking like 5% of a cent per transaction,
tiny payments in this fee reduction service,
what we're going to do is to say,
these payments, only half of them,
50% go to Blockstrap for the operation,
for the development, for the company like going for, etc.
And 50% go to the reserve.
The reserve is just a giant pile of crypto
of these payments going in,
that payments go in and never out.
and we're going to issue a security token,
called BLXR for Blockst.
So we issue a captain and let's say 100 BLXRs.
And if one of these BLXRs is yours,
then 1% of the reserve is yours.
You can always take give your BLXR to the reserve
and get 1% of the Minera,
1% of the Ethereum, 1% of the between.
Whatever in there, 1% of that is yours.
The remaining 99% will belong to the,
other 99 tokens, yours will burn and go out circulation. So they're unaffected if somebody's
cashing out. So the idea is we want people or we allow for those who want to invest in
blocks route and get a portion of these future payments going in the future. If we allow people
from the crypto ecosystem to invest in that and be a part of that, so more people are
out there in the ecosystem space are happy about BlockSRoe.
The idea is to make sure that it's not money just pouring for us.
It's money that circulates throughout the crypto ecosystem.
So we want to keep everyone happy.
We don't want to be what people call the leaders and the rent seekers.
So we move from that position.
Now, an interesting thing about the BLXRs is that the more payments go in there,
the more each BLXR is worth.
And it actually acts as a crypto-extr.
index, okay? It has all sorts of crypto which are scaling, using blocks, right? And it automatically
adjust toward the crypto, which is used the most. Right. So if Ethereum becomes the most dominant
crypto, then the most payments, small payments of Ethereum will go to the reserve. And the index will
tilt toward that. If Monero becomes, or Zcash becomes the next dominant thing, then the
index will turn tilt towards that.
And even if a new crypto that doesn't exist today, it comes to tomorrow, nobody can buy it
today.
But that becomes the most dominant crypto, then small payments of this new crypto will start
going into the reserve and it will tilt towards that crypto.
The index will tilt toward that crypto.
Did that make sense for you guys?
For sure.
This is a very interesting model, right?
So I think it's the first time.
I mean, like people have been talking about
like having
crypto indexes for a long time.
But
I think like the
way you have designed the token
is very unique because A, first of all,
it's a security token. Like you're
accepting upfront
that it's a security token which means
the eventual value of this token
is going to rely on your
and your co-founder and your team's
managerial efforts.
It's not meant to be a currency. It's not meant to be a
currency. It's not meant to be a
utility token, right?
So it's probably one of the first security tokens itself from a purely crypto blockchain
project.
And then secondly, there's a very unique model of bootstrapping value into this security
token.
I'm actually curious what kind of legal implications this token's structure ends up having.
So here's what we're doing, right?
Rather than do this thing where we try to play this game by creating something and try to persuade the SEC that it's a utility token and not a security,
we're coming up and saying like, we're following the rules.
We're playing it as straight as possible.
This is an investment in Blockstrup.
If you want part of these future payments of that, and it's worth mentioning, the reason that we're afraid of people calling us,
leaders and rent-seekers
is because if you do the math,
we expect to get very, very small payments
per transaction,
5% of a cent.
But if you think that when we help one medium-sized crypto,
let's say, not the end game, not the 100,000,
the 30,000 transaction per second,
if you do the math of 5% of a cent
times 30,000 transaction per second
times 31 million seconds per year, that end up being $460 million per year in revenues with very
low cost.
If we're talking about our endgame, 200,000 transaction per second, we're talking about
billions of dollars per year in revenue.
So it's a real thing, at these volumes and size of money, people would resent us.
We have to make sure that that doesn't happen because we're not the bad guy here, right?
We create all these value.
We capture a tiny fraction of it, but we might make sure that optics are okay.
We don't want people to resent us about what we do.
So this is how we built.
And so this is an investment in Blockstrup.
If you believe in Blockstow, it's just a security.
So we're already in touch with the SEC.
We follow all the regulations.
We have top lawyers.
So Patrick Merck and the Kooli team, they are.
the experts about crypto, we follow the law to the letter. We're really, really playing it
as safe as possible rather than try to avoid the regulation.
So can you talk about how this token will be distributed?
So our idea is to sell, we want to sell enough. Okay, we want to sell enough in the first
round. So enough people will have an incentive about blocks. So we're going to sell,
Currently, that's not our focus.
Currently, what we're doing is we're building the technology
and we're trying to get to show how BlockSART works
and to get traction with cryptos.
But somewhere towards the end of the year or so,
we're going to do a token sale, which we plan to sell
a significant portion of these tokens.
Okay, and so what is the current state of development?
Are you building the technology at the moment?
What parts of the BDN have you...
When will that be released?
So we actually already have the blockchain distribution working.
What we're doing right now, we took the Bitcoin Unlimited Codebase.
We took them because their code base is more efficient than others.
But we want to show how we take a crypto...
network and we deploy it, a large one. And we see how many transactions it can do without
Blockstruct and show how much it can do with Blockstrap. So our idea is to show that in the coming
few weeks. Version 1 of Blockstrow should would probably go out either in Q4 this year or Q1 of
2019. And just another word about Bitcoin Unlimited. So the Bitcoin Unlimited guys, we don't
have any special integration with them. So another word, regarding,
Bitcoin Unlimited, we don't have any special integration with them.
But Bitcoin and Limited went ahead and said they have their gigablock test initiative.
They tried to see how many transactions per second they can push.
And they found that the Bitcoin codebase actually have a bottleneck of taking transactions
and putting them in the mempel, it's done in a single thread.
So that max out at 100 transactions per second.
So Andrew Stone from Bitcoin and Limited took that and allowed to do that in a minimum
parallel. So to put transactions into the member on numerous threads, which allow to scale
by a lot. So we took their code base and we're now deploying a large crypto network to show,
not to argue that blocks records, but to show how blocks right works.
Okay, great. Well, thanks so much for coming on. Uri. It was really interesting to learn about
blocks route and it is a bit of a complex architecture to sort of,
wrap your head around, but I think that we were able to unwrap it and unravel it in a way that
will allow our listeners to understand how this works and how it's beneficial to the ecosystem
as a whole. So we'll look forward to seeing how this plays out in the coming months as you start
releasing parts of this new architecture. Thank you for having it. It was a real pleasure.
And thank you to our listeners for tuning in. You can find new episodes
of Epicenter every week on YouTube, iTunes, SoundCloud,
or wherever you get your podcasts.
Of course, you can follow us on Twitter.
And if you're looking to support the show,
you can do that by leaving us an iTunes review.
We always love to hear new reviews,
or see new reviews rather, and also helps people find the show.
Thanks so much, and we look forward to being back next week.
