有没有加密C#桌面应用程序的好方法 [英] is there any good method to encrypt the C# desktop application

查看:285
本文介绍了有没有加密C#桌面应用程序的好方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

可能重复:结果
从逆向工程保护.NET代码?

我们只是发展与C#的WinForms应用程序一个,有没有什么好的加密方法来帮助我们从盗版预防?
我看到有些软件可能需要硬件的支持,以保护他们的软件,如何实现?
提前感谢!

we just develop a application with C# winforms, is there any good encryption method to help us prevent from piracy ? I saw some software may need hardware support to protect their software, how to implement that ? Thanks in advance !

推荐答案

好吧,你在这里混了几个不同的概念。

Okay, you are mixing up a few different concepts here.

加密是着眼于让人们从你的数据。

Encryption is geared towards keeping people out of your data.

混淆用来尝试和防止逆向工程的代码。

Obfuscation is used to try and prevent reverse engineering your code.

许可用来确保在使用拷贝数不超过购买数量。

Licensing is used to make sure the number of copies in use does not exceed the number purchased.

您将要研究既困惑和软件许可。混淆,因为你会想,以防止他们逆向工程的发牌制度,无论是复制,或干脆绕过它。

You will want to research both obfuscation and software licensing. Obfuscation because you will want to prevent them from reverse engineering your licensing scheme to either duplicate it or simply bypass it.

从许可的角度来看也有一些不同的途径。硬件保护意味着你的应用程序查询某种类型的加密狗检索有效密钥。如果加密狗存在,关键是良好的,那么你的应用程序运行。

From a licensing perspective there are a number of different avenues. Hardware protection means that your app queries a dongle of some type to retrieve a valid key. If the dongle is present AND the key is good, then your app runs.

软件授权可以是一个比较复杂一点。您通常还会有一些类型的电话家庭代码应该发送可读/类型能够密钥的加密版本的授权服务器进行验证。你会想包括一些类型的,以确保关键是没有被激活多次为不同的框的其他机器的信息(如硬盘序列号)。

Software licensing can be a bit more complicated. You'll generally have some type of phone home code which should send an encrypted version of the human readable / type-able key to your licensing server to verify it. You'll want to include some type of additional machine information (such as hard drive serial number) in order to make sure the key isn't being activated multiple times for different boxes.

有时激活过程中下载其他文件,以使应用程序运行。我希望给你一个开始。

Sometimes the activation process downloads additional files to make the app run. I hope that gives you a start.

这篇关于有没有加密C#桌面应用程序的好方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