snwagh / falcon-public

Implementation of protocols in Falcon

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

An Error in the Calculation of Communication Amount

XenonKos opened this issue · comments

Hello @snwagh, I have found an error in your code.
In line 1150 and 1151 of Functionalities.cpp, the last parameter of sendVector and receiveVector should be sizeLong instead of size.

This mistake makes the communication amount per ReLU 31 bytes less than the correct value and also influences the wall clock time in the stats. Because all shares of the common randomnesses are set to 0 in Precompute.cpp(which is also inappropriate), the mistake above does not have an impact on the prediction result. But the experiment results in Table 2,3,4,5,7 are all incorrect, let alone the follow-up works that make comparison with Falcon.

The correct communication amount per ReLU in semi-honest setting should be 73 bytes, but the theoretical results in the Appendix neither in Table 8(which is 32l) nor in Table 9(which is 4kn) agree with this value.