0

I am trying to build an open-source decentralized social network, created and supported by the community (Facebook like).

Using Datastax Enterprise/Cassandra it is possible to setup a working DHT (Distributed hash table) to store the large amount of data within a cluster owned by a single 'business' or 'company'.

This way all the data (like: users/profile data, posts, like, etc.) are stored under control of this company within their own cluster, so that the data are more or less "safe".

However in my case, other people (from the community) should be able to set-up their own node within the cluster to support the cluster and load balancing. This could be anyone (good or evil)...

Meaning that the data between the nodes should not only be encrypted (via SSL/TLS), but also the data ITSELF what is stored on the nodes, should be encrypted as well!

So, my question before continuing using the Datastax software is:

  • Is it possible to store all the data encrypted somehow on every node, so that the cluster can be run by a given individual/random person?

Thank you!

Kind regards, Melroy van den Berg

Melroy van den Berg
  • 2,697
  • 28
  • 31
  • I found something else, called 'cell-level security': https://accumulo.apache.org/1.4/user_manual/Security.html Apache Accumulo offer this kind of feature. – Melroy van den Berg Aug 15 '14 at 21:03

1 Answers1

2

I think it's safe to say that current database technology is based on the concept of controlled access to database servers themselves and that "random persons" (or computer programs!) can only access the database remotely by a well-controlled API.

That said, you could always create your own application layer which mediates between said random users and DSE itself, providing limited administrative access to DSE based on use cases programmed into the application layer itself.

DSE does support transparent data encryption (TDE), but once again that is oriented towards very controlled access to the database servers. You could use it, but the suggested application layer may obviate the need for encryption on the database server(s).

Jack Krupansky
  • 1,021
  • 7
  • 5