Patent ID: 8046426

Claim:
A computer-implemented method in which a computer system performs operations using random linear coding for performing distributed data storage in a peer-to-peer network, the method comprising: breaking a file into a plurality of pieces; determining a number of coded-pieces each peer can store; determining the coded-pieces for each peer by taking random linear combination of pieces of the file; calculating an associated code vector for said random combination of pieces; and storing a respective random combination of coded pieces and the associated code vector at each peer of said number of peers, wherein determining a random combination of particular pieces of said plurality of pieces to store at a peer is done in accordance with the formula: f i = ∑ j = 1 m ⁢ β i ⁢ c i wherein f is an element within a peer, m is the number of pieces the file is broken into, β is an element of a finite field of vectors, and c is a particular piece of the file.