DOI QR코드

DOI QR Code

An Android Birthmark based on API k-gram

API k-gram 기반의 안드로이드 버스마크

  • 박희완 (한라대학교 정보통신방송공학부)
  • Received : 2012.11.27
  • Accepted : 2013.01.17
  • Published : 2013.04.30

Abstract

A software birthmark means inherent characteristics that can be used to identify a program. Because the software birthmark is difficult to remove by simple program transformation, it can be used to detect code theft. In this paper, we propose a birthmark technique based on API k-gram of Android applications. Android SDK provides various libraries that help programmers to develop application easily. In order to use Android SDK, we have to use API method calls. The API call instructions are hard to be replaced or removed, so they can be a inherent characteristics of an application. To show the effectiveness of the proposed birthmark, we compared it with previous birthmarks and evaluated it with open source applications. From the experiments, we verified that the credibility and resilience of our birthmark is higher than previous birthmarks.

소프트웨어 버스마크는 프로그램을 인식하는데 사용될 수 있는 고유한 특징을 의미한다. 소프트웨어 버스마크는 단순한 프로그램 변환에 의해서 삭제되지 않기 때문에 코드 도용을 탐지하는데 사용된다. 본 논문에서는 안드로이드 앱에 대한 API k-gram 기반의 버스마크 기법을 제안한다. 안드로이드 SDK는 프로그래머가 쉽게 앱을 개발할 수 있도록 다양한 라이브러리를 제공한다. 그리고 안드로이드 SDK를 사용하기 위해서는 반드시 API 메소드 호출을 이용해야만 한다. API 메소드 호출 명령어는 다른 명령어로 바꾸거나 삭제하기 어렵기 때문에 애플리케이션의 고유한 특징으로서 사용될 수 있다. 본 논문에서 제안하는 버스마크의 효용성을 보여주기 위해서 기존의 버스마크 기법과 비교하였고 오픈소스 앱을 대상으로 평가하였다. 실험으로부터 API k-gram 버스마크가 기존 버스마크보다 신뢰도와 강인도가 높은 것을 확인하였다.

Keywords

References

  1. "Jad, the fast Java Decompiler," http://www.kpdus.com/jad.html.
  2. "Mocha, the Java Decompiler," http://www.brouhaha.com/-eric/software/mocha/.
  3. "Proguard - a free Java class file shrinker, optimizer, obfuscator, and preverifier," http://proguard.sourceforge.net/.
  4. H. Tamada, M. Nakamura, A. Monden, K. Matsumoto, "Java birthmark Detecting the software theft," IEICE Transactions on Information and Systems, Vol.E88-D, No.9, pp.2148-2158, Sep., 2005. https://doi.org/10.1093/ietisy/e88-d.9.2148
  5. G. Myles and C. Collberg. "k-gram Based Software Birthmarks," Proceeding of the 20th ACM Symposium on Applied Computing, pp.314-318. New Mexico, USA, Mar., 2005.
  6. S.-H. Choi, S.-I. Park, H.-K. Park, H.-W. Park, "Similarity Comparison Tool Development for Detecting Theft of Android Application," Proceedings of the conference on Information Security and Cryptology, Vol.21, No.2, pp.201-205, Dec., 2011.
  7. S.-H. Choi, H.-Y. Lee, S.-M. Cho, H.-W. Park, "API Similarity Comparison Tool Development for Detecting Theft of Android Application," Proceedings of the 37th conference of the KIPS, Vol.19, No.1, pp.792-795, Apr., 2012.
  8. "dedexer, Jad-the fast Java Decompiler," http://www.kpdus. com/jad.html.
  9. "stigmata, Java birthm ark toolkit," http://stigmata.sourceforge.jp/.
  10. "dex2jar, A tool for converting Android's .dex format to Java's .class format," http://code.google.com/p/dex2jar/.

Cited by

  1. Android App Birthmarking Technique Resilient to Code Obfuscation vol.40, pp.4, 2015, https://doi.org/10.7840/kics.2015.40.4.700