One very important thing : K4R is NOT a P2P file sharing system, at all. File will never be distributed on "millions of computers". K4R is a personal file backup service, and the users that share their disk space cannot access "split and encrypted pieces of the original files that are hosted on their machines", here are samples of the FAQ that can be accessed on the site :
How works Keep4eveR ?
Keep4eveR is based on the principle of community members who wish to secure the digital memories of their lives in mutually trusting their encrypted backups. Once your account created and application installed, you just have to put a copy or the original, in one of the monitored folders by Keep4eveR.
That's it.
Keep4eveR handles encryption and send your data on our servers. These will place a copy of your data on computer
of two other members. At any time, you can request your data restoration. Then they follow the reverse path. After restoration, a decrypted copy will be placed in its original folder on your computer.
What is storage space
You have now understood, the main duty of a Keep4eveR's member is to provide a storage space to place backups of other members. As there are 3 copies of all your files, you must provide a mathematically storage space of size equal to three times what you backup to the system to be viable.
What is Keep4eveR's architecture ?
Everything is based on a servers system located in data center. A database stores information about each file: name, original location, location of each copy as well as information for verifying its integrity. Before leaving his original computer, a file is divided into blocks of 64 KB. Each block is encrypted and is accompanied by an integrity check code (MD5). Then, they are sent to a server which checks integrity to validate reception. The integrity code of each block is stored in database. The blocks are stored in a cache waiting to be sent to storage space. When there are two copies in storage spaces and if system needs to make release space in his cache, all blocks of the same file are deleted from cache.
When copying in a storage space, all blocks of the same file are sent to same storage space. Of course, there's an integrity control on arrival which is compared to the code stored in database. Thereafter, the system periodically polls storage space by calculate integrity of a given block and compares it with code stored in database. If different, the system immediately took a series of measures starting by generate new copies of files in the failed storage space using famous additional 5% of storage space resquested to each member.
When restoring, each block of a same file is re-cached on server with integrity check as required. Then transmitted to the restoration computer with an integrity check and decryption on arrival. It's then recorded on disc, referring to original path.
How security is provided ?
We designed Keep4eveR security to meet several criteria:
- Guarantee that a third party can't read your data.
- Ensure that a restored file is identical to original.
- Early identifie loss of one copy to take appropriate actions.
Here is series of measures implemented to achieve this:
- Each original file is read in blocks of 64 kb that are immediately encrypted using an algorithm RC5 (128 bits, 16 rounds) that provides a high level of invulnerability. The key is different for each member and its size can vary from one member to another.
- Dialogue between members' computers and Keep4eveR is also encrypted. For each member, a new key is generated approximately every three minutes. In fact, when block travel over the Internet, it is doubly encrypted.
- Dialogue between member browser and web server is secured with SSL (https:// and posted padlock). SSL certificate was issued by a trusted third party recognized by almost all browsers. In fact, dialogue has the same level of protection as that used when paying by credit card on a bank site.
- Each time a member logs in to website, IP address is recorded and stored until the next request from the client application. If it's first application connection after installation, or has lost track of key changes, IP address is used to identifie it.
- Before being sent over the Internet, a signature of 128 bits is assigned to each block already encrypted, obtained by a MD5 hash algorithm. After each transmition on Internet and whatever place of arrival (original, cache, storage space), a hash is made and compared with the original signature. If different, block is retransmitted.
- Central database records each block signature. Randomly, there's a comparaison between recorded signature and block hash in storage space. If different, a series of measures are taken to verify storage space integrity. At worst, it's declared lost and each file it contains received a single copy status to generate a new one.
- Rarely, it may happen that the two copies of same file are simultaneously reported lost. In this case, Keep4eveR checks if the original is still in original folder. If so, a new copy to server cache is made. If not, an email is sent to owner, so he could put it again in a backup folder.
Giving "boinc like credits" is a good idea to thank users willing to share their disk space for free, since the solution is free and you won't get money if you share disk space.
Using the backup service for yourself is free too, and you are not obliged to share some disk space (and get "boinc like credits"
to use it.