问题标签 [license-key]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
13 回答
65871 浏览

x86 - CPU序列号

如何获取 PC 中 CPU 的序列号?

0 投票
2 回答
451 浏览

.net - 使用密钥保护 .NET 应用程序

我正需要向我的应用程序添加密钥。你们使用了哪些可能的解决方案?到目前为止,我已经查看了较早的帖子,在我决定之前还有其他任何内容。我的两个影响因素是:

  1. 价格
  2. 使用方便

谢谢

0 投票
6 回答
15197 浏览

licensing - 您如何管理软件序列号、许可证等?

我的公司正在尝试寻找一种工具来跟踪我们购买的软件(例如 Office)以及我们编写和销售的软件的序列号。

我们需要允许我们将特定计算机与该计算机上的软件以及该软件的序列号和许可证相关联的软件。我们还想跟踪计算机的历史记录,例如从计算机中删除软件并转移到另一台计算机的时间。

我查看了 Google 和各种软件站点,但我发现的所有结果都是针对软件许可和创建序列密钥,而不是管理这些工具生成的序列密钥。我知道这个问题已经解决了;许多公司许可软件并保存它们生成的序列密钥的记录。所以我很好奇你们中是否有人在不编写自己的定制软件的情况下解决了同样的问题?

编辑:我忘了提一下,我不是在问许可软件的优点——我们编写的软件不是 COTS 并且购买受合同级别的控制。尽管如此,我们仍需要管理如何生成串行密钥。

0 投票
14 回答
137092 浏览

c# - 如何为我的 C# 应用程序创建产品密钥?

如何为我的 C# 应用程序创建产品密钥?

我需要创建一个每年更新的产品(或许可证)密钥。此外,我需要为试用版创建一个。

有关的:

0 投票
12 回答
195790 浏览

encryption - 非对称加密中的加密和签名有什么区别?

加密某些数据与签署某些数据(使用 RSA)有什么区别?

它只是简单地颠倒了公钥-私钥的角色吗?

例如,我想使用我的私钥生成消息,所以只有我可能是发件人。我希望我的公钥用于阅读消息,我不在乎谁阅读了它们。我希望能够加密某些信息并将其用作我的软件的产品密钥。我只关心我是唯一可以生成这些的人。我想在我的软件中包含我的公钥来解密/读取密钥的签名。我不在乎谁可以读取密钥中的数据,我只关心我是唯一可以生成它们的可验证的人。

在这种情况下签名有用吗?

0 投票
5 回答
3465 浏览

php - 保护 adobe air 应用程序

我即将向客户交付一个 Adob​​e AIR 应用程序。但这是我的第一次交付,即我没有任何许可等经验。

此应用程序的用户可能在线也可能不在线,因此不能指望这一点。事实上,99% 的人确定他们会离线。

我也不指望他们非常精通技术,他们会花足够的时间寻找“破解”它的方法。

那么,有没有一种很好的方式来保护这个应用程序。也就是说,我不希望人们简单地复制安装文件夹,将其带到另一台机器上并运行它。它应该比这稍微难一些。

哦,我也在使用 PHP 和 MySql,这个 AIR 应用程序与之通信。因此,非常欢迎你们可以帮助我的任何事情。

0 投票
5 回答
7971 浏览

language-agnostic - 开发简单的序列号生成器/验证器的好方法是什么?

我正在开发一款我想在某天销售的应用程序——早晚好!我想开发一个相当简单的序列号方案来保护它。

  • 长度不超过 25-30 个字母数字字符的简单数字/字母组合(想想 Microsoft 产品密钥)
  • 不需要用户输入任何个人信息(如电子邮件地址)作为验证的一部分

我一直在考虑这个(很少),我认为公钥密码学是一个很好的起点。我可以生成一个标识许可证的字符串(如 SKU + 普通 ole' 整数序列号),对其进行散列、加密,并将序列号 + 标识符编码为 25 位(左右)字母数字密钥。然后,应用程序会将密钥解码为序列号和“签名”,生成标识符散列,使用相应的公钥解密“签名”,并将其与生成的标识符散列进行比较。

本质上,产品密钥包含两个数据:用户声称拥有的序列号以及程序可以用来验证该声明的各种签名。我不知道 25 个字母数字字符(每个编码 5 位,实际总共 120 位)是否足以满足所有这些要求。但是,它不必是加密安全的,只要代码不易被猜到就足够了。我可以接受短密钥长度和短哈希。

就实现而言,该应用程序是用用于 Mac OS X 的 Objective-C 编写的,但考虑到将代码注入 Cocoa 应用程序是多么容易,我可能会直接用 C 编写验证代码。

0 投票
15 回答
356853 浏览

c# - 如何生成和验证软件许可证密钥?

我目前正在开发一个产品(用 C# 开发),可以免费下载和安装,但版本非常有限。要访问所有功能,用户必须支付许可费并获得密钥。然后将该密钥输入应用程序以“解锁”完整版本。

由于使用这样的许可证密钥很常见,我想知道:

  1. 一般是怎么解决的?
  2. 如何生成密钥以及如何通过应用程序对其进行验证?
  3. 我怎样才能避免密钥在 Internet 上发布并被未支付许可证的其他人使用(密钥基本上不是“他们的”)。

我想我也应该以某种方式将密钥与应用程序的版本联系起来,这样就可以对功能版本中的新密钥收费。

在这种情况下我还应该考虑什么?

0 投票
3 回答
3119 浏览

visual-studio-2008 - 在 Windows 7 上注册 VS2008 Professional

我从 Microsoft 收到了一份免费的 VS2008 Professional 副本,很酷。但是当我在 Windows 7 Beta 上安装时,它安装得很好,但被标记为“未注册”。我有我的许可证密钥,但无法进入可以输入密钥的位置。

交易是我必须 DL 试用版,然后进行升级。我能够在 Vista 上执行此操作是因为我已经安装了 VS2008 Team,然后只是“切换”到了专业版。

但是在 Windows 7 上(可能只是由于全新安装),我无法获得允许我输入序列号的提示。安装试用版时,您只会获得预先输入的硬编码试用版序列号。

使用程序和功能来修改安装的建议不起作用,因为它没有给我描述的“升级/输入序列号”选项。

还有人解决这个问题吗?

我知道我还有 89 天,但我讨厌让这个问题悬而未决。:)

蒂亚!

编辑:这不是软件盗版问题,而是有效的合法问题。这适用于 Windows Vista,但不适用于 Windows 7——所以我希望这里有人解决了这个问题。谢谢。

更新:写了为微软处理这个问题的公关公司,他们本周晚些时候将把 DVD 寄给我。尽管如此,这对其他人来说可能是有价值的。

0 投票
4 回答
582 浏览

c# - 从序列号池中为客户端分配序列号

我有一个许可证密钥/序列号的 sql server 表。表结构类似于;

通过我的 ASP.NET 应用程序,当用户决定单击接受按钮购买许可证时,我需要为用户保留许可证密钥。我的方法是,从 KeysTable 中选择前 1 个许可证密钥,其中状态 = 可用更新密钥表设置状态 = 锁定,然后将密钥返回给应用程序。

我担心的是,如果两个 asp.net 线程访问相同的记录并返回相同的许可证密钥。您认为完成此类作业的最佳做法是什么?这类问题是否有众所周知的方法或模式?如果我需要,在哪里使用 lock() 语句?

我正在使用 Sql Server 2005、用于数据访问的存储过程、DataLayer、BusinessLayer 和 Asp.Net GUI。

谢谢