Author |
Topic |
|
CreatorCray
New Member
9 Posts |
Posted - Dec 10 2007 : 6:47:38 PM
|
Since VAX have refactor rename obfuscation can be implemented quite easy, I think.
For example: rename all identifiers from current workspace to random names by one click.
Does it possible?
|
|
kevinsikes
Tomato Guru
USA
271 Posts |
Posted - Dec 10 2007 : 11:08:44 PM
|
Hi CreatorCray,
Obfuscation is best applied to the IL created after compilation -- you wouldn't want to obfuscate your source code, since maintenance would be a nightmare.
We appreciate your feedback. Thank you for using Visual Assist X. |
Kevin Sikes Infotainment Platform Design Engineer Ford Motor Company |
|
|
CreatorCray
New Member
9 Posts |
Posted - Dec 11 2007 : 05:21:45 AM
|
Yes, but IL is .NET. I need to obfuscate C++ code (part of library, templates inside .hpp). Sure I can use VAX Rename feature, but it's slow because I should call 'rename' to every identifier and type new name manually. |
|
|
feline
Whole Tomato Software
United Kingdom
18991 Posts |
Posted - Dec 11 2007 : 09:35:39 AM
|
But after you have done this how are you going to maintain your code? Surely this is going to become a nightmare? |
zen is the art of being at one with the two'ness |
|
|
CreatorCray
New Member
9 Posts |
Posted - Dec 14 2007 : 02:48:33 AM
|
Obfuscated code is not for maintaining. I need obfuscated copy for evaluation version of library (.h files + .lib). Obfuscation is needed to hide logic inside C++ template classes (~50 classes), which cannot be moved in .lib. Yes, it quite naive and doesn't really hide the code, but for eval version it's quite good. |
|
|
feline
Whole Tomato Software
United Kingdom
18991 Posts |
Posted - Dec 14 2007 : 09:40:35 AM
|
That makes sense.
The problem from VA's point of view is that Rename has to be triggered inside the IDE, on a given symbol. Without doing this VA does not know what you are trying to rename.
Do your current symbols have unique names? If so a simple find and replace in one file, or find and replace in all files might work well for quite a few of the symbols, leaving you with only a smaller number of cases to fix using VA's rename feature. |
zen is the art of being at one with the two'ness |
|
|
CreatorCray
New Member
9 Posts |
Posted - Dec 14 2007 : 11:59:13 AM
|
Understood.
Find and replace doesn't fit good. There's still a lot of hand work. Let's obfuscate std::list for example. All private and protected definitions should be renamed. All local vars in all functions should be renamed. We have public interface untouched - so class can be used. But everything inside is scrambled. Sure there are more steps to complete obfuscation, but they are more simple and VA cannot help with.
Well, I think this question can be closed. |
|
|
|
Topic |
|