Analyzing the Order Factor of Query Matrix in Private Information Retrieval Protocol for Outsourced Databases

.


Introduction
A PIR scheme is a protocol in wh ich user retrieves a record or set of records out of n records fro m the database which has been outsourced by hiding the contents from service providers or database admin istrators. In order to preserve data privacy replicas of the database have been stored at the service provider end. Since service provider does not know the result of the query has calculated from which copy of the database. Another way is to allow a user to retrieve privately an element of a non-replicated database known as single-database PIR schemes.
In single-database PIR schemes data privacy is related to the intractability of mathematical problem, instead of being based on the assumption that different replicas exists and do not collude against their users [1][2] [3] .
PIR schemes usually require the an enormous amount of computational power, but considering the huge number of applications these protocols have, it is important to develop practically imp lemented protocols that provide acceptable performances for as many applications as possible [1] .
A major issue with single-database PIR schemes is that, they are computationally expensive. Indeed, in order to answer a query, the database must process all of its records.
If in a given protocol, it doesn't process some set of records, the database administrator will learn that, the user is not interested in them. This would reveal to the database administrator about partial informat ion on which record the user is interested in, and therefore it is not as private as downloading the whole database and retrieving locally the desired entry.
The computational cost for a server replying to a PIR query is therefore linear on the database size. Moreover, number-theoretic schemes have a very expensive cost per bit mu ltip licat ion over a large modulus in the database. This limits both the database size and the throughput shared by the users.

Overall Design of Proposed Model
In a PIR protocol, when a user wants to retrieve an element of index i fro m a database, he will use a PIR query generation algorith m with input i and send the resulting query to the database as shown in Figure1. In this paper we are focusing on the two security issues with respect to outsourced databases such as data privacy and data confidentiality. Since PIR p rotocol involves matrix operations, the performance of the system is also a major issue. In order to optimize the performance of the system, analysis of the existing PIR implementation is required. The two security issues are described as: Data pri vacy: Clients should not get more informat ion than what they are querying on the server. Data confi dentiality: Outsiders and even the server's operators (database admin istrators) should not be able to see the outsourced data contents in any case (including when a client's query is performed on the server). Usually it is achieved using encryption of databases.
The model of PIR scheme given in [2], [3] is a lattice based imp lementation of PIR. We have added encryption as an addition to existing method and analysed the order of query matrix used in PIR algorith ms. A reply generation contains matrix mult iplication operations it handles the data privacy issue and encryption of the result gives the data confidentiality. It has been is described in three phases as shown below:

Request Generati on
The scheme has three global integer parameters: 2N, the dimension of the lattice and special parameters p and q. The database is described as a set of n elements, and we note i 0 the index of the database element the user is interested in. To obtain a PIR request, the user will follow: 1) Note l 0 = ┌ log (n × N) ┐ + 2 and set q as 2 2 × l 0 −1 and p as a prime larger than 2 3 × l 0 .

3) Fo r each
by mu ltip lying M to the left by a random invertible matrix Pi. 4) Generate the random scramb ling matrix Δ as a 2N × 2N random invertible matrix over Z/pZ.

5) For each i ∈ {1 · · ·N}\i0 generate the soft noise matrix
Di, a N ×N random matrix over {−1, 1}, and co mpute the soft 6) Generate Di 0 , the hard noise matrix, by: • generating a soft noise matrix, • mu ltip lying each diagonal term by q.

Answer Encodi ng
Each element of the database ai (for i ∈ {1, · · ·, n}) is encoded as an L × N matrix Ai of l 0 -bit scalars. To answer to the PIR reply the database follows. 1) Note A =[A1| · · · |An] the colu mn concatenation of the database element matrices and t the row concatenation of the query matrices. 2 The result is a L × 2N matrix over Z/pZ. As a database element is encoded as a L×N matrix of l 0 -bit scalars and p is 3l0-b it long, the expansion factor of the reply will be F = 6.

Informati on Extracti on
In order to simp lify the description of the informat ion extraction protocol we define how to operate for each row vector of the reply. In practice some of these operations are aggregated and done over many row vectors at the same time.
To extract the information fro m a ro w vector Vx of the database reply, the client operates in two phases. First it unscramb les the vector and recovers the noise included in it (steps 1 and 2 of the protocol), and then he will filter out this noise to obtain the information (steps 4 and 5). Note that steps 4 and 5 are not done over Z/pZ, as they correspond to an Extended Euclid's division over Z. Query generation Algorith m creates PIR query fo r the input index i. The database content for the index i will be encrypted with AES encryption algorithm and its result is then converted into equivalent integers, which then will be converted into integer matrix form. The elements of this matrix are co mb ined with the PIR query using the reply generation algorithm. The result is then sent back to the user. Finally, the user will decode the answer through a reply decoding algorithm & A ES decryption algorith m.

