Fork from SecureUnionID project, Bytedance.
cd build
# search CMakeLists.txt in parent directory
cmake ..
# build project
make
# run
./psi
- master: generate a random. see
random_seed_ch
- master: use the random to generate a master key. see
master_key_gen_ch
- master: use the master key to generate a public key and a private key. see
public_key_gen_from_master
- slave: see
blind_ch
- generate a random
- use the random and the public key to generate a beta
- master: see
encrypt_m
- generate a random
- use the random and the private key to generate an alpha
- use the alpha to encrypt the message received from slave
- send the encrypted message and the alpha back to slave
- slave: use alpha and beta to unblind the message. see
unblind_alpha_beta
Total 3,000,000 blind, enc, unblind loop, on a 2.3 GHz 8-Core Intel Core i9 OSX.
Program | Encrypt Perf(d/s/t) | With Thread |
---|---|---|
PRL | 744.071931 | - |
PSI | 2700-6500.748107 | 17158.167686-65111.440835 (15t) |