Dynamic Software Birthmark for Java']Java Based on Heap Memory Analysis

被引:0
|
作者
Chan, Patrick P. F. [1 ]
Hui, Lucas C. K. [1 ]
Yiu, S. M. [1 ]
机构
[1] Univ Hong Kong, Dept Comp Sci, Pokfulam, Peoples R China
来源
关键词
software birthmark; software protection; code theft detection; !text type='Java']Java[!/text;
D O I
暂无
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Code theft has been a serious threat to the survival of the software industry. A dynamic software birthmark can help detect code theft by comparing the intrinsic characteristics of two programs extracted during their execution. We propose a dynamic birthmark system for Java based on the object reference graph. To the best of our knowledge, it is the first dynamic software birthmark making use of the heap memory. We evaluated our birthmark using 25 large-scale programs with most of them of tens of megabytes in size. Our results show that it is effective in detecting partial code theft. No false positive or false negative were found. More importantly, the birthmark remained intact even after the testing programs were obfuscated by the state-of-the-art Allatori obfuscator. These promising results reflect that our birthmark is ready for practical use.
引用
收藏
页码:94 / 107
页数:14
相关论文
共 50 条
  • [41] Dynamic Purity Analysis for Java']Java Programs
    Xu, Haiying
    Pickett, Christopher J. F.
    Verbrugge, Clark
    PASTE'07 PROCEEDINGS OF THE 2007 ACM SIGPLAN- SIGSOFT WORKSHOP ON PROGRAM ANALYSIS FOR SOFTWARE TOOLS & ENGINEERING, 2007, : 75 - 82
  • [42] Analysis of dynamic class loading in Java']Java
    Kim, KT
    Jo, SM
    Kouh, HJ
    Sim, HJ
    Lee, KL
    Yoo, WH
    PDPTA'03: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED PROCESSING TECHNIQUES AND APPLICATIONS, VOLS 1-4, 2003, : 1628 - 1634
  • [43] Static Analysis of Java']Java Dynamic Proxies
    Fourtounis, George
    Kastrinis, George
    Smaragdakis, Yannis
    ISSTA'18: PROCEEDINGS OF THE 27TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, 2018, : 209 - 220
  • [44] Impact of Java']Java compressed heap on mobile/wireless communication
    Kato, M
    Lo, CTD
    ITCC 2005: INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY: CODING AND COMPUTING, VOL 2, 2005, : 2 - 7
  • [45] Analysis and Reduction of Memory Inefficiencies in Java']Java Strings
    Kawachiya, Kiyokuni
    Ogata, Kazunori
    Onodera, Tamiya
    ACM SIGPLAN NOTICES, 2008, 43 (10) : 385 - 401
  • [46] A Heap Model for Java']Java Bytecode to Support Separation Logic
    Luo, Chenguang
    He, Guanhua
    Qin, Shengchao
    APSEC 2008:15TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2008, : 127 - 134
  • [47] Analysis and Reduction of Memory Inefficiencies in Java']Java Strings
    Kawachiya, Kiyokuni
    Ogata, Kazunori
    Onodera, Tamiya
    OOPSLA 2008 NASHVILLE, CONFERENCE PROCEEDINGS: MUSIC CITY USA, OOPSLA, 2008, : 385 - 401
  • [48] Precise Memory Leak Detection for Java']Java Software Using Container Profiling
    Xu, Guoqing
    Rountev, Atanas
    ICSE'08 PROCEEDINGS OF THE THIRTIETH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 2008, : 151 - 160
  • [49] SAW: Java']Java Synchronization Selection from Lock or Software Transactional Memory
    Yamada, Yuji
    Iwasaki, Hideya
    Ugawa, Tomoharu
    2011 IEEE 17TH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS (ICPADS), 2011, : 104 - 111
  • [50] Precise Memory Leak Detection for Java']Java Software Using Container Profiling
    Xu, Guoqing
    Rountev, Atanas
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2013, 22 (03) : 1 - 28