窃取私钥会危及 RSA 安全吗?
Could stealing the private key compromise RSA security?
我正在开发一个 windows 桌面应用程序,客户端应用程序需要从 public 共享文件夹下载一些数据文件。为了保护数据不被篡改,我想生成 RSA 私钥和 public 密钥。将 public 密钥保存在我自己家里的机器中,并将私钥包含在所有客户端中。
当我想发送一个新文件供客户端下载(很好)时,我对文件进行哈希处理并使用 public 密钥对哈希进行加密,并将其作为 .sig 文件与数据文件一起存储在public 个共享文件夹。
现在如果其中一个客户端用户是恶意的,他可以从他的机器上窃取私钥。
问题是:假设 public 密钥是秘密的,并且这是该密钥对的唯一用途,我绝对不需要对数据文件进行任何加密。从客户端窃取私钥会危及我的 public 密钥吗?即恶意用户是否可以制作文件签名以使数据文件看起来来自我?
我相信你设计了这个 backwards.You 想要将 public 密钥发送给客户端并保持 private 给自己。 public键是public;任何人都应该能够知道它。私钥是私有的;只有主人知道。
您不想对文件进行散列处理并使用 public 密钥对散列进行加密,而是希望使用您的私钥对文件进行签名,然后让客户端使用 public 密钥来验证签名。签名操作执行与您的 "encrypt the hash" 相同的想法,但它是标准构造,并且您的 RSA 工具可能包含签名功能。
我正在开发一个 windows 桌面应用程序,客户端应用程序需要从 public 共享文件夹下载一些数据文件。为了保护数据不被篡改,我想生成 RSA 私钥和 public 密钥。将 public 密钥保存在我自己家里的机器中,并将私钥包含在所有客户端中。
当我想发送一个新文件供客户端下载(很好)时,我对文件进行哈希处理并使用 public 密钥对哈希进行加密,并将其作为 .sig 文件与数据文件一起存储在public 个共享文件夹。
现在如果其中一个客户端用户是恶意的,他可以从他的机器上窃取私钥。
问题是:假设 public 密钥是秘密的,并且这是该密钥对的唯一用途,我绝对不需要对数据文件进行任何加密。从客户端窃取私钥会危及我的 public 密钥吗?即恶意用户是否可以制作文件签名以使数据文件看起来来自我?
我相信你设计了这个 backwards.You 想要将 public 密钥发送给客户端并保持 private 给自己。 public键是public;任何人都应该能够知道它。私钥是私有的;只有主人知道。
您不想对文件进行散列处理并使用 public 密钥对散列进行加密,而是希望使用您的私钥对文件进行签名,然后让客户端使用 public 密钥来验证签名。签名操作执行与您的 "encrypt the hash" 相同的想法,但它是标准构造,并且您的 RSA 工具可能包含签名功能。