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

Feature: remove signers or refresh shares with trusted dealer #245

Closed
natalieesk opened this issue Feb 15, 2023 · 4 comments · Fixed by #281 or #665
Closed

Feature: remove signers or refresh shares with trusted dealer #245

natalieesk opened this issue Feb 15, 2023 · 4 comments · Fixed by #281 or #665
Assignees
Labels
C-feature Category: New features

Comments

@natalieesk
Copy link
Contributor

natalieesk commented Feb 15, 2023

Motivation

There may be situations where you may want to remove signers.

Design

To do this you would need to perform a resharing protocol and leave out the relevant participant.

This is done by basically redoing the trusted dealer generation with a "zero" secret, and adding the new shares to the old ones, while keeping only the participants that are wanted

References

@natalieesk natalieesk added question Further information is requested frost labels Feb 15, 2023
@chelseakomlo chelseakomlo changed the title Feature: remove signers Feature: remove signers or refresh shares Feb 21, 2023
@chelseakomlo
Copy link
Collaborator

I changed this issue to "remove signers or refresh shares" since the technique is the same.

@chelseakomlo
Copy link
Collaborator

Completed

@mpguerra mpguerra linked a pull request May 23, 2023 that will close this issue
@conradoplg
Copy link
Contributor

Reopening, we just implemented repair share, refresh/remove is still missing

@mpguerra
Copy link
Contributor

@natalieesk can you please split this one up and we turn it into a tracking issue instead

@mpguerra mpguerra assigned mpguerra and natalieesk and unassigned mpguerra Mar 25, 2024
@natalieesk natalieesk added C-feature Category: New features and removed question Further information is requested labels May 22, 2024
@natalieesk natalieesk changed the title Feature: remove signers or refresh shares Feature: remove signers or refresh shares with trusted dealer May 22, 2024
natalieesk added a commit that referenced this issue Jun 11, 2024
Split refresh_shares_with_dealer into calculate_zero_key and refresh_share
natalieesk added a commit that referenced this issue Jun 27, 2024
natalieesk added a commit that referenced this issue Jun 27, 2024
natalieesk added a commit that referenced this issue Jul 4, 2024
natalieesk added a commit that referenced this issue Jul 4, 2024
Split refresh_shares_with_dealer into calculate_zero_key and refresh_share
natalieesk added a commit that referenced this issue Jul 4, 2024
natalieesk added a commit that referenced this issue Jul 4, 2024
natalieesk added a commit that referenced this issue Jul 4, 2024
natalieesk added a commit that referenced this issue Jul 18, 2024
Add tests for invalid identifiers when refreshing shares
natalieesk added a commit that referenced this issue Jul 18, 2024
This is to be compatible with the no_std attribute
natalieesk added a commit that referenced this issue Jul 18, 2024
mergify bot pushed a commit that referenced this issue Jul 18, 2024
* Add refresh shares with dealer functionality (#245)

* Change refresh share API (#245)

Split refresh_shares_with_dealer into calculate_zero_key and refresh_share

* Fix serialisation error with refresh share (#245)

Add serialisation test

* Fix serialisation errors after updates (#245)

Fixed some typos

* Update refresh_share to accept and return a KeyPackage instead of SecretShare (#245)

* Tidy up refresh share functionality (#245)

* Add refresh share functionality to Book (#245)

Diagram is still to be added

* Update book for rereshing shares with trusted dealer (#245)

* Add new verifying shares calculation for refresh shares (#245)

Add tests for invalid identifiers when refreshing shares

* Rename calculate_zero_key to compute_refreshing_shares (#245)

* Import Vec from the alloc crate (#245)

This is to be compatible with the no_std attribute

* Use alloc crate instead of std for refresh shares (#245)

* Fix fmt error (#245)

* Refactoring refresh shares functionality (#245)

* cleanups during review

* Update book/src/tutorial/refreshing-shares.md

* update docs

* always return error in detect_cheater

* add changelog entry

---------

Co-authored-by: Conrado Gouvea <conradoplg@gmail.com>
Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
@mergify mergify bot closed this as completed in #665 Jul 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-feature Category: New features
Projects
Status: Done
4 participants