That would not give the same privacy benefits, if Alice gets 16 items from a database of a hundred thousand items, once from each of two servers, both of the servers know that there is a 50% chance that she wants one of the 16 items they sent her, and then they know that there is a 1/32 chance that she wants any one of the 16 items they sent her. After only a few requests an individual server could quickly determine which sort of items Alice is interested in. With this, they have absolutely no idea which of the items she wants, unless they get together and share her request strings with each other. She could want any one of the hundred thousand items in the database. Also the way you say it can be done, would require each of the servers to send Alice 16 megabytes of data per request, if the database items are 1 mb each. The way I described in the OP they would each only need to send her 1mb item, so it scales a lot better and has much better privacy guarantees. disclaimer: I did not invent this