The present invention provides a
software local
plagiarism detection method based on the dynamic instruction
dependency graph birthmark. The method comprises: 1) using
dynamic instrumentation to perform instruction level monitoring on a to-be-analyzed program, and capturing an instruction trajectory of each function; 2) for a dynamic instruction trajectory recording each function, carrying out
data dependency and control dependency analysis, and constructing a dynamic instruction
dependency graph birthmark; 3) calculating the similarity between instruction
dependency graph birthmarks, and implementing the measure of similarity between functions; 4) based on the given threshold, constructing a
list of suspicious functions for each function in the plaintiff program; 5) extracting the staticfunction
call graph of the program, and performing precise
pairing of the suspicious functions under the guidance of the calling dependency; and 6) based on the calling dependency, assembling matchedfunction pairs to generate a plagiarism evidence map, and measuring the proportion of suspected plagiarism part. According to the method provided by the present invention, local
plagiarism detection is implemented by constructing a function-level
birthmark; and the concept of a plagiarism evidence map is proposed for the first time, and the effectiveness of the evidence can be greatly enhanced.