Cluster Computing

, Volume 21, Issue 1, pp 333–346 | Cite as

Estimation of software features based birthmark

  • Shah NazirEmail author
  • Sara Shahzad
  • Rodziah Binti Atan
  • Haleem Farman


Software birthmark is an important property of software that is successfully used to detect piracy and theft of software. Estimation of a birthmark provides critical information about the extent of piracy performed in a software. This information can then be used to decide over many important issues related with software theft and piracy, including legal and ethical considerations. Research shows that a software birthmark based on multiple software features provides a powerful and unique identity to software, hence more useful in theft detection. The estimation of this features based birthmark may provide even close detection and estimation of software piracy. This estimation process provides an objective measure to detect software theft and piracy efficiently and accurately. The research uses the concept of fuzzy logic for estimation, which has already proved its success in estimation of other birthmarks. The technique is tested for features based birthmark through a case study and the results support validity of the process. The details of the case study elaborate upon techniques and details of implementing software birthmark estimation process and show that the method is effective in terms of efficiency and accuracy for the estimation of features based software birthmark.


Software birthmark Birthmark estimation Piracy detection Fuzzy logic 


  1. 1.
    Collberg, C., Sahoo, T.R.: Software watermarking in the frequency domain: implementation, analysis, and attacks. J. Comput. Secur. 13, 721–755 (2005)CrossRefGoogle Scholar
  2. 2.
    Myles, G., Collberg, C.: Software watermarking through register allocation: implementation, analysis, and attacks. In: Information Security and Cryptology—ICISC 2003, vol. 2971, pp. 274–293. Springer, Berlin (2004)Google Scholar
  3. 3.
    Collberg, C.S., Thomborson, C., Townsend, G.M.: Dynamic graph-based software fingerprinting. ACM Trans. Program. Lang. Syst. 29, 35 (2007)CrossRefGoogle Scholar
  4. 4.
    Pieprzyk, J.: Fingerprints for copyright software protection. In: Information Security, vol. 1729, pp. 178–190. Springer, Berlin (1999)Google Scholar
  5. 5.
    Bai, Y., Sun, X., Sun, G., Deng, X., Zhou, X.: Dynamic K-gram based software birthmark. Presented at the 19th Australian Conference on Software Engineering (2009)Google Scholar
  6. 6.
    Zheng, Y., Liu, F., Luo, X., Yang, C.: A method based on feature matching to identify steganography software. In: Fourth International Conference on Multimedia Information Networking and Security, pp. 989–994 (2012)Google Scholar
  7. 7.
    Guo, Y., Wang, M., Luo, Y.: Identifying software theft based on classification of multi-attribute features. J. Softw. 9, 1401–1411 (2014)Google Scholar
  8. 8.
    Myles, G., Collberg, C.: Detecting software theft via whole program path birthmarks. In: Information Security, vol. 3225, pp. 404–415. Springer, Berlin (2004)Google Scholar
  9. 9.
    Park, H., Choi, S., Lim, H.-I., Han, T.: Detecting Java theft based on static API Trace Birthmark. In: Advances in Information and Computer Security, vol. 5312, pp. 121–135. Springer, Berlin (2008)Google Scholar
  10. 10.
    Aiken, A.: Moss: a system for detecting software plagiarism. University of California–Berkeley. (2005)
  11. 11.
    Nazir, S., Shahzad, S., Nizamani, Q.U.A., Amin, R., Shah, M.A., Keerio, A.: Identifying software features as birthmark. Sindh Univ. Res. J. (Sci. Ser.) 47, 535–540 (2015)Google Scholar
  12. 12.
    Nazir, S., Shahzad, S., Khan, S.A., Ilyas, N.B., Anwar, S.: A novel rules based approach for estimating software birthmark. Sci. World J. 2015, 1–8 (2015)CrossRefGoogle Scholar
  13. 13.
    Zeng, Y., Liu, F., Luo, X., Lian, S.: Abstract interpretation-based semantic framework for software birthmark. Comput. Secur. 31, 377–390 (2012)CrossRefGoogle Scholar
  14. 14.
    Tamada, H., Nakamura, M., Monden, A.: Design and evaluation of birthmarks for detecting theft of Java programs. In: Proceedings of IASTED International Conference on Software Engineering, pp. 569–575 (2004)Google Scholar
  15. 15.
    Wang, X., Jhi, Y.-C., Zhu, S., Liu, P.: Detecting software theft via system call based birthmarks. Presented at the in Computer Security Applications Conference (2009)Google Scholar
  16. 16.
    Jhi, Y.-C., Wang, X., Jia, X., Zhu, S., Liu, P., Wu, D.: Value-based program characterization and its application to software plagiarism detection. Presented at the 33rd International Conference on Software Engineering (2011)Google Scholar
  17. 17.
    Park, H., Lim, H.-I., Choi, S., Han, T.: Detecting common modules in Java packages based on static object trace birthmark. Comput. J. 54, 108–124 (2011)CrossRefGoogle Scholar
  18. 18.
    Myles, G., Collberg, C.: K-gram based software birthmarks. Presented at the Proceedings of the 2005 ACM Symposium on Applied Computing, Santa Fe, New Mexico (2005)Google Scholar
  19. 19.
    Xie, X., Liu, F., Lu, B., Chen, L.: A software birthmark based on weighted K-gram. In: IEEE International Conference on Intelligent Computing and Intelligent System (ICIS), pp. 400–405 (2010)Google Scholar
  20. 20.
    Wang, P., Jin, C., Jin, S.-W.: Software defect prediction scheme based on feature selection. In: Fourth International Symposium on Information Science and Engineering, pp. 477–480 (2012)Google Scholar
  21. 21.
    Živadinović, J., Medić, Z., Maksimović, D., Damnjanović, A., Vujčić, S.: Methods of effort estimation in software engineering. Presented at the International Symposium Engineering Management And Competitiveness. Zrenjanin, Serbia (2011)Google Scholar
  22. 22.
    Mohanty, S.K., Bisoi, A.K.: Software effort estimation approaches—a review. In: International Journal of Internet Computing, pp. 82–88 (2012)Google Scholar
  23. 23.
    Faridul, H.S., Doërr, G., Baudry, S.: Disparity estimation and disparity-coherent watermarking. In: SPIE Media Watermarking, Security, and Forensics, pp. 1–9 (2015)Google Scholar
  24. 24.
    Gottschlich, C.: Curved-region-based ridge frequency estimation and curved Gabor filters for fingerprint image enhancement. IEEE Trans. Image Process. 21, 220–227 (2012)MathSciNetCrossRefzbMATHGoogle Scholar
  25. 25.
    Nazir, S., Shahzad, S., Zada, I., Khan, H.: Evaluation of software birthmarks using fuzzy analytic hierarchy process. In: Proceedings of the Fourth International Multi-topic Conference, pp. 171–175 (2015)Google Scholar
  26. 26.
    Nazir, S., Shahzad, S., Riza, L.S.: Birthmark-based software classification using rough sets. Arabian J. Sci. Eng. 42, 1–13 (2016)Google Scholar
  27. 27.
    MATLAB, 7.10.0 ed. The MathWorks Inc, Natick (2010)Google Scholar
  28. 28.
    Wang, P., Jin, C., Jin, S.-W.: Software defect prediction scheme based on feature selection. In: 2012 Fourth International Symposium on Information Science and Engineering, pp. 477–480 (2012)Google Scholar
  29. 29.
    Zheng, Y., Liu, F., Luo, X., Yang, C.: A method based on feature matching to identify steganography software. In: 2012 Fourth International Conference on Multimedia Information Networking and Security, pp. 989–994 (2012)Google Scholar
  30. 30.
    Cesare, S., Xiang, Y.: Software Similarity and Classification. Springer, London (2012)CrossRefzbMATHGoogle Scholar
  31. 31.
    Tamada, H., Okamoto, K., Nakamura, M., Monden, A., Matsumoto, K.-I.: Dynamic software birthmarks to detect the theft of windows applications. Presented at the International Symposium on Future Software Technology (2004)Google Scholar
  32. 32.
    Xin, Z., Chen, H., Wang, X., Liu, P., Zhu, S., Mao, B., et al.: Replacement attacks on behavior based software birthmark. In: LNCS, pp. 1–16 (2011)Google Scholar
  33. 33.
    Chan, P.P.F., Hui, L.C.K., Yiu, S.M.: Dynamic software birthmark for Java based on heap memory analysis. In: Communications and Multimedia Security, vol. 7025, pp. 94–107. Springer, Berlin (2011)Google Scholar
  34. 34.
    Fukuda, K., Tamada, H.: A dynamic birthmark from analyzing operand stack runtime behavior to detect copied software. In: 2013 14th ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing, pp. 505–510 (2013)Google Scholar
  35. 35.
    Lim, H.-I., Park, H., Choi, S., Han, T.: A static Java birthmark based on control flow edges. In: 23rd Annual IEEE International Computer Software and Applications Conference (COMPSAC), pp. 413–420 (2009)Google Scholar
  36. 36.
    Mahmood, Y., Pervez, Z., Sarwar, S., Ahmed, H.F.: Similarity level method based static software birthmarks. In: High Capacity Optical Networks and Enabling Technologies, pp. 205–210 (2008)Google Scholar
  37. 37.
    Wang, Y., Liu, F., Zhao, Z., Lu, B., Xie, X.: Operand stack dependence based Java static software birthmark. Presented at the 10th International Conference on Fuzzy Systems and Knowledge Discovery (FSKD) (2013)Google Scholar
  38. 38.
    Zhou, X., Sun, X., Sun, G., Yang, Y.: A combined static and dynamic software birthmark based on component dependence graph. In: International Conference on Intelligent Information Hiding and Multimedia Signal Processing, pp. 1416–1421 (2008)Google Scholar
  39. 39.
    Sun, G.: Software birthmark based on component dependence graph cluster. In: International Conference on Computer Application and System Modeling (ICCASM 2010), pp. 281–291 (2010)Google Scholar
  40. 40.
    Choi, J., Han, Y., Cho, S.-J., Yoo, H.Y., Woo, J.: A static birthmark for MS windows applications using import address table. In: Seventh International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing, pp. 129–134 (2013)Google Scholar
  41. 41.
    Ma, L., Wang, Y., Liu, F., Chen, L.: Instruction-words based software birthmark. InFourth International Conference on Multimedia Information Networking and Security (MINES), pp. 909–912 (2012)Google Scholar
  42. 42.
    Kim, H., Khoo, W.M., Lió, P.: Polymorphic attacks against sequence-based software birthmarks. In: 2nd Software Security and Protection Workshop (SSP’12), pp. 1–8 (2012)Google Scholar
  43. 43.
    Lee, D., Choi, Y., Jung, J., Kim, J., Won, D.: An efficient categorization of the instructions based on binary excutables for dynamic software birthmark. Int. J. Inf. Educ. Technol. 5, 571–576 (2015)Google Scholar
  44. 44.
    Zadeh, L.A.: Fuzzy logic. Computer 21, 83–93 (1988)CrossRefGoogle Scholar
  45. 45.
    Yen, J., Langari, R.: Fuzzy Logic: Intelligence, Control and Information, 1st edn. Prentice-Hall, Upper Saddle River (1999)Google Scholar
  46. 46.
    Nazir, S., Anwar, S., Khan, M.A., Khan, H., Nazir, M.: A novel fuzzy logic based software component selection modeling. In: International Conference on Information Science and Application (ICISA), IEEE, Korea, pp. 1–6 (2012)Google Scholar
  47. 47.
    Choi, S., Park, H., Lim, H.-I., Han, T.: A static API birthmark for Windows binary executables. J. Syst. Softw. 82, 862–873 (2009)CrossRefGoogle Scholar
  48. 48.
    Yousuf, M.I.: Using experts’ opinions through delphi technique. Pract. Assess. Res. Eval. 12, 1–8 (2007)Google Scholar
  49. 49.
    Dalkey, N., Helmer, O.: An experimental application of the Delphi method to the use of experts. Manag. Sci. 9, 458–467 (1963)CrossRefGoogle Scholar
  50. 50.
    Nazir, S., Anwar, S., Khan, S.A., Shahzad, S., Ali, M., Amin, R., et al.: Software component selection based on quality criteria using the analytic network process. Abstr. Appl. Anal. 2014, 1–12 (2014)CrossRefGoogle Scholar
  51. 51.
    Tian, Z., Zheng, Q., Fan, M., Zhuang, E., Wang, H., Liu, T.: DBPD: a dynamic birthmark-based software plagiarism detection tool. Presented at the SEKE (2014)Google Scholar
  52. 52.
    Tsuzaki, T., Yamamoto, T., Tamada, H., Monden, A.: A fuzzy hashing technique for large scale software birthmarks. Presented at the 15th International Conference on Computer and Information Science (2016)Google Scholar
  53. 53.
    Luo, Y.: Statistics and recognition for software birthmark based on clustering analysis. J. Appl. Stat. 44, 308–324 (2017)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2017

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of SwabiSwabiPakistan
  2. 2.Department of Computer ScienceUniversity of PeshawarPeshawarPakistan
  3. 3.Halal Policy and Management Laboratory, Halal Products Research InstituteUniversiti Putra MalaysiaSerdangMalaysia

Personalised recommendations