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

Sharded Shuffle Protocol #972

Open
eriktaubeneck opened this issue Mar 12, 2024 · 1 comment
Open

Sharded Shuffle Protocol #972

eriktaubeneck opened this issue Mar 12, 2024 · 1 comment

Comments

@eriktaubeneck
Copy link
Member

eriktaubeneck commented Mar 12, 2024

We have currently implemented the following sharded shuffle, performed by 2 out 3 helper parties. It is then repeated by the other two pairwise configuration of the 3 helper parties, so that all 3 are oblivious to one of the shuffles.

Let there be S shards.

  1. For each row, select a uniform random value s in [0, S) and send that row to the sth shard.
  2. After completing step 1 for all rows, shuffle each shard using an uniform random permutation (e.g., Fisher Yates.)

We need to confirm that this still results a uniform random permutation. Moreover, the size of each shard at each stage is revealed to all helper parties (including the "hidden" 3rd helper party), and we need to confirm that that knowledge doesn't add bias either.

I've attached a draft proof of this, and am seeking feedback on it's validity.

Sharded_Shuffle.pdf

(pdf updated on 2024/3/12)

@eriktaubeneck
Copy link
Member Author

It seems that there is an error with the PDF upload right now on Github, but there is an upload currently available in the W3C slack, in the #patcg-ipa channel.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant