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

Secure TLS-Connection for new MP-SPDZ Version #22

Closed
kindlich opened this issue Apr 11, 2022 · 2 comments
Closed

Secure TLS-Connection for new MP-SPDZ Version #22

kindlich opened this issue Apr 11, 2022 · 2 comments

Comments

@kindlich
Copy link
Contributor

In #15, the MP-SPDZ Version is changed to v0.2.8 which introduces TLS-secured communication between MP-SPDZ Clients (=ephemeral) and the MP-SPDZ Process.

The way the PR adds this is really rudimentary and insecure (e.g. the option InsecureSkipVerify is set to bypass certificate validation).

	tlsConfig := &tls.Config{
		Certificates:       []tls.Certificate{cert},
		InsecureSkipVerify: true,
	}

We will need to think about some points regarding the TLS connection:

  • Who will create certificates (and re-created them when expired)?
    Types of connections
    • Ephemeral <-> MP-SPDZ Process (for transmitting secret shares/results)
    • Cross-Cloud MP-SPDZ instances (for computation)
  • Will we continue using self-signed certificates or have a way to provide certifactes signed by CAs?
  • Can we provide certificate using e.g. K8s Secrets instead of baking them into the base-image (do some parts of our infrastructure like Istio/Knative already provide some functionality for this here?)
@strieflin
Copy link
Member

As discussed on Discord, the way to go is to make TLS channels optional in upstream MP-SPDZ and have authenticated channels implemented via Istio mechanisms.

@strieflin
Copy link
Member

TLS has been switched off completely in #15 for both client/engine and engine/engine channels as it is not required in our setting.

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

2 participants