我一直在尝试理解AES加密,我对该过程及其工作方式有基本的了解,但我发现的一件事是,如果密钥是秘密的,它是如何安全地分发的?
我看到一篇帖子说“使用SSL”,但看了一下它似乎仍然要求双方都能访问密钥。
我以为我可以使用RSA?但是我们正在寻找它在现实世界中的表现。
答案 0 :(得分:1)
这是最简单的版本,但它并不完全适用。服务器必须具有客户端可以确认属于服务器的RSA密钥。通常,这是通过由受信任的机构签署的证书来完成的。
答案 1 :(得分:1)
使用“密钥交换算法”分发密钥。一些常用的密钥交换算法是Diffie-Hellman和RSA。 Diffie-Hellman算法能够生成公共密钥,而无需实际交换密钥本身。
在SSL期间,客户端和服务器协商要使用的密码。密码包含密钥交换算法。客户端和服务器交换部分密钥并获得将用于批量加密的公共密钥。