microsoft / APSI

APSI is a C++ library for Asymmetric (unlabeled or labeled) Private Set Intersection.
MIT License
182 stars 41 forks source link

What is the meaning of the JSON filename corresponding to in the parameters directory? #75

Open qxzhou1010 opened 2 months ago

qxzhou1010 commented 2 months ago

In the parameters directory, there are some JSON files, and each JSON file's name has a specific meaning. For instance, 1M-1-32.json indicates that the Sender's data num is one million, the Receiver's query data num is 1, and the label length is 32 bytes. Is my understanding correct?

However, there are some filenames that are not so easy to comprehend, such as: 1M-512-cmp.json and 1M-512-com.json. What's the difference between these two parameters? What do the suffixes cmp and com respectively signify?

kimlaine commented 1 month ago

You are correct regarding the sizes. These are parameters that are generally "good" for these sizes. However, note that you can always use it for a larger or smaller sender set as well, or a smaller receiver set, but not a larger receiver set.

The cmp and com indicate that the parameters are particularly optimized for lower computation (cmp) or communication (com). APSI allows for flexible and complicated trade-offs between computation and communication, and these parameter do not by any means represent extremes in either direction. They are just generally good parameters that are particularly good in one of the two aspects.