Comment Avoidance of disclosure (Score 1) 708
What if an encryption is used that involves not simply a passphrase, but a segment of original code in order to unlock the data? For example, the 'key' which I remember, in my head, might be '7345632', but that is only a reference used to generate the passphrase by computing the digits of pi and using some number of them starting at digit 7345632 (or some other algorithm). Thus I could use a passphrase generating program of my own design, that I could type in from memory - a python script, for example. That code could generate a passphrase, put it on the clipboard, and I could paste it in to my encryption program blindly.
Thus all I actually know is the algorithm and the seed I used. What could they compel me to reveal? The algorithm...even the existence of the algorithm? If I simply reveal the seed but not the algorithm, can they compel me to make it work for them?
The 'encryption keys are the same as keys for locks' comparison is incorrect. If keys for locks were the same, you could take a key and turn a pile of documents into something you could not identify as containing data. A pile of random, innocuous objects, with not even the flavor of original meaning. Any conclusions you could draw from the objects in the pile would be misleading - this bit here might look like a dog, but the original documents had nothing to do with dogs. The pile of objects would be indistinguishable from a pile containing no meaning. Locks and keys do not work that way; locks and keys work like physical objects limited by physical laws - encryption would be MAGICAL if it were to occur in physical reality.