公钥加密是如何工作的
我对 RSA 的理解是,Alice 可以创建公钥和私钥组合,然后将公钥发送给 Bob。然后鲍勃可以使用公钥加密某些内容,而爱丽丝将使用公钥和私钥组合来解密它。
但是,Alice 如何加密要发送给 Bob 的内容?鲍勃将如何解密它?我之所以这么问,是因为我很好奇当我登录银行网站时,银行如何向我发送在线报表等数据。我的浏览器如何解密该信息?我没有私钥。
What I understand about RSA is that Alice can create a public and a private key combination, and then send the public key over to Bob. And then afterward Bob can encrypt something using the public key and Alice will use the public and private key combo to decrypt it.
However, how can Alice encrypt something to be sent over to Bob? How would Bob decrypt it? I ask because I'm curious how when I log onto my banking site, my bank sends me data such as my online statements. How does my browser decrypt that information? I don't have the private key.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
发布评论
评论(8)
很简单,你需要一把钥匙。
SSL/TLS 通过在连接设置期间创建对称会话密钥来解决此问题。公钥加密用于建立此会话密钥,然后将其用于双向数据通信。 了解有关 TLS 的更多信息
这个视频不是我创作的,但有人与我分享了这个视频,它让这个理论变得更有意义。一如既往,细节决定成败(实施)。
总的来说,在准备 Microsoft C# 认证的同时,我花了很长一段时间努力理解公钥加密技术以及 PKI 的其他元素(例如数字签名和证书)。
我在 cgi.com 上看到了一份简明而详细的 PDF 形式的解释。我知道又回到了好心的爱丽丝和鲍勃身边!但它确实通过图表和注释为我理清了思路,最后还提出了一些发人深省的问题。绝对推荐它。
访问http://www.cgi.com/files/white-papers/cgi_whpr_35_pki_e。 pdf
如果您连接到银行的站点,它会执行很多加密操作。最重要的是,您使用银行的公钥向银行发送一条信息,因为在每个 SSL (https) 连接服务器发送到客户端时,它的公钥都打包为证书。
证书和全球 PKI 的使用很重要。您需要确保,如果您向银行提供您的银行密码,则另一方确实是您的银行,而不是其他人。这将得到解决,因为每台计算机上都有少量知名组织(例如 VeriSign)的公钥,并且银行不仅向您发送他的服务器公钥,而且还向您发送证书。例如,证书是由 VeriSign 签名的消息,其中表示“此公钥确实来自银行 XYZ”。因此,因为您有 VeriSign 的公钥,所以您可以首先验证银行的服务器证书是否正确。因此您可以确信,您与银行进行了真正的沟通。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
基本上,该过程是:
Basically, the procedure is: