Logo

    CryptoNet is a Protocol Labs initiative.

    🎯

    Synthetic PoRep Impact

    A new PoRep protocol that optimizes storage requirements between PreCommit and ProveCommit without compromising security

    Quick Links

    📊 Motivation

    The PoRep protocol today requires SPs to store ~12x sector size of data created during the replication step until the sector is proven in the on-chain proveCommit step.

    The main reasons of this inefficiency are

    • Current PoRep needs onchain interaction, and for security reason 150 epochs are needed between PreCommit and proveCommit. This means that SP need to keep the 11 layers of SDR for 150 epochs in order to be able to answer proveCommit challenges
    • PoRep challenges during the interactive proveCommit step are chosen from all possible nodes in the graph

    Synthetic PoRep drastically reduces these space needs by reducing the set of challenges that might be chosen during the interactive proveCommit step, without compromising security.

    Moreover, Synthetic PoRep would to allow for an additional 25% sealing throughput (assuming the SP keeps the same computing setup as today).

    🚀 Impact on Filecoin

    Why Synthetic?

    Unique features of Synthetic PoRep

    ‣
    ⭐️ Storage requirement between preCommit and proveCommit cut by more than 90%: from ~400GB to less than 25GB!
    ‣
    ⭐️ 25% additional Sealing Throughput (with same computing setup as today)
    ‣
    Today SP need to have ~500 GiB SSD for sealing a sector. After PC1 and PC2 this storage capacity is mostly filled with the 11 layers of SDR which need to stay there for 150 epochs, before being proved at ProveCommit. With Synthetic PoRep, only a small buffer of less than 25GiB need to be kept around until ProveCommit. This means that with less than 5% more SSD storage available, SP can start sealing a new sector right after completing PC1 and PC2 of the old sector, without need to wait ProveCommit to be over. Note that, given PC1 takes almost 3h and we have 150 epochs between PreCommit and ProveCommit, this result a 25% additional sealing throughput
    ‣
    ⭐️ Optimization achieved without proving overhead for SPs
    ‣
    ⭐️ No need of a new Trusted Setup, minor changes in Actor
    ‣
    ⭐️ Fast to deploy due to similarity with the current PoRep