Abstract
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.
Similar content being viewed by others
References
Collberg, C., Sahoo, T.R.: Software watermarking in the frequency domain: implementation, analysis, and attacks. J. Comput. Secur. 13, 721–755 (2005)
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)
Collberg, C.S., Thomborson, C., Townsend, G.M.: Dynamic graph-based software fingerprinting. ACM Trans. Program. Lang. Syst. 29, 35 (2007)
Pieprzyk, J.: Fingerprints for copyright software protection. In: Information Security, vol. 1729, pp. 178–190. Springer, Berlin (1999)
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)
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)
Guo, Y., Wang, M., Luo, Y.: Identifying software theft based on classification of multi-attribute features. J. Softw. 9, 1401–1411 (2014)
Myles, G., Collberg, C.: Detecting software theft via whole program path birthmarks. In: Information Security, vol. 3225, pp. 404–415. Springer, Berlin (2004)
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)
Aiken, A.: Moss: a system for detecting software plagiarism. University of California–Berkeley. http://www.cs.berkeley.edu/aiken/moss.html (2005)
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)
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)
Zeng, Y., Liu, F., Luo, X., Lian, S.: Abstract interpretation-based semantic framework for software birthmark. Comput. Secur. 31, 377–390 (2012)
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)
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)
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)
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)
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)
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)
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)
Ž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)
Mohanty, S.K., Bisoi, A.K.: Software effort estimation approaches—a review. In: International Journal of Internet Computing, pp. 82–88 (2012)
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)
Gottschlich, C.: Curved-region-based ridge frequency estimation and curved Gabor filters for fingerprint image enhancement. IEEE Trans. Image Process. 21, 220–227 (2012)
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)
Nazir, S., Shahzad, S., Riza, L.S.: Birthmark-based software classification using rough sets. Arabian J. Sci. Eng. 42, 1–13 (2016)
MATLAB, 7.10.0 ed. The MathWorks Inc, Natick (2010)
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)
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)
Cesare, S., Xiang, Y.: Software Similarity and Classification. Springer, London (2012)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
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)
Zadeh, L.A.: Fuzzy logic. Computer 21, 83–93 (1988)
Yen, J., Langari, R.: Fuzzy Logic: Intelligence, Control and Information, 1st edn. Prentice-Hall, Upper Saddle River (1999)
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)
Choi, S., Park, H., Lim, H.-I., Han, T.: A static API birthmark for Windows binary executables. J. Syst. Softw. 82, 862–873 (2009)
Yousuf, M.I.: Using experts’ opinions through delphi technique. Pract. Assess. Res. Eval. 12, 1–8 (2007)
Dalkey, N., Helmer, O.: An experimental application of the Delphi method to the use of experts. Manag. Sci. 9, 458–467 (1963)
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)
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)
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)
Luo, Y.: Statistics and recognition for software birthmark based on clustering analysis. J. Appl. Stat. 44, 308–324 (2017)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Nazir, S., Shahzad, S., Atan, R.B. et al. Estimation of software features based birthmark. Cluster Comput 21, 333–346 (2018). https://doi.org/10.1007/s10586-017-0842-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-017-0842-3