githubEdit

Glossary

Authoritative definitions and proper usage for all Filecoin terminology, including sectors, storage providers, sealing, and blockchain concepts. The definitive reference for understanding Filecoin tec

This comprehensive glossary provides definitions for all Filecoin terminology, including detailed explanations of sectors, storage mechanisms, and network roles. Use this as your definitive reference for understanding Filecoin technical concepts.

Address

In the Filecoin network, an address is a unique cryptographic value that serves to publicly identify a user. This value, a public key, is paired with a corresponding private key. The mathematical relationship between the two keys is such that access to the private key allows the creation of a signature that can be verified with the public key. Filecoin specifically employs the Boneh–Lynn–Shacham (BLS) signature scheme for this purpose.

Block

In a blockchain, a block is the fundamental unit of record. Each block is cryptographically linked to one or more previous blocks. Blocks typically contain messagesarrow-up-right relating changes to some state (for example, financial records) tracked by the blockchain.

Blockchain

Fundamentally, a blockchain is a system of record in which new records, or blocksarrow-up-right are cryptographically linked to preceding records. This construction is a foundational component of secure, verifiable, and distributed transaction ledgers.

Block height

The height of a blockarrow-up-right corresponds to the number of epochsarrow-up-right elapsed before the block was added to the blockchain. The height of the Filecoin blockchainarrow-up-right is defined to be the maximum height of any block in the blockchain.

Capacity commitment

If a storage provider doesn’t find any available deal proposals appealing, they can alternatively make a capacity commitment, filling a sectorarrow-up-right with arbitrary data, rather than with client data. Maintaining this sector allows the storage provider to provably demonstrate that they are reserving space on behalf of the network.

CommP

The commitment phase of the Proof-of-Replication (PoRep) process. PoRep is a mechanism used to verify that a storage provider is storing data on behalf of a client by requiring the provider to prove that they have replicated the client’s data to their storage space.

Content IDentifier (CID)

A self-describing format for referencing data in distributed information systems by it’s contents, rather than its location using cryptographic hashing and self-describing formats. It is a core component of IPFS and IPLD, which are in turn components of Filecoin.

Collateral

In order to enter into a storage dealarrow-up-right, a storage providerarrow-up-right is required to provide FILarrow-up-right as collateral, to be paid out as compensation to a client in the event that the provider fails to uphold their storage commitment.

Deal

Two participants in the Filecoin network can enter into a deal in which one party contracts the services of the other. The Filecoin specification currently details storage deals (in which one party agrees to store data for the other for a specified length of time) and retrieval deals (in which one party agrees to transmit specified data to the other).

Election

Every epocharrow-up-right, a small subset of Filecoin storage providersarrow-up-right are elected to mine a new blockarrow-up-right for the Filecoin blockchain. A provider’s probability of being elected is roughly proportional to the share of the Filecoin network’s total storage capacity that they contribute.

Epoch

Time in the Filecoin blockchain is discretized into epochs that are currently thirty seconds in length. Every epoch, a subset of storage providers are elected to each add a new block to the Filecoin blockchain via Winning Proof-of-Spacetimearrow-up-right.

FIL

FIL is the name of the Filecoin unit of currency; it is alternatively denoted by the Unicode symbol for an integral with a double stroke (⨎).

Faucet

A faucet is a service that provides free FILarrow-up-right. Typically, faucets are run for the benefit of new users in a network, providing them with the necessary seed capital to begin making transactions.

Fault

When a storage providerarrow-up-right fails to complete Window Proof-of-Spacetimearrow-up-right for a given sector, the Filecoin network registers a fault for that sector, and the provider is slashedarrow-up-right. If a storage provider does not resolve the fault quickly, the network assumes they have abandoned their commitment.

Filecoin

The term Filecoin is used generically to refer to the Filecoin project, protocol, and network.

Finality

Finality refers to the immutability of messages and state recorded to the Filecoin blockchain. As new blocks are added to the blockchain, it becomes more and more difficult for older blocks to be altered, until they become effectively impossible to modify. The finality period is the amount of time that must elapse before a block is considered completely immutable. In the current mainnetarrow-up-right, this is configured as 900 epochsarrow-up-right.

Gas

Gas is a property of a messagearrow-up-right, corresponding to the resources involved in including that message in a given blockarrow-up-right. For each message included in a block, the block’s creator extracts a fee from the message’s sender; this fee is proportional to the message’s gas.

Mainnet

