问题标签 [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 投票
5 回答
951 浏览

licensing - ASP.NET - 阻止应用程序使用的最佳方法是什么?

我们的客户必须按月支付费用......如果他们不这样做,阻止 asp.net 软件使用的最佳方法是什么?注意:该应用程序在客户端自己的服务器上运行,它不是 SaaS 应用程序...

我的想法是:

想法:在互联网上托管一个 Web 服务,应用程序将使用它来了解客户端是否可以使用该软件。 问题 1 - 如果客户端 Internet 出现故障会怎样?还是数据中心出现故障? 可能的答案:让每个Web服务访问发送一个有效期为7或15天的密钥,因此每个Web服务咨询将使软件运行更多7或15天,这样应用程序将在7或15之后才被锁定几天没有咨询我们的网络服务。 问题 2 - 如果客户端没有或不想启用对应用程序的 Internet 访问?

想法 2:每月向客户发送一个密钥。 问题- 如何制作离线密钥? 可能的答案:使用“限制”日期生成哈希,因此每次登录尝试软件都会将今天的哈希与密钥进行比较? 问题 2 - 在哪里存储密钥? 可能的答案:数据库(不好,太容易更改),文本文件,注册表,代码文件,程序集......

任何意见将不胜感激!

0 投票
5 回答
4940 浏览

license-key - 使用非对称加密生成合理长度的许可证密钥?

我整天都在看这个。我可能应该在几个小时前离开它;在这一点上,我可能会遗漏一些明显的东西。

简短版本:有没有办法生成一个非对称加密的哈希并将其归结为合理数量的明确、人类可读的字符?

长版:

我想为我的软件生成许可证密钥。我希望这些键具有合理的长度(25-36 个字符),并且易于被人类阅读和输入(因此避免使用数字 0 和大写字母 O 之类的模棱两可的字符)。

最后——这似乎是关键——我真的很想使用非对称加密来增加生成新密钥的难度。

我有一个通用的方法:将我的信息(用户名、产品版本、盐)连接成一个字符串并从中生成一个 SHA1() 哈希,然后用我的私钥加密这个哈希。在客户端上,使用相同的信息构建 SHA1() 哈希,然后使用公钥解密许可证并查看是否匹配。

由于这是一个 Mac 应用程序,我查看了 AquaticPrime,但它会生成一个相对较大的许可证文件而不是字符串。如果必须,我可以使用它,但作为用户,我真的很喜欢我可以阅读和打印的许可证密钥的便利性。

我还查看了确实生成密钥的 CocoaFob,但它太长了,无论如何我都想将它作为文件传递。

用 OpenSSL 玩了一会儿,但想不出任何合理长度的东西。

所以......我在这里遗漏了一些明显的东西吗?有没有办法生成一个非对称加密的哈希并将其归结为合理数量的明确的、人类可读的字符?

我愿意购买解决方案。但我在许多不同的平台上工作,所以我想要一些便携的东西。到目前为止,我所看到的一切都是特定于平台的。

非常感谢您的解决方案!

PS - 是的,我知道它仍然会被破解。我试图想出一些合理的东西,作为用户,我仍然会觉得很友好。

0 投票
2 回答
298 浏览

asp.net - 当我将使用 Mono 创建网站/Web 应用程序时,是否需要购买许可证?

我在一家老公司的一个项目中使用了 asp.net。vs 已获得许可等。现在,我正计划使用单声道,因为我的新公司正在使用基于 linux 的东西,而且我听说单声道使用 .net 框架等。我只想知道我是否需要购买任何东西可以使用单声道创建 webapp 吗?

0 投票
5 回答
5339 浏览

algorithm - 许可证密钥模式检测?

这不是真实情况;请忽略您可能认为适用的法律问题,因为它们不适用。

假设我有一组 200 个已知的有效许可证密钥,用于假设的软件许可算法,并且许可证密钥由 5 组 5 个字母数字不区分大小写(全部大写)字符组成。例子:HXDY6-R3DD7-Y8FRT-UNPVT-JSKON

是否有可能(或可能)为系统推断其他可能的键?

如果已知集合是连续的怎么办?在这种情况下,方法如何改变,这有什么好处?

我以前听说过“keygens”,但我相信它们可能是通过反编译许可软件而不是检查已知的有效密钥来制作的。在这种情况下,我只得到一组键,我必须确定算法。我还被告知这是一种行业标准算法,所以它可能不是基本的,尽管我想机会总是存在的。

如果您认为这不属于 Stack Overflow,请至少建议一个备用位置让我查看或提出问题。老实说,我不知道从哪里开始这样的问题。我什至不知道这类问题的术语。

0 投票
2 回答
19113 浏览

c# - 在 C# 中开发许可证 - 我从哪里开始?

我很想知道是否有任何标准或资源可以推荐用于在 C# 中开发许可证模型?

0 投票
4 回答
1624 浏览

c# - 为隐私编码许可证文件

我们使用 XML 数字签名来签名和验证我们的许可证密钥。签约工作正常,运行顺利。XML 许可证文件包含有关许可证的一些(明文)详细信息以及二进制签名。

我们想对那些明文细节(许可期限、用户名等)进行编码(我不是说加密),这样窥探者就不会立即看到它们。是否有人们在这种情况下使用的标准(例如,base 64 或其他标准)?它不需要安全或特别聪明,只要足以隐藏记事本中的信息即可。

编辑:我们正在使用 .NET/C#。

谢谢 : )

0 投票
11 回答
137961 浏览

security - 软件许可证密钥是如何生成的?

许可证密钥是作为反盗版措施的事实标准。老实说,这让我觉得(in)Security Through Obscurity,虽然我真的不知道许可证密钥是如何生成的。什么是许可证密钥生成的好(安全)示例?他们使用什么加密原语(如果有的话)?是消息摘要吗?如果是这样,他们会散列什么数据?开发人员采用什么方法使破解者难以构建自己的密钥生成器?密钥生成器是如何制造的?

0 投票
3 回答
3037 浏览

c# - 加密产品密钥:公钥和私钥加密

我需要生成和验证产品密钥,并且一直在考虑使用公钥/私钥系统。

我生成我们的产品密钥基于

  • 客户端名称(可以是可变长度字符串)
  • 一个 6 位的序列号。

如果产品密钥的长度可以控制(大约 16 个字符),那就太好了

我需要在基础上加密它们,然后分发解密/验证系统。由于我们的系统是用托管代码 (.NET) 编写的,我们不想分发加密系统,只分发解密。我需要一个公钥私钥似乎是一个很好的方法,用我保留的一个密钥加密并分发解密/验证所需的另一个密钥。

满足上述要求的适当机制是什么?

注意:这不是阻止盗版;这是为了减少新手用户安装他们不需要/未经授权使用的组件的可能性。

0 投票
3 回答
1976 浏览

java - Java:通过软件或服务器进行许可证身份验证和验证?

我需要一些关于如何验证许可证(用户/许可证密钥)的提示。

做许多游戏做的事情会更好吗,即从公司服务器验证 cd 密钥。是否有关于如何在不被“破解”或“修补”的情况下实现这一点的指南?

还是只验证软件中的用户/许可证密钥更好?一段时间后,您不会看到注册机在网上漂浮吗?

请指教。

0 投票
1 回答
580 浏览

versioning - Enable/disable code access through license key - Application versioning

I have written a POS application, and now i want to create different versions of it. Something like a basic version, a premium version and a Full version. So if a client pays more they get more features in the same application. Is it possible that i could keep one standard application but features in my application get enabled / disabled depending upon what license key user enters. Restrict parts of code that can be executed only if a certain key was entered.

Any ideas guys...