【发布时间】:2018-11-11 16:17:26
【问题描述】:
我正在开发一个 Windows 桌面应用程序,其中客户端应用程序需要从公共共享文件夹下载一些数据文件。为了保护数据不被篡改,我想生成 RSA 私钥和公钥。将公钥保存在我自己家里的机器中,并将私钥包含在所有客户端中。
当我想发送一个新文件供客户下载(很好地)时,我对文件进行哈希处理并使用公钥加密哈希并将其作为 .sig 文件与数据文件一起存储在公共共享文件夹中。
现在,如果其中一个客户端用户是恶意的,他可以从他的机器上窃取私钥。
问题是:假设公钥是秘密的,这是该密钥对的唯一用途,我绝对不需要对数据文件进行任何加密。从客户那里窃取私钥会损害我的公钥吗?即恶意用户是否可以制作文件签名以使数据文件看起来来自我?
【问题讨论】:
-
私钥的关键在于它不是分布式的。您应该做的是使用 TLS 并以最小的努力为您处理所有这些。
标签: encryption rsa public-key-encryption encryption-asymmetric