Code Monkey home page Code Monkey logo

docs's Introduction


Chat on Twitter Chat on Telegram Website

Identity protocol

Prove your access rights, not your identity

iden3 is a next-generation private access control based on self-sovereign identity, designed for decentralised and trust-minimised environments.

Privacy for all

Everyone has the right to liberty and equality, the right freely to participate in their community, and the right to privacy.

The aim of the iden3 protocol is to empower people and create a more inclusive and egalitarian foundation for better human relationships through open-source cryptography and decentralised technologies.


Privacy by design Decentralised Open source

Iden3 protocol libraries

  • Crypto library (go-iden3-crypto)
    Implementation of Poseidon hash and Baby JubJub Elliptic curve

  • Merkle tree sql library (go-merkletree-sql)
    Implementation of Sparse Merkle tree

  • Core library (go-iden3-core)
    Identity core primitives

  • Circuits (circuits)
    Identity circuits

  • Go-circuits (go-circuits)
    Library for transformation go-core primitives to json inputs for identity circuits

  • Prover server (prover-server)
    Wrapper on snarkjs for ZK proof generation

  • Authorization library (go-iden3-auth)
    Library for authentication with zkp verification (edited)


How to run this documentation (locally)

Install mkdocs

pip3 install mkdocs

In case you have a rendering problem with the pieces of code, please execute:

pip install --upgrade mkdocs

Install mkdocs-material theme

pip install mkdocs-material

Install mkdocs-markdown-graphviz (1.3)

pip3 install mkdocs-markdown-graphviz==1.3

Run the webserver

At the mkdocs directory execute:

mkdocs serve

auth

** signal input genesisID;
// random number, which should be stored by user
// if there is a need to generate the same userID (ProfileID) output for different proofs
signal input profileNonce;

// user state
** signal input state;
** signal input claimsTreeRoot;
** signal input revTreeRoot;
** signal input rootsTreeRoot;

// Auth claim
** signal input authClaim[8];

// auth claim. merkle tree proof of inclusion to claim tree
** signal input authClaimIncMtp[IdOwnershipLevels];

// auth claim - rev nonce. merkle tree proof of non-inclusion to rev tree
** signal input authClaimNonRevMtp[IdOwnershipLevels];
** signal input authClaimNonRevMtpNoAux;
** signal input authClaimNonRevMtpAuxHi;
** signal input authClaimNonRevMtpAuxHv;

// challenge signature
** signal input challenge;
** signal input challengeSignatureR8x;
** signal input challengeSignatureR8y;
** signal input challengeSignatureS;

// global identity state tree on chain
signal input gistRoot;
// proof of inclusion or exclusion of the user in the global state
signal input gistMtp[onChainLevels];
signal input gistMtpAuxHi;
signal input gistMtpAuxHv;
signal input gistMtpNoAux;

docs's People

Contributors

adityabirangal avatar andriianchestnykh avatar anum92 avatar arnaucube avatar cerberushades avatar demonsh avatar enricobottazzi avatar kalzak avatar mmilenkovic avatar nedgar avatar obrezhniev avatar omahs avatar otto-mora avatar saganshul avatar unchain68 avatar unixpi avatar vmidyllic avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.