Reputation: 133
Basically I have this…
I have created a WPF application. It references a C++/CLI wrapper to a native static LIB.
Now the static LIB has commercially sensitive algorithms.
The code for the static LIB is small and simple.
As it stands someone could decompile the LIB with Ada Pro / Hex-Rays and work out the algorithms easily. What I was wondering was if I could obfuscate the source code then the decompiled LIB would have additional complexity.
What I would like is some way of making what is a fairly small and straight-forward code base obfuscated enough to make it difficult to work out the algorithm from the de-compilation.
Two things. Firstly, I understand that this will not prevent someone from discovering the algorithm. I just want to increase the costs of doing so in terms of time and money. Secondly, I am not actually worried too much about the code itself, it is just the algorithm I want to hide.
I ask here because, a google search gives a lot about obfuscation but says little for this particular case when the codebase is small and simple. Is there are alternative approach that I have overlooked?
Additionally. I am not concerned with obfuscating the managed code.
Upvotes: 4
Views: 7642
Reputation: 149
You can take a look at antispy C/C++ Obfuscation Library for all platforms they offer a range of obfuscation techniques.
Upvotes: 1
Reputation: 4225
Here are several things you can do which may decrease the chances of a 3rd party to find out what your library does, how it works, sensitive strings and so on.
a. https://www.codeproject.com/Articles/502283/Strings-Obfuscation-System
b. https://www.codeproject.com/Articles/1210398/Small-String-Obfuscator
a. http://www.semdesigns.com/Products/Obfuscators/
b. http://stunnix.com/prod/cxxo/
Upvotes: 1