# 1 Human 1 Vote Money Legos 🔜 More Democratic DAOs 🧱🤝✨ by Kevin Owocki | Devcon Bogotá

- Speakers: [Kevin Owocki](https://streameth.org/speakers/kevin-owocki)
- Channel: [Devcon](https://streameth.org/devcon)
- Date: 2023-10-07
- Duration: 51:04
- Watch: https://streameth.org/watch/yt-TRoO5fD7TI4
- YouTube: https://www.youtube.com/watch?v=TRoO5fD7TI4

## Description

Visit the https://archive.devcon.org/ to gain access to the entire library of Devcon talks with the ease of filtering, playlists, personalized suggestions, decentralized access on Swarm, IPFS and more.
https://archive.devcon.org/archive/watch/6/1-human-1-vote-money-legos-more-democratic-daos/

Right now, the DAO ecosystem is built around one-token-one-vote or one-cpu-one-vote schemes.

With strong sybil resistence, the ecosystem could move to DAOs built on one-human-one-vote. This unlocks more democratic use cases like:

- quadratic funding
- quadratic voting
- Gini coefficient measurements
- UBI
- one-person-one-vote DAOs
- data collectives
- sybil resistant airdrops
+ more

Learn about the current landscape of sybil resistance techniques in web3.

Speaker(s): Kevin Owocki
Track: Developer Infrastructure
Keywords: sybil,dao,democracy

Follow us: https://twitter.com/efdevcon, https://twitter.com/ethereum
Learn more about devcon: https://www.devcon.org/
Learn more about ethereum: https://ethereum.org/ 

Devcon is the Ethereum conference for developers, researchers, thinkers, and makers. 
Devcon 6 was held in Bogotá, Colombia on Oct 11 - 14, 2022.
Devcon is organized and presented by the Ethereum Foundation, with the support of our sponsors. To find out more, please visit https://ethereum.foundation/

## Transcript

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]
