May 15, 2022

How is your data secured on Exa Protocol?

How is your data secured on Exa Protocol?

Exa Protocol is building a network of mobile devices where users in the network share their resources such as their storage space so that others on the network can use it.

Now, the most asked question by the users is “How is my data secure, if it is going to be saved on other people’s devices?” Which is a very reasonable question. So, is your data safe or not?

According to the white paper, before a file can be stored on the network the following three steps are taken:

The First step is Zero Knowledge Encryption

Zero Knowledge Encryption means that no one, except you (not even the service provider) can access your secured data.

This is because the encryption key used for securing the data is available with the data owner itself. This encryption key is not known to anyone in the network.

It’s like securing the vault with an unbreakable padlock which has only one key — that only you possess.

The second step is Data Sharding

When a file is ready to be stored in the network, it is split into multiple segments, called Shards. The shards are then stored in multiple peers. The client has a complete hash table that allows it to get the individual shards from the network back.

The user storing the shard has no knowledge of how many and where all the other shards are stored. Only you have the information their whereabouts.

A single shard, or even all the shards are are somehow compromised by some user, it’s completely useless because:

  1. They do not know how to join the shards to generate the file.
    Eg. Let’s suppose a file was broken down into 20 pieces. It means that there are over 20! ways or ~2.4 Billion Billion ways to assemble the shards out of which only 1 will work.
  2. Let’s say the intruder is somehow lucky and joins the shard, they still will not be able to decrypt the file because the key to decrypt the file is only with you.

Finally, Peers are selected for shard storage are selected based on their reputation score.

Uptime — U
Uptime U is the ratio of time the node was connected to the network to the total time since the node has registered on the network.

Network Performance — Np
Network performance N refers to the average bandwidth of the node while downloading or uploading a shard. The round trip response time, or ping, is also taken into consideration.

GeoLocation — G
A node that is closer to the client is preferred. Nodes that are nearby have a higher probability of low ping. A coarse GeoLocation (~150Km radius, 1ms theoretical ping) is recorded for each peer in the network.

Type of Device — T
A device with a LTE or 5G connection is preferred over a device with just Wifi. A device with WiFi has a higher probability of going offline.

Age of Device — A
Mobile devices typically lasts for 2–3 yrs which means that a newer device will be given a priority.

This results in a reputation score R which is associated with each node during the time of storage of the shard.

R = f (U, Np, G, T, A)

The Protocol prioritizes devices that have high reputation score to store their shards.

We are currently developing Exa Protocol and have released an “Early Access App” that let’s you register your device as a node. With early registration, you will be entitled for 100GB for FREE Lifetime storage on the Exa Netwrok. You can download the app from the play store.