Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/spheronfdn/izkp-auth
https://github.com/spheronfdn/izkp-auth
Last synced: about 5 hours ago
JSON representation
- Host: GitHub
- URL: https://github.com/spheronfdn/izkp-auth
- Owner: spheronFdn
- Created: 2023-12-12T17:48:04.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2023-12-26T12:53:21.000Z (11 months ago)
- Last Synced: 2024-04-02T15:17:09.831Z (8 months ago)
- Language: Rust
- Size: 16.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ZKP gRPC Client/Server for Authentication
This project implements a gRPC server and client leveraging the Zero-Knowledge Proof (ZKP) Rust library for secure authentication. The integration of ZKP with gRPC ensures that users can be authenticated without revealing sensitive information, enhancing privacy and security. gRPC, a high-performance, universal RPC framework, is employed to handle the communication between the client and server.
## Table of Contents
- [Prerequisites](#prerequisites)
- [Local Setup](#local-setup)
- [Installation](#installation)
- [Running the Server and Client](#running-the-server-and-client)
- [Docker Deployment](#docker-deployment)
- [Building the Docker Image](#building-the-docker-image)
- [Running the Docker Container](#running-the-docker-container)
- [Accessing the Running Container](#accessing-the-running-container)
- [Executing the Server and Client Inside the Container](#executing-the-server-and-client-inside-the-container)
- [Contributing](#contributing)
- [License](#license)## Prerequisites
- Rust programming language
- `protobuf-compiler`## Local Setup
### Installation
If you're on a Linux system, you can install the required `protobuf-compiler` using the following command:
```bash
sudo apt install protobuf-compiler
```### Running the Server and Client
TODO: Provide steps for running the server and client locally if any.
## Docker Deployment
The application can be containerized using Docker, which ensures a consistent environment for deployment.
### Building the Docker Image
To build the Docker containers, use:
```bash
docker-compose build zkpserver
```### Running the Docker Container
Launch the container with:
```bash
Copy code
docker-compose run --rm zkpserver
```### Accessing the Running Container
To access the running container:
1. List the active containers:
```bash
docker container ls
```2. Connect to the desired container using its CONTAINER ID:
```bash
docker exec -it [CONTAINER ID] /bin/bash
```### Executing the Server and Client Inside the Container
1. Start the server:
```bash
cargo run --bin server --release
```2. In a separate terminal instance, run the client:
```bash
cargo run --bin client --release
```## Contributing
TODO: Provide guidelines on how contributors can help with the project, if applicable.