ray-project / rayfed

A multiple parties joint, distributed execution engine based on Ray, to help build your own federated learning frameworks in minutes.
https://rayfed.readthedocs.io
Apache License 2.0
92 stars 21 forks source link

feat: simplify tls config. #64

Closed zhouaihui closed 1 year ago

zhouaihui commented 1 year ago

The tls_config is something like

# For alice
{
  "cert": {
      "ca_cert": "bob's ca root pem",
      "cert": "cert pem",
      "key": "cert key ",
  },
  "client_certs": {
      "bob":  {
          "ca_cert": "bos's ca root pem",
          "cert": "cert pem",
          "key": "cert key ",
      }
  }

The content of client_certs is duplicated actual. We can not set different root ca cert for different parties actually due to grpc server uses a specific ca root cert only.

So we can just simplify the tls_confg to

{
      "ca_cert": "bob's ca root pem",
      "cert": "cert pem",
      "key": "cert key ",
  }
jovany-wang commented 1 year ago

Hi could you add the PR description?