https://github.com/lcian/yaos-protocol-set-intersection
🔒 Secure multi-party computation of set intersection using Yao's protocol
https://github.com/lcian/yaos-protocol-set-intersection
multi-party-computation secure-multi-party-computation yaos-millionare-problem
Last synced: 3 months ago
JSON representation
🔒 Secure multi-party computation of set intersection using Yao's protocol
- Host: GitHub
- URL: https://github.com/lcian/yaos-protocol-set-intersection
- Owner: lcian
- Created: 2023-05-25T08:23:28.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-02T21:19:48.000Z (9 months ago)
- Last Synced: 2025-01-11T15:21:43.899Z (4 months ago)
- Topics: multi-party-computation, secure-multi-party-computation, yaos-millionare-problem
- Language: Python
- Homepage:
- Size: 394 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🔒 Yao's protocol – set intersection
Yao's protocol – set intersection is a proof of concept implementation for the secure multi-party computation of the intersection between sets of 32-bit integers.
The implementation is based on [Yao's protocol](https://ieeexplore.ieee.org/document/4568207) (aka garbled circuits), one of the first protocols for secure multi-party computation.Its Python implementation is taken from [this repository](https://github.com/ojroques/garbled-circuit), which I modified to implement the [free-XOR optimization](http://www.cs.toronto.edu/~vlad/papers/XOR_ICALP08.pdf), a variant that makes the computation much more efficient for this particular function.
You can read the full report [here](report.pdf), where I describe my choices for the implementation as well as instructions on how to run the code.