emp-toolkit / emp-agmpc

Global-Scale Secure Multiparty Computation
Other
40 stars 23 forks source link

output MAC check? #6

Open weikengchen opened 4 years ago

weikengchen commented 4 years ago

It seems that the implementation does not check the MAC of the outputs (even with __debug turned on). I feel that it is okay for benchmark purposes since the overhead is comparably small.

But, should the code for output MAC check be added (which would be invoking check_MAC)? Or should we leave as it is?

My local test, which tampers party 2's value before https://github.com/emp-toolkit/emp-agmpc/blob/master/emp-agmpc/mpc.h#L416, suggests that one malicious party can, however, tamper with the output since the party 1 does not check the MAC.

wangxiao1254 commented 4 years ago

Thanks. It should be fixed. Will find time to fix it soon :)

wangxiao1254 commented 4 years ago

Debug mode is not secure, only for development. Functions called in the debug mode will send out Delta!

weikengchen commented 4 years ago

Thanks. That is important information (I have been assuming that debug mode turns on the MAC checks and makes it maliciously secure).