-
|
Does this package have a functionality that would allow for redistribution of shares ? What if there is a new participant joining the sham or a participant has left ? If this functionality possible in theory and is it already implemented somewhere in this repo ? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
|
Good question. Indeed there is the following (internal) function for redistributing shares: Line 601 in 5bbf14e It is called throughout the code to reduce the degree of the "Shamir polynomial'' as part of a secure multiplication and similar protocols. The resharing is done between a fixed set of parties, running the overall multiparty protocol. However, the same principles may be used to support a dynamic set of parties, or phrased differently, to handle situations where the set of senders differs from the set of receivers. Technically, all "elements" to implement such a general form of redistribution are present in the MPyC functions Lines 400 to 401 in 5bbf14e Lines 509 to 510 in 5bbf14e Lines 342 to 343 in 5bbf14e The basic idea is that each sender generates shares in a target secret sharing scheme of its share in the source secret sharing scheme, and receivers will combine their received shares as prescribed for the source secret sharing scheme to obtain their new share. This will work in general for linear secret sharing schemes such as Shamir's threshold scheme and also additive secret sharing. Two nice examples in this direction are the following protocols for exponentiation in the context of MPyC's secure groups: Lines 273 to 289 in 5bbf14e Lines 292 to 311 in 5bbf14e |
Beta Was this translation helpful? Give feedback.
Good question. Indeed there is the following (internal) function for redistributing shares:
mpyc/mpyc/runtime.py
Line 601 in 5bbf14e
It is called throughout the code to reduce the degree of the "Shamir polynomial'' as part of a secure multiplication and similar protocols.
The resharing is done between a fixed set of parties, running the overall multiparty protocol. However, the same principles may be used to support a dynamic set of parties, or phrased differently, to handle situations where the set of senders differs from the set of receivers. Technically, all "elements" to implement such a general form of redistribution are present in the M…