1. A method for securing a data set, the method steps implemented by a programmed computer system, the method steps comprising: encrypting the data set based on an encryption key to produce an encrypted data set; creating hash information based on a hash operation using the data set; generating data splitting information, wherein the data splitting information is usable to determine into which of a plurality of shares of data a unit of data of the encrypted data set will be placed; separating the encrypted data set into the plurality of shares based on the data splitting information; including in the plurality of shares data indicative of (a) the encryption key and (b) the hash information; and causing the plurality of shares to be stored in respective separate storage locations; wherein the data set is restorable by accessing less than all, but at least a threshold number of, the plurality of shares.