goTenna Demo with Richard Myers

Richard Myers (goTenna)

[00:00:00] Richard Myers: Happy Halvening, everyone. My name is Richard Myers and I work on the global mesh labs initiative at. goTenna. I work as a software engineer and I'm developing tools that leverage the Bitcoin network to incentivize decentralized communication. one concern that people frequently have about Bitcoin is that it depends on the internet and what happens when there is no internet?

that concern doesn't just apply to Bitcoin. It's also relevant in our current sort of highly connected world. And  normal life really depends on our communication infrastructure. And this was demonstrated as hurricane Sandy went through New York and people were, you know, without communication infrastructure for days or weeks.

 and also these centralized systems are vulnerable generally to catastrophic failure, basically at the times when you need them most. In some regions, this is from a hurricane that went through Puerto Rico, for example, and  they were without a central communications  definitely for weeks.  Plus in many parts of the world access to the internet  is really financially out of reach, [00:01:00] even if it is available and running your own Bitcoin node can be prohibitively expensive for most people who are on some sort of metered mobile internet, for example. and that's despite Bitcoin having the strongest focus of any of the protocols out there for minimizing resource use, not just, computational resource use, but also, the bandwidth resource usage.

And, and it's not just price, but also people living in oppressive regimes. These are the people who really need Bitcoin the most, are also the most at risk of censorship and centralized communication networks provide just a real easy kill switch for any, politically motivated network disruptions.

And  if Bitcoin is seen as a threat, and basically that is when Bitcoin is successful, it will be seen as a threat, it's also going to be a potential target for some of these internet blocks. 

and then of course, there's also the problem of surveillance. metadata surveillance can be used to build a dossier.  This is something [00:02:00] Edward Snowden has talked a lot about who is talking to who and maybe who is using Bitcoin. even if the communication itself between people or between nodes is encrypted. And this metadata about who's financially transacting and with whom, can reveal some of the most intimate details of our lives. So it's important  that we worry about it.

 So, one way Bitcoin users can reduce their dependence on centralized communication networks is by confirming Bitcoin transactions without direct access to the internet. and this can be accomplished by confirming transactions  in a trust minimized way using things like long range radio broadcasts that can still work even when local internet is down. And what's more, can also reach across national borders if there's censorship or surveillance.

one of the earliest examples of this is actually from 2014, this was called the crypto radio project, and it Pioneered the idea of transmitting Bitcoin data using a terrestrial digital television transmitter in Finland. [00:03:00] And this trial lasted for only two months, but it was able to reach 5 million people, which was 95% of the Finnish population. So this showed for the first time that you could validate Bitcoin transactions without an internet connection.

So you could, without having an internet connection, you could set up one of these dishes and know that you received a payment in Bitcoin. so this was a huge milestone. but it did rely on some regionally centralized infrastructure. And if the Finnish government had wanted to censor it, of course it could have because there was a central transmitter involved.

On the other hand, the free Blockstream block sat service, which is now the most well known and, and currently operating solution, allows you to confirm Bitcoin transactions while off grid by using a network of satellites, geosynchronous satellites. So pretty much anywhere you are in the world, you can receive this information and confirm Bitcoin transactions and run your own full mode without having an internet connection.

And this all uses a standard home [00:04:00] satellite dish, some low cost parts. just yesterday, in fact,  Blockstream announced version 2.0 of their system, which makes it even easier to set up by giving you sort of a pre box kit of parts and, even allows you to sync a full node from the Genesis block forward rather than just taking an Up To Date node and keeping it updated.

So this is a huge milestone and I, and I think, really sort of laid the groundwork for everything that's come after is as far as doing off grid and not an internet, not connected type of a Bitcoin work. 

but this is only half of it. So monitoring the Bitcoin network is not quite enough. To use Bitcoin off-grid people also need a way to get their new transactions, for example, for exchange payments and get those transactions to the global network. and this has to be possible where internet might be expensive or unreliable or censored or surveilled, all the reasons we talked about before.

So blockstream satellites solve one half of the [00:05:00] problem, but there is another half that does need to be solved.

This is a goTenna radio. goTenna mesh powers the world's first consumer mobile mesh network. And this device is focused on sending short burst data over a great distance in a totally decentralized off-grid manner, no cell wifi or satellite required. they're cheap devices, you know, reasonably inexpensive, about 80 bucks. And they can pair with an Android or iOS phone, so they're mobile, you can walk around with one. When you're using a goTenna, messaging is free and it enables anyone to broadcast over a completely decentralized end to end encrypted communication channel over the UHF spectrum.

and it's easy to use as any messaging app on your phone, except for this one transmits on a totally peer-to-peer transport layer so that it'll work when nothing else will.

In a mobile mesh network, devices communicate directly with each other if they are within range or, they can relay  from device to device to [00:06:00] device if your destination is further away. Basically a mesh radio turns your phone into a low power, but low cost, programmable decentralized communication infrastructure: a bottom up rather than a top down network.

 In 2018 the samurai wallet team created an application to take advantage of the goTenna mesh as an alternative way to send Bitcoin transactions to the Bitcoin network.

