Common PIR schemes only protect the client's privacy, not the server's, while Symmetric PIR(SPIR) can do both.
In many papers, it is mentioned that we can use the Naor and Pinkas method (https://dl.acm.org/doi/pdf/10.1145/301250.301312) to turn a PIR scheme into SPIR one, however when implementing this, I found this method is only useful for one query:
In Protocol 2.1, A use oblivious transfer to pick l keys out of B's 2l keys. This is just allowed to be done once, otherwise A could get most of the 2l keys and decrypt everything she got.
To ensure B's privacy, the database has to change all the 2*l keys (i.e. re-encrypt all the entries) after each query. So I wonder is Naor and Pinkas' method efficient for Symmetric BatchPIR ?