Description of the Proposed Scheme
In this section we describe an overview of our proposed PIR scheme. There are two factors which we have mo re focused on in this paper: • The bottleneck in PIR schemes is reply generation and it is not reply extraction [1] .
• The GPGPU (General-Pu rpose computation using Graphics Processing Units) computations will be on the common operations of Query generation & reply generation phase [1] .
In our proposed scheme the query generation (without common operation in reply generations) and reply extraction have been implemented straightforwardly. We describe a database as a set of n records. Each record a i is split into l 0 -bits sub-elements and represented as a matrix A. N and l 0 are being two security parameters. Noting down S max the size of the largest record in the database, parameter L is set to L = ┌ S max / (N × l 0 ) ┐. If a record is smaller than (L × N × l 0 ) then end of the matrix filled up with a standard padding techniques like filling all the remaining elements of the matrix as '0's.  If a user wants to retrieve a record from the database, we are assuming that he provides the index i in order to analyse the PIR internals in detail. Then the PIR query generation algorith m creates a query formed of n matrices B 1 . . . B n , one for each record in the database. Each matrix is of order N × 2N with scalars in Z/pZ, p being a 3×l 0 -bit prime. If the user wants to retrieve a record a i0 query generation algorithm generates a query such that the i 0 th matrix has a special property that is invisible to the server.
This property ensures that the user will be able to ext ract the desired record fro m the server reply. The user sends the query to the server (service provider) hosting the database to generate the reply and the server mu ltiplies the column concatenation of the database record matrices and the row concatenation of the query matrices. The resulting matrix, which we have note down as R, is a L × 2N matrix with 3l 0 -bit scalars (in Z/pZ) and thus, is six times larger than a database record matrix.

Implementation
We have imp lemented the PIR scheme in non-concurrent paradigm. As per as practical imp lementation is concern, it is very clear that, in this particu lar scenario there is a need of having parallelis m. Currently we have non-concurrent version of lib rary which containing all operation needed for PIR. We have executed all the PIR operation on following configuration: Processor: Intel C2D T660 2.2 GHz RAM: 4 GHz Operating System: Ubuntu 9.10 Programming Language: Java 6

Experimentation and Results
Following Graph 1 plotted against Execution t ime vs. Value o f dimensioning factor (N ). As per the graph if dimensioning factor N increases linearly then the execution time T increases exponentially. E.g. suppose the number of records is 1024 or 512 and when the value of N > 6 execution time has tremendous increase as shown in the graph. Hence for high dimensioning value there is need of concurrency.

Reply Generation of GPGPU
The concept of general-purpose computation using graphics processing units (or GPGPU) has arisen in recent years. GPGPU applications make use of graphic processing units (GPU) as massively parallel processors, turned away fro m their original purpose but nonetheless highly efficient in numerous application domains. Co mbin ing both speed and bandwidth due to their parallel architecture (and accessible cost), GPU are an attractive choice for co mplex computations compared to trad itional CPU since they exhib it significant perfo rmance overheads, and are supported by constantly improving high-level p rogramming language provided by both GPU vendors and the academic community.
GPU have now evolved from highly-specialized graphics processors into powerful, flexib le programmable un its, and become increasingly popular for a wide range of applications. All the existing PIR schemes are highly parallelizable. However, in the classic schemes, the basic operation for reply generation (per b it on the database) is a mult iplication over a 1024 or 2048 bit modulus. [1] Our proposed model will parallelize all co mmon basic operations in reply generation as well as Query matrix generation phase. The stream processors that form a GPU are not adapted to do directly such operations and trying to do a straightforward parallelization would result in very poor performance. The correct approach is to use the whole set of stream processors to split an exponentiation among them. This can be efficiently encoded through SIMD (Simp le Instruction Multiple Data) instructions, on which GPUs are specialized. Each of these operations can be executed inside a single stream processor and the large number of these processors in modern GPUs results in a significant performance improvement.

Conclusions
Our model of Private Information Retrieval protocol gives an idea of data privacy as well as data confidentiality with the help of encryption algorithm like AES algorith m. This paper shows relation between the value of dimensioning parameter N & execution time T (in sec.) on non-concurrent implementation. This paper also propose the use of GPGPU (General-Purpose computation using Graphics Processing Units) for imp lementation to increase speed of execution of protocol, which will leads to practical usability of PIR schemes in real world.