TLDR; is it possible to replicate a utility project like FileCoin on BCH today or is there more work needed to enable these scenarios?
FileCoin and perhaps every similar project stores the hash of a file and its addressable name on its chain, and then stores the actual data on what is practically a side chain (i.e. IPFS).
I’m not sure but I suspect the reason these types of “utility” projects invariably end up minting their own assets is because attempting to do the same thing on a major chain introduces specific challenges with incentives.
With something like how Factom used to be, or Counterparty is now, you might replicate the hash and address aspect on BCH and pay miners to store that data in a transaction in a block. But then you’re left maintaining the side chain and your user has already paid BCH, leaving potentially nothing left for the side chain network providing the storage and bandwidth of the files the user wants to consume.
If you wanted to make “Dropbox for BCH”, how could you incentivize others to store and serve your files? There would have to be a continuous source of (fair) profit to continuously serve files.
The idea of a smart contract between the person consuming the files and the person storing and/or serving them is natural, but you would have to somehow invalidate that contract or not sign it until you were sure the service was good (“proof of replication”, “proof of quality”, etc.), so the contract has to be a revolving door of sorts where providers come and go. Just like an exchange, but with a fitness function that decides whether the transaction goes through or not.
But then the utility network is de-facto a mediator/escrow between two parties which becomes problematic, approaching “layer 2”. To say nothing of how to trust the data oracle that decides whether the client got the files the way they expected.
So I must be missing a critical distinction, because many people say that alts are not necessary due to the existence of op_codes and the ability to store arbitrary data on Bitcoin.
Replicating FileCoin has to either be a use case expressible as a smart contract with a very short time window plus a fitness function, or are we going to need to literally store the files on chain? I don’t know enough about chain economics, but wouldn’t you need to buy an entire block worth of transactions to store a 32MB-ish block of data?