A portmanteau of “main” and “network, mainnet is a term used to refer to the predominant public-facing network of the Filecoin project and community. The mainnet embodies an expectation of widespread adoption and permanence; changes to its protocol are subject to the adoption of the network participants.

If used as a proper noun, capitalize the term: “I am providing on Mainnet.”

Message

The term message is used to refer to data stored as part of a blockarrow-up-right. A block can contain several messages.

Merkle Directed Acyclic Graph

Abbreviated as Merkle DAG. A graph data structure where nodes:

  • Have a unique identifier that is the hash of the nodes contents

  • Are directionally related to other nodes

  • Never form a closed loop

Merkle DAGs are a fundamental component for the representation of relationships between content-addressed data in IPLD, which is in turn used by Filecoin.

Miner

The Filecoin project uses the term provider to refer to participants in the network who provide a service of value to a client. Other blockchains, like Ethereum and Bitcoin, use the term miner. At present, the Filecoin specification recognizes two provider types: storage providersarrow-up-right and retrieval providersarrow-up-right.

Pledged storage

Storage capacity that a provider has promised to reserve for the Filecoin network via Proof-of-Replicationarrow-up-right is termed pledged storage.

Proof-of-Storage

Many blockchain networks are underpinned by the notion that participants supply something of value to the blockchain - a contribution that is hard to fake, but which, if actually made, can be trivially verified. Blockchains based in this approach are often said to require “Proof-of-X”, where X is the valued contribution. The Filecoin blockchain values contributions of storage capacity; it is predicated upon a novel Proof-of-Storage construction, distinguishing it from other blockchains that, as is most often the case, require a contribution of computing power.

As a term, Proof-of-Storage refers to the design elements of the Filecoin protocol that allow one to guarantee (to some very high tolerance) that participants that claim to be contributing a given amount of storage are indeed fulfilling that pledge. In fact, Filecoin’s Proof-of-Storage construction provides for a much stronger claim, allowing one to efficiently verify that a participant is storing a particular piece of data, without requiring that one have a copy of the file itself.

Note: “proof” here is used in an informal sense - typically, these proofs take the form of a probabilistic argument, rather than a concrete proof; that is, it might technically be possible to convince other participants that one is making a contribution one is not, but the possibility is so vanishingly slight as to border on impossibility.

Proof-of-Replication (PoRep)

Proof-of-Replication is a procedure by which a storage providerarrow-up-right can prove to the Filecoin network that they have created a unique copy of some piece of data on the network’s behalf.

Proof-of-Spacetime (PoSt)

Proof-of-Spacetime is a procedure by which a storage-providerarrow-up-right can prove to the Filecoin network they continue to store a unique copy of some data on behalf of the network. Proof-of-Spacetime manifests in two distinct varieties in the present Filecoin specification: Window Proof-of-Spacetimearrow-up-right and Winning Proof-of-Spacetimearrow-up-right.

Quality-adjusted storage power

The storage power a storage providerarrow-up-right earns from a storage deal offered by a verified clientarrow-up-right will be augmented by a multiplier. Power totals that take into account this multiplier are termed quality adjusted.

Retrieval provider

A retrieval provider is a Filecoin participant that enters retrieval dealsarrow-up-right with clients, agreeing to supply a client with a particular file in exchange for FILarrow-up-right. Note that unlike storage providersarrow-up-right, retrieval providers are not additionally rewarded with the ability to add blocks to the Filecoin blockchain; their only reward is the fee they extract from the client.

Seal

Sealing is one of the fundamental building blocks of the Filecoin protocol. It is a computation-intensive process performed over a sectorarrow-up-right that results in a unique representation of the sector. The properties of this new representation are essential to the Proof-of-Replicationarrow-up-right and the Proof-of-Spacetimearrow-up-right procedures.

Sector

Storage providers store data on behalf of the Filecoin network in fixed-size blocks of data called sectors.

Slash

When a faultarrow-up-right is registered for a sectorarrow-up-right, the Filecoin network will slash the storage providerarrow-up-right that is supposed to be storing the sector; that is, it will assess penalties to the provider (to be paid out of the collateralarrow-up-right fronted by the provider) for their failure to uphold their pledge of storage. When slashing takes place, the power a provider earns for the associated sector is subtracted from the provider’s total power for the purposes of electionarrow-up-right.

Storage provider

A storage provider is a Filecoin participant that stores data on behalf of the network. Storage providers are rewarded for this service through payments by clients that contract their services, as well as by periodic authorization to extend the Filecoin blockchainarrow-up-right with blocksarrow-up-right of their own creation. When they create a block, storage providers are rewarded with newly minted FILarrow-up-right, as well as the transaction fees they can levy on other participants seeking to include messagesarrow-up-right in the block.

