Outsourced storage enables data owners to host their data on remote storage resources without keeping a local copy so as to target their core business. However, a serious problem is data integrity in the sense that data owners lose their physical control over the remote-stored data. Existing provable data possession protocols are overwhelmingly designed for centralized storage such as cloud, in which the server is assumed dishonest but the client is reliable. Moreover, the centralized storage suffers single-point-of-failure threat. In this paper, to deal with these issues, we propose the notion of IntegrityChain, a decentralized storage framework supporting provable data possession (PDP) based on blockchain. We formalize the system model, in which a data owner can store files to the peers in a blockchain network and check the integrity of the outsourced data periodically by paying some cryptocurrencies while the hosts can earn money if honestly provide storage service and will be punished by losing the pre-made deposit if data loss happens. In the security model, we consider the fairness in trading between a host and a data user and the soundness of the underlying decentralized PDP in this system. We come up with a concrete construction by borrowing the idea of multi-replica PDP and proof-of-retrievability and present the security analysis of the proposal. The evaluation for the construction contain two segments: the offchain part, in which we implement the algorithms locally to test the time consumption, and onchain part, in which we program a smart contract and launch it in a test network to test the gas cost for the functions.
Read full abstract