Patent ID: 8307351

Claim:
A method for performing code provenance review in a software due diligence system, comprising: receiving source code subject to code provenance review; retrieving third-party source code for comparison with the source code subject to code provenance review; fracturing the source code subject to code provenance review into a first set of logical fragments, wherein a text fracturing algorithm is used to fracture the source code subject to code provenance review into the first set of logical fragments; fracturing the third-party source code into a second set of logical fragments, wherein the text fracturing algorithm is used to fracture the third-party source code subject into the second set of logical fragments, wherein the text fracturing algorithm includes one or more parameters for the logical fragments, wherein the parameters include at least one of a minimum number of lines per logical fragment, a maximum number of lines per logical fragment, a maximum number of characters per line, or a maximum number of characters per logical fragment, and wherein the text fracturing algorithm includes one or more rules for determining borders for the logical fragments, wherein the rules are based on language-independent source code features; generating a first set of fingerprints corresponding to the first set of logical fragments, wherein a fingerprint algorithm is used to generate the first set of fingerprints; generating a second set of fingerprints corresponding to the logical fragments in the second set of logical fragments, wherein the fingerprint algorithm is used to generate the second set of fingerprints; and comparing the first set of fingerprints to the second set of fingerprints to determine whether the source code subject to code provenance review contains one or more potential code provenance issues.