{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,6]],"date-time":"2026-04-06T10:19:31Z","timestamp":1775470771072,"version":"3.50.1"},"publisher-location":"Berlin, Heidelberg","reference-count":34,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642371189","type":"print"},{"value":"9783642371196","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2013]]},"DOI":"10.1007\/978-3-642-37119-6_13","type":"book-chapter","created":{"date-parts":[[2013,3,27]],"date-time":"2013-03-27T00:34:59Z","timestamp":1364344499000},"page":"194-210","source":"Crossref","is-referenced-by-count":2,"title":["A Novel Obfuscation: Class Hierarchy Flattening"],"prefix":"10.1007","author":[{"given":"Christophe","family":"Foket","sequence":"first","affiliation":[]},{"given":"Bjorn","family":"De Sutter","sequence":"additional","affiliation":[]},{"given":"Bart","family":"Coppens","sequence":"additional","affiliation":[]},{"given":"Koen","family":"De Bosschere","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"issue":"1","key":"13_CR1","doi-asserted-by":"publisher","first-page":"4","DOI":"10.1109\/32.979986","volume":"28","author":"J. Bansiya","year":"2002","unstructured":"Bansiya, J., Davis, C.G.: A hierarchical model for object-oriented design quality assessment. IEEE Trans. Softw. Eng.\u00a028(1), 4\u201317 (2002)","journal-title":"IEEE Trans. Softw. Eng."},{"key":"13_CR2","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"96","DOI":"10.1007\/978-3-540-71229-9_7","volume-title":"Compiler Construction","author":"M. Batchelder","year":"2007","unstructured":"Batchelder, M., Hendren, L.: Obfuscating Java: The Most Pain for the Least Gain. In: Adsul, B., Odersky, M. (eds.) CC 2007. LNCS, vol.\u00a04420, pp. 96\u2013110. Springer, Heidelberg (2007)"},{"issue":"8","key":"13_CR3","doi-asserted-by":"publisher","first-page":"83","DOI":"10.1145\/1378704.1378723","volume":"51","author":"S.M. Blackburn","year":"2008","unstructured":"Blackburn, S.M., McKinley, K.S., et al.: Wake up and smell the coffee: evaluation methodology for the 21st century. Commun. ACM\u00a051(8), 83\u201389 (2008)","journal-title":"Commun. ACM"},{"key":"13_CR4","doi-asserted-by":"crossref","unstructured":"Bodden, E., Sewe, A., et al.: Taming reflection: Aiding static analysis in the presence of reflection and custom class loaders. In: Proc. ICSE, pp. 241\u2013250 (2011)","DOI":"10.1145\/1985793.1985827"},{"issue":"1-2","key":"13_CR5","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1016\/S0164-1212(02)00066-3","volume":"71","author":"J.T. Chan","year":"2004","unstructured":"Chan, J.T., Yang, W.: Advanced obfuscation techniques for Java bytecode. Journal of Systems and Software\u00a071(1-2), 1\u201310 (2004)","journal-title":"Journal of Systems and Software"},{"key":"13_CR6","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"250","DOI":"10.1007\/3-540-36492-7_17","volume-title":"Selected Areas in Cryptography","author":"S. Chow","year":"2003","unstructured":"Chow, S., Eisen, P.A., Johnson, H., van Oorschot, P.C.: White-Box Cryptography and an AES Implementation. In: Nyberg, K., Heys, H.M. (eds.) SAC 2002. LNCS, vol.\u00a02595, pp. 250\u2013270. Springer, Heidelberg (2003)"},{"key":"13_CR7","unstructured":"Collberg, C., Nagra, J.: Surreptitious Software: Obfuscation, Watermarking, and Tamperproofing for Software Protection. Addison-Wesley Professional (2009)"},{"key":"13_CR8","unstructured":"Collberg, C., Thomborson, C., Douglas, L.: A taxonomy of obfuscating transformations. Technical report, University of Auckland (1997)"},{"key":"13_CR9","doi-asserted-by":"crossref","unstructured":"Collberg, C., Thomborson, C., Low, D.: Manufacturing cheap, resilient, and stealthy opaque constructs. In: Proc. ACM POP, pp. 184\u2013196 (1998)","DOI":"10.1145\/268946.268962"},{"key":"13_CR10","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","first-page":"77","DOI":"10.1007\/3-540-49538-X_5","volume-title":"ECOOP \u201995 - Object-Oriented Programming","author":"J. Dean","year":"1995","unstructured":"Dean, J., Grove, D., Chambers, C.: Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis. In: Olthoff, W. (ed.) ECOOP 1995. LNCS, vol.\u00a0952, pp. 77\u2013101. Springer, Heidelberg (1995)"},{"key":"13_CR11","volume-title":"Refactoring: Improving the Design of Existing Code","author":"M. Fowler","year":"1999","unstructured":"Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston (1999)"},{"key":"13_CR12","unstructured":"Gamma, E., Helm, R., Johnson, R.E., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley (1994)"},{"key":"13_CR13","doi-asserted-by":"crossref","unstructured":"Georges, A., Buytaert, D., Eeckhout, L.: Statistically rigorous java performance evaluation. In: Proc. ACM OOPSLA, pp. 57\u201376 (2007)","DOI":"10.1145\/1297105.1297033"},{"issue":"6","key":"13_CR14","doi-asserted-by":"publisher","first-page":"685","DOI":"10.1145\/506315.506316","volume":"23","author":"D. Grove","year":"2001","unstructured":"Grove, D., Chambers, C.: A framework for call graph construction algorithms. ACM Trans. Program. Lang. Syst.\u00a023(6), 685\u2013746 (2001)","journal-title":"ACM Trans. Program. Lang. Syst."},{"issue":"1","key":"13_CR15","doi-asserted-by":"publisher","first-page":"31","DOI":"10.1016\/S0167-6423(00)00014-9","volume":"39","author":"M. Hind","year":"2001","unstructured":"Hind, M., Pioli, A.: Evaluating the effectiveness of pointer alias analyses. Science of Comp. Programming\u00a039(1), 31\u201355 (2001)","journal-title":"Science of Comp. Programming"},{"key":"13_CR16","unstructured":"Holst, S.: Assessing and managing security risks unique to Java and .NET. ISSA Journal (2009)"},{"issue":"2","key":"13_CR17","doi-asserted-by":"publisher","first-page":"80","DOI":"10.1049\/ip-sen:20050010","volume":"153","author":"T. Hou","year":"2006","unstructured":"Hou, T., Chen, H., Tsai, M.: Three control flow obfuscation methods for Java software. IEE Proceedings-Software\u00a0153(2), 80\u201386 (2006)","journal-title":"IEE Proceedings-Software"},{"key":"13_CR18","unstructured":"Lam, P., Bodden, E., Lhot\u00e1k, O., Hendren, L.: The Soot framework for Java program analysis: a retrospective. In: Proc. CETUS 2011 (October 2011)"},{"key":"13_CR19","unstructured":"Majumdar, A., Thomborson, C.D.: Manufacturing opaque predicates in distributed systems for code obfuscation. In: Proc. ACSC, pp. 187\u2013196 (2006)"},{"key":"13_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"353","DOI":"10.1007\/11961635_26","volume-title":"Information Systems Security","author":"A. Majumdar","year":"2006","unstructured":"Majumdar, A., Thomborson, C.D., Drape, S.: A survey of control-flow obfuscations. In: Bagchi, A., Atluri, V. (eds.) ICISS 2006. LNCS, vol.\u00a04332, pp. 353\u2013356. Springer, Heidelberg (2006)"},{"key":"13_CR21","unstructured":"McCluskey, E.: Introduction to the theory of switching circuits. McGraw Hill Text (1965)"},{"key":"13_CR22","doi-asserted-by":"crossref","unstructured":"Palsberg, J., Krishnaswamy, S., Kwon, M., Ma, D., Shao, Q., Zhang, Y.: Experience with software watermarking. In: Proc. ACSAC, pp. 308\u2013316 (2000)","DOI":"10.1109\/ACSAC.2000.898885"},{"key":"13_CR23","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"126","DOI":"10.1007\/3-540-36579-6_10","volume-title":"Compiler Construction","author":"B.G. Ryder","year":"2003","unstructured":"Ryder, B.G.: Dimensions of Precision in Reference Analysis of Object-Oriented Programming Languages. In: Hedin, G. (ed.) CC 2003. LNCS, vol.\u00a02622, pp. 126\u2013137. Springer, Heidelberg (2003)"},{"key":"13_CR24","doi-asserted-by":"publisher","first-page":"349","DOI":"10.2197\/ipsjdc.1.349","volume":"1","author":"Y. Sakabe","year":"2005","unstructured":"Sakabe, Y., Soshi, M., Miyaji, A.: Java obfuscation approaches to construct tamper-resistant object-oriented programs. IPSJ Digital Courier\u00a01, 349\u2013361 (2005)","journal-title":"IPSJ Digital Courier"},{"key":"13_CR25","unstructured":"Snelting, G., Streckenbach, M.: KABA: Automated refactoring for improved cohesion. In: Proc. of the First Workshop on Refactoring Tools, pp. 1\u20132 (2007)"},{"key":"13_CR26","doi-asserted-by":"crossref","unstructured":"Snelting, G., Tip, F.: Reengineering class hierarchies using concept analysis. In: Proc. ACM FSE, pp. 99\u2013110 (1998)","DOI":"10.1145\/291252.288273"},{"issue":"3","key":"13_CR27","doi-asserted-by":"publisher","first-page":"540","DOI":"10.1145\/353926.353940","volume":"22","author":"G. Snelting","year":"2000","unstructured":"Snelting, G., Tip, F.: Understanding class hierarchies using concept analysis. ACM Trans. Program. Lang. Syst.\u00a022(3), 540\u2013582 (2000)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"13_CR28","doi-asserted-by":"crossref","unstructured":"Sosonkin, M., Naumovich, G., Memon, N.: Obfuscation of design intent in object-oriented applications. In: Proc. ACM DRM, pp. 142\u2013153 (2003)","DOI":"10.1145\/947380.947399"},{"key":"13_CR29","unstructured":"Streckenbach, M.: KABA - a system for refactoring Java programs. PhD thesis, Universit\u00e4t Passau (2005)"},{"key":"13_CR30","doi-asserted-by":"crossref","unstructured":"Streckenbach, M., Snelting, G.: Refactoring class hierarchies with KABA. In: Proc. ACM OOPLSA, pp. 315\u2013330 (2004)","DOI":"10.1145\/1035292.1029003"},{"issue":"3","key":"13_CR31","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/1961204.1961205","volume":"33","author":"F. Tip","year":"2011","unstructured":"Tip, F., Furher, R., Kie\u017cun, A., Ernst, M., Balaban, I., De Sutter, B.: Refactoring using type constraints. ACM Trans. Program. Lang. Syst.\u00a033(3), 9:1\u20139:47 (2011)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"13_CR32","unstructured":"Vall\u00e9e-Rai, R., Co, P., Gagnon, E., Hendren, L., Lam, P., Sundaresan, V.: Soot - a java bytecode optimization framework. In: Proc. CASCON, pp. 125\u2013135 (1999)"},{"key":"13_CR33","unstructured":"Venkatraj, A.P.R.: Program obfuscation. Master\u2019s thesis, University of Arizona (2003)"},{"key":"13_CR34","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"61","DOI":"10.1007\/978-3-540-77535-5_5","volume-title":"Information Security Applications","author":"Y. Zhou","year":"2008","unstructured":"Zhou, Y., Main, A., Gu, Y.X., Johnson, H.: Information Hiding in Software with Mixed Boolean-Arithmetic Transforms. In: Kim, S., Yung, M., Lee, H.-W. (eds.) WISA 2007. LNCS, vol.\u00a04867, pp. 61\u201375. Springer, Heidelberg (2008)"}],"container-title":["Lecture Notes in Computer Science","Foundations and Practice of Security"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-37119-6_13","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,4,30]],"date-time":"2025-04-30T02:13:13Z","timestamp":1745979193000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-37119-6_13"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2013]]},"ISBN":["9783642371189","9783642371196"],"references-count":34,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-37119-6_13","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2013]]}}}