×

Can a program reverse-engineer itself? (English) Zbl 1282.68098

Chen, Liqun (ed.), Cryptography and coding. 13th IMA international conference, IMACC 2011, Oxford, UK, December 12–15, 2011. Proceedings. Berlin: Springer (ISBN 978-3-642-25515-1/pbk). Lecture Notes in Computer Science 7089, 1-9 (2011).
Summary: 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.
For the entire collection see [Zbl 1228.94002].

MSC:

68P25 Data encryption (aspects in computer science)
PDFBibTeX XMLCite
Full Text: DOI

References:

[1] Barak, B., Goldreich, O., Impagliazzo, R., Rudich, S., Sahai, A., Vadhan, S.P., Yang, K.: On the (Im)possibility of Obfuscating Programs. In: Kilian, J. (ed.) CRYPTO 2001. LNCS, vol. 2139, pp. 1–18. Springer, Heidelberg (2001) · Zbl 1001.68511
[2] Burger, J., Brill, D., Machi, F.: Self-reproducing programs. Byte 5, 74–75 (1980)
[3] Cutland, N.: Computability: An introduction to recursive function theory, pp. 202–204. Cambridge University Press (1980) · Zbl 0448.03029
[4] Ghosh, D., Sharman, R., Rao, H., Upadhyaya, S.: Self-healing systems survey and synthesis. Decision Support Systems 42, 2164–2185 (2007)
[5] Hofstadter, D.: Godel, Escher, and Bach: An eternal golden braid, pp. 498–504. Basic Books, Inc., New York
[6] Amarilli, A., Müller, S., Naccache, D., Page, D., Rauzy, P., Tunstall, M.: Can Code Polymorphism Limit Information Leakage? In: Ardagna, C.A., Zhou, J. (eds.) WISTP 2011. LNCS, vol. 6633, pp. 1–21. Springer, Heidelberg (2011) · Zbl 05958275
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.