qq_42452200 2023-05-10 16:36 采纳率: 40%
浏览 100
已结题

.net程序,用什么软件加密,目前几乎无法确解。

.net程序,用什么软件加密,目前几乎无法确解。各位,知道吗?

  • 写回答

11条回答 默认 最新

  • threenewbee 2023-05-11 00:27
    关注
    获得1.50元问题酬金

    这个建议你使用硬件加密机制,特别是把核心数据和算法本身放在硬件上。单纯的软件加密,都可以破解,只是难度问题。
    道理很简单,因为.NET程序无论怎么加密,最后都要回到IL虚拟机上运行,而IL分析起来并不困难。

    评论
    CSDN专家-showbo 2023-05-11 01:49

    之前有弄过人家软件,对方刚开始用的Reactor混淆+修改IL代码绕过de4dot的检查,后面de4dot指定加密后也反混淆成功了。最后对方换了DNGuard加密dll就没法弄了。哈哈哈。。

    1
    回复
    threenewbee 回复 CSDN专家-showbo 2023-05-11 02:41

    波波我崇拜你

    回复
    CSDN专家-showbo 回复 threenewbee 2023-05-11 02:43

    老曹又自谦了。。。我就一个工具人,哈哈。

    1
    回复
    展开全部5条评论
  • 前网易架构师-高司机 人工智能领域优质创作者 2023-05-10 23:04
    关注
    获得0.90元问题酬金

    商业使用的话,建议还是使用net reactor,其他国内国外好多插件几乎都有破解的方案

    评论
  • 阳光宅男xxb 2023-05-10 23:44
    关注
    获得1.20元问题酬金

    有很多.net的.t混淆加密软件,比如Dotfuscator、Net Reactor等等,但是网上下载的混淆工具对.NET程序保护的效果都不太好,保护效果好的工具通常都收费而且还没有破解版。而这些加密软件一旦使用,一般人都很难破解,否则也没有出现的必要

    评论 编辑记录
  • 是小韩呀 2023-05-11 00:21
    关注
    获得0.30元问题酬金

    在.NET程序中,常用的软件工具用于加密和保护代码的包括以下几种:

    Dotfuscator: Dotfuscator是一种用于.NET代码混淆和加密的工具,它可以对程序进行重命名、控制流混淆和字符串加密,增加了破解者分析和逆向工程的难度。

    ConfuserEx: ConfuserEx是一个开源的.NET代码混淆工具,可以对程序集进行混淆和加密,提供了多种混淆技术和选项,可以增加程序的安全性。

    Crypto Obfuscator: Crypto Obfuscator是一个综合性的.NET代码保护工具,它提供了代码压缩、混淆、加密和授权等功能,可以有效地保护.NET应用程序免受逆向工程和盗版攻击。

    Eazfuscator.NET: Eazfuscator.NET是一个.NET代码混淆工具,可以对程序集进行混淆、压缩和加密,使代码难以被逆向工程和破解。

    这些工具可以帮助保护.NET程序的代码,增加反破解和逆向工程的难度。但请注意,没有绝对安全的加密方法,有经验和专业知识的黑客仍然可能破解加密的程序。因此,在选择和使用这些加密工具时,您应该综合考虑安全需求和可行性,并且还要采取其他措施来确保程序的安全性,如合理的许可管理和服务器端验证等。

    评论
  • IT技术分享社区 数据库领域优质创作者 2023-05-11 01:07
    关注
    获得1.35元问题酬金

    如果是自己编写的C#程序,可以自己在程序里面增加注册授权、有效期、mac验证等方式防止你的软件被破解。

    评论
  • Haven55555 2023-05-11 02:00
    关注
    获得0.45元问题酬金

    .net 话 目前体验比较好的.NET Reactor吧

    评论
  • 自在猫先生 2023-05-11 02:41
    关注
    获得0.45元问题酬金

    对于 .NET 程序加密,有许多可用的软件和加密算法。其中,常用的软件包括 Dotfuscator、ConfuserEx 和 Crypto Obfuscator。

    这些软件可以使用不同的加密算法、混淆技术等来保护您的 .NET 代码,以使其在程序运行时难以被破解或逆向工程。这类加密方法采用的都是代码混淆/修改的技术,部分能起到一定的加固效果,但是没有任何加密算法是无法破解的。

    需要注意的是,如果您使用一些过于简单或基于在线服务的加密软件,那么这些加密措施可能会被专业黑客轻松攻击和破解。此外,对于加密程序,使用者必须确保保密及安全性,以免泄露关键信息造成损失。

    因此,建议您在进行代码加密时,应根据实际需求选择可靠且相对较为安全的加密软件和加密算法,并定期对加密程序进行漏洞扫描和更新。另外,也可结合数字证书做代码签名,在软件发布之前,严格的测试是否存在漏洞来保证软件质量与稳定性。

    希望这个回答对您有所帮助!

    评论
  • 张朋举Biz 2023-05-15 13:08
    关注

    目前就这一个:DNGuard
    可以拿dnspy、ilspy测试下就知道了。

    评论
  • yy64ll826 2023-05-17 01:57
    关注
    获得0.60元问题酬金
    
    “AxProtector是一款真正意义的加密源代码、防止反编译的net软件加密软件。 
    
    评论
  • 极客智能体-在线 2023-05-11 06:50
    关注

    以下答案由GPT-3.5大模型与博主波罗歌共同编写:
    首先,加密 .NET 应用程序的方法通常是使用混淆器和加密器。混淆器可以使你的代码难以理解和逆向工程,而加密器会使用一些加密算法,使得黑客无法解密你的程序。

    常见的混淆器软件包括 Dotfuscator 和 Crypto Obfuscator。这些软件会通过重命名变量和方法,删除无用的代码,并对代码进行其他混淆操作来混淆你的程序,使其难以理解。

    常见的加密器软件包括 SmartAssembly 和 CodeVeil。这些软件会对你的代码进行加密,使得黑客无法读取和理解你的代码。

    需要注意的是,任何加密方法都不是完美的,黑客终究可以尝试尝试破解你的程序。因此,安全的方法是采用多种方法来加密和混淆你的代码,增加黑客的难度。

    以下是一些常见的用于混淆和加密 .NET 应用程序的代码:

    //使用 Dotfuscator 进行混淆的代码
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Dotfuscator;
    
    namespace DotfuscatorDemo
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Hello World!");
            }
        }
    
        [Obfuscation(Feature = "renaming", Exclude = false)]
        public class Hello
        {
            public static void SayHello()
            {
                Console.WriteLine("Hello!");
            }
        }
    }
    
    //使用 SmartAssembly 进行加密的代码
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using RedGate.SmartAssembly.Attributes;
    
    namespace SmartAssemblyDemo
    {
        [ObfuscateControlFlow]
        [Obfuscation(Exclude = false, Feature = "preset"))
        public class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Hello World!");
            }
        }
    }
    

    以上代码仅供参考,具体的混淆和加密方法应该根据应用程序的情况和需求进行选择。如果你需要更加专业的保护和加密方法,建议联系专业的软件保护和加密公司。
    如果我的回答解决了您的问题,请采纳!

    展开全部

    评论
  • 百晓生2023 2023-05-11 13:54
    关注
    该回答引用ChatGPT
    我不建议使用加密来保护你的.NET程序,因为加密通常只是增加反编译的难度,并不能完全防止程序被破解和盗取。而且,使用加密可能会使得程序的性能降低。

    如果你想保护你的.NET程序,可以考虑使用代码混淆器,它可以将代码进行重命名、重构和删除无用代码等操作,以增加反编译的难度。这些操作不会影响代码的功能,但会使得反编译工具难以还原出源码。

    常见的.NET代码混淆器有Dotfuscator、CodeWall、SmartAssembly等。这些工具需要你在编译代码前使用,并且需要一定的配置才能达到最佳效果,具体使用方法可以参考它们的官方文档。

    需要注意的是,无论你使用什么工具,都不能百分之百保证程序不被破解和盗取。最好的方法是在程序开发过程中加入安全考虑,并采取适当的安全措施来保护你的程序。
    评论
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 5月18日
  • 创建了问题 5月10日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部