dll加密_dll加壳加密工具 - CSDN
精华内容
参与话题
  • 加密.net开发的dll文件防止反编译
  • dll加密工具

    2020-07-29 14:18:24
    用于.net开发的库加密;给客户进行部署前,将dll进行加密,可以最大程度的保护dll库的安全性,防治关键技术外泄
  • dll加密/反编译工具(官方原版+破解补丁)
  • 防止反编译工具(dll加密)

    热门讨论 2020-07-30 23:30:53
    防止反编译工具 可以对任意dll包进行加密,防止破解~~
  • dll 重新加密打包的问题

    千次阅读 2017-06-05 09:56:35
    1. dll 重新加密打包的问题:  A.首先对重新封装一下  先封装成功 然后在加看门狗  封装成

    1. dll 重新加密打包的问题:

      A.首先对重新封装一下

         先封装成功 然后在加看门狗

         封装成dog_packed

         出现问题为:error LNK2005: "class Cdog_packed Cdog_packed" (?Cdog_packed@@3V0@A) 已经在 stdafx.obj           中定义

         2. 命令行编译build出错:error MSB6006: “mt.exe”已退出,代码为 31

        解决办法:http://www.xuebuyuan.com/2031365.html
        3. 用重新封装的dll 替换掉原来的dll 报错显示是之前的dll 找不到:
        
       原因分析:也就是说我们它没有找新的dll ,问了ll 说是每次dll 重新封装的时候,不能把打包之前的dll 删掉,因为会调用之前的dll,至于原来的dll 是裸着的问题,并不需要担心,因为我们我们重新替换了原来的lib,所以他们没有原来的lib 是没有办法调用的哈哈。
          
    4. 二次打包:
        http://blog.csdn.net/a379039233/article/details/51220201
    5. 第三个问题解决之后,我们就成功的二次打包了
        下面的问题就是怎么加密钥狗进去了。  
         写了一个checkdog 的程序,但是怎么运行都不对。
         可能的问题点:
          A. vendcode 不对
          B. 需要正式的lib 而不是demo 的lib 
           问题分析:C:\Users\Administrator\Documents\SafeNet\SuperDog 2.3\API\Licensing\C\win32
           在这里有我要的lib 和dll
          
          C. 要在子密匙中写入1,2 这样的特征号


    展开全文
  • C# dll加密技术分析

    千次阅读 2019-05-24 10:26:27
    c# dll 加密最快的方法使用加壳工具Virbox Protector,直接加密,Virbox Protector可以对dll进行性能分析,分析每个函数的调用次数,对每个函数选择保护方式如:混淆/虚拟化/碎片化/代码加密等;每种加密方法的特点...

    c# dll 加密最快的方法使用加壳工具Virbox Protector,直接加密,Virbox Protector可以对dll进行性能分析,分析每个函数的调用次数,对每个函数选择保护方式如:混淆/虚拟化/碎片化/代码加密等;每种加密方法的特点是什么呢?

    代码加密(X86):

    针对X86汇编代码:一种代码自修改技术(SMC)保护代码。把当前代码加密存储为密文,存储起来,当程序运行到被保护函数时候自动解密并且执行,执行之后再擦除代码,运行到哪里才解密哪里的代码,黑客无法获得原始机器指令和内存完整性的代码,由于是纯内存操作所以运行速度快, 性价高的保护手段,建议全加

    代码加密(IL)

    针对dotNet程序,保护IL代码:一种动态运行方法解密被保护代码。把当前代码加密存储为密文,存储起来,当程序运行到被保护函数时候自动解密并且执行,执行之后再擦除代码,执行之后再擦除代码,运行到哪里才解密哪里的代码,黑客无法获得原始的中间语言的指令和内存完整性的代码,由于是纯内存操作所以运行速度快, 性价高的保护手段,建议全加

    压缩

    类似zip等压缩软件把代码和数据段压缩,由于带有动态密码,没有任何工具可以自动脱壳,是防止反编译和反汇编关键手段。

    代码混淆(IL):

    将代码中的各种元素,如变量,函数,类的名字改写成无意义的名字。比如改写成单个字母,或是简短的无意义字母组合,甚至改写成“__”这样的符号,使得阅读的人无法根据名字猜测其用途。

    a)重写代码中的部分逻辑,将其变成功能上等价,但是更难理解的形式。比如将for循环改写成while循环,将循环改写成递归,精简中间变量,等等。

    b) 打乱代码的格式。比如删除空格,将多行代码挤到一行中,或者将一行代码断成多行等等。

    c) 添加花指令,通过特殊构造的指令来使得反汇编器出错,进而干扰反编译工作的进行。

    代码混淆器也会带来一些问题。主要的问题包括:· 被混淆的代码难于理解,因此调试除错也变得困难起来。开发人员通常需要保留原始的未混淆的代码用于调试。· 对于支持反射的语言,代码混淆有可能与反射发生冲突。· 代码混淆并不能真正阻止反向工程,只能增大其难度。因此,对于对安全性要求很高的场合,仅仅使用代码混淆并不能保证源代码的安全。

    代码混淆的特点是安全度低、不会影响效率。

    代码虚拟化:

    针对X86代码: 是指将机器代码翻译为机器和人都无法识别的一串伪代码字节流;在具体执行时再对这些伪代码进行一一翻译解释,逐步还原为原始代码并执行。 这段用于翻译伪代码并负责具体执行的子程序就叫作虚拟机VM(好似一个抽象的CPU)。它以一个函数的形式存在,函数的参数就是字节码的内存地址。 由于虚拟机代码和虚拟机CPU的实现可以做到每次都是随机设计和随机执行 并且代码每次可以随机变化,包括一些逻辑上的等价变化可以参考硬件N个与非门NOT-AND实现各种逻辑门,算法和访问内存形式的变化,包括数学上的非等价变化,代码体积几乎可以膨胀达到100到10000倍,造成机器无法做算法还原到原有逻辑。

    代码虚拟化的特点是:安全度中、不会影响效率。

    代码碎片化

    深思自主知识产权的最新技术:基于 LLVM 和 ARM 虚拟机技术,自动抽取海量代码移入 SS 内核态模块,极大的降低了使用门槛, 不再需要手动移植算法,可移植的算法从有限的几个增长到几乎无限多,支持的语言也不再限于 C, 这是加密技术的一次综合应用,效果上类似于将软件打散执行,让破解者无从下手。

    安全度高、建议关键函数或调用加密锁方法;使用太多会影响效率

    体验加密安全:https://lm.virbox.com

    展开全文
  • Dll 加密

    千次阅读 2011-12-03 11:42:28
    中间语言很容易被反编译,所以研究下如何有效的保护dll文件。 我大致的方法为 :强签名+混淆+加密。 强签名 强命名程序集,可以确保你的程序集唯一,而不被篡改、冒用等;即使相同名字的程序集如果签名也会...
     .net是一种建立在虚拟机上执行的语言,它直接生成 MSIL 的中间语言,再由.net编译器 JIT 解释映象为本机代码并交付CPU执行。中间语言很容易被反编译,所以研究下如何有效的保护dll文件。

    我大致的方法为 :强签名+混淆+加密。

    强签名

    强命名程序集,可以确保你的程序集唯一,而不被篡改、冒用等;即使相同名字的程序集如果签名也会不同。

    强签名很简单,本站另一文章已经详细进行了讲解,请参考:http://www.cn-web.com/shtml/article/net/fxsj/2009/06/16/913.shtml

    注:未签名的主程序可以引用已签名或未签名的程序集;而已签名的主程序不能引用未签名的程序集。(上述文章有相应解决办法)

    混淆

    混淆就是对编译生成的MSIL中间代码进行模糊处理,最简单的混淆是名称混淆,即将 命名空间名、类名、方法名、字段名等统统换成特殊符号或其它符号,目的就是让人看到晕为止,但是并不改变程序执行逻辑。

    我这里使用的Dotfuscator进行混淆。

    Dotfuscator混淆方法:

    1.创建新工程;

    2.选择要混淆的dll、exe文件;

    3.在属性里选择Library属性(很重要,因为我这里要混淆的是dll文件,如果不选中,混淆后将不能被正确调用!),如下图所示:

    4.选择bulid标签,点击bulid按钮进行混淆。

    我们也可以选择其它标签进行加密字符串、增加水印等操作,我这里加密工作用另外的方法,所以没有选择操作。

    OK,混淆完成后,我们可以用Reflector.exe来反编译下混淆后的dll文件,可以对比源码看下效果。

    加密

    接下来我们继续对混淆过的dll文件进行加密处理,进一步保护dll文件。

    我使用的加密工具是MaxtoCode。

    打开软件后,切换到中文,可以看到非常简单,添加上dll文件后,直接点击执行加密就可以。其他选项比如:加密字符串、强名称等都很简单,大家一试就知道,而且MaxtoCode的帮助做的非常友好,一看就会使用。

    加密后的dll文件比先前大了一倍,用Reflector.exe反编译后,发现dll文件加密的更彻底,因为主体函数内容都隐藏了。

    通过以上三步,使您的dll文件可免于一般人的破解,当然,不可能绝对防止被破解。

    展开全文
  • 现在是这样的,A拥有私钥,B拥有公钥,A通过私钥加密,发给B,B用公钥解密得到内容,现在C出现了,C自己搞了密钥对,把C的公钥替换掉B的公钥,这样C同样可以用私钥加密发给B,而B同样可以通过公钥来解密,结果是B...
    现在是这样的,A拥有私钥,B拥有公钥,A通过私钥加密,发给B,B用公钥解密得到内容,现在C出现了,C自己搞了密钥对,把C的公钥替换掉B的公钥,这样C同样可以用私钥加密发给B,而B同样可以通过公钥来解密,结果是B不再需要A了
    这怎么解决?
    答:

    我的方法(同时使用DES和RSA加密算法,用DES加密算法验证假注册码,目的是为了欺骗Cracker,用RSA验证真正的注册码):
    1.取用户硬盘Serail   Code.(建议取CPU   ID,但我不知如何取),取用户名无法防止一码通用。
    2.自己做一注册机,用私钥进行硬盘Serail   Code   RSA加密,生成注册码。如:
        C8J35noAXNOhBoOueXlXqweKo6Y7EbEE3UUHOJIdSYclc5zDdEU1Uq
    3.用户得到注册码后,将注册码输入软件注册码输入框,用户点确定后执行一段垃圾代码(多多使用goto语句让Cracker晕头转向,此举可以拦住一般 水平的Cracker),垃圾代码之后调用DES加密算法计算假注册码(假注册码是指用Des加密算法的注册机生成的注册码)的正确性(水平高一点的 Cracker会跟踪到这里),若注册码正确则显示注册成功,Cracker跟踪到此处就会认为破解成功,随及制造注册机发布,其它真正的注册码验证还在 后头呢。
    4。把用户名和注册码存入注册表。
    5。软件下次启动时,读入注册表中的用户名和注册码到变量。
    6。启动DES代码验证注册的正确性
    7。无用的goto代码
    8。验证DES注册码。
    9。软件继续启动。
    10。启动完毕

    用RSA加密算法作为合法注册码的验证算法,采用单独的线程,每十分种验证一次,如果RSA注册码不正确但DES正确,则sleep一天或两天(千万不要死机或破坏用户数据,这样用户会认为你的软件质量有问题,Cracker最怕的是等待)。

    用这种方法,从理论上讲,Cracker不可能做出真正的注册机,因为他无法知道私钥,只可能使用暴力破解之法(也就是改exe),但是找断点很困难,所以很难破解。

    展开全文
  • 功能取决于需求,在实现这功能之前,却有一个小小的插曲,有同学...下面就看看unity在windows平台中防反编译加密dll的实现步骤吧,unity在打包后,会将所有的代码打进一个Assembly-CSharp.dll的文件里面,通过这个文件
  • dll加密

    千次阅读 2019-03-13 13:27:42
    我选择的是dotNET_Reactor.exe。 第一步: 最后一步 值得注意的是,如果选了混淆,导入工程用不了。 本人原创,如要转载,请联系我本人。...后续打包ios工程报错,加密时更改加密方式即可: ...
  • 解密加密后的dll 只适用于简单加密无反调试后的apk dll文件修改多用于安卓的U3D游戏,dll文件地址一般路径为 apk名称\assets\bin\Data\Managed 如果没有请放弃 有时候我们要对游戏进行修改发现dll文件加密如图...
  • sqliteExpert 打开加密数据库

    千次阅读 2018-08-24 17:36:02
    1 sqliteExpert Personal 5 无法打开加密的数据库。 百度找到了解决方案: 原文链接 然后到sqlite 官网下载SQLite.Interop.dll,在search栏 没有找到此dll下载地址 2 在sqlite官网的FAQ页面搜索到此dll,可以看到...
  • Unity -游戏加密方案 混淆 链接: https://blog.csdn.net/kun1234567/article/details/7917847
  • 简单Unity 3D游戏加密dll文件提取

    千次阅读 2018-09-02 14:25:36
    我们逆向分析主要分析\assets\bin\Data\Managed中的Assembly-CSharp.dll文件,当我们用.NET Reflector 或者dnSpy 打开Assembly-CSharp.dll文件时,有时候会发现什么信息也看不到,在前面呢有一个红色的x证明被加密了...
  • 腾讯Unity3D手游 dll加密分析

    万次阅读 2016-12-05 22:45:27
    TX有很多用Unity做的手游,比如《天天飞车》《我叫MT2》都对dll进行了加密,而且这些游戏对dll加密方式是一样的 想要知道如何解密就要知道他是如何加密的 关于Assembly-CSharp.dll和Assembly-CSharp-firstpass.dll...
  • 通达信公式云服务器计算,客户端接收计算结果。可以完全杜绝公式被破解的可能性。   同时也提供普通的单机加密方式,满足一些用户的简单需求。 详情咨询QQ:31604332...
  • 我们在搞一个项目,写了好多个dll文件,现在老板要求对dll文件进行加密,使得这个dll文件只能在特定的电脑上打开,转存,不能被别的电脑随便打开。。。。跪求那个好心的大神给点意见。。
  • ....net是一种建立在虚拟机上执行的语言,它直接生成 MSIL 的中间语言,...中间语言很容易被反编译,所以研究下如何有效的保护dll文件 .net是一种建立在虚拟机上执行的语言,它直接生成 MSIL 的中
  • 台湾驱动加密

    千次阅读 2019-09-27 15:19:40
    加密 通俗说就是加壳 加密主要过 362 以及361 代码 一般162代码 属于行为检测 通俗说第三方! 注意:驱动的162 跟 驱动版本 以及 加密壳存在关系很大!加壳不是说同壳能通用不同驱动版本驱动显卡! 根据自己的电脑...
  • IL2Cpp简易加密方法

    千次阅读 2019-06-24 18:57:33
    Mono作为backend的时代,破解总的来说... 修改Dll的PE结构(腾讯MTP):可以用XPose抓取Dll主体配合一些工具修复PE头 动态解密Dll Method(网易易盾):这一招最狠,每次只能Dump一部分Method实现,除非分析解密的s...
1 2 3 4 5 ... 20
收藏数 40,472
精华内容 16,188
关键字:

dll加密