11
Challenge Project

Unlinkability beim Vorweisen einer E-ID

Wenn eine E-ID vorgewiesen wird, soll es keine Möglichkeit geben diese E-ID auf Basis von technischen Parametern zu identifizieren

Guest

⛶  Fullscreen ↓  Download 📂 Demo

BBS Rust Library PoC for Open Legal Lab 2024

Overview

This repository hosts a Proof of Concept (PoC) developed during the Open Legal Lab 2024 Hackathon. This PoC was created by participants to better understand the practical aspects of the BBS library in a learning environment.

Disclaimer

This code is a demonstration meant for learning and understanding the functionalities of the BBS library in Rust. It has not been designed with production-level security or efficiency considerations and thus should not be used in such environments.

Prerequisites

  • Rust Programming Language
  • BBS Library for Rust
  • SHA-256 Hashing (sha2 crate)

Installation

To get started with this PoC:

  1. Install Rust on your system.
  2. Clone the repository.
  3. Navigate to the project directory.
  4. Use Cargo to build and run the project:
cargo build
cargo run

Project Structure

  • main.rs: Contains the main logic showcasing key generation, message signing, and verification processes.
  • create_keys: Generates a public and secret key pair for signing messages.
  • json_to_messages: Transforms a JSON document into a vector of signature messages.
  • blind_sign_messages: Produces a blind signature for a set of messages.
  • create_commitment: Creates a cryptographic commitment using a blinding factor.
  • unblind_signature: Converts a blind signature into a standard signature.
  • create_proof_request: Sets up a proof request for a cryptographic proof.
  • create_proof_of_knowledge: Creates a proof of knowledge for a subset of the signed messages.
  • check_signature_pok: Checks the validity of a proof of knowledge.

Features

The PoC demonstrates: - Key generation compatible with the BBS signature scheme. - Conversion of eID attributes into a format suitable for BBS signatures. - Creation and handling of blind signatures and commitments. - Generation and verification of proofs of knowledge to simulate the eID verification workflow.

This content is a preview from an external site.
 

Event finished

Edited (version 20)

25.03.2024 13:28 ~ nicolin_dora

Sketching

Repository updated

25.03.2024 12:31 ~ Vejsa

Repo hyperledger/aries-bbssignatures-rs

https://github.com/hyperledger/aries-bbssignatures-rs

25.03.2024 12:31 ~ Vejsa

We explored a GitHub repo for BBS+ signatures (https://github.com/mattrglobal/bbs-signatures/tree/master) to start our PoC. However, we found it lacks blind signing and commitment generation functions. Switched to hyperledger/aries-bbssignatures-rs for complete functionalities.

25.03.2024 12:31 ~ Vejsa

Research

Update BBS_Diagram.drawio (@devobern)

Create README.md (@devobern)

Edited (version 17)

25.03.2024 12:14 ~ nicolin_dora

Research

Update BBS_Diagram.drawio (@devobern)

Added BBS_Diagram.drawio (@devobern)

fix: signature and messages matching

Edited (version 15)

25.03.2024 09:29 ~ nicolin_dora

Research

Edited (version 13)

25.03.2024 09:28 ~ nicolin_dora

Edited (version 12)

25.03.2024 09:27 ~ nicolin_dora

Initial commit (@devobern)

Task afternoon: Crash Course on E-ID Ecosystem and Terminology Read and understand the following articles: https://medium.com/coinmonks/zero-knowledge-proofs-um-what-a092f0ee9f28 https://eprint.iacr.org/2023/275 https://eprint.iacr.org/2023/275.pdf

24.03.2024 22:19 ~ Vejsa

Research

Start PoC einer Idee

24.03.2024 20:28 ~ JonasNiestroj

Start in Einarbeitung Kryptographie

24.03.2024 16:37 ~ JonasNiestroj

Joined the team

24.03.2024 10:43 ~ Vejsa

Event started

Edited (version 4)

16.03.2024 18:29 ~ JonasNiestroj

Edited (version 3)

16.03.2024 18:28 ~ JonasNiestroj

Edited (version 2)

16.03.2024 18:26 ~ JonasNiestroj

Edited (version 1)

16.03.2024 18:24 ~ JonasNiestroj

Joined the team

16.03.2024 18:04 ~ JonasNiestroj

Challenge

 
Alle Teilnehmer*innen, Sponsor, Partner, Freiwilligen und Mitarbeiter*innen unseres Hackathons sind verpflichtet, dem Hack Code of Conduct zuzustimmen. Die Organisatoren werden diesen Kodex während der gesamten Veranstaltung durchsetzen. Wir erwarten die Zusammenarbeit aller Teilnehmer*innen, um eine sichere Umgebung für alle zu gewährleisten. Weitere Einzelheiten zum Ablauf der Veranstaltung finden Sie unter Richtlinien auf unsere Webseite.

Creative Commons LicenceDie Inhalte dieser Website stehen, sofern nicht anders angegeben, unter einer Creative Commons Attribution 4.0 International.