samee / obliv-c

Other
177 stars 57 forks source link

failed to run:/obliv-c/test/oblivc/psi #93

Closed a870988925 closed 2 years ago

a870988925 commented 4 years ago

Hellow, I wonder to know how to run psi? There is no readme.txt in /obliv-c/test/oblivc/psi. And when I input the ./a.out, it says Segmentation fault (core dumped). like this IMG_20191109_103014

samee commented 4 years ago

You're right, looks like it was broken, sorry about that! I just pushed out 0fa103f2. See if it works now. A simple make in the test/oblivc/psi folder should do it now. The usage details is in psi.c (see commit link).

a870988925 commented 4 years ago

I tried your method, but it is still the false: segmentation fault. As shown below, the terminal occurs warning is cast to pointer from integer of different size size.Is it the problem of this warning?

2CD5DBBD86B245F9FEFED12D4AC3A111

samee commented 4 years ago

Your screenshot still shows old code, from before the patch. Did you actually update your git repository? Try a git pull before your make.

freelyyu commented 4 years ago

you are right,Thank you.

a870988925 commented 4 years ago

Thank you, Moreover, I found that these examples in oblivc are all 2PC , I want to expand it to 3PC, then what should I do? For example, how to modify the statement setCurrentParty(&pd, argv[1][0]=='1'?1:2) in million.

samee commented 4 years ago

Unfortunately that won't be easy. It requires plugging in a new protocol, and I'm not sure if we have one for millionaires. Some people have indeed extended Obliv-C for special applications, with special security models, e.g. https://github.com/schoppmp/linreg-mpc is a good one for linear regression.

If you want to write a new multiparty protocol for Obliv-C, you are certainly welcome to try.