Font Size: a A A

On Resilient Features Based Software Watermarking

Posted on:2013-12-27Degree:DoctorType:Dissertation
Country:ChinaCandidate:G SunFull Text:PDF
GTID:1228330395485109Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
Software watermarking is used to identify a pirate copy, protects the software copyright,belongs to digital watermark technology. Software watermarking looks on copyrightinformation as a watermark, embeds the watermark into software control flow, code or data. Byextracting the watermark, this technique has held the cracker in awe, protected softwareintellectual property indeed. Software watermarking proves the ownership, doesn’t limit thesoftware as well has no effect on market, has been regarded highly by the company and saferesearcher of software.In recent20years, has got large amount of research results. But, up to now, few softwarewatermarking technology is applied to the application, software watermarking is faced withmany problems.One of the limiting factors of the software watermarking is that somealgorithms, embed the watermark with the way adding puppet instruction, the codes forming awatermark have no way to blend with true code. It’s easy to find out these puppet codes byreverse engineering. Optimizer is able to produce enormous effect to the watermark. Fewsoftware watermarking technologies can resist to obfuscation. The available softwarewatermarking algorithms try to improve the robustness by concealing these codes, such codeshave no way to be related to software function, to observation, always can find out these codes.Resolving is that the software watermark is embedded into software core function, link thewatermark codes with software behavior, if these codes are deleted, the software works onwrong way. As well, software watermark takes software overall characteristic as carrier, therobustness can be improved. In addition, plagiarizing the entire codes is rare in fact. The mostattackers copy the part code only. The duplicating code is always a subsystem. Software sharesa graph structure, clustering software identifies every subsystem. When the software watermarkalgorithm focuses the embedding on entire program, watermark code is randomly inserted intothe place satisfying embedding. Extracting a watermark in the part code is unlikely. Steal a partfrom the program, made a cut attacks in some way.To solve the mentioned problem, this dissertation presents the works as follows:Clustering the software aims to plagiarizing the part codes; embedding the watermarks ininstruction frequency, hot paths and obfuscation compile proves the robustness of watermarks.The main contributions of this dissertation are as following:1. Software Watermarking Based on Condensed Co-Change Graph ClusterMost software watermarking research focus on the discovery of watermark embedding,still no way to answer the problem that the part code is plagiarized. This study presents the first step toward a consideration of that watermarking every stolen part can improve the softwarewatermarking practicality. Condensed Co-Change Graph of software is inexpensivelyextractable with CVS server. Merging unchanged artifacts in the way of random walk used tobuild accurate Condensed Co-Change Graph. We use extended GN method in Co-Changegraph partition. Each cluster is a subsystem of software. The experiment on SANDMARKshows that takes cluster as unit after embedding a watermark, being able to extract watermarksuccessfully among any subsystems, except graph watermarking. If algorithm takes overallprogram as the watermark body, few approaches do work. Watermarking cluster can resist partcode stolen.2. A new software watermarking algorithm based on instruction replacement ofparticular assemblyDraw on SHKQ, this dissertation presents a new software watermarking approach whichmodifies the frequency of selected assembly’s instruction to embed the watermark. Withchanging a particular instruction’s frequency of selected assembly, a bit of watermark isembedded into IL program. This watermark is extracted by calculating the frequency ofinstruction recorded in the textbook. This paper describes the implementation of softwarewatermarking algorithm based on instruction replacement of particular assembly and the issuesthat arise when aiming to MSIL, special for textbook. The experimental results show that thisalgorithm can resist collusive attack, more feasible than SHKQ in practice.3. Hot Path Dataflow Approach to Software WatermarkingThis paper presents a new approach to software watermarking based on dataflow of hotpath. Our approach computes hot paths from whole program path (WPP), and then uses impactanalysis approach to obtain the codes which closely related to the hot path. From these codes,extracts the dataflow which it uses to embed watermarks. By instrument the frequency of thedataflow, one bit watermark is embedded into one hot path. Extracting watermark is a reverseprocess. The hot path dataflow (HPD) approach would make the watermark more robustbecause disturbing the hot path would affect the semantic and the functionality of theunderlying software. The dataflow is available if hot path doesn’t change. Furthermore,instrument the frequency of the dataflow have a minimal effect on the operations andperformance of the data structure. This study provides a detailed security analysis andperformance evaluation to show that the addition of the watermark does not affect theperformance nor does it increase the size of the program, and the embedded watermarks arerobust, can withstand various types of attacks.4. Unmatched Obfuscation Based Software watermarkingUnmatched obfuscation based software watermarking combines obfuscation with watermark properly. Unmatched obfuscation obfuscates the program, at same time, map thewatermarks to obfuscation rule. The obfuscated program doesn’t possess entire function,running the obfuscated program leads to wrong behaviors. The unmatched obfuscation hidesthe function of program and support the protection of watermarks. Moreover, there is a soleunit used to recovery the program, testify the watermarks. The experiment shows thatunmatched obfuscation cuts the interpretation of the obfuscated program, makes the reverseengineering fail, and prompts the robustness of the watermarks.5. Expanded Hot Path for Software BirthmarkingThe study of software birthmarking has promoted software safety, software maintenance,software debugging and so on. Resilience-resistance to transformation is feasible factor toensure a carrier. Credibility-distinguish two sets of modules is an ideal factor to find softwarewatermarking embedding carrier. According to this idea, we extract birthmark from expandedhot path. The experiment shows that, the resilience of this birthmark and WPP birthmark areidentical, the credibility overtops the WPP birthmark obviously.
Keywords/Search Tags:software clustering, hot path, Whole Program Path, unmatched obfuscation, software birthmarking, resilient features
PDF Full Text Request
Related items