Overview
Last updated
Last updated
Jomo Connect enables applications to easily verify user data from various onchain or offchain sources via zero knowledge proof without getting user's raw data exposed to anyone.
Term | Definition | Example |
---|---|---|
The private VC verification framework enables users to use their private data and get benefits by proving they qualify for them, without revealing any tangible private information.
Example use cases include proving that:
I have donated to Gitcoin in total value of X (private information: all addresses I own)
Smart contracts I deployed over different chains have acquired activities of amount Y (private information: all addresses I own)
My Github repositories have a total stars of Z (private information: my github handle)
I have worked at company A for > B years (private information: who I am)
Owns a house valued > $1M (private information: my home address, house value)
User is redirected to Jomo Connect when you try to verify the private information of a user
User connects to the corresponding data source and have Jomo generate a private VC for them.
Jomo Connect frontend generates zero knowledge proof based on the user's private VC
You receive the zero knowledge proof and associated additional data
You verify the proof and additional data are valid with Jomo Connect Smart Contract or Backend
(Optional) Jomo Connect backend verifies the proof and share with you the validness of the proof and any corresponding results via a callback or subsequent API calls
You customize the UX based on the result
VC
A verifiable credential is a statement about some piece of information, that is verifiably attested by an attester.
A VC could be about someone or something, or not be about a specific entity. It could be bound to an unique identifier, or could just be stored by anyone anywhere. All VCs created for users by Jomo are stored in the form of EAS attestations.
Statement: The Earth is a sphere
Attester: Columbus
Signature: Columbus signing on the Statement
Private VC
A private VC is a VC that nobody except for its owner, knows about its detailed contents in the statement. The general public only sees a deterministically encrypted form of the statement but not the raw data.
Actual content (only the VC owner knows): passport number, country, issue and expiry date, name, etc
Statement: Some sort of hash of the content above
Attester: Government
Signature: The NFC chip on the physical passport containing a signature of the statement
Attributes
A data attribute is a field→value pair within a VC content.
Note that for private VCs, other than the owners themselves, no one else should know what attributes and their values exist in a private VC
<company_name, Jomo>
<passport_issue_country, USA>