I got to thinking about code obfuscation. Current code obfuscators use ad hoc techniques like symbol renaming. But is it possible to have a(adsbygoogle = window.adsbygoogle || []).push({}); cryptographically securecode obfuscator that outputs programs that work the same way as the originals, but provably no one can understand?

So here's the key idea around what I think that would mean. If you understand a slow program, you should be able to improve the slow parts and make it faster. If a program is slow but you have no idea how to make it faster, you don't understand the program.

So a cryptographically secure code obfuscator is a function F that takes as input a program P, and outputs another program Q (in other words F(P) = Q), where the following conditions apply:

- P and Q both compute the same function, but Q is slower than P
- it should be computationally hard to improve the performance of Q, given only Q and not P. This can be expressed mathematically by saying, there should not exist an easy-to-compute optimization function W such that if F(P) = Q, W(Q) is faster than Q.
- Calculating F should be possible in polynomial time.

Anyone heard of something like this?

**Physics Forums | Science Articles, Homework Help, Discussion**

Dismiss Notice

Join Physics Forums Today!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

# Cryptographically secure code obfuscation

Loading...

Similar Threads for Cryptographically secure code |
---|

C/++/# Question about running "executables" without source code |

C/++/# Open source adaptive mesh code |

What should be the rules to write excellent code? |

Converting a DFA to efficient code? |

Wondering how secure this encoding scheme is |

**Physics Forums | Science Articles, Homework Help, Discussion**