我正在努力加快 CNG 的 ABC。我的目标是确保持久的长期对称密钥,类似于这个问题中的情况。如果对称密钥可以加密并作为密文存储在应用程序中app.config
,然后在运行时不加密,那么它就不必仅以模糊的形式嵌入程序本身。所以我有几个基本问题。
Full Trust .NET 桌面应用程序(通过 ClickOnce 发布到 LAN 服务器并设置为“仅在线可用”)的用户是否可以
a) 从应用程序发布到的 LAN 服务器上的CNG 密钥库中检索非对称私钥,并使用该密钥解密对称密钥的密文版本?
或者
b) 向驻留在该 LAN 服务器上的 CNG 加密提供商发送一个非对称加密的对称密钥,并以未加密的纯文本形式取回该对称密钥,以便它可以使用?
或者
c) 密钥库是否必须始终存储在执行代码的机器上,也就是说,每个用户都必须在他们的 PC 上拥有此私有非对称密钥的副本吗?
最后,如果可以以某种方式向用户提供非对称密钥,如何调用它作为解密特定部分所需的密钥app.config
?