2011-05-16 91 views
-2

比方说,有一个客户端和一个服务器。他们都互相交换了公钥。现在如何将数据从服务器下载到客户端时应用公钥加密?关于公钥加密的问题

+0

这不是严格的编程问题,因为它们属于这里,但弗拉季斯拉夫给了你一个很好的简短答案。我唯一要补充的是,当签名进入(不仅仅是加密)时,公钥被用来证明某个信息确实由另一方签名。 – 0xC0000022L 2011-05-16 17:17:21

回答

1

在那种情况下使用数字证书,其以加密形式携带用户公钥。服务器拥有自己的证书,客户端也有一个在下载开始前匹配的证书。

+1

证书中的公钥不是加密形式。 – 2011-05-17 00:10:31

3

服务器加密与它的私人键,这个数据可以与公共键(反之亦然)进行解密。数字和算法是这样的 - 他们不需要知道彼此的私钥。

其中一个较简单的算法叫做RSA,你可以在Wikipedia上找到更多关于它如何工作的内容。你需要一些数学,但没有什么复杂的。

由于性能原因,公钥密码术仅用于传输正常的对称密钥。