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

Enable customization of party performing public computations #393

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

lvdmaaten
Copy link
Member

@lvdmaaten lvdmaaten commented Aug 14, 2022

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Docs change / refactoring / dependency upgrade

Motivation and Context / Related issue

The current implementation of CrypTen's MPC protocol assumes that there is always a party with rank 0. This party is hardcoded to be responsible for performing public addition, public XOR, NOT, and for requesting Beaver triples. In setups in which party 0 exists but does not partake in the computations (that is, is not in DistributedCommunicator.main_group) incorrect results will be produced..

This PR introduces class variables that allow a user to customize which party is in charge of those things.

How Has This Been Tested (if it applies)

Unit tests for public addition, public XOR, and NOT included. There are no unit tests for TTP and TFP, but I have tested the changes locally.

Checklist

  • The documentation is up-to-date with the changes I made.
  • I have read the CONTRIBUTING document and completed the CLA (see CONTRIBUTING).
  • All tests passed, and additional code has been covered with new tests.

@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Aug 14, 2022
@facebook-github-bot
Copy link
Contributor

@lvdmaaten has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants