Comparative analysis on different software piracy prevention techniques

ABSTRACT


INTRODUCTION
Software piracy is the illicit way of replication, dispensing, amending, marketing or using the software which is legitimately protected i.e the act of stealing legal software in an illegal way which can be through softlifting; one legal owner but multiple users, or through Harddisk loading; one shop owner buy a legal copy and reproduces its copies in multiple computer by installing it, or through counterfeiting; producing duplicates of legal software programs with the appearance of authenticity and sold out at less price, or through client server overuse; installing of software more than it has been licensed for, or through online piracy; internet piracy software gotten from online aunction sites and blogs. Currently, people are bounded on the uses of several applications of software for facilities; especially paying of bills through the intenet, sharing of information online, sports, records handling, and so on [1]. However, increasing trend of software piracy is affecting the software distributors as it reduces the sales of the legitimate software [2].
The major problems of software piracy are high risk of virus and malware infection to the computer system which may results to harmful system security and data corruption among others. The effect of piracy in software development industries has greatly increased which reduced it efficacy. This has been resulted in serious harm to software producers; by duplicating their product without legal consent and marketing by individual who are not having genuine licensed to be use on other system without proper registration keys. The efficacy of the manufacturers and wholesalers to the software produced; became so detrimentally exaggerated to intimidations especially piracy, reverse engineering, and tampering. These may be degraded as the software were not properly protected. Consequently, in other to generate enormous income to software  [3]. The operating systems need to be protected for adept applications (e.g. graphics software); which can also be very costly. The illegal use of software is growing on daily basis due to the easy means of getting software products without proper payment. Wholesalers of software knows the hardness of preventing software from hackers. It is surpose that every user should be in control of his machine's hardware and network connection acess [4].
The execution of different tasks by computer users through several software programs, has make software Application more important [5]. However, the improperly use of software application has resulted into lost of job by software developpers over the years, and imagine the several numbers of those graduating from the Universities and polytechnics with impressive qualifications in the fields of software engineering and other related fields, and those who are studying such related field as their future career. Software piracy is a huge intimidation to their future dreams which may deprive them of realizing their ambitions. This project of relating diverse software prevention techniques will fight piracy in software development with the best proposed method which is very necessary because of its confirmation with verification procedures actuality concealed from the several users of software during installation.

RELATED STUDIES
According to Adu. M. K. the genuine legal software industries are facing unfair competitions by their illegal counter part through the circulation of counterfeit software to the end users, thereby causing high risk of damage of data and insecurity for IT industries [5]. According to Bahar, et al. a combination of four key influences mean that no defective copy-protection system can be conceivably harmless [6,7]. Looks at the birthmark software piracy prevention technique and concentrated on the direction of a fixed software technique that is being used to detect software theft. Several forms of certifying are accessible, varying from "site authorizations" that permit entire consumers in a specified physical site or group of network addresses to practice duplicates of software, to simple single-user arrangements that stop any copying entirely [6]. The work done by Zoheir. T. & Mohommed. A determine what, why and how not to esteem the right to software piracy [8], while Cronin. G. has given the lawful actions in effort to avoid piracy by generating anxiety of penalties of being caught in the act of piracy [9].
Though, studied on code obfuscation which is a method established to help in the avoidance of malicious reverse engineering [10]. Evaluations and analytical studies of several software protection methods, both software-based and hardware-based, that can aid in controling the software piracy problems in order to regulate their efficiency and definite use in diverse locations and situations. The software protection techniques explored in this paper include cryptography, software watermarking, secure access scheme, software aging, guards, obfuscation and multi-block hashing techniques [7], discourses the grouping of the software protection techniques and the possible occurrence models that can be thrown alongside each technique to escape the protection device. To tackle software piracy a diversity of solutions has been suggested, these solutions can be categorized as either deterrent or preventive [11]. Deterrent solutions response to the dread of the penalties of getting caught. The solution is effective if a separate persons desist from illegal behaviour owing to the perceived danger or fear of sanctions. Preventive solutions make use of recent technology to increase the cost of the actual act of piracy. A deterrent solution relies on an individual fear of getting caught and does not directly increase the cost of the actual act of pirating.
In this work a critical study has been carryout on different software piracy techniques such as registration codes as an antipiracy technique, media protection as an antipiracy technique, online activation as an antipiracy technique and a hardware based protection as an antipiracy technique, but another reseach shows that different countries cultural and economic development stages have different remedial approach to piracy prevention [12,13]. Therefore, based on this research study a simple prototypical software was designed using the best technique to validate the results of the study.

RESEARCH METHOD
One of the best general techniques to verify the authenticity of legal users is Serial-Based Protections using product serial numbers [14]. The idea is to provide legal users with a serial key, which is then tested by the program using a secret validation algorithm. This method is not completely used for online distributions. In fact, it was initially used in over-the security software. At the time of installation of the software, a user has to creat a task as in Figure 1 below on the login page as seen in Figure 2, by loging up with the login details as shown in Figure 3 below, and authorise users can change their password as illustrated in Figure 4. The installer asks the user to insert the serial key, if it is incorect the installation process ends. Typically, such a serial key is published on somewhat bundled with the software. In applications that can be registered online, the serial key can be of a specific structure and use above designated scheme to register an application, the user then contacts the producer by sending him; his name and the producer's provides the user with a key, formed on the source of the user restrictions. This serial key was generated using the vendor private key-generating algorithm. When the user enters his parameters and the key in the software registration box, the program calculates the key by running the user parameters through the built-in key generator and then compares the entered key with the one designed in the background as shown in Figure 8 below. When these two values matches, the registration is successful as shown in Figure 9 below. It should be revealed that this security is flexible and user-friendly, but has an integral security risk, because the verification process includes generating the correct key on the end-user's machine.

Analysis of the proposed system
According to the analysis the research therefore reveals so many problems that instigated to software theft, and that there is need to develop a simple software that will ease and prevent software piracy effectively. The major problems of software piracy are high risk of virus and malware infection to the computer system which may results to harmful system security and data corruption among others. Software piracy has affected the productions and the efficiency of the software company. It produces ample harm to software producers when their products are copied illegally without and seprading to other people who are not registered users or when their products are installed among several machines outside the licensed number. Some research has found that lower level of education leads to greater software piracy [15], while other study indicated that education had little significant on software piracy [16,17].
Though, notwithstanding the variety of technical actions against illegitimate replicating of software the protection techniques fail in protecting software. The nature of these protection actions is fixed, and none of these techniques offer suitable protection because they all have been penetrated [3]. In addition, the software protection actions may disappoint customers from buying the genuine product, and thus a new method to piracy is required [18]. Software piracy fallouts in lost revenue worth billions of dollars annually [19]. Revenue losses may lead to lost jobs, and there is also a possibility of losing both domestic and foreign investments. [20] The proposed system (method) must be able to fulfil the following: a) Accuracy (Errors should be quickly checked and corrected). b) Efficiency (Providing skillfulness in avoiding piracy of software). c) Economical (Using the minimum of time or resources necessary for effectiveness). d) Functionality (Capable of serving a purpose well). e) User friendly (Providing comfortable environment for work as well as comprehensive output).

System analysis and design
A system simply means a collection of many interrelated parts working together to achieve a desired goal. System analysis and design therefore; It is a process of gathering and understanding facts, classifying the problems, and decomposition of a system into its components. System analysis is conducted for the purpose of reviewing a system or its parts in order to identify its objectives. It is a problem solving technique that improves the system and ensures that all the components of the system work proficiently to achieve their purpose. Logical design of a system relates to an intellectual illustration of the data flows, inputs and outputs of the system. This is often conducted via modelling, using an over-abstract (and sometimes graphical) model of the actual system. In the framework of systems, designs the followings are included.

Input design
Input design of the system was defined to accept the required input to process and finally display the required output as shown in Figure 5 below. However, some of the segments do not entail input but you just choice the command and it executes the command automatically. The program accepts the required input from the user and displays the consistent output.

Output design
The output of this program was designed in such a way to meet the desire of the user and to give the required information as shown in Figure 6 & Figure 7. However, some of its part do not require the user to input data.

Form design
Form used in this program were designed, defined and linked together to meet the desired and required need. Some of the forms used in the program are shown below:

DESCRIPTION OF THE RESULTS
Various result has so far been obtained from the recently implemented program of the "Simple Validation Software" mainly with the correct input displaying to the user where task is shall be created as shown in the Figure 5.   Figure 7, after the task went successful, the user now trying to activate. But he really need the product key which is the serial key for accessing the feature of the system, this will not be possible so he has to contact the Authorized user/ admin to send the Serial key for such activation.

CONCLUSION
The system which is similar to the activation code system is an improvement to it, since there is no prospect for the user to supply false information to the vendor, the software codes automatically collects user information and send to the vendors' user information platform. All is geared towards looking for a solution to software piracy which affects all Software developers and vendors have been losing funds that would have been raised from the sales of their software products aimed at funding further development efforts and making substantial and continuing research.