{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,28]],"date-time":"2025-09-28T20:32:38Z","timestamp":1759091558615},"reference-count":54,"publisher":"Springer Science and Business Media LLC","issue":"2","license":[{"start":{"date-parts":[[2015,3,27]],"date-time":"2015-03-27T00:00:00Z","timestamp":1427414400000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Int. J. Inf. Secur."],"published-print":{"date-parts":[[2016,4]]},"DOI":"10.1007\/s10207-015-0282-0","type":"journal-article","created":{"date-parts":[[2015,3,26]],"date-time":"2015-03-26T19:12:56Z","timestamp":1427397176000},"page":"111-130","update-policy":"http:\/\/dx.doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":9,"title":["Link-time smart card code hardening"],"prefix":"10.1007","volume":"15","author":[{"given":"Ronald","family":"De Keulenaer","sequence":"first","affiliation":[]},{"given":"Jonas","family":"Maebe","sequence":"additional","affiliation":[]},{"given":"Koen","family":"De Bosschere","sequence":"additional","affiliation":[]},{"given":"Bjorn","family":"De Sutter","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2015,3,27]]},"reference":[{"issue":"1","key":"282_CR1","doi-asserted-by":"crossref","first-page":"4:1","DOI":"10.1145\/1609956.1609960","volume":"13","author":"M Abadi","year":"2009","unstructured":"Abadi, M., Budiu, M., Erlingsson, \u00da., Ligatti, J.: Control-flow integrity principles, implementations, and applications. ACM Trans. Inf. Syst. Secur. 13(1), 4:1\u20134:40 (2009)","journal-title":"ACM Trans. Inf. Syst. Secur."},{"issue":"4","key":"282_CR2","doi-asserted-by":"crossref","first-page":"418","DOI":"10.1109\/12.2185","volume":"37","author":"PE Ammann","year":"1988","unstructured":"Ammann, P.E., Knight, J.C.: Data diversity: an approach to software fault tolerance. IEEE Trans. Comput. 37(4), 418\u2013425 (1988)","journal-title":"IEEE Trans. Comput."},{"key":"282_CR3","doi-asserted-by":"crossref","unstructured":"Anand, K., Smithson, M., Elwazeer, K., Kotha, A., Gruen, J., Giles, N., Barua, R.: A compiler-level intermediate representation based binary analysis and rewriting system. In: Proceedings of the 8th ACM European Conference on Computer Systems, pp. 295\u2013308 (2013)","DOI":"10.1145\/2465351.2465380"},{"key":"282_CR4","doi-asserted-by":"crossref","unstructured":"Anckaert, B., Madou, M., De Sutter, B., De Bus, B., De Bosschere, K., Preneel, B.: Program obfuscation: a quantitative approach. In: ACM QoP, pp. 15\u201320 (2007)","DOI":"10.1145\/1314257.1314263"},{"key":"282_CR5","doi-asserted-by":"crossref","unstructured":"Anckaert, B., Vandeputte, F., De Bus, B., De Sutter, B., De Bosschere, K.: Link-time optimization of IA64 binaries. In: Proceedings of Euro-Par, pp. 284\u2013291 (2004)","DOI":"10.1007\/978-3-540-27866-5_37"},{"key":"282_CR6","doi-asserted-by":"crossref","unstructured":"Aum\u00fcller, C., Bier, P., Fischer, W., Hofreiter, P., Seifert, J.-P.: Fault attacks on RSA with CRT: concrete results and practical countermeasures. In: Proceedings of CHES, pp. 260\u2013275 (2002)","DOI":"10.1007\/3-540-36400-5_20"},{"issue":"12","key":"282_CR7","doi-asserted-by":"crossref","first-page":"1491","DOI":"10.1109\/TSE.1985.231893","volume":"11","author":"A Avizienis","year":"1985","unstructured":"Avizienis, A.: The n-version approach to fault-tolerant software. IEEE Trans. Softw. Eng. 11(12), 1491\u20131501 (1985)","journal-title":"IEEE Trans. Softw. Eng."},{"key":"282_CR8","unstructured":"Bar-El, H., Choukri, H., Naccache, D., Tunstall, M., Whelan, C.: The sorcerer\u2019s apprentice guide to fault attacks. Cryptology ePrint Archive, Report 2004\/100 (2004)"},{"key":"282_CR9","unstructured":"Bellard, F.: QEMU, a fast and portable dynamic translator. In: Proceedings of USENIX, pp. 41\u201346 (2005)"},{"key":"282_CR10","unstructured":"Bertran, R., Gil, M., Cabezas, J., Jimenez, V., Vilanova, L., Morancho, E., Navarro, N.: Building a global system view for optimization purposes. In: Proceedings of Workshop Interaction between Operating Systems and Computer Architecture (2006)"},{"key":"282_CR11","unstructured":"Chanet, D.: Memory Footprint Reduction for Operating System Kernels. PhD thesis, Ghent University (2007)"},{"issue":"4","key":"282_CR12","doi-asserted-by":"crossref","first-page":"23::1","DOI":"10.1145\/1274858.1274861","volume":"6","author":"D Chanet","year":"2007","unstructured":"Chanet, D., De Sutter, B., De Bus, B., Van Put, L., De Bosschere, K.: Automated reduction of the memory footprint of the Linux kernel. ACM Trans. Embed. Comput. Syst. 6(4), 23:1\u201323:48 (2007)","journal-title":"ACM Trans. Embed. Comput. Syst."},{"key":"282_CR13","unstructured":"Choukri, H., Tunstall, M.: Round reduction using faults. In: Proceedings of FDTC, pp. 13\u201324 (2005)"},{"key":"282_CR14","unstructured":"Claes, L.: Colos: een optimaliserende linker voor de superH. Master\u2019s thesis, Ghent University (2003)"},{"key":"282_CR15","unstructured":"De Bus, B.: Reliable, retargetable and extensible link-time program rewriting. Ph.D. thesis, Ghent University (2005)"},{"key":"282_CR16","doi-asserted-by":"crossref","unstructured":"De Bus, B., Chanet, D., De Sutter, B., Van Put, L., De Bosschere, K.: The design and implementation of FIT: a flexible instrumentation toolkit. In: Proceedings of ACM PASTE, pp. 29\u201334 (2004)","DOI":"10.1145\/996821.996833"},{"issue":"5","key":"282_CR17","doi-asserted-by":"crossref","first-page":"882","DOI":"10.1145\/1086642.1086645","volume":"27","author":"B Sutter De","year":"2005","unstructured":"De Sutter, B., De Bus, B., De Bosschere, K.: Link-time binary rewriting techniques for program compaction. ACM Trans. Prog. Lang. Syst. 27(5), 882\u2013945 (2005)","journal-title":"ACM Trans. Prog. Lang. Syst."},{"issue":"10","key":"282_CR18","doi-asserted-by":"crossref","first-page":"535","DOI":"10.1016\/j.sysarc.2006.03.001","volume":"52","author":"B Sutter De","year":"2006","unstructured":"De Sutter, B., De Bus, B., De Bosschere, K.: Bidirectional liveness analysis, or how less than half of the Alpha\u2019s registers are used. J. Syst. Archit. 52(10), 535\u2013548 (2006)","journal-title":"J. Syst. Archit."},{"issue":"1","key":"282_CR19","doi-asserted-by":"crossref","first-page":"5::1","DOI":"10.1145\/1210268.1210273","volume":"6","author":"B Sutter De","year":"2007","unstructured":"De Sutter, B., Van Put, L., Chanet, D., De Bus, B., De Bosschere, K.: Link-time compaction and optimization of ARM executables. ACM Trans. Embed. Comput. Syst. 6(1), 5:1\u20135:43 (2007)","journal-title":"ACM Trans. Embed. Comput. Syst."},{"key":"282_CR20","doi-asserted-by":"crossref","unstructured":"Debray, S., Muth, R., Weippert, M.: Alias analysis of executable code. In: Proceedings of ACM POPL, pp. 12\u201324 (1998)","DOI":"10.1145\/268946.268948"},{"issue":"2","key":"282_CR21","doi-asserted-by":"crossref","first-page":"105","DOI":"10.1134\/S0361768809020066","volume":"35","author":"EN Dolgova","year":"2009","unstructured":"Dolgova, E.N., Chernov, A.V.: Automatic reconstruction of data types in the decompilation problem. Program. Comput. Softw. 35(2), 105\u2013119 (2009)","journal-title":"Program. Comput. Softw."},{"key":"282_CR22","doi-asserted-by":"crossref","unstructured":"Guthaus, M.R., Ringenberg, J.S., Ernst, D., Austin, T.M., Mudge, T., Brown, R.B.: Mibench: a free, commercially representative embedded benchmark suite. In: Proceedings of IEEE WWC-4, pp. 3\u201314 (2001)","DOI":"10.1109\/WWC.2001.990739"},{"key":"282_CR23","doi-asserted-by":"crossref","DOI":"10.1017\/CBO9780511807077","volume-title":"Fundamentals of Error-Correcting Codes","author":"WC Huffman","year":"2003","unstructured":"Huffman, W.C., Pless, V.: Fundamentals of Error-Correcting Codes. Cambridge University Press, Cambridge (2003)"},{"key":"282_CR24","doi-asserted-by":"crossref","unstructured":"Karpovsky, M., Kulikowski, K.J., Taubin, A.: Robust protection against fault-injection attacks on smart cards implementing the advanced encryption standard. In: Proceedings of International Conference on Dependable Systems and Networks, pp. 93\u2013101 (2004)","DOI":"10.1109\/DSN.2004.1311880"},{"key":"282_CR25","doi-asserted-by":"crossref","unstructured":"Kim, C.H., Quisquater, J.-J.: Fault attacks for CRT based RSA: new attacks, new results and new countermeasures. In: Proceedings of WISTP, pp. 215\u2013228 (2007)","DOI":"10.1007\/978-3-540-72354-7_18"},{"key":"282_CR26","doi-asserted-by":"crossref","unstructured":"Kinder, J., Zuleger, F., Veith, H.: An abstract interpretation-based framework for control flow reconstruction from binaries. In: Proceedings of 10th International Conference on Verification, Model Checking, and Abstract Interpretation, pp. 214\u2013228 (2009)","DOI":"10.1007\/978-3-540-93900-9_19"},{"key":"282_CR27","doi-asserted-by":"crossref","unstructured":"Lackner, M., Berlach, R., Hraschan, M., Weiss, R., Steger, C.: A defensive java card virtual machine to thwart fault attacks by microarchitectural support. In: Proceedings of International Conference on Risks and Security of Internet and Systems (CRiSIS), pp. 1\u20138 (2013)","DOI":"10.1109\/CRiSIS.2013.6766360"},{"key":"282_CR28","doi-asserted-by":"crossref","unstructured":"Lackner, M., Berlach, R., Raschke, W., Weiss, R., Steger, C.: A defensive virtual machine layer to counteract fault attacks on java cards. In: Information Security Theory and Practice. Security of Mobile and Cyber-Physical Systems, volume 7886 of Lecture Notes in Computer Science, pp. 82\u201397 (2013)","DOI":"10.1007\/978-3-642-38530-8_6"},{"key":"282_CR29","doi-asserted-by":"crossref","unstructured":"Lattner, C., Adve, V.: LLVM: a compilation framework for lifelong program analysis & transformation. In: Proceedings of 2004 international symposium on code generation and optimization (CGO\u201904), Palo Alto, California (2004)","DOI":"10.1109\/CGO.2004.1281665"},{"key":"282_CR30","volume-title":"Linkers and Loaders","author":"JR Levine","year":"1999","unstructured":"Levine, J.R.: Linkers and Loaders. Morgan Kaufmann Publishers Inc., Los Altos, CA (1999)"},{"issue":"1","key":"282_CR31","first-page":"4:1","volume":"35","author":"J Lim","year":"2013","unstructured":"Lim, J., Reps, T.: TSL: a system for generating abstract interpreters and its application to machine-code analysis. ACM Trans. Program. Lang. Syst. 35(1), 4:1\u20134:59 (2013)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"282_CR32","doi-asserted-by":"crossref","unstructured":"Madou, M., Anckaert, B., De Sutter, B., De Bosschere, K.: Hybrid static-dynamic attacks against software protection mechanisms. In: ACM DRM, pp. 75\u201382 (2005)","DOI":"10.1145\/1102546.1102560"},{"key":"282_CR33","unstructured":"Madou, M., De Sutter, B., De Bus, B., Van Put, L., De Bosschere, K.: Link-time optimization of MIPS programs. In: Proceedings of ESA, pp. 70\u201375 (2004)"},{"key":"282_CR34","doi-asserted-by":"crossref","unstructured":"Madou, M., Van Put, L., De Bosschere, K.: Loco: an interactive code (de)obfuscation tool. In: Proceedings of PEPM \u201906, pp. 140\u2013144 (2006)","DOI":"10.1145\/1111542.1111566"},{"key":"282_CR35","doi-asserted-by":"crossref","unstructured":"Maebe, J., De Keulenaer, R., De Sutter, B., De Bosschere, K.: Mitigating smart card fault injection with link-time code rewriting: a feasibility study. In: Proceedings of 17th International Conference on Financial Cryptography and Data Security (2013)","DOI":"10.1007\/978-3-642-39884-1_19"},{"key":"282_CR36","volume-title":"Power Analysis Attacks: Revealing the Secrets of Smart Cards (Advances in Information Security)","author":"S Mangard","year":"2007","unstructured":"Mangard, S., Oswald, E., Popp, T.: Power Analysis Attacks: Revealing the Secrets of Smart Cards (Advances in Information Security). Springer, Berlin (2007)"},{"key":"282_CR37","doi-asserted-by":"crossref","unstructured":"Markantonakis, C., Mayes, K., Tunstall, M., Sauveron, D., Piper, F.: Smart card security. In: Nedjah, N., Abraham, A., de Macedo Mourelle, L. (eds.) Computational Intelligence in Information Assurance and Security, pp. 201\u2013233. Springer, Berlin (2007)","DOI":"10.1007\/978-3-540-71078-3_8"},{"key":"282_CR38","volume-title":"Advanced Compiler Design and Implementation","author":"SS Muchnick","year":"1997","unstructured":"Muchnick, S.S.: Advanced Compiler Design and Implementation. Morgan Kaufmann, Los Altos, CA (1997)"},{"issue":"2","key":"282_CR39","doi-asserted-by":"crossref","first-page":"180","DOI":"10.1109\/12.980007","volume":"51","author":"N Oh","year":"2002","unstructured":"Oh, N., Mitra, S., McCluskey, E.J.: ED4I: error detection by diverse data and duplicated instructions. IEEE Trans. Comput. 51(2), 180\u2013199 (2002)","journal-title":"IEEE Trans. Comput."},{"key":"282_CR40","doi-asserted-by":"crossref","unstructured":"O\u2019Sullivan, P., Anand, K., Kotha, A., Smithson, M., Barua, R., Keromytis, A.D. Retrofitting security in COTS software with binary rewriting. In: Proceedings of 26th IFIP TC 11 International Information Security Conference, pp. 154\u2013172 (2011)","DOI":"10.1007\/978-3-642-21424-0_13"},{"key":"282_CR41","doi-asserted-by":"crossref","unstructured":"Randell, B.: System structure for software fault tolerance. In: Proceedings of the International Conference on Reliable Software, pp. 437\u2013449 (1975)","DOI":"10.1145\/800027.808467"},{"key":"282_CR42","doi-asserted-by":"crossref","unstructured":"Rebaudengo, M., Reorda, M.S., Violante, M., Torchiano, M.: A source-to-source compiler for generating dependable software. In: Proceedings of IEEE SCAM, pp. 33\u201342 (2001)","DOI":"10.1109\/SCAM.2001.972664"},{"key":"282_CR43","doi-asserted-by":"crossref","unstructured":"Reis, G.A., Chang, J., Vachharajani, N., Rangan, R., August, D.I.: SWIFT: Software implemented fault tolerance. In: Proceedings of ACM CGO, pp. 243\u2013254 (2005)","DOI":"10.1109\/CGO.2005.34"},{"key":"282_CR44","doi-asserted-by":"crossref","unstructured":"Sere, A.A., Iguchi-Cartigny, J., Lanet, J.-L.: Automatic detection of fault attack and countermeasures. In: Proceedings of the 4th Workshop on Embedded Systems Security, pp. 7:1\u20137:7 (2009)","DOI":"10.1145\/1631716.1631723"},{"key":"282_CR45","unstructured":"Smithson, M., Anand, K., Kotha, A., Elwazeer, K., Giles, N., Barua, R.: Binary rewriting without relocation information. Technical report, University of Maryland (2010)"},{"key":"282_CR46","unstructured":"Torres-Pomales, W.: Software fault tolerance-tutorial, NASA\/TM-2000-210616 (2000)"},{"key":"282_CR47","doi-asserted-by":"crossref","unstructured":"Trichina, E., Korkikyan, R.: Multi fault laser attacks on protected CRT-RSA. In: 2010 Workshop on Fault Diagnosis and Tolerance in Cryptography (FDTC), pp. 75\u201386 (2010)","DOI":"10.1109\/FDTC.2010.14"},{"key":"282_CR48","doi-asserted-by":"crossref","unstructured":"Van Put, L., Chanet, D., De Bus, B., De Sutter, B., De Bosschere, K.: DIABLO: a reliable, retargetable and extensible link-time rewriting framework. In: Proceedings of ISSPIT, pp. 7\u201312 (2005)","DOI":"10.1109\/ISSPIT.2005.1577061"},{"key":"282_CR49","doi-asserted-by":"crossref","unstructured":"Van Put, L., De Sutter, B., Madou, M., De Bus, B., Chanet, D., Smits, K., De Bosschere, K.: LANCET: a nifty code editing tool. In: ACM PASTE, pp. 75\u201381 (2005)","DOI":"10.1145\/1108792.1108812"},{"key":"282_CR50","doi-asserted-by":"crossref","unstructured":"Wartell, R., Mohan, V., Hamlen, K.W., Lin, Z.: Securing untrusted code via compiler-agnostic binary rewriting. In: Proceedings of 28th Annual Computer Security Applications Conference, pp. 299\u2013308 (2012)","DOI":"10.1145\/2420950.2420995"},{"issue":"1","key":"282_CR51","doi-asserted-by":"crossref","first-page":"26","DOI":"10.1109\/MSP.2009.18","volume":"7","author":"D Williams","year":"2009","unstructured":"Williams, D., Hu, W., Davidson, J.W., Hiser, J.D., Knight, J.C., Nguyen-Tuong, A.: Security through diversity: leveraging virtual machine technology. IEEE Secur. Priv. 7(1), 26\u201333 (2009)","journal-title":"IEEE Secur. Priv."},{"key":"282_CR52","volume-title":"The Definitive Guide to the ARM Cortex-M0","author":"J Yiu","year":"2011","unstructured":"Yiu, J.: The Definitive Guide to the ARM Cortex-M0. Newnes, London (2011)"},{"key":"282_CR53","unstructured":"Zhang, M., Sekar, R.: Control flow integrity for cots binaries. In: Proceedings of Usenix Security (2013)"},{"key":"282_CR54","doi-asserted-by":"crossref","unstructured":"Zhao, L., Li, G., De Sutter, B., Regehr, J.: ARMor: fully verified software fault isolation. In: Proceedings of EMSOFT, pp. 289\u2013298 (2011)","DOI":"10.1145\/2038642.2038687"}],"container-title":["International Journal of Information Security"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10207-015-0282-0.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10207-015-0282-0\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10207-015-0282-0","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,5,3]],"date-time":"2022-05-03T22:04:21Z","timestamp":1651615461000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10207-015-0282-0"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,3,27]]},"references-count":54,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2016,4]]}},"alternative-id":["282"],"URL":"https:\/\/doi.org\/10.1007\/s10207-015-0282-0","relation":{},"ISSN":["1615-5262","1615-5270"],"issn-type":[{"value":"1615-5262","type":"print"},{"value":"1615-5270","type":"electronic"}],"subject":[],"published":{"date-parts":[[2015,3,27]]}}}