@nodemaster: No, I'm not talking about copyright infringement, but of illegal content (ie: which you are not legally allowed to have possession of).
Situation 1: You are a web-hosting firm. One day, somebody notifies you that one of the files that is hosted on your servers is actually an encrypted file which can be decrypted using BestCrypt with the password "nasty" and if you do that you will get access to illegal content. Are you required to check, notify the authorities and delete the file? The mail in which you were informed is equivalent with clicking Report Abuse on Youtube - you are required to investigate to avoid legal problems.
Situation 2: You are hosting an ISO image of some Linux distribution. Like someone said here, using a large enough XOR key you can make that into anything. The relevant question is where exactly is the illegal content - in the ISO file or in the application with the XOR key? If you can prove that the illegal question is in the ISO file, that ISO file is illegal and must be deleted.
The fact that you have to go through a process to access the content (download Bitcoin blocks, run this software using this password) is not relevant. Think about this: everybody would be doing this if you could get away with this. Illegal content stored on secret Internet sites with complicated access protocols (port knocking) and multiple layers of encryption is still illegal.
To the previous post: no, your code is illegal if contains a XOR pattern (or something else) which is actually an encoded representation of illegal information.
EDIT: Don't forget that forensics/cryptography experts can be brought in to determine exactly where the illegal content is. The judge doesn't need to understand cryptography.
The XOR example makes no sense -- the entire point of a feistel transformation is that the data is now in
neither part. Using your logic, I could put an illegal file in
any other file.
1. Let X = illegal file
2. Let Y = linux iso
3. Publish Y and (X xor Y)
Is the illegal content in Y or X xor Y?
To make the example more clear:
1. Let X = illegal file
2. Let Y = completely random bitstring of same length as X
3. Let Z = X xor Y
4. Post Y on one server, say a google blog. Post Z on another, say a wordpress blog.
Now observe the following: Y is a totally random string, so clearly it contains no information about X. What about Z? Well think about it: if I take some fixed string X and XOR it with a totally random string, what do I get? I get another totally random string. So Z is also a totally random string, containing no information about X either.
So now we have two servers both storing totally random strings. Clearly, neither is illegal alone. But their XOR is illegal. Who commited a crime, other than the uploader?
(Note I'm going to hope you're somewhat intelligent and can see that Z is in fact no different from Y, and does not contain "more information" about X because I defined Z = X xor Y. If you can't see this, imagine the police arrested both the server operators holding Y and Z. The operator holding Y will claim "but I'm just holding a random string Y, the OTHER guy is holding X xor Y". The operator holding Z will claim "no he's lying! I am actually holding the Y part, and the OTHER guy is holding the Z = X xor Y part!" Clearly, there is no way to tell who is lying (even the operators themselves do not know who is lying) because in fact the uploader could actually have done things either way: he could have picked Z as his random string Y' and set Z' = X xor Y' = Y)