Fusion is an automated application protection tool that is designed to protect your code from being modified and used in a way you have not intended.
When tampered with by an attacker, a Fusion-protected application will fail gracefully at run-time and not offer any clues as to why the protected code fails to operate.
A Fusion-protected binary is injected at build time with thousands of interwoven "check" code instances. These checks validate at runtime that your code has not been modified.
Fusion application protection uses analysis profile data to exclude the most frequently called functions. Additionally, you can easily nominate performance-sensitive areas of code for exclusion of check injection. You have complete control. By using Fusion, you get nearly automatic blending of our protection DNA with your binary.
Properly configured Fusion-protected binaries are extremely tedious to attack.
Step 1 – Static Analysis - Builds a database of the application's functions
Step 2 – Dynamic Analysis (Exercising) - Creates a database of performance data
Step 3 – Build - Uses data collected in steps 1 and 2 to lay out the optimal check code network topology