IP Library Granted Patent US 9,411,976
Granted Patent B2
US 9,411,976 · App. 14/260,432 · Granted Aug 9, 2016

Communication system and method

Inventor: David Irvine (Troon, GB)
Assignee: MAIDSAFE FOUNDATION
G06F21/6218H04L63/0421H04L63/123H04L67/1097
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,411,976
App. No.
14/260,432
Granted
Aug 9, 2016
Kind
B2
Abstract

There is provided a system, including a network that is defined by its novel approach to privacy, security and freedom for its users, namely privacy by allowing access anonymously, security by encrypting and obfuscating resources and freedom by allowing users to anonymously and irrefutably be seen as genuine individuals on the network and to communicate with other users with total security and to securely access resources that are both their own and those that are shared by others with them. Functional mechanisms that the system are able to restore open communications and worry-free access in a manner that is very difficult to infect with viruses or cripple through denial of service attacks and spam messaging; moreover, it will provide a foundation where vendor lock-in need not be an issue.

Claims (53)

1. A method of protecting data, comprising:

providing a system including a plurality of users, a plurality of data storage nodes and a data communication network linking the plurality of users to the plurality of data storage nodes; and

storing user data corresponding to a currency value authenticated by an authenticating arrangement by:

(i) dividing the user data into a plurality of data chunks;

(ii) swapping data between the data chunks to encrypt and/or obfuscate the data chunks;

(iii) storing the one or more encrypted and/or obfuscated data chunks at the plurality of data storage nodes including maintaining multiple copies of the encrypted and/or obfuscated data chunks at the plurality of data storage nodes;

(iv) recording, in at least one data map stored in encrypted form at one or more locations in the plurality of data storage nodes, locations of the plurality of data storage nodes at which the one or more encrypted and/or obfuscated data chunks are stored; and

(v) from uncorrupted copies of the multiple copies of the encrypted and/or obfuscated data chunks, regenerating one or more replacement encrypted and/or obfuscated data chunks and replacing any copy of the encrypted and/or obfuscated data chunks which has been corrupted; and

registering a change of value ownership at the authenticating arrangement of the system to transfer ownership of the currency value from one user to another.

2. The method as claimed in claim 1 , further comprising generating encrypted and obfuscated data chunks by encrypting the data chunks, followed by obfuscating the data chunks using a modulo division function and/or an XOR function.

3. The method as claimed in claim 1 , further comprising, for each data chunk, using known information from another chunk as the encryption key to encrypt each data chunk separately.

4. The method as claimed in claim 1 , further comprising:

determining a hash value for the user data; and

using the hash value to determine at least one of: sizes of the data chunks and the number of data chunks corresponding to the user data.

5. The method as claimed in claim 1 , wherein swapping data between the data chunks to encrypt and/or obfuscate the data chunks and storing the one or more encrypted and/or obfuscated data chunks at the plurality of data storage nodes further comprise swapping, by a first user, the data between the data chunks to encrypt and/or obfuscate the data chunks and storing, by the first user, the one or more encrypted and/or obfuscated data chunks;

the method further comprising: decrypting and/or de-obfuscating the encrypted and/or obfuscated data chunks by a second user, wherein the first and second users are mutually cooperating parties of a secure data, video and/or audio communication link.

6. The method as claimed in claim 1 , further comprising employing deterministic encryption to encrypt parts of files individually by chunking the data into determinable fixed-size data in a sliding window of several data chunks, wherein the deterministic encryption requires no input except the data of the files itself, and providing in-operation decryption that requires only the at least one data map for executing decryption of the encrypted data chunks.

7. The method as claimed in claim 1 , further comprising employing a finger printing algorithm to create, by hashing, pseudorandom data suitable for encrypting the data chunks and/or the at least one data map.

8. The method as claimed in claim 1 , further comprising:

filtering the user data to generate corresponding metadata; and

making the corresponding metadata available for data mining processes associated with third parties.

9. A computer program product for protecting data, the computer program product residing on a non-transitory computer-readable storage medium and comprising instructions which, when executed by a processor, cause one or more computers to:

(i) divide, into a plurality of data chunks, data corresponding to a currency value which is authenticated by an authenticating arrangement;

(ii) swap data between the data chunks to encrypt and/or obfuscate the data chunks;

