4 ms·
Great, X and Y have infringed the copyright for both A and B. I'm not convinced they don't have more legal exposure rather than less (if B is copyrighted too).
by greenshackle2 6y ago
Great, X and Y have infringed the copyright for both A and B. I'm not convinced they don't have more legal exposure rather than less (if B is copyrighted too).
- amelius 6y agoThe main point is that there will be nobody in court in the first place. Assume you have published random block A. Now I claim that you have infringed copyright of a work because XORing your A with my C gives that work. I hope you can agree that I can't sue you based on that. And this is exactly how this system works.
- Kalium 6y agoIf I need your A in order to produce the copyrighted work, it seems likely to me that the argument will be made that it's a derivative work or another way of copying the copyrighted work. It might event work. It would certainly be expensive to find out. As a rule, trying to get clever with technology to get around the legal system rarely works well. Especially when you can't afford to defend yourself.
- LukeShu 6y agoThe point being made is that the system creates such deniability that it's impossible to say who the perpetrator is. Let A and B be two data blocks produced by different people, and C be a copyrighted work. It becomes known that A⊕B⇒C, and so the copyright holder of C would like to sue someone. It is obvious that either the person who produced A or the person who produced B is infringing on the copyright of C. However, it is impossible to say which one it is; it is impossible to say whether A is a derivative work of B and C (B⊕C⇒A) or if B is a derivative work of A and C (A⊕C⇒B). (Of course, good luck explaining that to a judge.) Let's iterate on that more. So A and B a blocks on the network. Yet a 3rd person publishes some freely-licensed works; they F1 and F2. In order to be stored in OFF, they get xor'ed against existing blocks, and just so happen to xor against A and B. So A⊕F1⇒A' and B⊕F2⇒B'. So someone wanting to download F1 will download A and A', then get F1 by A⊕A'⇒F1. Neither the person publishing F1 and F2 nor the person downloading them have any idea that A⊕B⇒C. So now someone lawfully downloading F1 and F2 appears to be downloading C, because the blocks they're downloading are [A, B, A', B']; and [A, B] are what it takes to infringe on C. But they had no idea that A⊕B⇒C, they were just interested in F1 and F2. So now you can't say that downloading A and B together indicates unlawfully downloading C. (Again, good luck explaining that to a judge.) So the point is to make it really hard to say who did what.
- Kalium 6y agoMaybe it's just me, but doesn't this make it exceptionally clear that multiple people have colluded to both do a thing and hide who was the responsible party? I think the US legal system might have tools for handling such groups of people. I'm reasonably sure this isn't unprecedented, except perhaps in the technological details. I think it might strain credulity that these "random" blocks "just happen" to have these particular properties. So much so that I doubt the argument would stand in face of the argument that F1 and F2 were deliberately crafted derivative works of C, made in an effort to allow piracy of C.
- LukeShu 6y ago> multiple people have colluded Yes, everyone using OFFSystem is colluding to make it hard to tell who did what. There are legitimate reasons one someone might want to engage in such a system--including privacy. It's the same thing with Tor; everyone with a Tor node is colluding to make it hard to tell who's talking with what other nodes. > it might strain credulity that these "random" blocks "just happen" to have these particular properties The OFFSystem is designed such that blocks do "just happen" to have those particular properties. Any new thing put on the OFFSystem will make use of many random blocks that are already on the OFFSystem. For simplicity, in the examples I gave, storing 1 new data block used just 1 existing data block, but that number is configurable; the default is 2. So when a user stores F in to the OFFSystem, the software will randomly select 2 existing data blocks on the network (S, R), and combine F with them in order to store it: S⊕R⊕F⇒data-block-to-store; the software having having no idea what S and R have previously been used for. For simplicity, I've also been assuming that a file you want to store fits in 1 block; a source block is 128KiB; storing a file larger than that will take storing many blocks. So in all, by default, storing a file will make use of 2×(filesize/128KiB) randomly-selected data blocks already on the network. The idea is that after a short time, virtually every data block on the network will have many unrelated uses. It would be entirely plausible that someone has both a legitimate use for A (e.g. F1) and a legitimate use for B (e.g. F2) with no one involved in that legitimate use having any idea that together they have the illegitimate use A⊕B⇒C, because the whole system was designed to make that likely.
- richardwhiuk 6y agoHow were A and C constructed? Were they constructed from the derivative work? Or did they choose or generate A and C so that A xor C produces the derived work? In all of those cases, they are still derivative work.
- deleted 6y ago[deleted]