US2012260105A1PendingUtilityA1

System and method for defending against reverse engineering of software, firmware and hardware

42
Assignee: SMITH FREDPriority: Jul 9, 2004Filed: Nov 22, 2010Published: Oct 11, 2012
Est. expiryJul 9, 2024(expired)· nominal 20-yr term from priority
G06F 2221/2143G06F 21/14
42
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method for defending a software against reverse engineering in a target environment includes acquiring information from the target environment, encrypting the software to be protected with the acquired information, sending the encrypted software with the acquired information to an execution environment, acquiring information from the execution environment, comparing the information from the execution environment with the acquired information from the target environment to authenticate the execution environment as the target environment, and if the two set of information match, decrypting the software to be protected, and if two set of information do not match, destroying said software.

Claims

exact text as granted — not AI-modified
1 . A method for defending a software against reverse engineering in a target environment comprising:
 acquiring information from said target environment;   encrypting said software with said acquired information;   sending said encrypted software with said acquired information to an execution environment;   acquiring information from said execution environment;   authenticating said execution environment as the target environment by comparing said acquired information from said execution environment with said acquired information from said target environment; and   if said two set of information match, decrypting said software.   
     
     
         2 . A method according to  claim 1  further comprising: if said two set of information do not match, destroying said software. 
     
     
         3 . A method according to  claim 1 , wherein said step of encrypting said software with said acquired information comprises generating an obfuscated executable program to incorporate said software with said acquired information using a random obfuscating compiler. 
     
     
         4 . A method according to  claim 1 , wherein said step of acquiring information from said target environment includes acquiring information from said target environment through at least one ANGEL. 
     
     
         5 . A method according to  claim 1 , wherein said step of acquiring information from said target environment further comprises encrypting said acquired information. 
     
     
         6 . A method according to  claim 1 , wherein said step of decrypting said software comprises decrypting said software using a decryption key which is sent to said target environment from a remote location. 
     
     
         7 . A random obfuscating compiler (ROC) system for defending a software against reverse engineering in a target environment comprising:
 a server for generating one or more ANGELS for acquiring information from the target site,   wherein said server comprises a compiler for compiling said software to be protected and said acquired information to an obfuscated executable program, wherein said compiler encrypts said obfuscated executable program, wherein said obfuscated executable program is adapted to acquire information from an execution environment and authenticate said execution environment as said target environment by comparing said acquired information from said execution environment with said acquired information from said target environment by said ANGELS.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.