Storage power

A storage provider’sarrow-up-right storage power is a value roughly proportional to the amount of storage capacity they make available on behalf of the network via capacity commitmentsarrow-up-right or storage dealsarrow-up-right. Storage power is used to select storage providers for rewards in proportion to their contributions to the total network storage capacity.

Zero-knowledge succinct non-interactive argument of knowledge (zk-SNARK)

An argument of knowledge is a construction by which one party, called the prover, can convince another, the verifier, that the prover has access to some piece of information. There are several possible constraints on such constructions:

  • A non-interactive argument of knowledge has the requirement that just a single message, sent from the prover to the verifier, should serve as a sufficient argument.

  • A zero-knowledge argument of knowledge has the requirement that the verifier should not need access to the knowledge the prover has access to in order to verify the prover’s claim.

  • A succinct argument of knowledge is one that can be “quickly” verified, and which is “small”, for appropriate definitions of both of those terms.

A zero-knowledge, succinct non-interactive argument of knowledge (zk-SNARK) embodies all of these properties. Filecoin utilizes these constructions to enable its distributed network to efficiently verify that storage providersarrow-up-right are storing files they pledged to store, without requiring the verifiers to maintain copies of these files themselves.

Testnet

A portmanteau of “test” and “network, testnet is a term used to refer to one of the primary Filecoin testing networksarrow-up-right.

Note: if used as a proper noun, capitalize the term. For example, “I am providing on Testnet.”

Tipset

A tipsetarrow-up-right is a set of blocksarrow-up-right that each have the same heightarrow-up-right and parent tipset; the Filecoin blockchainarrow-up-right is a chain of tipsets, rather than a chain of blocks.

Each tipset is assigned a weight corresponding to the amount of storage the network is provided per the commitments encoded in the tipset’s blocks. The consensus protocol of the network directs nodes to build on top of the heaviest chain.

By basing its blockchain on tipsets, Filecoin can allow multiple storage providersarrow-up-right to create blocks in the same epocharrow-up-right, increasing network throughput. By construction, this also provides network security: a node that attempts to intentionally prevent the valid blocks of a second node from making it onto the canonical chain runs up against the consensus preference for heavier chains.

Verified client

To further incentivize the storage of “useful” data over simple capacity commitmentsarrow-up-right, storage providersarrow-up-right have the additional opportunity to compete for special dealsarrow-up-right offered by verified clientsarrow-up-right. Such clients are certified with respect to their intent to offer deals involving the storage of meaningful data, and the power a storage provider earns for these deals is augmented by a multiplier.

Window Proof-of-Spacetime (WindowPoSt)

Window Proof-of-Spacetime (WindowPoSt) is the mechanism by which the commitments made by storage providersarrow-up-right are audited. It sees each 24 hour period broken down into a series of windows. Correspondingly, each storage provider’s set of pledged sectorsarrow-up-right is partitioned into subsets, one subset for each window. Within a given window, each storage provider must submit a Proof-of-Spacetimearrow-up-right for each sector in their respective subset. This requires ready access to each of the challenged sectors, and will result in a proof compressed via zk-SNARKarrow-up-right being published to the Filecoin blockchainarrow-up-right as a messagearrow-up-right in a blockarrow-up-right. In this way, every sector of pledged storagearrow-up-right is audited at least once in any 24 hour period, and a permanent, verifiable, and public record attesting to each storage provider’s continued commitment is kept.

The Filecoin network expects constant availability of stored data. Failing to submit WindowPoSt for a sector will result in a faultarrow-up-right, and the storage provider supplying the sector will be slashedarrow-up-right.

Winning Proof-of-Spacetime (WinningPoSt)

Winning Proof-of-Spacetime (WinningPoSt) is the mechanism by which storage providersarrow-up-right are rewarded for their contributions to the Filecoin network. At the beginning of each epocharrow-up-right, a small number of storage providers are electedarrow-up-right to each mine a new blockarrow-up-right. As a requirement for doing so, each provider is tasked with submitting a compressed Proof-of-Storagearrow-up-right for a specified sectorarrow-up-right. Each elected provider who successfully creates a block is granted FILarrow-up-right, as well as the opportunity to charge other Filecoin participants fees to include messagesarrow-up-right in the block.

Storage providers who fail to do this in the necessary window will forfeit their opportunity to mine a block, but will not otherwise incur penalties for their failure to do so.

Was this page helpful?arrow-up-right

Last updated