Closed jun1015 closed 1 week ago
That fork uses SEAL version 3.7.2. After SEAL 3.6 or so, the minimum poly degree (N) supported for the galois automorphisms (which SealPIR needs to perform the query compression/decompression) is 4096.
So to answer your question, there is nothing you can do when N is 2048. You could use the older version of SealPIR which uses an older version of SEAL that doesn't have this restriction.
Thanks, I got it!
Hello! I found that the old version is faster than the new. I tested them at the same enviroment. Is it normal?
Yes, the old version is slightly faster because we are using larger security parameters in this version.
Hello! I test the program in abeams/sealPIR:master. When I set the polynomial modulu N to 2048, the error is
terminate called after throwing an instance of 'std::logic_error what(): keyswitching is not supported by the context
According to the notes, I tried to set the modulus switching chain
enc_params.set_coeff_modulus(CoeffModulus::Create(N, {27,27}));
The error is: Client: 1/ 2-th decryption layer started. Client: done.Client: 2/ 2-th decryption layer started. terminate called after throwing an instance of 'std::invalid_argument' what(): encrypted is not valid for encryption parameters Aborted
What should I do when I set N to 2048?