diff --git a/CITATION.cff b/CITATION.cff index 97982d8..c6b86c4 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -9,7 +9,7 @@ authors: - family-names: "Gallagher" given-names: "Kevin" - family-names: "Samaras" - given-names: "Nikolaous" + given-names: "Nikolaos" title: "Privacy Preserving Decision Trees in a Multi-Party Setting: a Level-Based Approach" version: 2.0.0 doi: TBD @@ -26,7 +26,7 @@ preferred-citation: - family-names: "Gallagher" given-names: "Kevin" - family-names: "Samaras" - given-names: "Nikolaous" + given-names: "Nikolaos" journal: "ACM CCS '23 Computer and Communications Security" month: 07 start: 1 # First page number diff --git a/LICENSE b/LICENSE index 8a530c6..4c89573 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2022 Andrew Quijano +Copyright (c) 2022 - 2023 Andrew Quijano Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/eks-config/config.yaml b/eks-config/config.yaml index 31249e7..2a25114 100644 --- a/eks-config/config.yaml +++ b/eks-config/config.yaml @@ -5,10 +5,29 @@ metadata: name: ppdt region: us-east-2 version: "1.27" + +# Managed Node Groups show up on AWS console managedNodeGroups: -- name: primary - instanceType: m5.large - desiredCapacity: 12 - minSize: 12 +- name: level-sites + instanceType: t2.large + labels: { role: level-site } + minSize: 10 maxSize: 15 - spot: true \ No newline at end of file + desiredCapacity: 10 + maxPodsPerNode: 1 + +- name: client + instanceType: t2.large + labels: { role: client } + minSize: 1 + maxSize: 1 + desiredCapacity: 1 + maxPodsPerNode: 1 + +- name: server + instanceType: t2.large + labels: { role: server-site } + minSize: 1 + maxSize: 1 + desiredCapacity: 1 + maxPodsPerNode: 1 \ No newline at end of file diff --git a/eks-config/k8/level_sites/level_site_01_deployment.yaml b/eks-config/k8/level_sites/level_site_01_deployment.yaml index f359b16..f33ab3a 100644 --- a/eks-config/k8/level_sites/level_site_01_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_01_deployment.yaml @@ -24,23 +24,11 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file diff --git a/eks-config/k8/level_sites/level_site_02_deployment.yaml b/eks-config/k8/level_sites/level_site_02_deployment.yaml index d65ad13..256e26e 100644 --- a/eks-config/k8/level_sites/level_site_02_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_02_deployment.yaml @@ -24,21 +24,9 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/eks-config/k8/level_sites/level_site_03_deployment.yaml b/eks-config/k8/level_sites/level_site_03_deployment.yaml index 06b84fb..cb0971d 100644 --- a/eks-config/k8/level_sites/level_site_03_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_03_deployment.yaml @@ -24,21 +24,9 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/eks-config/k8/level_sites/level_site_04_deployment.yaml b/eks-config/k8/level_sites/level_site_04_deployment.yaml index 3547a0e..2f01f93 100644 --- a/eks-config/k8/level_sites/level_site_04_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_04_deployment.yaml @@ -22,23 +22,11 @@ spec: - containerPort: 9000 env: - name: TREE_ROLE - value: "LEVEL_SITE" - - - name: PPDT_DATA_DIR - value: "/data/" + value: "LEVEL_SITE" - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/eks-config/k8/level_sites/level_site_05_deployment.yaml b/eks-config/k8/level_sites/level_site_05_deployment.yaml index 27be515..ce66192 100644 --- a/eks-config/k8/level_sites/level_site_05_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_05_deployment.yaml @@ -24,21 +24,9 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/eks-config/k8/level_sites/level_site_06_deployment.yaml b/eks-config/k8/level_sites/level_site_06_deployment.yaml index ebb5e5c..47fc937 100644 --- a/eks-config/k8/level_sites/level_site_06_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_06_deployment.yaml @@ -24,21 +24,9 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/eks-config/k8/level_sites/level_site_07_deployment.yaml b/eks-config/k8/level_sites/level_site_07_deployment.yaml index 9b7a990..8b5015b 100644 --- a/eks-config/k8/level_sites/level_site_07_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_07_deployment.yaml @@ -24,23 +24,11 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file diff --git a/eks-config/k8/level_sites/level_site_08_deployment.yaml b/eks-config/k8/level_sites/level_site_08_deployment.yaml index 5f30a73..fc30ae9 100644 --- a/eks-config/k8/level_sites/level_site_08_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_08_deployment.yaml @@ -24,23 +24,11 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file diff --git a/eks-config/k8/level_sites/level_site_09_deployment.yaml b/eks-config/k8/level_sites/level_site_09_deployment.yaml index daff59f..d836c0b 100644 --- a/eks-config/k8/level_sites/level_site_09_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_09_deployment.yaml @@ -24,23 +24,11 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file diff --git a/eks-config/k8/level_sites/level_site_10_deployment.yaml b/eks-config/k8/level_sites/level_site_10_deployment.yaml index 0cdf3c4..03846e5 100644 --- a/eks-config/k8/level_sites/level_site_10_deployment.yaml +++ b/eks-config/k8/level_sites/level_site_10_deployment.yaml @@ -24,23 +24,11 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file diff --git a/k8/level_sites/level_site_01_deployment.yaml b/k8/level_sites/level_site_01_deployment.yaml index c02aad7..d028941 100644 --- a/k8/level_sites/level_site_01_deployment.yaml +++ b/k8/level_sites/level_site_01_deployment.yaml @@ -24,21 +24,9 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/k8/level_sites/level_site_02_deployment.yaml b/k8/level_sites/level_site_02_deployment.yaml index 6c7e245..da5ee28 100644 --- a/k8/level_sites/level_site_02_deployment.yaml +++ b/k8/level_sites/level_site_02_deployment.yaml @@ -24,23 +24,11 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file diff --git a/k8/level_sites/level_site_03_deployment.yaml b/k8/level_sites/level_site_03_deployment.yaml index 78617b9..839fa70 100644 --- a/k8/level_sites/level_site_03_deployment.yaml +++ b/k8/level_sites/level_site_03_deployment.yaml @@ -24,21 +24,9 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/k8/level_sites/level_site_04_deployment.yaml b/k8/level_sites/level_site_04_deployment.yaml index d3e1536..d7e9773 100644 --- a/k8/level_sites/level_site_04_deployment.yaml +++ b/k8/level_sites/level_site_04_deployment.yaml @@ -22,25 +22,13 @@ spec: - containerPort: 9000 env: - name: TREE_ROLE - value: "LEVEL_SITE" - - - name: PPDT_DATA_DIR - value: "/data/" + value: "LEVEL_SITE" - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file diff --git a/k8/level_sites/level_site_05_deployment.yaml b/k8/level_sites/level_site_05_deployment.yaml index b9116fd..0440ea7 100644 --- a/k8/level_sites/level_site_05_deployment.yaml +++ b/k8/level_sites/level_site_05_deployment.yaml @@ -24,21 +24,9 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/k8/level_sites/level_site_06_deployment.yaml b/k8/level_sites/level_site_06_deployment.yaml index 9933d7f..e1bcf88 100644 --- a/k8/level_sites/level_site_06_deployment.yaml +++ b/k8/level_sites/level_site_06_deployment.yaml @@ -24,23 +24,11 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file diff --git a/k8/level_sites/level_site_07_deployment.yaml b/k8/level_sites/level_site_07_deployment.yaml index 9f030a6..65b4756 100644 --- a/k8/level_sites/level_site_07_deployment.yaml +++ b/k8/level_sites/level_site_07_deployment.yaml @@ -24,21 +24,9 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/k8/level_sites/level_site_08_deployment.yaml b/k8/level_sites/level_site_08_deployment.yaml index bb683e1..0a34f28 100644 --- a/k8/level_sites/level_site_08_deployment.yaml +++ b/k8/level_sites/level_site_08_deployment.yaml @@ -24,21 +24,9 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: diff --git a/k8/level_sites/level_site_09_deployment.yaml b/k8/level_sites/level_site_09_deployment.yaml index 213affc..2dd2b9b 100644 --- a/k8/level_sites/level_site_09_deployment.yaml +++ b/k8/level_sites/level_site_09_deployment.yaml @@ -24,23 +24,11 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file diff --git a/k8/level_sites/level_site_10_deployment.yaml b/k8/level_sites/level_site_10_deployment.yaml index 36e935b..cbf9ff1 100644 --- a/k8/level_sites/level_site_10_deployment.yaml +++ b/k8/level_sites/level_site_10_deployment.yaml @@ -24,23 +24,11 @@ spec: - name: TREE_ROLE value: "LEVEL_SITE" - - name: PPDT_DATA_DIR - value: "/data/" - - name: PORT_NUM value: "9000" - - name: PRECISION - value: "2" - - - name: LEVEL_SITE_DOMAINS - value: "ppdt-level-site-01-service,ppdt-level-site-02-service,ppdt-level-site-03-service,ppdt-level-site-04-service,ppdt-level-site-05-service,ppdt-level-site-06-service,ppdt-level-site-07-service,ppdt-level-site-08-service,ppdt-level-site-09-service,ppdt-level-site-10-service" - - - name: TIME_METHODS - value: "true" - - name: AES_PASS valueFrom: secretKeyRef: name: ppdt-secrets - key: aes-key + key: aes-key \ No newline at end of file