zoukankan      html  css  js  c++  java
  • vs 中自带的代码混淆器 Dotfuscator (图)

    研究了一下,确实可以起到一定的混淆代码作用。但是有几点需要注意一下:

    1.未注册版本使用时不能混淆公共类库、公共方法等,所以使用时一些敏感的信息以及程序逻辑尽可能的现在 private 方法中。

    2.需要选中“在库模式中运行所有程序集”

    3.和第一条说的一样内容,混淆是必须把 public 类型的对象排除掉“选中排除”

    4.还需要“保持命名空间”

    这个混淆后的代码使用反编译工具仍然可以看到部分源码,只是 private 部分的名称都被混淆了,所以可以起到一定的加密作用。但是作用是非常有限的,下面的图片是混淆后的代码,大部分源码还是可以看到,但是变量被重命名了。

    混淆前
    Imports System.Data

    Imports DataTier
    Imports DataTier.vDataType

    Public Class bView

        
    Function bViewToDT(ByVal vt() As viewType) As DataTable

            
    '将留言类型转换为 DataTable

            
    Dim dt As New DataTable

            
    Dim cName() As String = {"vid""vuser""vtime""vcon""vip""vverify""vicon""vemail"}

            
    For i As Byte = 0 To cName.Length - 1
                
    If cName(i) = "vtime" Then
                    dt.Columns.Add(cName(i), System.Type.GetType(
    "System.DateTime"))
                
    Else
                    dt.Columns.Add(cName(i))
                
    End If
            
    Next

            
    Try 
                
    For ii As Byte = 0 To vt.Length - 1
                    
    Dim dr As DataRow = dt.NewRow
                    dr(
    "vid"= vt(ii).vid
                    dr(
    "vuser"= vt(ii).vuser
                    dr(
    "vtime"= vt(ii).vtime
                    dr(
    "vcon"= vt(ii).vcon
                    dr(
    "vverify"= vt(ii).vverify
                    dr(
    "vip"= vt(ii).vip
                    dr(
    "vicon"= vt(ii).vicon
                    dr(
    "vemail"= vt(ii).vemail
                    dt.Rows.Add(dr)
                
    Next
            
    Catch ex As Exception

            
    End Try

            
    Return dt

        
    End Function

    End Class

    后面这个图片是使用 reflector 反编译的源码抓图得来:

    以上观点仅限于本人目前所掌握知识。

  • 相关阅读:
    对象池使用时要注意几点
    Flash3D学习计划(一)——3D渲染的一般管线流程
    714. Best Time to Buy and Sell Stock with Transaction Fee
    712. Minimum ASCII Delete Sum for Two Strings
    647. Palindromic Substrings(马拉车算法)
    413. Arithmetic Slices
    877. Stone Game
    338. Counting Bits
    303. Range Sum Query
    198. House Robber
  • 原文地址:https://www.cnblogs.com/jarod99/p/1362486.html
Copyright © 2011-2022 走看看