|
|
|
|
|
by bburshteyn
3907 days ago
|
|
Parts travel from the base server deep into the network no more than a specified number of steps (8 by default). The path is always random, it may include loops and even hoping onto the same server. When it reaches the max length, the part returns back along the same path but in reverse order. Before getting the base server, the client encrypts it with the data password supplied by the user. On the forward path, each data part is encrypted (AES) on each server with that server's password, so at the end of the path of N steps it is encrypted N times. When retracting, on each server it gets decrypted, and then re-encrypted again. When it comes back to the base server, it immediately starts another random path forward, again being encrypted moving away at the base over and over, while being decrypted/re-encrypted on the way back. When a user retrieves the file, it asks the base servers to retrieve the relevant parts. The parts travel back to the base servers retracting the path, being decrypted on each of the servers. after all needed parts arrive, the client fetches them from the base parts and decrypts them one last time using the data password. |
|