Gitcoin is GDPR complaint. Learn more in
Gitcoin's Terms & Conditions.
Check out the Issue Explorer
Looking to fund some work? You can submit a new Funded Issue here.
Shard and share your `.ssb/secret` and your `gossip.json` directly in Patchwork. As discussed with @mmckegg, this will be a 3 phase integration, allowing users to:
- (a) backup their identity with their peers
- (b) reclaim their old identity from their custodians using a newly generated identity after it has been lost (lost / broken laptop).
- (c) restart Patchwork as the new identity, which automates reintegrating the recovered identity. Gives the user the option to remove or backup the identity in use.
# Phase 1
**Backup your identity with your peers**
* [x] Extend the `shard` schema to accept a blob reference to `gossip.json` file in [`ssb-dark-crystal-schema`](https://github.com/blockades/ssb-dark-crystal-schema)
* [x] Extend the `shard` publish action params in [`scuttle-dark-crystal`](https://github.com/blockades/scuttle-dark-crystal) to accept a blob reference
* [x] Ensure the file is encrypted when creating a dark crystal
* [x] Draw some wireframes and run them by @mmckegg (upload here...)
* [x] CSS! Consult Matt to make sure it fits with Patchwork's overall style
#### Required functionality
* [x] Add a `Back up` button to the `/settings` page which:
* [x] Opens a modal containing a form that takes 2 inputs: a list of custodians and a quorum
* [x] Form submission performs the following
* [x] Load the entire `.ssb/secret` and stringify the JSON - this is the secret
* [x] Load, encrypts and generate a blob ID for the `gossip.json` file
* [x] Uses `scuttle-dark-crystal` to publish the message with `SSB Identity` as the `name`.
* [x] Add details about any existing backup so users can see that they've successfully backed up their identity - current custodians and the quorum required.
Phase 2 - https://github.com/ssbc/patchwork/issues/953
Phase 3 - https://github.com/ssbc/patchwork/issues/954