首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是否可以将RSA算法或变体用于软件许可?

是否可以将RSA算法或变体用于软件许可?
EN

Cryptography用户
提问于 2012-06-16 11:19:38
回答 2查看 4.2K关注 0票数 2

我几乎是RSA加密的新手,所以我的问题可能是平庸的。我开始为我的软件建立一个许可制度。我需要向许多客户分发一个加密的许可证文件。我正在考虑使用RSA公钥加密许可证文件(使用OAEP填充或PKCS#1 v1.5)。将被授权给客户的软件将拥有私钥,以便能够解密许可内容。现在的问题是,是否有可能知道提供加密文件、私钥和最终纯文本的公钥。这是因为黑客可以知道这些数据,因为这些数据都在分布式软件中。

换句话说,我需要一个使用两个不同密钥的密码算法。一个用来加密数据,另一个用来解密数据。在哪里不可能获得加密密码,给出解密密码和加密文本。

EN

回答 2

Cryptography用户

发布于 2013-10-06 18:25:08

签署许可证可防止Eve能够颁发未经修改的软件将发现有效的许可证。当然,它并不能阻止对软件进行修改以绕过许可证检查。

票数 2
EN

Cryptography用户

发布于 2012-06-18 16:43:41

正如Chris所指出的,您所做的是偶然发现RSA通常用于签名方案的方式。在RSA中,您可以使用私钥加密消息,创建可以用公钥解密的密文。此密文的成功解密证明该消息是用正确的密钥加密的,在这种情况下,该密钥仅为一方所拥有,提供了身份验证和不可否认性。(实际上,消息的散列(而不是消息本身)是加密的。这主要是因为RSA产生大的密文,而且速度相当慢。)

值得注意的是,这种“用私钥加密”的方法利用了RSA的特点,并不是非对称算法的通用解决方案。

最后,您需要考虑使用经过验证的签名方案( RSA就是其中之一)和分发签名和公钥,而不是“加密”文件和“私有”密钥。保持您的安全假设的明确定义将防止您意外地破坏您的密码-这是非常常见的本土DRM计划。

票数 0
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/2934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档