Giter Club home page Giter Club logo

zkp-one-factor-auth's Introduction

ZKP Protocol

This repository includes the client and the server implementation for the ZKP protocol. Both are implemented in separate Rust projects, though it would have ideally been a monorepo with shared libraries and shared protos, but done this way due to limited knowledge of Rust.

Instructions to run

Run the server in a new terminal, and the client in another terminal. Follow the instructions of the console for running the client and interacting with the server.


cd server && cargo run
cd client && cargo run

Instructions to run in docker and to deploy in a cloud

The client and server images need to be built separately and can be ran separately.


docker build -f Dockerfile-client -t zkp/client .
docker build -f Dockerfile-server -t zkp/server .

// Create a network
docker network create zkp

// Run server in detached mode in a new terminal
docker run -e SERVER_ADDRESS="0.0.0.0:8080" --network=zkp --name server -p 8080:8080 -d zkp/server

// Run client in interactive mode in a new terminal
docker run -e SERVER_ADDRESS="http://server:8080" --network=zkp --name client -it zkp/client

To run these in separate machines in the cloud, the individual docker images can be ran separately on different machines, while setting the env variable for SERVER_ADDRESS in the client accordingly to match the address and the port of the machine where the server is running.

zkp-one-factor-auth's People

Contributors

njofce avatar

Watchers

 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.