【发布时间】:2014-12-20 09:08:13
【问题描述】:
我找到了几种解决方案,我可以使用 .Net RSA Provider 使用公钥加密消息并使用私钥解密。
但我想要的是用私钥加密并用公钥解密。
我想将公钥存储在我的应用程序中,并使用私钥在我的开发机器上加密许可证,将其发送到应用程序并让信息使用公钥解密。
我怎样才能做到这一点?
【问题讨论】:
-
你不能。你只能用公钥加密,用私钥解密。你的意思是签名和验证,这是一个有效的许可证申请。您获得了身份验证,但没有保密。如果您想进行互动,您当然可以取得更多成就。
-
非对称加密/解密:每个人都可以加密(使用公钥),只有主机可以解密(使用私钥)。 非对称签名/验证:只有主机可以签名(使用私钥),每个人都可以验证(使用公钥)。
-
@Zoya 如果您认为这是一篇好文章,那么您刚刚证明您完全错过了关于密码学的要点。奇怪,你的回答似乎另有说明。
-
@Maarten 为什么?我阅读并查看了示例代码。这对我来说很清楚。我可以理解它是如何工作的。但是,如果您能稍微解释一下为什么这段代码在密码学方面是坏的或错误的,那就太好了。 (我必须补充一点,我对密码学一无所知)
-
RSA 的安全证明依赖于使用的填充。这个使用了几个(太少)字节的填充,并且专有方案没有安全证明。
标签: .net cryptography rsa