c#怎么给源代码加密,就是就算给别人源代码

 我来答
互联网纷说
2019-05-24 · 分享互联网大事件,运营事件,热点分析
互联网纷说
采纳数:67 获赞数:223

向TA提问 私信TA
展开全部
c# dll 加密最快的方法使用加壳工具Virbox Protector,直接加密,Virbox Protectorke可以对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, 这是加密技术的一次综合应用,效果上类似于将软件打散执行,让破解者无从下手。
安全度高、建议关键函数或调用加密锁方法;使用太多会影响效率
仙戈雅3n
2017-02-26 · TA获得超过5790个赞
知道大有可为答主
回答量:2398
采纳率:75%
帮助的人:894万
展开全部
先用Dotfuscator工具混淆代码,主要防止ILSpy和.NET Reflector反编译。最后使用.NET Reactor进行加壳,加壳时需要使用最新版本的,否则它的克星de4dot会轻易脱壳。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
安秉企业防泄密
2020-07-19 · 百度认证:上海安秉信息技术有限公司官方账号
安秉企业防泄密
向TA提问
展开全部
这个问题很简单解决,如果你是个人想加密,但认为没必要去做,如果你是公司或团队去加密,可以使用我们公司的安秉网盾源代码防泄密解决方案!可以支持各种各样的环境,c# C C++ java php vue等软件,支持版本管理工具 git svn等软件,就算您的代码管理服务器是云端保存也是加密状态。源代码防泄密,我们是专业的,安全稳定可靠!---安秉网盾
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
许小萱9213
2020-05-09 · 贡献了超过182个回答
知道答主
回答量:182
采纳率:50%
帮助的人:11.8万
展开全部
源代码的安全,可以使用合适的源代码加密软件。从楼主的问题来判断建议选个SDC沙盒的比较好,因为SDC沙盒是很适合用于研发公司来使用的。利用沙盒的原理来保护好源代码在环境中的正常运行,且不会被泄密出环境中。我们公司目前就有用这类的软件,还是很好用的,也不影响到员工的开发使用。可以了解下SDC沙盒看看,应该能满足您那的需求。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
褒枫夔鸿晖
2019-01-18 · TA获得超过1090个赞
知道小有建树答主
回答量:1721
采纳率:100%
帮助的人:7.9万
展开全部
确切的说,html代码是不能加密的,否则ie解释不了,用ie打开你的网页的时候,只会看到加密的那些代码。
通常据说的加密,是加密html中的script脚本代码,
加密方法一般是进行encode处理,要解密也是很简单的,所以还是不要加密了,你觉得关键的代码,放在后台里做吧,呵呵。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式