Computer scientists at the University of California, Los Angeles (UCLA), IBM Research, and the University of Texas at Austin have developed a "mathematical obfuscation" scheme to prevent hackers from reverse-engineering software.
Instead of the compiler translating the script directly into machine code as takes place with ordinary programs, the compiler in the new scheme would first convert the code into an intermediate form, and then an obfuscating compiler would translate this into a mathematical puzzle that would take hundreds of years to solve. A jigsaw verifier program, written in machine code, would then try to put the puzzle pieces together, and if successful the completed puzzle would instruct the CPU on creating the correct output. However, if the puzzle pieces could not be assembled, possibly because a hacker had tampered with the code, the output would be incorrect.
"The modified software would not give you any insight into how the original software works," says UCLA professor Amit Sahai.
The researchers say their work demonstrates that indistinguishability obfuscation, which computer scientists have long struggled to prove, is possible. Although the obfuscation scheme currently requires too much computation for practical use, its developers think a feasible system could emerge within 10 years.
From IEEE Spectrum
View Full Article
Abstracts Copyright © 2013 Information Inc., Bethesda, Maryland, USA