Abstract
Mealy automata model can be used to obfuscate constants and strings in programs, as to the obfuscation, the structure of state transition graph of mealy machine is simple and easy to test. To solve this problem, a data obfuscation based on state transition graph of mealy machine is proposed. With iteration of state transition graph of mealy machine, redundant states, transition functions and output functions based on probability are added into the graph, and then constants and strings in programs are obfuscated by the mealy machine. Analysis and experiment validated that redundant states and transition functions can increase the complexity of the structure of state transition graph. Output functions based on probability can increase the randomization of output obfuscated data. Obfuscation can be effective to improve the performance of mealy machine to resist static and dynamic reverse analysis.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Collberg, C., Thomborson, C.: Watermarking, Tamper-Proofing, and Obfuscation-Tools for Software Protection. IEEE Transactions on Software Engineering 28(8), 735–746 (2002)
Collberg, C., Thomborson, C., Low, D.: A taxonomy of obfuscating transformations. Technical Report 148, Department of Computer Science, the University of Auckland, New Zealand (1997)
Chan, J., Yang, W.: Advanced obfuscation techniques for Java bytecode. Journal of Systems and Software 71(1/2), 1–10 (2004)
Xu, W., Zhang, F., Zhu, S.: The power of obfuscation techniques in malicious JavaScript code: A measurement study. In: Proceedings of 7th IEEE International Conference on Malicious and Unwanted Software, pp. 9–16 (2012)
Sosonkin, M., Naumovich, G., Memon, N.: Obfuscation of design intent in object-oriented applications. In: Proceedings of 3rd ACM Workshop on Digital Rights Management, pp. 142–153 (2003)
Popov, I.V., Debray, S.K., Andrews, G.R.: Binary obfuscation using signals. In: Proceedings of 16th USENIX Security Symposium, pp. 275–290 (2007)
Balachandran, V., Emmanuel, S.: Potent and Stealthy Control Flow Obfuscation by Stack Based Self-Modifying Code. IEEE Transactions on Information Forensics and Security 8(4), 669–681 (2013)
Badger, L., D’Anna, L., Kilpatrick, D., et al.: Self-protecting mobile agents obfuscation techniques evaluation report. Technical Report 01-036, NAI Labs (2001)
Collberg, C., Thomborson, C., Low, D.: Breaking abstractions and unstructuring data structures. In: Proceedings of IEEE International Conference on Computer Languages, pp. 28–38 (1998)
Praveen, S., Sojan, P.: Array Data Transformation for Source Code Obfuscation. Proceedings of World Academy of Science, Engineering and Technology 1, 83–87 (2007)
Zhu, W., Thomborson, C.D., Wang, F.Y.: Obfuscate arrays by homomorphic functions. In: Proceedings of IEEE International Conference on Granular Computing, pp. 770–773 (2006)
Xin, Z., Chen, H., Han, H., Mao, B., Xie, L.: Misleading malware similarities analysis by automatic data structure obfuscation. In: Burmester, M., Tsudik, G., Magliveras, S., Ilić, I. (eds.) ISC 2010. LNCS, vol. 6531, pp. 181–195. Springer, Heidelberg (2011)
Collberg, C., Nagra, J.: Surreptitious software: obfuscation, watermarking, and tamper-proofing for software protection, pp. 269–271. Addison-Wesley (2009)
George, H.M.: A method for synthesizing sequential circuits. Bell System Technical Journal 34(5), 1045–1079 (1955)
McCabe, T.: A complexity measure. IEEE Transaction on Software Engineering SE-2(4), 308–320 (1976)
Schrittwieser, S., Katzenbeisser, S.: Code Obfuscation against Static and Dynamic Reverse Engineering. In: Filler, T., Pevný, T., Craver, S., Ker, A. (eds.) IH 2011. LNCS, vol. 6958, pp. 270–284. Springer, Heidelberg (2011)
Cesare, S., Xiang, Y.: Software Similarity and Classification, pp. 63–70 (2012)
Patrick, P.F., Lucas, C.K., Yiu, S.M.: Heap Graph Based Software Theft Detection. IEEE Transactions on Information Forensics and Security 8(1), 101–110 (2013)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Xie, X., Liu, F., Lu, B. (2014). A Data Obfuscation Based on State Transition Graph of Mealy Automata. In: Huang, DS., Bevilacqua, V., Premaratne, P. (eds) Intelligent Computing Theory. ICIC 2014. Lecture Notes in Computer Science, vol 8588. Springer, Cham. https://doi.org/10.1007/978-3-319-09333-8_58
Download citation
DOI: https://doi.org/10.1007/978-3-319-09333-8_58
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-09332-1
Online ISBN: 978-3-319-09333-8
eBook Packages: Computer ScienceComputer Science (R0)