So instead of broadcasting your transaction over an internet connection, the transaction is signed on your local device and then sent to a new mobile application they built called TX Tenna. So TX tenna takes  a raw Bitcoin transaction, just small on the order of a few hundred bytes, and broadcasts it over the goTenna mesh radio.

And these transactions are then relayed from device to device until they reach a device running TX Tena, that has internet access and this way, high cost metered internet, or local outages or censorship or surveillance can be bypassed using this alternative decentralized [00:07:00] communication network.

Next I'll just show a short movie that gives you a flavor for what this interaction might look like.

So you keep your eye on the goTenna radios in the lower left corner. and you can see when the lights are blinking that they're exchanging messages, and although while here, they're just right next to each other, these radios could be miles apart.

So you can see there's a transaction going in on the right hand phone, and then that transaction will be broadcast.

 it's going to create and sign the transaction, and now we're going to broadcast that transaction over the radio. Now you see the lights are blinking. So the right hand is sending to the left hand, it's been received, and then the right hand gateway device, which has internet, will send that to the Bitcoin network.

And then once that's been sent to the Bitcoin network, you can see on the right hand side, a confirmation. So right now it just knows that it's been relayed. But it will receive a message from the gateway saying that it's actually been put on the network. It's going to change from relayed [00:08:00] to broadcast.

So now you can see that it's been broadcast. At this point,  it's sent to the Bitcoin network, but it's not yet confirmed. it's in the mempool, so now we have to wait for it to get mined into a block. we're not going to wait the whole time , we're going to skip ahead a bit.

In fact, this particular transaction, you can look it up, it happened at a time with really high transaction volume, so it took a long time, but we skip all that. Here you see, it's confirmed on the Bitcoin network. So finally it's on the gateway node, and it sends back a message to our node. So now our node has the knowledge that it's been mined.

and now you should note that the confirmation from the gateway is only informational right now using TX 10. Ideally what we'd like to do is support light clients that are connected only over the mash. What this means is that, we would like the mesh nodes to also be broadcasting things like block headers so that a light client can stay up to date with the network from a full node that's connected, or for example, a full node that has a blockstream [00:09:00] satellite. and also we would like these internet gateway nodes, running on the mesh network to be able to do things like return a Merkle proof so that any light client could confirm a transaction has been mined into the blocks.

So this would allow for very low bandwidth, disconnected light clients to become Sovereign nodes to it to a great degree, at least to the degree of light node can be.

but of course there's other ways too. We don't need to do this with a goTenna mesh. We're building an open source protocol that allows any radio systems.

So for example, Gruble's has been testing amateur radio  as a modality for communicating over the Bitcoin network. Also we've got Mario who's been using LoRaWAN mesh and doing some great stuff there. The Locha Mesh team from Venezuela is also building a mesh device that could run a protocol like what we're describing here.

and then, there's also people working with, for example, low earth orbit satellites that are being developed for sending and receiving Bitcoin transaction messages no matter where you happen to be. 

so [00:10:00] these alternative radio systems can be used to connect nodes over a great distance. in the case of a high frequency radio, thousands of miles, and a lower satellite can receive uplink data from a tiny low power radio no matter where you are. So these are, these are pretty exciting developments that we hope to, adapt our system that we use for TX tena, and adapt that for these other radio systems.

But of course, it's not just layer one Bitcoin, but actually layer two is very powerful, for off grid networks.

So we've been bringing these ideas to the Lightning Network, and we've really only had to make a few changes related to reducing some of the bandwidth of the protocol related to routing, which isn't really relevant for a mesh network. and this allows us to do a lightning transaction, to negotiate an update to a lightning channel, essentially with as little as a kilobyte of data that's exchanged, in total over around three rounds of roundtrip communications.

This makes something like Lightning work, almost better than a layer one transaction off grid because you [00:11:00] really only need to get to the gateway to submit a transaction, when you open a channel, but not when you make payments.

so  this idea basically is all inspired by a project that we're working on at goTenna called the lot 49 protocol.

This is what our global national labs initiative is working on. And the idea is to incentivize nodes in an off grid scenario to relay text messages using  lightning micropayments. So this would be similar to sendpay or Sphinx. and this was a way to incentivize relay notes to exist and to create the infrastructure for, off-grid messaging, network.

And as each message is passed from node to node, the relays will negotiate a small payment that they can collect if and when the message is delivered. So this is very well aligned with how Bitcoin lightning works now but as a way to bring it to people who are more interested in just  having low cost, off grid message capabilities.

And, and of course, this doesn't have to be just for local nodes or for local mesh networks. If [00:12:00] you run the same protocol over things like amateur radio, then long range radio systems can be used as gateways to connect local wifi or mesh networks and connect across boundaries and send data basically over, anywhere in the world using lightning as the incentive to have people run these gateways that connect different people.

So, I think the Bitcoin community can really lead the way in creating an alternative communication network for the world. And the key is incentivizing bottom up communication networks  that can help both off-grid communities and add resiliency for central communication protocols, including Bitcoin.

And we're looking for help. So if you want to help us test these tools in different environments, if you're a protocol specialist and you want to help us design more efficient extensions to the Bitcoin protocol, or if you're an open source software developer and want to help us make this a reality, please get in touch.

I would love to work with you. And have a happy Halvening, everyone.