UPDATE: Zenodo migration postponed to Oct 13 from 06:00-08:00 UTC. Read the announcement.

Book section Open Access

Can a Program Reverse-Engineer Itself?

Amarilli, Antoine; Naccache, David; Rauzy, Pablo; Simion, Emil

Shape-memory alloys are metal pieces that "remember" their original cold-forged shapes and return to the pre-deformed shape after heating. In this work we construct a software analogous of shape-memory alloys: programs whose code resists obfuscation. We show how to pour arbitrary functions into protective envelops that allow recovering the functions' exact initial code after obfuscation. We explicit the theoretical foundations of our method and provide a concrete implementation in Scheme.
Files (313.8 kB)
Name Size
article.pdf
md5:bed6b11c2377e19e9a783992d0eeec5c
313.8 kB Download
313
82
views
downloads
Views 313
Downloads 82
Data volume 25.7 MB
Unique views 297
Unique downloads 82

Share

Cite as