Patent attributes
A computerized method, program product, and a service to protect critical data by first splitting the data into N streams. A partitioning algorithm is applied to each stream to remove a portion of the data, the portion removed from one stream being included in another stream. Each stream is then encrypted with its own encryption key. Each encrypted stream plus at least two encryption keys not used to encrypt a particular encrypted stream are stored in a separate and unique memory location, such as a different server having its own security access procedures that are different from other servers and which may be located in different cities or countries. Retrieval of the data requires a program to know the memory locations of the data streams, and the inverse of the partitioning algorithm. Accessing one memory location may yield an encrypted stream and at least one encryption key for a different stream at a different memory location. By applying the inverse of the partitioning algorithm, the missing portions of each stream can be ascertained and the original data stream can be reconstructed.