  Decentralized Storage Networks (DSNs) can gather storage resources from
mutually untrusted providers and form worldwide decentralized file systems.
Compared to traditional storage networks, DSNs are built on top of blockchains,
which can incentivize service providers and ensure strong security. However,
existing DSNs face two major challenges. First, deduplication can only be
achieved at the directory-level. Missing file-level deduplication leads to
unavoidable extra storage and bandwidth cost. Second, current DSNs realize file
indexing by storing extra metadata while blockchain ledgers are not fully
exploited. To overcome these problems, we propose FileDAG, a DSN built on
DAG-based blockchain to support file-level deduplication in storing
multi-versioned files. When updating files, we adopt an increment generation
method to calculate and store only the increments instead of the entire updated
files. Besides, we introduce a two-layer DAG-based blockchain ledger, by which
FileDAG can provide flexible and storage-saving file indexing by directly using
the blockchain database without incurring extra storage overhead. We implement
FileDAG and evaluate its performance with extensive experiments. The results
demonstrate that FileDAG outperforms the state-of-the-art industrial DSNs
considering storage cost and latency.
