unity3d程序加密_unity3d dll加密 - CSDN
  • 之前一篇文章阿赵已经简单的介绍了怎样把自己写的代码打包成dll动态链接库,然后在Unity3D里面用。那么接下来的事情似乎就很简单了,我们在Unity3D里面写脚本,到最后完成时,把核心的代码剪切出去打包成dll文件再放...
    之前一篇文章阿赵已经简单的介绍了怎样把自己写的代码打包成dll动态链接库,然后在Unity3D里面用。那么接下来的事情似乎就很简单了,我们在Unity3D里面写脚本,到最后完成时,把核心的代码剪切出去打包成dll文件再放回项目里面。这样似乎别人就不能直接修改你的代码了。事实真的是这样吗?
    

    这里假设我们在Unity3D里面写的代码抽象成这样一个Test类,里面包含了公开和私有的变量,有自带的Start方法、Update方法和OnGUI方法,还有public、private和protected方法。虽然说用抽象类代表了项目里面实际的类,但为了可以看得到代码效果,所以在方法里面大概写了一些简单的打印的命令。
    这里写图片描述

    把这个Test类放到上次的类库项目里面,然后生成dll,放到Unity3D项目里面:
    这里写图片描述

    其实要看到dll里面的内容,很多软件都可以,我们这里就拿Unity3D自带的MonoDevelop来看。找到引用里面的dll文件,这里是AzhaoDll.dll。
    这里写图片描述

    可以直接浏览到dll里面的内容,看看刚才那个Test类,是不是每一个变量、每一个方法都一字不缺的显示出来了?
    这里写图片描述
    还有上次写的Math3D方法,也能直接看得到。
    这里写图片描述

    dll就是这么不保险的一个东西,所以我们要引入这一篇文章的内容:对Dll进行混淆。
    .Net的代码混淆器有好几种,比如VS自带的DotFuscator、小巧的Reactor,或者相对比较专业的xeoncode。
    这里我使用了xeoncode 2010版本。
    界面如下:
    这里写图片描述

    来到Application,可以添加dll文件:
    这里写图片描述

    选择需要混淆的dll:
    这里写图片描述
    然后在Project可以看到dll里面的类、变量和方法。看到某些变量和方法前面打了勾,这是需要混淆的意思,这个可以自己调整,后面再说:
    这里写图片描述

    在Output里面选择一个输出的路径:
    这里写图片描述

    然后点击右下角的Build Application,就可以发布混淆好的dll。
    这里写图片描述

    把混淆好的dll放回Unity3D项目,就可以看到,这次的dll里面出现了很多随机数字和字母组成的变量名称和方法名称:
    这里写图片描述
    仔细的看,可以看出,刚才打钩了的方法和变量都变成乱码名称,然后在方法调用里面也会发生一些变化,除了名称改变以后,代码本身也会发生一些变化,没有之前那么直接的显示出调用的情况,如果是复杂的调用,将会出现goto来代替了。
    这样一来,就算是写代码的人自己也很难看得明白这些代码了。当然如果真的非常有心的逐个变量方法名称去对应,逐个goto调用去查找,也还是可以还原的,但估计很少人会话这个功夫去做这种事情。到这里,混淆的目的就达到了。
    不过现在拿这个dll去实际运行,会发现出现很多问题的,比如Unity3D自带的方法Start、Update之类的是不会执行的。这是因为混淆的时候把一些不应该混的东西给混淆了。
    那么接下来就说一下注意的事项:
    1、public和protected的变量和方法,默认是不会混淆的,你也可以手动的把勾打上,让它混淆,不过由于这些是被外部调用的变量和方法,你混淆了它的名称,那么外部调用的时候是必然出错的。
    2、像Unity3D的Start、Update、OnGUI等MonoBehaviour自带的方法,都是具有特定含义的,虽然是私有方法,但也不应该混淆,不然到了该执行的时候就不会执行了。
    3、某些有特定含义的名称,或者有用到使用字符串来识别变量或者方法名称时,这些方法和字符串都不应该混淆,不然也会出现调用不到的情况。
    这里写图片描述

    以上是简单的使用方法,具体的情况可能要到真正用的时候才会出现,所以就随机应变了。
    
    展开全文
  • 原文地址:http://liweizhaolili.blog.163.com/blog/static/1623074420144313825921/

    原文地址:http://liweizhaolili.blog.163.com/blog/static/1623074420144313825921/


    如果稍微关注过这方面知识的朋友,应该知道Unity3D做出来的项目是非常容易被反编译的,被反编译后你的所有资源和代码都将会毫无遮掩的呈现出来。由于.net本身没什么加密的措施,所以我们一般都是使用混淆代码的方式来对程序进行一定的加密。

    接下来2篇博客,阿赵将会简单的讲一下我自己在Unity3D的程序加密做法。首先第一篇,我会简单的说明一下怎样在Unity3D里面使用dll动态链接库,然后第二篇会说明怎样对dll进行混淆。

    开始第一篇的内容:
    首先,我们需要新建一个类库项目,可以使用Visual Studio或者Monodevelop来做。我这里是使用vs2012来创建:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
    选择好项目类型、写好项目名称。
     
    新生成的项目里面默认有一个Class1类
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    可以通过在解决方案资源管理器里面进行重命名改成自己想要的类名,比如我这里改成了Math3D
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    然后写一个简单的静态方法在里面。这里我写了个最简单的加法(Add)。也可以不写静态方法,写出普通的public方法,用的时候new对象出来调用该方法也可以。这和正常的C#编程没区别。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    写好之后,在资源管理器里面选择“生成”,那么在项目的bin/debug 里面就会看到dll文件,比如我这个额项目就是AzhaoDll.dll
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     

    接下来在Unity3D里面创建你需要的项目,把刚才的dll文件随便放到项目的Assets文件夹里面。关于这个dll文件的存放位置,网上有些人说是必须放在插件文件夹里面,其实是不需要的,放在任意位置它都能被识别出来。当然,按照良好的项目路径习惯,我们建立一个专门放插件的文件夹来存放dll文件,也是合理的。

    然后在Unity3D里面创建一个C#脚本,写一行简单的代码来调用我们刚才写的Math3D.Add方法。
     Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

    这时会发现Math3D类不能识别,我们using AzhaoDll命名空间
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

    然后在Unity3D里把脚本挂到摄像机上,运行,可以看到打印出正确的结果了,这就证明了dll已经被成功调用了。
     Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

     回顾刚才我们做的一些小细节,在类库项目的Math3D类里面。我们默认的使用了AzhaoDll命名空间。那么假如我们不使用命名空间,或者使用其他的命名空间行不行?答案是可以的,命名空间可以任意的更改,如果不用命名空间,那么在调用的时候就不需要using,如果使用了其他命名空间,对应的using其命名空间就行了。
    以下试试把命名空间删掉:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    那么在Unity3D里面调用就直接可以用了:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     运行的结果也是正常的:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

    当然,不太建议不使用命名空间,这样做一个说明,是因为unity3D本身创建的脚本默认没有使用命名空间,只是想说明如果不想麻烦,直接把Unity3D没有命名空间的脚本直接拿来编译也是可以的。

    再次回顾细节,刚才我们使用的是原生的C#,假如我们需要在类库项目写调用Unity3D本身功能的方法怎样办呢?
    在Unity3D的安装目录Editor\Data\Managed里面,找到UnityEditor.dll和UnityEngine.dll两个文件。 
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     然后在类库项目里面添加引用,把这两个dll添加进来
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    这时候,我们就可以在类库项目里面using UnityEngine来使用Unity3D的方法了,比如我们这里简单写了个CreateGameObject方法,生成一个名字为“CreateByDll”的gameobject。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
     生成dll,放回Unity3D项目里,我们就可以调用这个方法:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
    运行,看到这个叫做“CreateByDll”的物体生成出来了。
     Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    通过以上的说明,我们会发现其实生成自己的dll在Unity3D里面用是很简单的事情。我们还可以添加其他自己写好的类进类库项目,然后生成dll来使用。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    最后说一下注意事项了。
    刚才生成的dll在Unity3D编辑器里面基本上都是能用的,但不一定能通过编译。有可能在编译成exe或者apk等时会报错。
    需要注意的是,类库项目使用的.Net Framework版本。我自己的尝试是,使用.Net 4.0以上版本发布的dll,在Unity3D里面会编译不通过。所以我们可以用2.0或者3.0之类的版本来发布。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     还有一些情况是某些现成的dll动态库是使用完整的.Net2.0来发布的,所以我们在编译的时候有可能需要选择完整的.Net 2.0来发布。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

    到了这一步,我们就可以把Unity3D的整个代码文件夹里面所有的脚本剪切到类库项目里面生成dll,然后放回Unity3D项目里面。这样别人就不能直接的编辑我们项目里面的代码了。

    不过dll本身是不安全的,别人可以很容易看到里面的内容。下一篇博客我们再说明怎样去给dll做混淆。

    展开全文
  • 这里假设我们在Unity3D里面写的代码抽象成这样一个Test类,里面包含了公开和私有的变量,有自带的Start方法、Update方法和OnGUI方法,还有public、private和protected方法。虽然说用抽象类代表了项目里面实际的类,...
    这里假设我们在Unity3D里面写的代码抽象成这样一个Test类,里面包含了公开和私有的变量,有自带的Start方法、Update方法和OnGUI方法,还有public、private和protected方法。虽然说用抽象类代表了项目里面实际的类,但为了可以看得到代码效果,所以在方法里面大概写了一些简单的打印的命令。
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    把这个Test类放到上次的类库项目里面,然后生成dll,放到Unity3D项目里面:
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    其实要看到dll里面的内容,很多软件都可以,我们这里就拿Unity3D自带的MonoDevelop来看。找到引用里面的dll文件,这里是AzhaoDll.dll。
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    可以直接浏览到dll里面的内容,看看刚才那个Test类,是不是每一个变量、每一个方法都一字不缺的显示出来了?
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     还有上次写的Math3D方法,也能直接看得到。
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    dll就是这么不保险的一个东西,所以我们要引入这一篇文章的内容:对Dll进行混淆。
    .Net的代码混淆器有好几种,比如VS自带的DotFuscator、小巧的Reactor,或者相对比较专业的xeoncode。
    这里我使用了xeoncode 2010版本。
    界面如下:
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    来到Application,可以添加dll文件:
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    选择需要混淆的dll:
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵

    然后在Project可以看到dll里面的类、变量和方法。看到某些变量和方法前面打了勾,这是需要混淆的意思,这个可以自己调整,后面再说:
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
      
    在Output里面选择一个输出的路径:
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    然后点击右下角的Build Application,就可以发布混淆好的dll。
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    把混淆好的dll放回Unity3D项目,就可以看到,这次的dll里面出现了很多随机数字和字母组成的变量名称和方法名称:
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵
     仔细的看,可以看出,刚才打钩了的方法和变量都变成乱码名称,然后在方法调用里面也会发生一些变化,除了名称改变以后,代码本身也会发生一些变化,没有之前那么直接的显示出调用的情况,如果是复杂的调用,将会出现goto来代替了。
    这样一来,就算是写代码的人自己也很难看得明白这些代码了。当然如果真的非常有心的逐个变量方法名称去对应,逐个goto调用去查找,也还是可以还原的,但估计很少人会话这个功夫去做这种事情。到这里,混淆的目的就达到了。

    不过现在拿这个dll去实际运行,会发现出现很多问题的,比如Unity3D自带的方法Start、Update之类的是不会执行的。这是因为混淆的时候把一些不应该混的东西给混淆了。

    那么接下来就说一下注意的事项:
    1、public和protected的变量和方法,默认是不会混淆的,你也可以手动的把勾打上,让它混淆,不过由于这些是被外部调用的变量和方法,你混淆了它的名称,那么外部调用的时候是必然出错的。
    2、像Unity3D的Start、Update、OnGUI等MonoBehaviour自带的方法,都是具有特定含义的,虽然是私有方法,但也不应该混淆,不然到了该执行的时候就不会执行了。
    3、某些有特定含义的名称,或者有用到使用字符串来识别变量或者方法名称时,这些方法和字符串都不应该混淆,不然也会出现调用不到的情况。
     
    Unity3D项目程序加密2——对dll进行混淆 - 阿赵 - 穷到掉渣的超级奶爸阿赵

    以上是简单的使用方法,具体的情况可能要到真正用的时候才会出现,所以就随机应变了。

    原文地址: http://liweizhaolili.blog.163.com/blog/static/1623074420145110502776/

    展开全文
  • 如果稍微关注过这方面知识的朋友,应该知道Unity3D做出来的项目...接下来2篇博客,阿赵将会简单的讲一下我自己在Unity3D程序加密做法。首先第一篇,我会简单的说明一下怎样在Unity3D里面使用dll动态链接库,然后第二

    转载自:http://liweizhaolili.blog.163.com/blog/static/1623074420144313825921/


    如果稍微关注过这方面知识的朋友,应该知道Unity3D做出来的项目是非常容易被反编译的,被反编译后你的所有资源和代码都将会毫无遮掩的呈现出来。由于.net本身没什么加密的措施,所以我们一般都是使用混淆代码的方式来对程序进行一定的加密。

    接下来2篇博客,阿赵将会简单的讲一下我自己在Unity3D的程序加密做法。首先第一篇,我会简单的说明一下怎样在Unity3D里面使用dll动态链接库,然后第二篇会说明怎样对dll进行混淆。

    开始第一篇的内容:
    首先,我们需要新建一个类库项目,可以使用Visual Studio或者Monodevelop来做。我这里是使用vs2012来创建:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
    选择好项目类型、写好项目名称。
     
    新生成的项目里面默认有一个Class1类
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    可以通过在解决方案资源管理器里面进行重命名改成自己想要的类名,比如我这里改成了Math3D
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    然后写一个简单的静态方法在里面。这里我写了个最简单的加法(Add)。也可以不写静态方法,写出普通的public方法,用的时候new对象出来调用该方法也可以。这和正常的C#编程没区别。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    写好之后,在资源管理器里面选择“生成”,那么在项目的bin/debug 里面就会看到dll文件,比如我这个额项目就是AzhaoDll.dll
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     

    接下来在Unity3D里面创建你需要的项目,把刚才的dll文件随便放到项目的Assets文件夹里面。关于这个dll文件的存放位置,网上有些人说是必须放在插件文件夹里面,其实是不需要的,放在任意位置它都能被识别出来。当然,按照良好的项目路径习惯,我们建立一个专门放插件的文件夹来存放dll文件,也是合理的。

    然后在Unity3D里面创建一个C#脚本,写一行简单的代码来调用我们刚才写的Math3D.Add方法。
     Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

    这时会发现Math3D类不能识别,我们using AzhaoDll命名空间
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

    然后在Unity3D里把脚本挂到摄像机上,运行,可以看到打印出正确的结果了,这就证明了dll已经被成功调用了。
     Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

     回顾刚才我们做的一些小细节,在类库项目的Math3D类里面。我们默认的使用了AzhaoDll命名空间。那么假如我们不使用命名空间,或者使用其他的命名空间行不行?答案是可以的,命名空间可以任意的更改,如果不用命名空间,那么在调用的时候就不需要using,如果使用了其他命名空间,对应的using其命名空间就行了。
    以下试试把命名空间删掉:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    那么在Unity3D里面调用就直接可以用了:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     运行的结果也是正常的:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

    当然,不太建议不使用命名空间,这样做一个说明,是因为unity3D本身创建的脚本默认没有使用命名空间,只是想说明如果不想麻烦,直接把Unity3D没有命名空间的脚本直接拿来编译也是可以的。

    再次回顾细节,刚才我们使用的是原生的C#,假如我们需要在类库项目写调用Unity3D本身功能的方法怎样办呢?
    在Unity3D的安装目录Editor\Data\Managed里面,找到UnityEditor.dll和UnityEngine.dll两个文件。 
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     然后在类库项目里面添加引用,把这两个dll添加进来
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    这时候,我们就可以在类库项目里面using UnityEngine来使用Unity3D的方法了,比如我们这里简单写了个CreateGameObject方法,生成一个名字为“CreateByDll”的gameobject。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
     生成dll,放回Unity3D项目里,我们就可以调用这个方法:
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
    运行,看到这个叫做“CreateByDll”的物体生成出来了。
     Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    通过以上的说明,我们会发现其实生成自己的dll在Unity3D里面用是很简单的事情。我们还可以添加其他自己写好的类进类库项目,然后生成dll来使用。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     
    最后说一下注意事项了。
    刚才生成的dll在Unity3D编辑器里面基本上都是能用的,但不一定能通过编译。有可能在编译成exe或者apk等时会报错。
    需要注意的是,类库项目使用的.Net Framework版本。我自己的尝试是,使用.Net 4.0以上版本发布的dll,在Unity3D里面会编译不通过。所以我们可以用2.0或者3.0之类的版本来发布。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵
     还有一些情况是某些现成的dll动态库是使用完整的.Net2.0来发布的,所以我们在编译的时候有可能需要选择完整的.Net 2.0来发布。
    Unity3D项目程序加密1——在Unity3D里使用自己的dll - 阿赵 - 穷到掉渣的超级奶爸阿赵

    到了这一步,我们就可以把Unity3D的整个代码文件夹里面所有的脚本剪切到类库项目里面生成dll,然后放回Unity3D项目里面。这样别人就不能直接的编辑我们项目里面的代码了。

    不过dll本身是不安全的,别人可以很容易看到里面的内容。下一篇博客我们再说明怎样去给dll做混淆。
    展开全文
  • 如果稍微关注过这方面知识的朋友,应该知道Unity3D做...接下来2篇博客,阿赵将会简单的讲一下我自己在Unity3D程序加密做法。首先第一篇,我会简单的说明一下怎样在Unity3D里面使用dll动态链接库,然后第二篇会说...
  • 那么有关Unity3D程序的安全问题必须提上日程,辛辛苦苦研发的应用一旦被破解盗版,损失将不可估量。 解决方案 Virbox Protector Unity3D版加密工具, 是北京深思数盾自主研发的程序保护工具,可快速加密保护 Unity...
  • Unity 加密狗加密

    2019-06-16 07:39:59
    分享Unity3D程序加密及授权使用加密狗的方案。首先对Unity3D 程序做代码加密,保护不被反编译。使用的方法是对整个程序的文件夹拖到加壳工具(Virbox Protector)中加壳保护。加壳时要与加密锁进行绑定,在加壳程序...
  • Unity3D项目程序加密1

    2017-07-18 14:55:05
    Unity3D项目程序加密1 如果稍微关注过这方面知识的朋友,应该知道Unity3D做出来的项目是非常容易被反编译的,被反编译后你的所有资源和代码都将会毫无遮掩的呈现出来。由于.net本身没什么加密的措施,所以我们一般都...
  • Unity3D资源加密解决方案

    千次阅读 2018-09-13 20:02:41
    基于深思云授权平台,有一套Unity3D代码及资源加密保护方案,可通过Virbox Protector加壳工具对代码及资源进行加壳,再配合精锐5加密锁或者云锁及软锁,可达到极高的安全性,可防止代码被反编译及资源被拷贝。...
  • Unity3D项目程序加密2

    2017-07-18 15:09:07
    Unity3D项目程序加密2——对dll进行混淆 之前一篇文章阿赵已经简单的介绍了怎样把自己写的代码打包成dll动态链接库,然后在Unity3D里面用。那么接下来的事情似乎就很简单了,我们在Unity3D里面写脚本,到最后完成时...
  • 之前一篇文章阿赵已经简单的介绍了怎样把自己写的代码打包成dll动态链接库,然后在Unity3D里面用。那么接下来的事情似乎就很简单了,我们在Unity3D里面写脚本,到最后完成时,把核心的代码剪切出去打包成dll文件再放...
  • Unity3D Mono 加密

    千次阅读 2015-07-30 12:56:28
    【转】Unity3D Mono加密 发表于2015年4月11日由陆泽西 Unity3D-重新编译Mono加密DLL。安卓应用总是让人头疼,游戏遭到破解与反编译是研发的人最不愿意看到的。自己的辛苦劳动成果被人随意窃取与利用,对这些...
  • Unity3D 代码加密方案

    2019-09-20 05:17:32
    Virbox提供Unity加密代码及资源的产品,保护代码防止反编译,保护资源被提取提供Unity加密代码...Unity3D代码加密背景 Unity3D主要使用C#语法和开源mono运行开发商的代码逻辑,所有代码都不是编译到EXE,而是位于{...
  • Unity代码加密unity资源加密原理

    千次阅读 2019-06-16 07:39:58
    Virbox提供Unity加密代码及资源的产品,保护代码防止反编译,保护资源被提取提供Unity加密代码及资源的产品,保护代码防止反编译,保护资源被提取Unity3D代码加密背景Unity3D主要使用C#语法和开源mono运行开发商的...
  • unity3d 调用加密狗的dll

    千次阅读 2013-03-13 10:14:33
    using UnityEngine; using System.Collections; using System.Runtime.InteropServices; public class what : MonoBehaviour { [DllImport ("ETDogCheck")] private static extern int et_FindToken (string et99p
  • 加密方式对于Unity3D的保护方式,主要是通过Virbox Protector Standalone对Unity3D程序的整个生成目录进行加密,可以保护Unity的主要代码逻辑不被反编译,最大程度保护软件开发商的合法权益,同时DSProtector工具...
  • Unity3D DLL加密

    2018-05-05 16:31:55
    网上搜了很多教程 就这篇成功了 转载一下原文 http://blog.51cto.com/snailwalk/1745970Unity3D打包android应用程序时,如果不对DLL加密,很容易被反编译,导致代码的泄露。通常的做法是通过加密DLL或者对代码进行...
  • Unity3D实战之文件加密

    千次阅读 2019-07-05 10:08:48
    移动端游戏经常被一些玩家破解成白包,但是为了安全性,开发者还是需要使用算法对文本文件加密加密的算法非常多,比如通常使用的是MD5算法,OBFS算法,SHA512算法等。由于MD5算法经常使用,网上也有现成的代码本节...
  • 各位Unity3D的开发者,你还为你的代码被反编译而头疼, 混淆和加密已经失效,为内存dump代码而烦恼?是否辛苦制作的游戏被盗版被抄袭而烦恼? 是否害怕算法被别人参考要把算法写成C++而费劲周折? 快来使用深思数...
1 2 3 4 5 ... 20
收藏数 1,480
精华内容 592
关键字:

unity3d程序加密