Skip to content

Commit 47a08a8

Browse files
Add a ReSharing protocol to both re-share to existing parties and create shares for additional parties (#684)
* refactor: no longer have degree 2 galois ring sharing in library at all * feat: add more points to exceptional sequence of galois sharing feat: more generic inverse computation for degree 4 galois rings * test: more exhaustive tests for galois rings * feat: basic reshare protocol implemented To be integrated into client/server infrastructure * feat: also send and check eye in reshare message * Revert "feat: also send and check eye in reshare message" This reverts commit 4f3562a. * feat: include both eyes in the sent message * feat: basic reshare client * feat: basic server and seed binary for v2 dbs * feat: working basic reshare client and server probably lacks robustness + tracing * fix: cargo clippy fixes * fix: more clippy fixes * build(deps): add protobuf-compiler to docker build images and ci * fix: clippy and missing protobuf for docs ci * docs: simple readme for reshare protocol run * docs: update documentation for reshare * Update iris-mpc-upgrade/src/bin/README.md Co-authored-by: Carlo Mazzaferro <[email protected]> * reshare deploy values * reshare common values * feat: compute allowed proto message size from batch size * refactor: remove unused config values, make client retry backoff time configurable * document config * feat: derive common seed from AWS KMS * test derive shared secret with localstack * feat: add sanity check on correlated randomness * workaround for localstack bug for local testing * clippy fix * unify the store functionality to not have 2 similar structs due to new main changes * reshare common values * consolidate reshare server values * add server and client to dockerfiles * typo --------- Co-authored-by: Carlo Mazzaferro <[email protected]> Co-authored-by: Carlo Mazzaferro <[email protected]>
1 parent 27a083e commit 47a08a8

32 files changed

+2410
-396
lines changed

.github/workflows/build-all-targets.yml

+5-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
push:
55

66
concurrency:
7-
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
7+
group: "${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}"
88
cancel-in-progress: true
99

1010
jobs:
@@ -13,6 +13,8 @@ jobs:
1313
steps:
1414
- name: Checkout code
1515
uses: actions/checkout@v4
16+
- name: Install Dependencies
17+
run: sudo apt install protobuf-compiler
1618
- name: Cache build products
1719
uses: Swatinem/[email protected]
1820
with:
@@ -31,6 +33,8 @@ jobs:
3133
steps:
3234
- name: Checkout code
3335
uses: actions/checkout@v4
36+
- name: Install Dependencies
37+
run: sudo apt install protobuf-compiler
3438
- name: Cache build products
3539
uses: Swatinem/[email protected]
3640
with:

.github/workflows/doc.yml

+3-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
push:
55

66
concurrency:
7-
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
7+
group: "${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}"
88
cancel-in-progress: true
99

1010
jobs:
@@ -13,6 +13,8 @@ jobs:
1313
steps:
1414
- name: Checkout code
1515
uses: actions/checkout@v4
16+
- name: Install Dependencies
17+
run: sudo apt install protobuf-compiler
1618
- name: Show errors inline
1719
uses: r7kamura/rust-problem-matchers@v1
1820
- name: Install Rust nightly

.github/workflows/lint-clippy.yaml

+3-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
push:
55

66
concurrency:
7-
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
7+
group: "${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}"
88
cancel-in-progress: true
99

1010
permissions:
@@ -21,6 +21,8 @@ jobs:
2121
steps:
2222
- name: Checkout code
2323
uses: actions/checkout@v4
24+
- name: Install Dependencies
25+
run: sudo apt install protobuf-compiler
2426
- name: Install Rust nightly
2527
run: rustup toolchain install nightly-2024-07-10
2628
- name: Set Rust nightly as default

.github/workflows/run-unit-tests.yaml

+4-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ on:
55
branches:
66
- main
77
pull_request:
8-
types: [ opened, synchronize ]
8+
types: [opened, synchronize]
99

1010
concurrency:
11-
group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
11+
group: "${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}"
1212
cancel-in-progress: true
1313

1414
jobs:
@@ -28,6 +28,8 @@ jobs:
2828
steps:
2929
- name: Checkout code
3030
uses: actions/checkout@v4
31+
- name: Install Dependencies
32+
run: sudo apt install protobuf-compiler
3133
- name: Cache build products
3234
uses: Swatinem/[email protected]
3335
with:

.github/workflows/test-gpu.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ jobs:
3030
sudo ln -sf /usr/bin/gcc-11 /usr/bin/gcc
3131
gcc --version
3232
33-
- name: Install OpenSSL && pkg-config
34-
run: sudo apt-get update && sudo apt-get install -y pkg-config libssl-dev
33+
- name: Install OpenSSL && pkg-config && protobuf-compiler
34+
run: sudo apt-get update && sudo apt-get install -y pkg-config libssl-dev protobuf-compiler
3535

3636
- name: Install CUDA and NCCL dependencies
3737
if: steps.cache-cuda-nccl.outputs.cache-hit != 'true'

0 commit comments

Comments
 (0)