Obfuscation problem

sergeysergey Posts: 2
edited December 3, 2010 4:56AM in SmartAssembly 5
Hi guys,

I am using SmartAssembly 5.5 to obfuscate my assembly and it seems an unexpected problem occurred: A few internal classes and enums is partially obfuscated - namespace and class name aren't changed after obfuscation, although their members in classes are obfuscated and the ones aren't obfuscated in enums. Nevertheless, other internal classes in my code were obfuscated normally. I cannot found any differences for these classes in source code. Could you explain me what is the reason of this problem?
namespace Html.Model
{
    internal enum TextVAlignType
    {
        Baseline,
        Bottom,
        Middle,
        Top,
        Sub,
        Super,
        TextBottom,
        TextTop
    }
}
or
internal class SupportClass { 
...
}

Here is my sa project
SmartAssemblyProject ProjectId="{ae26c659-45c9-4856-9773-bda43a46f02d}" Version="2.0">
    <MainAssemblyFileName>..\..\build-out\NET20\MyAssembly.dll</MainAssemblyFileName>
    <FriendlyName>MyAssembly</FriendlyName>
    <CompanyName>MyAssembly</CompanyName>
    <Configuration Name="Release">
        <ApplicationName>MyAssembly</ApplicationName>
        <Destination DestinationFileName="..\..\build-out\Obfuscated\NET20\MyAssembly.dll" />
        <Assemblies>
            <Assembly AssemblyName="MyAssembly, Culture=neutral, PublicKeyToken=716fcc553a201e56">
                <Merging>
                    <ResourcesCompression Compress="1" />
                    <MemberRefsProxy Proxy="0" />
                    <Pruning Prune="1">
                        <Exclusion />
                    </Pruning>
                    <Obfuscation Obfuscate="1">
                        <Exclusion />
                    </Obfuscation>
                    <ControlFlow Obfuscate="1" ObfuscationLevel="2" />
                    <ResourcesPruning />
                </Merging>
            </Assembly>
            <Assembly AssemblyName="{smartassembly}.ResourceResolver, Culture=neutral, PublicKeyToken=7f465a1c156d4d57">
                <Merging>
                    <Obfuscation>
                        <Exclusion />
                    </Obfuscation>
                </Merging>
            </Assembly>
            <Assembly AssemblyName="SmartAssembly.AssemblyResolver, Culture=neutral, PublicKeyToken=7f465a1c156d4d57">
                <Merging>
                    <Obfuscation>
                        <Exclusion />
                    </Obfuscation>
                </Merging>
            </Assembly>
            <Assembly AssemblyName="SmartAssembly.StringsEncoding, Culture=neutral, PublicKeyToken=7f465a1c156d4d57">
                <Merging>
                    <Obfuscation>
                        <Exclusion />
                    </Obfuscation>
                </Merging>
            </Assembly>
            <Assembly AssemblyName="SmartAssembly.Zip, Culture=neutral, PublicKeyToken=7f465a1c156d4d57">
                <Merging>
                    <Obfuscation>
                        <Exclusion />
                    </Obfuscation>
                </Merging>
            </Assembly>
        </Assemblies>
        <Options>
            <Obfuscation FieldsNameMangling="2" NameMangling="2" />
            <ExceptionReporting ReportExceptions="0" Template="res:{SmartExceptions}.1033.dll" />
            <StrongNameSigning KeyFileName="..\..\src\MyKey.snk" Sign="1" />
            <OtherProtections SuppressIldasm="1" />
            <StringsEncoding Compress="1" Encode="1" />
            <OtherOptimizations SealClasses="0" />
            <Debugging />
        </Options>
    </Configuration>
</SmartAssemblyProject>

Thanks,
Sergey

Comments

Sign In or Register to comment.