Replies: 1 comment
-
Based on user feedback, we have to prioritise this milestone before we can actually deploy to test network. Users shall be able to maintain their privacy by selectively disclosing those eligible to receive their handle on network. Such can be done as token gated access. For a simplest yet scalable implementation we can allow users to specify mint their identity tokens. as ERC1155. Since Ethereum address space is actually less than ERC1155 token ID space we can use one ERC1155 token representing ID tokens, and use offset to represent token action type (depending on token action type users might be required to: hold / lock / burn / pay ). Using this approach, we actually are able to create a
|
Beta Was this translation helpful? Give feedback.
-
This thread is for discussing privacy milestone: https://github.com/peeramid-labs/multipass/milestones/1/edit
Problem statement
Currently Multipass architecture assumes all user name handles are public.
There may be use cases when user may want to put this data in encrypted format.
For example:
Design considerations
1. Decentralized Identity and Data Storage
bytes32
identifier for a specific platform (e.g.,bytes32("telegram")
) and the value is the user's handle on that platform.2. Smart Contract Modifications
bytes32
field in smart contract to store the Ceramic StreamID for each user. This StreamID will point to the user's private data on Ceramic.3. User Experience
Registrar Workflow with Encrypted Data
Example Flow
vitalik.twitter
) publicly in Multipass contract (receives a registrar signature on public data).vitalik.telegram
) privately, storing it encrypted on Ceramic with a Lit condition requiring a specific NFT for access.Advantages of this approach:
Considerations:
Open questions
1. Vendor selection
Is Lit protocol and Ceramic best combination? Will they work?
FHEnix is interesting alternative, yet not clear if that would be very gas efficient.
2. Can registrar sign based on ZK proof?
Assuming that registrar already knows real Vitalik ID, all he needs is to check that encrypted data indeed WOULD resolve to his id if decrypted.
Having ZK proof would allow save computation load on Lit Protocol as well as simplify the access control condition there.
3. Registrar <-> user communication proofs
is implementation of Registrar <-> user communication proofs via zkPoD or TLSNotary (i) doable, (ii) required from game theoretic standpoint, (iiI) what implications are to multipass smart contract requirements?
Beta Was this translation helpful? Give feedback.
All reactions