@@ -7,10 +7,10 @@ This repository contains example dApps built using fhEVM (Fully Homomorphic EVM)
77### Confidential Counter
88The Confidential Counter examples demonstrate progressively more complex uses of FHE operations through four samples:
99
10- 1 . ** Basic Counter** : Simple encrypted counter with basic increment operations
11- 2 . ** Input Counter** : Handles encrypted inputs with proofs and type conversions
12- 3 . ** Decryptable Counter** : Adds decryption capabilities and state management
13- 4 . ** Multi-User Counter** : Supports per-user encrypted counters with access control
10+ 1 . ** Basic Counter** : Simple encrypted counter with basic increment operations.
11+ 2 . ** Input Counter** : Handles encrypted inputs with proofs and type conversions.
12+ 3 . ** Decryptable Counter** : Adds decryption capabilities and state management.
13+ 4 . ** Multi-User Counter** : Supports per-user encrypted counters with access control.
1414
1515Each sample builds on the previous one to showcase different FHE capabilities.
1616
@@ -44,13 +44,13 @@ The game showcases FHE capabilities for secure random number generation, private
44442 . ** Word Submission** : The relayer submits the encrypted target word letters using ` submitWord1 ` . The letters are stored as encrypted uint8 values.
4545
46463 . ** Player Guessing** : Players submit guesses by calling ` guessWord1 ` with:
47- - A word encoded as a uint32 (each letter as index 0-25)
48- - A Merkle proof verifying the word is valid
49- - Limited to 5 guesses total
47+ - A word encoded as a uint32 (each letter as index 0-25).
48+ - A Merkle proof verifying the word is valid.
49+ - Limited to 5 guesses total.
5050
51514 . ** Guess Feedback** : After each guess, players can request feedback via ` getGuess ` which returns:
52- - An encrypted equality mask showing exact letter matches (green)
53- - An encrypted letter presence mask showing letters in wrong positions (yellow)
52+ - An encrypted equality mask showing exact letter matches (green).
53+ - An encrypted letter presence mask showing letters in wrong positions (yellow).
5454
55555 . ** Winning** : Players can claim victory using ` claimWin ` if they get all letters correct. The contract verifies this using FHE operations.
5656
@@ -66,33 +66,33 @@ The game leverages FHE operations to keep the target word encrypted while still
6666** How it works**
6767
68681 . ** Identity Management** : The system consists of four main contracts:
69- - ` IdMapping ` : Maps user addresses to unique IDs for identity tracking
70- - ` PassportID ` : Stores encrypted passport/identity data like name, birthdate
71- - ` Diploma ` : Manages encrypted educational credentials and degrees
72- - ` EmployerClaim ` : Generates verifiable claims about age and education
69+ - ` IdMapping ` : Maps user addresses to unique IDs for identity tracking.
70+ - ` PassportID ` : Stores encrypted passport/identity data like name, birthdate.
71+ - ` Diploma ` : Manages encrypted educational credentials and degrees.
72+ - ` EmployerClaim ` : Generates verifiable claims about age and education.
7373
74742 . ** Identity Registration** :
75- - Users first get a unique ID from ` IdMapping ` via ` generateId() `
76- - Authorized registrars can register encrypted passport data using ` PassportID.registerIdentity() `
77- - Educational institutions can register encrypted diploma data via ` Diploma.registerDiploma() `
75+ - Users first get a unique ID from ` IdMapping ` via ` generateId() ` .
76+ - Authorized registrars can register encrypted passport data using ` PassportID.registerIdentity() ` .
77+ - Educational institutions can register encrypted diploma data via ` Diploma.registerDiploma() ` .
7878
79793 . ** Encrypted Data Storage** : All sensitive data is stored encrypted using FHE:
80- - Names, birthdates, and biometric data in ` PassportID `
81- - University, degree type, and grades in ` Diploma `
82- - Access controlled through TFHE permissions
80+ - Names, birthdates, and biometric data in ` PassportID ` .
81+ - University, degree type, and grades in ` Diploma ` .
82+ - Access controlled through TFHE permissions.
8383
84844 . ** Claim Generation** :
85- - Users can generate verifiable claims about their identity/credentials
85+ - Users can generate verifiable claims about their identity/credentials.
8686 - ` EmployerClaim ` supports two types of claims:
87- - Adult verification (18+ age check)
88- - Degree verification (specific degree requirements)
89- - Claims preserve privacy by using encrypted comparisons
87+ - Adult verification (18+ age check).
88+ - Degree verification (specific degree requirements).
89+ - Claims preserve privacy by using encrypted comparisons.
9090
91915 . ** Verification Process** :
92- - Claims are generated as encrypted boolean results
93- - Employers can verify claims without seeing actual data
94- - Combined verification checks both age and education requirements
95- - Results stored as encrypted verification status
92+ - Claims are generated as encrypted boolean results.
93+ - Employers can verify claims without seeing actual data.
94+ - Combined verification checks both age and education requirements.
95+ - Results stored as encrypted verification status.
9696
9797The system leverages FHE operations to enable privacy-preserving identity and credential verification without exposing sensitive personal data.
9898
0 commit comments