This is an old revision of the document!
Users wanting to upload files to the Sia network must have the insurance that their files are kept private and available. This is why Sia uses encryption and erasure coding (or Reed-Solomon algorithm) to ensure redundancy.
Let's describe the uploading process. First the file is striped into chunks of 40MB, then erasure coding is applied on each chunk, expanding them into 30 pieces of 4MB. Erasure coding is like a M-of-N multisig protocol but for files. It allows us to recreate a valid file even if some pieces are missing. This process ensure a high level of redundancy.
Each piece is then encrypted with the Twofish algorithm. It was one of the five finalists of the Advanced Encryption Standard contest, but it was not selected for standardization. Nonetheless, this algorithm is considered very secure.
Finally the pieces are sent to hosts to be stored.
Note that no host will receive more than 1 piece of any given chunk. There are thousands and thousands of chunks but each chunk can have a piece on any host, so hosts end up with thousands of pieces, but none of those pieces belong to more than 1 chunk.