foreign
[Music]
so hey I'm Kevin owaki I'm one of the
co-founders of Bitcoin and I am joined
here by my comrade Kevin Olsen and we're
going to talk about the infinite game of
civil resistance in this Workshop
this Workshop will be about 25 minutes
of me talking about the infinite game of
civil resistance and then we're going to
actually get into some code and take a
look at Bitcoin passport which is a
money Lego for building more civil
resistance from there
so find a seat and we will uh we'll get
going so again I'm playing the role of
Storyteller in this room Uh Kevin Olson
is our engineering lead at coindao and
is going to be talking about the
passport money Lego and how you can use
it to create civil resistance and we
also have an appearance by Kevin
McAllister who is another Kevin a very
Kevin heavy lineup and the tie-in with
Kevin McAllister is that he's actually
also in an infinite game between
adversaries uh robbers that are trying
to rob his house and he is trying to
prevent it so we're going to talk about
civil resistance through the allegory of
Home Alone in home alone 2. so the
agenda for this talk is why civil
resistance is an important problem to
resent to to address we're going to
characterize the Civil resistance
problem and then we're going to talk
about a civil resistance money Lego so
just very briefly civil resistance is
just basically how do you prevent sock
puppet accounts in your web3 based
system how do you create more one human
one vote based systems in the web 3. in
this room we are all physical humans and
it's pretty clear that there's one human
per chair unless we're getting weird if
the session gets packed but uh online
it's actually really hard to tell that
you've got one human window system and
that is what civil resistance is about
so maybe I'll start with a quick crowd
engagement how many people have used
Bitcoin grants
all right just a pulse check but I'm
really proud that get going grants has
supported so much public goods funding
in the ethereum ecosystem and is the
magic of quadratic funding that is how
Bitcoin grants works and the why it's
what the reason why it's so magical
we're going to do a quick quadratic
funding calculation but before I do that
I just want to say that vitalik buterin
Glenn Weil and Zoe hitzig are the ones
that actually came up with quadratic
funding and I view it as this like
perfect alien Crystal intelligence that
I just like inherited and we're the ones
who are kind of bringing it to the world
of course along with CLR fund and some
other great projects that are doing qf
so anyway the way qf works is that every
quarter on git coin there's three
million dollars worth of matching and we
distributed contemporaneously which is
just a fancy word for at the same time
as a crowdfunding campaign and with
quadratic funding if more people
contribute to your Grant then you will
get more funding from the matching pool
so in this example both grants get ten
dollars but Grant get one gets way more
of the matching pool because it has more
identities associated with it and what
what's really cool is this this gets you
off your bum in order to contribute to
public goods because now a dollar worth
of impact can have a hundred dollar a
dollar donation can be worth a hundred
dollars worth of impact or a ten dollar
donation can be worth a thousand dollars
worth of impact there was a thread
during get going Grant round 13 where a
one dollar donation to coin Center which
is a grant that which is a project that
does uh lobbying in DC a one dollar
donation to a coin Center would give a
thousand dollars worth of impact and
people thought it was a scam because the
matching multiple was so high that's how
powerful quadratic funding is and if you
look at it at a systemic level we hit
the meme number 69 million dollars worth
of funding of uh for public goods on
bitcoin if you look at a systemic level
the uh contribution graph at get coin
grants is what I'm most proud of so this
is every Edge in the network is a
transaction and every node is a user or
a grant and if you map this out you're
kind of coming up with a mesh network of
the preferences of the ethereum
community in which public goods that
they want to fund so from up and coming
projects like uniswap and urine that are
that are uh that are up and coming
projects in the ecosystem or just pure
public goods like Prismatic and
Lighthouse those are the kind of things
that have been funded on bitcoin grants
and it is the goal of Bitcoin grants to
build a channel for greater combinations
of strength and intelligence to come
together using quadratic funding to
measure the preferences of its Community
but there is a problem not everything is
great in Bitcoin land and it's the Civil
attackers so Grant number two when they
realize they're getting jipped by the
funding can just make up more identities
and then all of a sudden they get all
the matching pool and that is the Civil
resistance problem
if you're me and you're the founder of
Bitcoin then you start to realize that
Bitcoin kind of looks like a Castle in
the Sky Bitcoin depends on bitcoin
grants which depends on quadratic
funding which depends on civil
resistance and there is no good money
Lego for civil resistance so I did not
choose this problem this this problem
chose me but here we are public goods
are good and important and we are trying
to solve the Civil resistance problem at
Bitcoin but the vision is larger than
Bitcoin what if we could build a money
logo for civil resistance we could go
from plutocratic systems dominated by
tokens and capital to one human one vote
systems that are dominated by people and
I just want to camp on this point for a
little bit because if we want web3 to go
mainstream it can't just be targeted at
rich people forever it needs to be
targeted at everyday people whose
Financial lives are their jobs in their
community and not just the Investments
that they're making in the s p 500.
there you go
so one human one vote is good
um and so we've used civil resistance as
this uh this sort of prism that if we
can solve for civil resistance then not
only can we build quadratic funding we
can build quadratic voting we can build
Genie coefficient measurements basically
measurements of inequality in these
systems we can build Ubi based systems
we can do one person one vote Dallas or
better better air drops in general we
can build data collectives and uh and
build more human-centric dials from
there so that's the importance of civil
resistance why it's an important problem
to address and um I'm going to spend the
next part of The Talk characterizing The
Civil resistance game as I've seen
during the last 15 rounds at Bitcoin and
then we're going to talk a little bit
about a civil resistance money Lego
preview it's called Bitcoin passport and
it's how we're trying to at least
Advance civil resistance in the
ecosystem
so let's start by meeting our
adversaries
this is my fun this is like where I just
get to have fun during the talk script
kitties I know this guy because I used
to be one of them when I was 14 and I
would just download script off the
internet and hack into stuff and it's
just the script kidney Persona is just
kind of like someone who's copying the
scripts in the hacks that other people
are putting out there and they don't
have any real skill or ambition they're
just kind of looking for the cheapest
way to to make a buck online
one level above the script Kitty in the
level of sophistication in planning is
you got your petty criminals maybe these
people are able to run a little bit more
of a sophisticated operation they have a
little bit more Capital to dedicate to
civil attacking your system but they're
still not really producing their own
software or or ecosystem in order to do
it and I don't want to only have this
talk about civil attacks on a moral
Vector because I think there's a
rational economic reason to attack the
get-going grants matching pool and I
don't think it's wise for us as people
who are building civil resistance to
moralize this too much it could just be
a rational economic person who's kind of
struggling that wants to make a quick
buck and I think that uh that's an actor
that we have to plan for too
all right this one's just this one's
just a cheap shot
so the story behind this slide is that
there was a salon on D5 Dev that made
his protocol look more active by just
making up personas and uh these are some
of the memes that came off of Twitter
from that
organized crime so basically you got
your mafias you got your state sponsors
hacking groups these are the kind of
people who can develop zero days and can
attack not only Bitcoin grants but can
attack the entire ethereum ecosystem
when I talked to Danny Ryan and I
about the merge uh we talked a little
bit about like the software supply chain
that underpins the merge like Linux and
all the software libraries that are
underneath that the firmware uh supply
chain and organized crime is
sophisticated scary because they're
sophisticated enough to develop hacks in
zero days for your entire software
supply chain
and then above that you've got your
nation states you've got your North
koreas you've got your adversarial
cyber security sort of attackers and
these people you know like basically if
you think that all Warfare is going
online in the future then Bitcoin grants
in ethereum can just be collateral
Warfare in or collateral damage in the
nation-state a Warfare game
so those are our adversaries or at least
a good swath of those adversaries and
now that we have identified those
adversaries both in theory and on
bitcoin grants we can characterize the
Civil resistance game and the first
criteria or I guess the zeroth criteria
since we're developers here and we're
zero offsetting our our nature is an
adversarial nature there's a zero-sum
game between the Civil attackers on
bitcoin and the Civil Defenders who want
to defend the matching pool kind of like
Harrison Ford and Indiana Jones I may be
dating myself in ethereum ecosystem it's
all gen Z but for us Millennials
Harrison Ford trying to capture this
golden trophy I think was pretty cool
or I'd like to invite another Kevin to
the stage and that's Kevin McAllister
who's trying to defend his home from an
adversary that wants to get in and I
think steal his presence I'm not
actually really sure what the the
criminals in in the Home Alone were
after but uh there's some hilarious
results from that so there's an
adversary nature adversarial nature to
the Civil resistance game on bitcoin and
I want to note that not all adversaries
are motivated by the exact same thing
you've got basically varying levels of
sophistication in your adversaries and
resourcefulness of your adversaries from
script kitties up to nation states but a
various amount of a diversity of
motivations some people just want to
make want to do it for the walls they're
in it for the thrill of up
Bitcoin and like the posts that they're
going to put on Twitter after it and so
it's not just an economic reason why
people want to get civil resistance some
people are in it for the thrill some
people are in it for the walls and some
people just like hard problems and
because of the diversity of
sophistication and resources into
intelligences and motivations you get a
lot of diversity and methods of civil
attackers in your system and I've seen
this live on bitcoin grants in the past
in the Civil rings that we've discovered
and so you have to plan for plurality at
the base layer of how you solve civil
resistance
um
and I think this kind of informs where
where I think that we need to go with
civil resistance because there's there's
basically four ways to create civil
resistance you can do it with biometric
you can do it with nation state like kyc
like government IDs you can do it with
presence-based things like basically the
fact that you are all present here is a
civil resistance signal in in a sort of
way and then you can create web of trust
style systems and one challenge as
you're trying to create those systems is
the need for privacy centricity and
sovereignty and consent as we're
building civil resistance into these
tools and so Bitcoin passport if you
look at the Way It Is architected Well
basically we've got a three-state state
state machine that can take any on-chain
or off-chain data whether that is your
Google or your Twitter data or if it's
an on-chain data like your proof of
humanity or your bright ID
um or if it's more web 3 oriented
off-chain data like your disco data
backpack or your ceramic uh your ceramic
profile you can turn that into a
verifiable credential which Bitcoin
passport stores on ceramic only
non-personally identifiable information
and so all of this data is is stored off
chain and then you can build an
aggregator or an aggregate or if you're
a meme word like I am these days and
that can be created used to create a
personhood score that is is basically
like you can think of a personhood score
as being ten dollars worth of cost of
forgery in your Bitcoin passport so
someone who has a 10 personhood score is
ten dollars to forge their Identity or
someone with a ten thousand personhood
score is ten thousand dollars worth of
simple resistance and you as adapt
developer integrating Bitcoin passport
can give that much amount of rational
economic rewards to them because the
cost of forgery is x amount and Bitcoin
can give x amount of that matching pool
to them so I think that we do not want
to create a panopticon we are not web 2
and privacy and sovereignty has to be a
criteria for how we solve civil
resistance the need to avoid plutocracy
is another thing that we've learned from
web 2 as being being very important here
so basically in web 2 Facebook and Zuck
owns your data and how do we create a
system in web3 that is diverse and
pluralistic and has the network effects
of creating digital identity but doesn't
become captured by a a rational economic
actor so basically
um I like to go back to this idea from
political theory about the consent of
the governed which is basically the idea
that the government's legitimacy in
using State force or state action is
only is only valid when it's Justified
and consented to by the people that it
governs so basically what you don't want
to have is is basically like a company
that owns all of your identity data
that's governed by shareholders and the
management of that company has a
fiduciary duty to maximize value for the
shareholders because you know what's
going to happen to your data in that
situation it's just going to be used to
sell more ads against you so with Git
coin one of the reasons why we launched
the Dow and there are many is that we
wanted to be governed by the community
that we served and this is a
distribution of the Bitcoin voting power
as of the launch in Q2 of 2021. so
basically uh community members like
Trent Van Epps Austin Griffith Linda Z
left Harris Griffin are the ones that
are delegating your voting power to with
GTC and they're the ones who are making
decisions on behalf of the system and on
the long Arc of things even I will have
no power in Bitcoin as I eventually
disaffiliate as I disaffiliate
leadership and these people are actually
in charge of governing the data in the
protocol that we have in the future so
plutocracy is a big thing that I think
that we need to solve for
another thing we need to solve for is
called collusion and it's basically one
layer above the stack of the Civil
resistance problem it goes like this Hey
Kevin Olsen I see that you've got a
person who's heard score of a hundred
dollars I'll give you 50 bucks if I can
borrow your ID
yeah there you go and so basically what
happens is as people realize that they
can get around the Civil resistance in
the system by colluding with each other
then more of the people who are neutral
to the system begin to turn red because
the rational economic incentive is to
attack the system and and not defend the
system conclusion is this whole other
category of problems but once you have a
solid basis of what the identities are
in the system then you can start to
solve conclusion and this kind of gets
me to my next point which is we need to
build systemic defensibility into this
and that's hard because it's an infinite
game between attackers and Defenders
there's not a point in which the Civil
attackers are going to stop defending
the system so all we can do is take
advantage of the fact that we own the
battle arena in which they're attacking
the system and over time turn the dials
so that the blue team is more empowered
than the red team in this iterative
evolutionary infinite game between the
Civil attackers and the Defenders so if
you Empower a Sentry a blue person a
blue team person to prevent that red
team person from colluding then
basically instead of infinitely growing
into into occlusion attack you basically
stop at it at its source so basically
you get to a point where the blue team
can say oh this again this pattern
matches against something that I've seen
and you can prevent the Civil attack
from going there is a plurality of types
of attacks that will happen in these
systems and so because of that there's
going to be a plurality of defenses that
are going to be need to be built into
this system and the idea is to make it
so that it is not worth an attacker's
time to attack the system you hear
metallic talk about this this property
of systemic defensibility when he talks
about proof of stake and how much more
expensive it is to attack the proof of
State consensus protocol than it is to
defend the the protocol so basically we
want to have that same property inside
of our civil resistance Battleground
which by the way has grown a lot since
Bitcoin grants round one when it was
just a bunch of end users some of them
were red team and they're only after a
25k matching pool over the last 15
rounds we've iterated a lot and this is
what it looks like now so the red team
is the attackers The Blue Team are
people that use get coin uh data and
protocols in order to solve it so you've
got the end users who are now going
after three million dollars worth of
matching but in order to get to it they
have to go through passport which is
this sovereignty aware privacy is
preserving uh data store for figuring
out who's a civil attacker or not has to
go through pairwise which is a really
elegant way of solving conclusion that
I'm not going to get into now but I can
send you a reference on it and then they
can get to the grants and only by going
through the all these different blue
team exercises are they able to get to
the three million dollars in matching
proactively they have to go through them
and then there's a reactive data sort of
analysis team in which you've got people
who are looking at the open data coming
out of passport nothing privacy like pii
or anything like that but they're
basically looking for new attacks in the
system and this is how we build systemic
defensibility into the system
mm-hmm
um one of the cool things about Bitcoin
passport and what I'm doing now is its
modularity and forkability and this is
the part of the presentation where I get
to raise my hand and I say I'm sorry
that I built Bitcoin grants to be
centralized and monolithic back in the
day but I will never do it again because
I believe in modularity and super
modularity and the ability to Fork this
protocol so anyone here if you disagree
with how Bitcoin is doing passport you
can Fork it away and I'm going to tell
you how in just a second and I think
this is one of the benefits of
decentralization is basically the fact
that anyone can go in and can uh Fork
Bitcoin and the fact that it's governed
by its community so basically what this
looks like is in that three-state state
machine anyone can go in and add their
own stamp adding more data the passport
should be consuming that contributes to
civil resistance and I think that that's
really cool because if we can add more
data to the system then we can catch
more simple attackers as they come down
the pike
in this Looney Tunes adversarial game
um the cool thing about Bitcoin passport
is it's kind of like Kirby it can
swallow all of the different data that
exists on chain and off chain in the
web3 ecosystem is stored in a privacy
preserving and Sovereign way and when we
have a plurality of attackers a
plurality of stamps is what's going to
help us uh build a stronger Foundation
to get those attackers
say that you don't agree with get coins
person with scoring algorithm say you
think bright ID is worth a hundred and
ten dollars as a stamp or not 50 or you
can go in and you can add your own
scoring algorithm so basically this is a
way to create an economy of marketplaces
that have opinionated values about how
we reduce different data attributes into
different scores and this is plurality
at the base layer that we're sort of
building in it's not git coin saying
this is what the Civil score is of your
of your thing it's it's basically the
plurality of people who are involved in
passport debating these in the open
economy of ideas and by the way if you
want to use the passport infrastructure
the state machine that we've built not
for civil resistance so you want to
build like a regen score that talks
about how worthy of an under cloudized
loan you are you can use this pipeline
for that too it doesn't even have to be
about civil resistance and then the
final layer is that you can add
personhood score to your d-app it's
basically a couple lines of code to add
it to your sign in with ethereum and
instead of just getting back your
web3.eth.accounts from the system in the
balance you can also get the personhood
score back from Bitcoin passport so
adding personhood score to your dap is
kind of how we think about proliferating
a simple resistant ecosystem to the rest
of the world all right we're in the home
stretch now I got two more criteria for
you and then we're going to get into
actually building stuff with Kevin so
the need to build Network effects I like
to uh introduce this one with a riddle
and that riddle is if I build the most
perfectly academic civil resistance
algorithm
and no one ever uses it doesn't make a
sound the cool thing about Bitcoin
grants is that we've got 700 000 data
points uh that are already happening
about civil resistance and
um so basically the more users use
Bitcoin passport the more stamps are
loaded into the system the more reason
there is for d-apps to consume the Civil
resistance in the system which means
that more users will get their get coin
passport and that will create more
stamps and I could go on in this
infinite Loop for the rest of our time
but out of respect for you we will move
on to the evolutionary nature of this
game which is the part of the game that
I've become fascinated with and the
reason why we called this talk the
infinite game of civil resistance is
because of the of the infinite
evolutionary nature of this game I like
to invite my friend Kevin McAllister
back in order to illustrate this Kevin
McAllister is fighting in an adversarial
game some organized criminals who are
trying to get into his house and he does
it by icing down the stairwell off his
backyard and he does it by putting Micro
Machines on the floor if you're a
millennial you'll appreciate these
references if you're in gen Z you're
like what is he talking about and my
personal favorite is the pink end to the
face
if you're gonna sit without Bitcoin just
know what's coming for you
but there's an iterative evolutionary
game where every time the organized
attackers attack Kevin McAllister's
house they learn more about Kevin's
tricks and he learns more about them and
over time there is a series of
entertaining and actually kind of
increasingly sad uh stories about this
adversarial game that happens and uh
yeah I mean we just have to respect that
Kevin McAllister is the third governor
in our Kevin Triad but
um and you know what's funny is like
over time it like increasingly
approaches like a YouTube cover video of
like the shocked the shocked face here
but uh I'm not here to judge home alone
all right so anyway basically iterative
evolutionary game is where we were uh
basically you recognize on the left that
this is the battle arena that get coin
get coins fundamental advantage in this
is that it owns the battle arena we can
set up micro machines in the front or
like the paint can to the face to the
Civil attackers and there's an instant
feedback that happens with the
mechanisms and then there's daily
feedback as people wake up and they
check their computer every day and then
there's a quarterly feedback as we want
as we run a uh around every every
quarter so this is an iterative
evolutionary infinite game between the
good guys and the bad guys and the goal
of this whole system is to increase the
total personhood score in the get coin
Grant system over time to be hundreds of
millions of dollars worth of civil
resistance and that will allow us to be
bootstrap this ecosystem of democratic
dials by increasing the total personhood
score of the system building in systemic
defensibility into the system from there
so that is the characterization of the
Civil resistance game and basically I
want to talk about how that is informed
how we've built get coin grants uh and
Bitcoin passport so basically the tldr
of this last section is the Bitcoin
grants around 69 which is another meme
number uh I think that's it will be in
2027 at this point will be privacy and
sovereignty aware it will avoid
plutocracy it will avoid collusion it
will be systemically defensible it will
have Network effects it already does it
will be modular and forkable it'll have
decentralization and it'll Embrace an
evolutionary nature of this game you can
tell that because I have this Castle in
the Sky of Bitcoin grants and we've
fallen into having the Civil resistance
problem the bitcoin's taking this
problem pretty seriously and because of
that we want to be a shelling point for
creating more civil resistance along
with the plurality of Partners I see
many of you in this room right now
around solving civil resistance and so
it's basically a plural approach to this
problem and I think that like where
we've kind of landed is that we've built
this thing Through Blood Sweat and Tears
called Bitcoin passport which you can
get at passport.getcoin.com and
basically we want this to be the part of
your journey that enables more civil
resistance for you and your community so
you can integrate it into your D app
with one line of code it might be
overselling this before Olson's talk
okay I'm embellishing it's 10 lines of
code but you don't have to deal with
like the seven criteria and like all the
Home Alone references of rolling your
own and the whole idea again is to
bootstrap an ecosystem not only of civil
resistant grants on git coin but civil
resistance and more democracy for web 3
at large and like I said I want to make
web 3 more useful for Everyday People by
making it so that there are d-apps that
are more democratic and provide utility
to the median member of humanity instead
of just the well-moneyed and that is
what we're here for at get coin and
Bitcoin grants so thank you for
listening to my rant I'm going to hand
it over to Kevin Olson and we're
actually going to do some code from here
thank you
[Applause]
hello
that's a lot that's a lot to follow
um I think we're gonna slow down a
little bit hope y'all
yeah yeah yeah yeah eventually uh okay
cool
conference Wi-Fi
yes okay
um
cool
um so I I had the
pleasure of stepping in for a wakia
tapcon in Berlin so uh I I left giving
that talk feeling like I wanted to give
this talk which is uh like what did we
actually build right which is uh
hopefully just as exciting I don't know
it is more than one line of code though
and what I'm really going to do is try
to orient you all as like future
builders on top of passport how do you
use it how do you use it for your your
apps or your communities and really just
going to point you at a lot of resources
so this is going to be kind of a big
overview of what we've built and why
we've built it the way we've built it I
think that's kind of an important thing
um and and then how to take that forward
um I got a slido pole I'm gonna pull up
on my phone so I can follow along if you
all want to scan that
you should ask questions there
and hopefully you have enough time at
the end to answer them
I'm doing it on my side so you know how
long it takes
cool I'm starting to see phones go down
so I'm gonna say we're good
all right
cool so um here's the agenda we're gonna
do the Y passport like what problem does
it solve and I think Kevin did a great
job of the big meta y um what is
passport who's currently using it um and
then how to do it yourself right
so why pass for it right
um Kevin's talk write the infinite game
um you you have these systems that are
vulnerable to civil attacks right
um some of the things we're seeing right
now anything is doing kind of voting
quadratic funding quadratic voting it's
particularly susceptible to this you
also have communities that are providing
benefits right if you have like some
sort of uh being you're paying gas fees
on behalf of something or you have some
poapps or or things like this you're
giving away people Farm these things
right so passport is a great way to
uniquely uh sort of identify the humans
in your system uh and only provide those
benefits to the people who are really
going to be using it and aren't just you
know rational actors exploiting your
system right like there might be an
economic gaming there's an airdrop in
the future you get why they're doing it
but ultimately it's a destructive uh
like element in you know the governance
of your your system or the benefits not
getting to the right people right
they're they're they're distorting the
effect of that
so the high level requirements so this
is so Kevin stock kind of give us gives
us the sort of parameters for the design
space that we went into we want to do
privacy preservation so like as a first
goal we're not going to dox anybody with
passport this has been a huge concern of
ours right so from day one our goal was
to make sure there was no opportunity
for us to like leak pii or anything like
this a personally identifiable
information outside to anyone right so
we don't store any pii in the get coin
passport this for sure you can go check
it out it's not there
else we want to make sure that we're
test centralized right we don't want to
be a point of of capture for the
audience we don't want to be making you
know we don't want to go evil get coin
and make bad decisions
um we also want to make sure that we're
adaptive right so that we can in this
evolutionary game continue making
improvements and lastly when we
pluralistic we want to invite a lot of
people into solving this problem with us
and making sure that we're actually
getting you know the best ideas put
forward you know forking our protocol or
just like adapting it for your group
right we don't necessarily make our
decisions the ones that everyone has to
use so we've tried to make this as a
real like as a toolbox that you can take
forward into your group
I already did this
um maybe some of the the details on here
one of the interesting things about uh
capture is we want to make sure that the
data was fully public we ended up using
the ceramic Network for that uh and
sticking to the Open Standards of dids
and VCS
um keeping going here this is the part
where I was going to demo it but I don't
trust the uh the the Wi-Fi so I'm gonna
spare everyone watching me wait for this
thing to load
um who's actually built a Bitcoin
passport for donating to get coin grants
okay so these are the folks who
participated in rounds 14 and 15. if you
wanted your matching bonus you went here
and did this
maybe I'll just like use your
imagination and work with me here you
connect your wallet we instantly
provision uh an empty passport for you
you go through these different uh
identity attestations uh connecting your
Twitter that's an oauth flow uh GTC
staking was a project that got built on
the side where you could stake uh GTC on
each other uh to prove kind of humanness
or kind of web of trust uh that's an
online uh that's a very that's a web
three
um endpoint we're just hitting a Json
RPC proving that your wallet address is
on that contract and pulling that back
and verifying it what's behind the scene
on all of these things is just a little
Json object right that's what all of
Bible credential is and we're just
proving that we observed that fact at
that point of time VC gives you the
ability to have like an expiration date
things like this so for a period of time
we're saying that we we've validated
that they had an account at this point
in time it's somewhat static data that's
the interesting thing about VCS it goes
with you you can actually download your
passport there's an ability if you have
it on your phone do you want to play
with this you can actually just pull
down the whole passport yourself it's
just a Json object you can actually
upload it you can kind of skip the whole
ceramic thing if you want but we've
chosen to use ceramic as the sort of
bait data layer to back this
um oh gosh man I'm just front running my
own slides here I'm so sorry everybody
uh one cool thing you can do this is
interesting with ceramic and just to
kind of prove the open data thing go
check out this uh Sarah scan right on
Sarah scan it's like an indexer of the
ceramic Network you can pull up every uh
instance of the passport uh schema
that's been filled right that people
have written to
um there's 60 000 passports that have
been built right people have made many
many more stamps uh so behind that
what's interesting is in our last round
grants around 15 we actually had 38 000
that were submitted To Us by our users
so there's a whole bunch of passports
that are getting built and used
externally I'm going to get into that a
little bit there's already some
communities are starting to adopt this
um this is a little preview of what you
get to see when you go to sirscan
um you can click through you can
actually see the raw data it's it's
super interesting
so okay some background Concepts so I've
kind of said these things but I want to
make sure you all have the references
I'll make these slides available there's
a lot of links in here and I hope people
kind of use this as a reference you know
as they get started so decentralized
identifiers uh who's heard of that
oh okay great I'll have to talk about
this okay cool
um what about did pkh
cool so this is a deterministic way of
generating dids from your private key
your public key uh you you have this
ability to deterministically make sure
that every wallet has the ability to
generate a did
um it's it's a bit of a subset I think
it's even like a what's the word for it
uh preliminary non-ratified
non-conformant spec it's like proposed
thank you
um I'm looking at Evan up here for
um and then we have VCS behind that
verified credentials um VCS are a really
interesting spec
um because they're so Broad and this is
actually some of the criticisms of these
specs is that there's a lot of
interpretation and room to kind of do
whatever you want with it
um VCS as we've used them are really
just an attestation that we observe
something so it's like the slimmest
subset of that
um there's people who are using them for
more interesting or more data Rich
environments
ceramic who's used ceramic or heard of
it
okay okay
um I like to say that it's kind of a
convenience layer on top of ipfs I don't
know if that's they would all agree with
me um but it's a really nice way to have
mutable streams of data that users
control right so you are the only person
with your did that you control that can
write into your stream and through some
of their libraries you can grant access
to an app to write into your stream it's
individually writable self-sovereign but
it's totally open data right so it's
kind of an interesting it's a really
good fit for these use case is why we
chose it but it's pretty unique we don't
have a database we're not storing any
you know VCS of everybody it's all
happening here and you control your
stream as a user of the ceramic Network
so we really are relying on this as the
data layer for passport
um we host a production node ourself
which is kind of uh interesting we also
host a test net node so if you're
developing this is all in the docs we'll
get to that later
um but yeah okay
Spruce did kit everyone uses Spruce same
with ethereum yeah did kit is amazing uh
and this Bruce team is super nice so is
the ceramic team ceramic team is really
really nice too they joined us uh for
like daily calls like during the round
right like they were really committed to
making sure that everything went well
and continuing to be really uh tight
with us so Joel if he's in the audience
thank you you're awesome
um and then Rocco from Spruce has been
awesome in helping us uh manage did
there's some interesting stuff later on
I'm going to get into here too
uh so high level concept so this is the
whole of of what passport really is
right so there's the there's the D app
right there's there's passport which was
that screenshot that was going to demo
but I'm not going to now
you have ceramic which is where all the
data actually sits
you're using the open data standards
which is interesting thing with ceramic
is you have the ability to Define uh
schemas so the data that's going into
ceramic is kind of being enforced at
that data layer that it's conformant to
the did in the VC spec or the VC spec
really right so the if you want to write
a stamp which is a VC uh you can just
use the same model the same schema that
we've published to the ceramic Network
and it'll be conformant right so you
can't get the sort of like drift of of
data schema when you're relying on the
get coin passport stamp or the VC spec
that we've published
um there's a passport Authority so this
is something we had to build we had to
build a back end uh where we issue the
VCS from so VCS are not uh necessarily
like a first-class citizen yet so when
we're observing these attestations we're
Min we're issuing these VCS back up to
go into your passport
um this is kind of a current point
centralization I'll get into this a
little bit later
um you'll see it in the code base too
there's this IM server
trust bonus this is how if you've used
passport to build a trust bonus
um we this is the part where you
actually submit it to git coin this is
the scoring piece this is all available
inside the the get coin uh web repo you
can read how we did it it's all kind of
in Python and stuff the SDK has some
easier ways of doing scoring but this is
kind of like the full life cycle right
um and then there's this get coin
scoring service we'll get into
cool
um I'm not going to show this this is a
pretty detailed uh like swim Lane of
like exactly all the calls but if you
really wanted to get into it and see
exactly where like all of the sort of
sequence of like calls between front and
the back
you'll see it here
um that line that link is live and open
feel free to check it out uh the
passport SDK itself so this is up on
bitcoin this is actually how you can
build on top of passport the most easily
so
um I'm gonna get a little bit more into
the how a little bit later
current points essentially I hinted at
this so
the IM server is where we're actually
observing we're like issuing these VCS
from so you if you want to use a score
that uses VCS from git coin you have to
kind of white list RVC server but this
allows anybody else to also issue VCS
and the scoring part of the SDK allows
you to decide which uh VC issuers you
trust right so you give that control
kind of Downstream anybody can write
into your passport if you give them
access to it right so if you're a did
holder and you go to a forked version of
Bitcoin uh a passport
you can give access to your stream to
that front end they could write into it
but if they're not hitting our DC issue
in service the they can't issue their
own so where do where do you decide who
to trust which VCS are worth trusting
it's at that scoring layer right when
you come back around and you actually
see like like what's in a passport you
can see uh through the the VC which
server issued that uh that particular
credential
um and then lastly our score is
currently our point of trust right you
have to you you're handing your passport
to us you're working within the get coin
ecosystem fine you can trust us in the
future as people start using other
scores you kind of start making scores
as a service things like this they're
going to become a point of trust right
you're going to have to rely on that
scoring service to uh you know to to
hand like to uh be doing the right thing
with the passports that you hand to it
right so if you don't want to go to the
hassle of scoring a passport yourself
reading the dids doing the scoring you
have to actually uh rely on somebody
else this is kind of just a maybe worth
calling out
okay so what can we do in the future
people can build their own IM servers
and start issuing their own VCS that's
pretty straightforward uh you can host
your own ceramic node you can help us
especially when ceramic moves into this
compose DB in the future I'm hinting it
that uh again I don't think anyone from
ceramic is here thinking correct me if
I'm wrong but I heard q1 of next year
um this is a great way to start
synchronizing data between nodes and
pinning it and making sure that the data
is available in more locations and then
lastly scoring help us build more scores
faster and note let us be a point of
centralization
I said I was gonna go slower but then I
started going fast yeah okay
so who's already doing this so we
actually have a community of people who
are kind of picking this up and starting
to build on top of it
um each Staker just popped into our
Discord and told us that they built this
which is super cool so thanks Remy
um what they're using passport for
actually is giving roles inside their
Discord so you can go into this Discord
Channel
um they pop you out to do a little
signing and then you come back around
and the bot runs through your passport
reads all the data in and gives you a
score and it automatically assigns you a
role in the Discord so they were having
an issue apparently with people getting
uh you know multiple roles or bad roles
and they want to make sure they're real
people and not Bots super use case and
it's all available there check out their
uh their GitHub repo
bankless Academy
um I didn't link this uh but it's
actually there so if you go to the
bankless academy uh GitHub it's you can
even just like search the code for
passport and you can see their
implementation there I might after the
fact drop a link in this
um DDA uh similarly just like kind of
tweeted this out and then jumped in our
Discord and told us that they built this
um they did some cool stuff too where so
this is Vanquis Academy is kind of a
rabbit hole-esque right you go through
you complete some sort of challenges and
you get like a like a mint po app mint
Kudos at the end people were farming
this
um and they needed some civil protection
what's really cool actually the way they
do this is because they're um able to
read the data in the background you sign
in like with ethereum you have like they
know your wallet address that you're
completing this challenge where you're
going to get that that mint Kudos back
to you they just in the background just
go read your passport you already have
one like they just see what stamps and
they say okay cool good enough like
we'll let you in we minted this happened
to me I was like uh it thought this was
live like I thought you know like I
didn't see the passport submission thing
um so you don't actually have to do this
right you can just in the background go
look up a passport and see what stamps
are on it without any kind of clumsy
flow
if you don't have the stamps in your
passport you don't have a passport it'll
just prompt you to go create one and
it'll let you in and get you through
into the uh the service
um other cool thing too is they're
they're doing like the caching and this
uh storing of duplicate stamps which is
a thing we we can get into a little bit
here too
so how to actually get started so the
obvious place to get started go to our
docs
docs.passport.getcoin.com there's a lot
of like the high level stuff all the way
through into the SDK and really like how
to get like through it
um I think one of the most important
things though is actually decide like
when you're getting into like how to use
the sdks like what you're really doing
with it right and a lot of this comes
down to like gating of a benefit or a
community we're also seeing some people
who have like interesting identity
signals right we've had some people who
have you know like uh like a kyc service
or they have
um uh like gitpo app just reached out
and just built their own right they're
like this is a cool thing it should be a
stamp it should be in your passport
um you can build uh interesting uh
scoring mechanisms maybe you have some
thoughts on what is a really good you
know cost of forgery or scoring or
personhood
um build it right like all of these
things are there and the raw materials
are there in the toolbox in the SDK
um I think I've kind of beat this up a
little bit but the basic thing this is
the trust bonus page I think you'll
you'll see this is how we uh gate our
community in service
um adding a stamp get po app this is a
pull request that they submitted uh
right here for how to build a stamp this
um again as it's a moving Target we're
going to continuing improving the code
base but right now this is a great way
to get uh started to see exactly how to
like add a stamp
um you can take that PR move it forward
we actually have a library of other PRS
in our docs of like where we've added
other different kinds of stamps so you
can look to see you know how your uh
your currently flow might map Best
um
Discord I think we've seen this but this
is actually the Discord as the stamps
this is another example I wanted to
highlight this one's not like a like a
this this one's non-chain verification
uh this one is not right so you have
kind of these uh different flows I
wanted to kind of highlight
um this was a video that got submitted
to our hackathon which is just great I
hope it doesn't play okay
um it's a great walkthrough if you
really just you need to like the
walkthrough and you want to watch
someone like actually code through a
full implementation of the SDK
um uh Rask is that username uh did a
great job and I think actually won our
hackathon with this video so it's it's
top-notch
then lastly if you do build something
tell us about it uh we got the
showcase.passport where you'll see we've
got each Staker up there we've got our
identity staking and we got like a
lookup tool that the community submitted
um we haven't gotten the uh the bankless
one up here yet we're I think we're
still waiting for them to apply into
this but there's a form of call to
action at the bottom just tells you've
built it we want other people to find it
um we'll link you to your uh you know
your project into your uh your GitHub
and then Alpha alert Kevin do you know
we had an API
this is super cool so when when I
mentioned that we have this kind of like
centralized you submit your passport to
to git coin and we do all this stuff and
we give you back this magical trust
bonus we've busted this out as an API
now so you actually can hit um this is
the Swagger UI link but the the API is
the same path there score.dpop
um the the what's neat about this is you
can you can actually post like a full uh
passport to this and then uh you can
read off different kinds of scores so we
actually have like a weighted score
which is what ships with the SDK so you
can set up kind of a set of Weights this
kind of alludes to Kevin's uh cost of
forgery uh we also have this thing
called Apu which is like this
fingerprinting service we actually use
for gr15 which takes like a cohort of
passports have been submitted to us and
we find the median value of uniqueness
and you can kind of treat that as like
you know below that threshold might be
maybe not so trustworthy above that
threshold is trustworthy assuming you
have kind of a gaussian distribution of
of users so the Apu score is kind of an
interesting one different kind of scores
available we're going to make this more
fully featured but this is like
literally shipped last week very like
there's no docs on this this is the dock
for y'all
um but we're going to keep improving
that and making sure this becomes like a
real like an easy way to start
interacting with passport without having
to go through necessarily hitting
ceramic and reading it if you don't want
to right you just have this as a way but
we are storing off these these hashes
and things like that for it
and then in the future this is like the
the thing we uh recently just uh spent
some time on in the last couple weeks
the team's looking at how to actually
bring scoring on chains so one of the
things you're going to run into if
you're really trying to like uh enforce
a certain score to interact with the
contract is you're going to need to
bring this on chain somehow uh the teams
looked at a couple different routes and
the ones looking most promising is using
eip712s as an actual way to like create
a recoverable
um signed message on chain that you can
then verify yourself as part of your
like actual smart contract interactions
so we're trying to bridge uh passport
scores and and onto chain so you can
actually start using them there so we're
going to need this for Grant's protocol
as we go live your votes and things like
that and your passport will need to be
actually interacting with voting
contracts so we needed ourselves and I
think other people will too
all right and that's it so maybe we look
at that slido for some questions
[Applause]
cool okay the top question oh they're
not really voted up but oh yeah okay
they are okay
how do we identify collusion how do we
differentiate collusion from a situation
where many people just like the same
project assume sybils are solved
um this is a great question I mean I
think the real answer here is well okay
two answers
um you can use Macy right like minimal
anti collusion infrastructure and you
can make it impossible to verify who
voted for what in a particular you know
context this is what CLR fund's done and
we've been looking at this ourselves
actually for some of our Partnerships
with optimism
um it's it's at the root level making it
impossible so so Kevin gave me 50 bucks
for my identity I could take the 50
bucks and then devote however I want
there's no way for him to prove it this
is the kind of concept behind Macy so
you can have the secret ballot as the
way to protect people from being able to
you know the economic reward is
impossible to validate right for the the
people who are trying to bribe
um I think more legitimate forms of
collusion would be
um me and Kevin you know we have a lot
of similar ideas we share a name uh we
might just vote really similarly on
things right we actually belong to a
community right this is really what like
the dsoc paper that came out from Glenn
vitalik and Puja is really talking about
how do you identify communities
um and how do you reward cross community
uh you know like
um pluralistic uh consent or not consent
sorry what's a agreement or sort of like
signals between communities I think in
this environment you've got
um some really interesting opportunities
to sort of like sidestep collusion and
just talk about homogeneous communities
and how they're voting and rewarding
cross-community so they think that's a
nice sort of reframing of the problem
yeah I was just going to add that coin
uses something called pairwise bonding
which is uh I guess we're all built on
vitalik ideas but uh it's an idea from
vitalik to basically Bond people who
vote similar to each other
um algorithmically and and basically the
way the algorithm Works net net is that
if two people that have like a high
social distance across them contribute
to the same Grant then those
contributions are worth more than if
you've got a gag of people who are only
contributing to the same Grant so it's a
way of kind of algorithmically waiting
things that uh that are attractive
across social distance higher so it's
actually an early implementation of the
dsoc idea but um yeah I mean I'd say
that like passports even still in its
early Alpha days and we're really
focused on civil resistance and then I
think collusion resistance is is kind of
another Horizon on top of that and
hopefully we'll get there
cool so the next question here is the
scoring and GTC passport is it arbitrary
and how was it defined so I mentioned
for gr15 scoring was this Apu score
which came out of like some of the data
science work that was done from our
fraud and defense team so that's very
like specific to the community of
Bitcoin right it may not work for your
environment and we encourage you to
build your own weighted score if you
look at the scoring SDK what you
basically can do is Define all the
stamps you care about you can Define
which VC issuers you care about and then
you can Define weights based on those
that's the sort of like dead simple way
of doing this like I think Twitter's
worth one point I think uh bright ID is
worth 20 points and you can create an
aggregate score and a threshold and
that's why a lot of communities I think
think about doing this kind of thing
um you could go beyond that obviously
and start storing these things and doing
machine learning against them and do
some really interesting stuff there but
uh at the basic thing the scoring is
like I mentioned for our community has
been this kind of initial weighted
scoring we moved into this more like ml
sort of data science approach and then
in the future you know we're going to
keep iterating on that
but you have no limits to how you want
to build your score
cool uh can you give insights on how to
make passport compatible with other
chains evm and non-avm looking to
Technic to Architectural Components so
right now there's not a way to bridge it
on chain that's like work in progress
that's that was the thing I was
mentioning at the very end there so what
you really are looking at is your
interactions from the from the D app
like do you trust this interface that
people are interacting with and then you
would use that as sort of your gating
mechanism right so if somebody has the
ability to access that that doesn't mean
you can protect things at the Smart
contract interaction level this is why
we need to bring it there but if you
have a back end uh you can certainly
like protect yourself that way right you
can you can you can validate that the
front end is not being sort of man in
the middle and you're getting a valid
passport score back you can use your
back end like uh Bank list did where in
the background they just Reach Out grab
the passport read it in you have your
point of trust right and then you can do
your your uh Json PC calls from your
back end that might be the safest way to
handle this right now if you have an
actual smart contract interaction oh
those things like alarms to tell us
we're out of time oh okay uh sorry
I guess that's it for questions
hopefully that was sufficient thanks for
listening
um
this room is booked in I think 10
minutes so uh just to be respectful to
the next presenter Olson and I are gonna
go outside and happy to take more
questions on the lobby but go to
passport.getcoin.com if you want to
check out the code and thank you for
helping us build a more democratic web
free peace
[Applause]