Table 1: Querying Non-encrypted and Encrypted Databases with Java Interface and Neo4j Interfaces, time in ms.
Query S0 S1 S2 S3 S4 S5 S6 C1 C2 C3
Java interface
Non-encrypted DB 5030.8 5115.7 5256.6 5038.1 4931.1 5326 5455.5 5491.2 5248.8 5216.8
Encrypted DB 5058.4 5092.5 5252.1 5081.8 4881.2 5338.3 5471.9 5478.2 5287.1 5510.4
Slowdown 0.54% -0.45% -0.085% 0.86% -1.012% 0.23% 0.3% -0.24% 0.72% -5.33%
Neo4j interface
Non-encrypted DB 278.5 49 76.3 64.3 68.4 89.1 94.8 63.8 71.8 79.2
Encrypted DB 360.7 46.1 80.3 75.1 41 63 85.2 59.5 40.7 53.8
Slowdown 22.78% -5.92% 4.98% 14.38% -40.6% -29.29% -10.13% -6.74% -43.31% -32.07%
3 RELATED WORK
Security is an important issue in database manage-
ment systems and the data in a database management
system need to be protected from unauthorized ac-
cess. In this paper we have proposed CryptGraphDB
mechanism inspired by CryptDB (Popa et al., 2011;
Popa, 2014), which provides as a provable and prac-
tical privacy against any attack on the database server
or curious database administrators. CryptDB works
by implementing SQL queries as they are implement-
ing on the plain database but on encrypted database.
CryptDB does not change the structure of DBMS, in
order to CryptDB consists of two parts, the first part
is a trusted client-side front-end, which is responsi-
ble of non-encrypted database and the secret Mas-
ter key. Furthermore, the second part is an untrusted
DBMS server, it follows the schema of the encrypted
database. The database server completely evaluates
queries on encrypted data, then the results are sent
back to the client to decrypt them.
Then in (Xie and Xing, 2014) authors proposed
CryptGraph system, which aims to run graph analyt-
ics on the encrypted graph data structures to keep the
user graph data and the analytic results secure. So
they presented CryptGraph to empower the user of
encrypting their graphs before uploading them to the
cloud, and get the results back after analysis the en-
crypted graph in encrypted form, while only the user
who can decrypt them to extract the plain text form.
They have proposed to query its structure by comput-
ing polynomials. In contrast, in our work we aim to
develop a system using not a specialized graph data
structure and encodings, but rather an extension to ex-
isting general purpose graph databases, more in the
spirit of the original CryptDB system.
Our particular set of queries used in the exper-
iments was inspired by (Batra and Tyagi, 2012) in
which a comparative analysis of relational and graph
database querying is presented.
4 CONCLUSIONS
We have proposed CryptGraphDB system allowing to
execute the queries over encrypted graph databases.
We outlined the design of CryptGraphDB and re-
ported on experiments with an initial prototype sys-
tem implemented with Embedded Java API for Neo4j
graph DBMS. We have shown that as performance
concerned CryptGraphDB demonstrates promising
results which warrant further development of the sys-
tem. We have also outlined the future directions in the
development of the encryption adjustment schemes
specific for graph databases, such as property-aware
and traversal-aware schemes. The implementation of
these schemes and investigation of related trade-offs
between efficiency and security is a topic for our fu-
ture research.
REFERENCES
Titan: Distributed graph database. http://titan.thinkaurelius.
com/.
Batra, S. and Tyagi, C. (2012). Comparative analysis of
relational and graph databases. International Journal
of Soft Computing and Engineering (IJSCE), 2(2).
Popa, R. A. (2014). Building practical systems that com-
pute on encrypted data. PhD thesis, Massachusetts
Institute of Technology, Cambridge, MA, USA.
Popa, R. A., Redfield, C. M. S., Zeldovich, N., and Balakr-
ishnan, H. (2011). Cryptdb: Protecting confidentiality
with encrypted query processing. In Proceedings of
the Twenty-Third ACM Symposium on Operating Sys-
tems Principles, SOSP ’11, pages 85–100, New York,
NY, USA. ACM.
Robinson, I., Webber, J., and Eifrem, E. (2013). Graph
Databases. O’Reilly Media, Inc.
Vukotic, A., Watt, N., Abedrabbo, T., Fox, D., and Partner,
J. (2014). Neo4J in Action. Manning Publications Co.,
Greenwich, CT, USA, 1st edition.
Xie, P. and Xing, E. P. (2014). Cryptgraph: Privacy pre-
serving graph analytics on encrypted graph. CoRR,
abs/1409.5021.
Querying Encrypted Graph Databases
451