Patent ID: 8677149

Claim:
A system for modifying material related to computer software comprising: a processing unit; and a memory storing computer executable instructions that, when executed by the processing unit, cause the processing unit to: receive an original disclosure for a software system, apply a masquerading algorithm to said original disclosure to generate a new disclosure wherein subject matter of said disclosure is different from said new disclosure, receive original source code for said software system, and apply a camouflaging algorithm to said original source code to generate modified source code and conversion data for converting between said modified source code and said original source code, wherein said instructions to apply said masquerading algorithm further comprise instructions for directing said processing unit to: extract keywords from said original disclosure, select a model template using said keywords, and generate said new disclosure using said selected model template and said keywords, wherein said instructions to extract said keywords further comprise instructions for directing said processing unit to: read a vocabulary library from memory, apply a keyword extraction algorithm to said original disclosure using said vocabulary library, determine said keywords from said original disclosure, determine at least one use case from said original disclosure, and determine keywords for each said use case; and wherein said instructions to select said model template comprise: instructions for directing said processing unit to: determine a similarity value for each use case of said original disclosure with each use case of each of a plurality of model templates using a word similarity database wherein said word similarity database stores a relationship between words; and determine a template model that is a best match to said original disclosure based upon said similarity value of each use case of said original disclosure and each use case of said template model.