You could have a protocol where every block of the file is actually two "random" blocks XOR'd together, but this doesn't really work. If you create a new 1GB torrent, you'll need 1GB of new (never seen before) blocks with ~100% probability, so it will be obvious who's seeding the data.
Or you could make the block size smaller (e.g. 1 bit) and tell the lawyers to piss off because 0 and 1 are public domain.
Off-topic meta discussion about that second link you posted. It is an example of a fourth-level municipal domain[0], which are a relic of the past internet. Sooke is a municipality on Vancouver Island.
Sadly, new domains of this sort were discontinued in 2010. A cool relic of the internet past and massive geek cred. I remember these URLs from my childhood and they make me very nostalgic.
> You could have a protocol where every block of the file is actually two "random" blocks XOR'd together
One implementation of this is the "Owner-Free File System"[0], but it is no longer being maintained.
> If you create a new 1GB torrent, you'll need 1GB of new (never seen before) blocks
If you XOR your 1GB file (X) with 1GB of blocks that already exist on the system (Y), you get a new set of 1GB blocks (Z), but it will be hard for an observer to prove that your Z blocks don't actually pre-date Y.
Your defence would be that someone generated Y based on your Z in order to frame you as having created X, when actually your Z, when combined with another set of random-looking blocks Y2 produce a different 1GB file, X2, which is completely legitimately.
Even if people aren't scraping the network to record the order of block creation, it will be mighty suspicious when the Y blocks are scattered randomly across the network, and the Z blocks are conveniently hosted in one place.
> Even if people aren't scraping the network to record the order of block creation
I'm not sure if "scraping the network" is possible if chunks have unguessable names. Also, it's possible that someone could have a file shared among friends (over TLS), for years, without it being publicly announced.
> it will be mighty suspicious when the Y blocks are scattered randomly across the network, and the Z blocks are conveniently hosted in one place.
I suppose it depends on how blocks are distributed in the system. If the blocks of Y are all served from y.com and you host your Z blocks on z.com, then both hosts will look equally suspicious is Y XOR Z produces an infringing file X. The owner of z.com just needs to be able to credibly claim that y2.com was already hosting the Y2 that XORs with Z to produce a legitimate file.
Alternatively, a single node could host Z, Y, and Y2, all created by users, with no logs kept of when each block was created or requested (and no search/listing function). Such wilful ignorance may not impress a court, but is roughly equivalent to running a non-logging VPN, or a chat service that doesn't retain metadata, or a Tor node, or an online encrypted backup service. The service could even offer to follow a DMCA takedown procedure, in case non-XORed non-encrypted blocks were stored on it.
Or you could make the block size smaller (e.g. 1 bit) and tell the lawyers to piss off because 0 and 1 are public domain.