Font Size: a A A

Research On Dynamic Software Watermarking Algorithm For Source Code

Posted on:2019-03-29Degree:MasterType:Thesis
Country:ChinaCandidate:Y L WangFull Text:PDF
GTID:2428330566970950Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Software watermarking technology is a technique that encodes certain information into certain characteristic information in the program and embeds it into software.This information can be used to identify ownership and track illegal sources.Software watermarking technology has attracted more and more attention from academics and companies.However,there is no software watermarking algorithm that can effectively defend against all known attacks.Therefore,the goal of software watermarking algorithm design is to increase the difficulty of the attacker to remove the watermark,and the cost of the attack is greater than the benefit obtained.This article briefly introduces the status quo of the software itself and the technology of software watermarking.Based on the nature of the program itself,it focuses on the method of using the function stack frame and program exception handling mechanism to encode the watermark.The specific content includes:(1)A dynamic software watermarking algorithm based on function stack frames is proposed.The algorithm encodes the required embedded watermark information through RS code,generates the watermark information to be embedded,and modulates the embedded watermark information using the inter-frame parity relationship of the function stack.When embedding a watermark,the function call sequence of the target program and the corresponding function stack frame are first obtained by a specific input;then,a local variable is inserted into the function to be modified,and the parity relationship between the function stack frames is changed to realize watermark embedding.The algorithm uses the function of the target program as the object,embeds the watermark into the function call sequence of the target program,and the watermark is closely integrated with the program itself,which increases the concealment of the watermark;the good error correction performance of the RS code enhances the robustness of the watermark.Sex.The experimental results show that the algorithm has good robustness to semantically maintain transform attacks such as code rearrangement,control flow obfuscation,random insertion of variables,and variable splitting.(2)A dynamic software watermarking algorithm based on program exception handling is proposed.The algorithm encodes the binary watermark information into an abnormal type sequence.By constructing trigger conditions and exception handling code,the abnormal type sequence is embedded in the program source code.Based on the ubiquitous features of exception handling in the program,and the similarity of the embedded exception handling and exception handling in the original program itself,the watermark has better concealment;the embedded exception handling is tightly integrated with the original program code.And participate in the implementation of the watermark to enhance the difficulty of removal;exception handling of the embedded logo to enhance the watermark resistance to add,code rearrangement and other attacks.The experimental results show that the watermark has good resistance to maintain semantic transformation attacks,and has good robustness to tools such as code compression,encryption,and shelling.In the end,the paper summarizes the research work and expects the next work.
Keywords/Search Tags:Software protection, Dynamic software watermarking, Function stack, Exception handling, Encoding, Watermark attack
PDF Full Text Request
Related items