【问题标题】:Could stealing the private key compromise RSA security?窃取私钥会危及 RSA 安全吗?
【发布时间】:2018-11-11 16:17:26
【问题描述】:

我正在开发一个 Windows 桌面应用程序,其中客户端应用程序需要从公共共享文件夹下载一些数据文件。为了保护数据不被篡改,我想生成 RSA 私钥和公钥。将公钥保存在我自己家里的机器中,并将私钥包含在所有客户端中。

当我想发送一个新文件供客户下载(很好地)时,我对文件进行哈希处理并使用公钥加密哈希并将其作为 .sig 文件与数据文件一起存储在公共共享文件夹中。

现在,如果其中一个客户端用户是恶意的,他可以从他的机器上窃取私钥。

问题是:假设公钥是秘密的,这是该密钥对的唯一用途,我绝对不需要对数据文件进行任何加密。从客户那里窃取私钥会损害我的公钥吗?即恶意用户是否可以制作文件签名以使数据文件看起来来自我?

【问题讨论】:

  • 私钥的关键在于它不是分布式的。您应该做的是使用 TLS 并以最小的努力为您处理所有这些。

标签: encryption rsa public-key-encryption encryption-asymmetric


【解决方案1】:

我相信你是倒着设计的。你想把 public 密钥发送给客户,而把 private 留给你自己。公钥是公开的;任何人都应该能够知道。私钥是私有的;只有所有者应该知道。

您希望使用您的私钥对文件进行签名,并让客户端使用公钥来验证签名,而不是对文件进行哈希处理并使用公钥对哈希进行加密。签名操作与您的“加密哈希”执行相同的想法,但它是标准构造,并且您的 RSA 工具可能包含签名功能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-31
    • 2014-05-11
    • 1970-01-01
    相关资源
    最近更新 更多