Pages tagged staple:

staple / unstaple
http://sysnet.ucsd.edu/projects/staple/

A tool that forces people to commit a crime if they want to prove an archive contains stolen content. Turning the DMCA against those who try to use it. Cute in a contrarian activist sort of way.
staple is a program that inseparably binds together the data in a file using a cryptographic mechanism known as an All-or-nothing transform. In its most basic form (when executed as staple 0), the transformation is keyless; that is, no key is required to reverse it, however all the data is required. Thus, running unstaple on the output .staple file yields the original file, but running it on any subset of the .staple file yields nothing.
[...]It has been suggested that this scenario occurs if Alice is a content producer/owner, Bob is a content piracy group, and Charlie is a user unconcerned about copyright infringement. Taking their last example: Alice could pretend to have brute-forced the key k rather than recovered from B and r, no? And is all-or-nothing so hard to do? what about making c=k xor H(Ek(m)) | Ek(m) ? You need the full data to compute the hash on the encrypted message to recover the key and decrypt the message. And you can throw away part of the key also in this scheme UPDATE: hum actually it appears that it's precisely what he's doing :-)
all or nothing cryptographic transform
"staple is a program that inseparably binds together the data in a file using a cryptographic mechanism known as an All-or-nothing transform. In its most basic form (when executed as staple 0), the transformation is keyless; that is, no key is required to reverse it, however all the data is required. Thus, running unstaple on the output .staple file yields the original file, but running it on any subset of the .staple file yields nothing. staple can also be asked to do something slightly strange: in the process of executing the All-or-nothing transform, a random key is used for encryption of the data - staple can be instructed to throw away part of that key. (The only argument staple takes is the number of key bytes to throw away; only 0, 2, and 4 are accepted currently.)"