Note that any solutions to the problem of ISPs blocking P2P apps that involve a TURN (when STUN tunneling fails or is blocked), VPN, or other server in the middle, defeat the entire point of extracting the value of the bandwidth allocation of users provided by their ISPs, because then one is paying for the bandwidth of the server to relay the shards.
If Storj and MaidSafe max out the consumption of each user's upload bandwidth (thus leeching off users with higher allocations charging the costs to those users' ISPs), they will also be blocked by ISPs. Additionally STUN tunnelling often fails and thus a TURN relay server has to be employed (or using the other peers as relays thus leeching the upload bandwidth of those ISPs who don't block tunneling).
In short, P2P for bandwidth consumption between ISP hosted user accounts is not going to be reliable. Many users will have frustrations when trying to be a storage provider. It will not be the case that every user in the system can also be a storage provider. And it will probably end up being the case that the most efficient storage providers will be hosted on dedicated servers.
In other words, it is a fantasy to think we can get decentralized file storage without paying for it.
We can try to design decentralized, permissionless file systems that correctly incentivize the storage and bandwidth providers, and the users of the system need to pay for it somehow. Whether or not these can remain permissionless given the need to host these on servers is open to further contemplation and study. Most all hosting providers include in their Terms of Sevice a restriction on hosting illegal copyrighted content, so unless one can provide a mechanism for which illegal content is removed from the system, it seems to me that hosts will be forced to ban the protocol (system).
So where I am headed with this line of thinking is that we ought to just give up on illegal content and illegal uses of anonymity. It isn't going to work. It is a fantasy.
Continuing my analysis, the other advantage of decentralized storage is durability and availability. This is a facet of permissionless in the sense that no one entity has a monopoly on the storage. It is not permissionless in the sense of allowing illegal activity as explained upthread (because the storage will hosted on servers, even those are owned/managed by different entities, they all are regulated by the law reflected in the hosts' Terms of Service).
So I am envisioning the possibility to design a system for decentralized file storage where the users pay the storage providers, but the storage providers are decentralized entities (even though they are all high performance hosted providers and not ISP user clients).
In this case, I think microtransactions is the only way it can be done decentralized. If we instead attempt to aggregate a monthly use plan (or similarly analogous aggregations), then some centralized party will be in charge of paying the decentralized entities, so then it is not decentralized.
So therefor I have just identified a potential market for microtransactions that can't be offered by centrally owned cloud services.
Alternatively, Storj and Maidsafe are paying storage providers coins for proving they are storing data, then data is exchanged in a tit-for-tat[1]. If used with ISP user clients as storage providers, this will have performance weaknesses as well as being economically a theft paradigm in support of Net Neutrality oligarchy and taxation (for the reasons I explained upthread). But a user can't do a tit-for-tax exchange if user is not also a storage provider, thus afaics Storj and Maidsafe are forcing every user to be a storage provider. Otherwise they need to use some form of upload bandwidth theft model such akin to Bittorrent's optimistic unchoking. The only way to fix Storj and Maidsafe is for them to adopt a microtransaction payment model so users can pay for the upload and storage costs to decentralized providers.
So therefor I have explained why Storj and Maidsafe are fundamentally flawed. And I have explained why decentralized file storage can ONLY be done with microtransactions.
Next we need to reason about the viability of the markets for decentralized file storage and also the technical viability/tradeoffs. We need to not only think about ability to prove the data has been retained by some provider, but also about how to enforce against the storage of illegal content (otherwise I have argued upthread that the entire plan is flawed since hosts' Terms of Service will likely block protocols/systems which can allow copyrighted material to be stored without recourse by injured parties).
[1] Note
Storj also alludes to microtransactions, so perhaps the tit-for-tat exchange only applies to Maidsafe. I will study this more.