leodec / VeriSimplePIR

Code for VeriSimplePIR, USENIX '24
MIT License
7 stars 0 forks source link

Params for a small database #1

Open AsterNighT opened 9 months ago

AsterNighT commented 9 months ago

Hi, I'm trying to run src/demo/scripts/params.cpp to get the communication cost of the construction on a relatively small databse (like 2^20 entries or so). But the code seems unfunctional on such small parameters. When I tried with

N_d_params.push_back(std::vector<uint64_t>{(1ULL << 20), 1});

The program gives me an assertion failure:

params: src/lib/pir/database.cpp:430: PlaintextDBParams Database::computeParams(const bool, const bool, const bool, const uint64_t, const bool, const bool) const: Assertion `p > 0' failed.

What exactly does that mean? Did I miss anything from the paper?

AsterNighT commented 6 months ago

Never mind, figure it out myself. It seems it must be calculated from large N to small N. If I calculate from 30 down to 20 it works fine.