(iii) store the one or more encrypted and/or obfuscated data chunks at a plurality of data storage nodes including maintaining multiple copies of the encrypted and/or obfuscated data chunks at the plurality of data storage nodes;

(iv) record, in at least one data map stored in encrypted form at one or more locations in the plurality of data storage nodes, locations of the plurality of data storage nodes at which the one or more encrypted and/or obfuscated data chunks are stored;

(v) regenerate, from uncorrupted copies of the encrypted and/or obfuscated data chunks, one or more replacement encrypted and/or obfuscated data chunks and replace any copy of the encrypted and/or obfuscated data chunks which has been corrupted; and

(vi) register a change of value ownership at the authenticating arrangement of the system to transfer ownership of the currency value from one user to another.

10. The computer program product as claimed in claim 9 , further wherein the instructions, when executed, further cause the one or more computers to generate encrypted and obfuscated data chunks by encrypting the data chunks, followed by obfuscating the data chunks using a modulo division function and/or an XOR function.

11. The computer program product as claimed in claim 9 , wherein the instructions, when executed, further cause the one or more computers to encrypt each data chunk separately using, for each data chunk, known information from another chunk as an encryption key.

12. The computer program product as claimed in claim 9 , wherein the instructions, when executed, further cause the one or more computers to:

determine a hash value for the user data; and

use the hash value to determine at least one of: sizes of the data chunks and the number of data chunks.

13. The computer program product as claimed in claim 9 , wherein the instructions, when executed, further cause the one or more computers to:

swap, by a first user, the data between the data chunks to encrypt and/or obfuscate the data chunks and storing, by the first user, the one or more encrypted and/or obfuscated data chunks;

and decrypt and/or de-obfuscate the encrypted and/or obfuscated data chunks by a second user.

14. The computer program product as claimed in claim 9 , wherein the instructions, when executed, further cause the one or more computers to:

employ deterministic encryption to encrypt parts of files individually by chunking the data into determinable fixed-size data in a sliding window of several data chunks, wherein the deterministic encryption requires no input except the data of the files itself; and provide in-operation decryption that requires only the at least one data map for executing decryption of the encrypted data chunks.

15. The computer program product as claimed in claim 9 , wherein the instructions, when executed, further cause the one or more computers to employ a finger printing algorithm to create, by hashing, pseudorandom data suitable for encrypting the data chunks and/or the at least one data map.

16. The computer program product as claimed in claim 9 , wherein the instructions, when executed, further cause the one or more computers to:

filter the user data to generate corresponding metadata; and

provide the corresponding metadata to third party data mining processes.

17. A method of protecting data, comprising:

providing a system including a plurality of users, a plurality of data storage nodes and a data communication network linking the plurality of users to the plurality of data storage nodes;

determining a hash value for user data corresponding to a currency value authenticated by an authenticating arrangement;

using the hash value to determine sizes of data chunks;

dividing the user data into a plurality of variable-sized data chunks in accordance with the determined sizes;

swapping data between the data chunks to encrypt the data chunks;

storing the one or more encrypted data chunks at the plurality of data storage nodes including maintaining multiple copies of the encrypted data chunks at the plurality of data storage nodes;

using known information from a first of the plurality of data chunks as an encryption key to separately encrypt a second of the plurality of data chunks;

generating encrypted and obfuscated data chunks by obfuscating the encrypted data chunks using a modulo division function;

from uncorrupted copies of the multiple copies of the encrypted and obfuscated data chunks, regenerating one or more replacement encrypted and obfuscated data chunks and replacing any copy of the encrypted and obfuscated data chunks which has been corrupted; and

registering a change of value ownership at the authenticating arrangement of the system to transfer ownership of the currency value from one user to another.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 8, 2015
From: IRVINE, DAVID
To: MAIDSAFE FOUNDATION
Reel/Frame 034663/0063 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2015
From: IRVINE, DAVID
To: MAIDSAFE FOUNDATION
Reel/Frame 034647/0719 →
Priority Claims (2)
GB 0624053.5 · Dec 1, 2006 · national
GB 0709759.5 · May 22, 2007 · national
Continuity (4)
Continuation In Part 13362384 · Jan 31, 2012
Continuation 12476229 · Jun 1, 2009
Continuation PCTGB2007004421 · Nov 21, 2007
Related Publication 20140237614A1 · Aug 21, 2014