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

MPC-TLS actor refactor #405

Merged
merged 14 commits into from
Jan 15, 2024
Merged

MPC-TLS actor refactor #405

merged 14 commits into from
Jan 15, 2024

Conversation

sinui0
Copy link
Member

@sinui0 sinui0 commented Jan 10, 2024

This PR refactors our MPC-TLS implementation to use ludi and generally have better state management, errors and logging.

Changes

  • Modified Backend trait to have all async methods with only owned arguments.
  • Updated tls-client for changes to backend trait.
  • Refactored MpcTlsLeader and MpcTlsFollower to use ludi
  • MpcTlsLeader is no longer passed directly into the tls client, instead a controller is.
  • Refactored the MpcTlsError to be more opaque, concealing implementation details that shouldn't be in the API. At the same time, it provides better debugging information.
  • Introduced cleaner internal states to both the leader and follower, and added state guards in numerous places to catch unexpected events.
  • Introduced more explicit protocol messages between the leader and follower.
  • Encapsulated encryption functionality into record_layer
  • Decoupled message commitment from message decryption, to support deferred decryption in a coming PR.

@sinui0 sinui0 requested a review from themighty1 January 10, 2024 03:09
@sinui0 sinui0 force-pushed the refactor/mpc-tls-ludi branch from 41b1e70 to 87c6858 Compare January 11, 2024 08:03
@sinui0 sinui0 changed the title MPC-TLS ludi MPC-TLS actor refactor Jan 11, 2024
@sinui0 sinui0 marked this pull request as ready for review January 11, 2024 08:23
@sinui0 sinui0 requested a review from th4s January 11, 2024 08:23
Copy link
Member

@th4s th4s left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm 👍

@themighty1
Copy link
Member

thanks, will review soon

Copy link
Member

@themighty1 themighty1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK, left some non-blocking comments

@sinui0 sinui0 merged commit e1bfb56 into dev Jan 15, 2024
15 checks passed
@sinui0 sinui0 deleted the refactor/mpc-tls-ludi branch January 15, 2024 19:11
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

Successfully merging this pull request may close these issues.

3 participants