C# DLL如何保护防止被破解

项目是用.net开发的,但是里面涉及到核心逻辑及授权验证,不想让人轻松被搞掉了。怎么办???... 项目是用.net开发的,但是里面涉及到核心逻辑及授权验证,不想让人轻松被搞掉了。怎么办??? 展开
 我来答
summer31cn
推荐于2017-11-22 · TA获得超过111个赞
知道答主
回答量:73
采纳率:100%
帮助的人:37.5万
展开全部
.net的实时编译(JIT)特性决定了用它开发的程序可以被轻松反编译,同时由于采用反射等技术,使得DLL能被未授权调用。

所以要想不被破解,一是不能被反编译看到源码,二是不能被随意调用。

什么混淆加壳加密等,都是可逆的。鉴于.net代码可以包含非托管代码,我们可以用C++解析C#代码生成DLL,这个DLL在被调用时验证调用者信息,就可以解决针对C#的破解,以及非授权调用了。

参考链接:http://blog.csdn.net/qwsf01115/article/details/52169574
阳光的雷咩咩
2016-08-17 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7604万
展开全部
百度.net混淆工具。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
互联网纷说
2019-05-24 · 分享互联网大事件,运营事件,热点分析
互联网纷说
采纳数:67 获赞数:223

向TA提问 私信TA
展开全部
通过硬件加密的方式,保护C#的程序,一方面使用高安全性的加壳工具保护,同时精锐5加密锁强悍的硬件性能保障硬件安全,三层通讯加密。
高安全性加壳工具Virbox Protector,保护代码安全
.NET程序能够选择不保护、混淆、碎片化和代码加密四种保护方式。代码加密(IL),针对dotNet程序,保护IL代码:一种动态运行方法解密被保护代码。把当前代码加密存储为密文,存储起来,当程序运行到被保护函数时候自动解密并且执行,执行之后再擦除代码,执行之后再擦除代码,运行到哪里才解密哪里的代码,调试者无法获得原始的中间语言的指令和内存完整性的代码,由于是纯内存操作所以运行速度快,性价高的保护手段,建议全加。
代码碎片化:
深思自主知识产权的最新技术:基于 LLVM 和 ARM 虚拟机技术,自动抽取海量代码移入 SS 内核态模块,极大的降低了使用门槛, 不再需要手动移植算法,可移植的算法从有限的几个增长到几乎无限多,支持的语言也不再限于 C, 这是加密技术的一次综合应用,效果上类似于将软件打散执行,使调试无从下手。
精锐5加密锁
精锐5硬件加密锁是深思数盾研制的第5代加密锁,精锐5硬件加密锁相对于之前的版本做了很多的升级功能,硬件上使用业内高安全性的EAL5+芯片,在通信和执行速度上都有很大幅度提高。
精锐5硬件加密锁实现了网络锁和单机锁一体化的方式,可以随意切换。同时精锐5也提供了多个版本:标准版、旗舰版、精灵版、时钟版和IE工业版,方便软件开发者根据需要选择,其中精锐5旗舰版硬件加密锁达到业内存储最大达到512k。
同时精锐5硬件锁与Virbox 云锁、Virbox 软锁为同一系列产品并且可以相互兼容作为灾备使用,软件开发者可以根据产品不同的使用场景选择使用,Virbox 云锁的产品形式为账号,软件开发者可以为软件用户创建用户账号,并且可以向用户账号内签发许可,通过账号的形式可以实现软件开发商软件实时交付用户使用,实现软件开发者的软件加密、高效管控软件用户、实现软件授权的产品。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式