Sign In

Communications of the ACM

ACM TechNews

Scrambled Code Keeps Software Safe

A new scheme prevents hackers from reverse-engineering software.

Indistinguishability obfuscation hides the inner workings of software by turning it into a mathematical jigsaw puzzle thats nearly impossible for an attacker to solve.

Credit: iStockphoto

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


No entries found

Sign In for Full Access
» Forgot Password? » Create an ACM Web Account