c# - 如何为我的程序获取 "enabled functions"许可证文件?

标签 c# encryption

我的应用程序可以执行 5 个业务功能。我现在需要将其构建到应用程序的许可模型中。

我的想法是随应用程序一起发送一个“ key 文件”。该文件应包含一些加密数据,说明应用程序中哪些功能已启用,哪些未启用。我也想要它的半黑客证明,这样就不只是任何白痴都能弄清楚逻辑并“破解”它。

此文件的解密版本应包含例如:

   BUSINESS FUNCTION 1 = ENABLED
   BUSINESS FUNCTION 2 = DISABLED.... etc

你能给我一些关于如何做到这一点的想法吗?

最佳答案

虽然这绝对可以使用 Rijndael 来完成,但您也可以尝试使用非对称方法来解决该问题。要求应用程序在启动时使用公钥解密小设置文件,并且只向它们发送使用私钥加密的新配置文件。

根据您的配置文件的大小,与 Rijndael 算法相比,这将导致启动时的性能下降,但即使客户端反编译程序并获取您的公钥,它与配置文件无关因为他们没有私钥来制作新私钥。

当然,这一切都没有考虑反编译您的程序并删除所有检查的特别流氓客户......但无论您做什么,该客户都可能不会支付您的产品从而使您处于 yield 递减的境地,并且完全是一个全新的问题。

关于c# - 如何为我的程序获取 "enabled functions"许可证文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1476891/

相关文章:

android webview加密内容

.net - none 和 null CipherAlgorithmType 之间有什么区别?

c++ openssl加密有时会失败

ssl - TLS:硬禁用密码与不列出密码

c# - PGP 加密和解密

c# - sc.exe 将 exe 安装为服务?

c# - 如何在没有 Windows 窗体的情况下接收即插即用设备通知

c# - RSS 提要中以 "//"开头的 URL 未加载到 WebBrowser 控件中

c# - 如何使用 QBFC13 和 C# 获取一个月的所有发票并将其全部保存为 PDF?

c# - 模拟存储库和测试参数化服务方法