Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC: threshold encryption and token-gating of static objects #23

Open
NiklasTR opened this issue Mar 12, 2022 · 1 comment
Open

RFC: threshold encryption and token-gating of static objects #23

NiklasTR opened this issue Mar 12, 2022 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@NiklasTR
Copy link
Contributor

Hi frens,

over the last couple of weeks, I have been looking into various ways to enable scientists to store sensitive information in an encrypted but decentralized fashion.
As a community we talked to multiple providers that develop solutions in the problem space of decentralized file access. Some of the providers I have identified are listed below:

  • nevermined
  • chainsafe
  • threshold network (former keeper network and nucypher project)
  • lit protocol

After looking into all the above protocols and talking to folks at most of them, I believe the most promising infrastructure we can build on is lit protocol. They have built out a JS SDK for decentralized threshold encryption of static objects that can be exposed via IPFS. It is the most straightforward-looking tool I have seen so far for static content.

https://litprotocol.com/
https://developer.litprotocol.com/docs/intro/
https://developer.litprotocol.com/docs/SDK/staticContent

@NiklasTR NiklasTR added the enhancement New feature or request label Mar 12, 2022
@NiklasTR
Copy link
Contributor Author

The process to manage access to static content looks like this:

writing

  1. [[authSig]] - prove ownership of the [[metamask]] key pair
  2. perform [[symmetric encryption]]
  3. define [[access control condition]]
  4. store the [[symmetric encryption]] key with the [[access control condition]] on the [[lit protocol]] - defines an encrypted symmetric key
  5. save the following three files
    1. encrypted static object
    2. encrypted [[symmetric encryption]] key
    3. [[access control condition]]

reading

  1. pull the following files
    1. encrypted static object
    2. encrypted symmetric encryption key
    3. access control condition
  2. [[authSig]] of the user to prove ownership
  3. obtain the decrypted symmetric key from the lit network based on the control condition and the user's authSig
  4. decrypt the encrypted static object with the symmetric key
  5. return object

@blahah blahah changed the title Use Lit Protocol for threshold encryption and token-gating of static objects RFC: threshold encryption and token-gating of static objects Jul 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants