Blockchain Proof-of-Individuality – Anti-Sybil Protocol using virtual Pseudonym Parties

    0
    2375
    default

    Pseudonym parties are based on the fact that you cannot be in two places at once. Global pseudonym party events happen in synchrony, simultaneously all over the world, and are scheduled continuously throughout the year. The earliest reference for the protocol that I’ve found is from 2007/2008, https://pdos.csail.mit.edu/papers/accountable-pseudonyms-socialnets08.pdf

    The POI protocol takes the pseudonym party concept into the digital space, using video chats instead of IRL meetups. The underlying proof is of the same kind, that people cannot be in two embodiments at once.

    The protocol is agnostic about how people verify one another in the hangouts. It’s anonymous in the sense that people could even wear Guy Fawkes masks and it would still work, as they could use arm-motion mimicry to verify joint-attention. The POI tokens themselves are completely a-personal, and not traceable over time. Each new POI token you receive is not traceable to your previous one. It’s an anonymous proof-of-individuality that gives you complete sovereignty over your digital self.

    The Proof-of-Individuality (POI) protocol is an anti-sybil protocol based on Bryan Ford’s pseudonym parties (2008)

    *CcttUXsMiIgGbhuVNJg

    Pseudonym Parties: An Offline Foundation for Online Accountable Pseudonyms

    Global meet-up events happen simultaneously across the world, continuously throughout the year. The proof is based on the fact that you cannot be in two places at once.

    Bryan Ford wrote that the tension between anonymity and accountability may not be fundamental, but merely an indication that our current mechanisms to provide them are too primitive. He also wrote that pseudonym parties appear to be the only proposed solution that can address both strong accountability and privacy at the same time.

    The Proof-of-Individuality (POI) project takes Bryan Ford’s vision into the digital space, and lets people meet up using video hangouts. The proof is based on the fact that you can’t be in joint attention with more than one hangout at a time, without anyone noticing it.

    johan1An interesting future for the protocol would be to use Mirosoft’s new holoportation technology for the hangouts.

    Once verified, you receive an anonymous token that is valid for one month.You have to get a new token the next month, and your new token will not be traceable to your previous token, making the tokens very anonymous.POIs are indexed on the block-chain and searchable, and you could build more complex IDs on top of it. A POI in itself is anonymous and controlled by the owner who has the corresponding private key. You can link your POIs together, at the cost of decreased anonymity.

    Once verified, you receive an anonymous token that is valid for one month.

    johan3You have to get a new token the next month, and your new token will not be traceable to your previous token, making the tokens very anonymous.

    POIs are indexed on the block-chain and searchable, and you could build more complex IDs on top of it. A POI in itself is anonymous and controlled by the owner who has the corresponding private key. You can link your POIs together, at the cost of decreased anonymity.

    johan4

    This is a draft of the full POI system

    Proof of Individuality

    POIs (proof-of-individuality) are smart-assets that are hosted on the Ethereum network. They solve one of the hard problems in crypto – how do you prove that a person only has one account within the system?

    Join the POI project on Slack, http://poiproject.herokuapp.com

    How

    Through person-to-person verification. Users are grouped together by random in groups of 5 or so, and every group does a video hangout at the exact same time, that lasts around 10 minutes or so. Users check so that the others in their group aren’t doing another hangout at the same time. They then sign each other’s POIs and verify them. Once the hangouts are finished and all POIs have been verified, everyone will know that each POI represents a unique human being.

    Overview of the subcontracts

    depositGovernance.sol

    Manages the anti-spam deposits, and also includes a system to vote on the size of the anti-spam deposit. A new contract is created each round, and the old one suicides.

    generatePOIs.sol

    Issues undivisible POI tokens to all verified users. A new contract is created after each round, and the old one suicides.

    hangout.sol

    Manages the verification within the hangouts. Includes the ASF system that ‘gamifies the hangouts’ by using a point system instead of one-vote-per-person, allowing users in a hangout to direct and steer each others attention more. A new contract is created for each hangout.

    registration.sol

    Manages the registration of users each month, assing them into groups by random, and boots up hangout contracts. New contract is created each round.

    poi.sol

    Main contract. Boots up the other contracts, manages scheduling, and integrates some function call

    contractjohan

    Expansion on how the anti-spam mechanism works

    The randomization makes it hard to gain control of entire groups, but controlling 2x or more the total number of users is a way to bypass that. Anti-spam deposits make it very expensive to perform this attack.

    See more on Github here.