Filecoin utilizes idle hard drive space and bandwidth to provide data storage and retrieval services in an open market, allowing anyone to participate as a storage provider and to monetize spare hard drive capacity.
The Filecoin blockchain has a built-in self-healing process where faulty storage nodes are detected and their stored files are redistributed to reliable nodes.
The Filecoin network uses the FIL token to incentivize various node types to contribute to the network. Node types include:
Chain Verifier Node: Synchronizes the Filecoin blockchain and validates the latest blocks to reach a consensus state.
Client Node: Builds on top of a Chain Verifier Node and must be implemented by any application that is building on the Filecoin network.
Storage Miner Node: Forms contracts with clients to store data for a period of time. Storage Miner Nodes can earn FIL whenever new blocks are created, and by completing storage contracts and adding new messages to blocks.
Retrieval Miner Node: Forms contracts with clients to retrieve a particular set of data. Retrieval Miner Nodes earn FIL by completing data retrieval contracts. Retrieval Miner Nodes situated in a well-placed locations would earn more as they facilitate more transfers, and provide a better service due to lower latency.
FIL will also be used as a collateral for miners to participate in the Filecoin ecosystem. The collateral required will be proportional to the storage spaceprovided by miners. Filecoin has three different collateral mechanisms:
Inital Pledge Collateral: Direct upfront collateral to participate in the economy. This collateral will be slashed if the miner is found to have acted maliciously.
Block Reward Collateral: To reduce upfront collateral, block rewards are also used as collateral, block rewards for miners are subject to slashing in the event that a sector is terminated before its expiration.
Storage Deal Collateral: Storage provided by the storage provider to collateralize deals.
Filecoin uses two proofsystems to verify secure data storage: