mhmughees / onion-pir Goto Github PK
View Code? Open in Web Editor NEWLicense: Mozilla Public License 2.0
License: Mozilla Public License 2.0
In this implementation, it seems that the computation between the query vector of first dimension and the database is done by the function "poc_nfllib_external_product()". However, in the paper, this procedure is done by BFV ciphertext-plaintext multiplication.
I wonder if there is any differences between these two implementations.
Hi, just wondering if there are any updates wrt to "--over the course of next few weeks this library will be updated to become more stable" (given last commit was 4 months ago)? I am working on adding basic serialization of the query and keys (I can create a PR once I finish) and just want to make sure I'm working with the latest/stable version of the library to avoid wasting work.
Also, I noticed that running the example with small item sizes causes the client to crash when generating a query.
Any ideas on what could be causing this?
With
uint64_t number_of_items = 1<<10;
uint64_t size_per_item = 30000; // in bytes
everything works fine.
With
uint64_t number_of_items = 1<<10;
uint64_t size_per_item = 256; // in bytes
Main: element index = 1010 from [0, 1023]
Main: FV index = 8, FV offset = 74
Client: index 1/ 1 = 8
terminate called after throwing an instance of 'std::runtime_error'
what(): I/O error: input stream ended unexpectedly
Aborted
In the paper of OnionPIR, the database is represented as a higher-dimensional cube, this will reduce noise in query compression procedure. If we put the noise aside, just focus on computational overhead, it seems that higher-dimensional database brings higher computation cost than lower-dimensional database such as two dimensions.
Is that right?
i found this is only for the know the element‘ index after i read the paper “OnionPIR: Response Efficient Single-Server PIR”. Can the OnionPIR use to keyword retrieval ?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.