文章目录:
- 1、软件采用.net C#开发,不想让人轻松破解核心逻辑及授权验证代码,DLL也不想被人随意调用,有什么办法吗?
- 2、用易语言怎么写一个一机一码,带网络验证,的程序,就是这个注册吗填进去,网络验证
- 3、按键精灵用哪个网络验证系统好
- 4、易语言原先的源码我加了个验证系统的,但是验证系统叉掉后软件立马弹出来了。
- 5、有没有好用的网络验证系统 支持一键加密的?
软件采用.net C#开发,不想让人轻松破解核心逻辑及授权验证代码,DLL也不想被人随意调用,有什么办法吗?
首先,我来介绍一下发布出去的DLL所面临的风险:
一、直接引用
二、反编译
三、反射
如果DLL一点措施都不做的话,上面任意一种都可以达到破解目的的。
然后,通常网上能搜到如下的保护方式,但真心的来说,用处不大,当然对小白破解者增加了难度。
一、混淆类的工具(如Dotfuscator,但是可以通过ILSpy、Reflector等反编译哦,直接COPY代码也能运行)
二、加密类的工具(如MaxToCode,网上有相应的破解教程)
三、加壳类的工具(如Sixxpack,网上有相应的破解教程)
四、强签名(签名只是防止项目中的某一个DLL被篡改了,不能防止反编译或反射的哦)
说了那么多,难道没有相对靠谱的方式了吗?
最后,我们进入正题
上面那些工具的目的归结出来大约完成两个目的,一是不能看,二是不能调,当然,我们也是实现这两个目的,只是手段不同。
一、不能看:.NET DLL可以包含托管堆代码(可以被反编译的)与非托管堆代码(不能被反编译,要反编译也是更高层次的了,不在讨范围内),我们将核心逻辑代码置于非托堆代码中,由托管堆代码提供接口供外部调用,调用时将非托管代码通过.NET动态编译特性编译后返回执行结果。这样就保证了不能看。
二、不能调:我们在非托管代码中加入验证调用者来源功能,判断调用者的HASH值是不是与在非托管代码中约定的HASH值(发布时需要提前生成相关引用者的HASH值存于非托管代码,最后生成非托管代码的DLL放于安装包中)一致,如一致则通过执行返回结果,不一致则返回空。这样就解决了非合法来源不能调的问题。
更多参考:
用易语言怎么写一个一机一码,带网络验证,的程序,就是这个注册吗填进去,网络验证
超级简单 用SE加壳软件
网络验证的源码简单
一机一码更加简单
第一步:打开SE加壳软件 展开“授权选项”,勾上“启用授权系统” 最后,单击“保护”
第二部:如果你想把你的软件发给甲,又怕甲会外传你的软件让其他人使用,就发第一步加好授权系统后的软件发给甲,然后,甲打开这个软件会弹出一个信息框,叫他复制他的机器码下来,然后……
楼主想继续学下去的话就请提高点悬赏吧 没有一点悬赏我懒得再教下去了
按键精灵用哪个网络验证系统好
泉水国际网络验证系统,运营超十年,专业保护软件不被破解。
易语言原先的源码我加了个验证系统的,但是验证系统叉掉后软件立马弹出来了。
这个很简单。
给窗口1添加一个变量。变量类型关系不大。
软件成功激活之后,就给在变量上记录上。
当窗口1关闭的时候,就判断变量内容。如果没有被标记为激活就用结束命令关闭整个软件。
有没有好用的网络验证系统 支持一键加密的?
目前市面上常见的比较好用和稳定的 有简易云网络验证和乾坤网络验证 都是比较完善的 而且支持任意exe软件加密 不需要源码就可以加密非常好用
成相关引用者的HASH值存于非托管代码,最后生成非托管代码的DLL放于安装包中)一致,如一致则通过执行返回结果,不一致则返回空。这样就解决了非合法来源不能调的问题。更多参考:用易语言怎么写一个一机一码,带网络验证,的程序,就是这个
非托管代码,最后生成非托管代码的DLL放于安装包中)一致,如一致则通过执行返回结果,不一致则返回空。这样就解决了非合法来源不能调的问题。更多参考:用易语言怎么写一个一机一码,带网络验证,的程序,就是这个注册吗填进去,网络验证超级简单
文章目录:1、软件采用.net C#开发,不想让人轻松破解核心逻辑及授权验证代码,DLL也不想被人随意调用,有什么办法吗?2、用易语言怎么写一个一机一码,带网络验证,的程序,就是这个注册吗填进去,网络验证3、按键精灵用哪个网络验证系统好4、易语言原先的源码我加了个验证系统的,但是
单第一步:打开SE加壳软件 展开“授权选项”,勾上“启用授权系统” 最后,单击“保护”第二部:如果你想把你的软件发给甲,又怕甲会外传你的软件让其他人使用,就发第一步加好授权系统后的软件发给甲,然后,甲打开这个软件会弹出一个信息框,叫他复制他的机器码下来,然后……楼主想继续
都是比较完善的 而且支持任意exe软件加密 不需要源码就可以加密非常好用