Vb.net 仅为特定设置标记数据库

Vb.net 仅为特定设置标记数据库,vb.net,visual-studio,Vb.net,Visual Studio,我的应用程序不受盗版的影响取决于数据库中的字段。用户必须激活在我的数据库中写入的应用程序。 但问题是,如果一个新用户安装了我的应用程序,并替换了某个购买了密钥的用户的所有数据库,那么该应用程序也会在不购买我的密钥的情况下变为活动状态 我是否有可能用特定的设置标记要识别的数据库 谢谢 Furqan由于有人几乎总是能够找到一种方法来挫败您所采取的安全措施,因此您应该寻求一种解决方案,以防止大多数不熟练的用户能够在不付费的情况下使用您的软件,同时不会让合法用户感到过于痛苦 为此,我认为在数据库中存储状

我的应用程序不受盗版的影响取决于数据库中的字段。用户必须激活在我的数据库中写入的应用程序。 但问题是,如果一个新用户安装了我的应用程序,并替换了某个购买了密钥的用户的所有数据库,那么该应用程序也会在不购买我的密钥的情况下变为活动状态

我是否有可能用特定的设置标记要识别的数据库

谢谢
Furqan

由于有人几乎总是能够找到一种方法来挫败您所采取的安全措施,因此您应该寻求一种解决方案,以防止大多数不熟练的用户能够在不付费的情况下使用您的软件,同时不会让合法用户感到过于痛苦

为此,我认为在数据库中存储状态是有问题的,因为复制数据库很容易。如果必须这样做,最好从HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography注册表项获取MachineGUID,然后使用双向或单向加密算法加密此值并将其存储在数据库中

当应用程序启动时,您可以获取MachineGUID并对其进行加密,然后将加密后的值与数据库值(如果是单向加密)进行比较,或者将数据库值解密,然后将其与注册表值(如果是双向加密)进行比较


您需要提供一种机制,允许用户在必须将数据库移动到其他计算机(即小型windows应用程序)时更新注册,但是,您可以要求他们在更改注册之前从您那里获得特定的注册码。

我也有相同的机制,但我的应用程序需要在网络上运行,如果我使用机器密钥,它在网络上无法工作