.NET中的序列号(注册密钥)算法

lc.*_*lc. 6 .net security algorithm licensing software-distribution

有一些关于IP安全等的及时帖子,但我找不到专门针对算法的帖子.在我目前的一个项目中,我们决定采用离线注册密钥系统的路线.

我想我们最终的用户群大部分都是诚实的,所以我认为我们没有太多担心.另一方面,如果没有大量的汗水和眼泪,我宁愿不让休闲饼干获得访问权限.

那么,如何生成(和验证)密钥有哪些选择?硬件键控很可能是因为安装模型是从Intranet服务器上的samba共享运行的.此外,密钥应该多长时间?

其次,验证算法被反射出来的危险有多大,即使它被混淆了?改为在非托管代码中编写算法会更好吗?

Bev*_*van 10

在我看来,您将面临的关键问题不在于您的注册算法和混淆的级别(或缺乏).

相反,就是这样:在代码中的某个时刻,它归结为简单的二元决策 - 运行或退出.黑客攻击你的系统只需要找到并调整这个决策点.

一切-混淆,强签约,篡改检测-是面向使这更困难,但不能让它更难.