Crypto Obfuscator,工作混淆规则如何?

时间:2013-11-05 14:02:08

标签: .net dll reflection obfuscation crypto-obfuscator

我在我的.NET项目中使用Crypto Obfuscator,我想使用“混淆规则”将某些类从混淆中排除,但似乎无效。

首先,我尝试以这种方式使用ObfuscationAttribute:

<ObfuscationAttribute(ApplyToMembers:=True, Exclude:=True)> _
Public Class DynamicClass
Public Overrides Function ToString() As String
    Dim props = Me.GetType().GetProperties(BindingFlags.Instance Or BindingFlags.Public)
    Dim sb As New StringBuilder()
    sb.Append("{")
    For i As Integer = 0 To props.Length - 1
        If (i > 0) Then sb.Append(", ")
        sb.Append(props(i).Name)
        sb.Append("=")
        sb.Append(props(i).GetValue(Me, Nothing))
    Next i
    sb.Append("}")
    Return sb.ToString()
End Function
End Class

但是Crypto Obfuscator继续混淆所有内容并始终显示方法“ToString”的警告。

然后我尝试从Crypto Obfuscator添加一个明确的混淆规则:

  

不要混淆,适用于:{Classes},可见性:{All},名称匹配:“ct:DynamicClass”

但也是这样不行。

我哪里错了?我必须启用一些特殊设置才能使其正常工作?

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

算了吧......

我使用Crypto Obfuscator 2012 R2 Professional,问题与“专业”许可证所施加的限制有关;现在我已经测试了Crypto Obfuscator 2013 R2 Enterprise的试用版,它可以运行。