Hi everybody,
we have developped with a friend a CUDA based test program for a client-server protocol called Private Information Retrieval (see [1] for a large reference on the subject).
These protocols are a great tool for privacy protection as they allow a user to retrieve a file from a server while avoiding that the server may learn which file has been retrieved. They are in fact used as a tool for many other privacy enhancing protocols.
The server side is accelerated with CUDA, but we were just able to test it on my friends laptop with a 8600M GT. We wondered if someone would be kind enough to test it on more efficient hardware to see how much can we seed-up the process…
The sources (which are only a few dozen lines long) can be found attached to this message.
I get some build problems. While building the server:
orion@sulphur:/tmp/PIR/server$ make
mkdir: cannot create directory `/home/stan': Permission denied
When building the client:
g++ -o RIPClient -I../Common/include src/mainClient.cpp -lntl -lgmp
src/mainClient.cpp:41:26: error: NTL/mat_ZZ_p.h: No such file or directory
src/mainClient.cpp:45: error: ‘NTL_CLIENT’ does not name a type
src/mainClient.cpp:65: error: ‘ZZ_p’ was not declared in this scope