Epicenter - Learn about Crypto, Blockchain, Ethereum, Bitcoin and Distributed Technologies - Ryan John King: FOAM – A Geospatial Proof of Location Protocol for Blockchains and Dapps
Episode Date: April 4, 2018In just over ten years, geospatial tracking has gone from being a niche technology used by the military and outdoor enthusiasts to mass adoption, available to just about every connected device in exis...tence. GPS and other location-tracking systems not only allows us to find our way and share our location but is critical to businesses and governments. However, while GPS has become a standard thanks to its accuracy and availability, decentralized applications can’t rely on its location data as it can be easily spoofed and lacks reliability. We’re joined by Ryan John King, CEO of FOAM, a blockchain protocol which aims to offer secure location services independent of external centralized sources such as GPS. FOAM introduces a novel crypto-spacial coordinate system that is better suited to blockchains than standard addresses or latitude and longitude coordinates. It also provides a Proof of Location Protocol, which leverages long-range low-power radio networks, and incentive mechanisms, allowing network participants to arrive at consensus on whether an event or agent is verifiably at a particular point in time and space. Topics covered in this episode: Ryan’s background and how he became involved in the space How geospatial tracking works and the pitfalls of GPS The vision for FOAM and the problem it is trying to solve The proposed Crypto-Spatial Coordinate Standard FOAM’s Spacial Index fullstack visualizer The Proof of Location Protocol proposed by FOAM Low-power radio networks and their role in the system The civil and business applications for FOAM Episode links: FOAM Website FOAM Blog This episode is hosted by Meher Roy and Sébastien Couture. Show notes and listening options: epicenter.tv/229
Transcript
Discussion (0)
This is Epicenter, episode 229 with guest Ryan John King.
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 Sebastian Kuitu.
And I'm Meher Roy.
Today we'll be talking about the intersection of geospatial data and blockchain technology.
In many cases you might have come across applications where it is important for some party to prove where they are on earth basically in order to get something.
And we have a unique project which is called foam that is developing technology around proof of location, allowing devices, machines,
containers to prove that they are at a particular point in space and time.
So we are talking to Ryan John King, who is the co-founder of the Foam Protocol.
Ryan, welcome to the show.
All right.
Thank you so much for having me.
Really excited to be discussing Foam.
Cool.
So Foam is, I think, one of the first projects that is working on this intersection of geospatial data and the
blockchain.
And we are wondering, like, how you came to work at this.
intersection and what is your background that led you to it?
Yeah, so we started working on foam about three years ago in the beginning of 2015,
really beginning this investigation of how can you think or reason about space on the blockchain.
Our first project was actually called Foam Space, which was sponsored by the new museum here in New York City,
where we built a physical installation of the blockchain made out of geophone blocks in the streets
and airdrop tokens to everyone who came actually on counterparty at the time gave out foam
spacecoins to try to capture the value of this temporary event.
It was an architecture installation.
And then we sold the blocks on a block sale and had this kind of fund to back this token.
And we wanted to move the value of space to another location.
We made some more investigative installations such as the tropical mining station,
which is recreated at the last ethereal.
And we kept going from there and eventually realized for many of these visionary ideas
about location, space and blockchain and decentralized organizations around
programmable space, we actually needed a way.
to prove where you are if it's going to be happening in an autonomous way, which led us to
proof of location.
There's been a lot of talk about proof of location and specifically sort of the intersection of
IoT and the blockchain.
And in my experience, and so what I've seen in sort of the circles that I sort of run with,
It's been mostly about trying to keep IoT devices that are out in the field secure so that one can trust the data that is coming from those devices.
In this case, we're trying to prove the location of a device.
What are some of the challenges there that we see that are unique to this specific use case?
Yes, I know a lot of the attention has been on secure kind of enclave computing for IoT devices.
And IOT data markets have been a popular kind of medium of exchange token, but we haven't really seen addressability of proof of origin or, you know, data provenance.
And that's a difficult problem because most ways that systems localize themselves securely is either based on some central authority or something like GPS.
The challenges with relying on that in the blockchain or smart contract context is there's no way to speak back to the GPS to produce some sort of digital certificate or authentication about the message.
So for people receiving this data from the IoT device, there's not a way to kind of challenge or check if the location data actually came from where it said it did.
So the fundamental problem here is, so when I'm, let's say, let's say I'm playing Pokemon Go.
Right. And if I reach a particular spatial coordinate, I'm going to be rewarded these collectible items.
Right. You can think of them as crypto kitties.
Yeah, exactly.
So we can have a future version of crypto kitties where.
If I am at a particular point in space at a certain time, I'll get a Crypto Kitty and it's going to be valuable.
Let's say it's, I don't know, going to be worth one ether.
Then I need a way to prove that I was in that space at that point in time to a smart contract so that that smart contract could then give me the Crypto Kitty.
So you are developing the fundamental protocols that would allow an interaction like that.
Yeah, exactly.
And with Pokemon, there was no real money at stake
and people went out of their way to lie about their location
and spoof their GPS.
So you can imagine in any sort of situation
where whether it's mobility or supply chain
origin of things,
if there's an actual value at stake,
people would be quite incentivized to lie about their location.
Yeah.
It's really me proving to a smart contract
that I was at a particular point in space and time
and getting something in value from that smart contract
in exchange for that point.
Exactly, but this is also in a privacy preserving way.
So you as the customer, the location customer, have agency over when you want to produce what we call a presence claim,
and you can keep this as a privacy preserving log in case wants to challenge you,
or in the case where you're playing a game like a CryptoKiddy Pokemon Go,
you would need to present it to the app then to unlock whatever the logic of the app you're interacting with is.
Okay.
So let's first dig into why GPS itself would not.
suffice for this application, right?
So, like, before we dig into that question,
tell us how GPS works.
How do I, how do I magically know where I am on Earth using GPS?
Yeah, and most people don't actually necessarily dig too deep into that
because it works so well.
It's extremely reliable and so much infrastructure uses GPS.
So GPS is launched and controlled by the United States government.
It's around maybe 30 satellites always orbiting overhead.
and all these satellites share synchronized atomic clocks.
They synchronize with base stations,
and they simply just send out messages about what time it is
and who they are.
And through kind of physics,
if you have synchronized clocks and radio signals,
you as the receiver can calculate time of flight
or time difference of arrival,
and through distance learn something about location.
So synchronized time and location are really intertwined.
So you're just an iPhone if it can pick up at least four PPS signals,
so you need one for Xx.
XYZ and a fourth four time.
Then you can localize yourself.
And that's kind of how GPS works today.
So the assumption is like there are four satellites.
So when I basically switch on Google Maps and it shows my locations,
essentially like my mobile is connecting to four satellites.
And then all of these four satellites run a very precise clock and they are all synchronized with each other.
Yep.
They're synchronized via base station.
running the most precise clock, which is an atomic clock. And your device doesn't speak back to it,
but it can simply receive at least four signals. It could try, angulate itself and localize your
receiver. So, okay, so when I connect to one of these satellites, what I receive is a message.
And in that message, there is some kind of timestamp from that satellite. So that time,
says that, okay, I sent the satellite says, I sent this message at this particular time.
And does it also send the location of that satellite itself?
No, simply the time so that they're always moving around overhead, but at that exact moment, you can get four and kind of localize your receiver.
And just with those four messages with four times, I can locate where I am on Earth.
Yes, but sometimes it takes up to a minute, and especially then in the context of IoT, it's extremely battery draining to rely on GPS to localize yourself.
And due to other kind of limitations, sometimes you don't have four overhead, it takes a long time to figure out where you are.
And other times you have more than four overhead.
It's just the minimum of four.
So wouldn't I also need to understand sort of my position
in relation to these different GPS satellites
as well as the time?
Wouldn't I need to sort of know the time it took
for that message to come from the satellite
to reach my phone?
Exactly.
So that's why you have these four.
And because all four are in sync,
your receiver can calculate the time of flight it took
for each four to get to you.
and with this minimum of four, you can then position yourself.
But if I'm not also synchronized using atomic clocks, how can...
Your phone does not synchronize with GPS or speak back to it.
It's simply a receiver that can receive GPS radios and calculate the time of flight between four different messages.
So when you open your iPhone, your iPhone's localizing yourself.
It's just simply receiving the GPS messages, but it can't speak back to the GPS.
Okay, I understand. Okay.
So I was in the impression that there was a bylaw, like a back and forth communication between the device and the GPS.
When in fact, it's just receiving timestamps and making it's just receiving.
And then that's why there is no proof of origin or authentication.
So if you open your Apple iTunes store, there's plenty of GPS spoofer apps.
So, you know, I can send Sebastian a dropped pin on I message telling you that I'm in California with no problem.
It's trivial to do.
And you have no way to verify if that drop pin actually is a real GPS dropped pin or ID.
just placed it there.
Of course, I understand.
Okay.
However, I mean, we could, let's imagine like a, I just thought, let's imagine like an augmented
GPS system, a more secured GPS system.
Could the GPS satellites themselves sign the message, sign the timestamp with a key,
sort of maybe like a U.S. government key?
And so if you trust the U.S. government, then you would presumably trust these coordinates.
Yeah, technically that's possible. I mean, GPS right now is currently outdated and not even
capable to defend itself against basic cyber security threats. GPS3 has been delayed year after
year. I think it's now scheduled for 2022, and it doesn't have this encryption. So civil
GPS is not encrypted and it won't have this feature. The Galileo system in Europe, which is their
global positioning satellite system, are considering this message back to it. But beyond that,
you know, GPS doesn't work indoors.
It has a lot of difficulties in cities.
So you could use proof of location with satellites as an element.
But I think GPS itself, these are billions and billions of dollars systems that are slow moving.
And I don't see them being a solution for smart contracts in the near future.
Absolutely.
I totally agree with so the legacy technology aspect that doesn't really necessarily speak well to
newer technologies such as smart contracts.
Now with the sort of ubiquitous
proliferation of GPS chips
costing under $5
and just about any connected device that we have
and that we own,
can we assume that
GPS is here to stay
or do you think that it can be disrupted by something
else?
So how do you think one can come to perhaps disrupt GPS?
Well, I think GPS is here to stay and definitely helpful in navigation.
I think if you look to the news today, there's increasing concern that there's an over-reliance on it as a one central entity.
That's why you see other nations trying to launch their own satellite systems.
I think being able to offer proof of location is a real disruptor to GPS.
And because so many industries rely on it, and it's not even encrypted, once those industries start to adopt,
blockchain technology, they're going to realize they need a secure location verification solution.
And once those kind of economies of scale start to kick in with this need, that's when we may
see a shift of, you know, where we rely on for secure location.
In some senses, I guess like when the GPS system was built, the fundamental assumption was
the system, a system is needed in order that devices and humans can try.
triangulate their location on earth.
Whereas the fundamental thing,
foam is saying is in addition to triangulating
where I am on earth,
I also need to be able to prove
that I was at that place on earth
and other people need to be able to verify it.
And this necessarily
creates a requirement for interactivity
between the device
that is at the particular point in space and time
and the satellites that are actually sending these synchronized signals.
So there has to be some back and forth communication between these in order to...
A handshake, basically.
Like some sort of cryptographic handshake and exchange of signatures.
And that is what requires a protocol.
And this kind of protocol, interactivity protocol doesn't exist today,
and this is what foam is attempting to build.
Yeah, and to that, you know, there are many alternative ways to localize yourself than GPS based on IoT kind of beacons and different kind of protocols.
So there are ways in systems that do localization without GPS.
So the technology exists today and we're really trying to innovate in bringing the incentive model to have people offer alternative location services and be incentivized to do so.
Okay, so what are these technologies for location without GPS?
Give us a survey of the landscape?
Yeah, I think that there are plenty different of wireless sensor networks that use different sort of localization techniques.
So one way your phone determines your location is also through the position of cell towers and cell signals.
And you can also in any sort of IoT network that can communicate, do localization as well.
The fundamental thing is it's always the same logic of some element of synchronized clocks.
Some systems have only one base station that is synchronized.
and others aren't, but it always boils down to some sort of triangulation and its subcategories
of tri-lateration or multilateration.
One of the most exciting, though, new developments is a radio class called low-power, wide-area
networks, and these are designed to be for IoT devices that can last, you know, 10 years
and broadcast of the long range, like 15 kilometers or so.
And there are many different variants, and with those systems, you can do alternative localization.
So that's kind of where our interests lie.
Okay, so these are low power wide area network devices.
And is it correct to say that you're building some kind of protocol that would incentivize the deployment of such devices
so that users of your system could prove their location through an interactive protocol between their device and these other devices?
Yeah, so the foam proof of location protocol is based on a time synchronization protocol,
specifically a Byzantine fault-tolerant time synchronization protocol.
So if you have a distribution of beacons that are running this protocol over radio,
they can basically synchronize their clocks with themselves
and basically maintain a quorum on space and time.
And through that system, they can determine the geometry of their own network
without an external input like GPS.
So we're designing this radio protocol as well as a consensus with state machine
so they can store information about that.
So that's really the how you figure out location aspect of the protocol.
But then yes, more broadly where we have more crypto economics is to actually incentivize people
to actually offer these services and operate these nodes and run what we call zones of coverage.
So let's just walk through a thought experiment, right?
So imagine the three of us are beacons essentially.
So we are these low power IoT devices that can communicate over radio with.
each other and we have we ultimately want to synchronize on our clocks and we are let's say
very close to each other so we are at in the same one kilometer square area and imagine three of us
as devices and maybe there are more of more devices in that same kilometer square so they might be
actually six or seven so until now nothing has happened and now what we must do is all of these
devices must communicate over radio and synchronize their clocks.
And they use some kind of, is it correct to say they use a blockchain in order to synchronize
their clocks?
So the time synchronization happens purely over radio.
And this is like a self-stabilizing fault-tolerant protocol.
But what they do use a blockchain for is actually sharing the state machine.
So each beacon and zone anchor, what we call them, has to have a shared state machine.
And that shared state machine is basically a blockchain.
running tendermint consensus.
But in the broader kind of phone protocol,
how do those validators ever end up becoming a zone?
They actually have to pass through a higher order blockchain
and make different bonds and offer basically service level agreements
that they're going to be offering synchronized time services
and they're not going to be faulty.
So in other words, like, if it's like one kilometer square
and like the three of us are beacons,
we have a shared blockchain.
So we have some sort of protocol that is not related to the blockchain at all
that synchronizes our clocks.
So we communicate over our radio and as long as a majority of us are honest,
we'll get synchronized.
There's already a protocol unrelated to Byzantine fault tolerance that does this.
Now, okay, so once our clocks are synchronized,
then we will also set up our own internal blockchain for this piece,
for this one kilometer square piece of land, is that correct?
Yes, in that's the example.
Yeah.
And so each time you would need to come to a round,
the people would basically vote on,
have we actually been in sync?
And they would basically store that state
with all the corresponding timestamp data from that round.
Now, just saying on this example,
I have a bit of a question here.
Let's assume once again, there's three of us.
And we're able to synchronize our,
clocks and sort of be aware of each of our positions sort of spatially so that like I know
that you guys are positioned at certain distances for me. So we have we have sort of relative
context of our locations. But how can we prove to someone else that we're in fact situated,
say, for instance, in a one square kilometer zone in Paris and not in a one square kilometer
zone in Mozambique. Where do we bootstrap the sort of initial location and what authority says
that you're actually at these coordinates and not somewhere else? Yeah, great question. So the
time sync protocol and each zone, they determine their location relative to each other. So it's not
about absolute position. So that the protocol works in geometric space. So it could, you know,
essentially run in a different planet, it's agnostic to absolute positions.
To just back up a bit, because there are other elements to foam we didn't get touch on,
we have kind of location encoding standard called the cryptospatial coordinate and a visualizer tool
I called the spatial index. So if you're using those in this case, if I'm a zone, I'm putting down
a collateral bond that I want to open a zone, and then I do in fact open my zone, and I'm running
this time sync protocol. The first thing is that that protocol is going to be checked by a verifier,
who's going to check this data and say, is the zone actually in sync or not?
And if it's not, I'm going to be punished and lose my bond.
So I always have to be in sync to be a valid zone.
So, yeah, the question is I could open a zone and claim it's in Paris,
but actually open it in Alaska.
And maybe at first, you know, I've just checked that I am in sync,
so I'm not getting punished.
But if I'm not where I said I am,
I'm going to have trouble getting location customers,
which are all the use cases and applications who want to pay me to sign their requests.
And then further, because I'm not where I actually said I was,
anyone can figure that out by going where they thought I was,
opening their device.
They don't have to pay me.
If they can't pick up my signals, I'm not where I am.
So I'm subject to a challenge.
If another zone joins and powers wants to get in touch with me and they can't talk to me,
well, then again, I'm subject to a challenge,
and I'm at risk of losing my bond.
We probably see more on a higher level kind of social protocol
where people will curate absolute positions and, you know, test them.
but the protocol itself is just about the nodes in a zone being able to determine their relative geometry.
Okay. And in that case then, presumably one would get finer position data with more nodes and more beacons being challenged on their absolute locations?
Yeah, or just in general, more nodes in the zone do lead to them.
more accuracy and precision.
So you want to kind of have this robust coverage.
And if you have these overlapping zones,
and one of them is actually not there,
well, if the other people can't talk to it,
they'll be found out.
So in order for this system to be useful,
what you essentially want is to fill the earth
with these low-powered devices.
For each kilometer square on Earth,
you might need like four or five devices.
So, you know, that's going to be,
like billions of devices.
Yeah, and so that's kind of where our kind of economic incentives come in,
where we want to use a token to coordinate people opening these zones.
And so we have a rewards mechanism where if you are actually proving you're in sync as a zone
and you're not being punished, you're actually eligible for provisions, a minting of new tokens.
So these zones are kind of mining triangulations.
And in our system, you know, if you know the supply of law Bitcoin,
you could easily reason about what year it is
because it's exclusively issued over time
where we actually want a foam token
to be issued over space in that
the mining reward will be higher in an area
where there aren't zones yet
to try to incentivize people
to keep expanding the network.
Wow, that's a lot of objectives
for an incentivization mechanic.
So A, you want to incentivize people
to create zones and have these low power devices
in those zones.
So if I'm like the first device in a particular area,
like I go and create the zone.
So there has to be incentive for me to start the zone.
And if you're the first one,
you're eligible for mining new tokens,
even if you have no customers paying fees.
Okay.
And then like,
okay,
so I am the only device in that zone.
There has to be incentive for other devices
to join the zone because the more the number of devices,
the better the triangulation inside that zone.
Right.
Now on top of that,
you want the ability to incentivize.
So when I'm trying,
when I'm creating the new zone,
you want me to create the new zone farther away from other zones.
Like in a unique,
in a unique geographical location that is not served by other zones.
Right.
And the fourth thing you want to incentivize is
if me and the other devices in this particular zone
are basically lying about where we actually are,
then you need a mechanism to detect that and punish us.
Yes.
And so this is the sort of economic incentive problem that you have solved using smart contracts on Ethereum?
Is that right?
Well, attempting to solve.
Yeah, but that's kind of the logic behind it, that you have this economic incentives to operate zones,
offer secure location services with a service level agreement.
And basically, you would want to add more nodes to a zone to make it.
more robust and precise, and hopefully you have a lot of location customers, whether they're
cars or drones or people paying you to sign their location claims.
But we see that at a kind of threshold where the more nodes that join is almost like the difficulty
is rising.
So the block reward is shrinking for you as a self there, even if there's lucrative fee market.
So there could be an incentive if you had enough money to purchase many hundreds of beacons.
You might be more profitable to actually put them in different cities than put them all
in the same place.
And so that kind of incentive is that we actually want more zones to appear even
prior to the fee markets being there just simply by having this mining incentive.
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.io, 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 has 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 Shapeshift is.
So to get started, visit Shapeshift.io and start trading.
And we'd like to thank Shapeshift for their supportive Epicenter.
So let's talk about these low power beacons.
So there are lots of different technologies and standards trying to, well, I guess sort of competing to become the standard.
So there's Sig Fox.
And Sig Fox is a proprietary solution actually based here in France.
And then there's this consortium, I guess, is sort of an alliance.
called Laura, L-O-R-A, and then there are some others.
Foam is agnostic to these protocols,
but you are working, I guess, with Laura, at least in the beginning,
because it's an open-source protocol.
Could you tell us about Laura sort of what is it and how available is it today
in terms of network coverage or even, you know,
the ability for someone to sort of set up.
a Laura Beacon?
So, yeah, the time synchronization protocol and the token economics are fundamentally agnostic
to what radio the zone is running.
And like I mentioned earlier, the zone can be only as accurate as good as the radios and clocks
are in the zone.
So we're most excited, interested in this new category of low power wide area radio networks
that are quite new and designed for IoT devices for long-range low power.
There are a number of options, like you mentioned, Laura and Sigfox, some others.
like NB-I-O-T.
Laura is the only one that you don't have to pay royalty or service fee to deploy.
So just like a blockchain, it's permissionless to launch a Laura network.
So that's kind of what brought us to that.
Laura itself is a chip spread spectrum chirping chip.
It's quite small, like the size of a fingernail and can be really cheap as well, like $10.
And so yeah, there is a consortium called the Laura Alliance with companies like Cisco
in Bosch, but they're actually simply.
centered around Mac freeware above the LOR chip.
We're actually interested in just the radio frequency chip itself.
But this chip is quite popular.
There is an organization called the Things Network where you can see a map where they are
deployed by people who are hobbyists wanting to offer free IoT data.
Zurich has over 100.
The Netherlands has private deployments.
So the Netherlands as a country has 100% coverage.
So you can actually see it's quite exciting.
There are a lot of different hobbyists running these LORA networks and
Those people are now finding out about foam and kind of want to be the first miner.
So there's already a potential ecosystem of hardware owners.
So when you say those private networks, you mean like telcos are deploying these networks so that
people can connect devices?
Cap construction company.
I want to pay some service provider to run a Laura network for me.
And I want to be able to track my construction assets in real time at a giant construction
site or for some other aspects.
So there are companies that basically run the nodes themselves.
and offer coverage in companies like the Netherlands.
Other countries, including Netherlands, have just hobbyists also offering free network coverage.
So, yeah, there is actually...
And the other thing to mention is Laura operates in the ISM band,
so you don't need a kind of license to deploy it either
in terms of where it lies in the radio spectrum.
Okay.
And so these are...
These devices have reached that goes up to, I guess, like 10 or 15 kilometers.
what do you foresee then for, say, geolocating ships out at sea?
Are there other bands or other radio devices that you could utilize
so that the network could have coverage globally?
Yeah, that's what I meant by the time sync is agnostic,
where you could have some sort of low orbit satellites that serve the middle of the ocean
and also still use the same kind of protocol,
all the same kind of punishments and incentives,
but specialized for that kind of use case.
Each zone itself could be a private deployment
or a proof of authority zone, but still rely
on this global rule set if you didn't trust everyone.
So we really built the incentives and the radio
stuff to be as agnostic as possible to expand to these use cases.
But we don't think when foam starts,
there will be a high demand for location services
in the middle of the ocean.
But once that kind of comes, the incentives
will be there to serve that market.
So here's the imagination I'm having like, now that I understand form a little bit more.
So if you think about Bitcoin, you're familiar with the idea of the decentralized autonomous organization, right?
So the idea is, okay, here's a piece of code which just has incentives.
It just says with Bitcoin what somebody will get once they solve a particular mathematical problem.
But by just encoding these incentives correctly, it triggers a lot of people to build miners.
And these miners then coordinate together and they maintain the blockchain.
And these miners then collectively serve two kinds of users, those seeking a store of value.
seeking to transfer monetary value across the world.
And the miners make money by getting the block rewards of Bitcoin
and collecting some of the transaction fees.
So Bitcoin is like a decentralized autonomous organization
because the code is sort of the center.
So in some ways, what form is is also a decentralized autonomous organization.
And there is a set of incentives or code in the center.
And then you can think of these low-powered devices as sort of the actuators or the miners of this foam network.
They are the devices that are actually performing the work.
And what you're trying to do is you're trying to create a set of incentives in a way that as many devices as possible join to this network, just as Bitcoin minus proliferated.
you want a proliferation of these devices across different parts of the world.
And these devices will earn foam tokens for creating new hubs.
And when a particular part of Earth, like once a hub is created in a particular part of Earth,
they can also create this proof of location proofs for any customer.
customers inside there and they can earn sort of transaction fees.
Yeah, they could white list what they would want to accept as fees.
And so the end user doesn't necessarily have to own FOMM token.
It's primarily to commit work to the network for these zone operators and the verifiers.
But yeah, that's kind of how we see FOMM is this protocol where anyone can become a location
service provider and have the incentive to purchase the hardware and offer those services.
they could then earn new tokens and serve customers as well.
So I think it's a great analogy.
Yeah, this is a massive vision, right?
I'm really curious how your incentivization scheme works.
Tell us a bit about it.
And maybe one way to do it would be, like, what is the business case for me,
if I want to put one of these low power radio devices on?
What does the business case look like?
Yeah, so I think that to build up this ecosystem of zone operators and for it to mature, it's going to take some time.
And the market also needs to come and be made for these smart contracts that need location services.
So the early kind of minor, so to speak, may not be getting a lot of transaction fees,
but you'll be able to, you know, gain a bigger stake in the foam network by owning foam tokens to start.
And so we have this kind of other element called signaling.
We see it as kind of a single purpose prediction market for basically locking tokens up in a location on our visual app of where you want mining to occur.
And the mining reward is then spatially weighted based on those signals.
So even now, which is why are we having token distribution in the near future, is because no matter how much money or time we had,
as the founders, could never test this protocol and build it in all these kind of locations.
and stuff. So we see the token mechanism being a coordination tool to allow people to signal
where mining should be, where test net should go, and ultimately where the largest rewards
will be when the mining begins. Okay. So this is a NERC20 token on Ethereum?
Yep. And ultimately it would be bonded to be granted access as a validator in some sort of
child chain, which would be the state machine of the local zone. Okay. Can you explain this technical
architecture. So you mentioned earlier Tenderman, so there would be a separate chain through which you
would be staking these ERC20 tokens? Yeah, I mean, you can think of it as like, or as we are
thinking about it now as a simple plasma construction where you can always exit to some root chain,
but you have to bond to get access to become a validator in this proof of authority chain.
In our case, that chain would be running Tenderman, and because the way Tenderment works, you have
the consensus for the state machine on one side. On the other side, you have this ABCI application.
In our case, that application is the radio time sync protocol. So these devices need to put up
collateral to be a part of the zone. And once they're accepted in the zone, they're running this
thing over radio and just storing their data logs in the state machine. And then we have
this third element, which is a verifier, which can read the block data of that state machine and
actually run the triangulation computations and go back to this parent chain and say that zone is
in fact, in sync, you can distribute the reward.
Okay.
Can you explain how one can use ERC 20 tokens and stake them in another chain, like a separate
tenement proof of authority chain?
Yeah, I mean, when these contracts are launched, for you to be able to run the protocol
validly as a zone, that zone would need to be checking the parent chain and say, hey, has
this person who's trying to form a zone or become part of my zone, have they made their
identity known? Have they put up the collateral and locked it saying that they're, you know,
promising to follow the rules of the protocol? Like, can I actually trust them to join my zone
as a validator? And so if the existing zone or can look to that parent chain for that information,
then they would basically accept the radio messages from this new beacon who's trying to join them.
And you would accept them because they've put up this collateral on this parent chain that is subject to be
slashed if they became a malicious actor.
But what technology are you using in order to do this sort of this, this, this, this parent
child chain?
I mean, right now we're thinking of it as like a plasma construction where it's just simply
a tenderment child chain, but I mean, ultimately you could imagine foam zones are
actually themselves cosmos zones.
Okay, I understand.
And why did you choose to do an ERC 20 token and not say just like launch?
I mean, because if you're going to have this chain, any,
anyway, why not just launch a new blockchain with a token?
Yeah, I mean, it's each not going to be a monolithic chain, these kind of asynchronous zones
that will, you know, grow and shrink over time.
They could have all different lifespans.
So we kind of have this like one, you know, parent chain that can store the, you know,
block headers or micro roots of every subchain that ever existed or died and be backed by kind
of the global security that Ethereum can offer.
And we also see a lot of other aspects to the foam protocol and spatial tools that we're
building could also be utilized by other Ethereum applications.
So for now, we see this parent chain being, Ethereum being a great case for that.
It's not a reservation.
My competitive question regarding this network is going to be that today we have this GPS
system, which is like 30 satellites.
And this is really provided as a public good, right?
I don't pay anything to triangulate my coordinates on Earth.
I accept the critique that in this system I'm not able to prove my location to other parties.
But in theory, maybe the GPS system could be retrofitted to do that as well.
But in comparison like foam is also providing me a way to triangulate my location.
but in order for the foam network to work really well,
you need to install potentially like millions of these low-powered devices
and somebody needs to pay in order like ultimately people are paying
in order to install these devices.
So if it's like millions of devices, I don't know, $100 each.
Ultimately, this will be like billions of dollars of infrastructural cost.
And you compare that with 30 satellites that are already deployed,
probably the
infrastructure cost is paid
and this service is operated
by free by
governmental agencies
how do you compete with a competitor
that has such deep pockets
and maybe even needs
much lower infrastructure than your system does
yeah I mean
great question I think that the
amount of infrastructure
and a billion dollar cost to GPS
is actually astronomical
and it is slow moving
And so it is easy to compete with because GPS3 has been delayed now to 2022.
And the current GPS is super susceptible to cyber attack.
So it is a slow-moving system.
And because it is a horizontal protocol foam and would address so many different verticals,
it does need to actually be a large monetization-backed kind of infrastructure to be able to support
all these different verticals.
You can use it as a public good and triangulate yourself for free, just as you can.
can for GPS. Why you would want to pay is why you're paying to produce this presence claim or
digital authenticate about yourself, which most likely could be very cheap. But because it happens
over radio, if you're in a very competitive environment, let's say Times Square, New York City,
and there are Uber cars and Pokemon players and IoT devices all trying to have the zone
sign their transaction, there'll be a hard limit over radio of how many transactions they could
sign. So therefore, this fee market would emerge of how much it costs to purchase a presence claim.
And yeah, that would then basically that fee market is part of the incentive of why people would want to run zones and offer location services.
And I don't see that GPS moving that quickly to serve this kind of need or being able to penetrate indoors or underground or in highly dense areas in the way that these low area networks can do.
And they exist today.
So we really want to bring the incentives to actually have people maintain and set up those networks.
that's really interesting that okay there might be areas that GPS cannot penetrate with its satellite
architecture that you can with your low power architecture and maybe those areas indoor areas
will form like the first niche that you can occupy really well yeah potentially like large indoor
areas such as malls which you know those are they use kind of a mashup of different techniques
for those situations of Bluetooth and Wi-Fi and other signals of opportunity,
which is great and still,
but because it's such a mash-up when it comes to a blockchain,
that's very difficult to verify.
Yeah.
So I'd like to get a sense of what you feel are the competitive dynamics of this market.
Like here's what I mean when I say that.
So, you know, like Bitcoin, an incentive mechanism that creates this digital gold kind of current.
right? Obviously
once a network like that
succeeds, other people want to create their own
network with their own tokens and now
fast forward in 2018 we have
a thousand of them
but even though we have a thousand of them
Bitcoin the network still has advantages
right? The nature of proof of work is such
that if I'm a new miner
I want to
earn Bitcoin rather than
some other coin
and like money has this network effect
that if I'm a user of Bitcoin
and there are many users of Bitcoin
for the N plus one-eth user
they want to be a user of Bitcoin
not a smaller coin
with a much smaller network effect
right so ultimately what that leads to
is sort of one network
has like
there's this power law
effects in in currencies
like Bitcoin is a massive network
Ethereum is a smaller
network and then maybe the after after you see like the 10th currency or the 15th currency will
be very tiny compared to that of Bitcoin.
Now I presume like let's say form were to be successful.
Then you will have competitors in the future that would want to launch their own geospatial
location network.
Right.
So you have the foam token.
Okay.
I want to launch I don't know the cheese token and I also offer these geospatial services.
then somebody else wants to launch the champagne token to do exactly the same.
If I'm a new network, if I'm a new geospatial network and you're the older one,
and you have, let's say, 100,000 devices running,
what competitive advantage does the older network have over the newer network?
Is this a winner-take-all market?
Yeah, FOM is a winner-take-all market in the sense that this is a fundamental infrastructure
for horizontal verticals, everywhere from mobility, autonomous cars,
And if you know, we're up there first with this infrastructure running, it's an open protocol that anyone can run and there's no fees going to a central service.
So the people who create the protocol and generate the value and secure it have the most incentive to maintain it and properly upgrade it and keep it running.
And we don't really see that it would make sense for someone to create a competitor when instead there's so much opportunity to build lucrative applications with this infrastructure.
So if there are like two networks, like there's the foam network and this cheese network,
the cheese network is much smaller, the foam network is much bigger.
So if I come with my own low power device, I have the option of joining either the foam or the cheese network.
Couldn't you do both?
I mean, what would just stop you from joining both networks using the same Laura device to join both networks?
Well, I think that the device can only send one message at a time, and if you have to be running this timestink protocol, you're either going to be syncing with one network or the other.
Of course, the operator could split their, or not split, but buy another radio, because they're not that expensive relative to, you know, it's not equivalent to say, like, oh, I won't split my hash power if I mind to fork chains because, you know, the hash power is really valuable.
We're here.
It's actually very low power and low computational costs.
So in that case, sure, you could be running two different services altogether,
but ultimately one, I will have the most security with the most value backing it
and, you know, the highest block reward.
So in the same way that, sure, you could have overlayered different signals of opportunity
that also work with blockchain.
Whatever was there first, as this winner take all,
we'll probably have most of the market share.
So if I have a low power device, I want to be part of that network,
which will presumably have the most customers seeking a proof of presence claim.
So it's a network effect like you have customers seeking proof of presence claims and devices.
The customers want to accrue to that network which has the most devices.
The devices want to go to that network which has the most customers.
So the dominant network basically locks this two-sided network effect between the customers and the devices.
And ultimately that network effects keep on deepening over time.
which gives a power law to this market as well.
So the probably the first mover has an advantage in this market.
So that is sort of the speculative value proposition of the foam token, right?
So when you are presumably when an investor is buying the form token,
they are essentially speculating on this two-sided network effect.
We don't really see it as speculating, but the people purchasing the token will be purchasing it to provide work to the network, not to speculate.
So they'll be buying it for whatever fair market price it has, and the utility it'll have on the main net.
The utility it'll have initially is the signaling aspect.
So we want people first to be able to coordinate on how we can set up the test nets to ultimately test this,
as well as other ways to coordinate around geospatial information on the blockchain with some of the other elements we're building,
such as the spatial index visualizer and the cryptospatial coordinate.
So we see this token as something that is not really for speculative value,
but it's something that's needed to actually provide work to this network
and help build this consensus-driven map of the world of secure location.
Cool.
So what are your sort of plans around the token?
Is it already released or will it be released in the future?
Yeah, we're planning a token sale in the near future.
for purchasers who want to participate in this network and not speculate, but actually help build the network and provide work.
And with that, we've partnered with the Brooklyn Project, which is an initiative formed by consensus,
about really finding a new way to do token sales that are not about distributing to speculators,
but those who are going to help build this network.
So we're hoping to have more information about that in the next few weeks to announce publicly.
So let's talk about the applications then.
So obviously, as we mentioned earlier, there seems to be a lot of applications and use cases that could benefit from having a secured proven location.
You know, one thinks of use cases in the supply chain space and sort of provisioning of deliveries, right?
proving that you were at a certain place at a certain time, proving an insurance that you
were also at a certain place at a certain time. So can you perhaps talk about some of the use
cases that you might be working with with initial clients? Yeah, so I guess initially we have
both a bottom up and a top-down approach. And by that, I mean specific DAPs and teams that are
interested in using FOMES tools and on the kind of enterprise level. An enterprise level,
We're part of something called the trusted IoT Alliance, which is a consortium of companies,
both DAP-based and blockchain like Cisco or Bosch.
And so there, you know, the question is about data provenance,
and we're working there on how to bring those standards.
Also a new consortium called Moby, which is a mobility, kind of started by Toyota Research Institute,
where they are interested in this, you know, across different owners of fleets of autonomous cars,
can they still have this immutable record about where all the cars have been in a shared way?
On the more bottom-up side, we've integrated with Uport for self-sovereign identity to bring in location.
Right now, with it, you can sign and launch basically entities on our spatial index web app and sign it securely with Uport.
And you can imagine, you know, in the future, bringing things like geo-fencing for voting or other aspects like that on the DAP side.
So we just see this as being like a tool that applies to so many things.
And you can really easily say one-to-one, okay, what works today with location, if it's on the blockchain, why it might be.
need location but we're kind of most excited about what the users and designers are
going to build with these tools and see things that we haven't actually seen
before as a developer can I use this like where is the network live or
there tools that I can use to start we just launched a developer portal so you can go
to developer.foam. space where we have an API for our spatial index the
spatial index is a full-stack web app that's a blockchain visualizer for
what we call cryptospatial coordinates, which is a smart contract that would use our location
encoding standard. And so we have API documentation, tutorials, example applications, such as
like a parking meter DAW. And so yeah, you can get started building with this today.
We currently have a beta running of the spatial index on beta.foam.d. space,
you have 600 people testing it. It's on Rinkeby at the moment. And you can deploy
beacons with Metamask or Uport and interact with the map. We see it as kind of a mashup
between a Bloomberg terminal and a Google Maps.
But it's a general purpose of visualizer.
So yeah, you can go to our developer portal,
use the API, and build any sort of custom data
with spatial tools.
And I guess I want to draw the distinction
between like soft proof of location and hard.
We spent most of the shows speaking about this hard proof
of location with devices and this fraud proofness.
But the tools we're launching with are more on kind of,
you know, registries around points of interest
and all these different libraries we've built.
We have a PureScript Web 3 library.
PureScript's a functional programming language.
which kind of is the wrapper for this React web app of the spatial index, the back end.
We've the largest contributor to the Haskell Web3 library, so that's built in Haskell with a Kubernetes cluster.
We have different kind of libraries we've opened for these spatial tools.
So people can start to do the soft proof of, you know, curating information,
making different spatial applications today and now on the test net.
And eventually, yeah, we'll have this harder proof of location and launch the specifications for how to join the test net of zones.
So touching again on this functional.
programming language. It's called PureScript.
PureScript. Yeah. Can you talk more?
Yeah, so it's a strongly typed functional programming language. It's very much based on Haskell,
but it compiles to JavaScript. So it's for front-end applications. So we built a PureScript Web3
library. So the spatial index is a React web app with WebGL. So we're using Mapbox
GL and DeckGL, which is a big data tool by Uber. But it all actually is compiled in
PureScript and you can push information into the web app to the blockchain. And the back end is
a Haskell Indexer and Restful API that can pick up that information and feed it to the front end.
So if you're in the web app and many people are using that app, you're going to be getting all this
information populated spatially that's actually people using the blockchain and transactions being
visualized. So just to understand PureScript, it's a Haskell-based language. So a strongly type
functional language that compiles to JavaScript?
Yeah, so basically you're...
So it spits out JavaScript.
Yeah, but the JavaScript is like strongly typed and beautiful with no errors.
Really? So interesting. I guess my question is why wouldn't just, why wouldn't everybody use
this? That's just for any web development, any web app. It's quite new and we launched a
PureScript Web3 library, so we hope people will use it. I should mention my co-founder.
and CTO Christopher, he originally wrote or worked on the Haskell Ethereum Library, and we are a full
team of functional programmers building our stack in Haskell and PureScript. I think our team is one of
the largest contributors to PureScript, and we're hosting a workshop in May with the founder of the
language. It's quite new and niche, but we're hoping to bring it to the Ethereum community. You can
look our blog about why we're used it and check out our libraries.
Right. This is the first time I hear about this. So it.
Essentially what you're saying is you can write code in a strongly type functional language
and then and compile to say like C++ or JavaScript or whatever language you like
and it'll have the same security properties as the native language or are there.
Yeah, I believe pure script only compiles to JavaScript.
but yeah, that's the idea is that you have this basically equivalence
where it's as if your JavaScript was a functional programming language.
Interesting.
I'd love to talk to Greg Meredith about this and see,
get his impressions about this,
because I know he works with these types of languages.
Okay, great.
Maybe before we wrap up,
I mean, there seems to be perhaps also some use cases around gaming
and augmented reality.
Meher, I know that this is,
an area of interest for you.
Could you maybe talk about some of the applications that you see here?
Yeah, so I think that the most popular geolocation-based augmented reality game has been Pokemon Go.
The reason that that haven't been so many is because Google actually has an open source their API,
but they actually just have.
So we're probably going to see a big new amount of location-based games.
And in that game in particular, it's such a unique use case of people going out of their way to spoof location.
So yeah, definitely people who are starting to build with these kind of non-fungible tokens and building actual games
if they wanted to start to leverage existing developer tools such as augmented reality games and some of our libraries
that can start to build these spatial applications with AR and even now today with the software for location aspect.
But yeah, as we spoke about before, because,
as proof of location as infrastructure, so much of the requirements can be defined on the application
side. So, you know, these games can be very creative of what they would ask of their users to produce
to unlock certain items if it was a gaming kind of example. Fascinating. Well, thank you so much
for coming on the show today. It was great to hear all about foam and this really fascinating
network that you're launching is kind of one of a kind and really solves the problem of
proving location with regards to blockchains. So thanks again and look forward to hearing more
about it in the future. Cool. Thanks so much for having me. And thank you to our listeners for
once again tuning in. We release new episodes of Epicenter every week. You can subscribe to the show on
iTunes, SoundCloud. You can watch the show on YouTube or you can also get it wherever you get
your podcasts. If you like to support the show, you can leave us in iTunes review. It helps people
find the show and we're always happy to see those reviews. And if you are interested, you can join
us on Gitter and we have a channel there where listeners can talk to us and ask questions
and it's always great to see you there in a Gitter channel. Thanks so much and we look
forward to being back next week.
