SBIR/STTR Research Award
Polymorphism and Metamorphism Through Code Weaving
Award amount
$99,939Program and phase
SBIR · Phase IAward year
2005Award details
- Awarding agency
- Department of Defense
- Branch
- Air Force
- Recipient company
- INDIGO INNOVATIONS, INC.
- Proposal award date
- 2005-02-22
- Contract end date
- 2006-02-22
- UEI
- Not reported
- Solicitation number
- 2004.3
- Topic code
- OSD04-SP4
Research abstract
Improved software protection has been identified as an important need by government and industry. Typically much of the value in software is in the underlying algorithms and techniques which may be compromised by reverse-engineering. In many cases, these algorithms represent trade secrets, classified information, or are sensitive and must be protected. Software protection benefits by borrowing ideas and concepts from many areas of expertise. Polymorphism and metamorphism are techniques often associated with computer virus writers; these techniques allow code with identical functionality to take on many "shapes." In viruses, this makes virus code difficult to detect and remove; in software protection, these same properties make reverse-engineering by differential binary comparison difficult. This innovation is a novel technique for polymorphic code generation. With extensions and enhancements described, this becomes a metamorphic technique. Both provide many possibilities for protecting software, although the more advanced metamorphic technique is arguably both more interesting and more powerful. This technique provides formidable protection against reverse-engineering by differential attacks since identical source code can produce vastly different binaries. But the technique has other benefits in protecting against reverse-engineering and unauthorized execution and distribution of software.
Technology keywords
Not reported
Awards with the same topic code
Verified by an exact topic code match. This is not a text-similarity match.
- Software Protection by Polymorphic and Metamorphic Transformations
- Polymorphic Virtual Machines
- Polymorphic Software
- Software Protection by Polymorphic and Metamorphic Transformations
- Specification & Refinement for Application Diversity