Bram's page

These thoughts nagged at me for a long time. When I first wrote this page (circa 2000) I thought they were completely beyond the scope of current mathematical techniques, but much to my surprise program obfuscation has since been shown to be impossible.

Conjecture - For any axiomatic system, there exists a function which runs in a practical amount of time which takes as inputs a statement in that axiomatic system and a fixed length string, such that given a proof of any statement in the axiomatic system it is possible in a practical amount of time to construct a string such that the function when given the statement and the string will return true, but it is computationally intractable to find a false statement and a string such that the function will return true.

Conjecture - There is a method of encoding any program such that the encoded form of the program can be sent to an untrusted party and the untrusted party will be able to determine the outputs of the program when given any particular set of inputs but will be incapable of determining anything about the program's structure other than what can be deduced from the amount of time it took to compute the answer and the amount of memory it used.

-Bram Cohen